2024-08-13 设备模块+open模块 PC报修维修审核流程修改+手持报修维修接口

master
A0010407 11 months ago
parent 24f317f286
commit 1e9841a700

@ -6,8 +6,10 @@ import com.op.common.core.web.page.TableDataInfo;
import com.op.common.security.annotation.RequiresPermissions; import com.op.common.security.annotation.RequiresPermissions;
import com.op.device.domain.*; import com.op.device.domain.*;
import com.op.device.domain.dto.PDADTO; import com.op.device.domain.dto.PDADTO;
import com.op.device.domain.dto.UpKeepOrderDTO;
import com.op.device.service.IDevicePDAService; import com.op.device.service.IDevicePDAService;
import com.op.device.service.IEquRepairOrderService; import com.op.device.service.IEquRepairOrderService;
import com.op.device.service.IEquRepairWorkOrderService;
import com.op.device.service.IEquSparepartsInOutService; import com.op.device.service.IEquSparepartsInOutService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -33,6 +35,9 @@ public class DevicePDAController extends BaseController {
@Autowired @Autowired
private IEquSparepartsInOutService equSparepartsInOutService; private IEquSparepartsInOutService equSparepartsInOutService;
@Autowired
private IEquRepairWorkOrderService equRepairWorkOrderService;
/** /**
* list * list
@ -215,4 +220,43 @@ public class DevicePDAController extends BaseController {
public AjaxResult sparePartsInOutStorage(@RequestBody EquSparepartsInOut equSparepartsInOut) { public AjaxResult sparePartsInOutStorage(@RequestBody EquSparepartsInOut equSparepartsInOut) {
return equSparepartsInOutService.insertEquSparepartsInOut(equSparepartsInOut); return equSparepartsInOutService.insertEquSparepartsInOut(equSparepartsInOut);
} }
//报修页面查询
@GetMapping("/getBXList")
public AjaxResult getBXList(EquRepairOrder equRepairOrder) {
return devicePDAService.getBXList(equRepairOrder);
}
/**
*
*/
@GetMapping(value = "/getBXDetail/{orderId}")
public AjaxResult getBXDetail(@PathVariable("orderId") String orderId) {
return success(equRepairOrderService.selectEquRepairOrderByOrderId(orderId));
}
/**
*
*/
@PutMapping("/checkBX")
public AjaxResult checkEquRepairOrder(@RequestBody EquRepairOrder equRepairOrder) {
return toAjax(equRepairOrderService.checkEquRepairOrder(equRepairOrder));
}
/**
*
*
* @param upKeepOrderDTO
* @return
*/
@PostMapping("/checkWX")
public AjaxResult checkWX(@RequestBody UpKeepOrderDTO upKeepOrderDTO) {
return equRepairWorkOrderService.checkRepairWorkOrder(upKeepOrderDTO);
}
//维修页面查询
@GetMapping("/getWXList")
public AjaxResult getWXList(EquRepairWorkOrder equRepairWorkOrder) {
return devicePDAService.getWXList(equRepairWorkOrder);
}
} }

@ -141,14 +141,14 @@ public class EquRepairWorkOrderController extends BaseController {
} }
/** /**
* *
* *
* @param upKeepOrderDTO * @param upKeepOrderDTO
* @return * @return
*/ */
@RequiresPermissions("device:repairOrder:inspect") @RequiresPermissions("device:repairOrder:checkRepairWorkOrder")
@PostMapping("/subInspect") @PostMapping("/checkRepairWorkOrder")
public AjaxResult subInspect(@RequestBody UpKeepOrderDTO upKeepOrderDTO) { public AjaxResult checkRepairWorkOrder(@RequestBody UpKeepOrderDTO upKeepOrderDTO) {
return equRepairWorkOrderService.subInspect(upKeepOrderDTO); return equRepairWorkOrderService.checkRepairWorkOrder(upKeepOrderDTO);
} }
} }

@ -37,7 +37,7 @@ public class EquUpkeepOrderController extends BaseController {
* @param upKeepOrderDTO * @param upKeepOrderDTO
* @return * @return
*/ */
@RequiresPermissions("device:upkeepOrder:add") @RequiresPermissions("device:upkeepOrder:subInspect")
@PostMapping("/subInspect") @PostMapping("/subInspect")
public AjaxResult subInspect(@RequestBody UpKeepOrderDTO upKeepOrderDTO) { public AjaxResult subInspect(@RequestBody UpKeepOrderDTO upKeepOrderDTO) {
return equUpkeepOrderService.subInspect(upKeepOrderDTO); return equUpkeepOrderService.subInspect(upKeepOrderDTO);

@ -87,7 +87,7 @@ public class EquRepairOrder extends BaseEntity {
private String orderConnection; private String orderConnection;
/** /**
* *
*/ */
@Excel(name = "处理状态") @Excel(name = "处理状态")
private String orderStatus; private String orderStatus;
@ -176,6 +176,12 @@ public class EquRepairOrder extends BaseEntity {
@Excel(name = "报修去向") @Excel(name = "报修去向")
private String repairDestination; private String repairDestination;
/**
*
*/
@Excel(name = "审核意见")
private String auditOpinion;
/** /**
* *
*/ */
@ -628,7 +634,7 @@ public class EquRepairOrder extends BaseEntity {
this.orderTimeStart = orderTimeStart; this.orderTimeStart = orderTimeStart;
} }
public String getOrdeTimeEnd() { public String getOrderTimeEnd() {
return orderTimeEnd; return orderTimeEnd;
} }
@ -636,6 +642,14 @@ public class EquRepairOrder extends BaseEntity {
this.orderTimeEnd = orderTimeEnd; this.orderTimeEnd = orderTimeEnd;
} }
//审核意见
public String getAuditOpinion() {
return auditOpinion;
}
public void setAuditOpinion(String auditOpinion) {
this.auditOpinion = auditOpinion;
}
@Override @Override
public String toString() { public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)

@ -135,9 +135,15 @@ public class EquRepairWorkOrder extends BaseEntity {
@Excel(name = "故障开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Excel(name = "故障开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date faultStartTime; private Date faultStartTime;
@Excel(name = "结果检验") @Excel(name = "结果检验")//也就是审核
private String resultInspect; private String resultInspect;
@Excel(name = "备注")
private String remark;
@Excel(name = "审核意见")
private String auditOpinion;
/////////////////////////////////////////////////////////设备表字段 /////////////////////////////////////////////////////////设备表字段
@Excel(name = "设备名称") @Excel(name = "设备名称")
private String equipmentName;//设备名称 private String equipmentName;//设备名称
@ -330,7 +336,6 @@ public class EquRepairWorkOrder extends BaseEntity {
return workshopName; return workshopName;
} }
//维修工单 //维修工单
public void setWorkId(String workId) { public void setWorkId(String workId) {
this.workId = workId; this.workId = workId;
@ -616,6 +621,18 @@ public class EquRepairWorkOrder extends BaseEntity {
public String getResultInspect() { return resultInspect; } public String getResultInspect() { return resultInspect; }
public void setResultInspect(String resultInspect) { this.resultInspect = resultInspect; } public void setResultInspect(String resultInspect) { this.resultInspect = resultInspect; }
//备注
public String getRemark() { return remark; }
public void setRemark(String remark) { this.remark = remark; }
//新增 审核意见
public String getAuditOpinion() {
return auditOpinion;
}
public void setAuditOpinion(String auditOpinion) {
this.auditOpinion = auditOpinion;
}
//委外 //委外
public void setOutSourceReason(String outSourceReason) { public void setOutSourceReason(String outSourceReason) {
this.outSourceReason = outSourceReason; this.outSourceReason = outSourceReason;

@ -24,93 +24,49 @@ public class EquSpareApply extends BaseEntity {
*/ */
private String applyId; private String applyId;
/** @Excel(name = "申领单号")
*
*/
@Excel(name = "单号")
private String applyCode; private String applyCode;
/**
*
*/
@Excel(name = "备品备件编码") @Excel(name = "备品备件编码")
private String spareCode; private String spareCode;
/**
*
*/
@Excel(name = "备品备件名称") @Excel(name = "备品备件名称")
private String spareName; private String spareName;
/**
*
*/
@Excel(name = "规格型号") @Excel(name = "规格型号")
private String spareModel; private String spareModel;
/**
*
*/
@Excel(name = "数量") @Excel(name = "数量")
private BigDecimal spareQuantity; private BigDecimal spareQuantity;
/**
* 使线
*/
@Excel(name = "使用组线") @Excel(name = "使用组线")
private String spareGroupLine; private String spareGroupLine;
/**
* 使
*/
@Excel(name = "使用设备") @Excel(name = "使用设备")
private String spareUseEquipment; private String spareUseEquipment;
/**
*
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "领用时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Excel(name = "领用时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date applyTime; private Date applyTime;
/**
*
*/
@Excel(name = "申领人") @Excel(name = "申领人")
private String applyPeople; private String applyPeople;
/**
*
*/
@Excel(name = "批准人") @Excel(name = "批准人")
private String applyApprovePeople; private String applyApprovePeople;
/**
* 1
*/
@Excel(name = "备用字段1") @Excel(name = "备用字段1")
private String attr1; private String attr1;
/**
* 2
*/
@Excel(name = "备用字段2") @Excel(name = "备用字段2")
private String attr2; private String attr2;
/**
* 3
*/
@Excel(name = "备用字段3") @Excel(name = "备用字段3")
private String attr3; private String attr3;
/** @Excel(name = "删除标志")
*
*/
private String delFlag; private String delFlag;
/**
*
*/
@Excel(name = "工厂号") @Excel(name = "工厂号")
private String factoryCode; private String factoryCode;
@ -123,59 +79,39 @@ public class EquSpareApply extends BaseEntity {
// 创建日期结束 // 创建日期结束
private String applyTimeEnd; private String applyTimeEnd;
//新增字段 //工单编码
/**
*
*/
private String workCode; private String workCode;
/**
* code() //关联上级code(保养)
*/
private String parentCode; private String parentCode;
/**
* //领用类型
*/
private String applyType; private String applyType;
//批量新增申领记录 //批量新增申领记录
private List<EquSpareApply> spareApplyLists; private List<EquSpareApply> spareApplyLists;
/**
* id //备品备件台账 主键id
*/
private String storageId; private String storageId;
/**
* //总数量
*/
private BigDecimal amount; private BigDecimal amount;
/** //物料号
*
*/
@Excel(name = "物料号")
private String materialCode; private String materialCode;
/** //物料描述
*
*/
@Excel(name = "物料描述")
private String materialDesc; private String materialDesc;
/** //单价
*
*/
@Excel(name = "单价")
private BigDecimal unitPrice; private BigDecimal unitPrice;
/** //总价
*
*/
@Excel(name = "总价")
private BigDecimal totalPrice; private BigDecimal totalPrice;
public void setUnitPrice(BigDecimal unitPrice) { public void setUnitPrice(BigDecimal unitPrice) {
this.unitPrice = unitPrice; this.unitPrice = unitPrice;
} }
public BigDecimal getUnitPrice() { public BigDecimal getUnitPrice() {
return unitPrice; return unitPrice;
} }
@ -183,7 +119,6 @@ public class EquSpareApply extends BaseEntity {
public void setTotalPrice(BigDecimal totalPrice) { public void setTotalPrice(BigDecimal totalPrice) {
this.totalPrice = totalPrice; this.totalPrice = totalPrice;
} }
public BigDecimal getTotalPrice() { public BigDecimal getTotalPrice() {
return totalPrice; return totalPrice;
} }
@ -191,7 +126,6 @@ public class EquSpareApply extends BaseEntity {
public void setMaterialCode(String materialCode) { public void setMaterialCode(String materialCode) {
this.materialCode = materialCode; this.materialCode = materialCode;
} }
public String getMaterialCode() { public String getMaterialCode() {
return materialCode; return materialCode;
} }
@ -199,7 +133,6 @@ public class EquSpareApply extends BaseEntity {
public void setMaterialDesc(String materialDesc) { public void setMaterialDesc(String materialDesc) {
this.materialDesc = materialDesc; this.materialDesc = materialDesc;
} }
public String getMaterialDesc() { public String getMaterialDesc() {
return materialDesc; return materialDesc;
} }
@ -207,7 +140,6 @@ public class EquSpareApply extends BaseEntity {
public List<Date> getApplyTimeArray() { public List<Date> getApplyTimeArray() {
return applyTimeArray; return applyTimeArray;
} }
public void setApplyTimeArray(List<Date> applyTimeArray) { public void setApplyTimeArray(List<Date> applyTimeArray) {
this.applyTimeArray = applyTimeArray; this.applyTimeArray = applyTimeArray;
} }
@ -215,7 +147,6 @@ public class EquSpareApply extends BaseEntity {
public String getApplyTimeStart() { public String getApplyTimeStart() {
return applyTimeStart; return applyTimeStart;
} }
public void setApplyTimeStart(String createTimeStart) { public void setApplyTimeStart(String createTimeStart) {
this.applyTimeStart = createTimeStart; this.applyTimeStart = createTimeStart;
} }
@ -223,7 +154,6 @@ public class EquSpareApply extends BaseEntity {
public String getApplyTimeEnd() { public String getApplyTimeEnd() {
return applyTimeEnd; return applyTimeEnd;
} }
public void setApplyTimeEnd(String applyTimeEnd) { public void setApplyTimeEnd(String applyTimeEnd) {
this.applyTimeEnd = applyTimeEnd; this.applyTimeEnd = applyTimeEnd;
} }
@ -231,7 +161,6 @@ public class EquSpareApply extends BaseEntity {
public void setApplyId(String applyId) { public void setApplyId(String applyId) {
this.applyId = applyId; this.applyId = applyId;
} }
public String getApplyId() { public String getApplyId() {
return applyId; return applyId;
} }
@ -239,7 +168,6 @@ public class EquSpareApply extends BaseEntity {
public void setApplyCode(String applyCode) { public void setApplyCode(String applyCode) {
this.applyCode = applyCode; this.applyCode = applyCode;
} }
public String getApplyCode() { public String getApplyCode() {
return applyCode; return applyCode;
} }
@ -247,7 +175,6 @@ public class EquSpareApply extends BaseEntity {
public void setSpareCode(String spareCode) { public void setSpareCode(String spareCode) {
this.spareCode = spareCode; this.spareCode = spareCode;
} }
public String getSpareCode() { public String getSpareCode() {
return spareCode; return spareCode;
} }
@ -255,7 +182,6 @@ public class EquSpareApply extends BaseEntity {
public void setSpareName(String spareName) { public void setSpareName(String spareName) {
this.spareName = spareName; this.spareName = spareName;
} }
public String getSpareName() { public String getSpareName() {
return spareName; return spareName;
} }
@ -263,7 +189,6 @@ public class EquSpareApply extends BaseEntity {
public void setSpareModel(String spareModel) { public void setSpareModel(String spareModel) {
this.spareModel = spareModel; this.spareModel = spareModel;
} }
public String getSpareModel() { public String getSpareModel() {
return spareModel; return spareModel;
} }
@ -271,7 +196,6 @@ public class EquSpareApply extends BaseEntity {
public void setSpareQuantity(BigDecimal spareQuantity) { public void setSpareQuantity(BigDecimal spareQuantity) {
this.spareQuantity = spareQuantity; this.spareQuantity = spareQuantity;
} }
public BigDecimal getSpareQuantity() { public BigDecimal getSpareQuantity() {
return spareQuantity; return spareQuantity;
} }
@ -279,7 +203,6 @@ public class EquSpareApply extends BaseEntity {
public void setSpareGroupLine(String spareGroupLine) { public void setSpareGroupLine(String spareGroupLine) {
this.spareGroupLine = spareGroupLine; this.spareGroupLine = spareGroupLine;
} }
public String getSpareGroupLine() { public String getSpareGroupLine() {
return spareGroupLine; return spareGroupLine;
} }
@ -287,7 +210,6 @@ public class EquSpareApply extends BaseEntity {
public void setSpareUseEquipment(String spareUseEquipment) { public void setSpareUseEquipment(String spareUseEquipment) {
this.spareUseEquipment = spareUseEquipment; this.spareUseEquipment = spareUseEquipment;
} }
public String getSpareUseEquipment() { public String getSpareUseEquipment() {
return spareUseEquipment; return spareUseEquipment;
} }
@ -295,7 +217,6 @@ public class EquSpareApply extends BaseEntity {
public void setApplyTime(Date applyTime) { public void setApplyTime(Date applyTime) {
this.applyTime = applyTime; this.applyTime = applyTime;
} }
public Date getApplyTime() { public Date getApplyTime() {
return applyTime; return applyTime;
} }
@ -303,7 +224,6 @@ public class EquSpareApply extends BaseEntity {
public void setApplyPeople(String applyPeople) { public void setApplyPeople(String applyPeople) {
this.applyPeople = applyPeople; this.applyPeople = applyPeople;
} }
public String getApplyPeople() { public String getApplyPeople() {
return applyPeople; return applyPeople;
} }
@ -311,7 +231,6 @@ public class EquSpareApply extends BaseEntity {
public void setApplyApprovePeople(String applyApprovePeople) { public void setApplyApprovePeople(String applyApprovePeople) {
this.applyApprovePeople = applyApprovePeople; this.applyApprovePeople = applyApprovePeople;
} }
public String getApplyApprovePeople() { public String getApplyApprovePeople() {
return applyApprovePeople; return applyApprovePeople;
} }
@ -319,7 +238,6 @@ public class EquSpareApply extends BaseEntity {
public void setAttr1(String attr1) { public void setAttr1(String attr1) {
this.attr1 = attr1; this.attr1 = attr1;
} }
public String getAttr1() { public String getAttr1() {
return attr1; return attr1;
} }
@ -327,7 +245,6 @@ public class EquSpareApply extends BaseEntity {
public void setAttr2(String attr2) { public void setAttr2(String attr2) {
this.attr2 = attr2; this.attr2 = attr2;
} }
public String getAttr2() { public String getAttr2() {
return attr2; return attr2;
} }
@ -335,7 +252,6 @@ public class EquSpareApply extends BaseEntity {
public void setAttr3(String attr3) { public void setAttr3(String attr3) {
this.attr3 = attr3; this.attr3 = attr3;
} }
public String getAttr3() { public String getAttr3() {
return attr3; return attr3;
} }
@ -343,7 +259,6 @@ public class EquSpareApply extends BaseEntity {
public void setDelFlag(String delFlag) { public void setDelFlag(String delFlag) {
this.delFlag = delFlag; this.delFlag = delFlag;
} }
public String getDelFlag() { public String getDelFlag() {
return delFlag; return delFlag;
} }
@ -351,81 +266,48 @@ public class EquSpareApply extends BaseEntity {
public void setFactoryCode(String factoryCode) { public void setFactoryCode(String factoryCode) {
this.factoryCode = factoryCode; this.factoryCode = factoryCode;
} }
public String getFactoryCode() { public String getFactoryCode() {
return factoryCode; return factoryCode;
} }
//新增
/**
* ()
*/
public String getWorkCode() { public String getWorkCode() {
return this.workCode; return this.workCode;
} }
/**
* ()
*/
public void setWorkCode(String workCode) { public void setWorkCode(String workCode) {
this.workCode = workCode; this.workCode = workCode;
} }
/**
* code()
*/
public String getParentCode() { public String getParentCode() {
return this.parentCode; return this.parentCode;
} }
/**
* code()
*/
public void setParentCode(String parentCode) { public void setParentCode(String parentCode) {
this.parentCode = parentCode; this.parentCode = parentCode;
} }
/**
*
*/
public String getApplyType() { public String getApplyType() {
return this.applyType; return this.applyType;
} }
/**
*
*/
public void setApplyType(String applyType) { public void setApplyType(String applyType) {
this.applyType = applyType; this.applyType = applyType;
} }
//批量新增申领记录
public List<EquSpareApply> getSpareApplyLists() { public List<EquSpareApply> getSpareApplyLists() {
return this.spareApplyLists; return this.spareApplyLists;
} }
/**
*
*/
public void setSpareApplyLists(List<EquSpareApply> spareApplyLists) { public void setSpareApplyLists(List<EquSpareApply> spareApplyLists) {
this.spareApplyLists = spareApplyLists; this.spareApplyLists = spareApplyLists;
} }
//id
public void setStorageId(String storageId) { public void setStorageId(String storageId) {
this.storageId = storageId; this.storageId = storageId;
} }
public String getStorageId() { public String getStorageId() {
return storageId; return storageId;
} }
//总数量
public void setAmount(BigDecimal amount) { public void setAmount(BigDecimal amount) {
this.amount = amount; this.amount = amount;
} }
public BigDecimal getAmount() { public BigDecimal getAmount() {
return amount; return amount;
} }

@ -1,5 +1,7 @@
package com.op.device.domain.dto; package com.op.device.domain.dto;
import com.op.common.core.annotation.Excel;
import java.util.List; import java.util.List;
// 保养工单DTO // 保养工单DTO
@ -10,6 +12,9 @@ public class UpKeepOrderDTO {
private String inspect; private String inspect;
//新增 审核意见
private String auditOpinion;
public String getInspect() { public String getInspect() {
return inspect; return inspect;
} }
@ -33,4 +38,13 @@ public class UpKeepOrderDTO {
public void setOrderCodes(List<String> orderCodes) { public void setOrderCodes(List<String> orderCodes) {
this.orderCodes = orderCodes; this.orderCodes = orderCodes;
} }
//新增 审核意见
public String getAuditOpinion() {
return auditOpinion;
}
public void setAuditOpinion(String auditOpinion) {
this.auditOpinion = auditOpinion;
}
} }

@ -118,4 +118,7 @@ public interface EquRepairWorkOrderMapper {
//更新结果检验 //更新结果检验
void updateResultInspect(EquRepairWorkOrder equRepairWorkOrder); void updateResultInspect(EquRepairWorkOrder equRepairWorkOrder);
//回退维修工单
void returnRepairWorkOrder(EquRepairWorkOrder dto);
} }

@ -3,6 +3,7 @@ package com.op.device.service;
import com.op.common.core.web.domain.AjaxResult; import com.op.common.core.web.domain.AjaxResult;
import com.op.device.domain.*; import com.op.device.domain.*;
import com.op.device.domain.dto.PDADTO; import com.op.device.domain.dto.PDADTO;
import com.op.device.domain.dto.UpKeepOrderDTO;
import java.util.List; import java.util.List;
@ -140,4 +141,12 @@ public interface IDevicePDAService {
AjaxResult selectEquFaultReasonList(EquFaultReason equFaultReason); AjaxResult selectEquFaultReasonList(EquFaultReason equFaultReason);
AjaxResult selectSpareDetailBySpareCode(String spareCode); AjaxResult selectSpareDetailBySpareCode(String spareCode);
//获取报修列表
AjaxResult getBXList(EquRepairOrder equRepairOrder);
AjaxResult getWXList(EquRepairWorkOrder equRepairWorkOrder);
//故障维修审核
// AjaxResult checkWX(UpKeepOrderDTO upKeepOrderDTO);
} }

@ -71,5 +71,6 @@ public interface IEquRepairWorkOrderService {
public int applyEquOutsourceWork(EquRepairWorkOrder equRepairWorkOrder); public int applyEquOutsourceWork(EquRepairWorkOrder equRepairWorkOrder);
//维修故障检验 //维修故障检验
AjaxResult subInspect(UpKeepOrderDTO upKeepOrderDTO); AjaxResult checkRepairWorkOrder(UpKeepOrderDTO upKeepOrderDTO);
} }

@ -4,6 +4,7 @@ import com.alibaba.fastjson2.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DS;
import com.op.common.core.context.SecurityContextHolder; import com.op.common.core.context.SecurityContextHolder;
import com.op.common.core.domain.BaseFileData; import com.op.common.core.domain.BaseFileData;
import com.op.common.core.exception.auth.NotLoginException;
import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.DateUtils;
import com.op.common.core.utils.StringUtils; import com.op.common.core.utils.StringUtils;
import com.op.common.core.utils.uuid.IdUtils; import com.op.common.core.utils.uuid.IdUtils;
@ -269,7 +270,7 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
if (repairOrder == null) { if (repairOrder == null) {
return error(500, "未查询到报修单信息!"); return error(500, "未查询到报修单信息!");
} else { } else {
if (!repairOrder.getOrderStatus().equals("待审核")) { if (!repairOrder.getOrderStatus().equals("2")) {
return error(500, "报修单已审核,不可修改记录!"); return error(500, "报修单已审核,不可修改记录!");
} }
} }
@ -391,7 +392,7 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
if (equOrder.getPlanType().equals("maintenance")) { if (equOrder.getPlanType().equals("maintenance")) {
equRepairOrder.setOrderSource("保养"); equRepairOrder.setOrderSource("保养");
} }
equRepairOrder.setOrderStatus("待审核"); equRepairOrder.setOrderStatus("2");
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName"; String key = "#header.poolName";
equRepairOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_", "")); equRepairOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_", ""));
@ -562,7 +563,7 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
equRepairOrder.setCreateBy(SecurityUtils.getUsername()); equRepairOrder.setCreateBy(SecurityUtils.getUsername());
equRepairOrder.setOrderRepairmanCode(SecurityUtils.getUsername()); equRepairOrder.setOrderRepairmanCode(SecurityUtils.getUsername());
equRepairOrder.setOrderTime(DateUtils.getNowDate()); equRepairOrder.setOrderTime(DateUtils.getNowDate());
equRepairOrder.setOrderStatus("待审核"); equRepairOrder.setOrderStatus("2");
equRepairOrder.setOrderSource("手持PDA"); equRepairOrder.setOrderSource("手持PDA");
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName"; String key = "#header.poolName";
@ -809,22 +810,23 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
try { try {
//不停机 那么实际停机开始时间和实际停机结束时间都没有 //不停机 那么实际停机开始时间和实际停机结束时间都没有
//如果停机 那么实际停机时间就是传入的时间 //如果停机 那么实际停机时间就是传入的时间
equRepairWorkOrder.setWorkStartTime(DateUtils.getNowDate()); //如果这是被驳回的维修单 维修单状态变为待维修 那么维修开始时间 实际停机时间 还是原来的那个
if (equRepairWorkOrder.getWorkDownMachine().equals("1")) { if(equRepairWorkOrder == null){
equRepairWorkOrder.setActualDownStartTime(DateUtils.getNowDate()); equRepairWorkOrder.setWorkStartTime(DateUtils.getNowDate());
if (equRepairWorkOrder.getWorkDownMachine().equals("1")) {
equRepairWorkOrder.setActualDownStartTime(DateUtils.getNowDate());
}
} }
equRepairWorkOrder.setUpdateBy(SecurityUtils.getUsername()); equRepairWorkOrder.setUpdateBy(SecurityUtils.getUsername());
equRepairWorkOrder.setUpdateTime(DateUtils.getNowDate()); equRepairWorkOrder.setUpdateTime(DateUtils.getNowDate());
//维修中 //维修中
equRepairWorkOrder.setWorkStatus("2"); equRepairWorkOrder.setWorkStatus("2");
//维修工单里面的设备名 简化TODO
EquRepairWorkOrder list = equRepairWorkOrderMapper.selectEquRepairWorkOrderByWorkId(equRepairWorkOrder.getWorkId()); EquRepairWorkOrder list = equRepairWorkOrderMapper.selectEquRepairWorkOrderByWorkId(equRepairWorkOrder.getWorkId());
//修改设备状态 改为维修中 //修改设备状态 改为维修中
EquEquipment equEquipment = new EquEquipment(); EquEquipment equEquipment = new EquEquipment();
equEquipment.setEquipmentCode(list.getEquipmentCode()); equEquipment.setEquipmentCode(list.getEquipmentCode());
equEquipment.setEquipmentStatus("2"); equEquipment.setEquipmentStatus("2");
equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment); equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment);
equRepairWorkOrderMapper.updateEquRepairWorkOrder(equRepairWorkOrder); equRepairWorkOrderMapper.updateEquRepairWorkOrder(equRepairWorkOrder);
return success("提交成功,设备开始维修!"); return success("提交成功,设备开始维修!");
} catch (Exception e) { } catch (Exception e) {
@ -912,143 +914,150 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
@Override @Override
@DS("#header.poolName") @DS("#header.poolName")
public AjaxResult updateMaintenanceRecords(EquRepairWorkOrder equRepairWorkOrder) { public AjaxResult updateMaintenanceRecords(EquRepairWorkOrder equRepairWorkOrder) {
try { EquEquipment equ = equEquipmentMapper.selectEquEquipmentByEquEquipmentCode(equRepairWorkOrder.getEquipmentCode());
////0.时间 if (equ == null) {
Date date = DateUtils.getNowDate(); //不应该用登录的 todo
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss"); throw new NotLoginException("设备表中不存在此设备,请确认!");
String formattedDate = dateFormat.format(date); }
////1.判断是否停机 ////0.时间
EquRepairWorkOrder list = equRepairWorkOrderMapper.selectEquRepairWorkOrderByWorkId(equRepairWorkOrder.getWorkId()); Date date = DateUtils.getNowDate();
if (list.getWorkDownMachine().equals("1")) { SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
equRepairWorkOrder.setActualDownEndTime(date);//维修真正停机时间 String formattedDate = dateFormat.format(date);
////1.判断是否停机
EquRepairWorkOrder list = equRepairWorkOrderMapper.selectEquRepairWorkOrderByWorkId(equRepairWorkOrder.getWorkId());
if (list.getWorkDownMachine().equals("1")) {
equRepairWorkOrder.setActualDownEndTime(date);//维修真正停机时间
}
equRepairWorkOrder.setWorkEndTime(date);//维修工单结束时间
//1.2判断字段里面是否为空,是空的用,用无替代
if (equRepairWorkOrder.getWorkFaultDesc() == null || equRepairWorkOrder.getWorkFaultDesc().equals("")) {//故障描述
equRepairWorkOrder.setWorkFaultDesc("无");
}
if (equRepairWorkOrder.getWorkReason() == null || equRepairWorkOrder.getWorkFaultDesc().equals("")) { //故障原因
equRepairWorkOrder.setWorkFaultDesc("无");
}
if (equRepairWorkOrder.getRepairMeasures() == null || equRepairWorkOrder.getRepairMeasures().equals("")) {//故障措施
equRepairWorkOrder.setRepairMeasures("无");
}
if (equRepairWorkOrder.getWorkPerson() == null || equRepairWorkOrder.getWorkPerson().equals("")) {//维修人
equRepairWorkOrder.setWorkPerson("无");
}
////2.计算维修工单用时 + 故障停机时间
if (list.getWorkStartTime() != null && equRepairWorkOrder.getWorkEndTime() != null) {
////2.1计算维修日期差值
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime workStart = LocalDateTime.ofInstant(list.getWorkStartTime().toInstant(), zoneId);
LocalDateTime workEnd = LocalDateTime.ofInstant(equRepairWorkOrder.getWorkEndTime().toInstant(), zoneId);
LocalDateTime workDateTime = LocalDateTime.from(workStart);
double workHours = workDateTime.until(workEnd, ChronoUnit.HOURS);
double workMinutes = ((workDateTime.until(workEnd, ChronoUnit.MINUTES) * 1.0) % 60) / 60;
double workSeconds = ((workDateTime.until(workEnd, ChronoUnit.SECONDS) * 1.0) % 3600) / 3600;
double workHour = BigDecimal.valueOf(workHours + workMinutes + workSeconds).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
equRepairWorkOrder.setWorkCostTime(String.valueOf(workHour) + "小时"); //塞入维修用时
////2.2 计算故障停机时间差值
//报修的故障时间 和 快速工单的故障开始时间
Date downStartTime = new Date();
if (list.getOrderBreakdownTime() != null) {
downStartTime = list.getOrderBreakdownTime();
} else if (list.getFaultStartTime() != null) {
downStartTime = list.getFaultStartTime();
} }
equRepairWorkOrder.setWorkEndTime(date);//维修工单结束时间 LocalDateTime downStart = LocalDateTime.ofInstant(downStartTime.toInstant(), zoneId);
LocalDateTime downEnd = LocalDateTime.ofInstant(equRepairWorkOrder.getWorkEndTime().toInstant(), zoneId);
LocalDateTime downDateTime = LocalDateTime.from(downStart);
//1.2判断字段里面是否为空,是空的用,用无替代 double downHours = downDateTime.until(downEnd, ChronoUnit.HOURS);
if(equRepairWorkOrder.getWorkFaultDesc() == null || equRepairWorkOrder.getWorkFaultDesc().equals("")){//故障描述 double downMinutes = ((downDateTime.until(downEnd, ChronoUnit.MINUTES) * 1.0) % 60) / 60;
equRepairWorkOrder.setWorkFaultDesc("无"); double downSeconds = ((downDateTime.until(downEnd, ChronoUnit.SECONDS) * 1.0) % 3600) / 3600;
} double downHour = BigDecimal.valueOf(downHours + downMinutes + downSeconds).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
if(equRepairWorkOrder.getWorkReason() == null || equRepairWorkOrder.getWorkFaultDesc().equals("")){ //故障原因 equRepairWorkOrder.setFaultDownTime(String.valueOf(downHour) + "小时");
equRepairWorkOrder.setWorkFaultDesc("无"); }
}
if(equRepairWorkOrder.getRepairMeasures() == null || equRepairWorkOrder.getRepairMeasures().equals("")){//故障措施
equRepairWorkOrder.setRepairMeasures("无");
}
if(equRepairWorkOrder.getWorkPerson() == null || equRepairWorkOrder.getWorkPerson().equals("")){//维修人
equRepairWorkOrder.setWorkPerson("无");
}
////2.计算维修工单用时 + 故障停机时间 //代码注释掉了 改了流程 之前是维修完成后,更改设备状态 和 设备运行报表 现在是审核通过之后,才会扣除
if (list.getWorkStartTime() != null && equRepairWorkOrder.getWorkEndTime() != null) { ////完好率报表
////2.1计算维修日期差值 ////3.1查询当日完好率报表
ZoneId zoneId = ZoneId.systemDefault(); // SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
LocalDateTime workStart = LocalDateTime.ofInstant(list.getWorkStartTime().toInstant(), zoneId); // String time = sdf.format(equRepairWorkOrder.getWorkEndTime());
LocalDateTime workEnd = LocalDateTime.ofInstant(equRepairWorkOrder.getWorkEndTime().toInstant(), zoneId); // EquOperation equOperation = equOperationMapper.selectEquipmentIntegrityRate(time, equRepairWorkOrder.getEquipmentCode());
LocalDateTime workDateTime = LocalDateTime.from(workStart);
double workHours = workDateTime.until(workEnd, ChronoUnit.HOURS); ////3.2修改完好率报表
double workMinutes = ((workDateTime.until(workEnd, ChronoUnit.MINUTES) * 1.0) % 60) / 60; // if (equOperation != null) {
double workSeconds = ((workDateTime.until(workEnd, ChronoUnit.SECONDS) * 1.0) % 3600) / 3600; // if (list.getWorkDownMachine().equals("1")) {
double workHour = BigDecimal.valueOf(workHours + workMinutes + workSeconds).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); // DecimalFormat df = new DecimalFormat("#.##");
equRepairWorkOrder.setWorkCostTime(String.valueOf(workHour)+"小时"); //塞入维修用时 // double result = Double.parseDouble(equOperation.getActualOperationTime()) - downHour;//实际运行时间 = 实际运行时间 - 故障停机时间
// double faultTime = Double.parseDouble(equOperation.getFaultTime()) + downHour;//故障时间 = 原来的故障停机时间 + 这次的故障停机时间
////2.2 计算故障停机时间差值 // BigDecimal faultTimeBD = new BigDecimal(faultTime);// 故障停机时间
//报修的故障时间 和 快速工单的故障开始时间 // BigDecimal operationTimeBD = new BigDecimal(equOperation.getOperationTime());//运行时间
Date downStartTime = new Date(); // equOperation.setActualOperationTime(String.valueOf(df.format(result)));//实际运行时间
if(list.getOrderBreakdownTime() != null){ // equOperation.setFaultTime(String.valueOf(faultTime));//故障停机时间
downStartTime = list.getOrderBreakdownTime(); // equOperation.setFailureRate(faultTimeBD.multiply(new BigDecimal(100)).divide(operationTimeBD, 2, RoundingMode.HALF_UP).toString() + "%");
}else if(list.getFaultStartTime() != null){ // equOperation.setShutdownTimes(equOperation.getShutdownTimes() + 1);//故障停机次数加1
downStartTime = list.getFaultStartTime(); // }
} // equOperation.setFailureTimes(equOperation.getFailureTimes() + 1);//故障次数加1
LocalDateTime downStart = LocalDateTime.ofInstant(downStartTime.toInstant(), zoneId); // equOperation.setUpdateBy(SecurityUtils.getUsername());
LocalDateTime downEnd = LocalDateTime.ofInstant(equRepairWorkOrder.getWorkEndTime().toInstant(), zoneId); // equOperation.setUpdateTime(date);
LocalDateTime downDateTime = LocalDateTime.from(downStart); //
// String GZMS = equOperation.getFailureDescription();//故障描述
double downHours = downDateTime.until(downEnd, ChronoUnit.HOURS); // String GZYY = equOperation.getReasonAnalyze();//故障原因
double downMinutes = ((downDateTime.until(downEnd, ChronoUnit.MINUTES) * 1.0) % 60) / 60; // String GZCS = equOperation.getHandlingMethod();//维修措施
double downSeconds = ((downDateTime.until(downEnd, ChronoUnit.SECONDS) * 1.0) % 3600) / 3600; // String WXR = equOperation.getRepairPerson();//维修人
double downHour = BigDecimal.valueOf(downHours + downMinutes + downSeconds).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); // if (GZMS != null) {
equRepairWorkOrder.setFaultDownTime(String.valueOf(downHour)+"小时"); // equOperation.setFailureDescription(GZMS + formattedDate + ":" + equRepairWorkOrder.getWorkFaultDesc() + ";");
// } else {
////完好率报表 // equOperation.setFailureDescription(formattedDate + ":" + equRepairWorkOrder.getWorkFaultDesc() + ";");
////3.1查询当日完好率报表 // }
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // if (GZYY != null) {
String time = sdf.format(equRepairWorkOrder.getWorkEndTime()); // equOperation.setReasonAnalyze(GZYY + formattedDate + ":" + equRepairWorkOrder.getWorkReason() + ";");
EquOperation equOperation = equOperationMapper.selectEquipmentIntegrityRate(time, equRepairWorkOrder.getEquipmentCode()); // } else {
// equOperation.setReasonAnalyze(formattedDate + ":" + equRepairWorkOrder.getWorkReason() + ";");
////3.2修改完好率报表 // }
if (equOperation != null) { // if (GZCS != null) {
if (list.getWorkDownMachine().equals("1")) { // equOperation.setHandlingMethod(GZCS + formattedDate + ":" + equRepairWorkOrder.getRepairMeasures() + ";");
DecimalFormat df = new DecimalFormat("#.##"); // } else {
double result = Double.parseDouble(equOperation.getActualOperationTime()) - downHour;//实际运行时间 = 实际运行时间 - 故障停机时间 // equOperation.setHandlingMethod(formattedDate + ":" + equRepairWorkOrder.getRepairMeasures() + ";");
double faultTime = Double.parseDouble(equOperation.getFaultTime()) + downHour;//故障时间 = 原来的故障停机时间 + 这次的故障停机时间 // }
BigDecimal faultTimeBD = new BigDecimal(faultTime);// 故障停机时间 // if (WXR != null) {
BigDecimal operationTimeBD = new BigDecimal(equOperation.getOperationTime());//运行时间 // equOperation.setRepairPerson(WXR + formattedDate + ":" + SecurityUtils.getUsername() + ";");
equOperation.setActualOperationTime(String.valueOf(df.format(result)));//实际运行时间 // } else {
equOperation.setFaultTime(String.valueOf(faultTime));//故障停机时间 // equOperation.setRepairPerson(formattedDate + ":" + SecurityUtils.getUsername() + ";");
equOperation.setFailureRate(faultTimeBD.multiply(new BigDecimal(100)).divide(operationTimeBD, 2, RoundingMode.HALF_UP).toString() + "%"); // }
equOperation.setShutdownTimes(equOperation.getShutdownTimes() + 1);//故障停机次数加1 //
} // ////4.修改设备状态 由维修中改为正常运行 ;设备状态描述 由什么状态转为什么状态,修改设备状态 由维修中改为正常运行
equOperation.setFailureTimes(equOperation.getFailureTimes() + 1);//故障次数加1 // EquEquipment equEquipment = new EquEquipment();
equOperation.setUpdateBy(SecurityUtils.getUsername()); // equEquipment.setEquipmentCode(list.getEquipmentCode());
equOperation.setUpdateTime(date); // EquEquipment equ = equEquipmentMapper.selectEquEquipmentByEquEquipmentCode(equEquipment.getEquipmentCode());
// String equStatus = "";
String GZMS = equOperation.getFailureDescription();//故障描述 // if(equ.getEquipmentStatus().equals("0")){
String GZYY = equOperation.getReasonAnalyze();//故障原因 // equStatus = "设备状态由故障转为正常运行;";
String GZCS = equOperation.getHandlingMethod();//维修措施 // }else if(equ.getEquipmentStatus().equals("2")){
String WXR = equOperation.getRepairPerson();//维修人 // equStatus = "设备状态由维修中转为正常运行;";
if (GZMS != null) { // }
equOperation.setFailureDescription(GZMS + formattedDate + ":" + equRepairWorkOrder.getWorkFaultDesc() + ";"); // else if(equ.getEquipmentStatus().equals("1")){
} else { // equStatus = "设备状态正常运行;";
equOperation.setFailureDescription(formattedDate + ":" + equRepairWorkOrder.getWorkFaultDesc() + ";"); // }
} // // else if(equ.getEquipmentStatus().equals("4")){
if (GZYY != null) { // // equStatus = "设备状态由维修保养中转为保养中;";
equOperation.setReasonAnalyze(GZYY + formattedDate + ":" + equRepairWorkOrder.getWorkReason() + ";"); // // }
} else { //
equOperation.setReasonAnalyze(formattedDate + ":" + equRepairWorkOrder.getWorkReason() + ";"); // if (equOperation.getEquStatusDes() == null || equOperation.getEquStatusDes().equals("")) {
} // equOperation.setEquStatusDes(formattedDate + ":" + equStatus);
if (GZCS != null) { // } else {
equOperation.setHandlingMethod(GZCS + formattedDate + ":" + equRepairWorkOrder.getRepairMeasures() + ";"); // equOperation.setEquStatusDes(equOperation.getEquStatusDes() + formattedDate + equStatus);//设备状态描述
} else { // }
equOperation.setHandlingMethod(formattedDate + ":" + equRepairWorkOrder.getRepairMeasures() + ";"); //
} // if(equ.getEquipmentStatus().equals("0") || equ.getEquipmentStatus().equals("2")){
if (WXR != null) { // equEquipment.setEquipmentStatus("1");
equOperation.setRepairPerson(WXR + formattedDate + ":" + SecurityUtils.getUsername() + ";"); // }
} else { // equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment);
equOperation.setRepairPerson(formattedDate + ":" + SecurityUtils.getUsername() + ";"); // equOperationMapper.updateEquOperation(equOperation);
} // }
// }
////4.修改设备状态 由维修中改为正常运行 ;设备状态描述 由什么状态转为什么状态,修改设备状态 由维修中改为正常运行
EquEquipment equEquipment = new EquEquipment();
equEquipment.setEquipmentCode(list.getEquipmentCode());
EquEquipment equ = equEquipmentMapper.selectEquEquipmentByEquEquipmentCode(equEquipment.getEquipmentCode());
String equStatus = "";
if(equ.getEquipmentStatus().equals("0")){
equStatus = "设备状态由故障转为正常运行;";
}else if(equ.getEquipmentStatus().equals("2")){
equStatus = "设备状态由维修中转为正常运行;";
}
else if(equ.getEquipmentStatus().equals("1")){
equStatus = "设备状态正常运行;";
}
// else if(equ.getEquipmentStatus().equals("4")){
// equStatus = "设备状态由维修保养中转为保养中;";
// }
if (equOperation.getEquStatusDes() == null || equOperation.getEquStatusDes().equals("")) {
equOperation.setEquStatusDes(formattedDate + ":" + equStatus);
} else {
equOperation.setEquStatusDes(equOperation.getEquStatusDes() + formattedDate + equStatus);//设备状态描述
}
if(equ.getEquipmentStatus().equals("0") || equ.getEquipmentStatus().equals("2")){
equEquipment.setEquipmentStatus("1");
}
equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment);
equOperationMapper.updateEquOperation(equOperation);
}
}
////5.更新每一项点检/巡检检查项信息 ////5.更新每一项点检/巡检检查项信息
if (StringUtils.isNotEmpty(equRepairWorkOrder.getDetailList())) { if (StringUtils.isNotEmpty(equRepairWorkOrder.getDetailList())) {
@ -1152,10 +1161,71 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
// BigDecimal sparePartsCost = equSpareApplyMapper.getSparePartsCost(equRepairWorkOrder.getOrderCode()); // BigDecimal sparePartsCost = equSpareApplyMapper.getSparePartsCost(equRepairWorkOrder.getOrderCode());
// BigDecimal orderCost = BigDecimal.valueOf(Double.valueOf(equRepairWorkOrder.getWorkCost())); // BigDecimal orderCost = BigDecimal.valueOf(Double.valueOf(equRepairWorkOrder.getWorkCost()));
// equRepairWorkOrder.setWorkCost(String.valueOf(sparePartsCost.add(orderCost))); // equRepairWorkOrder.setWorkCost(String.valueOf(sparePartsCost.add(orderCost)));
return success("提交成功,维修完成!");
} catch (Exception e) { ////9.发送微信提醒
return error("提交失败!"); //发企业微信--------------------开始(跟班组有关)
} SimpleDateFormat myFmt = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
//规范时间格式
SysNoticeGroup noticeQo = new SysNoticeGroup();
noticeQo.setNoticeId(22L);
EquTeamUser equTeamUser = new EquTeamUser();
equTeamUser.setUserName(SecurityUtils.getUsername());
List<SysNoticeGroup> notices = equRepairOrderMapper.getNoticesGroup(noticeQo);
if (!CollectionUtils.isEmpty(notices)) {
List<WechartDTO> wecharts = new ArrayList<>();
List<String> userCodes = notices.stream()
.map(SysNoticeGroup::getUserCode)
.collect(Collectors.toList());
for (SysNoticeGroup noticeDto : notices) {
WechartDTO wechart0 = new WechartDTO();
wechart0.setUserId(noticeDto.getWxId());
String contentInfo = noticeDto.getNoticeContent();
contentInfo = contentInfo
.replace("${n}", "\n")
.replace("${workCode}", equRepairWorkOrder.getWorkCode() + "\n")//工单号
;
//设备编码
if (StringUtils.isNotEmpty(equRepairWorkOrder.getEquipmentCode())) {
contentInfo = contentInfo.replace("${equipmentCode}", equRepairWorkOrder.getEquipmentCode() + "\n");
} else {
contentInfo = contentInfo.replace("${equipmentCode}", "无" + "\n");
}
//设备名称
if (StringUtils.isNotEmpty(equRepairWorkOrder.getEquipmentName())) {
contentInfo = contentInfo.replace("${equipmentName}", equRepairWorkOrder.getEquipmentName() + "\n");
} else {
contentInfo = contentInfo.replace("${equipmentName}", "无" + "\n");
}
//维修人
if (StringUtils.isNotEmpty(equRepairWorkOrder.getWorkPersonName())) {
contentInfo = contentInfo.replace("${workPersonName}", equRepairWorkOrder.getWorkPersonName() + "\n");
} else {
contentInfo = contentInfo.replace("${workPersonName}", "无" + "\n");
}
Pattern p = Pattern.compile("<[^>]+>");
Matcher m = p.matcher(contentInfo);
contentInfo = m.replaceAll("");
System.out.println(contentInfo);
wechart0.setText(contentInfo);
wecharts.add(wechart0);
}
logger.info("维修审核企业微信提醒请求:" + JSONObject.toJSONString(wecharts));
if (!CollectionUtils.isEmpty(wecharts)) {
new Thread(() -> {
AjaxResult wxResult = remoteOpenService.sendWeChartMessage(wecharts);
logger.info("维修审核企业微信提醒:" + JSONObject.toJSONString(wxResult));
}).start();
}
//发企业微信--------------------结束
}
return success("提交成功,维修完成!");
} }
/** /**
@ -1296,4 +1366,30 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
SparePartsLedger list = sparePartsLedgerMapper.selectSpareDetailBySpareCode(spareCode); SparePartsLedger list = sparePartsLedgerMapper.selectSpareDetailBySpareCode(spareCode);
return success(list); return success(list);
} }
/**
*
*
* @param
* @return
*/
@Override
@DS("#header.poolName")
public AjaxResult getBXList(EquRepairOrder equRepairOrder) {
List<EquRepairOrder> list = equRepairOrderMapper.selectEquRepairOrderList(equRepairOrder);
return success(list);
}
/**
*
*
* @param
* @return
*/
@Override
@DS("#header.poolName")
public AjaxResult getWXList(EquRepairWorkOrder equRepairWorkOrder) {
List<EquRepairWorkOrder> list = equRepairWorkOrderMapper.selectEquRepairWorkOrderList(equRepairWorkOrder);
return success(list);
}
} }

@ -233,7 +233,7 @@ public class EquOrderServiceImpl implements IEquOrderService {
if (repairOrder == null) { if (repairOrder == null) {
return error(500, "未查询到报修单信息!"); return error(500, "未查询到报修单信息!");
} else { } else {
if (!repairOrder.getOrderStatus().equals("待审核")) { if (!repairOrder.getOrderStatus().equals("2")) {
return error(500, "报修单已审核,不可修改记录!"); return error(500, "报修单已审核,不可修改记录!");
} }
} }
@ -368,7 +368,7 @@ public class EquOrderServiceImpl implements IEquOrderService {
if (equOrder.getPlanType().equals("maintenance")) { if (equOrder.getPlanType().equals("maintenance")) {
equRepairOrder.setOrderSource("保养"); equRepairOrder.setOrderSource("保养");
} }
equRepairOrder.setOrderStatus("待审核"); equRepairOrder.setOrderStatus("2");
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName"; String key = "#header.poolName";
equRepairOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_", "")); equRepairOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_", ""));

@ -153,7 +153,7 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
equRepairOrder.setOrderCode("BX" + DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); equRepairOrder.setOrderCode("BX" + DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum);
equRepairOrder.setCreateTime(DateUtils.getNowDate()); equRepairOrder.setCreateTime(DateUtils.getNowDate());
equRepairOrder.setCreateBy(SecurityUtils.getUsername()); equRepairOrder.setCreateBy(SecurityUtils.getUsername());
equRepairOrder.setOrderStatus("待审核"); equRepairOrder.setOrderStatus("2");
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName"; String key = "#header.poolName";
equRepairOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_", "")); equRepairOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_", ""));
@ -300,12 +300,12 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment); equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment);
////审核结果 ////审核结果
equRepairOrder.setOrderStatus("审核通过"); equRepairOrder.setOrderStatus("1");
////发送微信通知 ////发送微信通知
AjaxResult repairSendWeChatResult = repairSendWeChat(equRepairWorkOrder); AjaxResult repairSendWeChatResult = repairSendWeChat(equRepairWorkOrder);
} else if (equRepairOrder.getRepairDestination().equals("不维修")) { } else if (equRepairOrder.getRepairDestination().equals("不维修")) {
equRepairOrder.setOrderStatus("驳回"); equRepairOrder.setOrderStatus("0");
} else if (equRepairOrder.getRepairDestination().equals("委外维修")) { } else if (equRepairOrder.getRepairDestination().equals("委外维修")) {
EquOutsourceWork equOutsourceWork = new EquOutsourceWork(); EquOutsourceWork equOutsourceWork = new EquOutsourceWork();
equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID()); //id equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID()); //id
@ -332,7 +332,7 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
equEquipment.setEquipmentStatus("0"); //0 故障 equEquipment.setEquipmentStatus("0"); //0 故障
equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment); equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment);
equRepairOrder.setOrderStatus("审核通过"); equRepairOrder.setOrderStatus("1");
} else if (equRepairOrder.getRepairDestination().equals("立即维修")) { } else if (equRepairOrder.getRepairDestination().equals("立即维修")) {
EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder(); EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder();
equRepairWorkOrder.setWorkId(IdUtils.fastSimpleUUID()); //维修工单id equRepairWorkOrder.setWorkId(IdUtils.fastSimpleUUID()); //维修工单id
@ -362,7 +362,7 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
equRepairWorkOrderMapper.insertEquRepairWorkOrder(equRepairWorkOrder); equRepairWorkOrderMapper.insertEquRepairWorkOrder(equRepairWorkOrder);
////审核结果 ////审核结果
equRepairOrder.setOrderStatus("审核通过"); equRepairOrder.setOrderStatus("1");
////更新设备状态 ////更新设备状态
EquEquipment equEquipment = new EquEquipment(); EquEquipment equEquipment = new EquEquipment();

@ -14,6 +14,7 @@ import java.util.stream.Collectors;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.annotation.DS;
import com.op.common.core.domain.BaseFileData; import com.op.common.core.domain.BaseFileData;
import com.op.common.core.exception.auth.NotLoginException;
import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.DateUtils;
import com.op.common.core.utils.StringUtils; import com.op.common.core.utils.StringUtils;
import com.op.common.core.utils.uuid.IdUtils; import com.op.common.core.utils.uuid.IdUtils;
@ -25,6 +26,7 @@ import com.op.device.mapper.*;
import com.op.system.api.RemoteOpenService; import com.op.system.api.RemoteOpenService;
import com.op.system.api.domain.SysNoticeGroup; import com.op.system.api.domain.SysNoticeGroup;
import com.op.system.api.domain.dto.WechartDTO; import com.op.system.api.domain.dto.WechartDTO;
import org.omg.CORBA.CompletionStatus;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -303,7 +305,7 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
} }
/** /**
* *
* *
* @param equRepairWorkOrder * @param equRepairWorkOrder
* @return * @return
@ -312,6 +314,13 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
@DS("#header.poolName") @DS("#header.poolName")
// @Transactional//增加事务注解,出错时自动回滚 // @Transactional//增加事务注解,出错时自动回滚
public AjaxResult write(EquRepairWorkOrder equRepairWorkOrder) { public AjaxResult write(EquRepairWorkOrder equRepairWorkOrder) {
EquEquipment equ = equEquipmentMapper.selectEquEquipmentByEquEquipmentCode(equRepairWorkOrder.getEquipmentCode());
if(equ == null){
//不应该用登录的 todo
throw new NotLoginException("设备表中不存在此设备,请确认!");
}
////0.今日时间 ////0.今日时间
Date date = DateUtils.getNowDate(); Date date = DateUtils.getNowDate();
@ -387,25 +396,93 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
equOrderStandardMapper.updateStandardAfterRepair(equOrderStandard); equOrderStandardMapper.updateStandardAfterRepair(equOrderStandard);
} }
//5.更新运行表 + 更新设备表
if (equRepairWorkOrder.getWorkStatus().equals("1")) {
int updateOperation = updateEquOperation(equRepairWorkOrder,date);
}
// 备件费用 // 备件费用
// BigDecimal sparePartsCost = equSpareApplyMapper.getSparePartsCost(equRepairWorkOrder.getOrderCode()); // BigDecimal sparePartsCost = equSpareApplyMapper.getSparePartsCost(equRepairWorkOrder.getOrderCode());
// BigDecimal orderCost = BigDecimal.valueOf(Double.valueOf(equRepairWorkOrder.getWorkCost())); // BigDecimal orderCost = BigDecimal.valueOf(Double.valueOf(equRepairWorkOrder.getWorkCost()));
// equRepairWorkOrder.setWorkCost(String.valueOf(sparePartsCost.add(orderCost))); // equRepairWorkOrder.setWorkCost(String.valueOf(sparePartsCost.add(orderCost)));
equRepairWorkOrderMapper.updateEquRepairWorkOrder(equRepairWorkOrder);
equRepairWorkOrderMapper.updateEquRepairWorkOrder(equRepairWorkOrder);
////4.发送微信提醒
//发企业微信--------------------开始(跟班组有关)
SimpleDateFormat myFmt=new SimpleDateFormat("yyyy.MM.dd HH:mm:ss");
//规范时间格式
SysNoticeGroup noticeQo = new SysNoticeGroup();
noticeQo.setNoticeId(22L);
EquTeamUser equTeamUser = new EquTeamUser();
equTeamUser.setUserName(SecurityUtils.getUsername());
List<SysNoticeGroup> notices = equRepairOrderMapper.getNoticesGroup(noticeQo);
if(!CollectionUtils.isEmpty(notices)) {
List<WechartDTO> wecharts = new ArrayList<>();
List<String> userCodes = notices.stream()
.map(SysNoticeGroup::getUserCode)
.collect(Collectors.toList());
for (SysNoticeGroup noticeDto : notices) {
WechartDTO wechart0 = new WechartDTO();
wechart0.setUserId(noticeDto.getWxId());
String contentInfo = noticeDto.getNoticeContent();
contentInfo = contentInfo
.replace("${n}", "\n");
//工单号
if(StringUtils.isNotEmpty(equRepairWorkOrder.getWorkCode())){
contentInfo = contentInfo.replace("${workCode}", equRepairWorkOrder.getWorkCode() +"\n");
}else{
contentInfo = contentInfo.replace("${workCode}", "无"+"\n");
}
//设备编码
if(StringUtils.isNotEmpty(equRepairWorkOrder.getEquipmentCode())){
contentInfo = contentInfo.replace("${equipmentCode}", equRepairWorkOrder.getEquipmentCode() +"\n");
}else{
contentInfo = contentInfo.replace("${equipmentCode}", "无"+"\n");
}
//设备名称
if(StringUtils.isNotEmpty(equRepairWorkOrder.getEquipmentName())){
contentInfo = contentInfo.replace("${equipmentName}", equRepairWorkOrder.getEquipmentName() +"\n");
}else{
contentInfo = contentInfo.replace("${equipmentName}", "无"+"\n");
}
//维修人
if(StringUtils.isNotEmpty(equRepairWorkOrder.getWorkPersonName())){
contentInfo = contentInfo.replace("${workPersonName}", equRepairWorkOrder.getWorkPersonName() +"\n");
}else{
contentInfo = contentInfo.replace("${workPersonName}", "无"+"\n");
}
Pattern p= Pattern.compile("<[^>]+>");
Matcher m = p.matcher(contentInfo);
contentInfo = m.replaceAll("");
System.out.println(contentInfo);
wechart0.setText(contentInfo);
wecharts.add(wechart0);
}
logger.info("维修审核企业微信提醒请求:" + JSONObject.toJSONString(wecharts));
if (!CollectionUtils.isEmpty(wecharts)) {
new Thread(() -> {
AjaxResult wxResult = remoteOpenService.sendWeChartMessage(wecharts);
logger.info("维修审核企业微信提醒:" + JSONObject.toJSONString(wxResult));
}).start();
}
//发企业微信--------------------结束
}
return success("提交成功,维修完成!"); return success("提交成功,维修完成!");
} }
//5.更新运行表 + 设备表 //更新运行表 + 设备表
private int updateEquOperation(EquRepairWorkOrder equRepairWorkOrder,Date date) { private String updateEquOperation(EquRepairWorkOrder equRepairWorkOrder) {
//5.1时间 String msg = "";
//1.时间
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss"); SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
String formattedDate = dateFormat.format(date); String formattedDate = dateFormat.format(DateUtils.getNowDate());
//5.2维修完成后 相应的设备完好率重新计算 小时计算 保留一位小数 实际故障时间 换算成小时 //2.维修完成后 相应的设备完好率重新计算 小时计算 保留一位小数 实际故障时间 换算成小时
if(equRepairWorkOrder.getWorkDownMachine().equals("0")){ if(equRepairWorkOrder.getWorkDownMachine().equals("0")){
equRepairWorkOrder.setFaultDownTime("0.0小时"); equRepairWorkOrder.setFaultDownTime("0.0小时");
} }
@ -461,20 +538,27 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
equOperation.setRepairPerson(formattedDate + ":" + equRepairWorkOrder.getWorkPerson() + ";"); equOperation.setRepairPerson(formattedDate + ":" + equRepairWorkOrder.getWorkPerson() + ";");
} }
} }
//当获取的设备运行记录为空的时候,代表没有生成,这块让上位机卡住 todo
//5.3设备状态描述 由什么状态转为什么状态,修改设备状态 由维修中改为正常运行 //3设备状态描述 由什么状态转为什么状态,修改设备状态 由维修中改为正常运行
EquEquipment equEquipment = new EquEquipment(); EquEquipment equEquipment = new EquEquipment();
equEquipment.setEquipmentCode(equRepairWorkOrder.getEquipmentCode()); equEquipment.setEquipmentCode(equRepairWorkOrder.getEquipmentCode());
EquEquipment equ = equEquipmentMapper.selectEquEquipmentByEquEquipmentCode(equEquipment.getEquipmentCode()); EquEquipment equ = equEquipmentMapper.selectEquEquipmentByEquEquipmentCode(equEquipment.getEquipmentCode());
String equStatus = ""; String equStatus = "";
//todo 维修保养中 和维修中 和保养中!!!!!!!!!!!!!!!!!!!!!!! 需要修改状态
if(equ.getEquipmentStatus().equals("0")){ if(equ.getEquipmentStatus().equals("0")){
equStatus = "设备状态由故障转为正常运行;"; equStatus = "设备状态由故障转为正常运行;";
}else if(equ.getEquipmentStatus().equals("2")){ }else if(equ.getEquipmentStatus().equals("2")){
equStatus = "设备状态由维修中转为正常运行;"; equStatus = "设备状态由维修中转为正常运行;";
}else if(equ.getEquipmentStatus().equals("1")){
equStatus = "设备状态在审核前,已由其他人员修改为正常;";
msg = "【"+equRepairWorkOrder.getEquipmentCode()+"】"+"设备状态在审核前,已由其他人员修改为正常!";
logger.info(msg);
} else if(equ.getEquipmentStatus().equals("4")){
equStatus = "设备状态由维修保养中转为保养中;";
}else if(equ.getEquipmentStatus() == null){
throw new NotLoginException("设备表中,此设备状态为空!");
} }
// else if(equ.getEquipmentStatus().equals("4")){
// equStatus = "设备状态由维修保养中转为保养中;";
// }
if (equOperation.getEquStatusDes() == null || equOperation.getEquStatusDes().equals("")) { if (equOperation.getEquStatusDes() == null || equOperation.getEquStatusDes().equals("")) {
equOperation.setEquStatusDes(formattedDate + ":" + equStatus); equOperation.setEquStatusDes(formattedDate + ":" + equStatus);
@ -482,14 +566,14 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
equOperation.setEquStatusDes(equOperation.getEquStatusDes() + formattedDate + equStatus);//设备状态描述 equOperation.setEquStatusDes(equOperation.getEquStatusDes() + formattedDate + equStatus);//设备状态描述
} }
if(equ.getEquipmentStatus().equals("0") || equ.getEquipmentStatus().equals("2")){ if(equ.getEquipmentStatus().equals("0") || equ.getEquipmentStatus().equals("2")|| equ.getEquipmentStatus().equals("1")){
equEquipment.setEquipmentStatus("1"); equEquipment.setEquipmentStatus("1");
} else if(equ.getEquipmentStatus().equals("4")){//如果是4维修保养中改为保养中
equEquipment.setEquipmentStatus("3");
} }
// else if(equ.getEquipmentStatus().equals("4")){//如果是维修保养中,改为保养中
// equEquipment.setEquipmentStatus("3");
// }
equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment); equRepairWorkOrderMapper.updateEquipmentStatus(equEquipment);
return equOperationMapper.updateEquOperation(equOperation); equOperationMapper.updateEquOperation(equOperation);
return msg;
} }
/** /**
@ -560,21 +644,47 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
} }
/** /**
* *
* PC
* *
* @param upKeepOrderDTO * @param upKeepOrderDTO
* @return * @return
*/ */
@Override @Override
@DS("#header.poolName") @DS("#header.poolName")
public AjaxResult subInspect(UpKeepOrderDTO upKeepOrderDTO) { public AjaxResult checkRepairWorkOrder(UpKeepOrderDTO upKeepOrderDTO) {
String msg = "";
List<String> ids = upKeepOrderDTO.getIds(); List<String> ids = upKeepOrderDTO.getIds();
for (String id : ids) { for (String id : ids) {
EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder(); EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder();
equRepairWorkOrder.setWorkId(id); equRepairWorkOrder.setWorkId(id);
String resultInspect = upKeepOrderDTO.getInspect(); String resultInspect = upKeepOrderDTO.getInspect();
equRepairWorkOrder.setResultInspect(resultInspect);
//1.1 审核通过后 更新运行表 + 更新设备表 1审核通过
EquRepairWorkOrder dto = equRepairWorkOrderMapper.selectEquRepairWorkOrderByWorkId(id);
if (dto.getWorkStatus().equals("1") && resultInspect.equals("1")) {
msg = updateEquOperation(dto);
//2.1
equRepairWorkOrder.setResultInspect(resultInspect);//审核状态为完成
}
//1.2 如果审核驳回 回退到待维修状态 0审核驳回
if(dto.getWorkStatus().equals("1") && resultInspect.equals("0")){
dto.setWorkStatus("0");//待维修
dto.setWorkEndTime(null);//工单结束时间空 工单开始的时间是从第一次开始的
// todo 当待维修的时候,要判断一下 有没有开始时间 如果有的话,不能覆盖掉 这个做完了 等待检查
dto.setWorkCostTime(null);//工单花费时间
dto.setFaultDownTime(null);//故障停机时间
dto.setActualDownEndTime(null);//故障停机时间
equRepairWorkOrderMapper.returnRepairWorkOrder(dto);
//2.2
equRepairWorkOrder.setResultInspect("2");//审核状态为待审核
}
//2.审核状态更新完成
equRepairWorkOrderMapper.updateResultInspect(equRepairWorkOrder); equRepairWorkOrderMapper.updateResultInspect(equRepairWorkOrder);
//2.3 todo 被驳回之后,需要再次发微信消息给维修班组吗???目前是在审核后通知的时候 会在备注里面
} }
String workCodes = ""; String workCodes = "";
@ -585,11 +695,11 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
String inspect = ""; String inspect = "";
if(upKeepOrderDTO.getInspect().equals("0")){ if(upKeepOrderDTO.getInspect().equals("0")){
inspect = "不通过" ; inspect = "驳回" ;
}else if(upKeepOrderDTO.getInspect().equals("1")){ }else if(upKeepOrderDTO.getInspect().equals("1")){
inspect = "通过" ; inspect = "审核通过" ;
}else{ }else{
inspect = "待检验" ; inspect = "待审核" ;
} }
//发企业微信--------------------开始(跟班组有关) //发企业微信--------------------开始(跟班组有关)
@ -632,6 +742,15 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
contentInfo = contentInfo.replace("${checkPeople}", "无"+"\n"); contentInfo = contentInfo.replace("${checkPeople}", "无"+"\n");
} }
//备注 备注和驳回有关系
if(inspect.equals("驳回") && StringUtils.isNotEmpty(upKeepOrderDTO.getAuditOpinion())){
contentInfo = contentInfo.replace("${remark}", "工单被审核人驳回,驳回理由为【"+upKeepOrderDTO.getAuditOpinion()+"】请再次进行维修!"+"\n");
}else if(inspect.equals("驳回") && StringUtils.isEmpty(upKeepOrderDTO.getAuditOpinion())){
contentInfo = contentInfo.replace("${remark}", "工单被审核人驳回,请再次进行维修!"+"\n");
}else{
contentInfo = contentInfo.replace("${remark}", "无"+"\n");
}
Pattern p= Pattern.compile("<[^>]+>"); Pattern p= Pattern.compile("<[^>]+>");
Matcher m = p.matcher(contentInfo); Matcher m = p.matcher(contentInfo);
contentInfo = m.replaceAll(""); contentInfo = m.replaceAll("");
@ -640,17 +759,21 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
wechart0.setText(contentInfo); wechart0.setText(contentInfo);
wecharts.add(wechart0); wecharts.add(wechart0);
} }
logger.info("维修结果检验企业微信提醒请求:" + JSONObject.toJSONString(wecharts)); logger.info("维修审核结果企业微信提醒请求:" + JSONObject.toJSONString(wecharts));
if (!CollectionUtils.isEmpty(wecharts)) { if (!CollectionUtils.isEmpty(wecharts)) {
new Thread(() -> { new Thread(() -> {
AjaxResult wxresult = remoteOpenService.sendWeChartMessage(wecharts); AjaxResult wxresult = remoteOpenService.sendWeChartMessage(wecharts);
logger.info("维修结果检验企业微信提醒结果" + JSONObject.toJSONString(wxresult)); logger.info("维修审核结果企业微信提醒:" + JSONObject.toJSONString(wxresult));
}).start(); }).start();
} }
//发企业微信--------------------结束 //发企业微信--------------------结束
} }
return success();
if(msg.equals("")){
msg = "审核成功!";
}
return success(msg);
} }
} }

@ -30,6 +30,7 @@
<result property="updateTime" column="update_time"/> <result property="updateTime" column="update_time"/>
<result property="factoryCode" column="factory_code"/> <result property="factoryCode" column="factory_code"/>
<result property="repairDestination" column="repair_destination"/> <result property="repairDestination" column="repair_destination"/>
<result property="auditOpinion" column="audit_opinion"/>
<!-- 设备 --> <!-- 设备 -->
<result property="equipmentTypeName" column="equipment_type_name"/> <result property="equipmentTypeName" column="equipment_type_name"/>
<result property="equipmentName" column="equipment_name"/> <result property="equipmentName" column="equipment_name"/>
@ -75,41 +76,26 @@
</sql> </sql>
<sql id="selectEquRepairOrderVo"> <sql id="selectEquRepairOrderVo">
select order_id, order_code, equipment_code, order_desc, order_breakdown_time, order_source, order_time, order_handle, order_repairman_code,order_repairman_name, order_connection, order_status, order_relevance, order_picture, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time,factory_code,repair_destination from equ_repair_order select order_id, order_code, equipment_code, order_desc, order_breakdown_time, order_source, order_time, order_handle, order_repairman_code,order_repairman_name, order_connection, order_status, order_relevance, order_picture, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time,factory_code,repair_destination,audit_opinion from equ_repair_order
</sql> </sql>
<select id="selectEquRepairOrderList" parameterType="EquRepairOrder" resultMap="EquRepairOrderResult"> <select id="selectEquRepairOrderList" parameterType="EquRepairOrder" resultMap="EquRepairOrderResult">
<include refid="selectEquRepairOrderVo"/> <include refid="selectEquRepairOrderVo"/>
<where> <where>
<if test="orderCode != null and orderCode != ''">and order_code like concat('%', #{orderCode}, '%')</if> <if test="orderCode != null and orderCode != ''">and order_code like concat('%', #{orderCode}, '%')</if>
<if test="equipmentCode != null and equipmentCode != ''">and equipment_code like concat('%', <if test="equipmentCode != null and equipmentCode != ''">and equipment_code like concat('%',#{equipmentCode}, '%')</if>
#{equipmentCode}, '%')
</if>
<if test="orderDesc != null and orderDesc != ''">and order_desc like concat('%', #{orderDesc}, '%')</if> <if test="orderDesc != null and orderDesc != ''">and order_desc like concat('%', #{orderDesc}, '%')</if>
<!--故障开始时间 结束时间--> <!--故障开始时间 结束时间-->
<if test="orderBreakdownTimeStart != null ">and CONVERT(date,order_breakdown_time) >= <if test="orderBreakdownTimeStart != null ">and CONVERT(date,order_breakdown_time) >= #{orderBreakdownTimeStart}</if>
#{orderBreakdownTimeStart} <if test="orderBreakdownTimeEnd != null ">and #{orderBreakdownTimeEnd} >= CONVERT(date,order_breakdown_time)</if>
</if> <if test="orderSource != null and orderSource != ''">and order_source like concat('%', #{orderSource},'%')</if>
<if test="orderBreakdownTimeEnd != null ">and #{orderBreakdownTimeEnd} >=
CONVERT(date,order_breakdown_time)
</if>
<if test="orderSource != null and orderSource != ''">and order_source like concat('%', #{orderSource},
'%')
</if>
<!--报修开始时间 结束时间--> <!--报修开始时间 结束时间-->
<if test="orderTimeStart != null ">and CONVERT(date,order_time) >= #{orderTimeStart}</if> <if test="orderTimeStart != null ">and CONVERT(date,order_time) >= #{orderTimeStart}</if>
<if test="orderTimeEnd != null ">and #{orderTimeEnd} >= CONVERT(date,order_time)</if> <if test="orderTimeEnd != null ">and #{orderTimeEnd} >= CONVERT(date,order_time)</if>
<if test="orderHandle != null and orderHandle != ''">and order_handle = #{orderHandle}</if> <if test="orderHandle != null and orderHandle != ''">and order_handle = #{orderHandle}</if>
<if test="orderRepairmanCode != null and orderRepairmanCode != ''">and order_repairman_code like <if test="orderRepairmanCode != null and orderRepairmanCode != ''">and order_repairman_code like concat('%', #{orderRepairmanCode}, '%')</if>
concat('%', #{orderRepairmanCode}, '%') <if test="orderRepairmanName != null and orderRepairmanName != ''">and order_repairman_name like concat('%', #{orderRepairmanName}, '%')</if>
</if> <if test="orderConnection != null and orderConnection != ''">and order_connection like concat('%',#{orderConnection}, '%')</if>
<if test="orderRepairmanName != null and orderRepairmanName != ''">and order_repairman_name like
concat('%', #{orderRepairmanName}, '%')
</if>
<if test="orderConnection != null and orderConnection != ''">and order_connection like concat('%',
#{orderConnection}, '%')
</if>
<if test="orderStatus != null and orderStatus != ''">and order_status = #{orderStatus}</if>
<if test="orderRelevance != null and orderRelevance != ''">and order_relevance = #{orderRelevance}</if> <if test="orderRelevance != null and orderRelevance != ''">and order_relevance = #{orderRelevance}</if>
<if test="orderPicture != null and orderPicture != ''">and order_picture = #{orderPicture}</if> <if test="orderPicture != null and orderPicture != ''">and order_picture = #{orderPicture}</if>
<if test="attr1 != null and attr1 != ''">and attr1 = #{attr1}</if> <if test="attr1 != null and attr1 != ''">and attr1 = #{attr1}</if>
@ -118,9 +104,10 @@
<if test="createTime != null and createTime != ''">and create_time = #{createTime}</if> <if test="createTime != null and createTime != ''">and create_time = #{createTime}</if>
<if test="createBy != null and createBy != ''">and create_by = #{createBy}</if> <if test="createBy != null and createBy != ''">and create_by = #{createBy}</if>
<if test="factoryCode != null and factoryCode != ''">and factory_code = #{factoryCode}</if> <if test="factoryCode != null and factoryCode != ''">and factory_code = #{factoryCode}</if>
<if test="repairDestination != null and repairDestination != ''">and repair_destination = <if test="repairDestination != null and repairDestination != ''">and repair_destination =#{repairDestination}</if>
#{repairDestination} <!--审核-->
</if> <if test="orderStatus == null or orderStatus == '' ">and (order_status = '2' or order_status = '1')</if>
<if test="orderStatus != null and orderStatus != '' ">and order_status = #{orderStatus} </if>
and del_flag = '0' and del_flag = '0'
ORDER BY create_time DESC ORDER BY create_time DESC
</where> </where>
@ -148,6 +135,7 @@
ero.update_time, ero.update_time,
ero.factory_code, ero.factory_code,
ero.repair_destination, ero.repair_destination,
ero.audit_opinion,
be.equipment_name, be.equipment_name,
be.equipment_type_name, be.equipment_type_name,
be.equipment_spec, be.equipment_spec,
@ -197,6 +185,7 @@
<if test="updateTime != null">update_time,</if> <if test="updateTime != null">update_time,</if>
<if test="factoryCode != null">factory_code,</if> <if test="factoryCode != null">factory_code,</if>
<if test="repairDestination != null">repair_destination,</if> <if test="repairDestination != null">repair_destination,</if>
<if test="auditOpinion != null">audit_opinion,</if>
</trim> </trim>
<trim prefix="values (" suffix=")" suffixOverrides=","> <trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="orderId != null">#{orderId},</if> <if test="orderId != null">#{orderId},</if>
@ -223,6 +212,7 @@
<if test="updateTime != null">#{updateTime},</if> <if test="updateTime != null">#{updateTime},</if>
<if test="factoryCode != null">#{factoryCode},</if> <if test="factoryCode != null">#{factoryCode},</if>
<if test="repairDestination != null">#{repairDestination},</if> <if test="repairDestination != null">#{repairDestination},</if>
<if test="auditOpinion != null">#{auditOpinion},</if>
</trim> </trim>
</insert> </insert>
@ -252,6 +242,7 @@
<if test="updateTime != null">update_time = #{updateTime},</if> <if test="updateTime != null">update_time = #{updateTime},</if>
<if test="factoryCode != null">factory_code = #{factoryCode},</if> <if test="factoryCode != null">factory_code = #{factoryCode},</if>
<if test="repairDestination != null">repair_destination = #{repairDestination},</if> <if test="repairDestination != null">repair_destination = #{repairDestination},</if>
<if test="auditOpinion != null">audit_opinion = #{auditOpinion},</if>
</trim> </trim>
where order_id = #{orderId} where order_id = #{orderId}
</update> </update>

@ -47,7 +47,8 @@
<result property="faultDownTime" column="fault_down_time"/> <result property="faultDownTime" column="fault_down_time"/>
<result property="faultStartTime" column="fault_start_time"/> <result property="faultStartTime" column="fault_start_time"/>
<result property="resultInspect" column="result_inspect"/> <result property="resultInspect" column="result_inspect"/>
<result property="remark" column="remark"/>
<result property="auditOpinion" column="audit_opinion"/>
<!--设备--> <!--设备-->
<result property="equipmentName" column="equipment_name"/> <result property="equipmentName" column="equipment_name"/>
<result property="equipmentSpec" column="equipment_spec"/> <result property="equipmentSpec" column="equipment_spec"/>
@ -92,7 +93,7 @@
</sql> </sql>
<sql id="selectEquRepairWorkOrderVo"> <sql id="selectEquRepairWorkOrderVo">
select work_id, order_id, order_code, work_code,work_handle, work_plan_time, work_plan_down_time, order_relevance, work_person, work_team, work_outsource, work_down_machine, equipment_code, work_reason, work_fault_desc, work_start_time,work_end_time,work_cost_time, work_cost, work_status,out_work_id, out_work_code, attr1, attr2, attr3, create_by, create_time, update_time, update_by, del_flag, factory_code , fault_type , equipment_status_description , repair_measures , fault_down_time , fault_start_time ,result_inspect,work_person_name from equ_repair_work_order select work_id, order_id, order_code, work_code,work_handle, work_plan_time, work_plan_down_time, order_relevance, work_person, work_team, work_outsource, work_down_machine, equipment_code, work_reason, work_fault_desc, work_start_time,work_end_time,work_cost_time, work_cost, work_status,out_work_id, out_work_code, attr1, attr2, attr3, create_by, create_time, update_time, update_by, del_flag, factory_code , fault_type , equipment_status_description , repair_measures , fault_down_time , fault_start_time ,result_inspect,work_person_name,remark,audit_opinion from equ_repair_work_order
</sql> </sql>
<select id="selectEquRepairWorkOrderList" parameterType="EquRepairWorkOrder" resultMap="EquRepairWorkOrderResult"> <select id="selectEquRepairWorkOrderList" parameterType="EquRepairWorkOrder" resultMap="EquRepairWorkOrderResult">
@ -138,6 +139,7 @@
erwo.fault_down_time, erwo.fault_down_time,
erwo.fault_start_time, erwo.fault_start_time,
erwo.result_inspect, erwo.result_inspect,
erwo.remark,
be.equipment_name, be.equipment_name,
et.team_name, et.team_name,
et.team_person et.team_person
@ -145,6 +147,9 @@
left join base_equipment be on erwo.equipment_code = be.equipment_code left join base_equipment be on erwo.equipment_code = be.equipment_code
left join equ_team et on erwo.work_team = et.team_code left join equ_team et on erwo.work_team = et.team_code
<where> <where>
<!--审核-->
<if test="resultInspect == null or resultInspect == '' ">and ( erwo.result_inspect = '2' or erwo.result_inspect = '1')</if>
<if test="resultInspect != null and resultInspect != '' ">and erwo.result_inspect = #{resultInspect} </if>
<!--报修id 维修code 报修code--> <!--报修id 维修code 报修code-->
<if test="orderId != null and orderId != ''">and erwo.order_id = #{orderId}</if> <if test="orderId != null and orderId != ''">and erwo.order_id = #{orderId}</if>
<if test="workCode != null and workCode != ''">and erwo.work_code like concat('%', #{workCode}, '%')</if> <if test="workCode != null and workCode != ''">and erwo.work_code like concat('%', #{workCode}, '%')</if>
@ -236,6 +241,8 @@
erwo.fault_down_time, erwo.fault_down_time,
erwo.fault_start_time, erwo.fault_start_time,
erwo.result_inspect, erwo.result_inspect,
erwo.remark,
erwo.audit_opinion,
be.equipment_name, be.equipment_name,
et.team_name, et.team_name,
et.team_person et.team_person
@ -290,6 +297,8 @@
erwo.fault_down_time, erwo.fault_down_time,
erwo.fault_start_time, erwo.fault_start_time,
erwo.result_inspect, erwo.result_inspect,
erwo.remark,
erwo.audit_opinion,
be.equipment_name, be.equipment_name,
be.equipment_spec, be.equipment_spec,
be.equipment_type_name, be.equipment_type_name,
@ -360,6 +369,8 @@
<if test="faultDownTime != null">fault_down_time,</if> <if test="faultDownTime != null">fault_down_time,</if>
<if test="faultStartTime != null">fault_start_time,</if> <if test="faultStartTime != null">fault_start_time,</if>
<if test="resultInspect != null">result_inspect,</if> <if test="resultInspect != null">result_inspect,</if>
<if test="remark != null">remark,</if>
<if test="auditOpinion != null">audit_opinion,</if>
</trim> </trim>
<trim prefix="values (" suffix=")" suffixOverrides=","> <trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="workId != null">#{workId},</if> <if test="workId != null">#{workId},</if>
@ -403,6 +414,8 @@
<if test="faultDownTime != null">#{faultDownTime},</if> <if test="faultDownTime != null">#{faultDownTime},</if>
<if test="faultStartTime != null">#{faultStartTime},</if> <if test="faultStartTime != null">#{faultStartTime},</if>
<if test="resultInspect != null">#{resultInspect},</if> <if test="resultInspect != null">#{resultInspect},</if>
<if test="remark != null">#{remark},</if>
<if test="auditOpinion != null">#{auditOpinion},</if>
</trim> </trim>
</insert> </insert>
@ -448,6 +461,8 @@
<if test="repairMeasures != null">repair_measures = #{repairMeasures},</if> <if test="repairMeasures != null">repair_measures = #{repairMeasures},</if>
<if test="faultDownTime != null">fault_down_time = #{faultDownTime},</if> <if test="faultDownTime != null">fault_down_time = #{faultDownTime},</if>
<if test="faultStartTime != null">fault_start_time = #{faultStartTime},</if> <if test="faultStartTime != null">fault_start_time = #{faultStartTime},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="auditOpinion != null">audit_opinion = #{auditOpinion},</if>
</trim> </trim>
where work_id = #{workId} where work_id = #{workId}
and del_flag = '0' and del_flag = '0'
@ -456,7 +471,8 @@
<update id="updateResultInspect" parameterType="EquRepairWorkOrder"> <update id="updateResultInspect" parameterType="EquRepairWorkOrder">
update equ_repair_work_order update equ_repair_work_order
set set
result_inspect = #{resultInspect} result_inspect = #{resultInspect},
audit_opinion = #{auditOpinion}
where work_id = #{workId} where work_id = #{workId}
</update> </update>
@ -554,4 +570,16 @@
and del_flag = '0' and del_flag = '0'
</update> </update>
<update id="returnRepairWorkOrder" parameterType="EquRepairWorkOrder">
update equ_repair_work_order
set
work_status = #{workStatus},
fault_down_time = #{faultDownTime},
work_end_time = #{workEndTime},
work_cost_time = #{workCostTime},
actual_down_end_time = #{actualDownEndTime}
where work_id = #{workId}
and del_flag = '0'
</update>
</mapper> </mapper>

@ -303,7 +303,7 @@ public class OpenServiceImpl implements OpenService {
} }
equRepairOrder.setCreateTime(DateUtils.getNowDate()); equRepairOrder.setCreateTime(DateUtils.getNowDate());
equRepairOrder.setCreateBy(equRepairOrderDTO.getUserName()); equRepairOrder.setCreateBy(equRepairOrderDTO.getUserName());
equRepairOrder.setOrderStatus("待审核"); // 报修单状态 equRepairOrder.setOrderStatus("2"); // 报修单状态
equRepairOrder.setFactoryCode(equRepairOrderDTO.getFactory()); // 工厂 equRepairOrder.setFactoryCode(equRepairOrderDTO.getFactory()); // 工厂
if (equRepairOrderDTO.getPhoneNumber() != null) { if (equRepairOrderDTO.getPhoneNumber() != null) {
equRepairOrder.setOrderConnection(equRepairOrderDTO.getPhoneNumber()); // 联系方式 equRepairOrder.setOrderConnection(equRepairOrderDTO.getPhoneNumber()); // 联系方式

Loading…
Cancel
Save