FengChaoYu 2 mesi fa
parent
commit
470e44844d

+ 4 - 0
mall-server-api/src/main/java/com/gree/mall/manager/bean/quality/QualityFeedbackBean.java

@@ -2,6 +2,7 @@ package com.gree.mall.manager.bean.quality;
 
 import com.gree.mall.manager.plus.entity.QualityFeedback;
 import com.gree.mall.manager.plus.entity.QualityFeedbackItem;
+import com.gree.mall.manager.plus.entity.QualityFeedbackRecord;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -16,4 +17,7 @@ public class QualityFeedbackBean extends QualityFeedback {
 
     @ApiModelProperty(value = "明细")
     private List<QualityFeedbackItem> items;
+
+    @ApiModelProperty(value = "审核记录")
+    private List<QualityFeedbackRecord> recordList;
 }

+ 31 - 8
mall-server-api/src/main/java/com/gree/mall/manager/logic/quality/QualityFeedbackLogic.java

@@ -17,8 +17,10 @@ import com.gree.mall.manager.exception.RemoteServiceException;
 import com.gree.mall.manager.logic.common.CommonLogic;
 import com.gree.mall.manager.plus.entity.QualityFeedback;
 import com.gree.mall.manager.plus.entity.QualityFeedbackItem;
+import com.gree.mall.manager.plus.entity.QualityFeedbackRecord;
 import com.gree.mall.manager.plus.service.AdminWebsitService;
 import com.gree.mall.manager.plus.service.QualityFeedbackItemService;
+import com.gree.mall.manager.plus.service.QualityFeedbackRecordService;
 import com.gree.mall.manager.plus.service.QualityFeedbackService;
 import com.gree.mall.manager.utils.CompressDownUtil;
 import com.gree.mall.manager.utils.oss.OSSUtil;
@@ -44,6 +46,7 @@ public class QualityFeedbackLogic {
     private final CommonMapper commonMapper;
     private final QualityFeedbackService qualityFeedbackService;
     private final QualityFeedbackItemService qualityFeedbackItemService;
+    private final QualityFeedbackRecordService qualityFeedbackRecordService;
     private final AdminWebsitService adminWebsitService;
     private final OSSUtil ossUtil;
 
@@ -64,10 +67,15 @@ public class QualityFeedbackLogic {
         BeanUtils.copyProperties(qualityFeedback, bean);
 
         final List<QualityFeedbackItem> items = qualityFeedbackItemService.lambdaQuery()
-                .eq(QualityFeedbackItem::getQualityFeedbckId, id)
+                .eq(QualityFeedbackItem::getQualityFeedbackId, id)
                 .list();
         bean.setItems(items);
 
+        final List<QualityFeedbackRecord> recordList = qualityFeedbackRecordService.lambdaQuery()
+                .eq(QualityFeedbackRecord::getQualityFeedbackId, id)
+                .list();
+        bean.setRecordList(recordList);
+
         return bean;
     }
 
@@ -98,10 +106,11 @@ public class QualityFeedbackLogic {
         bean.setCompanyWechatId(adminUser.getCompanyWechatId());
         bean.setCompanyWechatName(adminUser.getCompanyName());
         bean.setStatus(ExamineQualityFeedbackStatusEnum.SAVE.getKey());
+        bean.setFirstSubmitTime(null);
         bean.setIsUpload(false);
         bean.insert();
         for (QualityFeedbackItem item : bean.getItems()) {
-            item.setQualityFeedbckId(bean.getId());
+            item.setQualityFeedbackId(bean.getId());
         }
         qualityFeedbackItemService.saveBatch(bean.getItems());
     }
@@ -237,7 +246,8 @@ public class QualityFeedbackLogic {
 
         if (bean.getStatus().equals(ExamineQualityFeedbackStatusEnum.WAIT.getKey())) {
             bean.setSubmitBy(adminUser.getNickName())
-                    .setSubmitTime(DateUtil.date());
+                    .setSubmitTime(DateUtil.date())
+                    .setFirstSubmitTime(Objects.isNull(old.getFirstSubmitTime()) ? bean.getSubmitTime() : null);
         }
         bean.updateById();
         qualityFeedbackService.lambdaUpdate()
@@ -246,10 +256,10 @@ public class QualityFeedbackLogic {
                 .eq(QualityFeedback::getId, bean.getId())
                 .update();
         qualityFeedbackItemService.lambdaUpdate()
-                .eq(QualityFeedbackItem::getQualityFeedbckId, bean.getId())
+                .eq(QualityFeedbackItem::getQualityFeedbackId, bean.getId())
                 .remove();
         for (QualityFeedbackItem item : bean.getItems()) {
-            item.setQualityFeedbckId(bean.getId());
+            item.setQualityFeedbackId(bean.getId());
         }
         qualityFeedbackItemService.saveBatch(bean.getItems());
     }
@@ -263,9 +273,22 @@ public class QualityFeedbackLogic {
                 || status.getKey().equals(ExamineQualityFeedbackStatusEnum.WAIT.getKey()) ) {
             throw new RemoteServiceException("审核异常");
         }
+
+        final QualityFeedback feedback = qualityFeedbackService.getById(id);
+
+        QualityFeedbackRecord record = new QualityFeedbackRecord();
+        record.setQualityFeedbackId(feedback.getId())
+                .setSubmitBy(feedback.getSubmitBy())
+                .setSubmitTime(feedback.getSubmitTime())
+                .setConfirmBy(adminUser.getNickName())
+                .setConfirmTime(DateUtil.date())
+                .setStatus(feedback.getStatus())
+                .setRemark(remark)
+                .insert();
+
         qualityFeedbackService.lambdaUpdate()
-                .set(QualityFeedback::getConfirmBy, adminUser.getNickName())
-                .set(QualityFeedback::getConfirmTime, DateUtil.date())
+                .set(QualityFeedback::getConfirmBy, record.getConfirmBy())
+                .set(QualityFeedback::getConfirmTime, record.getConfirmTime())
                 .set(QualityFeedback::getRemark, remark)
                 .set(QualityFeedback::getStatus, status.getKey())
                 .eq(QualityFeedback::getId, id)
@@ -285,7 +308,7 @@ public class QualityFeedbackLogic {
         QualityFeedback qualityFeedback = qualityFeedbackService.getById(id);
 
         List<QualityFeedbackItem> dataList = qualityFeedbackItemService.lambdaQuery()
-                .eq(QualityFeedbackItem::getQualityFeedbckId, id)
+                .eq(QualityFeedbackItem::getQualityFeedbackId, id)
                 .list();
         List<Map<String, String>> list = new ArrayList<>();
         for (QualityFeedbackItem data : dataList) {