Browse Source

修改单

DLC 1 month ago
parent
commit
56528f888a

+ 7 - 0
qcs-common/src/main/java/com/rongwei/bscommon/sys/dao/QcsMdfFormDao.java

@@ -7,6 +7,7 @@ import com.rongwei.bsentity.domain.QcsMdfFormDo;
 import org.apache.ibatis.annotations.Delete;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
 
 import java.util.List;
 import java.util.Map;
@@ -20,4 +21,10 @@ public interface QcsMdfFormDao extends BaseMapper<QcsMdfFormDo> {
 
     @Select("${querysql}")
     IPage<Map<String, Object>> queryPageDataFromSql(Page page, @Param("querysql") String querysql);
+
+    @Select("select FORMID,SUM(TOTALAMOUNT) as TOTALAMOUNTSUM,SUM(ACTAMOUNT) as ACTAMOUNTSUM from qcs_mdf_detail where DELETED='0' and FORMID=#{formId} group by FORMID")
+    Map<String, Object> getAmountSum(@Param("formId") String formId);
+
+    @Update("update qcs_mdf_detail set STATUS='已提交',MODIFYDATE=NOW(),SUBMITDATE=NOW() where FORMID=#{formId} and DEPTID=#{deptId}")
+    void upStatus(@Param("formId") String formId, @Param("deptId") String deptId);
 }

+ 4 - 0
qcs-common/src/main/java/com/rongwei/bscommon/sys/service/QcsMdfFormService.java

@@ -2,6 +2,10 @@ package com.rongwei.bscommon.sys.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.rongwei.bsentity.domain.QcsMdfFormDo;
+import com.rongwei.rwcommon.base.R;
+
+import java.util.Map;
 
 public interface QcsMdfFormService extends IService<QcsMdfFormDo> {
+    R afterSave(Map<String, String> params);
 }

+ 1 - 0
qcs-common/src/main/java/com/rongwei/bscommon/sys/service/impl/CommonServiceImpl.java

@@ -91,6 +91,7 @@ public class CommonServiceImpl implements CommonService {
                     }
                     qcsMdfFormVo.setDatasource("修改单系统");
                     qcsMdfFormVo.setIssend("未下发");
+                    qcsMdfFormVo.setSubmitstate("已提交");
                     qcsMdfFormDoList.add(qcsMdfFormVo);
                     for (QcsMdfSectionVo qcsMdfSectionVo : qcsMdfFormVo.getSections()) {
                         if (qcsMdfSectionVo.getFormid() == null) {

+ 46 - 0
qcs-common/src/main/java/com/rongwei/bscommon/sys/service/impl/QcsMdfFormServiceImpl.java

@@ -4,8 +4,54 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.rongwei.bscommon.sys.dao.QcsMdfFormDao;
 import com.rongwei.bscommon.sys.service.QcsMdfFormService;
 import com.rongwei.bsentity.domain.QcsMdfFormDo;
+import com.rongwei.rwcommon.base.R;
+import com.rongwei.rwcommon.utils.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
+import java.util.Map;
 
 @Service
 public class QcsMdfFormServiceImpl extends ServiceImpl<QcsMdfFormDao, QcsMdfFormDo> implements QcsMdfFormService {
+    @Autowired
+    QcsMdfFormDao qcsMdfFormDao;
+    @Autowired
+    QcsMdfFormService qcsMdfFormService;
+
+    @Override
+    @Transactional
+    public R afterSave(Map<String, String> params) {
+        String formId = params.get("formId");
+        String saveType = params.get("saveType");
+        String deptId = params.get("deptId");
+
+        QcsMdfFormDo qcsMdfFormDo = qcsMdfFormService.getById(formId);
+
+        //先更新修改单的合计金额和实际金额
+        Map<String, Object> detailMap = qcsMdfFormDao.getAmountSum(formId);
+        if (detailMap != null) {
+            qcsMdfFormDo.setTotalamount((BigDecimal) detailMap.get("TOTALAMOUNTSUM"));
+            qcsMdfFormDo.setActamount((BigDecimal) detailMap.get("ACTAMOUNTSUM"));
+        }
+
+        if (saveType.equals("issued")) {
+            qcsMdfFormDo.setIssend("已下发");
+        } else if (saveType.equals("submit")) {
+            qcsMdfFormDo.setSubmitstate("已提交");
+
+            //修改明细的提交状态
+            if (StringUtils.isNotBlank(deptId)) {
+                qcsMdfFormDao.upStatus(formId, deptId);
+            }
+        }
+
+        Boolean bool1 = qcsMdfFormService.updateById(qcsMdfFormDo);
+        if (bool1) {
+            return R.ok();
+        } else {
+            return R.error();
+        }
+    }
 }

+ 15 - 0
qcs-entity/src/main/java/com/rongwei/bsentity/domain/QcsMdfFormDo.java

@@ -252,6 +252,21 @@ public class QcsMdfFormDo extends BaseDo {
      */
     @TableField("DATASOURCE")
     private String datasource;
+    /**
+     * 提交状态
+     */
+    @TableField("SUBMITSTATE")
+    private String submitstate;
+
+    /**
+     * 一级单位ID
+     */
+    private String baseid;
+
+    /**
+     * 一级单位
+     */
+    private String basename;
 
 
 }

+ 33 - 0
qcs-server/src/main/java/com/rongwei/controller/QcsMdfFormController.java

@@ -0,0 +1,33 @@
+package com.rongwei.controller;
+
+import com.rongwei.bscommon.sys.service.QcsMdfFormService;
+import com.rongwei.rwcommon.base.R;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
+
+@RestController
+@RequestMapping("/qcsmdfform")
+@Slf4j
+public class QcsMdfFormController {
+    @Autowired
+    QcsMdfFormService qcsMdfFormService;
+
+    //修改单保存之后
+    @PostMapping("/afterSave")
+    public R afterSave(@RequestBody Map<String, String> params) {
+        try {
+            log.info("修改单保存之后开始--" + params);
+            return qcsMdfFormService.afterSave(params);
+        } catch (Exception e) {
+            e.printStackTrace();
+            log.info("修改单保存之后异常..." + e.getMessage());
+            return R.error();
+        }
+    }
+}