合并分支 'dev_20230216' 到 'master'

Dev 20230216

查看合并请求 laws-foton-slrs/foton-slrs-system-rest!42
This commit is contained in:
高嵩
2023-04-09 18:11:29 +08:00
16 changed files with 237 additions and 4 deletions
@@ -28,6 +28,7 @@ import com.adc.da.workFlow.dao.ExportExcelMapper;
import com.adc.da.workFlow.entity.*;
import com.adc.da.workFlow.service.WorkFlowService;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import oracle.ucp.proxy.annotation.Post;
@@ -39,6 +40,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.spring.web.json.Json;
import sun.misc.BASE64Encoder;
import javax.servlet.http.HttpServletRequest;
@@ -48,6 +50,7 @@ import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -1002,4 +1005,94 @@ public class WorkFlowController {
return workFlowFeignClient.selectWenDan(taskId);
}
@ApiOperation(value = "批量发送待办任务(正常走流程)")
@GetMapping("/batchToDoTasks")
public ResponseMessage<Object> batchToDoTasks(String json){
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
//获取所有数据
JSONObject jsonObject = JSONObject.parseObject(json);
List<EsRevisePlan> esRevisePlans = iEsRevisePlanService.batchToDoTasks(json);
String userId = "";
String userName = "";
Object userIdObject = jsonObject.get("prcCreateUser");
if(userIdObject!=null){
userId = userIdObject.toString();
userName = userService.userIdByName(userId);
}
//循环数据
for (EsRevisePlan data : esRevisePlans){
//数据拼接
ProcessRollBackEO processRollBackEO = new ProcessRollBackEO();
processRollBackEO.setUserId(userId);
processRollBackEO.setType("25");
//拼接json
HashMap<String, Object> qbfsForm = new HashMap<>();
HashMap<String, Object> qbfsFormInfo = new HashMap<>();
qbfsForm.put("bussSort",data.getBussSort());
qbfsForm.put("esMatingRelations",data.getEsMatingRelations());
qbfsForm.put("technologic",data.getTechnologic());
qbfsForm.put("useLevel",data.getUseLevel());
qbfsForm.put("isRelate",data.getIsRelate());
qbfsForm.put("esStandRelations",data.getEsStandRelations());
//数组格式
String[] split = data.getArea().split(",");
qbfsForm.put("area",split);
qbfsForm.put("tsJson",data.getTsJson());
qbfsForm.put("tsJsonName",data.getTsJsonName());
qbfsForm.put("rqbJson",data.getRqbJson());
qbfsForm.put("rqbName",data.getRqbName());
qbfsForm.put("unit",data.getUnit());
qbfsForm.put("unitName",data.getUnitName());
qbfsForm.put("esName",data.getEsName());
qbfsForm.put("planStatus",data.getPlanStatus());
qbfsForm.put("reviseStatus",data.getReviseStatus());
qbfsForm.put("resPerson",data.getResPerson());
qbfsForm.put("resPersonName",data.getResPersonName());
String wgLeaderStr = data.getWgLeader();
if(wgLeaderStr!=null){
if(wgLeaderStr.endsWith(",")){
wgLeaderStr = wgLeaderStr.substring(0,wgLeaderStr.length()-1);
}
}
qbfsForm.put("wgLeader",wgLeaderStr);
qbfsForm.put("wgLeaderName",data.getWgLeaderName());
qbfsForm.put("draftTime",simpleDateFormat.format(data.getDraftTime()));
qbfsForm.put("releaseTime",simpleDateFormat.format(data.getReleaseTime()));
qbfsForm.put("drafter",data.getDrafter());
qbfsForm.put("drafterName",data.getDrafterName());
qbfsForm.put("LXD",data.getLxd());
qbfsForm.put("LXDName","");
//争议
qbfsForm.put("lxd","");
//争议
qbfsForm.put("lxdName","立项单");
qbfsForm.put("addFlag","1");
if(jsonObject.get("prcCreateUser")!=null){
qbfsForm.put("prcCreateUser",jsonObject.get("prcCreateUser").toString());
qbfsForm.put("prcCreateUserName",userName);
}
qbfsForm.put("nowEsId","操作成功");
qbfsForm.put("type","5");
String jsonMap = JSONObject.toJSONString(qbfsForm);
qbfsFormInfo.put("qbfsForm",qbfsForm);
processRollBackEO.setJson(JSONObject.toJSONString(qbfsFormInfo));
ResponseMessage responseMessage = startProcessRollBack(processRollBackEO);
if(responseMessage!=null){
String taskId = responseMessage.getData().toString();
BusMes busMes = new BusMes();
busMes.setPrcType("25");
busMes.setTaskIds(taskId);
busMes.setCreateUserName(userName);
if(jsonObject.get("prcCreateUser")!=null){
busMes.setUserId(jsonObject.get("prcCreateUser").toString());
}
busMes.setJson(jsonMap);
Wrapper<String> stringWrapper = completeTaskByUserId(busMes);
}
}
return Result.success();
}
}
@@ -407,6 +407,12 @@ public class ActSarItemsBussEOService {
}
}
//企标实施时间
// if (StringUtils.isBlank(sarBussionessStand.getPutTime())){
// logger.info("企标实施日期不能为空");
// throw new AdcDaBaseException("企标实施日期不能为空");
// }
List<SarBussionessStand> lawsList = iSarBussionessStandService.selectStandardsByStandNumber(standCode);
// if (StringUtils.isBlank(sarStandardsInfoEO.getMenuId()) && "INLAND".equals(sarStandardsInfoEO.getStandType())) {
// sarStandardsInfoEO.setMenuId("64df1d5522bb49c09af2");
@@ -2,6 +2,7 @@ package com.adc.da.slrs.esRevisePlan.service;
import com.adc.da.http.ResponseMessage;
import com.adc.da.slrs.esRevisePlan.entity.EsRevisePlan;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.Date;
@@ -34,4 +35,6 @@ public interface IEsRevisePlanService extends IService<EsRevisePlan> {
List<EsRevisePlan> getAllPlansByWkInfo();
List<EsRevisePlan> batchToDoTasks(String json);
}
@@ -53,11 +53,9 @@ public class EsRevisePlanServiceImpl extends ServiceImpl<EsRevisePlanDao, EsRevi
private ISarBussionessStandService iSarBussionessStandService;
@Autowired
private EsRevisePlanLogDao esRevisePlanLogDao;
@Autowired
private IEsRevisePlanLogService esRevisePlanLogService;
@Override
public List<EsRevisePlan> getAllPlans(EsRevisePlan esRevisePlan) {
Integer count = esRevisePlanDao.getTotal();
@@ -180,7 +178,7 @@ public class EsRevisePlanServiceImpl extends ServiceImpl<EsRevisePlanDao, EsRevi
+"创建了《"+ esName +"";
}
esRevisePlanLogDao.insert(new EsRevisePlanLog(null,id,msg,date));
return Result.success("200", esRevisePlan.getId(), "操作成功");
return Result.success("200","操作成功",esRevisePlan.getId());
//}
}
@@ -248,4 +246,20 @@ public class EsRevisePlanServiceImpl extends ServiceImpl<EsRevisePlanDao, EsRevi
queryWrapper.lambda().in(EsRevisePlan::getPlanStatus, planStatus);
return esRevisePlanDao.selectList(queryWrapper);
}
@Override
public List<EsRevisePlan> batchToDoTasks(String json) {
JSONObject jsonObject = JSONObject.parseObject(json);
Object ids = jsonObject.get("ids");
List<EsRevisePlan> esRevisePlans = new ArrayList();
if(ids!=null){
String[] split = ids.toString().split(",");
List<String> idsList = Arrays.asList(split);
for (String id : idsList){
EsRevisePlan esRevisePlan = this.baseMapper.selectById(id);
esRevisePlans.add(esRevisePlan);
}
}
return esRevisePlans;
}
}
@@ -2826,7 +2826,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
SarBussionessStand sarBussionessStand = new SarBussionessStand();
//拼接企标编号
String standCode = standSort + " " + standNumber + "-" + standYear;
String standCode = standSort + standNumber + "-" + standYear;
sarBussionessStand.setStandCode(standCode);
// 根据标准号判断数据是否已存在
//2021年4月9日 此处检查当前是否存在standId
@@ -8,6 +8,7 @@ import com.adc.da.http.Result;
import com.adc.da.slrs.sarLawsAttrDetailedList.entity.LawsDto;
import com.adc.da.slrs.sarStandItems.entity.*;
import com.adc.da.slrs.sarStandItems.service.impl.SarStandItemsServiceImpl;
import com.adc.da.slrs.standardSplit.entity.SarFileSplitItemsEO;
import com.adc.da.util.UUIDUtils;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.ApiOperation;
@@ -12,9 +12,16 @@ import com.adc.da.slrs.sarStandardsInfo.entity.ActSarItemsEO;
import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo;
import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfoEOPage;
import com.adc.da.slrs.sarStandardsInfo.service.ISarStandardsInfoService;
import com.adc.da.slrs.standardSplit.dao.SarFileSplitInfoEODao;
import com.adc.da.slrs.standardSplit.dao.SarFileSplitItemsEODao;
import com.adc.da.slrs.standardSplit.dao.SarFileSplitItemsParamsEODao;
import com.adc.da.slrs.standardSplit.entity.*;
import com.adc.da.slrs.standardSplit.service.SarFileSplitMenuEOService;
import com.adc.da.slrs.sysInfo.service.SysInfoEOService;
import com.adc.da.sys.entity.DicTypeEO;
import com.adc.da.sys.service.IDicTypeEOService;
import com.adc.da.utils.treetool.Tree;
import com.adc.da.utils.treetool.TreeNode;
import com.adc.da.utils.util.InitStandAttrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -52,6 +59,18 @@ public class SarStandItemsServiceImpl extends ServiceImpl<SarStandItemsDao, SarS
@Autowired
private IDicTypeEOService iDicTypeEOService;
@Autowired
private SarFileSplitInfoEODao sarFileSplitInfoEODao;
@Autowired
private SarFileSplitMenuEOService sarFileSplitMenuEOService;
@Autowired
private SarFileSplitItemsEODao sarFileSplitItemsEODao;
@Autowired
private SarFileSplitItemsParamsEODao sarFileSplitItemsParamsEODao;
public List<ActSarItemsEO> queryItemsByList(SarStandItemsEOPage page, String resType){
List<SarStandItems> itemsEOList = dao.queryItemsByList(page);
List<ActSarItemsEO> actitemsEOList = new ArrayList<>();
@@ -351,4 +370,76 @@ public class SarStandItemsServiceImpl extends ServiceImpl<SarStandItemsDao, SarS
}
return sarStandItemsDtos;
}
/**
* 分解单查询
* @param standId
* @return
*/
public Map<String,Object> selectSarItemAndInterpretation(String standId)throws Exception {
QueryWrapper<SarFileSplitInfoEO> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("STAND_ID",standId);
List<SarFileSplitInfoEO> sarFileSplitInfoEO = sarFileSplitInfoEODao.selectList(queryWrapper);
for (SarFileSplitInfoEO data : sarFileSplitInfoEO){
String idInfo = data.getId();
SarFileSplitItemsEOPage page = new SarFileSplitItemsEOPage();
String id = sarFileSplitMenuEOService.selectByInfoId(idInfo);
page.setId(id);
//ValidFlag为0的意思是有效,设置这个文件分解清单的有效性为有效
page.setValidFlag("0");
//把SAR_FILE_SPLIT_MENU表里的数据按照display_seq的从小到大的正序进行排列
page.setOrderBy("SAR_FILE_SPLIT_MENU.display_seq asc");
//如果SAR_FILE_SPLIT_ITEMS表里的拆分目录ID即MenuId不为空
if (com.adc.da.util.utils.StringUtils.isNotEmpty(page.getMenuId())) {
//把根据条件查询SAR_FILE_SPLIT_MENU表查出来的数据放到sarFileSplitMenuEOList里
List<SarFileSplitMenuEO> sarFileSplitMenuEOList = sarFileSplitMenuEOService.queryByList(new SarFileSplitMenuEOPage());
//把这个sarFileSplitMenuEOList转换成树的形式
Tree tree = new Tree<>(sarFileSplitMenuEOList);
//treeNode就是树的子节点中的SAR_FILE_SPLIT_ITEMS表中的menuId
TreeNode treeNode = tree.getTreeNode(page.getMenuId());
List<String> menuIds = new ArrayList<>();
//然后把刚刚的treeNode的nodeId放到menuIds数组里
menuIds.add(treeNode.getNodeId());
for (TreeNode node : treeNode.getAllChildren()) {
//把所有的treeNode的nodeId放到menuIds数组里
menuIds.add(node.getNodeId());
}
//把它放到MenuIdList里
page.setMenuIdList(menuIds);
}
//数出SAR_FILE_SPLIT_ITEMS这个表里MENU_ID不为空或id不为空的记录一共有几条(基本上就是数出这个表一共有几条数据)
int count = sarFileSplitItemsEODao.queryByCount(page);
//把page里的值当做条件一顿左联查询了SAR_FILE_SPLIT_ITEMS这个表
List<SarFileSplitItemsEO> rows = sarFileSplitItemsEODao.queryByPage(page);
//如果查询出来的结果不为空
if (rows != null && !rows.isEmpty()) {
//遍历rows
for (SarFileSplitItemsEO sarFileSplitItemsEO : rows) {
//查询svpps
String svppsShow = sysInfoEOService.getSvppsNamesByIds(sarFileSplitItemsEO.getSvpps());
sarFileSplitItemsEO.setSvppsShow(svppsShow);
SarFileSplitItemsParamsEOPage paramPage = new SarFileSplitItemsParamsEOPage();
paramPage.setItemId(sarFileSplitItemsEO.getId());
List<SarFileSplitItemsParamsEO> paramList = sarFileSplitItemsParamsEODao.queryByList(paramPage);
sarFileSplitItemsEO.setParamsList(paramList);
String foName = sysInfoEOService.getRoleNamesByIds(sarFileSplitItemsEO.getFo());
sarFileSplitItemsEO.setFoShow(foName);
//TODO 2021年6月17日 补充责任部门和项目评估角色回显时如果时多个时回显为空的情况
String dutyEngineerName = sysInfoEOService.getRoleNamesByIds(sarFileSplitItemsEO.getDutyEngineer());
sarFileSplitItemsEO.setDutyEngineerShow(dutyEngineerName);
//责任部门多个时
String orgNames = sysInfoEOService.getOrgNamesByIds(sarFileSplitItemsEO.getResponsibleUnit());
sarFileSplitItemsEO.setResponsibleUnitShow(orgNames);
}
}
Map<String,Object> map = new HashMap<>();
map.put("list",rows);
map.put("count",count);
return map;
}
return null;
}
}
@@ -85,6 +85,7 @@ public class SarFileSplitItemsEOController extends BaseController<SarFileSplitIt
// @RequiresPermissions("lawss:sarFileSplitItems:page")
public ResponseMessage<PageInfo<SarFileSplitItemsEO>> page(SarFileSplitItemsEOPage page) throws Exception {
//6-18 端哥已做修改
sarFileSplitItemsEOService.selectByName(page.getItemsName());
Map<String,Object> map = sarFileSplitItemsEOService.getByPage(page);
page.getPager().setRowCount((Integer) map.get("count"));
return Result.success(getPageInfo(page.getPager(), (List<SarFileSplitItemsEO>) map.get("list")));
@@ -39,4 +39,5 @@ public interface SarFileSplitInfoEODao extends BaseMapper<SarFileSplitInfoEO> {
List<SarFileSplitItemsEO> querySame (SarFileSplitInfoEO sarFileSplitInfoEO);
List<SarFileSplitInfoEO> selectByStandId(String standId);
}
@@ -8,6 +8,8 @@ import com.adc.da.slrs.standardSplit.entity.SarStandItemsEO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
@@ -59,4 +61,8 @@ public interface SarFileSplitItemsEODao extends BaseMapper<SarFileSplitItemsEO>
int deleteByPrimaryKey(String id);
@Select("select ID from sar_file_split_info where ID=#{infoId}")
String selectByInfoId(String infoId);
void selectByName(String itemsName);
}
@@ -48,4 +48,6 @@ public interface SarFileSplitItemsEOService {
void combineItems(String ids);
List<SarFileSplitItemsEO> queryByList2(SarFileSplitItemsEOPage page);
void selectByName(String itemsName);
}
@@ -32,4 +32,5 @@ public interface SarFileSplitMenuEOService {
String addMenuForImport(SarFileSplitMenuEO sarFileSplitMenuEO);
List<String> getChildData(String id);
}
@@ -867,6 +867,11 @@ public class SarFileSplitItemsEOServiceImpl implements SarFileSplitItemsEOServic
return sarFileSplitItemsEODao.queryByList2(page);
}
@Override
public void selectByName(String itemsName) {
sarFileSplitItemsEODao.selectByName(itemsName);
}
public void changeInfos (StringBuilder resultContent,String reaultItemId,List<String> delMenuIds,List<String> delIds,List<SarFileSplitItemsValEO> resultValList) {
//1.更新最终合并的条款内容
if (resultContent != null) {
@@ -459,6 +459,8 @@ public class SarFileSplitMenuEOServiceImpl implements SarFileSplitMenuEOService
return dealData(id,res);
}
private List<String> dealData(String id ,List<String> res){
List<String> strings = SarFileSplitMenuEODao.getChildData(id);
res.addAll(strings);
@@ -340,4 +340,8 @@
where SAR_FILE_SPLIT_INFO.ID = #{id}
</select>
<select id="selectByStandId" resultType="com.adc.da.slrs.standardSplit.entity.SarFileSplitInfoEO">
select * from sar_file_split_info where stand_id = #{standId}
</select>
</mapper>
@@ -630,5 +630,8 @@
${pager.orderCondition}
</if>
</select>
<select id="selectByName">
select ITEMS_NAME from sar_file_split_items where ITEMS_NAME like '%' #{itemsName} '%';
</select>
</mapper>