|
|
@@ -16,6 +16,7 @@ import com.jzg.commons.util.MinioUtils;
|
|
|
import com.jzg.commons.util.StringUtils;
|
|
|
import com.jzg.organization.client.EsmInsCompanyClient;
|
|
|
import com.jzg.organization.mapper.PtlAgreementMapper;
|
|
|
+import com.jzg.organization.mapper.SysUploadFilesMapper;
|
|
|
import com.jzg.organization.mapper.SysUserMapper;
|
|
|
import com.jzg.organization.service.*;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
@@ -71,9 +72,15 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
|
|
|
@Autowired
|
|
|
private PtlAgreementUndwrtRulesAttrLinkService agreementUndwrtRulesAttrLinkService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private SysDeptService sysDeptService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SysUploadFilesMapper sysUploadFilesMapper;
|
|
|
|
|
|
@Override
|
|
|
public Page<AgreementVo> queryPage(AgreementParam param) {
|
|
|
+ param.setSystemCode(baseController.getUserSystemCode());
|
|
|
Page<AgreementVo> page = baseMapper.queryPage(param.getPage(), param);
|
|
|
List<AgreementVo> agreementVos = page.getRecords();
|
|
|
if(CollUtil.isNotEmpty(agreementVos)){
|
|
|
@@ -138,6 +145,12 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
|
|
|
// 获取协议授权
|
|
|
List<PtlAgreementDept> deptList = agreementDeptService.getByAgreementId(id);
|
|
|
AgreementInfoVo agreementInfoVo = new AgreementInfoVo(agreementVo,deptList);
|
|
|
+ // 获取协议文件
|
|
|
+ if (agreementVo.getFileId() != null) {
|
|
|
+ SysUploadFiles sysUploadFiles = sysUploadFilesMapper.selectById(agreementVo.getFileId());
|
|
|
+ agreementInfoVo.getAgreement().setFileName(sysUploadFiles.getFileName());
|
|
|
+ agreementInfoVo.getAgreement().setFileUrl(MinioUtils.getPresignedObjectUrl(sysUploadFiles.getBucketName(), sysUploadFiles.getFileName()));
|
|
|
+ }
|
|
|
return agreementInfoVo;
|
|
|
}
|
|
|
|
|
|
@@ -181,6 +194,7 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
|
|
|
ptlAgreement.setSerialNumber(0);
|
|
|
ptlAgreement.setIsExternal(0);
|
|
|
ptlAgreement.setIsEnable(YesNoEnum.NO.getCode()); // 启用
|
|
|
+ ptlAgreement.setSystemCode(sysCode);
|
|
|
|
|
|
// 判断生效状态
|
|
|
LocalDateTime startDate = param.getStartDate();
|
|
|
@@ -193,7 +207,30 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
|
|
|
ptlAgreement.setValidStatus("1");
|
|
|
}
|
|
|
save(ptlAgreement);
|
|
|
+ // 默认添加协议后 协议授权到当前账号的机构以及子机构下
|
|
|
+ String deptId = baseController.getUserDeptId();
|
|
|
+ SysDeptParam deptParam = new SysDeptParam();
|
|
|
+ deptParam.setSysCode(sysCode);
|
|
|
+ List<SysDeptVo> deptTree = sysDeptService.getDeptTree(deptId,deptParam);
|
|
|
+ List<PtlAgreementDept> agreementDeptList = new ArrayList<>();
|
|
|
+ processDeptTree(deptTree, ptlAgreement.getId(), agreementDeptList);
|
|
|
+ agreementDeptService.saveBatch(agreementDeptList);
|
|
|
}
|
|
|
+ // 递归方法:处理部门及其子部门
|
|
|
+ private void processDeptTree(List<SysDeptVo> deptList, String agreementId, List<PtlAgreementDept> resultList) {
|
|
|
+ for (SysDeptVo dept : deptList) {
|
|
|
+ // 处理当前部门
|
|
|
+ PtlAgreementDept agreementDept = new PtlAgreementDept();
|
|
|
+ agreementDept.setAgreementId(agreementId);
|
|
|
+ agreementDept.setDeptId(dept.getId());
|
|
|
+ resultList.add(agreementDept);
|
|
|
+ // 递归处理子部门
|
|
|
+ if (dept.getChildren() != null && !dept.getChildren().isEmpty()) {
|
|
|
+ processDeptTree(dept.getChildren(), agreementId, resultList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
@@ -289,6 +326,7 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
|
|
|
PtlAgreement newAgreement = new PtlAgreement();
|
|
|
BeanUtils.copyProperties(agreement,newAgreement);
|
|
|
newAgreement.setId(null);
|
|
|
+ newAgreement.setAgreementTitle(agreement.getAgreementTitle() + System.currentTimeMillis());
|
|
|
newAgreement.setAgreementCode(sysCode + companyCode + +System.currentTimeMillis());
|
|
|
newAgreement.setAuditStatus(0);
|
|
|
newAgreement.setIsEnable(0);
|