yuansh 2 years ago
parent
commit
a0c5e756ad

+ 8 - 0
jeecg-boot/jeecg-boot-module-activiti/src/main/java/org/jeecg/modules/activiti/web/ActBusinessController.java

@@ -696,6 +696,14 @@ public class ActBusinessController {
                 }
             }
         }
+        if(param.getTableName().equals("personnel_out_registration")){ //人员外出登记单
+            String userIds = sysBaseAPI.getUserByRoleCode("SY003",null);//办公室
+            if(StringUtils.isNotBlank(userIds)){
+                if(userIds.contains(loginUser.getUsername())){
+                    map.put("userId",null);//当前登陆人
+                }
+            }
+        }
         if(param.getTableName().equals("expense_account")){ //报销单
             String userIds = sysBaseAPI.getUserByRoleCode("SY013",null);//财务出纳
             if(StringUtils.isNotBlank(userIds)){

+ 3 - 0
jeecg-boot/jeecg-boot-module-activiti/src/main/java/org/jeecg/modules/activiti/web/ActTaskController.java

@@ -756,6 +756,9 @@ public class ActTaskController {
         Map<String, String> userMap = allUser.stream().collect(Collectors.toMap(ComboModel::getUsername, ComboModel::getTitle));
         taskList.forEach(e -> {
             HistoricTaskVo htv = new HistoricTaskVo(e);
+            if(htv.getDeleteReason().contains("发起人撤回")){
+                return;
+            }
             // 关联委托人
             if(StrUtil.isNotBlank(htv.getOwner())){
                 htv.setOwner(userMap.get(htv.getOwner()));

+ 1 - 0
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/activiti/listener/ListenerAnnualLeave.java

@@ -59,6 +59,7 @@ public class ListenerAnnualLeave implements TaskListener, JavaDelegate {
 		if(StringUtils.isBlank(practical_leave)){
 			Map<String,String> map = tbTableInfoMapper.getColumnValueList("employee_leave",id);
 			practical_leave = map.get(field_practical);
+			employe_name = map.get("create_by");
 		}
 
 		if(category.equals("年假")){

+ 5 - 3
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/activiti/listener/ListenerMeeting.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import org.activiti.engine.delegate.*;
 import org.apache.commons.lang.StringUtils;
+import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.api.ISysBaseAPI;
 import org.jeecg.common.system.vo.LoginUser;
@@ -55,6 +56,7 @@ public class ListenerMeeting implements TaskListener, JavaDelegate {
 		String msg_user1 = delegateExecution.getVariableInstances().get(msg_user).getTextValue();
 		String msg_title1 = delegateExecution.getVariableInstances().get(msg_title).getTextValue();
 		String msg_content1 = delegateExecution.getVariableInstances().get(msg_content).getTextValue();
+		String msg_create = delegateExecution.getVariableInstances().get("create_by").getTextValue();
 
 		String msg_content12 = msg_content1.replace("\n","<br>");
 
@@ -64,10 +66,10 @@ public class ListenerMeeting implements TaskListener, JavaDelegate {
 		String[] userList = dmf3.split(",");
 
 		HashMap<String,Object> taskParam = new HashMap<>();
-		LoginUser loginUser = sysBaseAPI.getUserByName("admin");
-
+		LoginUser loginUser = sysBaseAPI.getUserByName(msg_create);
+//		LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
 		for (String o:userList){
-			sysBaseAPI.sendSysAnnouncement(loginUser,"admin",o,"会议纪要","<h2>会议主题:"+msg_title1+"</h2><br> <h3>会议内容:<br>"+msg_content12+"</h3>", CommonConstant.MSG_CATEGORY_2,taskParam);
+			sysBaseAPI.sendSysAnnouncement(loginUser,loginUser.getUsername(),o,"会议纪要","<h2>会议主题:"+msg_title1+"</h2><br> <h3>会议内容:<br>"+msg_content12+"</h3>", CommonConstant.MSG_CATEGORY_2,taskParam);
 		}
 
 

+ 2 - 2
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/activiti/listener/ListenerPersonnelRequirement.java

@@ -47,9 +47,9 @@ public class ListenerPersonnelRequirement implements TaskListener, JavaDelegate
         }
 
         String msg_user = delegateExecution.getVariableInstances().get(receiveBy).getTextValue();
-
+        String msg_create = delegateExecution.getVariableInstances().get("create_by").getTextValue();
         HashMap<String,Object> taskParam = new HashMap<>();
-        LoginUser loginUser = sysBaseAPI.getUserByName("admin");
+        LoginUser loginUser = sysBaseAPI.getUserByName(msg_create);
 
         sysBaseAPI.sendSysAnnouncement(loginUser,"admin",msg_user,title,
                 msg, CommonConstant.MSG_CATEGORY_2,taskParam);

+ 3 - 3
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/activiti/listener/ListenerSendMsgByRole.java

@@ -60,10 +60,10 @@ public class ListenerSendMsgByRole implements TaskListener, JavaDelegate {
 		if(getUserByRoleCode.size() < 1){
 			return;
 		}
-
+		String msg_create = delegateExecution.getVariableInstances().get("create_by").getTextValue();
 		HashMap<String,Object> taskParam = new HashMap<>();
-		LoginUser loginUser = sysBaseAPI.getUserByName("admin");
-
+//		LoginUser loginUser = sysBaseAPI.getUserByName("admin");
+		LoginUser loginUser = sysBaseAPI.getUserByName(msg_create);
 		for(SysUser o:getUserByRoleCode){
 			sysBaseAPI.sendSysAnnouncement(loginUser,"admin",o.getUsername(),title,
 					msg, CommonConstant.MSG_CATEGORY_2,taskParam);

+ 25 - 12
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/oa/controller/IncidentTicketController.java

@@ -14,11 +14,14 @@ import javax.servlet.http.HttpServletResponse;
 
 import com.alibaba.druid.pool.DruidDataSource;
 import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import org.apache.catalina.core.ApplicationContext;
 import org.apache.commons.lang.StringUtils;
 import org.jeecg.common.system.api.ISysBaseAPI;
 import org.jeecg.modules.oa.entity.CdEnterpriseEnnouncement;
+import org.jeecg.modules.oa.entity.IncidentTicketMsg;
 import org.jeecg.modules.oa.mapper.IncidentTicketMapper;
+import org.jeecg.modules.oa.service.IIncidentTicketMsgService;
 import org.jeecgframework.core.util.ApplicationContextUtil;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
@@ -67,12 +70,12 @@ public class IncidentTicketController {
 	private IIncidentTicketService incidentTicketService;
 	@Autowired
 	private IIncidentTicketChildrenService incidentTicketChildrenService;
-	 @Autowired
-	 private IncidentTicketMapper incidentTicketMapper;
-	 @Autowired
-	 private ISysBaseAPI sysBaseAPI;
+	@Autowired
+	private ISysBaseAPI sysBaseAPI;
+	@Autowired
+	private IIncidentTicketMsgService incidentTicketMsgService;
 
-	 public static void main(String[] args) {
+	public static void main(String[] args) {
 
 //		 DruidDataSource dataSource = ApplicationContextHelper.getBean("dataSource");//获取数据源
 //		 Connection connection = dataSource.getConnection();//获取连接
@@ -136,6 +139,15 @@ public class IncidentTicketController {
 		IPage<IncidentTicket> pageList = incidentTicketService.page(page, queryWrapper);
 
 		for (IncidentTicket o:pageList.getRecords()) {
+
+			LambdaQueryWrapper<IncidentTicketMsg> query = new LambdaQueryWrapper<IncidentTicketMsg>();
+			query.eq(IncidentTicketMsg::getPkIncidentTicket,o.getId());
+			List<IncidentTicketMsg> list2 = incidentTicketMsgService.list(query);
+			if(list2.size() > 0) {
+				String result = list2.stream().map(IncidentTicketMsg::getUserName).collect(Collectors.joining(","));
+				o.setNoticerUser(result);
+			}
+
 			//1未处理 2已通知 3通知已反馈 4已推送 5已完结
 			List<IncidentTicketChildren> list = incidentTicketChildrenService.selectByMainId(o.getId());
 			if(o.getState().equals("4") || o.getState().equals("5")){
@@ -144,9 +156,10 @@ public class IncidentTicketController {
 					o.setU8Invoices(result);
 				}
 			}
-			String result2 = list.stream().map(IncidentTicketChildren::getZhanghaoId).collect(Collectors.joining(","));
+//			String result2 = list.stream().map(IncidentTicketChildren::getZhanghaoId).collect(Collectors.joining(","));
+			String result2 = list.get(0).getZhanghaoId();
 			if(StringUtils.isNotBlank(result2) && !result2.equals("null")){
-				o.setU8Invoices(result2);
+				o.setAcSetNo(result2);
 			}
 			if(StringUtils.isNotBlank(o.getResponsibilityPerson1())){
 				LoginUser login = sysBaseAPI.getUserByName(o.getResponsibilityPerson1());
@@ -355,13 +368,13 @@ public class IncidentTicketController {
 //		if(StringUtils.isBlank(moneyType)){
 //			return Result.error("币种为空无法同步");
 //		}
-		String factory = incidentTicket.getFactory();//工厂
-		if(StringUtils.isBlank(factory)){
-			return Result.error("工厂为空无法同步");
-		}
+//		String factory = incidentTicket.getFactory();//工厂
+//		if(StringUtils.isBlank(factory)){
+//			return Result.error("工厂为空无法同步");
+//		}
 		String responsibilityCompany = incidentTicket.getResponsibilityCompany();//责任单位
 		if(StringUtils.isBlank(responsibilityCompany)){
-			return Result.error("工厂为空责任单位");
+			return Result.error("责任单位为空无法同步");
 		}
 
 		boolean res = true;

+ 3 - 1
jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/oa/entity/IncidentTicket.java

@@ -249,5 +249,7 @@ public class IncidentTicket implements Serializable {
 	@TableField(exist = false)
 	private String handle;//是否处理(是否)
 	@TableField(exist = false)
-	private String ac_set_no;//账套号
+	private String acSetNo;//账套号
+	@TableField(exist = false)
+	private String noticerUser;//通知人
 }