|
@@ -7,9 +7,8 @@ import com.jeeplus.common.TokenProvider;
|
|
import com.jeeplus.finance.projectRecords.domain.CwProjectRecords;
|
|
import com.jeeplus.finance.projectRecords.domain.CwProjectRecords;
|
|
import com.jeeplus.finance.projectRecords.mapper.CwProjectRecordsMapper;
|
|
import com.jeeplus.finance.projectRecords.mapper.CwProjectRecordsMapper;
|
|
import com.jeeplus.finance.projectReport.domain.*;
|
|
import com.jeeplus.finance.projectReport.domain.*;
|
|
-import com.jeeplus.finance.projectReport.mapper.CwProjectInfoMapper;
|
|
|
|
-import com.jeeplus.finance.projectReport.mapper.CwProjectReportReviewMapper;
|
|
|
|
-import com.jeeplus.finance.projectReport.mapper.CwProofreadDetailMapper;
|
|
|
|
|
|
+import com.jeeplus.finance.projectReport.mapper.*;
|
|
|
|
+import com.jeeplus.finance.projectReport.service.dto.CwProjectReportDTO;
|
|
import com.jeeplus.finance.projectReportArchive.mapper.CwProjectReportArchiveMapper;
|
|
import com.jeeplus.finance.projectReportArchive.mapper.CwProjectReportArchiveMapper;
|
|
import com.jeeplus.finance.reimbursementApproval.approvalInfo.service.dto.ReportNoDto;
|
|
import com.jeeplus.finance.reimbursementApproval.approvalInfo.service.dto.ReportNoDto;
|
|
import com.jeeplus.flowable.feign.IFlowableApi;
|
|
import com.jeeplus.flowable.feign.IFlowableApi;
|
|
@@ -20,6 +19,7 @@ import com.jeeplus.sys.service.dto.UserDTO;
|
|
//import com.jeeplus.sys.utils.UserUtils;
|
|
//import com.jeeplus.sys.utils.UserUtils;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
+import org.checkerframework.checker.units.qual.C;
|
|
import org.flowable.bpmn.model.FlowNode;
|
|
import org.flowable.bpmn.model.FlowNode;
|
|
import org.apache.commons.beanutils.PropertyUtils;
|
|
import org.apache.commons.beanutils.PropertyUtils;
|
|
import org.flowable.editor.language.json.converter.util.CollectionUtils;
|
|
import org.flowable.editor.language.json.converter.util.CollectionUtils;
|
|
@@ -31,6 +31,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import java.lang.reflect.InvocationTargetException;
|
|
import java.lang.reflect.InvocationTargetException;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
|
|
+import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
import java.util.UUID;
|
|
import java.util.UUID;
|
|
|
|
|
|
@@ -50,6 +51,11 @@ public class CwProjectReportReviewService extends ServiceImpl<CwProjectReportRev
|
|
private CwProjectReportReviewMapper mapper;
|
|
private CwProjectReportReviewMapper mapper;
|
|
|
|
|
|
@Resource
|
|
@Resource
|
|
|
|
+ private CwProjectReviewNewMapper reviewNewMapper;
|
|
|
|
+ @Resource
|
|
|
|
+ private CwProjectReviewNewTeamMapper newTeamMapper;
|
|
|
|
+
|
|
|
|
+ @Resource
|
|
private CwProofreadDetailMapper detailMapper;
|
|
private CwProofreadDetailMapper detailMapper;
|
|
|
|
|
|
// @Resource
|
|
// @Resource
|
|
@@ -76,6 +82,14 @@ public class CwProjectReportReviewService extends ServiceImpl<CwProjectReportRev
|
|
|
|
|
|
return data;
|
|
return data;
|
|
}
|
|
}
|
|
|
|
+ public CwProjectReportData queryByReportIdNew(String id) throws IllegalAccessException, NoSuchMethodException, InvocationTargetException {
|
|
|
|
+ CwProjectReviewNew reviewNew = reviewNewMapper.selectOne(new QueryWrapper<CwProjectReviewNew>().eq("report_id", id));
|
|
|
|
+ CwProjectReportData data = new CwProjectReportData();
|
|
|
|
+ BeanUtils.copyProperties(reviewNew, data);
|
|
|
|
+ //查询复核相关信息
|
|
|
|
+
|
|
|
|
+ return data;
|
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
/**
|
|
* 修改状态
|
|
* 修改状态
|
|
@@ -136,6 +150,15 @@ public class CwProjectReportReviewService extends ServiceImpl<CwProjectReportRev
|
|
|
|
|
|
return "操作成功";
|
|
return "操作成功";
|
|
}
|
|
}
|
|
|
|
+ /**
|
|
|
|
+ * 修改状态
|
|
|
|
+ * @param data
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ public String updateReviewStatusByReportIdNew(CwProjectReportData data) {
|
|
|
|
+ reviewNewMapper.updateStatusById(data.getId(),data.getReviewStatus());
|
|
|
|
+ return "操作成功";
|
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
/**
|
|
* 保存项目以及其他相关信息
|
|
* 保存项目以及其他相关信息
|
|
@@ -162,6 +185,171 @@ public class CwProjectReportReviewService extends ServiceImpl<CwProjectReportRev
|
|
return add(reportData);
|
|
return add(reportData);
|
|
|
|
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 保存项目以及其他相关信息
|
|
|
|
+ * @param reportData
|
|
|
|
+ * @return
|
|
|
|
+ * @throws Exception
|
|
|
|
+ */
|
|
|
|
+ public String saveFormReviewNew(CwProjectReportData reportData) throws Exception{
|
|
|
|
+ if (StringUtils.isNotEmpty(reportData.getId())){
|
|
|
|
+
|
|
|
|
+ CwProjectReviewNew detail = reviewNewMapper.selectById(reportData.getReviewNewId());
|
|
|
|
+ if (detail != null){
|
|
|
|
+ reportData.setCreateBy(reportData.getCreateBy());
|
|
|
|
+ return updateNew(reportData,detail);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return addNew(reportData);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 合同登记修改
|
|
|
|
+ */
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
|
+ public String updateNew(CwProjectReportData reportData,CwProjectReviewNew detail) throws Exception{
|
|
|
|
+ //获取当前登录人信息
|
|
|
|
+ UserDTO userDTO = SpringUtil.getBean ( IUserApi.class ).getByToken(TokenProvider.getCurrentToken ( ));
|
|
|
|
+ CwProjectReviewNew review = new CwProjectReviewNew();
|
|
|
|
+ BeanUtils.copyProperties(reportData, review);
|
|
|
|
+ review.setUpdateById(userDTO.getId());
|
|
|
|
+ review.setUpdateTime(new Date());
|
|
|
|
+ review.setId(reportData.getReviewNewId());
|
|
|
|
+
|
|
|
|
+ reviewNewMapper.updateById(review);
|
|
|
|
+
|
|
|
|
+ //项目组成员数据处理
|
|
|
|
+ newTeamMapper.delete(new QueryWrapper<CwProjectReviewNewTeam>().eq("report_id",reportData.getId()));
|
|
|
|
+ //项目组成员保存
|
|
|
|
+ List<CwProjectReviewNewTeam> newTeams = reportData.getDetailInfos();
|
|
|
|
+ for (CwProjectReviewNewTeam newTeam : newTeams) {
|
|
|
|
+ String teamId = UUID.randomUUID().toString().replace("-", "");
|
|
|
|
+ newTeam.setId(teamId);
|
|
|
|
+ newTeam.setCreateById(userDTO.getId());
|
|
|
|
+ newTeam.setCreateTime(new Date());
|
|
|
|
+ newTeam.setUpdateById(userDTO.getId());
|
|
|
|
+ newTeam.setUpdateTime(new Date());
|
|
|
|
+ newTeam.setReportId(reportData.getId());
|
|
|
|
+ newTeamMapper.insert(newTeam);
|
|
|
|
+ }
|
|
|
|
+ return review.getId();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public String addNew(CwProjectReportData dto) throws Exception{
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ //生成主键id值
|
|
|
|
+ String id = UUID.randomUUID().toString().replace("-", "");
|
|
|
|
+ //获取当前登录人信息
|
|
|
|
+ UserDTO userDTO = SpringUtil.getBean ( IUserApi.class ).getByToken(TokenProvider.getCurrentToken ( ));
|
|
|
|
+ //保存基本信息
|
|
|
|
+ CwProjectReviewNew info = new CwProjectReviewNew();
|
|
|
|
+ BeanUtils.copyProperties(dto, info);
|
|
|
|
+
|
|
|
|
+ info.setId(id);
|
|
|
|
+ info.setCreateById(userDTO.getId());
|
|
|
|
+ info.setCreateTime(new Date());
|
|
|
|
+ info.setUpdateById(userDTO.getId());
|
|
|
|
+ info.setUpdateTime(new Date());
|
|
|
|
+ info.setReportId(dto.getId());
|
|
|
|
+
|
|
|
|
+ reviewNewMapper.insert(info);
|
|
|
|
+
|
|
|
|
+ //项目组成员保存
|
|
|
|
+ List<CwProjectReviewNewTeam> newTeams = dto.getDetailInfos();
|
|
|
|
+ for (CwProjectReviewNewTeam newTeam : newTeams) {
|
|
|
|
+ String teamId = UUID.randomUUID().toString().replace("-", "");
|
|
|
|
+ newTeam.setId(teamId);
|
|
|
|
+ newTeam.setCreateById(userDTO.getId());
|
|
|
|
+ newTeam.setCreateTime(new Date());
|
|
|
|
+ newTeam.setUpdateById(userDTO.getId());
|
|
|
|
+ newTeam.setUpdateTime(new Date());
|
|
|
|
+ newTeam.setReportId(dto.getId());
|
|
|
|
+ newTeamMapper.insert(newTeam);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return info.getId();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 保存项目以及其他相关信息
|
|
|
|
+ * @param reportData
|
|
|
|
+ * @return
|
|
|
|
+ * @throws Exception
|
|
|
|
+ */
|
|
|
|
+ public String saveFormNew(CwProjectReportData reportData) throws Exception{
|
|
|
|
+ //生成一条报告信息,并且生成一个报告号
|
|
|
|
+ //生成报告信息
|
|
|
|
+ String currentToken = TokenProvider.getCurrentToken();
|
|
|
|
+ UserDTO userDTO = SpringUtil.getBean(IUserApi.class).getByToken(currentToken);
|
|
|
|
+ String reportId = UUID.randomUUID().toString().replace("-", "");
|
|
|
|
+ CwProjectReport cwProjectReport = new CwProjectReport();
|
|
|
|
+ cwProjectReport.setProjectId(reportData.getProjectId());
|
|
|
|
+ cwProjectReport.setId(reportId);
|
|
|
|
+ cwProjectReport.setStatus("5");
|
|
|
|
+ cwProjectReport.setCreateById(userDTO.getId());
|
|
|
|
+ cwProjectReport.setCreateTime(new Date());
|
|
|
|
+ cwProjectReport.setUpdateById(userDTO.getId());
|
|
|
|
+ cwProjectReport.setUpdateTime(new Date());
|
|
|
|
+ //生成单据编号
|
|
|
|
+ String documentNo = SpringUtil.getBean ( IWorkAttachmentApi.class ).genSerialNum(userDTO.getCompanyDTO().getId(), CwProjectReportDTO.BIZ_CODE,currentToken);
|
|
|
|
+ cwProjectReport.setDocumentNo(documentNo);
|
|
|
|
+ //这个是报告编号
|
|
|
|
+// String documentNo = SpringUtil.getBean ( IWorkAttachmentApi.class ).genSerialReviewNum(userDTO.getCompanyDTO().getId(), CwProjectReview.BIZ_CODE2,TokenProvider.getCurrentToken());
|
|
|
|
+ CwProjectInfoData infoData = new CwProjectInfoData();
|
|
|
|
+ String infoDataId = UUID.randomUUID().toString().replace("-", "");
|
|
|
|
+ infoData.setId(infoDataId);
|
|
|
|
+ infoData.setCreateById(userDTO.getId());
|
|
|
|
+ infoData.setCreateTime(new Date());
|
|
|
|
+ infoData.setUpdateById(userDTO.getId());
|
|
|
|
+ infoData.setUpdateTime(new Date());
|
|
|
|
+ infoData.setReportId(reportId);
|
|
|
|
+ infoData.setReportType("2");
|
|
|
|
+
|
|
|
|
+ String reportNo = SpringUtil.getBean ( IWorkAttachmentApi.class ).genSerialNumNoSort(userDTO.getCompanyDTO().getId(), CwProjectInfoData.CONSULT_BIZ_CODE,currentToken);
|
|
|
|
+ infoData.setReportNo(reportNo);
|
|
|
|
+
|
|
|
|
+ //报告流水号生成 根据项目编号去new_line表查询
|
|
|
|
+ String reportNumber = infoMapper.selectReportNumberByProjectNo(reportData.getProjectNumber());
|
|
|
|
+ if (null != reportNumber) {
|
|
|
|
+ int stress = 0;
|
|
|
|
+ stress = reportNumber.indexOf("-");//分隔符位置
|
|
|
|
+ String substring = reportNumber.substring(stress + 1, reportNumber.length());
|
|
|
|
+ int integer = Integer.parseInt(substring);
|
|
|
|
+
|
|
|
|
+ String newReportNumber = "";
|
|
|
|
+ if (integer < 10) {
|
|
|
|
+ if (integer == 9) {
|
|
|
|
+ newReportNumber = reportData.getProjectNumber() + "-010";
|
|
|
|
+ } else {
|
|
|
|
+ newReportNumber = reportData.getProjectNumber() + "-00" + (integer + 1);
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ if (integer < 100) {
|
|
|
|
+ if (integer == 99) {
|
|
|
|
+ newReportNumber = reportData.getProjectNumber() + "-100";
|
|
|
|
+ } else {
|
|
|
|
+ newReportNumber = reportData.getProjectNumber() + "-0" + (integer + 1);
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ newReportNumber = reportData.getProjectNumber() + "-" + (integer + 1);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ infoData.setReportNumber(newReportNumber);
|
|
|
|
+ } else {
|
|
|
|
+ infoData.setReportNumber(reportData.getProjectNumber() + "-001");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ infoMapper.insert(infoData);
|
|
|
|
+
|
|
|
|
+ cwProjectReportService.saveOrUpdate(cwProjectReport);
|
|
|
|
+
|
|
|
|
+ return reportId;
|
|
|
|
+
|
|
|
|
+ }
|
|
/**
|
|
/**
|
|
* 合同登记修改
|
|
* 合同登记修改
|
|
*/
|
|
*/
|