Commit dc4bd461 by zhiwj

订单接口

parent 9a446034
package com.gic.evaluate.qo;
import java.io.Serializable;
import java.util.List;
/**
*
......@@ -20,6 +21,7 @@ public class EvaluateOutQO implements Serializable {
private Long orderId;
private String orderNumber;
private List<String> orderNumberList;
public Integer getEnterpriseId() {
return enterpriseId;
......@@ -60,4 +62,12 @@ public class EvaluateOutQO implements Serializable {
public void setOrderNumber(String orderNumber) {
this.orderNumber = orderNumber;
}
public List<String> getOrderNumberList() {
return orderNumberList;
}
public void setOrderNumberList(List<String> orderNumberList) {
this.orderNumberList = orderNumberList;
}
}
......@@ -83,6 +83,17 @@ public interface EvaluateOutApiService {
* @throws
*/
ServiceResponse<EvaluateDTO> listEvaluateByOrderId(EvaluateOutQO evaluateOutQO);
/**
* listEvaluateByOrderId
* @Title: listEvaluateByOrderId
* @Description:
* @author zhiwj
* @param evaluateOutQO
* @return com.gic.api.base.commons.ServiceResponse<com.gic.evaluate.dto.EvaluateDTO>
* @throws
*/
ServiceResponse<List<EvaluateDTO>> listEvaluateByOrderNumberList(EvaluateOutQO evaluateOutQO);
/**
* 查询订单号对应的回复状态 key是订单号, value是状态(-1:未评价 0管理员没有回复过 1管理员回复了 2有新的追评管理员没回复 3逾期并且没有评价过 4不支持追评 6超过最大追评次数 7逾期并且评价过)
......
......@@ -356,9 +356,9 @@ public interface TabEvaluateMapper {
* @Description:
* @author zhiwj
* @param enterpriseId
* @param orderNumber
* @param orderNumberList
* @return com.gic.evaluate.entity.TabEvaluate
* @throws
*/
TabEvaluate getEvaluateByOrderNumber(@Param("enterpriseId") Integer enterpriseId, @Param("orderNumber") String orderNumber);
List<TabEvaluate> listEvaluateByOrderNumber(@Param("enterpriseId") Integer enterpriseId, @Param("ids") List<String> orderNumberList);
}
\ No newline at end of file
......@@ -67,12 +67,12 @@ public interface TabEvaluateReplyMapper {
* @Description:
* @author zhiwj
* @param enterpriseId
* @param evaluateId
* @param evaluateIdList
* @param showStatus
* @return java.util.List<com.gic.evaluate.entity.TabEvaluateReply>
* @throws
*/
List<TabEvaluateReply> listEvaluateReply(@Param("enterpriseId") Integer enterpriseId, @Param("evaluateId") Integer evaluateId, @Param("showStatus") Integer showStatus);
List<TabEvaluateReply> listEvaluateReply(@Param("enterpriseId") Integer enterpriseId, @Param("ids") List<Integer> evaluateIdList, @Param("showStatus") Integer showStatus);
/**
* updateReplyShowStatus
......
......@@ -67,10 +67,10 @@ public interface TabEvaluateTagsMapper {
* @Description:
* @author zhiwj
* @param enterpriseId
* @param evaluateId
* @param evaluateReplyId
* @param evaluateIdList
* @param evaluateReplyIdList
* @return java.util.List<com.gic.evaluate.entity.TabEvaluateTags>
* @throws
*/
List<TabEvaluateTags> listEvaluateTags(@Param("enterpriseId") Integer enterpriseId, @Param("evaluateId") Integer evaluateId, @Param("evaluateReplyId") Integer evaluateReplyId);
List<TabEvaluateTags> listEvaluateTags(@Param("enterpriseId") Integer enterpriseId, @Param("evaluateIdList") List<Integer> evaluateIdList, @Param("evaluateReplyIdList") List<Integer> evaluateReplyIdList);
}
\ No newline at end of file
......@@ -26,6 +26,19 @@ public interface EvaluateReplyService {
* @throws
*/
List<TabEvaluateReply> listEvaluateReply(Integer enterpriseId, Integer evaluateId, Integer showStatus);
/**
* listEvaluateReply
* @Title: listEvaluateReply
* @Description:
* @author zhiwj
* @param enterpriseId
* @param evaluateIdList
* @param showStatus
* @return java.util.List<com.gic.evaluate.entity.TabEvaluateReply>
* @throws
*/
List<TabEvaluateReply> listEvaluateReply(Integer enterpriseId, List<Integer> evaluateIdList, Integer showStatus);
/**
* countReviewReplyByMember
......
......@@ -365,14 +365,14 @@ public interface EvaluateService {
Map<Integer,Map<String,Object>> queryEvaluateCountByStoreId(Integer enterpriseId, List<Integer> storeIdList);
/**
* getEvaluateByOrderNumber
* @Title: getEvaluateByOrderNumber
* getEvaluateByOrderNumberList 按订单号list批量查评价
* @Title: getEvaluateByOrderNumberList
* @Description:
* @author zhiwj
* @param enterpriseId
* @param orderNumber
* @return com.gic.evaluate.entity.TabEvaluate
* @param orderNumberList
* @return java.util.List<com.gic.evaluate.dto.EvaluateDTO>
* @throws
*/
TabEvaluate getEvaluateByOrderNumber(Integer enterpriseId, String orderNumber);
List<TabEvaluate> listEvaluateByOrderNumber(Integer enterpriseId, List<String> orderNumberList);
}
......@@ -57,11 +57,36 @@ public interface EvaluateTagsService {
* @Description:
* @author zhiwj
* @param enterpriseId
* @param evaluateId
* @param evaluateIdList
* @return java.util.List<com.gic.evaluate.entity.TabEvaluateTags>
* @throws
*/
List<TabEvaluateTags> listEvaluateTags(Integer enterpriseId, List<Integer> evaluateIdList);
/**
* listEvaluateTags
* @Title: listEvaluateTags
* @Description:
* @author zhiwj
* @param enterpriseId
* @param evaluateIdList
* @param evaluateReplyId
* @return java.util.List<com.gic.evaluate.entity.TabEvaluateTags>
* @throws
*/
List<TabEvaluateTags> listEvaluateTags(Integer enterpriseId, Integer evaluateId, Integer evaluateReplyId);
List<TabEvaluateTags> listEvaluateTags(Integer enterpriseId, Integer evaluateIdList, Integer evaluateReplyId);
/**
* listEvaluateTags
* @Title: listEvaluateTags
* @Description:
* @author zhiwj
* @param enterpriseId
* @param evaluateIdList
* @param evaluateReplyId
* @return java.util.List<com.gic.evaluate.entity.TabEvaluateTags>
* @throws
*/
List<TabEvaluateTags> listEvaluateTags(Integer enterpriseId, List<Integer> evaluateIdList, List<Integer> evaluateReplyId);
}
......@@ -10,6 +10,7 @@ import com.gic.evaluate.service.EvaluateReplyService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.Date;
import java.util.List;
......@@ -27,7 +28,12 @@ public class EvaluateReplyServiceImpl implements EvaluateReplyService {
@Override
public List<TabEvaluateReply> listEvaluateReply(Integer enterpriseId, Integer evaluateId, Integer showStatus) {
return tabEvaluateReplyMapper.listEvaluateReply(enterpriseId, evaluateId, showStatus);
return tabEvaluateReplyMapper.listEvaluateReply(enterpriseId, Collections.singletonList(evaluateId), showStatus);
}
@Override
public List<TabEvaluateReply> listEvaluateReply(Integer enterpriseId, List<Integer> evaluateIdList, Integer showStatus) {
return tabEvaluateReplyMapper.listEvaluateReply(enterpriseId, evaluateIdList, showStatus);
}
@Override
......
......@@ -309,8 +309,8 @@ public class EvaluateServiceImpl implements EvaluateService {
}
@Override
public TabEvaluate getEvaluateByOrderNumber(Integer enterpriseId, String orderNumber) {
return this.tabEvaluateMapper.getEvaluateByOrderNumber(enterpriseId, orderNumber);
public List<TabEvaluate> listEvaluateByOrderNumber(Integer enterpriseId, List<String> orderNumberList) {
return this.tabEvaluateMapper.listEvaluateByOrderNumber(enterpriseId, orderNumberList);
}
private List<String> getYear() {
......
......@@ -11,6 +11,7 @@ import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.Date;
import java.util.List;
......@@ -56,11 +57,21 @@ public class EvaluateTagsServiceImpl implements EvaluateTagsService {
@Override
public List<TabEvaluateTags> listEvaluateTags(Integer enterpriseId, Integer evaluateId) {
return this.listEvaluateTags(enterpriseId, evaluateId, null);
return this.listEvaluateTags(enterpriseId, Collections.singletonList(evaluateId), null);
}
@Override
public List<TabEvaluateTags> listEvaluateTags(Integer enterpriseId, Integer evaluateId, Integer evaluateReplyId) {
return tabEvaluateTagsMapper.listEvaluateTags(enterpriseId, evaluateId, evaluateReplyId);
public List<TabEvaluateTags> listEvaluateTags(Integer enterpriseId, List<Integer> evaluateIdList) {
return this.listEvaluateTags(enterpriseId, evaluateIdList, null);
}
@Override
public List<TabEvaluateTags> listEvaluateTags(Integer enterpriseId, Integer evaluateIdList, Integer evaluateReplyIdList) {
return tabEvaluateTagsMapper.listEvaluateTags(enterpriseId, Collections.singletonList(evaluateIdList), Collections.singletonList(evaluateReplyIdList));
}
@Override
public List<TabEvaluateTags> listEvaluateTags(Integer enterpriseId, List<Integer> evaluateIdList, List<Integer> evaluateReplyIdList) {
return tabEvaluateTagsMapper.listEvaluateTags(enterpriseId, evaluateIdList, evaluateReplyIdList);
}
}
......@@ -269,25 +269,16 @@ public class EvaluateOutApiServiceImpl implements EvaluateOutApiService {
public ServiceResponse<EvaluateDTO> listEvaluateByOrderId(EvaluateOutQO evaluateOutQO) {
TabEvaluate evaluate = this.evaluateService.getEvaluateByOrderId(evaluateOutQO.getEnterpriseId(), evaluateOutQO.getOrderId());
if (evaluate == null) {
if (StringUtils.isNotBlank(evaluateOutQO.getOrderNumber())) {
evaluate = this.evaluateService.getEvaluateByOrderNumber(evaluateOutQO.getEnterpriseId(), evaluateOutQO.getOrderNumber());
} else {
return EnterpriseServiceResponse.failure(ErrorCode.NOTEXISTS);
}
return EnterpriseServiceResponse.failure(ErrorCode.NOTEXISTS);
}
EvaluateDTO evaluateDTO = EntityUtil.changeEntityByJSON(EvaluateDTO.class, evaluate);
List<TabEvaluateImg> evaluateImgList = evaluateImgService.listImageByEvaluateId(evaluateDTO.getEvaluateId());
List<String> imgList = Optional.ofNullable(evaluateImgList).orElse(Collections.emptyList()).stream().map(TabEvaluateImg::getImgUrl).collect(Collectors.toList());
evaluateDTO.setImgList(imgList);
// 追评和回复
List<TabEvaluateReply> evaluateReplyList = this.evaluateReplyService.listEvaluateReply(evaluateDTO.getEnterpriseId(), evaluateDTO.getEvaluateId(), Constants.OPEN);
List<EvaluateReplyDTO> replyDTOList = EntityUtil.changeEntityListByJSON(EvaluateReplyDTO.class, evaluateReplyList);
List<TabEvaluateTags> tagsList = evaluateTagsService.listEvaluateTags(evaluateDTO.getEnterpriseId(), evaluateDTO.getEvaluateId());
evaluateDTO.setQuickReplyTagNameList(Optional.ofNullable(tagsList).orElse(Collections.emptyList()).stream().map(TabEvaluateTags::getTagName).collect(Collectors.toList()));
// 追评和回复的图片
for (EvaluateReplyDTO replyDTO : replyDTOList) {
......@@ -299,11 +290,44 @@ public class EvaluateOutApiServiceImpl implements EvaluateOutApiService {
replyDTO.setQuickReplyTagNameList(Optional.ofNullable(replyTagsList).orElse(Collections.emptyList()).stream().map(TabEvaluateTags::getTagName).collect(Collectors.toList()));
}
evaluateDTO.setReplyList(replyDTOList);
return EnterpriseServiceResponse.success(evaluateDTO);
}
@Override
public ServiceResponse<List<EvaluateDTO>> listEvaluateByOrderNumberList(EvaluateOutQO evaluateOutQO) {
List<TabEvaluate> tabEvaluateList = this.evaluateService.listEvaluateByOrderNumber(evaluateOutQO.getEnterpriseId(), evaluateOutQO.getOrderNumberList());
if (CollectionUtils.isEmpty(tabEvaluateList)) {
return EnterpriseServiceResponse.success();
}
List<EvaluateDTO> evaluateList = EntityUtil.changeEntityListByJSON(EvaluateDTO.class, tabEvaluateList);
List<Integer> evaluateIdList = evaluateList.stream().map(EvaluateDTO::getEvaluateId).collect(Collectors.toList());
// 快评
List<TabEvaluateTags> tagsList = evaluateTagsService.listEvaluateTags(evaluateOutQO.getEnterpriseId(), evaluateIdList);
Map<Integer, List<String>> tagsMap = Optional.ofNullable(tagsList).orElse(Collections.emptyList())
.stream().collect(Collectors.groupingBy(TabEvaluateTags::getEvaluateId, Collectors.mapping(TabEvaluateTags::getTagName, Collectors.toList())));
// 追评和回复
List<TabEvaluateReply> evaluateReplyList = this.evaluateReplyService.listEvaluateReply(evaluateOutQO.getEnterpriseId(), evaluateIdList, Constants.OPEN);
List<EvaluateReplyDTO> replyDTOList = EntityUtil.changeEntityListByJSON(EvaluateReplyDTO.class, evaluateReplyList);
// evaluateDTO.setReplyList(replyDTOList);
if (CollectionUtils.isNotEmpty(replyDTOList)) {
Map<Integer, List<EvaluateReplyDTO>> replyMap = replyDTOList.stream().collect(Collectors.groupingBy(EvaluateReplyDTO::getEvaluateId, Collectors.toList()));
for (EvaluateDTO evaluateDTO : evaluateList) {
evaluateDTO.setQuickReplyTagNameList(tagsMap.get(evaluateDTO.getEvaluateId()));
evaluateDTO.setReplyList(replyMap.get(evaluateDTO.getEvaluateId()));
}
List<Integer> replyIdList = replyDTOList.stream().map(EvaluateReplyDTO::getEvaluateReplyId).collect(Collectors.toList());
List<TabEvaluateTags> replyTagsList = evaluateTagsService.listEvaluateTags(evaluateOutQO.getEnterpriseId(), replyIdList);
Map<Integer, List<String>> replyTagsMap = Optional.ofNullable(replyTagsList).orElse(Collections.emptyList())
.stream().collect(Collectors.groupingBy(TabEvaluateTags::getEvaluateId, Collectors.mapping(TabEvaluateTags::getTagName, Collectors.toList())));
for (EvaluateReplyDTO replyDTO : replyDTOList) {
replyDTO.setQuickReplyTagNameList(replyTagsMap.get(replyDTO.getEvaluateReplyId()));
}
}
return ServiceResponse.success(evaluateList);
}
@Override
public ServiceResponse<Map<Long, Integer>> queryRelayStatusByOrderId(Integer enterpriseId, List<OrderStatusQO> orderIdList) {
Map<Long, Integer> resultMap = new HashMap<>();
TabEvaluateOrderConfig evaluateOrderConfig = evaluateOrderConfigService.getEvaluateOrderConfig(enterpriseId);
......
......@@ -1009,13 +1009,17 @@
</if>
group by store_id
</select>
<select id="getEvaluateByOrderNumber" resultMap="BaseResultMap">
<select id="listEvaluateByOrderNumber" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_evaluate
where enterprise_id = #{enterpriseId}
and order_number = #{orderNumber}
<if test="null != ids and ids.size > 0">
and order_number in
<foreach collection="ids" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
and status = 1
limit 1
</select>
</mapper>
\ No newline at end of file
......@@ -218,7 +218,12 @@
<include refid="Base_Column_List" />
from tab_evaluate_reply
where enterprise_id = #{enterpriseId}
and evaluate_id = #{evaluateId}
<if test="null != ids and ids.size > 0">
and evaluate_id in
<foreach collection="ids" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
and status = 1
<if test="showStatus != null ">
and show_status = #{showStatus}
......
......@@ -156,11 +156,19 @@
from tab_evaluate_tags
where enterprise_id = #{enterpriseId}
and status = 1
and evaluate_id = #{evaluateId}
<if test="evaluateReplyId != null ">
and evaluate_reply_id = #{evaluateReplyId}
<if test="null != evaluateIdList and evaluateIdList.size > 0">
and evaluate_id in
<foreach collection="evaluateIdList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="evaluateReplyId == null ">
<if test="null != evaluateReplyIdList and evaluateReplyIdList.size > 0">
and evaluate_reply_id in
<foreach collection="evaluateReplyIdList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="evaluateReplyIdList == null ">
and evaluate_reply_id is null
</if>
</select>
......
......@@ -287,7 +287,7 @@ public class ExcelUtils {
public static List<Map<Integer, String>> readXlsx(Workbook xssfWorkbook, int row, Map<Integer, Boolean> dateTypeMap) {
List<Map<Integer, String>> result = new ArrayList<Map<Integer, String>>();
SimpleDateFormat format = new SimpleDateFormat(Constants.dateformat);
SimpleDateFormat format = new SimpleDateFormat(Constants.DATE_FORMAT);
// XSSFWorkbook xssfWorkbook = new XSSFWorkbook(in);
for (int numSheet = 0; numSheet < 1; numSheet++) {
Sheet xssfSheet = xssfWorkbook.getSheetAt(numSheet);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment