瀏覽代碼

修改公出,协单删除逻辑修改

anderx 1 年之前
父節點
當前提交
7168042840
共有 1 個文件被更改,包括 25 次插入0 次删除
  1. 25 0
      src/main/java/com/goafanti/weChat/service/impl/PublicReleaseServiceImpl.java

+ 25 - 0
src/main/java/com/goafanti/weChat/service/impl/PublicReleaseServiceImpl.java

@@ -462,9 +462,31 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 			}
 			if (in.getAssist()==1){
 				in.setAssistProcess(1);
+				//在有协单的情况下,新增是审核完成才新增,修改是审核完成才修改。
+				//如果是删除,则需要判定
+				String[] assistAid = in.getAssistAid().split(",");
+				List<PublicRelease> publicReleases = publicReleaseMapper.selectByMainId(in.getId(), null, null);
+				for (PublicRelease e : publicReleases) {
+					boolean flag = false;
+					for (String aid : assistAid) {
+						if (e.getAid().equals(aid)){
+							flag = true;
+							break;
+						}
+					}
+					if (!flag&&e.getClockIn()==1){
+						throw new BusinessException("该公出已签到,无法取消");
+					}
+				}
 			}else if (in.getAssist()==0){
 				publicReleaseMapper.updateAssist(in);
 				in.setAssistProcess(0);
+				List<OutPublicReleaseDetails> outPublicReleaseDetails = publicReleaseDetailsMapper.selectByPrid(in.getId());
+				for (OutPublicReleaseDetails e : outPublicReleaseDetails) {
+					if (e.getClockIn()==1){
+						throw new BusinessException("该公出已签到,无法取消");
+					}
+				}
 			}
 			if (in.getUids()!=null){
 				List<String> split = Arrays.asList(in.getUids().split(","));
@@ -1262,6 +1284,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 					break;
 				}
 			}
+			//不存在则取消公出
 			if (!flag){
 				PublicRelease in = new PublicRelease();
 				in.setId(out.getId());
@@ -1272,6 +1295,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				publicReleaseLogMapper.insertSelective(log);
 				sendNoticeAndSoucket(out.getAid(),in.getStatus(),str.toString());
 			}else {
+				//存在则修改公出
 				PublicRelease np = new PublicRelease();
 				BeanUtils.copyProperties(use,np);
 				np.setId(out.getId());
@@ -1301,6 +1325,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				sendNoticeAndSoucket(out.getAid(),np.getStatus(),str.toString());
 			}
 		}
+		//有新增则新增公出
 		for (String s : ss) {
 			boolean flag2 = false;
 			for (PublicRelease o : list) {