Merge remote-tracking branch 'origin/master'

master
yangwl 3 years ago
commit bda7107a9d

@ -3,13 +3,23 @@ package com.foreverwin.mesnac.anomaly.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.foreverwin.mesnac.anomaly.dto.AbnormalBillDto;
import com.foreverwin.mesnac.anomaly.dto.NcCodesVO;
import com.foreverwin.mesnac.anomaly.dto.RouterBpmVO;
import com.foreverwin.mesnac.anomaly.model.AbnormalBill;
import com.foreverwin.mesnac.anomaly.model.AbnormalBillDispose;
import com.foreverwin.mesnac.anomaly.service.AbnormalBillService;
import com.foreverwin.mesnac.anomaly.service.FileUploadedService;
import com.foreverwin.mesnac.anomaly.utils.*;
import com.foreverwin.mesnac.common.dto.SfcDispatchDto;
import com.foreverwin.mesnac.common.enums.HandleEnum;
import com.foreverwin.mesnac.common.service.SfcDispatchCommonService;
import com.foreverwin.mesnac.common.util.StringUtil;
import com.foreverwin.mesnac.meapi.dto.AbnormalRouterDto;
import com.foreverwin.mesnac.meapi.dto.RouterStepDto;
import com.foreverwin.mesnac.meapi.model.RouterStep;
import com.foreverwin.mesnac.meapi.service.NcCodeService;
import com.foreverwin.mesnac.meapi.service.RouterService;
import com.foreverwin.mesnac.meapi.service.RouterStepService;
import com.foreverwin.modular.core.util.FrontPage;
import com.foreverwin.modular.core.util.R;
import com.sap.me.frame.service.CommonMethods;
@ -20,6 +30,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -44,6 +55,12 @@ public class AbnormalBillController {
@Autowired
private NcCodeService ncCodeService;
@Autowired
private RouterService routerService;
@Autowired
private RouterStepService routerStepService;
/**
* id
*
@ -320,6 +337,137 @@ public class AbnormalBillController {
}
/**
* bpm线
* @param
* @return
*/
@GetMapping("/getRouting")
public ResultVo getRouting(RouterBpmVO routerBpmVO, String secretKey){
com.foreverwin.modular.core.util.CommonMethods.setSite("1000");
com.foreverwin.modular.core.util.CommonMethods.setUser("BPM_USER");
String site = com.foreverwin.modular.core.util.CommonMethods.getSite();
if (!yunBpmConfig.secretKey.equals(secretKey)){
return new ResultVo(ResultCode.FAILED,"秘钥错误");
}
try{
AbnormalRouterDto abnormalRouterDto = new AbnormalRouterDto();
abnormalRouterDto.setSite(site);
abnormalRouterDto.setItem(routerBpmVO.getItem());
List<AbnormalRouterDto> abnormalRouterDtoList = routerService.selectDisrouter(abnormalRouterDto);
ArrayList<RouterBpmVO> routerBpmVOs = new ArrayList<>();
for (AbnormalRouterDto routerDto : abnormalRouterDtoList) {
RouterBpmVO bpmVO = new RouterBpmVO();
bpmVO.setAbnormalNo(routerDto.getAbnormalNo());
bpmVO.setRouter(routerDto.getRouter());
bpmVO.setRouterType(routerDto.getRouterType());
bpmVO.setItemDescription(routerDto.getItemDescription());
bpmVO.setItemRevision(routerDto.getRouterRevision());
bpmVO.setPbDescription(routerDto.getPbDescription());
bpmVO.setRouterRevision(routerDto.getRouterRevision());
bpmVO.setPbDescription(routerDto.getPbDescription());
bpmVO.setItem(routerDto.getItem());
bpmVO.setShopOrder(routerBpmVO.getShopOrder());
bpmVO.setSite(routerDto.getSite());
RouterStep routerStep = new RouterStep();
routerStep.setRouterBo(routerDto.getRouterBo());
List<RouterStepDto> routerOperationByRouterBo = routerStepService.findRouterOperationByRouterBo(site, routerDto.getRouterBo());
bpmVO.setRouterStep(routerOperationByRouterBo);
routerBpmVOs.add(bpmVO);
}
return new ResultVo(ResultCode.SUCCESS,routerBpmVOs);
}catch(Exception e){
return new ResultVo(ResultCode.FAILED,R.failed(e.getMessage()).getMsg());
}
}
/**
* bpm
* @param
* @return
*/
@PostMapping("/bpmAbnormalReport")
public ResultVo bpmAbnormalReport(String secretKey, AbnormalBill abnormalBill, AbnormalBillDispose abnormalBillDispose,
NcCodesVO ncCodesVO){
com.foreverwin.modular.core.util.CommonMethods.setSite("1000");
String site = com.foreverwin.modular.core.util.CommonMethods.getSite();
com.foreverwin.modular.core.util.CommonMethods.setUser("BPM_USER");
if (!yunBpmConfig.secretKey.equals(secretKey)){
return new ResultVo(ResultCode.FAILED,"秘钥错误");
}
try{
String abnormalNo = abnormalBillService.getNextNumber("Z");
abnormalBill.setBpmSubmit("true");
abnormalBill.setAbnormalNo(abnormalNo);
abnormalBill.setStatus("N");
abnormalBill.setSite(site);
abnormalBill.setType("Z");
abnormalBill.setReportFrom("J");
abnormalBill.setItemBo(HandleEnum.ITEM.getHandle(site,abnormalBill.getItemBo(),"A"));
abnormalBill.setReportSendUserGroup("BPM");
abnormalBillDispose.setSite(site);
com.foreverwin.modular.core.util.CommonMethods.setUser("BPM_USER");
abnormalBillService.anomalyReport(abnormalBill, abnormalBillDispose,
ncCodesVO.getNcGroupAndNcCodes(), ncCodesVO.getDutyCauseType(), ncCodesVO.getDutyType());
return new ResultVo(ResultCode.SUCCESS,abnormalBill);
}catch(Exception e){
return new ResultVo(ResultCode.FAILED,R.failed(e.getMessage()).getMsg());
}
}
/**
* bpmmes
* @param
* @return
*/
@PostMapping("/bpmPlanConfirm")
public ResultVo bpmPlanConfirm(String secretKey,AbnormalBill abnormalBill,AbnormalBillDispose abnormalBillDispose){
com.foreverwin.modular.core.util.CommonMethods.setSite("1000");
com.foreverwin.modular.core.util.CommonMethods.setUser("BPM_USER");
String site = com.foreverwin.modular.core.util.CommonMethods.getSite();
if (!yunBpmConfig.secretKey.equals(secretKey)){
return new ResultVo(ResultCode.FAILED,"秘钥错误");
}else if (!StringUtil.isBlank(abnormalBillDispose.getResolveUser())){
com.foreverwin.modular.core.util.CommonMethods.setUser(abnormalBillDispose.getResolveUser());
}
try{
abnormalBill.setHandle(HandleEnum.ABNORMAL_BILL.getHandle(site,abnormalBill.getAbnormalNo()));
abnormalBill.setBpmSubmit("true");
abnormalBillService.programConfirm(abnormalBill,abnormalBillDispose);
return new ResultVo(ResultCode.SUCCESS,"BPM方案确认回传成功");
}catch(Exception e){
return new ResultVo(ResultCode.FAILED,R.failed(e.getMessage()).getMsg());
}
}
/**
* bpm
* @param abnormalBill
* @param abnormalBillDispose
* @return
*/
@PostMapping("/bpmDutyConfirm")
public ResultVo bpmDutyConfirm(String secretKey,AbnormalBill abnormalBill,
AbnormalBillDispose abnormalBillDispose,NcCodesVO ncCodesVO){
com.foreverwin.modular.core.util.CommonMethods.setSite("1000");
com.foreverwin.modular.core.util.CommonMethods.setUser("BPM_USER");
String site = com.foreverwin.modular.core.util.CommonMethods.getSite();
if (!yunBpmConfig.secretKey.equals(secretKey)){
return new ResultVo(ResultCode.FAILED,"秘钥错误");
}
try{
abnormalBill.setHandle(HandleEnum.ABNORMAL_BILL.getHandle(site,abnormalBill.getAbnormalNo()));
abnormalBill.setBpmSubmit("true");
abnormalBillDispose.setDutyCauseType(String.join(",",ncCodesVO.getDutyCauseType()));
abnormalBillService.dutyConfirm(abnormalBill,abnormalBillDispose,ncCodesVO.getDutyCauseType(),ncCodesVO.getDutyType());
return new ResultVo(ResultCode.SUCCESS,"BPM判责提交成功");
}catch(Exception e){
return new ResultVo(ResultCode.FAILED,R.failed(e.getMessage()).getMsg());
}
}
/**
*
* @param abnormalBill
@ -335,6 +483,7 @@ public class AbnormalBillController {
}
}
/**
*

@ -245,6 +245,18 @@ public class AbnormalBill extends Model<AbnormalBill> {
@TableField("ITEM_NUMBER")
private String itemNumber;
/**
* BPMID
*/
@TableField(value = "BPM_FLOW_ID")
private String bpmFlowId;
/**
* BPMtrue,false
*/
@TableField(value = "BPM_SUBMIT")
private String bpmSubmit;
@TableField(exist = false)
private String filePath;
@ -254,6 +266,17 @@ public class AbnormalBill extends Model<AbnormalBill> {
@TableField(exist = false)
private String fileNum;
/**
*
*/
@TableField(exist = false)
private String mapNo;
/**
*
*/
@TableField(exist = false)
private String itemDescription;
@TableField("USER_CON_TIME")
private LocalDateTime userConTime;
@TableField("USER_IS_CON")
@ -267,6 +290,38 @@ public class AbnormalBill extends Model<AbnormalBill> {
this.userConTime = userConTime;
}
public String getBpmFlowId() {
return bpmFlowId;
}
public void setBpmFlowId(String bpmFlowId) {
this.bpmFlowId = bpmFlowId;
}
public String getBpmSubmit() {
return bpmSubmit;
}
public void setBpmSubmit(String bpmSubmit) {
this.bpmSubmit = bpmSubmit;
}
public String getItemDescription() {
return itemDescription;
}
public void setItemDescription(String itemDescription) {
this.itemDescription = itemDescription;
}
public String getMapNo() {
return mapNo;
}
public void setMapNo(String mapNo) {
this.mapNo = mapNo;
}
public String getUserIsCon() {
return userIsCon;
}
@ -275,7 +330,7 @@ public class AbnormalBill extends Model<AbnormalBill> {
this.userIsCon = userIsCon;
}
public String getHandle() {
public String getHandle() {
return handle;
}

@ -1,5 +1,6 @@
package com.foreverwin.mesnac.anomaly.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -14,6 +15,7 @@ import com.foreverwin.mesnac.anomaly.model.AbnormalBillDispose;
import com.foreverwin.mesnac.anomaly.model.AbnormalNcCode;
import com.foreverwin.mesnac.anomaly.model.UploadPictures;
import com.foreverwin.mesnac.anomaly.service.*;
import com.foreverwin.mesnac.anomaly.utils.YunBpmApiRes;
import com.foreverwin.mesnac.common.constant.Constants;
import com.foreverwin.mesnac.common.dto.ScrapDto;
import com.foreverwin.mesnac.common.dto.SfcDispatchDto;
@ -197,6 +199,9 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
@Autowired
private ItemService itemService;
@Autowired
private YunBpmService yunBpmService;
@Override
@ -262,6 +267,21 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
ncCodes.append(split[1]).append(",");
}
/**
* mesbpm
*/
if (StringUtil.isBlank(abnormalBill.getBpmSubmit())){
abnormalBill.setBpmSubmit("false");
YunBpmApiRes bpmApiRes = yunBpmService.saveQualitySystem(abnormalBill, abnormalBillDispose,
StringUtils.extract(ncGroup.toString(), "[", "]"),
StringUtils.extract(ncGroupAndNcCodes.toString(), "[", "]"));
if(!bpmApiRes.getErrCode().equals(0)){
throw new BaseException("MES提报给质量BPM系统失败");
}
String workflowInstanceId = JSON.parseObject(String.valueOf(bpmApiRes.getData())).getString("workflowInstanceId");
abnormalBill.setBpmFlowId(workflowInstanceId);
}
ArrayList<AbnormalNcCode> abnormalNcCodes = new ArrayList<>();
for(int i = 0; i < ncGroup.size(); i ++){
AbnormalNcCode abnormalNcCode = new AbnormalNcCode();
@ -300,10 +320,11 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
this.saveOrUpdate(abnormalBill);
abnormalBillDisposeService.saveOrUpdate(abnormalBillDispose);
//发送消息
if(Constants.NEW.equals(abnormalBill.getStatus())){
if(Constants.NEW.equals(abnormalBill.getStatus()) && !abnormalBill.getReportSendUserGroup().equals("BPM")){
this.anomalyCreatedAndSendMessage(abnormalBill,null);
}
@ -554,7 +575,9 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
//发送用户
nwaUserService.checkUserGroup(site,abnormalBillDispose.getResolveSendUserGroup());
if (StringUtil.isBlank(abnormalBill.getBpmSubmit()) && "false".equals(abnormalBill.getBpmSubmit())){
nwaUserService.checkUserGroup(site,abnormalBillDispose.getResolveSendUserGroup());
}
//设置解决方案的处理时间和处理人
@ -563,8 +586,8 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
abnormalBill.setStatus(Constants.PROGRAM_CONFIRM);
abnormalBill.setProgram("true");
abnormalBillDisposeService.saveOrUpdate(abnormalBillDispose);
this.saveOrUpdate(abnormalBill);
abnormalBillDisposeService.saveOrUpdate(abnormalBillDispose);
//保存到异常计划表
AbnormalBill abnormalBill2 = abnormalBillMapper.selectById(abnormalBill.getHandle());
@ -611,7 +634,9 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
this.batchRepair(sfcDto);
}
}
this.anomalyCreatedAndSendMessage(abnormalBill2,abnormalBillDispose);
if (StringUtil.isBlank(abnormalBill.getBpmSubmit())){
this.anomalyCreatedAndSendMessage(abnormalBill2,abnormalBillDispose);
}
}
@Override
@ -643,7 +668,9 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
this.saveOrUpdate(abnormalBill);
abnormalBillDisposeService.saveOrUpdate(abnormalBillDispose);
this.anomalyCreatedAndSendMessage(abnormalBillMapper.selectById(abnormalBill.getHandle()),abnormalBillDispose);
if (StringUtil.isBlank(abnormalBill.getBpmSubmit())) {
this.anomalyCreatedAndSendMessage(abnormalBillMapper.selectById(abnormalBill.getHandle()), abnormalBillDispose);
}
}

