|
@@ -6,15 +6,16 @@ import com.platform.common.cache.ConfigCache;
|
|
|
import com.platform.common.constant.CommonConstants;
|
|
|
import com.platform.common.exception.BusinessException;
|
|
|
import com.platform.common.model.UserInfo;
|
|
|
-import com.platform.common.util.IdGeneratorUtils;
|
|
|
-import com.platform.common.util.ListUtils;
|
|
|
-import com.platform.common.util.SecurityUtils;
|
|
|
-import com.platform.common.util.SpringContextHolder;
|
|
|
+import com.platform.common.util.*;
|
|
|
import com.platform.common.yongyou.response.OtherOutAddResponse;
|
|
|
+import com.platform.dao.dto.upms.SysUserDTO;
|
|
|
+import com.platform.dao.entity.activiti.ActivitiUserModel;
|
|
|
import com.platform.dao.entity.activiti.LocalAuditRecord;
|
|
|
import com.platform.dao.entity.preparation.Preparation;
|
|
|
import com.platform.dao.entity.store.OutStoreForm;
|
|
|
+import com.platform.dao.entity.upms.SysDept;
|
|
|
import com.platform.dao.entity.upms.SysUser;
|
|
|
+import com.platform.dao.entity.upms.SysUserDept;
|
|
|
import com.platform.dao.enums.*;
|
|
|
import com.platform.dao.mapper.activiti.LocalAuditRecordMapper;
|
|
|
import com.platform.dao.mapper.store.OutStoreFormMapper;
|
|
@@ -24,16 +25,22 @@ import com.platform.dao.vo.SysUserVO;
|
|
|
import com.platform.dao.vo.query.customize.CustomFieldTemplateDataVO;
|
|
|
import com.platform.service.customize.BaseFormCheckServiceAbstract;
|
|
|
import com.platform.service.event.WorkplaceBacklogEvent;
|
|
|
+import com.platform.service.upms.SysUserDeptService;
|
|
|
import com.platform.service.util.SendMessageUtils;
|
|
|
import com.platform.service.yongyou.YongyouService;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.activiti.engine.task.Task;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import tk.mybatis.mapper.weekend.Weekend;
|
|
|
+import tk.mybatis.mapper.weekend.WeekendCriteria;
|
|
|
|
|
|
import java.io.OutputStream;
|
|
|
import java.time.LocalDateTime;
|
|
|
+import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @Description 工作流业务
|
|
@@ -49,9 +56,10 @@ public class OutStoreFormActivitiServiceImpl extends BaseFormCheckServiceAbstrac
|
|
|
private final YongyouService yongyouService;
|
|
|
private final LocalAuditRecordMapper localAuditRecordMapper;
|
|
|
private final SysUserMapper sysUserMapper;
|
|
|
+ private final SysUserDeptService sysUserDeptService;
|
|
|
+
|
|
|
/**
|
|
|
* 检查业务是否可以发起,比如检查业务状态等
|
|
|
- *
|
|
|
* @param actAuditRequest
|
|
|
*/
|
|
|
@Override
|
|
@@ -67,14 +75,39 @@ public class OutStoreFormActivitiServiceImpl extends BaseFormCheckServiceAbstrac
|
|
|
|
|
|
@Override
|
|
|
protected void doStartUpdate(ActAuditRequest actAuditRequest) {
|
|
|
- OutStoreForm queryForm = outStoreFormMapper.selectByPrimaryKey(actAuditRequest.getId());
|
|
|
+ /*OutStoreForm queryForm = outStoreFormMapper.selectByPrimaryKey(actAuditRequest.getId());
|
|
|
OutStoreForm outStoreForm = new OutStoreForm();
|
|
|
outStoreForm.setId(actAuditRequest.getId());
|
|
|
outStoreForm.setProcessInstanceId(actAuditRequest.getProcessInstanceId());
|
|
|
outStoreForm.setStatus(OutStoreStatusEnum.NOT_EXECUTE.getValue());
|
|
|
outStoreFormMapper.updateByPrimaryKeySelective(outStoreForm);
|
|
|
// 给审核主管发送微信通知
|
|
|
- sendMessageToManger(queryForm);
|
|
|
+ sendMessageToManger(queryForm);*/
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ protected void doStartUpdate(ActAuditRequest actAuditRequest, List<ActivitiUserModel> list, Task task) {
|
|
|
+ OutStoreForm queryForm = outStoreFormMapper.selectByPrimaryKey(actAuditRequest.getId());
|
|
|
+ OutStoreForm outStoreForm = new OutStoreForm();
|
|
|
+ outStoreForm.setId(actAuditRequest.getId());
|
|
|
+ outStoreForm.setProcessInstanceId(actAuditRequest.getProcessInstanceId());
|
|
|
+ outStoreForm.setStatus(OutStoreStatusEnum.NOT_EXECUTE.getValue());
|
|
|
+ // 获取审批人
|
|
|
+ ActivitiUserModel userTaskModel =
|
|
|
+ list.stream().filter(u -> u.getId().equals(task.getTaskDefinitionKey())).collect(Collectors.toList()).get(0);
|
|
|
+ String roleId = userTaskModel.getRoleId();
|
|
|
+ SysUserDTO sysUserDTO = new SysUserDTO();
|
|
|
+ sysUserDTO.setRoleIds(Arrays.asList(roleId));
|
|
|
+ // 找到和发起人部门一致的
|
|
|
+ sysUserDTO.setDeptIds(sysUserDeptService.selectByUserId(SecurityUtils.getUserInfo().getUserId()).stream().map(SysUserDept::getDeptId).collect(Collectors.toList()));
|
|
|
+ List<SysUserVO> sysUserVOList = sysUserMapper.selectDeptRoleUser(sysUserDTO);
|
|
|
+ if(sysUserVOList != null && sysUserVOList.size() > 0){
|
|
|
+ outStoreForm.setUpdateUserId(sysUserVOList.get(0).getUserId());
|
|
|
+ // 给审核主管发送微信通知
|
|
|
+ queryForm.setUpdateUserId(outStoreForm.getUpdateUserId());
|
|
|
+ sendMessageToManger(queryForm);
|
|
|
+ }
|
|
|
+ outStoreFormMapper.updateByPrimaryKeySelective(outStoreForm);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -82,7 +115,7 @@ public class OutStoreFormActivitiServiceImpl extends BaseFormCheckServiceAbstrac
|
|
|
* @param outForm
|
|
|
*/
|
|
|
private void sendMessageToManger(OutStoreForm outForm){
|
|
|
- SysUser sysUser = sysUserMapper.selectByPrimaryKey(outForm.getCreatedUserId());
|
|
|
+ SysUser sysUser = sysUserMapper.selectByPrimaryKey(outForm.getUpdateUserId());
|
|
|
String info = MessageTemplateUtil.getOutStoreFormSuccess(outForm.getOutNo());
|
|
|
Integer detailType = WorkplaceBacklogDetailTypeEnum.OUT_STORE_NOTICE.getValue();
|
|
|
String[] values = new String[]{"出库单待审批!",outForm.getOutNo(),"无","无","无","请尽快审批"};
|