Kaynağa Gözat

版本切换

anderx 3 yıl önce
ebeveyn
işleme
053be5f7a5

+ 1 - 1
src/main/java/com/goafanti/common/mapper/PublicReleaseMapper.xml

@@ -836,7 +836,7 @@
       and type= #{type}
     </if>
     <if test="aid !=null">
-      and type= #{aid}
+      and aid= #{aid}
     </if>
   </select>
   <update id="updateStatusByMainId">

+ 61 - 45
src/main/java/com/goafanti/weChat/service/impl/PublicReleaseServiceImpl.java

@@ -108,7 +108,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		Admin a=adminMapper.selectByPrimaryKey(my.getReviewer());
 		String openid=a.getOpenId();
 		String str="["+my.getName()+"]发起["+nickname+"]的外出申请,请及时审核。";
-		sendNoticeAndSoucket(a.getId(),NoticeStatus.PUBLIC_RELEASE_START.getCode(),str);
+		sendNoticeAndSoucket(a.getId(),1,str);
 		Map<String, Object>map=new HashMap<String, Object>();
 		map.put("data", publicReleaseMapper.selectDtails(in.getId(),null));
 		if (openid!=null) {
@@ -139,11 +139,14 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 
 
 	private void sendNoticeAndSoucket(String id,Integer type,String content) {
+		Integer noticeType=NoticeStatus.PUBLIC_RELEASE_START.getCode();
+		if(type==0)noticeType=NoticeStatus.PUBLIC_RELEASE_NO.getCode();
+			else if (type==2)noticeType=NoticeStatus.PUBLIC_RELEASE_YES.getCode();
 		systemWebSocketHandler.sendMessageToUser(id, new TextMessage("unread"));
 		Notice n =new Notice();
 		n.setId(UUID.randomUUID().toString());
 		n.setAid(id);
-		n.setNoticeType(type);
+		n.setNoticeType(noticeType);
 		n.setContent(content);
 		n.setReaded(0);//未读
 		asyncUtils.addNotice(n);
@@ -210,7 +213,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				publicReleaseMapper.updateByPrimaryKeySelective(out);
 			}
 			List<PublicRelease> list2 = publicReleaseMapper.selectByMainId(in.getId(),4,null);
-			for (PublicRelease out : list) {
+			for (PublicRelease out : list2) {
 				addpublicLog(out.getId(), PublicReleaseLog.states.sc.getCode(), "修改撤销协单助手");
 				out.setStatus(3);
 				publicReleaseMapper.updateByPrimaryKeySelective(out);
@@ -259,10 +262,9 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		Integer type=0;
 		String content="";
 		User u=userMapper.selectByPrimaryKey(use.getUid());
+		Admin a=adminMapper.selectByPrimaryKey(use.getAid());
 		if (status==0){
 			str=str.append("驳回,");
-			type=NoticeStatus.PUBLIC_RELEASE_NO.getCode();
-
 			if (use.getAssist()==2){
 				content="["+u.getNickname()+"]公司的外出申请,技术协单被["+ad.getName()+"]拒绝!";
 			}else {
@@ -272,12 +274,11 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 			str=str.append("同意,");
 			//如果是协单公出主公出,在审核通过
 			if (use.getAssist()==1){
-				pushPublicReleaseAssist(use,status,date);
+				pushPublicReleaseAssist(use,status,date,u,a);
 			}else if (use.getAssist()==0){
 				publicReleaseMapper.updateStatusByMainId(3,use.getId(),null,null);
 			}
 
-			type=NoticeStatus.PUBLIC_RELEASE_YES.getCode();
 			content="["+u.getNickname()+"]公司的外出申请,已通过审核!";
 		}
 		str=str.append(remarks);
@@ -286,8 +287,8 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		publicReleaseMapper.updateByPrimaryKeySelective(p);
 		addpublicLog(id, status, remarks);
 		AdminListBo my = adminMapper.getDeptNameByAid(TokenManager.getAdminId());
-		Admin a=adminMapper.selectByPrimaryKey(use.getAid());
-		sendNoticeAndSoucket(a.getId(),type,content);
+
+		sendNoticeAndSoucket(a.getId(),status,content);
 		if (my.getOpenId()!=null) {
 			if (remarks.length()>19) {
 				remarks=remarks.substring(0, 15)+"...";
@@ -332,6 +333,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		up.setStatus(3);
 		addpublicLog(id, status, remarks);
 		publicReleaseMapper.updateByPrimaryKeySelective(up);
+		deleteAssistantPulicRelease(use,null);
 		return addNoticeAndWeChat(mainPublic.getId(), mainPublic.getAid(), str.toString(), status);
 	}
 
@@ -344,9 +346,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 	 * @return
 	 */
 	private Integer addNoticeAndWeChat(Integer id,String aid, String remarks,  Integer status) {
-		Integer noticeType=0;
-		if (status ==0)noticeType=NoticeStatus.PUBLIC_RELEASE_NO.getCode();
-		sendNoticeAndSoucket(aid,noticeType, remarks);
+		sendNoticeAndSoucket(aid,status, remarks);
 		AdminListBo my = adminMapper.getDeptNameByAid(aid);
 		Admin a = adminMapper.selectByPrimaryKey(TokenManager.getAdminId());
 		if (my.getOpenId()!=null) {
@@ -360,11 +360,13 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		}
 	}
 
-	private void pushPublicReleaseAssist(PublicRelease use,Integer status,Date date) {
+	private void pushPublicReleaseAssist(PublicRelease use,Integer status,Date date,User u,Admin a) {
 		Integer useId=use.getId();
 		if (use.getAssistAid()!=null){
-			updatePushassist(use, status, date, useId);
-			updatepushAssistant(use);
+			updatePushassist(use, status, date, useId,u,a);
+			if(use.getAssistantAid()!=null){
+				updatepushAssistant(use,u,a);
+			}
 
 		}
 	}
@@ -376,7 +378,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 	 * @param date
 	 * @param useId
 	 */
-	private void updatePushassist(PublicRelease use, Integer status, Date date, Integer useId) {
+	private void updatePushassist(PublicRelease use, Integer status, Date date, Integer useId,User u,Admin a) {
 		//协单
 		List<PublicRelease> list = publicReleaseMapper.selectByMainId(use.getId(),3,null);
 		String []ss= use.getAssistAid().split(",");
@@ -394,20 +396,25 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				in.setId(out.getId());
 				in.setStatus(3);
 				publicReleaseMapper.updateByPrimaryKeySelective(in);
-				PublicReleaseLog log = new PublicReleaseLog(in.getId(), TokenManager.getAdminId(), PublicReleaseLog.states.ty.getCode(), "同意修改,撤销此协单", date);
+				StringBuffer str = new StringBuffer("[").append(a.getName()).append("]取消公出").append("[").append(u.getUsername()).append("]。");
+				PublicReleaseLog log = new PublicReleaseLog(in.getId(), TokenManager.getAdminId(), PublicReleaseLog.states.ty.getCode(), str.toString(), date);
 				publicReleaseLogMapper.insertSelective(log);
+				sendNoticeAndSoucket(out.getAid(),in.getStatus(),str.toString());
 			}else {
-				use.setId(out.getId());
-				use.setAid(out.getAid());
-				use.setMainId(null);
-				use.setClockIn(null);
-				use.setClockInTime(null);
-				use.setType(null);
-				use.setAssist(2);
-				use.setStatus(status);
-				publicReleaseMapper.updateByPrimaryKeySelective(use);
-				PublicReleaseLog log = new PublicReleaseLog(out.getId(), TokenManager.getAdminId(), PublicReleaseLog.states.ty.getCode(), "同意协单信息", date);
+				PublicRelease np = new PublicRelease();
+				np.setId(out.getId());
+				np.setAid(out.getAid());
+				np.setMainId(null);
+				np.setClockIn(null);
+				np.setClockInTime(null);
+				np.setType(null);
+				np.setAssist(2);
+				np.setStatus(status);
+				publicReleaseMapper.updateByPrimaryKeySelective(np);
+				StringBuffer str = new StringBuffer("[").append(a.getName()).append("]修改了公出").append("[").append(u.getUsername()).append("]。");
+				PublicReleaseLog log = new PublicReleaseLog(out.getId(), TokenManager.getAdminId(), PublicReleaseLog.states.ty.getCode(),str.toString(), date);
 				publicReleaseLogMapper.insertSelective(log);
+				sendNoticeAndSoucket(out.getAid(),np.getStatus(),str.toString());
 			}
 		}
 		for (String s : ss) {
@@ -418,14 +425,18 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				}
 			}
 			if (!flag2) {
-				use.setAssist(2);
-				use.setAid(s);
-				use.setStatus(2);
-				use.setType(3);
-				use.setMainId(useId);
-				use.setId(null);
-				publicReleaseMapper.insertSelective(use);
-				PublicReleaseLog log = new PublicReleaseLog(use.getId(), TokenManager.getAdminId(), PublicReleaseLog.states.ty.getCode(), "同意协单信息", date);
+				PublicRelease np = new PublicRelease();
+				BeanUtils.copyProperties(use,np);
+				np.setAssist(2);
+				np.setAid(s);
+				np.setStatus(2);
+				np.setType(3);
+				np.setMainId(useId);
+				np.setId(null);
+				publicReleaseMapper.insertSelective(np);
+				StringBuffer str = new StringBuffer("[").append(a.getName()).append("]邀请你技术协单").append("[").append(u.getUsername()).append("]。");
+				PublicReleaseLog log = new PublicReleaseLog(np.getId(), TokenManager.getAdminId(), PublicReleaseLog.states.ty.getCode(), str.toString(), date);
+				sendNoticeAndSoucket(np.getAid(),np.getStatus(),str.toString());
 				publicReleaseLogMapper.insertSelective(log);
 			}
 		}
@@ -435,7 +446,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 	 * 处理技术助手
 	 * @param use
 	 */
-	private void updatepushAssistant(PublicRelease use) {
+	private void updatepushAssistant(PublicRelease use,User u,Admin a) {
 		List<String> list=new ArrayList();
 		list =new ArrayList<>(Arrays.asList(use.getAssistantAid().split(",")));
 		List<PublicRelease> deletelist = publicReleaseMapper.selectByMainId(use.getId(),4,null);
@@ -451,7 +462,9 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				if (flag){
 					p.setStatus(2);
 					publicReleaseMapper.updateByPrimaryKeySelective(p);
-					PublicReleaseLog log = new PublicReleaseLog(p.getId(), TokenManager.getAdminId(), PublicReleaseLog.states.ty.getCode(), "同意协单信息", new Date());
+					StringBuffer str = new StringBuffer("[").append(a.getName()).append("]修改了").append("[").append(u.getUsername()).append("]。");
+					PublicReleaseLog log = new PublicReleaseLog(p.getId(), TokenManager.getAdminId(), PublicReleaseLog.states.ty.getCode(), str.toString(), new Date());
+					sendNoticeAndSoucket(p.getAid(),p.getStatus(),str.toString());
 					publicReleaseLogMapper.insertSelective(log);
 				}
 			}
@@ -741,11 +754,14 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 			publicReleaseMapper.insertSelective(newP);
 		}else {
 			for (PublicRelease pr : list) {
-				newP.setId(pr.getId());
-				newP.setStatus(2);
-				newP.setAssistantAid(pr.getAssistantAid());
-				newP.setAssistantName(pr.getAssistantName());
-				publicReleaseMapper.updateByPrimaryKeySelective(newP);
+				if (pr.getAid().equals(aid)){
+					newP.setId(pr.getId());
+					newP.setStatus(2);
+					newP.setAssistantAid(pr.getAssistantAid());
+					newP.setAssistantName(pr.getAssistantName());
+					publicReleaseMapper.updateByPrimaryKeySelective(newP);
+				}
+
 			}
 		}
 		addpublicLog(newP.getId(),PublicReleaseLog.states.fq.getCode(),"发起技术协助。");
@@ -774,7 +790,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 			AdminListBo my = adminMapper.getDeptNameByAid(TokenManager.getAdminId());
 			String openid=recipient.getOpenId();
 			str=new StringBuffer("[").append(my.getName()).append("]").append(str).toString();
-			sendNoticeAndSoucket(recipient.getId(),NoticeStatus.PUBLIC_RELEASE_START.getCode(),str);
+			sendNoticeAndSoucket(recipient.getId(),type,str);
 			if (type==0||type==2){
 				if (openid!=null) {
 					Integer res= weChatUtils.addNotice(openid, type,prid,new Date(),my.getName(),str);
@@ -851,8 +867,8 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		List<PublicRelease> list = publicReleaseMapper.selectByMainId(p.getMainId(), 4, aid);
 		for (PublicRelease pr : list) {
 			addpublicLog(pr.getId(),PublicReleaseLog.states.cx.getCode(),"撤销技术协助。");
+			addWeChatNotice( pr.getAid(),3,"撤销技术协助。",p.getId());
 		}
-		addWeChatNotice( aid,3,"撤销技术协助。",p.getId());
 	}
 
 	@Override
@@ -872,7 +888,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		PublicRelease p = publicReleaseMapper.selectByPrimaryKey(id);
 		List<PublicRelease> list = publicReleaseMapper.selectByMainId(p.getMainId(), 4, aid);
 		for (PublicRelease use : list) {
-			if (use.getAid().equals(aid)){
+			if (use.getAid().equals(aid)&&use.getStatus()!=3){
 				return true;
 			}
 		}

+ 5 - 5
src/main/resources/props/config_local.properties

@@ -1,12 +1,12 @@
 dev.name=local
 jdbc.driverClassName=com.mysql.jdbc.Driver
 #jdbc.url=jdbc\:mysql://localhost:3306/aft20220318?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
-jdbc.url=jdbc\:mysql://localhost:3306/aft?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
-jdbc.username=root
-jdbc.password=123456
-#jdbc.url=jdbc:mysql://101.37.32.31:3306/aft?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
+#jdbc.url=jdbc\:mysql://localhost:3306/aft?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
 #jdbc.username=root
-#jdbc.password=aftdev
+#jdbc.password=123456
+jdbc.url=jdbc:mysql://101.37.32.31:3306/aft?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
+jdbc.username=root
+jdbc.password=aftdev
 jdbc.validationQuery=SELECT 'x'
 jdbc.initialSize=3
 jdbc.maxActive=20