@ -584,6 +584,8 @@
<if test="stepId!=null">STEP_ID,</if>
<if test="workOrder!=null">WORK_ORDER,</if>
<if test="itemNumber!=null">ITEM_NUMBER,</if>
<if test="bpmFlowId != null">BPM_FLOW_ID,</if>
<if test="bpmSubmit != null">BPM_SUBMIT,</if>
</trim> VALUES
<trim prefix="(" suffix=")" suffixOverrides=",">
#{handle},
@ -630,6 +632,8 @@
<if test="stepId!=null">#{stepId},</if>
<if test="workOrder!=null">#{workOrder},</if>
<if test="itemNumber!=null">#{itemNumber},</if>
<if test="bpmFlowId != null">#{bpmFlowId},</if>
<if test="bpmSubmit != null">#{bpmSubmit},</if>
</trim>
</insert>
@ -732,6 +736,8 @@
<if test="et.stepId!=null">STEP_ID=#{et.stepId},</if>
<if test="et.workOrder!=null">WORK_ORDER=#{et.workOrder},</if>
<if test="et.itemNumber!=null">ITEM_NUMBER=#{et.itemNumber},</if>
<if test="et.bpmFlowId != null">BPM_FLOW_ID=#{et.bpmFlowId},</if>
<if test="et.bpmSubmit != null">BPM_SUBMIT=#{et.bpmSubmit},</if>
<if test="et.userConTime!=null">USER_CON_TIME=#{et.userConTime},</if>
<if test="et.userIsCon!=null">USER_IS_CON=#{et.userIsCon},</if>
</trim> WHERE HANDLE=#{et.handle} <if test="et instanceof java.util.Map"><if test="et.MP_OPTLOCK_VERSION_ORIGINAL!=null">and ${et.MP_OPTLOCK_VERSION_COLUMN}=#{et.MP_OPTLOCK_VERSION_ORIGINAL}</if></if>
@ -979,13 +985,13 @@
<select id="backLog" resultMap="abnormalBillDto">
SELECT ROW_NUMBER() OVER(ORDER BY ZAB.ABNORMAL_NO ASC) SEQ,ZAB.ABNORMAL_NO ABNORMAL_NO,
CASE WHEN ZAB.USER_IS_CON = 'true'THEN '是'
WHEN ZAB.USER_IS_CON = 'false' THEN '否'
END USER_IS_CON ,
CASE WHEN ZAB.CORRECTION = 'true' AND ZAB.PROGRAM = 'true' AND ZAB.STATUS != 'G' THEN '纠防确认,方案确认'
ELSE ZAB.STATUS
END STATUS ,
IT.DESCRIPTION ITEM_DESCRIPTION, ZAB.CREATED_DATE_TIME CREATED_DATE_TIME,
ZAB.RESPONSE_DATE_TIME RESPONSE_DATE_TIME,
ZNU.FULL_NAME CREATED_USER,
ZAB.NC_CODE NC_CODE,ZAB.PB_DESCRIPTION PB_DESCRIPTION,ZAB.USER_CON_TIME,
ZAB.NC_CODE NC_CODE,ZAB.PB_DESCRIPTION PB_DESCRIPTION,
LISTAGG(NCT.DESCRIPTION , ',') WITHIN GROUP(ORDER BY ZAB.ABNORMAL_NO) NC_CODE_DESCRIPTION
FROM Z_ABNORMAL_BILL ZAB
LEFT JOIN Z_ABNORMAL_BILL_DISPOSE ZABD ON ZABD.ABNORMAL_BILL_BO = ZAB.HANDLE
@ -1003,9 +1009,6 @@
<if test="abnormalBill.site != null and abnormalBill.site != ''">
zab.SITE = #{abnormalBill.site}
</if>
<if test="abnormalBill.createdUser != null and abnormalBill.createdUser != ''">
zab.CREATED_USER = #{abnormalBill.createdUser}
</if>
<if test="abnormalBill.checkUsr != null and abnormalBill.checkUsr != ''">
AND CFA.VALUE = #{abnormalBill.checkUsr}
</if>
@ -1104,7 +1107,7 @@
</if>
</where>
GROUP BY zab.ABNORMAL_NO,it.DESCRIPTION,zab.CREATED_DATE_TIME,zab.RESPONSE_DATE_TIME,
ZNU.FULL_NAME,zab.NC_CODE,zab.PB_DESCRIPTION,ZAB.CORRECTION,ZAB.PROGRAM,ZAB.STATUS,ZAB.USER_IS_CON,ZAB.USER_CON_TIME
ZNU.FULL_NAME,zab.NC_CODE,zab.PB_DESCRIPTION,ZAB.CORRECTION,ZAB.PROGRAM,ZAB.STATUS
ORDER BY zab.CREATED_DATE_TIME DESC
</select>

Loading…
Cancel
Save