Merge remote-tracking branch 'origin/feature/REQ-3300' into feature/REQ-3300

This commit is contained in:
chenwenjian 2025-02-21 13:43:36 +08:00
commit 5a6129880e
2 changed files with 29 additions and 14 deletions

View File

@ -36,6 +36,6 @@ public class ChangeRecordAppendAttachReq {
private Long operatorOuId;
private Long operatorWorkspaceId;
private Long workspaceId;
}

View File

@ -30,6 +30,7 @@ import cn.axzo.nanopart.visa.server.rpc.WorkflowGateway;
import cn.axzo.nanopart.visa.server.service.ChangeRecordLogService;
import cn.axzo.nanopart.visa.server.service.ChangeRecordRelationService;
import cn.axzo.nanopart.visa.server.service.ChangeRecordService;
import cn.axzo.workflow.common.model.dto.UploadFieldDTO;
import cn.axzo.workflow.common.model.request.form.instance.FormVariablesUpdateDTO;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
@ -197,7 +198,8 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
ChangeRecord record = changeRecordService.getById(req.getVisaId());
AssertUtil.notNull(record, "未找到变洽签记录");
AssertUtil.isTrue(Objects.equals(record.getImGroupId(), req.getImGroupId()), "IM 群信息不匹配");
AssertUtil.isTrue(Objects.equals(record.getStatus(), VisaStatusEnum.DECIDING), "单据未在决策中,已不支持该操作");
AssertUtil.isTrue(!Objects.equals(VisaStatusEnum.APPROVING, record.getStatus())
&& !Objects.equals(VisaStatusEnum.COMPLETED, record.getStatus()), "当前单据状态下不允许操作");
if (Boolean.TRUE.equals(req.getClearAll())) {
deleteByVisaId(req.getVisaId(), Lists.newArrayList(VisaRelationFieldEnum.IM_GROUP_PARTICIPATE));
@ -324,8 +326,8 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
@Transactional(rollbackFor = Exception.class)
public void appendAttachment(ChangeRecordAppendAttachReq req) {
ChangeRecord visa = changeRecordService.getById(req.getVisaId());
AssertUtil.isTrue(Objects.equals(VisaStatusEnum.APPROVING, visa.getStatus())
|| Objects.equals(VisaStatusEnum.COMPLETED, visa.getStatus()), "当前单据状态下不允许操作");
AssertUtil.isTrue(!Objects.equals(VisaStatusEnum.APPROVING, visa.getStatus())
&& !Objects.equals(VisaStatusEnum.COMPLETED, visa.getStatus()), "当前单据状态下不允许操作");
AssertUtil.notNull(visa, "变洽签单据不存在");
List<ChangeRecordRelation> existsAttach = findByCondition(VisaRelationDto.builder()
@ -355,20 +357,33 @@ public class ChangeRecordRelationServiceImpl extends ServiceImpl<ChangeRecordRel
formUpdateDto.setFormVariables(Maps.of(FORM_FIELD_ATTACH, req.getAttach()));
workflowGateway.updateInstanceFormData(formUpdateDto);
}
if (CollectionUtils.isNotEmpty(req.getAttach())) {
List<String> uploadAttachFileNameList = req.getAttach().stream().map(item -> item.getFileName()).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(uploadAttachFileNameList)) {
changeRecordLogService.batchAddLog(req.getVisaId(), VisaLogTypeEnum.UPLOAD_FILE
, VisaLogParam.builder().personId(req.getOperatorPersonId())
.ouId(req.getOperatorOuId())
.workspaceId(req.getOperatorWorkspaceId())
//单独上传附件-追加操作日志
this.addLogWhenAttachAppend(req.getAttach(), req.getVisaId(), req.getOperatorPersonId(), req.getOperatorOuId(), req.getWorkspaceId());
}
/**
* 单独上传附件-追加操作日志
* @param attach 上传附件信息
* @param visaId 变更签证Id
* @param personId 人员Id
* @param ouId 单位id
* @param workspaceId 项目Id
*/
private void addLogWhenAttachAppend(List<UploadFieldDTO> attach, Long visaId, Long personId, Long ouId, Long workspaceId) {
if (CollectionUtils.isNotEmpty(attach)) {
List<String> uploadAttachFileNameList = attach.stream().map(item -> item.getFileName()).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(uploadAttachFileNameList)
&& Objects.nonNull(personId)
&& Objects.nonNull(ouId)
&& Objects.nonNull(workspaceId)) {
changeRecordLogService.batchAddLog(visaId, VisaLogTypeEnum.UPLOAD_FILE
, VisaLogParam.builder().personId(personId)
.ouId(ouId)
.workspaceId(workspaceId)
.uploadAttach(uploadAttachFileNameList).build());
}
}
}
@Override