|
@@ -1,9 +1,9 @@
|
|
|
package org.springblade.business.service.impl;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import lombok.AllArgsConstructor;
|
|
@@ -20,7 +20,6 @@ import org.springblade.business.feignClient.WbsTreeContractStatisticsClientImpl;
|
|
|
import org.springblade.business.mapper.TaskMapper;
|
|
|
import org.springblade.business.mapper.TrialSelfInspectionRecordMapper;
|
|
|
import org.springblade.business.service.*;
|
|
|
-import org.springblade.business.sync.TaskSync;
|
|
|
import org.springblade.business.utils.FileUtils;
|
|
|
import org.springblade.business.vo.*;
|
|
|
import org.springblade.common.constant.CommonConstant;
|
|
@@ -29,16 +28,12 @@ import org.springblade.common.utils.SnowFlakeUtil;
|
|
|
import org.springblade.core.log.exception.ServiceException;
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl;
|
|
|
import org.springblade.core.oss.model.BladeFile;
|
|
|
-import org.springblade.core.redis.cache.BladeRedis;
|
|
|
import org.springblade.core.secure.BladeUser;
|
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.secure.utils.SecureUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
|
|
|
-import org.springblade.core.tool.utils.DateUtil;
|
|
|
-import org.springblade.core.tool.utils.Func;
|
|
|
-import org.springblade.core.tool.utils.ObjectUtil;
|
|
|
-import org.springblade.core.tool.utils.ResourceUtil;
|
|
|
+import org.springblade.core.tool.utils.*;
|
|
|
import org.springblade.evisa.feign.EVisaClient;
|
|
|
import org.springblade.evisa.redissionUtil.DistributedRedisLock;
|
|
|
import org.springblade.evisa.vo.EVisaTaskApprovalVO;
|
|
@@ -67,7 +62,6 @@ import org.springframework.data.redis.core.StringRedisTemplate;
|
|
|
import org.springframework.jdbc.core.BeanPropertyRowMapper;
|
|
|
import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
import org.springframework.jdbc.core.SingleColumnRowMapper;
|
|
|
-import org.springframework.scheduling.annotation.Async;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
@@ -135,6 +129,7 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
private final WbsTreePrivateClient wbsTreePrivateClient;
|
|
|
private final TrialSelfInspectionRecordMapper trialSelfInspectionRecordMapper;
|
|
|
private final WbsTreeContractStatisticsClientImpl wbsTreeContractStatisticsClient;
|
|
|
+ private final IOperationLogService operationLogService;
|
|
|
//超级管理员的角色id
|
|
|
private final String SUPER_ADMIN_ROLE_ID = "1123598816738675201";
|
|
|
//泓创智诚公司的部门id
|
|
@@ -1215,6 +1210,13 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
.eq(TaskParallel::getProcessInstanceId, task.getProcessInstanceId()));
|
|
|
}
|
|
|
}
|
|
|
+ recordResignLog("re-sign(日志)", formDataIds, contractLogList, new HashMap<String, Object>() {{
|
|
|
+ put("logids", logids);
|
|
|
+ put("type", type);
|
|
|
+ put("logPkeyId", logPkeyId);
|
|
|
+ put("nodePrimaryKeyId", nodePrimaryKeyId);
|
|
|
+ put("contractId", contractId);
|
|
|
+ }}, null, contractId, request);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
throw new ServiceException("重新保存PDF信息失败,原因:" + e.getMessage());
|
|
@@ -1316,6 +1318,7 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
String taskIds = StringUtils.join(taskList, ",");
|
|
|
removeUserAndName(taskIds, userId, userName);
|
|
|
}*/
|
|
|
+ recordResignLog("re-sign(试验)", StringUtils.join(dataIdList, ","), list, dto, dto.getProjectId(), null, request);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
throw new ServiceException("重新保存PDF信息失败,原因:" + e.getMessage());
|
|
@@ -1349,6 +1352,8 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
}
|
|
|
Map<String, List<TaskParallel>> finalTaskParallelGroupMap = taskParallelGroupMap;
|
|
|
try {
|
|
|
+ String entrustIds = dtos.stream().map(ReSigningEntrustDto::getEntrustId).collect(Collectors.joining(","));
|
|
|
+ List<EntrustInfo> entrustInfos = jdbcTemplate.query("select * from u_entrust_info where id in ( " + entrustIds + " )", new BeanPropertyRowMapper<>(EntrustInfo.class));
|
|
|
for (int i = 0; i < taskList.size(); i++) {
|
|
|
ReSigningEntrustDto dto = longMap.get(taskList.get(i).getId());
|
|
|
R result = new R();
|
|
@@ -1420,6 +1425,7 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
.eq(TaskParallel::getProcessInstanceId, taskList.get(i).getProcessInstanceId()));
|
|
|
}
|
|
|
}
|
|
|
+ this.recordResignLog("re-sign(委托单)", entrustIds, entrustInfos, dtos,taskList.get(0).getProjectId() , taskList.get(0).getContractId(), request);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
throw new ServiceException("重新保存PDF信息失败,原因:" + e.getMessage());
|
|
@@ -1959,6 +1965,8 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
.set(InformationQuery::getSaveAgain, 0)
|
|
|
.ne(InformationQuery::getSaveAgain, 1)
|
|
|
.in(InformationQuery::getId, newIds));
|
|
|
+ List<InformationQuery> list = informationQueryService.list(new LambdaQueryWrapper<>(InformationQuery.class).in(InformationQuery::getId, newIds));
|
|
|
+ recordResignLog("save-again", StringUtils.join(newIds, ","), list, dtos, dtos.get(0).getProjectId()+"", dtos.get(0).getContractId()+"", null);
|
|
|
}
|
|
|
return R.success("操作成功");
|
|
|
}
|
|
@@ -2118,6 +2126,13 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
//满足去除当前填报人的条件 去除当前任务的填报人中当前操作人的信息
|
|
|
removeUserAndName(taskIds, userId, userName);
|
|
|
}
|
|
|
+ recordResignLog("re-sign(质检)",StringUtils.join(dataIdList, ","), list, new HashMap<String, Object>() {{
|
|
|
+ put("taskIds", taskIds);
|
|
|
+ put("contractId", contractId);
|
|
|
+ put("projectId", projectId);
|
|
|
+ put("classify", classify);
|
|
|
+ put("type", type);
|
|
|
+ }}, projectId, contractId, request);
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
throw new ServiceException("重新保存PDF信息失败,原因:" + e.getMessage());
|
|
@@ -2224,10 +2239,10 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
}
|
|
|
ids2 = ids2.substring(0, ids2.length() - 1);
|
|
|
}
|
|
|
-
|
|
|
+ List<InformationQuery> queryList = jdbcTemplate.query("select id, e_visa_pdf_url, status from u_information_query where id in( " + ids + ") and is_deleted=0 and status in (1,2)", new BeanPropertyRowMapper<>(InformationQuery.class));
|
|
|
String sqlqu = "update u_information_query set status=2,e_visa_pdf_url='' where id in( " + ids + ") and is_deleted=0 and status in (1,2)";
|
|
|
String sqlForTask = "update u_task set status=2 where form_data_id in( " + ids2 + ") and status in(1,2) and is_deleted=0 ";
|
|
|
- String sqlForTaskPall = "UPDATE u_task_parallel a set a.is_resign = 1, a.`status`=2 , a.e_visa_status=1 ,a.e_visa_content='电签成功' where a.process_instance_id in(select process_instance_id from u_task b where b.form_data_id in( " + ids2 + ") and b.status in(0,1,2) and b.is_deleted = 0) and a.`status` in(0,1)";
|
|
|
+ String sqlForTaskPall = "update u_task_parallel a INNER JOIN u_task b on a.process_instance_id = b.process_instance_id set a.is_resign = 1, a.`status`=2 , a.e_visa_status=1 ,a.e_visa_content='电签成功' where b.form_data_id in( " + ids2 + ") and b.status in(0,1,2) and b.is_deleted = 0 and a.`status` in(0,1)";
|
|
|
|
|
|
String taskBtech = "insert into u_task_batch(id,task_parallel_id,json_data,create_user,create_dept,create_time,update_user,update_time,status,is_deleted,nick_name,sign_format,sign_type) " +
|
|
|
" SELECT a.id,a.process_instance_id,json_object('approvalFileList',json_array(),'approvalType',b.approval_type,'comment','','flag','OK','formDataId',b.form_data_id,'parallelProcessInstanceId',a.parallel_process_instance_id,'pass',true,'taskId',b.id) as json_data,a.task_user,a.create_dept,a.create_time,a.update_user,SYSDATE(),1 as status,0 as is_deleted,a.task_user_name as nick_name ,1 as sign_format,1 as sign_type from u_task_parallel a,u_task b where b.`status` in(1,2) and a.`status` in(2) and a.process_instance_id=b.process_instance_id " +
|
|
@@ -2246,6 +2261,43 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
|
|
|
jdbcTemplate.execute(sqlForTaskPall);
|
|
|
jdbcTemplate.execute(taskBtech);
|
|
|
|
|
|
+ if (!queryList.isEmpty()) {
|
|
|
+ Map<String, String> requestMap = new HashMap<>();
|
|
|
+ requestMap.put("ids", ids);
|
|
|
+ requestMap.put("userIds", userIds);
|
|
|
+ recordResignLog("一键重签", ids, queryList, requestMap, null, null, null);
|
|
|
+ }
|
|
|
return R.success("操作成功");
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ public void recordResignLog(String module, String businessIds, Object data, Object requestData, String projectId, String contractId, HttpServletRequest request){
|
|
|
+ try {
|
|
|
+ OperationLog resignLog = new OperationLog();
|
|
|
+ resignLog.setProjectId(StringUtil.isNumeric(projectId) ? Long.parseLong(projectId) : null);
|
|
|
+ resignLog.setContractId(StringUtil.isNumeric(contractId) ? Long.parseLong(contractId) : null);
|
|
|
+ resignLog.setOperationType(33);
|
|
|
+ resignLog.setOperationModule(module);
|
|
|
+ resignLog.setOperationContent(JSON.toJSONString(requestData));
|
|
|
+ resignLog.setSaveData(JSON.toJSONString(data));
|
|
|
+ resignLog.setOperationTime(DateUtil.formatTime(DateUtil.now()));
|
|
|
+ resignLog.setOperationView("");
|
|
|
+ resignLog.setBusinessId(businessIds);
|
|
|
+ if (request != null) {
|
|
|
+ BladeUser user = AuthUtil.getUser(request);
|
|
|
+ if (user != null) {
|
|
|
+ resignLog.setCreateUser(user.getUserId());
|
|
|
+ resignLog.setOperationAccount(user.getUserName());
|
|
|
+ resignLog.setCreateUserName(user.getNickName());
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ resignLog.setCreateUser(AuthUtil.getUserId());
|
|
|
+ resignLog.setOperationAccount(AuthUtil.getUserName());
|
|
|
+ resignLog.setCreateUserName(AuthUtil.getNickName());
|
|
|
+ }
|
|
|
+ operationLogService.save(resignLog);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|