diff --git a/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java b/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java index 131ae3bd..0e20eb4e 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java +++ b/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java @@ -3,6 +3,7 @@ package com.adc.da.FeignClient; import com.adc.da.common.*; import com.adc.da.common.Category; import com.adc.da.common.Page; +import com.adc.da.http.ResponseMessage; import com.adc.da.workFlow.entity.BusProcessEvaluationHis; import com.adc.da.workFlow.entity.BusProcessModelHis; import com.adc.da.workFlow.entity.ProcessRollBackEO; @@ -486,4 +487,7 @@ public interface workFlowFeignClient { @RequestMapping(value = "/bat-wkflow/datas/bus-process-new/selectWenDan",method = RequestMethod.GET) Map selectWenDan(@RequestParam("taskId")String taskId); + + @RequestMapping(value = "/bat-wkflow/datas/bus-process-new/questionsAndAnswers",method = RequestMethod.GET) + ResponseMessage questionsAndAnswers(@RequestParam("askId") String askId, @RequestParam("answerer") String answerer); } diff --git a/adc-da-activiti/src/main/java/com/adc/da/FeignClientImpl/workFlowFeignClientImpl.java b/adc-da-activiti/src/main/java/com/adc/da/FeignClientImpl/workFlowFeignClientImpl.java index 65d81685..9107167a 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/FeignClientImpl/workFlowFeignClientImpl.java +++ b/adc-da-activiti/src/main/java/com/adc/da/FeignClientImpl/workFlowFeignClientImpl.java @@ -442,4 +442,8 @@ public class workFlowFeignClientImpl { public Map selectWenDan(@RequestParam("taskId") String taskId) { return workFlowFeignClient.selectWenDan(taskId); } + + public ResponseMessage questionsAndAnswers(@RequestParam("askId") String askId,@RequestParam("answerer") String answerer) { + return workFlowFeignClient.questionsAndAnswers(askId,answerer); + } } diff --git a/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java index 3effd7b0..101132b5 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java +++ b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java @@ -18,6 +18,8 @@ import com.adc.da.slrs.esRevisePlan.dao.EsRevisePlanDao; import com.adc.da.slrs.esRevisePlan.entity.EsRevisePlan; import com.adc.da.slrs.esRevisePlan.service.IEsRevisePlanLogService; import com.adc.da.slrs.esRevisePlan.service.IEsRevisePlanService; +import com.adc.da.slrs.sarInstitution.dao.TsInstitutionDao; +import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.sys.common.EmailUtils; @@ -91,6 +93,9 @@ public class WorkFlowController { @Autowired private SarAgenldAcceptButtonServiceImpl sarAgenldAcceptButtonService; + @Autowired + private TsInstitutionDao tsInstitutionDao; + // @Autowired // private ExportExcelMapper exportExcelMapper; @@ -1024,32 +1029,26 @@ public class WorkFlowController { for (EsRevisePlan data : esRevisePlans){ //数据拼接 ProcessRollBackEO processRollBackEO = new ProcessRollBackEO(); - processRollBackEO.setUserId(userId); + //起草人 + processRollBackEO.setUserId(data.getDrafter()); processRollBackEO.setType("25"); //拼接json HashMap qbfsForm = new HashMap<>(); HashMap 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("drafter",data.getDrafter()); + TsUser byIdDrafter = userService.getById(data.getDrafter()); + if(byIdDrafter!=null){ + qbfsForm.put("drafterName",byIdDrafter.getUname()); + } qbfsForm.put("resPerson",data.getResPerson()); - qbfsForm.put("resPersonName",data.getResPersonName()); - + TsUser byIdResPrson = userService.getById(data.getResPerson()); + if(byIdResPrson!=null){ + qbfsForm.put("resPersonName",byIdResPrson.getUname()); + } String wgLeaderStr = data.getWgLeader(); if(wgLeaderStr!=null){ if(wgLeaderStr.endsWith(",")){ @@ -1057,21 +1056,54 @@ public class WorkFlowController { } } qbfsForm.put("wgLeader",wgLeaderStr); - qbfsForm.put("wgLeaderName",data.getWgLeaderName()); + qbfsForm.put("resPerson",data.getResPerson()); + TsUser byIdWgleader = userService.getById(data.getResPerson()); + if(byIdWgleader!=null){ + qbfsForm.put("wgLeaderName",byIdWgleader.getUname()); + } + + qbfsForm.put("standId",data.getStandId()); + qbfsForm.put("actualTime",data.getActualTime()); + qbfsForm.put("standNumber",data.getStandNumber()); 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("unit",data.getUnit()); + TsInstitution tsInstitution = tsInstitutionDao.selectById(data.getUnit()); + if(tsInstitution!=null){ + qbfsForm.put("unitName",tsInstitution.getName()); + } + + qbfsForm.put("rqbJson",data.getRqbJson()); + qbfsForm.put("rqbName",data.getRqbName()); + qbfsForm.put("rqbCode",data.getRqbCode()); + qbfsForm.put("tsJson",data.getTsJson()); + qbfsForm.put("tsJsonName",data.getTsJsonName()); + qbfsForm.put("area",data.getArea()); + qbfsForm.put("areaName",data.getAreaName()); + qbfsForm.put("standType",data.getStandType()); + qbfsForm.put("standNum",data.getStandNum()); + qbfsForm.put("esMatingRelations",data.getEsMatingRelations()); + qbfsForm.put("esStandRelations",data.getEsStandRelations()); + qbfsForm.put("isRelate",data.getIsRelate()); + qbfsForm.put("useLevel",data.getUseLevel()); + TsUser byIdUseLevel = userService.getById(data.getUseLevel()); + if(byIdUseLevel!=null){ + qbfsForm.put("useLevelName",data.getUseLevelName()); + } + + qbfsForm.put("technologic",data.getTechnologic()); + qbfsForm.put("bussSort",data.getBussSort()); + qbfsForm.put("lxdName",""); + qbfsForm.put("lxd",data.getLxd()); 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("prcCreateUser",data.getDrafter()); + TsUser byIdDrafterInfo = userService.getById(data.getDrafter()); + if(byIdDrafterInfo!=null){ + qbfsForm.put("prcCreateUserName",byIdDrafterInfo.getUname()); } qbfsForm.put("nowEsId","操作成功"); qbfsForm.put("type","5"); @@ -1084,15 +1116,21 @@ public class WorkFlowController { 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.setCreateUserName(userName); +// if(jsonObject.get("prcCreateUser")!=null){ +// busMes.setUserId(jsonObject.get("prcCreateUser").toString()); +// } + busMes.setCreateUserName(data.getDrafterName()); + busMes.setUserId(data.getDrafter()); busMes.setJson(jsonMap); Wrapper stringWrapper = completeTaskByUserId(busMes); } } return Result.success(); } - + @ApiOperation(value = "问答中心 个人中心 我的问答 回答无taskID问题") + @GetMapping("/questionsAndAnswers") + public ResponseMessage questionsAndAnswers(@RequestParam("askId") String askId,@RequestParam("answerer") String answerer) { + return workFlowFeignClient.questionsAndAnswers(askId,answerer); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java index 98af36ae..e92c093b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java @@ -58,12 +58,42 @@ public class AskQuestionsController extends BaseController { @GetMapping("/getAskQuestionsPage") public ResponseMessage> getAskQuestionsPage(AskQuestionsPage askQuestions){ + if(StringUtils.isBlank(askQuestions.getUserId())){ + return Result.error(); + } + Set askIdList = askQuestionsService.getAskQuestionsPage(askQuestions); + //查询出所有的回答 IPage iPage = new Page<>(); iPage.setSize(askQuestions.getPageSize()); iPage.setPages(askQuestions.getPage()); QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.orderByDesc("QUESTION_TIME"); + if(!askIdList.isEmpty()){ + queryWrapper.in("id",askIdList); + } IPage page = askQuestionsService.page(iPage,queryWrapper); + if(!page.getRecords().isEmpty()){ + for (AskQuestions data : page.getRecords()){ + if(StringUtils.isNotBlank(data.getQuestioner())){ + TsUser tsUser = tsUserDao.selectById(data.getQuestioner()); + data.setQuestioner(tsUser.getUname()); + } + if(StringUtils.isNotBlank(data.getClassification())){ + if (data.getClassification().equals("BUSINESS_STAND")) { + data.setClassification("企业标准"); + } + if (data.getClassification().equals("FOREIGN")) { + data.setClassification("海外标准"); + } + if (data.getClassification().equals("INLAND")) { + data.setClassification("国内标准"); + } + if (data.getClassification().equals("OTHER")) { + data.setClassification("公共标准"); + } + } + } + } return Result.success(page); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskUserController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskUserController.java index 28aeb7fe..bf5fa91a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskUserController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskUserController.java @@ -8,6 +8,7 @@ import com.adc.da.slrs.StandardQA.service.Impl.AskUserServiceImpl; import com.adc.da.util.http.ResponseMessage; import com.adc.da.util.http.Result; import io.swagger.annotations.Api; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -15,6 +16,9 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.Arrays; +import java.util.List; + /** * @Author: qk * @Date: 2022/6/2 0002 8:44 @@ -28,10 +32,17 @@ public class AskUserController extends BaseController { private AskUserServiceImpl askUserService; @PostMapping("/insertAskUser") public ResponseMessage insertAskUser(@RequestBody AskUser askUser){ - if(askUserService.save(askUser)){ - return Result.success("200","邀请成功",null); - }else { - return Result.error("-1","添加失败",null); + if(StringUtils.isBlank(askUser.getUsid())){ + return Result.error(); } + String[] split = askUser.getUsid().split(","); + final List asList = Arrays.asList(split); + for (String uid: asList){ + AskUser askUserInfo = new AskUser(); + askUserInfo.setAsdId(askUser.getAsdId()); + askUserInfo.setUsid(uid); + askUserService.save(askUserInfo); + } + return Result.success(); } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestionsPage.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestionsPage.java index 7c3ee0f8..c3e60d73 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestionsPage.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/AskQuestionsPage.java @@ -42,4 +42,7 @@ public class AskQuestionsPage { @ApiModelProperty(value = "标准ID") private String appendixName; + + @ApiModelProperty(value = "登录人") + private String userId; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java index 1b349281..33587c73 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java @@ -4,10 +4,12 @@ import com.adc.da.slrs.NewsFeed.entity.NewsFeed; import com.adc.da.slrs.StandardQA.entity.AskQuestions; import com.adc.da.slrs.StandardQA.entity.AskQuestionsPage; import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.util.http.ResponseMessage; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; +import java.util.Set; /** * @Author: qk @@ -31,5 +33,5 @@ public interface AskQuestionsService extends IService { List getArchiveAskQuestions(String id); List getAskQuestionsByakId(String id,String state,String userId); - + Set getAskQuestionsPage(AskQuestionsPage askQuestions); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java index 7958c3b1..aa50e6b3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java @@ -3,11 +3,10 @@ package com.adc.da.slrs.StandardQA.service.Impl; import com.adc.da.slrs.StandardQA.dao.AskQuestionsDao; import com.adc.da.slrs.StandardQA.dao.ReplyDao; -import com.adc.da.slrs.StandardQA.entity.AskQuestions; -import com.adc.da.slrs.StandardQA.entity.AskQuestionsPage; -import com.adc.da.slrs.StandardQA.entity.AskQuestionsReplyVO; -import com.adc.da.slrs.StandardQA.entity.Reply; +import com.adc.da.slrs.StandardQA.entity.*; import com.adc.da.slrs.StandardQA.service.AskQuestionsService; +import com.adc.da.slrs.sarUser.dao.TsUserDao; +import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.entity.UpDTO; import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.util.http.ResponseMessage; @@ -24,7 +23,10 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; /** * @Author: qk @@ -44,6 +46,13 @@ public class AskQuestionsServiceImpl extends ServiceImpl getAskQuestions(AskQuestions askQuestions) { return askQuestionsDao.getAskQuestions(askQuestions); @@ -137,6 +146,53 @@ public class AskQuestionsServiceImpl extends ServiceImpl getAskQuestionsPage(AskQuestionsPage askQuestions) { + //当前人是法规部门 则返回未被回答的提问信息 + List uId = askQuestionsDao.getUId(); + for (String uid : uId){ + if(uid.equals(askQuestions.getUserId())){ + //查询所有的问 答 + List askQuestionsList = baseMapper.selectList(null); + List repLies = replyDao.selectList(null); + List askList = new ArrayList<>(); + for (AskQuestions ask: askQuestionsList){ + for (Reply reply: repLies){ + if(ask.getId().equals(reply.getAskId())){ + askList.add(ask); + } + } + } + askQuestionsList.removeAll(askList.stream().distinct().collect(Collectors.toList())); + Set askIdList = new HashSet<>(); + //所有没有回答的问题 + for (AskQuestions ask: askQuestionsList){ + askIdList.add(ask.getId()); + } + //查询出所有的回答 + return askIdList; + } + } + // 不是法规部门 但是被邀请回答 + QueryWrapper askQuestionsQueryWrapper = new QueryWrapper<>(); + askQuestionsQueryWrapper.eq("QUESTIONER",askQuestions.getUserId()); + List askQuestionsList = baseMapper.selectList(askQuestionsQueryWrapper); + Set askIdList = new HashSet<>(); + //所有没有回答的问题 + for (AskQuestions ask: askQuestionsList){ + askIdList.add(ask.getId()); + } + // 邀请当前人回答 + QueryWrapper objectQueryWrapper = new QueryWrapper<>(); + objectQueryWrapper.eq("USID",askQuestions.getUserId()); + List askUsers = askUserService.list(objectQueryWrapper); + for (AskUser askUser: askUsers){ + askIdList.add(askUser.getAsdId()); + } + //查询出所有的回答 + return askIdList; + } + public ResponseMessage selectAskReply(String id) { ArrayList objects = new ArrayList<>(); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java index cd8ce7c4..ea3b3208 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java @@ -207,11 +207,11 @@ public class SarBussionessStandController extends BaseController standlist = sarBussionessStandEOService.selectStandardsByStandNumber(standnumber); if (standlist.size() > 0) { @@ -221,19 +221,56 @@ public class SarBussionessStandController extends BaseController queryWrapper = new QueryWrapper<>(); + queryWrapper.eq(null!=standnumber,"STAND_CODE",standnumber) + .eq(null!=page.getStandName(),"STAND_NAME",page.getStandName()); + List list = sarBussionessStandEOService.list(queryWrapper); + Integer valIdFlag = 0; + for (SarBussionessStand stand :list){ + if ((list.size() >=1 && !stand.getId().equals(page.getId()))){ + valIdFlag = stand.getValidFlag(); + if (valIdFlag == 0){ + return Result.error("企标编号("+ standnumber +")或企标名称("+ page.getStandName() +")已存在"); + } + } + } } } return Result.success(); } else { - return Result.error(standNumShow + "标准号已存在"); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq(null!=standnumber,"STAND_CODE",standnumber) + .eq(null!=page.getStandName(),"STAND_NAME",page.getStandName()); + List list = sarBussionessStandEOService.list(queryWrapper); + Integer valIdFlag = 0; + for (SarBussionessStand stand :list){ + if ((list.size() >=1 && !stand.getId().equals(page.getId()))){ + valIdFlag = stand.getValidFlag(); + if (valIdFlag == 0){ + return Result.error("企标编号("+ standnumber +")或企标名称("+ page.getStandName() +")已存在"); + } + } + } } } else { - return Result.success(); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq(null!=standnumber,"STAND_CODE",standnumber) + .eq(null!=page.getStandName(),"STAND_NAME",page.getStandName()); + List list = sarBussionessStandEOService.list(queryWrapper); + Integer valIdFlag = 0; + for (SarBussionessStand stand :list){ + if ((list.size() >=1 && !stand.getId().equals(page.getId()))){ + valIdFlag = stand.getValidFlag(); + if (valIdFlag == 0){ + return Result.error("企标编号("+ standnumber +")或企标名称("+ page.getStandName() +")已存在"); + } + } + } } } else { return Result.success(); } + return Result.success(); } /** diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java index 4d30971d..7d9f64d1 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java @@ -2132,6 +2132,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl