Commit aa10143a authored by chenzhao's avatar chenzhao

增加验收接口

parent 610dcaa1
package com.yeejoin.amos.boot.module.common.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 故障报修验收记录
*
* @author system_generator
* @date 2021-08-18
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="FailureVerifyDto", description="故障报修验收记录")
public class FailureVerifyDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "验收人")
private String acceptor;
@ApiModelProperty(value = "验收部门")
private String verifyDepartment;
@ApiModelProperty(value = "验收部门的id")
private Long verifyDepartmentId;
@ApiModelProperty(value = "审核结果 0:同意 1:拒绝 ")
private Integer verifyResult;
@ApiModelProperty(value = "验收时间")
private Date verifyTime;
@ApiModelProperty(value = "验收意见")
private String verifyOpinion;
@ApiModelProperty(value = "设备故障报修单id")
private Long faultId;
@ApiModelProperty(value = "审核结果条件判断,0同意,1拒绝")
private String condition;
}
package com.yeejoin.amos.boot.module.common.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 故障报修验收记录
*
* @author system_generator
* @date 2021-08-18
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("cb_failure_verify")
public class FailureVerify extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 验收人
*/
@TableField("acceptor")
private String acceptor;
/**
* 验收部门
*/
@TableField("verify_department")
private String verifyDepartment;
/**
* 验收部门的id
*/
@TableField("verify_department_id")
private Long verifyDepartmentId;
/**
* 审核结果 0:同意 1:拒绝
*/
@TableField("verify_result")
private Integer verifyResult;
/**
* 验收时间
*/
@TableField("verify_time")
private Date verifyTime;
/**
* 验收意见
*/
@TableField("verify_opinion")
private String verifyOpinion;
/**
* 设备故障报修单id
*/
@TableField("fault_id")
private Long faultId;
}
package com.yeejoin.amos.boot.module.common.api.mapper;
import com.yeejoin.amos.boot.module.common.api.entity.FailureVerify;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 故障报修验收记录 Mapper 接口
*
* @author system_generator
* @date 2021-08-18
*/
public interface FailureVerifyMapper extends BaseMapper<FailureVerify> {
}
package com.yeejoin.amos.boot.module.common.api.service;
/**
* 故障报修验收记录接口类
*
* @author system_generator
* @date 2021-08-18
*/
public interface IFailureVerifyService {
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.common.api.mapper.FailureVerifyMapper">
</mapper>
......@@ -40,8 +40,13 @@ public class FailureAuditController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<Object> save(@RequestBody FailureAuditDto model) throws Exception {
public ResponseModel<Object> save(@RequestBody FailureAuditDto model) {
try {
return ResponseHelper.buildResponse(failureAuditServiceImpl.savemodel(model,getSelectedOrgInfo()));
} catch (Exception e) {
e.printStackTrace();
return ResponseHelper.buildResponse(false);
}
}
......@@ -97,7 +102,7 @@ public class FailureAuditController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "审核列表记录查询", notes = "审核列表记录查询")
@GetMapping(value = "/list/{faultId}")
public ResponseModel<List<FailureAudit>> findByFaultIDFotList(@RequestParam long faultId) {
public ResponseModel<List<FailureAudit>> findByFaultIDFotList(@PathVariable long faultId) {
return ResponseHelper.buildResponse(failureAuditServiceImpl.findByfaultId(faultId));
}
......
......@@ -5,6 +5,7 @@ import java.util.List;
import javax.servlet.http.HttpServletRequest;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
......@@ -62,8 +63,13 @@ public class FailureDetailsController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<Object> save(@RequestBody FailureDetailsDto model ) throws Exception {
public ResponseModel<Object> save(@RequestBody FailureDetailsDto model ) {
try {
return ResponseHelper.buildResponse( failureDetailsServiceImpl.savemodel(model,getSelectedOrgInfo()));
} catch (Exception e) {
e.printStackTrace();
return ResponseHelper.buildResponse( false);
}
}
......@@ -123,7 +129,7 @@ public class FailureDetailsController extends BaseController {
Page<FailureDetails> page = new Page<FailureDetails>();
page.setCurrent(current);
page.setSize(size);
final AgencyUserModel userInfo = getUserInfo();
ReginParams userInfo = getSelectedOrgInfo();
IPage<FailureDetailsDto> failureDetailDTOsIPage = new Page<>();
IPage<FailureDetails> failureDetailsIPage = failureDetailsServiceImpl.queryForFailureDetailsPage(page, userInfo, type);
BeanUtils.copyProperties(failureDetailsIPage,FailureDetailsDto.class);
......
......@@ -2,6 +2,8 @@ package com.yeejoin.amos.boot.module.common.biz.controller;
import java.util.List;
import com.yeejoin.amos.boot.module.common.api.entity.FailureAudit;
import com.yeejoin.amos.boot.module.common.api.entity.FailureMaintain;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
......@@ -47,69 +49,59 @@ public class FailureMaintainController extends BaseController {
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<Object> save(@RequestBody FailureMaintainDto model) {
try {
return ResponseHelper.buildResponse(failureMaintainServiceImpl.savemodel(model,getSelectedOrgInfo()));
} catch (Exception e) {
e.printStackTrace();
return ResponseHelper.buildResponse(false);
}
}
/**
* 根据sequenceNbr更新
* 根据传递的Status状态确认验收状态
*
* @param sequenceNbr 主键
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@PutMapping(value = "/verify")
@ApiOperation(httpMethod = "PUT", value = "验收操作", notes = "根据sequenceNbr更新")
public Object updateBySequenceNbrFailureMaintain(@RequestBody FailureMaintainDto model,Integer status,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(failureMaintainServiceImpl.updateModel(model,status,getSelectedOrgInfo()));
public Object updateBySequenceNbrFailureMaintain(@RequestBody FailureMaintainDto model) {
try {
return ResponseHelper.buildResponse(failureMaintainServiceImpl.updateModel(model,getSelectedOrgInfo()));
} catch (Exception e) {
e.printStackTrace();
return ResponseHelper.buildResponse(false);
}
}
/**
/*
*/
/**
* 根据sequenceNbr更新
* 根据传递的Status状态确认验收状态
*
* @param sequenceNbr 主键
* @return
*/
*//*
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/update/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "维修完成", notes = "根据sequenceNbr更新")
public Object updateByFailureMaintain(@RequestBody FailureMaintainDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
try {
return ResponseHelper.buildResponse(failureMaintainServiceImpl.updateStatus(model,getSelectedOrgInfo()));
} catch (Exception e) {
return ResponseHelper.buildResponse(false);
}
/*
*/
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*//*
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除", notes = "根据sequenceNbr删除")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(failureMaintainServiceImpl.removeById(sequenceNbr));
}
*/
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
public ResponseModel<FailureMaintainDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(failureMaintainServiceImpl.queryBySeq(sequenceNbr));
}
/**
......@@ -130,18 +122,22 @@ public class FailureMaintainController extends BaseController {
return ResponseHelper.buildResponse(failureMaintainServiceImpl.queryForFailureMaintainPage(page));
}
/**
* 列表全部数据查询
*
* 维修列表记录查询
*根据关联主表faultId查询
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "列表全部数据查询", notes = "列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<FailureMaintainDto>> selectForList() {
return ResponseHelper.buildResponse(failureMaintainServiceImpl.queryForFailureMaintainList());
@ApiOperation(httpMethod = "GET",value = "维修列表记录查询", notes = "维修列表记录查询")
@GetMapping(value = "/list/{faultId}")
public ResponseModel<List<FailureMaintain>> findByFaultIDFotList(@PathVariable long faultId) {
return ResponseHelper.buildResponse(failureMaintainServiceImpl.findByfaultId(faultId));
}
/**
* 查询历史流程审核信息记录
*
......
package com.yeejoin.amos.boot.module.common.biz.controller;
import com.yeejoin.amos.boot.module.common.api.dto.FailureAuditDto;
import com.yeejoin.amos.boot.module.common.api.entity.FailureAudit;
import com.yeejoin.amos.boot.module.common.api.entity.FailureVerify;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FailureVerifyServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.dto.FailureVerifyDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/**
* 故障报修验收记录
*
* @author system_generator
* @date 2021-08-18
*/
@RestController
@Api(tags = "故障报修验收记录Api")
@RequestMapping(value = "/common/failure-verify")
public class FailureVerifyController extends BaseController {
@Autowired
FailureVerifyServiceImpl failureVerifyServiceImpl;
/**
* 新增故障报修验收记录
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<Object> save(@RequestBody FailureVerifyDto model) {
try {
return ResponseHelper.buildResponse(failureVerifyServiceImpl.savemodel(model,getSelectedOrgInfo()));
} catch (Exception e) {
e.printStackTrace();
return ResponseHelper.buildResponse(false);
}
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新故障报修验收记录", notes = "根据sequenceNbr更新故障报修验收记录")
public ResponseModel<FailureVerifyDto> updateBySequenceNbrFailureVerify(@RequestBody FailureVerifyDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(failureVerifyServiceImpl.updateWithModel(model));
}
/*
*/
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*//*
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个故障报修验收记录", notes = "根据sequenceNbr查询单个故障报修验收记录")
public ResponseModel<FailureVerifyDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(failureVerifyServiceImpl.queryBySeq(sequenceNbr));
}
*/
/* *//**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*//*
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "故障报修验收记录分页查询", notes = "故障报修验收记录分页查询")
public ResponseModel<Page<FailureVerifyDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<FailureVerifyDto> page = new Page<FailureVerifyDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(failureVerifyServiceImpl.queryForFailureVerifyPage(page));
}*/
/*
*/
/**
* 列表全部数据查询
*
* @return
*//*
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "故障报修验收记录列表全部数据查询", notes = "故障报修验收记录列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<FailureVerifyDto>> selectForList() {
return ResponseHelper.buildResponse(failureVerifyServiceImpl.queryForFailureVerifyList());
}
*/
/**
* 审核列表记录查询
*根据关联主表faultId查询
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "审核列表记录查询", notes = "审核列表记录查询")
@GetMapping(value = "/list/{faultId}")
public ResponseModel<List<FailureVerify>> findByFaultIDFotList(@PathVariable long faultId) {
return ResponseHelper.buildResponse(failureVerifyServiceImpl.findByfaultId(faultId));
}
}
......@@ -64,7 +64,7 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur
* 发起审核
*/
@Transactional
public Object savemodel(FailureAuditDto model, ReginParams userInfo) {
public Object savemodel(FailureAuditDto model, ReginParams userInfo) throws Exception {
int condition = Integer.parseInt(model.getCondition());
model.setAuditTime(new Date());
......@@ -73,73 +73,76 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur
model.setAuditDepartment(userInfo.getDepartment().getDepartmentName());
FailureDetailsDto failureDetailsDto = failureDetailsService.queryBySeq(model.getFaultId());
try {
int auditResult = 0;
//根据审核的结果进行业务操作
if (condition == AuditResultEnum.AGREE.getCode() && userInfo.getDepartment().getSequenceNbr().equals(failureDetailsDto.getBizCode())) {
updateStatus(model, FailureStatuEnum.WAITING_AUDIT, userInfo,condition);
auditResult = AuditResultEnum.AGREE.getCode();
Boolean repairResult = updateStatus(model, FailureStatuEnum.WAITING_AUDIT, userInfo, condition);
} else if (condition == (AuditResultEnum.REFUSE.getCode())) {
updateStatus(model, FailureStatuEnum.REFUSE, userInfo,condition);
auditResult = AuditResultEnum.REFUSE.getCode();
Boolean repairResult = updateStatus(model, FailureStatuEnum.REFUSE, userInfo, condition);
} else if (condition == (AuditResultEnum.SEND_BACK.getCode())) {
updateStatus(model, FailureStatuEnum.WAITING_SUBMIT, userInfo,condition);
} else if (condition == AuditResultEnum.AGREE.getCode() ) {
updateStatus(model, FailureStatuEnum.WAITING_MAINTAIN, userInfo,condition);
auditResult = AuditResultEnum.SEND_BACK.getCode();
Boolean repairResult = updateStatus(model, FailureStatuEnum.WAITING_SUBMIT, userInfo, condition);
} else if (condition == AuditResultEnum.AGREE.getCode()) {
auditResult = AuditResultEnum.AGREE.getCode();
Boolean repairResult = updateStatus(model, FailureStatuEnum.WAITING_MAINTAIN, userInfo, condition);
}
FailureAuditDto withModel = this.createWithModel(model);
}catch (Exception e){
e.printStackTrace();
e.printStackTrace();
logger.info("添加故障审核信息到数据库失败");
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return false ;
if (ObjectUtils.isEmpty(auditResult)) {
throw new Exception("添加报修日志失败");
}
model.setAuditResult(auditResult);
return true;
FailureAuditDto failureAuditDto = this.createWithModel(model);
if (ObjectUtils.isEmpty(failureAuditDto)){
return false;
}
return true;
}
/**
* 修改故障保修单任务状态
*/
@Transactional
public Boolean updateStatus(FailureAuditDto model, FailureStatuEnum status, ReginParams userInfo,int condition) throws Exception {
public Boolean updateStatus(FailureAuditDto model, FailureStatuEnum status, ReginParams userInfo, int condition) throws Exception {
FailureDetailsDto failureDetailsDto = failureDetailsService.queryBySeq(model.getFaultId());
//当前角色部门id为应急指挥科的时候 并且同意时 不修改主表状态 依然为待审核
//当前角色部门id为维修部门的时候 修改状态
/*Map<String, Object> stringObjectMap = failureDetailsService.checkExcuteTaskAuthMap(failureDetailsDto.getSequenceNbr(), userInfo);
String name = stringObjectMap.get("name").toString();
if (name.contains(EMERGENCY_COMMAND)) {
failureDetailsDto.setCurrentStatus(failureDetailsDto.getCurrentStatus());
}*/
failureDetailsDto.setCurrentStatus(status.getCode());
failureDetailsDto.setSequenceNbr(model.getFaultId());
FailureDetailsDto failureDetailsDtos = failureDetailsService.updateWithModel(failureDetailsDto);
System.out.println(failureDetailsDtos);
String conditionText;
boolean result = failureDetailsService.checkExcuteTaskAuth(failureDetailsDto.getSequenceNbr(), userInfo);
if (result){
if (result) {
//添加报修日志
Long faultId = model.getFaultId();
Date processTime = model.getAuditTime();
String processDepartment = model.getAuditDepartment();
String processAuditor = model.getAuditor();
Integer processAuditorId =Integer.parseInt(userInfo.getUserModel().getUserId()) ;
Integer processAuditorId = Integer.parseInt(userInfo.getUserModel().getUserId());
String processAuditorCid = userInfo.getUserModel().getUserName();
Long auditDepartmentId = (userInfo.getDepartment().getSequenceNbr());
if (condition == AuditResultEnum.AGREE.getCode() ) {
if (condition == AuditResultEnum.AGREE.getCode()) {
conditionText = AuditResultEnum.AGREE.getName();
repairlog(faultId,processAuditor,processAuditorId,auditDepartmentId,processTime,processDepartment,conditionText,processAuditorCid);
repairlog(faultId, processAuditor, processAuditorId, auditDepartmentId, processTime, processDepartment, conditionText, processAuditorCid);
} else if (condition == AuditResultEnum.SEND_BACK.getCode()) {
conditionText = AuditResultEnum.SEND_BACK.getName();
repairlog(faultId,processAuditor,processAuditorId,auditDepartmentId,processTime,processDepartment,conditionText,processAuditorCid);
} else if (condition == AuditResultEnum.REFUSE.getCode()){
repairlog(faultId, processAuditor, processAuditorId, auditDepartmentId, processTime, processDepartment, conditionText, processAuditorCid);
} else if (condition == AuditResultEnum.REFUSE.getCode()) {
conditionText = AuditResultEnum.REFUSE.getName();
repairlog(faultId,processAuditor,processAuditorId,auditDepartmentId,processTime,processDepartment,conditionText,processAuditorCid);
repairlog(faultId, processAuditor, processAuditorId, auditDepartmentId, processTime, processDepartment, conditionText, processAuditorCid);
}
failureDetailsService.excuteTask(failureDetailsDto.getProcessId(), userInfo,condition+"");
if (failureDetailsService.excuteTask(failureDetailsDto.getProcessId(), userInfo, condition + "")){
return true;
}else {
throw new Exception("执行流程失败");
}
}
return false;
}
......@@ -148,8 +151,8 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur
* 添加报修日志
*/
@Transactional
public Boolean repairlog(Long faultId, String processAuditor,Integer processAuditorId,Long departmentId,Date processTime,
String processDepartment, String processResult,String processAuditorCid) {
public Boolean repairlog(Long faultId, String processAuditor, Integer processAuditorId, Long departmentId, Date processTime,
String processDepartment, String processResult, String processAuditorCid) {
FailureRepairlogDto failureRepairlogDto = new FailureRepairlogDto();
failureRepairlogDto.setFaultId(faultId);
failureRepairlogDto.setProcessAuditor(processAuditor);
......@@ -160,7 +163,7 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur
failureRepairlogDto.setProcessResult(processResult);
failureRepairlogDto.setProcessAuditorCid(processAuditorCid);
failureRepairlogService.createWithModel(failureRepairlogDto);
if (ObjectUtils.isNotEmpty(failureRepairlogDto)){
if (ObjectUtils.isNotEmpty(failureRepairlogDto)) {
return true;
}
return false;
......@@ -172,7 +175,7 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur
public List<FailureAudit> findByfaultId(Long faultId) {
Page<FailureAudit> page = new Page<>();
QueryWrapper<FailureAudit> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("fault_id", faultId).orderByDesc("submission_time");
queryWrapper.eq("fault_id", faultId).orderByDesc("audit_time");
return baseMapper.selectList(queryWrapper);
}
......
......@@ -85,25 +85,30 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
* 分页查询
*/
public IPage<FailureDetails> queryAllPage(long size, long current) {
QueryWrapper<FailureDetails> wrapper = new QueryWrapper<>();
/*QueryWrapper<FailureDetails> wrapper = new QueryWrapper<>();
wrapper.orderByDesc("submission_time");
IPage<FailureDetails> page = new Page<>(current, size);
return baseMapper.selectPage(page, wrapper);
}
public IPage<FailureDetails> queryForFailureDetailsPage(Page<FailureDetails> page, AgencyUserModel userInfo,
return baseMapper.selectPage(page, wrapper);*/
Page pages = new Page<>(current,size);
LambdaQueryWrapper<FailureDetails> lambdaQueryWrapper = new LambdaQueryWrapper();
lambdaQueryWrapper.orderByDesc(FailureDetails::getSubmissionTime);
IPage iPage = page(pages, lambdaQueryWrapper);
Page<FailureDetails> page = new Page();
page.setCurrent(current);
page.setSize(size);
page.setRecords(iPage.getRecords());
return page;
}
public IPage<FailureDetails> queryForFailureDetailsPage(Page<FailureDetails> page, ReginParams userInfo,
Integer type) {
if (type.equals(SELECY_ALL)) {
return this.queryAllPage(page.getSize(), page.getCurrent());
}
if (type.equals(SELECY_ISUBMIT)) {
return queryForPage(page, userInfo.getUserId());
return queryForPage(page, userInfo.getUserModel().getUserId());
}
return this.queryForWaitManage(page, userInfo.getUserId());
return this.queryForWaitManage(page, userInfo.getUserModel().getUserId());
}
/**
......@@ -113,11 +118,17 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
if (submissionPid == null) {
return null;
}
QueryWrapper<FailureDetails> wrapper = new QueryWrapper<>();
/* QueryWrapper<FailureDetails> wrapper = new QueryWrapper<>();
wrapper.eq("submission_pid", submissionPid);
wrapper.orderByDesc("submission_time");
IPage<FailureDetails> failureDetailsPage = new Page<>(page.getCurrent(), page.getSize());
return baseMapper.selectPage(failureDetailsPage, wrapper);
return baseMapper.selectPage(failureDetailsPage, wrapper);*/
Page pages = new Page<>(page.getCurrent(),page.getSize());
LambdaQueryWrapper<FailureDetails> lambdaQueryWrapper = new LambdaQueryWrapper();
lambdaQueryWrapper.eq(FailureDetails::getSubmissionPid,submissionPid);
lambdaQueryWrapper.orderByDesc(FailureDetails::getSubmissionTime);
return page(pages, lambdaQueryWrapper);
}
/**
......@@ -127,15 +138,19 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
if (submissionPid == null) {
return null;
}
QueryWrapper<FailureDetails> wrapper = new QueryWrapper<>();
LambdaQueryWrapper<FailureDetails> lambdaQueryWrapper = new LambdaQueryWrapper();
lambdaQueryWrapper.notIn(FailureDetails::getCurrentStatus,FailureStatuEnum.REFUSE.getCode(), FailureStatuEnum.FINISH.getCode()
).orderByDesc(FailureDetails::getSubmissionTime);
/*QueryWrapper<FailureDetails> wrapper = new QueryWrapper<>();
wrapper.eq("submission_pid", submissionPid);
wrapper.notIn("current_status", FailureStatuEnum.REFUSE.getCode(), FailureStatuEnum.FINISH.getCode(),
FailureStatuEnum.WAITING_AUDIT.getCode());
wrapper.orderByDesc("submission_time");
wrapper.orderByDesc("submission_time");*/
IPage<FailureDetails> failureDetailsPage = new Page<>(page.getCurrent(), page.getSize());
return baseMapper.selectPage(failureDetailsPage, wrapper);
return baseMapper.selectPage(failureDetailsPage, lambdaQueryWrapper);
}
/**
* 列表查询 示例
*/
......@@ -181,6 +196,7 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
}
/**
* 查询任务状态数量
*/
......@@ -249,7 +265,8 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
*
* @throws Exception
*/
public Object savemodel(FailureDetailsDto failureDetailsDto, ReginParams userInfo) {
@Transactional
public Object savemodel(FailureDetailsDto failureDetailsDto, ReginParams userInfo) throws Exception {
String businessKey = buildOrderNo();
JSONObject body = new JSONObject();
body.put("businessKey", businessKey);
......@@ -267,7 +284,7 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
// 拿到流程processId
failureDetailsDto.setProcessId(instance.getString("id"));
FailureDetailsDto model = null;
try {
// 发起主表流程 并添加至报修日志
failureDetailsDto.setSubmissionTime(new Date());
failureDetailsDto.setFailureCode(buildOrderNo());
......@@ -280,7 +297,7 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
failureDetailsDto.getAttachment());
}
// 添加至报修日志
try {
Long faultId = model.getSequenceNbr();
String processAuditor = model.getRecUserName();
Integer processAuditorId = model.getSubmissionPid();
......@@ -289,30 +306,14 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
Long departmentId = userInfo.getDepartment().getSequenceNbr();
Date processTime = model.getSubmissionTime();
String processAuditorCid = userInfo.getUserModel().getUserName();
repairlog(faultId, processAuditor, processAuditorId, departmentId, processTime, processDepartment,
processResult, processAuditorCid);
} catch (Exception e) {
e.printStackTrace();
logger.info("添加流程日志到数据库失败");
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return false;
}
} catch (Exception e) {
e.printStackTrace();
logger.info("添加故障维修信息到数据库失败");
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return false;
// return CommonResponseUtil.failure("添加失败");
}
try {
if (ObjectUtils.isNotEmpty(model)) {
excuteTask(instance.getString("id"), userInfo, null);
}
} catch (Exception e) {
return false;
}
repairlog(faultId, processAuditor,processAuditorId,departmentId, processTime, processDepartment, processResult,processAuditorCid);
if (excuteTask(instance.getString("id"), userInfo, null)){
return true;
}else {
throw new Exception("执行流程失败");
}
}
/**
......@@ -349,6 +350,11 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
} else {
workflowFeignService.pickupAndCompleteTask(map.get("taskId").toString(), conditionMap);
}
// 判断下一个节点是不是维修中,如果是则添加当前任务的执行人
String nextTaskId = checkIsInMaintenance(sequenceNbr);
if (nextTaskId != null) {
workflowFeignService.pickuptask(nextTaskId);
}
}
return true;
}
......@@ -358,7 +364,7 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
*
* @param sequenceNbr
* @param userInfo
* @param condition
* @return
*/
public boolean excuteTaskOnlyOperation(Long sequenceNbr, ReginParams userInfo) {
......
......@@ -4,8 +4,10 @@ import java.util.Date;
import java.util.List;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yeejoin.amos.boot.module.common.api.dto.FailureAuditDto;
import com.yeejoin.amos.boot.module.common.api.entity.FailureAudit;
import org.apache.commons.lang3.ObjectUtils;
import org.slf4j.Logger;
......@@ -45,15 +47,10 @@ import com.yeejoin.amos.boot.module.common.api.mapper.FailureMaintainMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFailureMaintainService;
/**
*
* 服务实现类
*
*
*
* @author system_generator
*
* @date 2021-08-04
*
*/
@Service
......@@ -81,18 +78,16 @@ public class FailureMaintainServiceImpl extends BaseService<FailureMaintainDto,
private final Logger logger = LoggerFactory.getLogger(FailureMaintainServiceImpl.class);
private static String[] MAINTENANCE_STATUS = { "维修完成", "维修中" };
private static String[] MAINTENANCE_STATUS = {"维修完成", "维修中"};
private static int MAINTENANCE_COMPLETE = 0;
private static int MAINTENANCE_ADD = 1;
private static String[] PROCESS_RESULT = { "验证通过", "验证未通过" };
private static String[] PROCESS_RESULT = {"验证通过", "验证未通过"};
/**
*
* 分页查询
*
*/
public Page<FailureMaintainDto> queryForFailureMaintainPage(Page<FailureMaintainDto> page) {
......@@ -102,9 +97,7 @@ public class FailureMaintainServiceImpl extends BaseService<FailureMaintainDto,
}
/**
*
* 列表查询 示例
*
*/
public List<FailureMaintainDto> queryForFailureMaintainList() {
......@@ -114,245 +107,158 @@ public class FailureMaintainServiceImpl extends BaseService<FailureMaintainDto,
}
/**
*
* 添加维修记录
*
*/
public Object savemodel(FailureMaintainDto failureMaintainDto, ReginParams userInfo) {
public Object savemodel(FailureMaintainDto failureMaintainDto, ReginParams userInfo) throws Exception {
String condition = failureMaintainDto.getCondition();
int conditionStatus = Integer.parseInt(condition);
if (conditionStatus == MAINTENANCE_ADD) {
boolean result = failureDetailsService.checkExcuteTaskAuth(failureMaintainDto.getFaultId(), userInfo);
if (!result) {
return false;
}
try {
failureMaintainDto.setMaintainMan(userInfo.getUserModel().getUserName());
failureMaintainDto.setMaintainTime(new Date());
failureMaintainDto.setDepartment(userInfo.getDepartment().getDepartmentName());
failureMaintainDto.setBizId(userInfo.getDepartment().getSequenceNbr());
failureMaintainDto.setRecoreType(RECORE_TYPE);
this.createWithModel(failureMaintainDto);
// 添加完成后修改保修单状态为维修中
FailureDetailsDto failureDetailsDto = failureDetailsService.queryBySeq(failureMaintainDto.getFaultId());
failureDetailsDto.setCurrentStatus(FailureStatuEnum.IN_MAINTENANCE.getCode());
failureDetailsService.updateWithModel(failureDetailsDto);
// 添加报修日志
String processResult = MAINTENANCE_STATUS[1];// 维修中
Integer processAuditorId = Integer.parseInt(failureMaintainDto.getRecUserId());
String processAuditorCid = userInfo.getUserModel().getUserName();
repairlog(failureMaintainDto.getFaultId(), failureMaintainDto.getMaintainMan(), processAuditorId,
userInfo.getDepartment().getSequenceNbr(), failureMaintainDto.getMaintainTime(),
failureMaintainDto.getDepartment(), processResult, processAuditorCid);
if (ObjectUtils.isNotEmpty(failureMaintainDto.getAttachment())) {
sourceFileServiceImpl.saveSourceFile(failureMaintainDto.getSequenceNbr(),
failureMaintainDto.getAttachment());
}
String nextTaskId = failureDetailsService.checkIsInMaintenance(failureDetailsDto.getSequenceNbr());
if (nextTaskId == null) {
try {
failureDetailsService.excuteTask(failureMaintainDto.getFaultId(), userInfo, condition);
}catch (Exception e) {
return false;
if (failureDetailsService.excuteTask(failureMaintainDto.getFaultId(), userInfo, condition)) {
} else {
throw new RuntimeException("执行维修中流程失败");
}
}else {
} else {
// 判断下一个节点是不是维修中,如果是则添加当前任务的执行人
workflowFeignService.pickuptask(nextTaskId);
}
} catch (Exception e) {
logger.info("添加故障维修信息到数据库失败");
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return false;
}
return true;
}
return this.updateStatus(failureMaintainDto, userInfo);
}
/**
*
* 更新状态维修完成
*
*/
public Boolean updateStatus(FailureMaintainDto failureMaintainDto, ReginParams userInfo) {
try {
public Boolean updateStatus(FailureMaintainDto failureMaintainDto, ReginParams userInfo) throws Exception {
String condition = failureMaintainDto.getCondition();
int conditionStatus = Integer.parseInt(condition);
if (conditionStatus == MAINTENANCE_COMPLETE) {
boolean result = failureDetailsService.checkExcuteTaskAuth(failureMaintainDto.getFaultId(), userInfo);
if (!result) {
return false;
}
failureMaintainDto.setMaintainMan(userInfo.getUserModel().getUserName());
failureMaintainDto.setMaintainTime(new Date());
failureMaintainDto.setDepartment(userInfo.getDepartment().getDepartmentName());
failureMaintainDto.setBizId(userInfo.getDepartment().getSequenceNbr());
failureMaintainDto.setRecoreType(RECORE_TYPE);
this.createWithModel(failureMaintainDto);
// 添加完成后修改保修单状态为维修完成
FailureDetailsDto failureDetailsDto = failureDetailsService.queryBySeq(failureMaintainDto.getFaultId());
failureDetailsDto.setCurrentStatus(FailureStatuEnum.WAITING_ACCEPTANCE.getCode());
this.updateWithModel(failureMaintainDto);
failureDetailsService.updateWithModel(failureDetailsDto);
// 添加报修日志
String processResult = MAINTENANCE_STATUS[0];// 维修完成
Integer processAuditorId = Integer.parseInt(failureMaintainDto.getRecUserId());
String processAuditorCid = userInfo.getUserModel().getUserName();
repairlog(failureMaintainDto.getFaultId(), failureMaintainDto.getMaintainMan(), processAuditorId,
userInfo.getDepartment().getSequenceNbr(), failureMaintainDto.getMaintainTime(),
failureMaintainDto.getDepartment(), processResult, processAuditorCid);
if (ObjectUtils.isNotEmpty(failureMaintainDto.getAttachment())) {
sourceFileServiceImpl.saveSourceFile(failureMaintainDto.getSequenceNbr(),
failureMaintainDto.getAttachment());
}
try {
failureDetailsService.excuteTask(failureMaintainDto.getFaultId(), userInfo,
failureMaintainDto.getCondition());
} catch (Exception e) {
return false;
if (failureDetailsService.excuteTask(failureMaintainDto.getFaultId(), userInfo, condition)) {
} else {
throw new RuntimeException("执行维修完成流程失败");
}
} catch (Exception e) {
logger.info("更新故障验收信息到数据库失败");
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return false;
}
return true;
}
/**
*
* 根据审核结果更新维修表
*
*/
public Boolean updateModel(FailureMaintainDto failureMaintainDto, Integer status, ReginParams userInfo) {
public Boolean updateModel(FailureMaintainDto failureMaintainDto, ReginParams userInfo) throws Exception {
boolean result = failureDetailsService.checkExcuteTaskAuth(failureMaintainDto.getFaultId(), userInfo);
FailureDetailsDto failureDetailsDto = failureDetailsService.queryBySeq(failureMaintainDto.getFaultId());
if (result) {
this.updateWithModel(failureMaintainDto);
// 根据status修改状态
String processResult = new String();
String condition = failureMaintainDto.getCondition();
int conditionStatus = Integer.parseInt(condition);
String condition = new String();
if (status == AuditResultEnum.AGREE.getCode() && userInfo.getDepartment().getSequenceNbr()
if (conditionStatus == AuditResultEnum.AGREE.getCode() && userInfo.getDepartment().getSequenceNbr()
== failureDetailsDto.getBizCode()) {// 同意状态为已完结
failureDetailsDto.setCurrentStatus(failureDetailsDto.getCurrentStatus());
failureDetailsService.updateWithModel(failureDetailsDto);
processResult = PROCESS_RESULT[0];
condition = AuditResultEnum.AGREE.getName();
} else if (status == AuditResultEnum.AGREE.getCode()) {// 同意状态为已完结
} else if (conditionStatus == AuditResultEnum.AGREE.getCode()) {// 同意状态为已完结
failureDetailsDto.setCurrentStatus(failureDetailsDto.getCurrentStatus());
failureDetailsService.updateWithModel(failureDetailsDto);
processResult = PROCESS_RESULT[0];
condition = AuditResultEnum.AGREE.getName();
} else {// 不同意状态为已拒绝
} else if (conditionStatus == AuditResultEnum.REFUSE.getCode()){// 不同意状态为已拒绝
failureDetailsDto.setCurrentStatus(FailureStatuEnum.REFUSE.getCode());
failureDetailsService.updateWithModel(failureDetailsDto);
processResult = PROCESS_RESULT[1];
condition = AuditResultEnum.REFUSE.getName();
}
// 添加报修日志
Integer processAuditorId = Integer.parseInt(failureMaintainDto.getRecUserId());
String processAuditorCid = userInfo.getUserModel().getUserName();
repairlog(failureMaintainDto.getFaultId(), failureMaintainDto.getMaintainMan(), processAuditorId,
Boolean repairlog = repairlog(failureMaintainDto.getFaultId(), failureMaintainDto.getMaintainMan(), processAuditorId,
userInfo.getDepartment().getSequenceNbr(), failureMaintainDto.getMaintainTime(),
failureMaintainDto.getDepartment(), processResult, processAuditorCid);
try {
failureDetailsService.excuteTask(failureMaintainDto.getFaultId(), userInfo, condition);
} catch (Exception e) {
return false;
if (ObjectUtils.isEmpty(repairlog)){
throw new RuntimeException("验收添加报修日志出错");
}
if (failureDetailsService.excuteTask(failureMaintainDto.getFaultId(), userInfo, condition)){
return true;
}else {
throw new RuntimeException("验收执行流程失败");
}
}
return false;
}
return false;
/**
* 根据FaultId查询
*/
public List<FailureMaintain> findByfaultId(Long faultId) {
LambdaQueryWrapper<FailureMaintain> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(FailureMaintain::getFaultId, faultId).orderByDesc(FailureMaintain::getMaintainTime);
return baseMapper.selectList(lambdaQueryWrapper);
}
/**
*
* 查询当前故障报修单的流程的审批历史节点
*
* @param sequenceNbr
*
* @return
*
*/
public List<Object> getProcessHistoryList(Long sequenceNbr) {
......@@ -364,44 +270,26 @@ public class FailureMaintainServiceImpl extends BaseService<FailureMaintainDto,
}
/**
*
* 添加报修日志
*
*/
@Transactional
public Boolean repairlog(Long faultId, String processAuditor, Integer processAuditorId, Long departmentId,
Date processTime,
String processDepartment, String processResult, String processAuditorCid) {
FailureRepairlogDto failureRepairlogDto = new FailureRepairlogDto();
failureRepairlogDto.setFaultId(faultId);
failureRepairlogDto.setProcessAuditor(processAuditor);
failureRepairlogDto.setProcessAuditorId(processAuditorId);
failureRepairlogDto.setProcessDepartmentId(departmentId);
failureRepairlogDto.setProcessTime(processTime);
failureRepairlogDto.setProcessDepartment(processDepartment);
failureRepairlogDto.setProcessResult(processResult);
failureRepairlogDto.setProcessAuditorCid(processAuditorCid);
failureRepairlogService.createWithModel(failureRepairlogDto);
if (ObjectUtils.isNotEmpty(failureRepairlogDto)) {
return true;
}
return false;
}
......
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.module.common.api.dto.FailureVerifyDto;
import com.yeejoin.amos.boot.module.common.api.dto.FailureDetailsDto;
import com.yeejoin.amos.boot.module.common.api.dto.FailureRepairlogDto;
import com.yeejoin.amos.boot.module.common.api.entity.FailureVerify;
import com.yeejoin.amos.boot.module.common.api.enums.AuditResultEnum;
import com.yeejoin.amos.boot.module.common.api.enums.FailureStatuEnum;
import com.yeejoin.amos.boot.module.common.api.mapper.FailureVerifyMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFailureVerifyService;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.Date;
import java.util.List;
/**
* 故障报修验收记录服务实现类
*
* @author system_generator
* @date 2021-08-18
*/
@Service
public class FailureVerifyServiceImpl extends BaseService<FailureVerifyDto, FailureVerify, FailureVerifyMapper> implements IFailureVerifyService {
@Autowired
FailureDetailsServiceImpl failureDetailsService;
@Autowired
FailureRepairlogServiceImpl failureRepairlogService;
/**
* 分页查询
*/
public Page<FailureVerifyDto> queryForFailureVerifyPage(Page<FailureVerifyDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<FailureVerifyDto> queryForFailureVerifyList() {
return this.queryForList("", false);
}
@Transactional
public Object savemodel(FailureVerifyDto model, ReginParams userInfo) throws Exception {
int condition = Integer.parseInt(model.getCondition());
model.setVerifyTime(new Date());
model.setVerifyDepartmentId(userInfo.getDepartment().getSequenceNbr());
model.setAcceptor(userInfo.getUserModel().getUserName());
model.setVerifyDepartment(userInfo.getDepartment().getDepartmentName());
FailureDetailsDto failureDetailsDto = failureDetailsService.queryBySeq(model.getFaultId());
int verifyResult = 0;
boolean result = failureDetailsService.checkExcuteTaskAuth(failureDetailsDto.getSequenceNbr(), userInfo);
if (!result) {
return new RuntimeException("无权限");
}
Boolean repairResult = null;
//根据验收的结果进行业务操作
/* if (condition == AuditResultEnum.AGREE.getCode() ) {
verifyResult = AuditResultEnum.AGREE.getCode();
Boolean repairResult = updateStatus(model, FailureStatuEnum.WAITING_ACCEPTANCE, userInfo, condition);
} else*/
if (condition == (AuditResultEnum.REFUSE.getCode())) {
verifyResult = AuditResultEnum.REFUSE.getCode();
repairResult = updateStatus(model, FailureStatuEnum.REFUSE, userInfo, condition);
} /*else if (condition == (AuditResultEnum.SEND_BACK.getCode())) {
verifyResult = AuditResultEnum.SEND_BACK.getCode();
Boolean repairResult = updateStatus(model, FailureStatuEnum.WAITING_SUBMIT, userInfo, condition);
} */ else if (condition == AuditResultEnum.AGREE.getCode()) {
verifyResult = AuditResultEnum.AGREE.getCode();
repairResult = updateStatus(model, FailureStatuEnum.FINISH, userInfo, condition);
}
model.setVerifyResult(verifyResult);
List<FailureVerify> byfaultId = findByfaultId(failureDetailsDto.getSequenceNbr());
/* if (byfaultId.size() == 0) {
this.createWithModel(model);
} else {*/
this.createWithModel(model);
if (!failureDetailsService.excuteTask(failureDetailsDto.getProcessId(), userInfo, condition + "")) {
throw new Exception("执行流程失败");
}
/* }*/
return true;
}
/**
* 修改故障保修单任务状态
*/
@Transactional
public Boolean updateStatus(FailureVerifyDto model, FailureStatuEnum status, ReginParams userInfo, int condition) throws Exception {
FailureDetailsDto failureDetailsDto = failureDetailsService.queryBySeq(model.getFaultId());
//当前角色部门id为应急指挥科的时候 并且同意时 不修改主表状态 依然为待验收
//当前角色部门id为维修部门的时候 修改状态
List<FailureVerify> byfaultId = findByfaultId(failureDetailsDto.getSequenceNbr());
if (byfaultId.size() != 0) {
failureDetailsDto.setCurrentStatus(status.getCode());
}
failureDetailsDto.setSequenceNbr(model.getFaultId());
failureDetailsService.updateWithModel(failureDetailsDto);
String conditionText;
//添加报修日志
Long faultId = model.getFaultId();
Date processTime = model.getVerifyTime();
String processDepartment = model.getVerifyDepartment();
Integer processAuditorId = Integer.parseInt(userInfo.getUserModel().getUserId());
String processVerifyor = model.getAcceptor();
String processAuditorCid = userInfo.getUserModel().getUserName();
Long auditDepartmentId = (userInfo.getDepartment().getSequenceNbr());
Boolean repairlog = null;
if (condition == AuditResultEnum.AGREE.getCode()) {
conditionText = AuditResultEnum.AGREE.getName();
repairlog = repairlog(faultId, processVerifyor, processAuditorId, auditDepartmentId, processTime, processDepartment, conditionText, processAuditorCid);
} else if (condition == AuditResultEnum.REFUSE.getCode()) {
conditionText = AuditResultEnum.REFUSE.getName();
repairlog = repairlog(faultId, processVerifyor, processAuditorId, auditDepartmentId, processTime, processDepartment, conditionText, processAuditorCid);
}
if (!repairlog) {
throw new Exception("执行流程失败");
} else {
return true;
}
}
/**
* 添加报修日志
*/
@Transactional
public Boolean repairlog(Long faultId, String processAuditor, Integer processAuditorId, Long departmentId, Date processTime,
String processDepartment, String processResult, String processVerifyorCid) {
FailureRepairlogDto failureRepairlogDto = new FailureRepairlogDto();
failureRepairlogDto.setFaultId(faultId);
failureRepairlogDto.setProcessAuditor(processAuditor);
failureRepairlogDto.setProcessAuditorId(processAuditorId);
failureRepairlogDto.setProcessDepartmentId(departmentId);
failureRepairlogDto.setProcessTime(processTime);
failureRepairlogDto.setProcessDepartment(processDepartment);
failureRepairlogDto.setProcessResult(processResult);
failureRepairlogDto.setProcessAuditorCid(processVerifyorCid);
failureRepairlogService.createWithModel(failureRepairlogDto);
if (ObjectUtils.isNotEmpty(failureRepairlogDto)) {
return true;
}
return false;
}
/**
* 根据FaultId查询
*/
public List<FailureVerify> findByfaultId(Long faultId) {
Page<FailureVerify> page = new Page<>();
QueryWrapper<FailureVerify> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("fault_id", faultId).orderByDesc("verify_time");
return baseMapper.selectList(queryWrapper);
}
public FailureVerify findByFaultId(Long faultId) {
LambdaQueryWrapper<FailureVerify> wrapper = new LambdaQueryWrapper<FailureVerify>();
wrapper.eq(FailureVerify::getIsDelete, false);
wrapper.eq(FailureVerify::getFaultId, faultId);
wrapper.orderByAsc(FailureVerify::getVerifyTime);
wrapper.last("LIMIT 1");
return this.baseMapper.selectOne(wrapper);
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment