Browse Source

增加制造单审核限制

zhoudw 7 years ago
parent
commit
99201c81be

+ 1 - 1
applications/purchase/purchase-dto/src/main/java/com/usoftchina/saas/purchase/dto/PurchaseDetailDTO.java

@@ -12,7 +12,7 @@ import java.util.Date;
  * @date 2018/10/9
  */
 @Data
-public class PurchaseDetailDTO implements Serializable{
+public class PurchaseDetailDTO extends CommonBaseDTO implements Serializable{
 
     private  Long pd_puid;
 

+ 36 - 24
applications/storage/storage-server/src/main/java/com/usoftchina/saas/storage/service/impl/MakeServiceImpl.java

@@ -266,6 +266,13 @@ public class MakeServiceImpl extends CommonBaseServiceImpl<MakeMapper, Make> imp
     public void singleAudit(MakeListDTO makeListDTO) {
         //1.获取主从表数据
         Make make = makeListDTO.getMain();
+        //检验单审核状态
+        //检查审核状态
+        String ma_statuscode = make.getMa_statuscode();
+        if(StringUtils.isEmpty(ma_statuscode)||(!StringUtils.isEmpty(ma_statuscode)&&!ma_statuscode.equals(Status.UNAUDITED.name()))){
+            throw  new BizException(BizExceptionCode.BIZ_AUDITED);
+        };
+
         //2.校验库存是否足够
         validStorage(makeListDTO);
         //3.生成  完工入库单和领料单 并 过账
@@ -537,7 +544,6 @@ public class MakeServiceImpl extends CommonBaseServiceImpl<MakeMapper, Make> imp
                 prodIODetailList.add(prodIODetail);
             }
             prodIODetailMapper.batchInsert(prodIODetailList);
-
             map.put("inoutNo", code);
             map.put("class", "完工入库单");
             map.put("commitid", BaseContextHolder.getUserId());
@@ -551,10 +557,21 @@ public class MakeServiceImpl extends CommonBaseServiceImpl<MakeMapper, Make> imp
     }
 
     @Override
-    @Transactional(rollbackFor = Exception.class)
     public DocBaseDTO resAudit(Long id) {
+        return singleUnAudit(id);
+    }
+
+
+
+    @Transactional(propagation = Propagation.REQUIRED)
+    public DocBaseDTO singleUnAudit(Long id) {
         //1.获取主从表数据
         Make make = getMapper().selectByPrimaryKey(id);
+        //检查审核状态
+        String ma_statuscode = make.getMa_statuscode();
+        if(StringUtils.isEmpty(ma_statuscode)||(!StringUtils.isEmpty(ma_statuscode)&&!ma_statuscode.equals(Status.AUDITED.name()))){
+            throw  new BizException(BizExceptionCode.BIZ_UNAUDITED);
+        };
         List<MakeMaterial> items = makeMaterialMapper.selectByFK(id, BaseContextHolder.getCompanyId());
         MakeListDTO makeListDTO = new MakeListDTO(make, items);
         //2.校验库存是否足够
@@ -577,7 +594,23 @@ public class MakeServiceImpl extends CommonBaseServiceImpl<MakeMapper, Make> imp
     }
 
 
-
+    @Override
+    public String batchUnAudit(BatchDealBaseDTO baseDTOs) {
+        if (null == baseDTOs || null == baseDTOs.getBaseDTOs() ||
+                baseDTOs.getBaseDTOs().size() == 0) {
+            return "无可反审核单据。";
+        }
+        StringBuffer errorMsg = new StringBuffer();
+        for (DocBaseDTO base : baseDTOs.getBaseDTOs()) {
+            try {
+                Long id =  base.getId();
+                singleUnAudit(id);
+            }catch (Exception e) {
+                errorMsg.append("编号:" + base.getCode() + "处理失败," + e.getMessage());
+            }
+        }
+        return errorMsg.toString();
+    }
 
     @Override
     public String batchClose(BatchDealBaseDTO batchDealBaseDTO) {
@@ -618,27 +651,6 @@ public class MakeServiceImpl extends CommonBaseServiceImpl<MakeMapper, Make> imp
     }
 
 
-
-    @Override
-    public String batchUnAudit(BatchDealBaseDTO baseDTOs) {
-        if (null == baseDTOs || null == baseDTOs.getBaseDTOs() ||
-                baseDTOs.getBaseDTOs().size() == 0) {
-            return "无可反审核单据。";
-        }
-        StringBuffer errorMsg = new StringBuffer();
-        for (DocBaseDTO base : baseDTOs.getBaseDTOs()) {
-            try {
-                Long id =  base.getId();
-
-//                ProdInOutDTO prodInOutDTO = BeanMapper.map(prodInOut,ProdInOutDTO.class);
-//                singleUnAudit(prodInOutDTO);
-            }catch (Exception e) {
-                errorMsg.append("编号:" + base.getCode() + "处理失败," + e.getMessage());
-            }
-        }
-        return errorMsg.toString();
-    }
-
     /**
      * 1.查找制造单关联的出入库单据
      * 2.反过账