feat: scc流程添加标准
This commit is contained in:
+33
-3
@@ -30,10 +30,14 @@ import com.jero.modules.activiti.process.standardComplianceCheck.service.IProces
|
||||
import com.jero.modules.activiti.process.standardComplianceCheck.service.IProcessStandardComplianceCheckService;
|
||||
import com.jero.modules.activiti.service.ProcessNodeLinkService;
|
||||
import com.jero.modules.activiti.util.ExcelUtils;
|
||||
import com.jero.modules.laws.documenttool.entity.LawsDocumentSplit;
|
||||
import com.jero.modules.laws.documenttool.mapper.DocumentSplitMapper;
|
||||
import com.jero.modules.laws.documenttool.service.IDocumentSplitService;
|
||||
import com.jero.modules.laws.enterprise.util.BeanCopyUtils;
|
||||
import com.jero.modules.oss.entity.OSSFile;
|
||||
import com.jero.modules.oss.service.IOSSFileService;
|
||||
import com.jero.modules.split.entity.SarFileSplitInfoEO;
|
||||
import com.jero.modules.split.service.ISarFileSplitInfoService;
|
||||
import com.jero.modules.sys.utils.UserUtils;
|
||||
import com.jero.modules.system.entity.SysDepart;
|
||||
import com.jero.modules.system.service.ISysDepartService;
|
||||
@@ -93,6 +97,12 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
@Resource
|
||||
private IOSSFileService ossFileService;
|
||||
|
||||
@Resource
|
||||
private ISarFileSplitInfoService sarFileSplitInfoService;
|
||||
|
||||
@Resource
|
||||
private DocumentSplitMapper documentSplitMapper;
|
||||
|
||||
@Override
|
||||
public void startProcess(ProcessInfoVO<ProcessSccVO> processInfoVO) {
|
||||
// 流程Key
|
||||
@@ -394,17 +404,37 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl<Proce
|
||||
@Override
|
||||
public List<ProcessStandardComplianceCheckDetail> generate(ProcessStandardComplianceCheck scc) throws Exception {
|
||||
String splitFileSource = scc.getSplitFileSource();
|
||||
List<ProcessStandardComplianceCheckDetail> detailInfoList;
|
||||
// 找到拆分数据
|
||||
if (StrUtil.isBlank(splitFileSource)) {
|
||||
MultipartFile splitFile = this.getFileById(scc.getSplitFile());
|
||||
detailInfoList = this.getSplitData(scc, splitFile);
|
||||
} else {
|
||||
detailInfoList = this.getSplitDataByStandard(scc.getStandardId(), splitFileSource);
|
||||
}
|
||||
// 获取两个文件
|
||||
MultipartFile modelFile = this.getFileById(scc.getModelFile());
|
||||
MultipartFile splitFile = this.getFileById(scc.getSplitFile());
|
||||
// 文件内容转换
|
||||
List<ModelExcelVO> modelExcelVOList = this.getModelExcelData(modelFile);
|
||||
// 找到拆分数据
|
||||
List<ProcessStandardComplianceCheckDetail> detailInfoList = this.getSplitData(scc, splitFile);
|
||||
// 根据主表数据和车型文件生成子表数据并保存
|
||||
return this.saveAllDetailData(modelExcelVOList, detailInfoList);
|
||||
}
|
||||
|
||||
private List<ProcessStandardComplianceCheckDetail> getSplitDataByStandard(String standardId, String fileType) {
|
||||
List<ProcessStandardComplianceCheckDetail> list = new ArrayList<>();
|
||||
SarFileSplitInfoEO sarFileSplitInfoEO =
|
||||
sarFileSplitInfoService.getOne(new LambdaQueryWrapper<SarFileSplitInfoEO>()
|
||||
.eq(SarFileSplitInfoEO::getStandardId, standardId)
|
||||
.eq(SarFileSplitInfoEO::getFileType, fileType)
|
||||
.isNull(SarFileSplitInfoEO::getPublishBeforeId), false);
|
||||
if (!Objects.isNull(sarFileSplitInfoEO)){
|
||||
LawsDocumentSplit lawsDocumentSplit = new LawsDocumentSplit();
|
||||
lawsDocumentSplit.setInfoId(sarFileSplitInfoEO.getId());
|
||||
list = documentSplitMapper.selectClauseListScc(lawsDocumentSplit);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProcessInfoVO<ProcessSccVO> getHandleData(String taskId) {
|
||||
if (!actFlowCommonService.taskExists(taskId)) {
|
||||
|
||||
+3
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheckDetail;
|
||||
import com.jero.modules.activiti.process.standardinterpret.entity.ProcessStandardInterpretClause;
|
||||
import com.jero.modules.laws.documenttool.entity.*;
|
||||
import com.jero.modules.split.entity.SarFileSplitInfoEO;
|
||||
@@ -215,4 +216,6 @@ public interface DocumentSplitMapper extends BaseMapper<LawsDocumentSplit> {
|
||||
List<String> queryLawsDocumentSplitGroupByMenuId(@Param("infoId") String infoId);
|
||||
|
||||
List<ProcessStandardInterpretClause> selectClauseList(@Param("lawsDocumentSplit") LawsDocumentSplit lawsDocumentSplit);
|
||||
|
||||
List<ProcessStandardComplianceCheckDetail> selectClauseListScc(@Param("lawsDocumentSplit") LawsDocumentSplit lawsDocumentSplit);
|
||||
}
|
||||
|
||||
+15
@@ -273,6 +273,21 @@
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="selectClauseListScc"
|
||||
resultType="com.jero.modules.activiti.process.standardComplianceCheck.entity.ProcessStandardComplianceCheckDetail">
|
||||
SELECT s.id clauseId,
|
||||
item_num as termNumber,
|
||||
item_title as termTitle,
|
||||
item_content as termContent,
|
||||
responsible_department as authDept
|
||||
FROM laws_document_split s
|
||||
LEFT JOIN SAR_FILE_SPLIT_MENU m ON s.MENU_ID = m.id
|
||||
WHERE del_flag = 0
|
||||
<if test="lawsDocumentSplit.infoId != null and lawsDocumentSplit.infoId != ''">
|
||||
AND s.info_id = #{lawsDocumentSplit.infoId}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<update id="editDocumentSplitDetail">
|
||||
UPDATE laws_document_split
|
||||
SET ${updateSet}
|
||||
|
||||
Reference in New Issue
Block a user