Merge remote-tracking branch 'origin/master'

master
Yangwl 2 years ago
commit e1e5b8f1fc

@ -21,4 +21,10 @@ public interface RemoteDeviceService {
@PostMapping("/deviceTask/createSpotCheckPlanTask")
public R createSpotCheckPlanTask();
@PostMapping("/deviceTask/createPatrolCheckPlanTask")
public R createPatrolCheckPlanTask();
@PostMapping("/deviceTask/createMaintenancePlanTask")
public R createMaintenancePlanTask();
}

@ -1,15 +1,14 @@
package com.op.system.api.domain.dto;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.op.common.core.annotation.Excel;
import com.op.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;
import com.op.common.core.annotation.Excel;
import com.op.common.core.web.domain.BaseEntity;
/**
* mes_prepare
* mes_prepareDTO
*
* @author Open Platform
* @date 2023-08-03
@ -23,6 +22,7 @@ public class MesPrepareDTO extends BaseEntity {
/** 工单编码 */
@Excel(name = "工单编码")
private String workorderCode;
private String workorderCodeSap;
/** 工单名称 */
@Excel(name = "工单名称")
@ -120,6 +120,25 @@ public class MesPrepareDTO extends BaseEntity {
/** 工厂编码 */
@Excel(name = "工厂编码")
private String factoryCode;
private String dayStr;
public String getWorkorderCodeSap() {
return workorderCodeSap;
}
public void setWorkorderCodeSap(String workorderCodeSap) {
this.workorderCodeSap = workorderCodeSap;
}
public String getDayStr() {
return dayStr;
}
public void setDayStr(String dayStr) {
this.dayStr = dayStr;
}
public String getMaterialCode() {
return materialCode;
}
@ -305,37 +324,37 @@ public class MesPrepareDTO extends BaseEntity {
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("prepareId", getPrepareId())
.append("workorderCode", getWorkorderCode())
.append("workorderName", getWorkorderName())
.append("parentOrder", getParentOrder())
.append("orderId", getOrderId())
.append("orderCode", getOrderCode())
.append("productId", getProductId())
.append("productCode", getProductCode())
.append("prodType", getProdType())
.append("productName", getProductName())
.append("productSpc", getProductSpc())
.append("wetDetailPlanId", getWetDetailPlanId())
.append("productDate", getProductDate())
.append("shiftId", getShiftId())
.append("ancestors", getAncestors())
.append("status", getStatus())
.append("remark", getRemark())
.append("attr1", getAttr1())
.append("attr2", getAttr2())
.append("attr3", getAttr3())
.append("attr4", getAttr4())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("factoryCode", getFactoryCode())
.append("materialCode", getMaterialCode())
.append("materialName", getMaterialName())
.append("materialSpc", getMaterialSpc())
.append("quantity", getQuantity())
.append("unit", getUnit())
.toString();
.append("prepareId", getPrepareId())
.append("workorderCode", getWorkorderCode())
.append("workorderName", getWorkorderName())
.append("parentOrder", getParentOrder())
.append("orderId", getOrderId())
.append("orderCode", getOrderCode())
.append("productId", getProductId())
.append("productCode", getProductCode())
.append("prodType", getProdType())
.append("productName", getProductName())
.append("productSpc", getProductSpc())
.append("wetDetailPlanId", getWetDetailPlanId())
.append("productDate", getProductDate())
.append("shiftId", getShiftId())
.append("ancestors", getAncestors())
.append("status", getStatus())
.append("remark", getRemark())
.append("attr1", getAttr1())
.append("attr2", getAttr2())
.append("attr3", getAttr3())
.append("attr4", getAttr4())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("factoryCode", getFactoryCode())
.append("materialCode", getMaterialCode())
.append("materialName", getMaterialName())
.append("materialSpc", getMaterialSpc())
.append("quantity", getQuantity())
.append("unit", getUnit())
.toString();
}
}

@ -1,12 +1,11 @@
package com.op.system.api.domain.dto;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.op.common.core.annotation.Excel;
import com.op.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;
import com.op.common.core.annotation.Excel;
import com.op.common.core.web.domain.BaseEntity;
/**
* mes mes_prepare_detail
@ -42,7 +41,9 @@ public class MesPrepareDetailDTO extends BaseEntity {
/** 生产数量 */
@Excel(name = "生产数量")
private Long quantity;
private String quantity;
private String fundQuanlity;
/** 工单生产日期 */
@JsonFormat(pattern = "yyyy-MM-dd")
@ -76,11 +77,57 @@ public class MesPrepareDetailDTO extends BaseEntity {
/** 产品类型 */
@Excel(name = "产品类型")
private String prodType;
/** 库位 */
private String locator;
private String needDate;
private String recoil;
private String buyFlag;
public String getBuyFlag() {
return buyFlag;
}
public void setBuyFlag(String buyFlag) {
this.buyFlag = buyFlag;
}
/** $column.columnComment */
@Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
private String factoryCode;
public String getRecoil() {
return recoil;
}
public void setRecoil(String recoil) {
this.recoil = recoil;
}
public String getFundQuanlity() {
return fundQuanlity;
}
public void setFundQuanlity(String fundQuanlity) {
this.fundQuanlity = fundQuanlity;
}
public String getNeedDate() {
return needDate;
}
public void setNeedDate(String needDate) {
this.needDate = needDate;
}
public String getLocator() {
return locator;
}
public void setLocator(String locator) {
this.locator = locator;
}
public void setRecordId(String recordId) {
this.recordId = recordId;
}
@ -123,11 +170,11 @@ public class MesPrepareDetailDTO extends BaseEntity {
public String getUnit() {
return unit;
}
public void setQuantity(Long quantity) {
public void setQuantity(String quantity) {
this.quantity = quantity;
}
public Long getQuantity() {
public String getQuantity() {
return quantity;
}
public void setProductDate(Date productDate) {
@ -197,27 +244,27 @@ public class MesPrepareDetailDTO extends BaseEntity {
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("recordId", getRecordId())
.append("prepareId", getPrepareId())
.append("materialCode", getMaterialCode())
.append("materailName", getMaterailName())
.append("materailSpc", getMaterailSpc())
.append("unit", getUnit())
.append("quantity", getQuantity())
.append("productDate", getProductDate())
.append("shiftId", getShiftId())
.append("status", getStatus())
.append("remark", getRemark())
.append("attr1", getAttr1())
.append("attr2", getAttr2())
.append("attr3", getAttr3())
.append("attr4", getAttr4())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("prodType", getProdType())
.append("factoryCode", getFactoryCode())
.toString();
.append("recordId", getRecordId())
.append("prepareId", getPrepareId())
.append("materialCode", getMaterialCode())
.append("materailName", getMaterailName())
.append("materailSpc", getMaterailSpc())
.append("unit", getUnit())
.append("quantity", getQuantity())
.append("productDate", getProductDate())
.append("shiftId", getShiftId())
.append("status", getStatus())
.append("remark", getRemark())
.append("attr1", getAttr1())
.append("attr2", getAttr2())
.append("attr3", getAttr3())
.append("attr4", getAttr4())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("prodType", getProdType())
.append("factoryCode", getFactoryCode())
.toString();
}
}

@ -161,6 +161,15 @@ public class MesReportWorkDTO extends BaseEntity {
private String createTimeEnd;
private String feedbackTimeStart;
private String feedbackTimeEnd;
private String endReport;
public String getEndReport() {
return endReport;
}
public void setEndReport(String endReport) {
this.endReport = endReport;
}
public BigDecimal getQuantitySplit() {
return quantitySplit;

@ -0,0 +1,45 @@
package com.op.system.api.domain.quality;
import com.op.common.core.annotation.Excel;
import com.op.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.math.BigDecimal;
import java.util.List;
/**
*
*echart
* @author zxl
* @date 2023-07-18
*/
public class ChartDTO {
private String name;
private String type;
private List<Double> data;
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public List<Double> getData() {
return data;
}
public void setData(List<Double> data) {
this.data = data;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

@ -0,0 +1,126 @@
package com.op.system.api.domain.quality;
import com.op.common.core.annotation.Excel;
import com.op.common.core.web.domain.TreeEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
/**
* sys_factory
*
* @author Open Platform
* @date 2023-07-03
*/
public class FactoryDto extends TreeEntity {
private static final long serialVersionUID = 1L;
/** 工厂id */
private Long factoryId;
/** 部门名称 */
@Excel(name = "工厂名称")
private String factoryName;
/** 负责人 */
@Excel(name = "负责人")
private String leader;
/** 联系电话 */
@Excel(name = "联系电话")
private String phone;
/** 邮箱 */
@Excel(name = "邮箱")
private String email;
/** 部门状态0正常 */
@Excel(name = "工厂状态")
private String status;
/** 删除标志0代表存在 */
private String delFlag;
/** 工厂编码 */
@Excel(name = "工厂编码")
private String factoryCode;
public void setFactoryId(Long factoryId) {
this.factoryId = factoryId;
}
public Long getFactoryId() {
return factoryId;
}
public void setFactoryName(String factoryName) {
this.factoryName = factoryName;
}
public String getFactoryName() {
return factoryName;
}
public void setLeader(String leader) {
this.leader = leader;
}
public String getLeader() {
return leader;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getPhone() {
return phone;
}
public void setEmail(String email) {
this.email = email;
}
public String getEmail() {
return email;
}
public void setStatus(String status) {
this.status = status;
}
public String getStatus() {
return status;
}
public void setDelFlag(String delFlag) {
this.delFlag = delFlag;
}
public String getDelFlag() {
return delFlag;
}
public String getFactoryCode() {
return factoryCode;
}
public void setFactoryCode(String factoryCode) {
this.factoryCode = factoryCode;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("factoryId", getFactoryId())
.append("parentId", getParentId())
.append("ancestors", getAncestors())
.append("factoryName", getFactoryName())
.append("orderNum", getOrderNum())
.append("leader", getLeader())
.append("phone", getPhone())
.append("email", getEmail())
.append("status", getStatus())
.append("delFlag", getDelFlag())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("factoryCode", getFactoryCode())
.toString();
}
}

@ -27,6 +27,16 @@ public class RemoteDeviceFallbackFactory implements FallbackFactory<RemoteDevice
public R createSpotCheckPlanTask() {
return R.fail("点检计划创建失败:" + throwable.getMessage());
}
@Override
public R createPatrolCheckPlanTask() {
return R.fail("巡检计划创建失败:" + throwable.getMessage());
}
@Override
public R createMaintenancePlanTask() {
return R.fail("保养计划创建失败:" + throwable.getMessage());
}
};
}
}

@ -0,0 +1,16 @@
package com.op.device.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
*
*
* @author wws
* @date 2023-11-15
*/
@RestController
@RequestMapping("/deviceInterface")
public class DeviceInterfaceController {
}

@ -78,7 +78,18 @@ public class DevicePDAController {
//维修
/**
*
*
*
* @param equRepairWorkOrder
* @return
*/
@GetMapping("/getMaintenancePendRecords")
public AjaxResult getMaintenancePendRecords(EquRepairWorkOrder equRepairWorkOrder) {
return devicePDAService.getMaintenancePendRecords(equRepairWorkOrder);
}
/**
*
*
* @param equRepairWorkOrder
* @return
@ -126,4 +137,19 @@ public class DevicePDAController {
return devicePDAService.updateMaintenanceRecords(equRepairWorkOrder);
}
//传故障类型
// @GetMapping(value = "/queryEquFaultTypeTree")
// public AjaxResult queryEquFaultTypeTree(EquRepairWorkOrder equRepairWorkOrder) {
// return devicePDAService.queryEquFaultTypeTree(equRepairWorkOrder);
// }
/**
*
* @param pdadto
* @return
*/
@GetMapping("/startMaintenanceTask")
public AjaxResult startMaintenanceTask(PDADTO pdadto) {
return devicePDAService.startMaintenanceTask(pdadto);
}
}

@ -38,5 +38,29 @@ public class DeviceTaskController {
return R.fail("点检计划生成失败");
}
/**
*
* @return
*/
@PostMapping("/createPatrolCheckPlanTask")
public R createPatrolCheckPlanTask() {
AjaxResult result = taskService.createPatrolCheckPlanTask();
if(result.isSuccess()){
return R.ok("巡检计划生成成功");
}
return R.fail("巡检计划生成失败");
}
/**
*
* @return
*/
@PostMapping("/createMaintenancePlanTask")
public R createMaintenancePlanTask() {
AjaxResult result = taskService.createMaintenancePlanTask();
if(result.isSuccess()){
return R.ok("保养计划生成成功");
}
return R.fail("保养计划生成失败");
}
}

@ -93,6 +93,6 @@ public class EquOrderController extends BaseController {
@Log(title = "计划工单", businessType = BusinessType.DELETE)
@DeleteMapping("/{orderIds}")
public AjaxResult remove(@PathVariable String[] orderIds) {
return toAjax(equOrderService.deleteEquOrderByOrderIds(orderIds));
return equOrderService.deleteEquOrderByOrderIds(orderIds);
}
}

@ -4,6 +4,7 @@ import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.op.device.domain.EquEquipment;
import com.op.device.domain.EquTeamUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@ -84,7 +85,7 @@ public class EquRepairOrderController extends BaseController {
@Log(title = "故障报修", businessType = BusinessType.UPDATE)
@PutMapping("/edit")
public AjaxResult edit(@RequestBody EquRepairOrder equRepairOrder) {
return toAjax(equRepairOrderService.updateEquRepairOrder(equRepairOrder));
return equRepairOrderService.updateEquRepairOrder(equRepairOrder);
}
/**
@ -130,9 +131,9 @@ public class EquRepairOrderController extends BaseController {
*
*/
@GetMapping("/getRepairPersonList")
public TableDataInfo getRepairPersonList(EquEquipment equEquipment) {
public TableDataInfo getRepairPersonList(EquTeamUser equTeamUser) {
startPage();
List<EquEquipment> list = equRepairOrderService.getRepairPersonList(equEquipment);
List<EquTeamUser> list = equRepairOrderService.getRepairPersonList(equTeamUser);
return getDataTable(list);
}

@ -74,7 +74,7 @@ public class EquSpareApplyController extends BaseController {
@Log(title = "申领记录", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody EquSpareApply equSpareApply) {
return toAjax(equSpareApplyService.insertEquSpareApply(equSpareApply));
return equSpareApplyService.insertEquSpareApply(equSpareApply);
}
/**
@ -94,7 +94,7 @@ public class EquSpareApplyController extends BaseController {
@Log(title = "申领记录", businessType = BusinessType.DELETE)
@DeleteMapping("/{applyIds}")
public AjaxResult remove(@PathVariable String[] applyIds) {
return toAjax(equSpareApplyService.deleteEquSpareApplyByApplyIds(applyIds));
return equSpareApplyService.deleteEquSpareApplyByApplyIds(applyIds);
}
/**

@ -74,6 +74,14 @@ public class EquFaultType extends BaseEntity {
// 创建日期结束
private String createTimeEnd;
//故障大类
// 字典名
private String dictLabel;
// 字典值
private String dictValue;
public List<Date> getCreateTimeArray() {
return createTimeArray;
}
@ -193,6 +201,22 @@ public class EquFaultType extends BaseEntity {
return delFlag;
}
public void setDictValue(String dictValue) {
this.dictValue = dictValue;
}
public String getDictValue() {
return dictValue;
}
public void setDictLabel(String dictLabel) {
this.dictLabel = dictLabel;
}
public String getDictLabel() {
return dictLabel;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

@ -150,7 +150,202 @@ public class EquOrder extends BaseEntity {
private int days;
private String equipmentName;
//检查项列表
private List<EquOrderStandard> standardList;
/** 检查项名称 */
private String itemName;
/** 检查项方法/工具 */
private String itemMethod;
/** 维护类型编码 */
private String itemType;
/** 维护类型名称 */
private String itemTypeName;
/** 主键 */
private String id;
public void setId(String id) {
this.id = id;
}
public String getId() {
return id;
}
//标准列表
public List<EquOrderStandard> getStandardList() {
return standardList;
}
public void setStandardList(List<EquOrderStandard> standardList) {
this.standardList = standardList;
}
private String planRestrict;
private String outsourceCode;
private List<Date> loopStartArray;
private Date loopStart;
private Date loopEnd;
private List<Date> loopEndArray;
private Date loopEndArrayStart;
private Date getLoopEndArrayEnd;
private List<Date> orderStartArray;
private Date orderStartArrayStart;
private Date orderStartArrayEnd;
private List<Date> orderEndArray;
private Date orderEndArrayStart;
private Date orderEndArrayEnd;
private List<String> upkeepPictures;
private String picturePath;
public String getPicturePath() {
return picturePath;
}
public void setPicturePath(String picturePath) {
this.picturePath = picturePath;
}
public List<String> getUpkeepPictures() {
return upkeepPictures;
}
public void setUpkeepPictures(List<String> upkeepPictures) {
this.upkeepPictures = upkeepPictures;
}
public List<Date> getOrderStartArray() {
return orderStartArray;
}
public void setOrderStartArray(List<Date> orderStartArray) {
this.orderStartArray = orderStartArray;
}
public Date getOrderStartArrayStart() {
return orderStartArrayStart;
}
public void setOrderStartArrayStart(Date orderStartArrayStart) {
this.orderStartArrayStart = orderStartArrayStart;
}
public Date getOrderStartArrayEnd() {
return orderStartArrayEnd;
}
public void setOrderStartArrayEnd(Date orderStartArrayEnd) {
this.orderStartArrayEnd = orderStartArrayEnd;
}
public List<Date> getOrderEndArray() {
return orderEndArray;
}
public void setOrderEndArray(List<Date> orderEndArray) {
this.orderEndArray = orderEndArray;
}
public Date getOrderEndArrayStart() {
return orderEndArrayStart;
}
public void setOrderEndArrayStart(Date orderEndArrayStart) {
this.orderEndArrayStart = orderEndArrayStart;
}
public Date getOrderEndArrayEnd() {
return orderEndArrayEnd;
}
public void setOrderEndArrayEnd(Date orderEndArrayEnd) {
this.orderEndArrayEnd = orderEndArrayEnd;
}
public List<Date> getLoopEndArray() {
return loopEndArray;
}
public void setLoopEndArray(List<Date> loopEndArray) {
this.loopEndArray = loopEndArray;
}
public Date getLoopEndArrayStart() {
return loopEndArrayStart;
}
public void setLoopEndArrayStart(Date loopEndArrayStart) {
this.loopEndArrayStart = loopEndArrayStart;
}
public Date getGetLoopEndArrayEnd() {
return getLoopEndArrayEnd;
}
public void setGetLoopEndArrayEnd(Date getLoopEndArrayEnd) {
this.getLoopEndArrayEnd = getLoopEndArrayEnd;
}
public List<Date> getLoopStartArray() {
return loopStartArray;
}
public void setLoopStartArray(List<Date> loopStartArray) {
this.loopStartArray = loopStartArray;
}
public Date getLoopStart() {
return loopStart;
}
public void setLoopStart(Date loopStart) {
this.loopStart = loopStart;
}
public Date getLoopEnd() {
return loopEnd;
}
public void setLoopEnd(Date loopEnd) {
this.loopEnd = loopEnd;
}
public String getOutsourceCode() {
return outsourceCode;
}
public void setOutsourceCode(String outsourceCode) {
this.outsourceCode = outsourceCode;
}
private List<EquOrderDetail> detailList;
private List<EquSpareApply> spareList;
public List<EquSpareApply> getSpareList() {
return spareList;
}
public void setSpareList(List<EquSpareApply> spareList) {
this.spareList = spareList;
}
public List<EquOrderDetail> getDetailList() {
return detailList;
}
public void setDetailList(List<EquOrderDetail> detailList) {
this.detailList = detailList;
}
public String getPlanRestrict() {
return planRestrict;
@ -439,6 +634,35 @@ public class EquOrder extends BaseEntity {
return delFlag;
}
//检查项详情
public void setItemName(String itemName) {
this.itemName = itemName;
}
public String getItemName() {
return itemName;
}
public void setItemMethod(String itemMethod) {
this.itemMethod = itemMethod;
}
public String getItemMethod() {
return itemMethod;
}
public void setItemType(String itemType) {
this.itemType = itemType;
}
public String getItemType() {
return itemType;
}
public void setItemTypeName(String itemTypeName) {
this.itemTypeName = itemTypeName;
}
public String getItemTypeName() {
return itemTypeName;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

@ -53,7 +53,7 @@ public class EquOrderDetail extends BaseEntity {
/** 工厂 */
@Excel(name = "工厂")
private String factroyCode;
private String factoryCode;
/** 备用字段1 */
@Excel(name = "备用字段1")
@ -143,12 +143,12 @@ public class EquOrderDetail extends BaseEntity {
public String getItemTypeName() {
return itemTypeName;
}
public void setFactroyCode(String factroyCode) {
this.factroyCode = factroyCode;
public void setFactoryCode(String factoryCode) {
this.factoryCode = factoryCode;
}
public String getFactroyCode() {
return factroyCode;
public String getFactoryCode() {
return factoryCode;
}
public void setAttr1(String attr1) {
this.attr1 = attr1;
@ -191,7 +191,7 @@ public class EquOrderDetail extends BaseEntity {
.append("itemMethod", getItemMethod())
.append("itemType", getItemType())
.append("itemTypeName", getItemTypeName())
.append("factroyCode", getFactroyCode())
.append("factoryCode", getFactoryCode())
.append("attr1", getAttr1())
.append("attr2", getAttr2())
.append("attr3", getAttr3())

@ -1,6 +1,9 @@
package com.op.device.domain;
import java.math.BigDecimal;
import java.util.List;
import com.op.common.core.domain.BaseFileData;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.op.common.core.annotation.Excel;
@ -83,6 +86,7 @@ public class EquOrderStandard extends BaseEntity {
// 图片路径
private String picturePath;
private List<BaseFileData> picturePaths;
private String standardTypeName;
@ -96,8 +100,32 @@ public class EquOrderStandard extends BaseEntity {
private String repairPicture;
//检查项检查方法
private String itemMethod;
private String itemName;
public String getItemName() {
return itemName;
}
public void setItemName(String itemName) {
this.itemName = itemName;
}
private List<String> checkPictrueList;
public List<String> getCheckPictrueList() {
return checkPictrueList;
}
public void setCheckPictrueList(List<String> checkPictrueList) {
this.checkPictrueList = checkPictrueList;
}
public List<BaseFileData> getPicturePaths() {
return picturePaths;
}
public void setPicturePaths(List<BaseFileData> picturePaths) {
this.picturePaths = picturePaths;
}
public String getRepairPicture() {
return repairPicture;
@ -275,14 +303,6 @@ public class EquOrderStandard extends BaseEntity {
return delFlag;
}
//检查项检查方法
public void setItemMethod(String itemMethod) {
this.itemMethod = itemMethod;
}
public String getItemMethod() {
return itemMethod;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

@ -61,6 +61,10 @@ public class EquOutsourceWork extends BaseEntity {
@Excel(name = "委外用时")
private String workCostTime;
/** 委外状态 */
@Excel(name = "委外状态")
private String workStatus;
/** 备用字段1 */
@Excel(name = "备用字段1")
private String attr1;
@ -185,6 +189,13 @@ public class EquOutsourceWork extends BaseEntity {
return workCostTime;
}
public void setWorkStatus(String workStatus) {
this.workStatus = workStatus;
}
public String getWorkStatus() {
return workStatus;
}
public void setAttr1(String attr1) {
this.attr1 = attr1;
}

@ -145,6 +145,106 @@ public class EquPlan extends BaseEntity {
private String shutDown;
private String planEquId;
private List<Date> loopStartArray;
private Date loopStart;
private Date loopEnd;
private List<Date> loopEndArray;
private Date loopEndArrayStart;
private Date getLoopEndArrayEnd;
private String workPerson;
private String workOutsourcingUnit;
private String workConnection;
private String workReason;
public String getWorkOutsourcingUnit() {
return workOutsourcingUnit;
}
public void setWorkOutsourcingUnit(String workOutsourcingUnit) {
this.workOutsourcingUnit = workOutsourcingUnit;
}
public String getWorkConnection() {
return workConnection;
}
public void setWorkConnection(String workConnection) {
this.workConnection = workConnection;
}
public String getWorkReason() {
return workReason;
}
public void setWorkReason(String workReason) {
this.workReason = workReason;
}
public String getWorkPerson() {
return workPerson;
}
public void setWorkPerson(String workPerson) {
this.workPerson = workPerson;
}
public List<Date> getLoopEndArray() {
return loopEndArray;
}
public void setLoopEndArray(List<Date> loopEndArray) {
this.loopEndArray = loopEndArray;
}
public Date getLoopEndArrayStart() {
return loopEndArrayStart;
}
public void setLoopEndArrayStart(Date loopEndArrayStart) {
this.loopEndArrayStart = loopEndArrayStart;
}
public Date getGetLoopEndArrayEnd() {
return getLoopEndArrayEnd;
}
public void setGetLoopEndArrayEnd(Date getLoopEndArrayEnd) {
this.getLoopEndArrayEnd = getLoopEndArrayEnd;
}
public Date getLoopEnd() {
return loopEnd;
}
public void setLoopEnd(Date loopEnd) {
this.loopEnd = loopEnd;
}
public Date getLoopStart() {
return loopStart;
}
public void setLoopStart(Date loopStart) {
this.loopStart = loopStart;
}
public List<Date> getLoopStartArray() {
return loopStartArray;
}
public void setLoopStartArray(List<Date> loopStartArray) {
this.loopStartArray = loopStartArray;
}
public String getPlanEquId() {
return planEquId;
}

@ -64,6 +64,16 @@ public class EquPlanEqu extends BaseEntity {
// 主计划code
private String planCode;
private String spareOnList;
public String getSpareOnList() {
return spareOnList;
}
public void setSpareOnList(String spareOnList) {
this.spareOnList = spareOnList;
}
// 备件
private List<EquPlanEquSpare> spareList;

@ -4,6 +4,7 @@ import java.util.Date;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.op.common.core.domain.BaseFileData;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.op.common.core.annotation.Excel;
@ -51,9 +52,13 @@ public class EquRepairOrder extends BaseEntity {
@Excel(name = "是否立即处理")
private String orderHandle;
/** 报修人 */
@Excel(name = "报修人")
private String orderRepairman;
/** 报修人编号 */
@Excel(name = "报修人编号")
private String orderRepairmanCode;
/** 报修人名字 */
@Excel(name = "报修人名字")
private String orderRepairmanName;
/** 联系方式 */
@Excel(name = "联系方式")
@ -168,7 +173,20 @@ public class EquRepairOrder extends BaseEntity {
//图片文件
private String fileList;
private List<EquFile> files;
private List<BaseFileData> files;
//检查项列表
private List<EquOrder> checkList;
//时间列表 虚拟字段
private List<Date> orderBreakdownTimeArray;
private List<Date> orderTimeArray;
//故障开始时间、故障结束时间
private String orderBreakdownTimeStart;
private String orderBreakdownTimeEnd;
//报修开始时间、结束时间
private String orderTimeStart;
private String orderTimeEnd;
//图片文件
public String getFileList() {
@ -177,10 +195,10 @@ public class EquRepairOrder extends BaseEntity {
public void setFileList(String fileList) {
this.fileList = fileList;
}
public List<EquFile> getFiles() {
public List<BaseFileData> getFiles() {
return files;
}
public void setFiles(List<EquFile> files) {
public void setFiles(List<BaseFileData> files) {
this.files = files;
}
@ -355,12 +373,20 @@ public class EquRepairOrder extends BaseEntity {
public String getOrderHandle() {
return orderHandle;
}
public void setOrderRepairman(String orderRepairman) {
this.orderRepairman = orderRepairman;
public void setOrderRepairmanCode(String orderRepairmanCode) {
this.orderRepairmanCode = orderRepairmanCode;
}
public String getOrderRepairman() {
return orderRepairman;
public String getOrderRepairmanCode() {
return orderRepairmanCode;
}
public void setOrderRepairmanName(String orderRepairmanName) {
this.orderRepairmanName = orderRepairmanName;
}
public String getOrderRepairmanName() {
return orderRepairmanName;
}
public void setOrderConnection(String orderConnection) {
this.orderConnection = orderConnection;
@ -440,6 +466,56 @@ public class EquRepairOrder extends BaseEntity {
return factoryCode;
}
public List<EquOrder> getCheckList() {
return checkList;
}
public void setCheckList(List<EquOrder> checkList) {
this.checkList = checkList;
}
//时间列表
public List<Date> getOrderBreakdownTimeArray() {
return orderBreakdownTimeArray;
}
public void setOrderBreakdownTimeArray(List<Date> orderBreakdownTimeArray) {
this.orderBreakdownTimeArray = orderBreakdownTimeArray;
}
public List<Date> getOrderTimeArray() {
return orderTimeArray;
}
public void setOrderTimeArray(List<Date> orderTimeArray) {
this.orderTimeArray = orderTimeArray;
}
//故障开始时间、结束时间
public String getOrderBreakdownTimeStart() {
return orderBreakdownTimeStart;
}
public void setOrderBreakdownTimeStart(String orderBreakdownTimeStart) {
this.orderBreakdownTimeStart = orderBreakdownTimeStart;
}
public String getOrderBreakdownTimeEnd() {
return orderBreakdownTimeEnd;
}
public void setOrderBreakdownTimeEnd(String orderBreakdownTimeEnd) {
this.orderBreakdownTimeEnd = orderBreakdownTimeEnd;
}
//报修开始时间、结束时间
public String getOrderTimeStart() {
return orderTimeStart;
}
public void setOrderTimeStart(String orderTimeStart) {
this.orderTimeStart = orderTimeStart;
}
public String getOrdeTimeEnd() {
return orderTimeEnd;
}
public void setOrderTimeEnd(String orderTimeEnd) {
this.orderTimeEnd = orderTimeEnd;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
@ -451,7 +527,7 @@ public class EquRepairOrder extends BaseEntity {
.append("orderSource", getOrderSource())
.append("orderTime", getOrderTime())
.append("orderHandle", getOrderHandle())
.append("orderRepairman", getOrderRepairman())
.append("orderRepairmanCode", getOrderRepairmanCode())
.append("orderConnection", getOrderConnection())
.append("orderStatus", getOrderStatus())
.append("orderRelevance", getOrderRelevance())

@ -1,9 +1,11 @@
package com.op.device.domain;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.op.common.core.domain.BaseFileData;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.op.common.core.annotation.Excel;
@ -80,9 +82,8 @@ public class EquRepairWorkOrder extends BaseEntity {
private String workFaultDesc;
/** 维修用时 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "维修用时", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date workCostTime;
@Excel(name = "维修用时")
private String workCostTime;
/** 维修费用 */
@Excel(name = "维修费用")
@ -122,12 +123,21 @@ public class EquRepairWorkOrder extends BaseEntity {
/** 维修开始时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "维修开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private String workStartTime;
private Date workStartTime;
/** 维修结束时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "维修结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private String workEndTime;
private Date workEndTime;
//维修停机真正开始时间
private Date actualDownStartTime;
//维修停机真正结束时间
private Date actualDownEndTime;
/** 联系方式 */
private String workConnection;
// 设备
/** 设备名称 */
@ -150,6 +160,14 @@ public class EquRepairWorkOrder extends BaseEntity {
@Excel(name = "部门")
private String department;
/** 所属工作中心编码 */
@Excel(name = "所属工作中心编码")
private String workshopCode;
/** 所属工作中心名称 */
@Excel(name = "所属工作中心名称")
private String workshopName;
//报修
/** 故障描述 */
@Excel(name = "故障描述")
@ -170,20 +188,16 @@ public class EquRepairWorkOrder extends BaseEntity {
private Date orderTime;
/** 报修人 */
@Excel(name = "报修人")
private String orderRepairman;
private String orderRepairmanCode;
/** 联系方式 */
@Excel(name = "联系方式")
/** 报修人联系方式 */
private String orderConnection;
//班组
/** 班组名称 */
@Excel(name = "班组名称")
private String teamName;
/** 班组人员 */
@Excel(name = "班组人员")
private String teamPerson;
//时间列表 虚拟字段
@ -204,16 +218,66 @@ public class EquRepairWorkOrder extends BaseEntity {
/** 委外单位 */
private String workOutsourcingUnit;
/** 联系方式 */
private String workConnection;
private String outSourceConnection;
//手持
//用户id
private String userId;
//检查项列表
private List<EquOrderStandard> checkList;
private List<EquOrder> detailList;
//维修前照片
private String beforeRepairFile;
private List<BaseFileData> beforeRepairFiles;
//维修后照片
private String afterRepairFile;
private List<BaseFileData> afterRepairFiles;
//申领单列表
private List<EquSpareApply> applyList;
//检查项列表
private List<EquOrderStandard> standardList;
//维修前 维修后
public String getAfterRepairFile() {
return afterRepairFile;
}
public void setAfterRepairFile(String afterRepairFile) {
this.afterRepairFile = afterRepairFile;
}
public List<BaseFileData> getAfterRepairFiles() {
return afterRepairFiles;
}
public void setAfterRepairFiles(List<BaseFileData> afterRepairFiles) {
this.afterRepairFiles = afterRepairFiles;
}
public String getBeforeRepairFile() {
return beforeRepairFile;
}
public void setBeforeRepairFile(String beforeRepairFile) {
this.beforeRepairFile = beforeRepairFile;
}
public List<BaseFileData> getBeforeRepairFiles() {
return beforeRepairFiles;
}
public void setBeforeRepairFiles(List<BaseFileData> beforeRepairFiles) {
this.beforeRepairFiles = beforeRepairFiles;
}
//detailList 检查项详情
public List<EquOrder> getDetailList() {
return detailList;
}
public void setDetailList(List<EquOrder> detailList) {
this.detailList = detailList;
}
//报修
public void setOrderDesc(String orderDesc) {
this.orderDesc = orderDesc;
@ -243,12 +307,13 @@ public class EquRepairWorkOrder extends BaseEntity {
return orderTime;
}
public void setOrderRepairman(String orderRepairman) {
this.orderRepairman = orderRepairman;
public void setOrderRepairmanCode(String orderRepairmanCode) {
this.orderRepairmanCode = orderRepairmanCode;
}
public String getOrderRepairman() {
return orderRepairman;
public String getOrderRepairmanCode() {
return orderRepairmanCode;
}
public void setOrderConnection(String orderConnection) {
this.orderConnection = orderConnection;
}
@ -292,6 +357,20 @@ public class EquRepairWorkOrder extends BaseEntity {
return department;
}
public void setWorkshopCode(String workshopCode) {
this.workshopCode = workshopCode;
}
public String getWorkshopCode() {
return workshopCode;
}
public void setWorkshopName(String workshopName) {
this.workshopName = workshopName;
}
public String getWorkshopName() {
return workshopName;
}
public void setWorkId(String workId) {
this.workId = workId;
}
@ -299,6 +378,7 @@ public class EquRepairWorkOrder extends BaseEntity {
return workId;
}
public void setOrderId(String orderId) {
this.orderId = orderId;
}
@ -397,10 +477,10 @@ public class EquRepairWorkOrder extends BaseEntity {
return workFaultDesc;
}
public void setWorkCostTime(Date workCostTime) {
public void setWorkCostTime(String workCostTime) {
this.workCostTime = workCostTime;
}
public Date getWorkCostTime() {
public String getWorkCostTime() {
return workCostTime;
}
@ -469,20 +549,27 @@ public class EquRepairWorkOrder extends BaseEntity {
}
//维修工单 新增字段 维修开始结束时间
public void setWorkStartTime(String workStartTime) {
public void setWorkStartTime(Date workStartTime) {
this.workStartTime = workStartTime;
}
public String getWorkStartTime() {
public Date getWorkStartTime() {
return workStartTime;
}
public void setWorkEndTime(String workEndTime) {
public void setWorkEndTime(Date workEndTime) {
this.workEndTime = workEndTime;
}
public String getWorkEndTime() {
public Date getWorkEndTime() {
return workEndTime;
}
public void setWorkConnection(String workConnection) {
this.workConnection = workConnection;
}
public String getWorkConnection() {
return workConnection;
}
//班组
public void setTeamName(String teamName) {
this.teamName = teamName;
@ -528,17 +615,17 @@ public class EquRepairWorkOrder extends BaseEntity {
}
//计划停机开始时间、结束时间
public String getWorkPlanTimeStart() {
return workPlanTimeStart;
public Date getActualDownStartTime() {
return actualDownStartTime;
}
public void setWorkPlanTimeStart(String workPlanTimeStart) {
this.workPlanTimeStart = workPlanTimeStart;
public void setActualDownStartTime(Date actualDownStartTime) {
this.actualDownStartTime = actualDownStartTime;
}
public String getWorkPlanTimeEnd() {
return workPlanTimeEnd;
public Date getActualDownEndTime() {
return actualDownEndTime;
}
public void setWorkPlanTimeEnd(String workPlanTimeEnd) {
this.workPlanTimeEnd = workPlanTimeEnd;
public void setActualDownEndTime(Date actualDownEndTime) {
this.actualDownEndTime = actualDownEndTime;
}
//委外维修人员/委外维修原因 虚拟字段
@ -563,11 +650,11 @@ public class EquRepairWorkOrder extends BaseEntity {
return workOutsourcingUnit;
}
public void setWorkConnection(String workConnection) {
this.workConnection = workConnection;
public void setOutSourceConnection(String outSourceConnection) {
this.outSourceConnection = outSourceConnection;
}
public String getWorkConnection() {
return workConnection;
public String getOutSourceConnection() {
return outSourceConnection;
}
//手持 用户userId
@ -578,13 +665,6 @@ public class EquRepairWorkOrder extends BaseEntity {
return userId;
}
public List<EquOrderStandard> getCheckList() {
return checkList;
}
public void setCheckList(List<EquOrderStandard> checkList) {
this.checkList = checkList;
}
public List<EquSpareApply> getApplyList() {
return applyList;
}
@ -592,6 +672,46 @@ public class EquRepairWorkOrder extends BaseEntity {
this.applyList = applyList;
}
//实际停机开始时间、结束时间
public String getWorkPlanTimeStart() {
return workPlanTimeStart;
}
public void setWorkPlanTimeStart(String workPlanTimeStart) {
this.workPlanTimeStart = workPlanTimeStart;
}
public String getWorkPlanTimeEnd() {
return workPlanTimeEnd;
}
public void setWorkPlanTimeEnd(String workPlanTimeEnd) {
this.workPlanTimeEnd = workPlanTimeEnd;
}
//图片文件
private String fileList;
private List<BaseFileData> files;
//图片文件
public String getFileList() {
return fileList;
}
public void setFileList(String fileList) {
this.fileList = fileList;
}
public List<BaseFileData> getFiles() {
return files;
}
public void setFiles(List<BaseFileData> files) {
this.files = files;
}
//标准列表
public List<EquOrderStandard> getStandardList() {
return standardList;
}
public void setStandardList(List<EquOrderStandard> standardList) {
this.standardList = standardList;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

@ -1,5 +1,6 @@
package com.op.device.domain;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@ -39,7 +40,7 @@ public class EquSpareApply extends BaseEntity {
/** 数量 */
@Excel(name = "数量")
private Long spareQuantity;
private BigDecimal spareQuantity;
/** 使用组线 */
@Excel(name = "使用组线")
@ -98,6 +99,35 @@ public class EquSpareApply extends BaseEntity {
/** 领用类型 */
private String applyType ;
//批量新增申领记录
private List<EquSpareApply> spareApplyLists;
/** 库存表 id */
private String storageId;
/** 总数量 */
private BigDecimal amount;
/** 物料号 */
@Excel(name = "物料号")
private String materialCode;
/** 物料描述 */
@Excel(name = "物料描述")
private String materialDesc;
public void setMaterialCode(String materialCode) {
this.materialCode = materialCode;
}
public String getMaterialCode() {
return materialCode;
}
public void setMaterialDesc(String materialDesc) {
this.materialDesc = materialDesc;
}
public String getMaterialDesc() {
return materialDesc;
}
public List<Date> getApplyTimeArray() {
return applyTimeArray;
}
@ -157,11 +187,11 @@ public class EquSpareApply extends BaseEntity {
public String getSpareModel() {
return spareModel;
}
public void setSpareQuantity(Long spareQuantity) {
public void setSpareQuantity(BigDecimal spareQuantity) {
this.spareQuantity = spareQuantity;
}
public Long getSpareQuantity() {
public BigDecimal getSpareQuantity() {
return spareQuantity;
}
public void setSpareGroupLine(String spareGroupLine) {
@ -261,6 +291,31 @@ public class EquSpareApply extends BaseEntity {
this.applyType=applyType;
}
//批量新增申领记录
public List<EquSpareApply> getSpareApplyLists(){
return this.spareApplyLists;
}
/** 领用类型 */
public void setSpareApplyLists(List<EquSpareApply> spareApplyLists){
this.spareApplyLists = spareApplyLists;
}
//id
public void setStorageId(String storageId) {
this.storageId = storageId;
}
public String getStorageId() {
return storageId;
}
//总数量
public void setAmount(BigDecimal amount) {
this.amount = amount;
}
public BigDecimal getAmount() {
return amount;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

@ -41,6 +41,10 @@ public class EquTeamUser extends BaseEntity {
@Excel(name = "人员拼接名字")
private String teamUserName;
/** 手机号 */
@Excel(name = "手机号")
private String phonenumber;
public void setId(String id) {
this.id = id;
}
@ -90,6 +94,14 @@ public class EquTeamUser extends BaseEntity {
this.teamUserName = teamUserName;
}
public void setPhonenumber(String phonenumber) {
this.phonenumber = phonenumber;
}
public String getPhonenumber() {
return phonenumber;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

@ -5,6 +5,26 @@ public class PDADTO {
private String userId;
private String planType;
private String orderCode;
private String shutDown;
public String getOrderCode() {
return orderCode;
}
public void setOrderCode(String orderCode) {
this.orderCode = orderCode;
}
public String getShutDown() {
return shutDown;
}
public void setShutDown(String shutDown) {
this.shutDown = shutDown;
}
public String getUserId() {
return userId;
}

@ -1,9 +1,6 @@
package com.op.device.domain.vo;
import com.op.device.domain.EquOrder;
import com.op.device.domain.EquOrderDetail;
import com.op.device.domain.EquOrderEquSpare;
import com.op.device.domain.Equipment;
import com.op.device.domain.*;
import java.util.List;
@ -12,13 +9,13 @@ public class InspectionWorkVO {
private EquOrder order;
private Equipment equ;
private List<EquOrderDetail> detailList;
private List<EquOrderEquSpare> spareList;
private List<EquSpareApply> spareList;
public List<EquOrderEquSpare> getSpareList() {
public List<EquSpareApply> getSpareList() {
return spareList;
}
public void setSpareList(List<EquOrderEquSpare> spareList) {
public void setSpareList(List<EquSpareApply> spareList) {
this.spareList = spareList;
}

@ -21,4 +21,6 @@ public interface DeviceTaskMapper {
List<EquPlan> getPlans(EquPlan equPlan);
EquOrder getNewTaskOrder(EquPlan quPlan);
EquOrder getNewTaskOrder0(EquPlan plan);
}

@ -3,6 +3,7 @@ package com.op.device.mapper;
import java.util.List;
import com.op.device.domain.EquFaultType;
import com.op.device.domain.EquRepairWorkOrder;
/**
* Mapper
@ -64,4 +65,7 @@ public interface EquFaultTypeMapper {
* @return
*/
int selectSerialNumber();
//故障报修第一级
List<EquFaultType> selectFirstLevelList(EquRepairWorkOrder equRepairWorkOrder);
}

@ -74,4 +74,11 @@ public interface EquFileMapper {
//删除照图片
public void deleteEquFileBySourceId(String orderId);
/**
*
* @param selectTemp
* @return
*/
List<String> selectUrlList(BaseFileData selectTemp);
}

@ -78,4 +78,10 @@ public interface EquOrderDetailMapper {
List<EquOrderDetail> selectEquOrderDetailByOrderCode(String orderCode);
int insertEquOrderDetails(@Param("list") List<EquPlanDetail> details);
/**
* orderIds
* @param orderIds
*/
void delEquOrderDetailByorderIds(String[] orderIds);
}

@ -70,4 +70,6 @@ public interface EquOrderEquMapper {
int insertEquOrderEqus(@Param("list") List<EquPlanEqu> equs);
// 通过工单code查询设备order
EquOrderEqu selectEquOrderEquListByOrderCode(String orderCode);
}

@ -3,6 +3,8 @@ package com.op.device.mapper;
import java.util.List;
import com.op.device.domain.EquOrderEquSpare;
import com.op.device.domain.EquPlanEquSpare;
import org.apache.ibatis.annotations.Param;
/**
* Mapper
@ -72,4 +74,6 @@ public interface EquOrderEquSpareMapper {
* @return
*/
List<EquOrderEquSpare> selectEquOrderEquSpareByOrderCode(String orderCode);
int insertEquOrderEquSpares(@Param("list") List<EquPlanEquSpare> spares);
}

@ -4,6 +4,7 @@ import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.op.device.domain.EquOrder;
import com.op.device.domain.EquOrderStandard;
import com.op.device.domain.EquPlan;
import com.op.device.domain.dto.PDADTO;
import org.apache.ibatis.annotations.Mapper;
@ -120,4 +121,44 @@ public interface EquOrderMapper {
*/
List<EquOrder> selectTodayTask(PDADTO pdadto);
/**
*
* @param equipmentCode
* @return
*/
String selectEquipmentNameByEquCode(String equipmentCode);
/**
* OrderCodeID
* @param orderCode
* @return
*/
List<String> getIdsByOrderCode(String orderCode);
/**
*
* @param equOrder
* @return
*/
void updateEquOrderRepairCode(EquOrder equOrder);
/**
* PC
* @param
* @return
*/
List<EquOrder> selectCheckListByWorkCode(EquOrder equOrder);
/**
* PC
* @param
* @return
*/
List<EquOrder> selectCheckListByRepairCode(EquOrder equOrder);
/**
*
* @param orderIds
*/
void delEquOrderByOrderIds(String[] orderIds);
}

@ -68,5 +68,11 @@ public interface EquOrderPersonMapper {
*/
List<String> selectEquOrderPersonByOrderCode(String orderCode);
int insertEquOrderPlans(@Param("list") List<EquPlanPerson> persons);
int insertEquOrderPersons(@Param("list") List<EquPlanPerson> persons);
/**
* ids
* @param orderIds
*/
void delEquOrderPersonByorderIds(String[] orderIds);
}

@ -71,11 +71,39 @@ public interface EquOrderStandardMapper {
List<EquOrderStandard> selectEquOrderStandardByParentCode(String code);
/**
*
* @param equOrder
* @return
*
* @param files
*/
void insertBaseFileBatch(@Param("baseFiles")List<BaseFileData> files);
/**
*
*/
void deleteBaseFileBySourceId(String id);
/**
*
*/
public List<BaseFileData> getBaseFileBatch(String id);
//PC查询点检巡检报修
List<EquOrderStandard> selectPdaEquOrderList(EquOrderStandard equOrderStandard);
public List<EquOrderStandard> selectPdaEquOrderList(EquOrder equOrder);
int insertEquOrderStandards(@Param("list") List<EquPlanStandard> standards);
/**
*
*/
void updateStandardAfterRepair(EquOrderStandard equOrderStandard);
/**
* orderIds
* @param orderIds
*/
void delEquOrderStandardByorderIds(String[] orderIds);
//更新标准
void updateActualValues(EquOrderStandard standardList);
}

@ -62,4 +62,7 @@ public interface EquOutsourceWorkMapper {
//流水号
public int selectWorkCodeSerialNumber();
//通过repairCode删除存在的委外记录
public void deleteEquOutsourceWorkByRepairCode(String workCode);
}

@ -5,7 +5,9 @@ import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.op.common.core.domain.BaseFileData;
import com.op.device.domain.EquEquipment;
import com.op.device.domain.EquFile;
import com.op.device.domain.EquRepairOrder;
import com.op.device.domain.EquTeamUser;
import org.apache.ibatis.annotations.Param;
/**
@ -71,7 +73,7 @@ public interface EquRepairOrderMapper {
//查询报修人员列表
@DS("master")
List<EquEquipment> getRepairPersonList(EquEquipment equEquipment);
List<EquTeamUser> getRepairPersonList(EquTeamUser equTeamUser);
/**
* code
@ -85,4 +87,23 @@ public interface EquRepairOrderMapper {
* @param repairCode
*/
void deleteEquRepairOrderByRepairCode(String repairCode);
/**
*
*/
Boolean insertBaseFileBatch(@Param("baseFiles") List<BaseFileData> baseFiles);
/**
*
*/
void deleteBaseFileBySourceId(String OrderId);
/**
*
*/
public List<BaseFileData> getBaseFileBatch(String orderId);
//联系方式
@DS("master")
EquTeamUser getRepairPhoneNumber(EquTeamUser equTeamUser);
}

@ -3,8 +3,10 @@ package com.op.device.mapper;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.op.common.core.domain.BaseFileData;
import com.op.device.domain.EquRepairWorkOrder;
import com.op.device.domain.EquTeamUser;
import org.apache.ibatis.annotations.Param;
/**
* Mapper
@ -22,13 +24,20 @@ public interface EquRepairWorkOrderMapper {
public EquRepairWorkOrder selectEquRepairWorkOrderByWorkId(String workId);
/**
*
*
*
* @param equRepairWorkOrder
* @return
*/
public List<EquRepairWorkOrder> selectEquRepairWorkOrderList(EquRepairWorkOrder equRepairWorkOrder);
/**
*
*
* @param equRepairWorkOrder
* @return
*/
public List<EquRepairWorkOrder> selectRepairWorkOrderList(EquRepairWorkOrder equRepairWorkOrder);
/**
*
*
@ -70,4 +79,29 @@ public interface EquRepairWorkOrderMapper {
//获取维修人员列表
@DS("master")
public List<EquTeamUser> getMaintenancePersonList(EquTeamUser equTeamUser);
/**
*
*/
public List<BaseFileData> getBaseFileBatch(String workId);
/**
*
*/
void deleteBaseFileBySourceId(String workId);
/**
*
*/
Boolean insertBaseFileBatch(@Param("baseFiles") List<BaseFileData> baseFiles);
//更新维修工单状态
void updateWorkStatus(String repairCode);
/**
*
* @param workCode
* @return
*/
EquRepairWorkOrder selectEquRepairWorkOrderByWorkCode(String workCode);
}

@ -62,4 +62,35 @@ public interface EquSpareApplyMapper {
//查询维修工单对应的备件申领记录
public List<EquSpareApply> selectRepairSparePartsRecord(EquRepairWorkOrder equRepairWorkOrder);
/**
*
* @return
*/
int selectSerialNumber();
/**
* codelist
* @param orderCode
* @return
*/
List<EquSpareApply> selectEquSpareApplyListByWorkCode(String orderCode);
/**
* ids
* @param orderIds
*/
void delEquSpareApplyByorderIds(String[] orderIds);
/**
*
* @param applyIds
*/
void delEquSpareApplyByIds(String[] applyIds);
/**
*
* @param id
*/
void delEquSpareApplyByApplyId(String id);
}

@ -73,6 +73,6 @@ public interface EquTeamMapper {
public List<EquTeamUser> selectTeamMembers(EquTeamUser equTeamUser);
//查询特定人员
@DS("master")
@DS("#master")
public EquTeamUser selectTeamMember(EquTeamUser equTeamUser);
}

@ -3,6 +3,7 @@ package com.op.device.mapper;
import java.math.BigDecimal;
import java.util.List;
import com.op.device.domain.EquSpareApply;
import com.op.device.domain.SparePartsLedger;
/**
@ -67,4 +68,15 @@ public interface SparePartsLedgerMapper {
*/
BigDecimal selectRealAmountByMaterialCode(String materialCode);
/**
*
* @param apply
*/
void updateSpareNumReduce(EquSpareApply apply);
/**
*
* @param apply
*/
void updateSpareNumAdd(EquSpareApply apply);
}

@ -0,0 +1,7 @@
package com.op.device.service;
/**
*
*/
public interface IDeviceInterfaceService {
}

@ -90,4 +90,17 @@ public interface IDevicePDAService {
* @return
*/
public AjaxResult updateMaintenanceRecords(EquRepairWorkOrder equRepairWorkOrder);
//获取设备故障类型
// public AjaxResult queryEquFaultTypeTree(EquRepairWorkOrder equRepairWorkOrder);
//待处理
AjaxResult getMaintenancePendRecords(EquRepairWorkOrder equRepairWorkOrder);
/**
*
* @param pdadto
* @return
*/
AjaxResult startMaintenanceTask(PDADTO pdadto);
}

@ -13,4 +13,8 @@ import com.op.device.domain.EquPlan;
public interface IDeviceTaskService {
AjaxResult createSpotCheckPlanTask();
AjaxResult createPatrolCheckPlanTask();
AjaxResult createMaintenancePlanTask();
}

@ -50,7 +50,7 @@ public interface IEquOrderService {
* @param orderIds
* @return
*/
public int deleteEquOrderByOrderIds(String[] orderIds);
public AjaxResult deleteEquOrderByOrderIds(String[] orderIds);
/**
*

@ -2,10 +2,9 @@ package com.op.device.service;
import java.util.List;
import com.op.common.core.web.domain.AjaxResult;
import com.op.device.domain.*;
import com.op.device.domain.EquEquipment;
import com.op.device.domain.EquEquipment;
import com.op.device.domain.EquRepairOrder;
import com.op.device.domain.EquRepairWorkOrder;
/**
* Service
@ -44,7 +43,7 @@ public interface IEquRepairOrderService {
* @param equRepairOrder
* @return
*/
public int updateEquRepairOrder(EquRepairOrder equRepairOrder);
public AjaxResult updateEquRepairOrder(EquRepairOrder equRepairOrder);
/**
*
@ -77,5 +76,5 @@ public interface IEquRepairOrderService {
public int checkEquRepairOrder(EquRepairOrder equRepairOrder);
//查询报修人员列表
List<EquEquipment> getRepairPersonList(EquEquipment equEquipment);
List<EquTeamUser> getRepairPersonList(EquTeamUser equTeamUser);
}

@ -2,6 +2,7 @@ package com.op.device.service;
import java.util.List;
import com.op.common.core.web.domain.AjaxResult;
import com.op.device.domain.EquRepairWorkOrder;
import com.op.device.domain.EquSpareApply;
@ -34,7 +35,7 @@ public interface IEquSpareApplyService {
* @param equSpareApply
* @return
*/
public int insertEquSpareApply(EquSpareApply equSpareApply);
public AjaxResult insertEquSpareApply(EquSpareApply equSpareApply);
/**
*
@ -50,7 +51,7 @@ public interface IEquSpareApplyService {
* @param applyIds
* @return
*/
public int deleteEquSpareApplyByApplyIds(String[] applyIds);
public AjaxResult deleteEquSpareApplyByApplyIds(String[] applyIds);
/**
*

@ -0,0 +1,11 @@
package com.op.device.service.impl;
import com.op.device.service.IDeviceInterfaceService;
import org.springframework.stereotype.Service;
/**
*
*/
@Service
public class DeviceInterfaceServiceImpl implements IDeviceInterfaceService {
}

@ -23,10 +23,7 @@ import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.*;
import static com.op.common.core.web.domain.AjaxResult.error;
import static com.op.common.core.web.domain.AjaxResult.success;
@ -43,8 +40,6 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
@Autowired
private EquOrderMapper equOrderMapper;
@Autowired
private EquOrderEquMapper equOrderEquMapper;
@Autowired
private EquOrderDetailMapper equOrderDetailMapper;
@Autowired
private EquOrderStandardMapper equOrderStandardMapper;
@ -65,6 +60,9 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
@Autowired
private EquFileMapper equFileMapper;
@Autowired
private EquFaultTypeMapper equFaultTypeMapper;
/**
* list-
@ -118,14 +116,22 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
order.setWorkCenterName(equOrderMapper.selectCenterNameByCenterCode(order.getPlanWorkshop()));
EquOrderEqu equ = equOrderEquMapper.selectEquOrderEquListByParentCode(order.getOrderId());
List<EquOrderDetail> detailList = equOrderDetailMapper.selectEquOrderDetailByParentCode(equ.getId());
List<EquOrderDetail> detailList = equOrderDetailMapper.selectEquOrderDetailByOrderCode(order.getOrderCode());
for (EquOrderDetail detail : detailList) {
List<EquOrderStandard> standardList = equOrderStandardMapper.selectEquOrderStandardByParentCode(detail.getId());
for (EquOrderStandard standard : standardList) {
// 未达标图片
BaseFileData selectTemp = new BaseFileData();
selectTemp.setSourceId(standard.getId());
selectTemp.setImageType("3");
List<String> checkPictrueList = equFileMapper.selectUrlList(selectTemp);
if (checkPictrueList != null) {
standard.setCheckPictrueList(checkPictrueList);
}
}
detail.setStandardList(standardList);
}
equ.setDetailList(detailList);
order.setDetailList(detailList);
// 人员信息
List<String> users = equOrderPersonMapper.selectEquOrderPersonByOrderCode(order.getOrderCode());
@ -136,9 +142,21 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
personList.add(personMapper.selectSysUserByUserId(Long.valueOf(id)));
}
// 备件
List<EquSpareApply> spareList = equSpareApplyMapper.selectEquSpareApplyListByWorkCode(order.getOrderCode());
if (spareList != null) {
order.setSpareList(spareList);
}
order.setPersonList(personList);
order.setEqu(equ);
// 保养图片
BaseFileData selectTemp = new BaseFileData();
selectTemp.setSourceId(equOrder.getId());
List<String> upkeepPictures = equFileMapper.selectUrlList(selectTemp);
if (upkeepPictures != null) {
order.setUpkeepPictures(upkeepPictures);
}
return success(order);
}
@ -168,9 +186,13 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
}
boolean hasError = false;
boolean maintenanceFlag = false;
EquOrderEqu equ = equOrder.getEqu();
List<EquOrderDetail> detailList = equ.getDetailList();
if (equOrder.getPlanType().equals("maintenance")) {
maintenanceFlag = true;
}
List<EquOrderDetail> detailList = equOrder.getDetailList();
for (EquOrderDetail detail : detailList) {
List<EquOrderStandard> standardList = detail.getStandardList();
for (EquOrderStandard standard : standardList) {
@ -199,18 +221,15 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
int up = standard.getActualValue().compareTo(standard.getDetailUpLimit());
int down = standard.getActualValue().compareTo(standard.getDetailDownLimit());
standard.setDetailReach("1");
standard.setErrorFlag("0");
if (!(up != 1 && down != -1)) {
hasError = true;
standard.setErrorFlag("1");
standard.setDetailReach("0");
}
}else {
// TODO 未达标
// 未达标
standard.setErrorFlag("0");
if (standard.getDetailReach().equals("0")) {
hasError = true;
standard.setErrorFlag("1");
}
}
@ -242,11 +261,11 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
}
// 报修信息
if (checkRepair && hasError ) {
if (checkRepair && hasError && !maintenanceFlag) {
// 获取故障报修流水号
EquRepairOrder equRepairOrder = new EquRepairOrder();
String serialNum = String.format("%03d", equRepairOrderMapper.selectOrderCodeSerialNumber());
String equipmentCode = equOrder.getEqu().getEquipmentCode();
String equipmentCode = equOrder.getEquipmentCode();
//报修单号
equRepairOrder.setOrderCode("BX"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum);
//在主表中存入报修单号信息
@ -256,6 +275,16 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
equRepairOrder.setOrderId(IdUtils.fastSimpleUUID());
equRepairOrder.setCreateTime(DateUtils.getNowDate());
equRepairOrder.setCreateBy(SecurityUtils.getUsername());
//报修人编码、故障时间、设备编码、报修时间、联系人联系方式-自动报修
equRepairOrder.setOrderBreakdownTime(DateUtils.getNowDate());
equRepairOrder.setOrderRepairmanCode(SecurityUtils.getUsername());
equRepairOrder.setEquipmentCode(equipmentCode);
equRepairOrder.setOrderTime(DateUtils.getNowDate());
EquTeamUser equTeamUser = new EquTeamUser();
equTeamUser.setUserName(SecurityUtils.getUsername());
EquTeamUser equTeamUserList = equRepairOrderMapper.getRepairPhoneNumber(equTeamUser);
equRepairOrder.setOrderConnection(equTeamUserList.getPhonenumber());
equRepairOrder.setOrderRepairmanName(equTeamUserList.getNickName());
// 报修来源
if (equOrder.getPlanType().equals("inspection")){
equRepairOrder.setOrderSource("巡检");
@ -274,7 +303,7 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
}
if (!hasError) {
// TODO 删除报修单
// 删除报修单
if (equOrder.getRepairCode() != null) {
if (!equOrder.getRepairCode().isEmpty()) {
equRepairOrderMapper.deleteEquRepairOrderByRepairCode(equOrder.getRepairCode());
@ -283,6 +312,29 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
}
}
// 保养逻辑
if (maintenanceFlag) {
// 设置结束时间
equOrder.setOrderEnd(DateUtils.getNowDate());
//上传附件
if (StringUtils.isNotEmpty(equOrder.getPicturePath())) {
String[] ids = equOrder.getPicturePath().split(",");
List<BaseFileData> files = new ArrayList<>();
BaseFileData file = null;
for (String id : ids) {
file = new BaseFileData();
file.setFileId(IdUtils.fastSimpleUUID());
file.setFileName(id.split("&fileName=")[1]);
file.setFileAddress(id);
file.setSourceId(equOrder.getOrderId());
file.setCreateBy(SecurityUtils.getUsername());
file.setCreateTime(new Date());
files.add(file);
}
equFileMapper.insertEquFileBatch(files);
}
}
// 更新工单信息
equOrderMapper.updateEquOrder(equOrder);
return success();
@ -299,18 +351,45 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
@DS("#header.poolName")
public AjaxResult addRepairRecord(EquRepairOrder equRepairOrder) {
try {
equRepairOrder.setOrderId(IdUtils.fastSimpleUUID());
// 获取故障报修流水号
// equRepairOrder
//自动填入联系人 联系方式!!!!!
String id = IdUtils.fastSimpleUUID();
equRepairOrder.setOrderId(id);
// 新增 是需要获取故障报修流水号
String serialNum = String.format("%03d", equRepairOrderMapper.selectOrderCodeSerialNumber());
String equipmentCode = equRepairOrder.getEquipmentCode();
//报修单号
equRepairOrder.setOrderCode("BX"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum);
equRepairOrder.setCreateTime(DateUtils.getNowDate());
equRepairOrder.setCreateBy(SecurityUtils.getUsername());
equRepairOrder.setOrderRepairmanCode(SecurityUtils.getUsername());
equRepairOrder.setOrderTime(DateUtils.getNowDate());
equRepairOrder.setOrderStatus("待审核");
// HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
// String key = "#header.poolName";
// equRepairOrder.setFactory(request.getHeader(key.substring(8)).replace("ds_",""));
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
equRepairOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_",""));
equRepairOrderMapper.insertEquRepairOrder(equRepairOrder);
//删除照片 不需要清照片 因为是新增
//新增文件
if (StringUtils.isNotEmpty(equRepairOrder.getFileList())) {
String[] ids1 = equRepairOrder.getFileList().split(",");
List<BaseFileData> files = new ArrayList<>();
BaseFileData file = null;
for (String id1 : ids1) {
file = new BaseFileData();
file.setFileId(IdUtils.fastSimpleUUID());
file.setFileName(id1.split("&fileName=")[1]);
file.setFileAddress(id1);
file.setSourceId(id);
file.setCreateBy(SecurityUtils.getUsername());
file.setCreateTime(new Date());
file.setImageType("3");
files.add(file);
}
equRepairOrderMapper.insertBaseFileBatch(files);
}
return success("新增报修记录成功!");
} catch (Exception e) {
return error();
@ -318,14 +397,14 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
}
/**
*
* ()
*
* @param equRepairWorkOrder
* @return
*/
@Override
@DS("#header.poolName")
public AjaxResult getMaintenanceRecords(EquRepairWorkOrder equRepairWorkOrder) {
public AjaxResult getMaintenancePendRecords(EquRepairWorkOrder equRepairWorkOrder) {
try {
if (equRepairWorkOrder.getWorkPlanTimeArray() != null) {
// 设置创建日期开始和结束值
@ -352,7 +431,64 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
}
/**
*
*
* @param pdadto
* @return
*/
@Override
@DS("#header.poolName")
public AjaxResult startMaintenanceTask(PDADTO pdadto) {
EquOrder order = equOrderMapper.selectEquOrderByOrderCode(pdadto.getOrderCode());
// 改为进行中
order.setOrderStatus("3");
// 设置是否停机保养
order.setShutDown(pdadto.getShutDown());
// 设置开始时间
order.setOrderStart(DateUtils.getNowDate());
// 设置保养人
order.setPlanPerson(SecurityContextHolder.getUserName());
// 更新数据表
order.setUpdateBy(SecurityContextHolder.getUserName());
order.setUpdateTime(DateUtils.getNowDate());
equOrderMapper.updateEquOrder(order);
return success();
}
/**
*
*
* @param equRepairWorkOrder
* @return
*/
@Override
@DS("#header.poolName")
public AjaxResult getMaintenanceRecords(EquRepairWorkOrder equRepairWorkOrder) {
try {
if (equRepairWorkOrder.getWorkPlanTimeArray() != null) {
// 设置创建日期开始和结束值
if (equRepairWorkOrder.getWorkPlanTimeArray().size() == 2) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
equRepairWorkOrder.setWorkPlanTimeStart(formatter.format(equRepairWorkOrder.getWorkPlanTimeArray().get(0)));
equRepairWorkOrder.setWorkPlanTimeEnd(formatter.format(equRepairWorkOrder.getWorkPlanTimeArray().get(1)));
}
}
if (equRepairWorkOrder.getWorkPlanDownTimeArray() != null) {
// 设置更新日期开始和结束
if (equRepairWorkOrder.getWorkPlanDownTimeArray().size() == 2) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
equRepairWorkOrder.setWorkPlanDownTimeStart(formatter.format(equRepairWorkOrder.getWorkPlanDownTimeArray().get(0)));
equRepairWorkOrder.setWorkPlanDownTimeEnd(formatter.format(equRepairWorkOrder.getWorkPlanDownTimeArray().get(1)));
}
}
List<EquRepairWorkOrder> list = equRepairWorkOrderMapper.selectRepairWorkOrderList(equRepairWorkOrder);
return success(list);
} catch (Exception e) {
return error();
}
}
/**
*
*
* @param equTeamUser
* @return
@ -378,11 +514,16 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
@DS("#header.poolName")
public AjaxResult updateDowntime(EquRepairWorkOrder equRepairWorkOrder) {
try {
if(equRepairWorkOrder.getWorkDownMachine().equals("0")){
equRepairWorkOrder.setWorkPlanDownTime(null);
//不停机 那么实际停机开始时间和实际停机结束时间都没有
//如果停机 那么实际停机时间就是传入的时间
equRepairWorkOrder.setWorkStartTime(DateUtils.getNowDate());
if(equRepairWorkOrder.getWorkDownMachine().equals("1")){
equRepairWorkOrder.setActualDownStartTime(DateUtils.getNowDate());
}
equRepairWorkOrder.setUpdateBy(SecurityUtils.getUsername());
equRepairWorkOrder.setUpdateTime(DateUtils.getNowDate());
//维修中
equRepairWorkOrder.setWorkStatus("2");
equRepairWorkOrderMapper.updateEquRepairWorkOrder(equRepairWorkOrder);
return success("提交成功,开始维修!");
} catch (Exception e) {
@ -391,7 +532,7 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
}
/**
*
*
*
* @param equipmentId
* @return
@ -421,13 +562,38 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
//查询对应检查项信息
EquOrder equOrder = new EquOrder();
equOrder.setWorkCode(list.getWorkCode());
List<EquOrderStandard> checkLists = equOrderStandardMapper.selectPdaEquOrderList(equOrder);
list.setCheckList(checkLists);
//检查项
List<EquOrder> checkLists = equOrderMapper.selectCheckListByWorkCode(equOrder);
//每个检查项对应的检测标准
for(EquOrder equOrder1 :checkLists){
EquOrderStandard equOrderStandard = new EquOrderStandard();
equOrderStandard.setOrderCode(equOrder1.getOrderCode());
equOrderStandard.setParentCode(equOrder1.getId());
List<EquOrderStandard> standardLists = equOrderStandardMapper.selectPdaEquOrderList(equOrderStandard);
for(EquOrderStandard standardList :standardLists){
//每个检查标准里面的照片
List<BaseFileData> files = equOrderStandardMapper.getBaseFileBatch(standardList.getId());
if (!CollectionUtils.isEmpty(files)) {
standardList.setPicturePaths(files);
}
standardList.setDetailReach(standardList.getRepairReach());
standardList.setActualValue(standardList.getRepairValue());
}
equOrder1.setStandardList(standardLists);
}
list.setDetailList(checkLists);
//备件申领单
EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder();
equRepairWorkOrder.setWorkCode(list.getWorkCode());
List<EquSpareApply> applyLists = equSpareApplyMapper.selectRepairSparePartsRecord(equRepairWorkOrder);
list.setApplyList(applyLists);
//文件
List<BaseFileData> files = equRepairWorkOrderMapper.getBaseFileBatch(workId);
if (!CollectionUtils.isEmpty(files)) {
list.setFiles(files);
}
return success(list);
} catch (Exception e) {
return error();
@ -443,30 +609,129 @@ public class DevicePDAServiceImpl implements IDevicePDAService {
@Override
@DS("#header.poolName")
public AjaxResult updateMaintenanceRecords(EquRepairWorkOrder equRepairWorkOrder) {
try {
//更新每一项点检/巡检检查项信息
List<EquOrderStandard> equOrderStandards = equRepairWorkOrder.getCheckList();
for(EquOrderStandard equOrderStandard:equOrderStandards){
equOrderStandard.setUpdateBy(SecurityUtils.getUsername());
equOrderStandard.setUpdateTime(DateUtils.getNowDate());
equOrderStandardMapper.updateEquOrderStandard(equOrderStandard);
//判断是否停机
EquRepairWorkOrder list = equRepairWorkOrderMapper.selectEquRepairWorkOrderByWorkId(equRepairWorkOrder.getWorkId());
if(list.getWorkDownMachine().equals("1")){
//维修结束时间、维修真正停机时间
equRepairWorkOrder.setActualDownEndTime(DateUtils.getNowDate());
}
equRepairWorkOrder.setWorkEndTime(DateUtils.getNowDate());
//更新每一项点检/巡检检查项信息
List<EquOrder> checkLists = equRepairWorkOrder.getDetailList();
for(EquOrder checkList:checkLists){
checkList.setUpdateBy(SecurityUtils.getUsername());
checkList.setUpdateTime(DateUtils.getNowDate());
List<EquOrderStandard> standardLists = checkList.getStandardList();
for(EquOrderStandard standardList :standardLists){
//先删除每个检查项标准图片
equOrderStandardMapper.deleteBaseFileBySourceId(standardList.getId());
//图片
if (StringUtils.isNotEmpty(standardList.getPicturePath())) {
String[] ids = standardList.getPicturePath().split(",");
List<BaseFileData> files = new ArrayList<>();
BaseFileData file = null;
for (String id : ids) {
file = new BaseFileData();
file.setFileId(IdUtils.fastSimpleUUID());
file.setFileName(id.split("&fileName=")[1]);
file.setFileAddress(id);
file.setSourceId(standardList.getId());
file.setCreateBy(SecurityUtils.getUsername());
file.setCreateTime(new Date());
//维修后
file.setImageType("4");
files.add(file);
}
equOrderStandardMapper.insertBaseFileBatch(files);
}
standardList.setRepairReach(standardList.getDetailReach());
standardList.setRepairValue(standardList.getActualValue());
standardList.setUpdateTime(DateUtils.getNowDate());
standardList.setUpdateBy(SecurityUtils.getUsername());
equOrderStandardMapper.updateActualValues(standardList);
}
equOrderMapper.updateEquOrder(checkList);
}
//新建申领单 缺少code
List<EquSpareApply> equSpareApplies = equRepairWorkOrder.getApplyList();
for(EquSpareApply equSpareApply:equSpareApplies){
//生成领料单code
String code = DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equRepairWorkOrder.getWorkCode().substring(10);
equSpareApply.setApplyCode("A" + code );
equSpareApply.setApplyId(IdUtils.fastSimpleUUID());
//备品备件规格型号!!!!!
//equSpareApply.setSpareModel(equSpareApply.getS);
equSpareApply.setSpareCode(equSpareApply.getMaterialCode());
equSpareApply.setSpareName(equSpareApply.getMaterialDesc());
equSpareApply.setApplyPeople(SecurityUtils.getUsername());
equSpareApply.setCreateBy(SecurityUtils.getUsername());
equSpareApply.setCreateTime(DateUtils.getNowDate());
equSpareApply.setApplyTime(DateUtils.getNowDate());
equSpareApply.setSpareUseEquipment(equRepairWorkOrder.getEquipmentCode());
equSpareApply.setWorkCode(equRepairWorkOrder.getWorkCode());
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
equSpareApply.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_",""));
equSpareApplyMapper.insertEquSpareApply(equSpareApply);
// SparePartsLedger sparePartsLedger = new SparePartsLedger();
// sparePartsLedger.
}
//维修人员名字????前端能够提供吗???
//图片
//先删除每个维修工单对应图片
equRepairWorkOrderMapper.deleteBaseFileBySourceId(equRepairWorkOrder.getWorkId());
if (StringUtils.isNotEmpty(equRepairWorkOrder.getFileList())) {
String[] ids = equRepairWorkOrder.getFileList().split(",");
List<BaseFileData> files = new ArrayList<>();
BaseFileData file = null;
for (String id : ids) {
file = new BaseFileData();
file.setFileId(IdUtils.fastSimpleUUID());
file.setFileName(id.split("&fileName=")[1]);
file.setFileAddress(id);
file.setSourceId(equRepairWorkOrder.getWorkId());
file.setCreateBy(SecurityUtils.getUsername());
file.setCreateTime(new Date());
//维修后
file.setImageType("4");
files.add(file);
}
equRepairWorkOrderMapper.insertBaseFileBatch(files);
}
//维修人:当前登录人
//维修状态
equRepairWorkOrder.setWorkStatus("1");
//维修结束时间
equRepairWorkOrder.setWorkPerson(SecurityUtils.getUsername());
equRepairWorkOrder.setUpdateBy(SecurityUtils.getUsername());
equRepairWorkOrder.setUpdateTime(DateUtils.getNowDate());
equRepairWorkOrderMapper.updateEquRepairWorkOrder(equRepairWorkOrder);
//需要更新设备状态????这里没做
return success("提交成功,维修完成!");
} catch (Exception e) {
return error();
}
}
/**
*
*
* @param equRepairWorkOrder
* @return
*/
// @Override
// @DS("#header.poolName")
// public AjaxResult queryEquFaultTypeTree(EquRepairWorkOrder equRepairWorkOrder) {
// // 查询一级数据
// List<EquFaultType> firstLevel = equFaultTypeMapper.selectFirstLevelList(equRepairWorkOrder);
// // 一级list
// List<EquFaultTypeTree> firstTree = new ArrayList<>();
// // 判空
// if (!CollectionUtils.isEmpty(firstLevel)) {
// for(EquFaultType equFaultType : firstLevel){
//
// }
// }
//
// return treeAll;
// }
}

@ -2,6 +2,7 @@ package com.op.device.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import com.op.common.core.context.SecurityContextHolder;
import com.op.common.core.domain.R;
import com.op.common.core.utils.DateUtils;
import com.op.common.core.utils.uuid.IdUtils;
@ -55,9 +56,9 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
private EquPlanDetailMapper equPlanDetailMapper;
@Autowired
private EquPlanEquMapper equPlanEquMapper;
private EquPlanEquSpareMapper equPlanEquSpareMapper;
@Autowired
private EquOrderEquMapper equOrderEquMapper;
private EquOrderEquSpareMapper equOrderEquSpareMapper;
@Autowired
private EquPlanStandardMapper equPlanStandardMapper;
@ -70,13 +71,50 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
private EquOrderPersonMapper equOrderPersonMapper;
@Autowired
private RemoteUserService remoteUserService;
@Autowired
private EquOutsourceWorkMapper equOutsourceWorkMapper;
@Autowired
private EquSpareApplyMapper equSpareApplyMapper;
@Autowired
private SparePartsLedgerMapper sparePartsLedgerMapper;
/**
*
* **/
@Override
public AjaxResult createSpotCheckPlanTask() {
// 加载sf-cloud库的sys_datasource
SysUser sysUser = new SysUser();
sysUser.setUserId(1L);
R<List<Map<String, String>>> dateSources0 = remoteUserService.getPoolNameList(sysUser);
List<Map<String, String>> dateSources = dateSources0.getData();
ExecutorService executorService = new ThreadPoolExecutor(
dateSources.size(),
dateSources.size(),
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>());
try {
dateSources.forEach(dateSource -> {
logger.info("++++++++++++" + dateSource.get("poolName") + "++++点检开始++++++++++");
Runnable run = () -> createSpotCheckPlanFunc(dateSource.get("poolName"));
executorService.execute(run);
});
} catch (Exception e) {
logger.error("service == dataClearTask == exception", e);
return error("service == dataClearTask == exception");
} finally {
executorService.shutdown();
}
return success();
}
/**
*
* **/
@Override
public AjaxResult createPatrolCheckPlanTask() {
// 加载sf-cloud库的sys_datasource
SysUser sysUser = new SysUser();
sysUser.setUserId(1L);
@ -90,8 +128,41 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
try {
dateSources.forEach(dateSource -> {
if("ds_1000".equals(dateSource.get("poolName"))){//TODO生产去掉
logger.info("++++++++++++" + dateSource.get("poolName") + "++++点检开始++++++++++");
Runnable run = () -> createSpotCheckPlanFunc(dateSource.get("poolName"));
logger.info("++++++++++++" + dateSource.get("poolName") + "++++巡检开始++++++++++");
Runnable run = () -> createPatrolCheckPlanFunc(dateSource.get("poolName"));
executorService.execute(run);
}
});
} catch (Exception e) {
logger.error("service == dataClearTask == exception", e);
return error("service == dataClearTask == exception");
} finally {
executorService.shutdown();
}
return success();
}
/**
*
* **/
@Override
public AjaxResult createMaintenancePlanTask() {
// 加载sf-cloud库的sys_datasource
SysUser sysUser = new SysUser();
sysUser.setUserId(1L);
R<List<Map<String, String>>> dateSources0 = remoteUserService.getPoolNameList(sysUser);
List<Map<String, String>> dateSources = dateSources0.getData();
ExecutorService executorService = new ThreadPoolExecutor(
dateSources.size(),
dateSources.size(),
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>());
try {
dateSources.forEach(dateSource -> {
if("ds_1000".equals(dateSource.get("poolName"))){//TODO生产去掉
logger.info("++++++++++++" + dateSource.get("poolName") + "++++保养开始++++++++++");
Runnable run = () -> createMaintenancePlanFunc(dateSource.get("poolName"));
executorService.execute(run);
}
});
@ -115,7 +186,7 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
EquOrder hasTask = deviceTaskMapper.getNewTaskOrder(plan);
if(hasTask==null || Integer.parseInt(plan.getPlanLoop())<= hasTask.getDays()){
//生成点检计划
int m = this.createSpotCheckPlan(plan);
int m = this.createOrderPlan(plan);
if(m==0){
error("equ_order相关添加失败");
}
@ -124,9 +195,60 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
logger.info("++++++++++++" + poolName + "++++点检结束++++++++++");
}
private int createSpotCheckPlan(EquPlan plan){
public void createPatrolCheckPlanFunc(String poolName){
DynamicDataSourceContextHolder.push(poolName);// 这是数据源的key
/**equ_plan equ_plan_equ**/
EquPlan equPlan = new EquPlan();
equPlan.setPlanType("inspection");
List<EquPlan> plans = deviceTaskMapper.getPlans(equPlan);
for(EquPlan plan:plans){
EquOrder hasTask = deviceTaskMapper.getNewTaskOrder(plan);
if(hasTask==null || Integer.parseInt(plan.getPlanLoop())<= hasTask.getDays()){
//生成巡检计划
int m = this.createOrderPlan(plan);
if(m==0){
error("equ_order相关添加失败");
}
}
}
logger.info("++++++++++++" + poolName + "++++巡检结束++++++++++");
}
public void createMaintenancePlanFunc(String poolName){
DynamicDataSourceContextHolder.push(poolName);// 这是数据源的key
/**equ_plan equ_plan_equ**/
EquPlan equPlan = new EquPlan();
equPlan.setPlanType("maintenance");
List<EquPlan> plans = deviceTaskMapper.getPlans(equPlan);
for(EquPlan plan:plans){
EquOrder hasTask = null;
if("1".equals(plan.getCalculationRule())){
//根据order_start//1按上次保养时间
hasTask = deviceTaskMapper.getNewTaskOrder0(plan);
}else if("0".equals(plan.getCalculationRule())){
//根据createTime//0按固定周期
hasTask = deviceTaskMapper.getNewTaskOrder(plan);
}else if("2".equals(plan.getCalculationRule())){
//单次生成保养计划
}
if(hasTask==null || Integer.parseInt(plan.getPlanLoop())<= hasTask.getDays()){
//生成保养计划
int m = this.createOrderPlan(plan);
if(m==0){
error("equ_order相关添加失败");
}
}
}
logger.info("++++++++++++" + poolName + "++++保养结束++++++++++");
}
private int createOrderPlan(EquPlan plan){
Date nowtime = DateUtils.getNowDate();
String createBy = SecurityUtils.getUsername();
String createBy = "job";
String factory = plan.getFactoryCode();
int sce = 0;
/**equ_plan->equ_order********************************************************************/
EquOrder order = new EquOrder();
@ -139,36 +261,54 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
String serialNum = String.format("%03d",equOrderMapper.selectSerialNumber());
String orderCode = "O"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD)+serialNum;
order.setOrderCode(orderCode);
if("1".equals(plan.getUpkeep())) {//1委外工单
order.setOutsourceCode("BW"+orderCode);
}
/**equ_order**/
sce = equOrderMapper.insertEquOrder(order);
System.out.println("========equ_order:"+sce);
System.out.println(plan.getPlanCode()+"========equ_order:"+sce);
/**equ_plan_equ_spare->equ_spare_apply*************************************************************/
EquPlanEquSpare equPlanEquSpare = new EquPlanEquSpare();
equPlanEquSpare.setParentCode(plan.getPlanEquId());
List<EquPlanEquSpare> spares = equPlanEquSpareMapper.selectEquPlanEquSpareList(equPlanEquSpare);
/**equ_plan_equ->equ_order_equ*************************************************************/
EquPlanEqu equPlanEqu = new EquPlanEqu();
equPlanEqu.setId(plan.getPlanEquId());
List<EquPlanEqu> equs = equPlanEquMapper.selectEquPlanEquList(equPlanEqu);
if(CollectionUtils.isEmpty(equs)){
return 0;
// 获取流水单号
int applySerialNum = equSpareApplyMapper.selectSerialNumber();
for (EquPlanEquSpare spare : spares) {
EquSpareApply apply = new EquSpareApply();
apply.setApplyId(IdUtils.fastSimpleUUID());
apply.setApplyCode("A"+orderCode+String.format("%03d",applySerialNum));
applySerialNum++;
apply.setSpareCode(spare.getMaterialCode());
apply.setSpareName(spare.getMaterialDesc());
apply.setSpareModel(spare.getSpareType());
apply.setSpareQuantity(spare.getApplyNum());
apply.setFactoryCode(factory);
apply.setApplyPeople("job");
apply.setWorkCode(orderCode);
apply.setCreateBy("job");
apply.setCreateTime(nowtime);
apply.setSpareUseEquipment(plan.getEquipmentCode());
apply.setApplyTime(nowtime);
// 插入备件信息
equSpareApplyMapper.insertEquSpareApply(apply);
// 减少备件仓库中备件数量
sparePartsLedgerMapper.updateSpareNumReduce(apply);
}
String orderEquId = IdUtils.fastSimpleUUID();
//equs一定就一个实值
for(EquPlanEqu equ:equs){
equ.setId(orderEquId);
equ.setCreateTime(nowtime);
equ.setCreateBy(createBy);
equ.setDelFlag("0");
equ.setCode(orderCode);
if(!CollectionUtils.isEmpty(spares)){
sce = equOrderEquSpareMapper.insertEquOrderEquSpares(spares);
System.out.println(plan.getPlanCode()+"========equ_spare_apply:"+sce);
}
sce = equOrderEquMapper.insertEquOrderEqus(equs);
System.out.println("========equ_order_equ:"+sce);
/**equ_plan_detail->equ_order_detail*******************************************************/
EquPlanDetail itqo = new EquPlanDetail();
itqo.setParentCode(plan.getPlanEquId());
itqo.setDelFlag("0");
List<EquPlanDetail> details = equPlanDetailMapper.selectEquPlanDetailList(itqo);
if(CollectionUtils.isEmpty(details)){
return 0;
}
List<EquPlanStandard> standards = new ArrayList<>();
List<EquPlanStandard> standards0 = null;
@ -192,33 +332,47 @@ public class DeviceTaskServiceImpl implements IDeviceTaskService {
itme.setCreateTime(nowtime);
itme.setCreateBy(createBy);
itme.setDelFlag("0");
itme.setParentCode(orderEquId);
itme.setParentCode(orderCode);
}
if(!CollectionUtils.isEmpty(details)) {
sce = equOrderDetailMapper.insertEquOrderDetails(details);
System.out.println(plan.getPlanCode() + "========equ_order_detail:" + sce);
}
sce = equOrderDetailMapper.insertEquOrderDetails(details);
System.out.println("========equ_order_detail:"+sce);
/**equ_plan_standard->equ_order_standard*******************************************************/
if(CollectionUtils.isEmpty(standards)){
return 0;
if(!CollectionUtils.isEmpty(standards)) {
sce = equOrderStandardMapper.insertEquOrderStandards(standards);
System.out.println(plan.getPlanCode() + "========equ_order_standard:" + sce);
}
sce = equOrderStandardMapper.insertEquOrderStandards(standards);
System.out.println("========equ_order_detail:"+sce);
/**equ_plan_person->equ_order_standard*********************************************************/
EquPlanPerson equPlanPerson = new EquPlanPerson();
equPlanPerson.setPlanCode(plan.getPlanCode());
List<EquPlanPerson> persons = equPlanPersonMapper.selectEquPlanPersonList(equPlanPerson);
if(CollectionUtils.isEmpty(persons)){
return 0;
}
if("1".equals(plan.getUpkeep())){//1委外
EquOutsourceWork equOutsourceWork = new EquOutsourceWork();
BeanUtils.copyProperties(plan,equOutsourceWork);
equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID());
equOutsourceWork.setOrderCode(orderCode);
equOutsourceWork.setWorkCode(order.getOutsourceCode());
equOutsourceWork.setWorkType("1");//1委外保养0委外维修
equOutsourceWork.setCreateBy(createBy);
equOutsourceWork.setCreateTime(nowtime);
equOutsourceWork.setDelFlag("0");
sce = equOutsourceWorkMapper.insertEquOutsourceWork(equOutsourceWork);
System.out.println(plan.getPlanCode() + "========equ_outsource_work:" + sce);
}else {
EquPlanPerson equPlanPerson = new EquPlanPerson();
equPlanPerson.setPlanCode(plan.getPlanCode());
List<EquPlanPerson> persons = equPlanPersonMapper.selectEquPlanPersonList(equPlanPerson);
for(EquPlanPerson person:persons){
person.setId(IdUtils.fastSimpleUUID());
person.setCreateTime(nowtime);
person.setCreateBy(createBy);
person.setDelFlag("0");
person.setPlanCode(orderCode);
for (EquPlanPerson person : persons) {
person.setId(IdUtils.fastSimpleUUID());
person.setCreateTime(nowtime);
person.setCreateBy(createBy);
person.setDelFlag("0");
person.setPlanCode(orderCode);
}
if (!CollectionUtils.isEmpty(persons)) {
sce = equOrderPersonMapper.insertEquOrderPersons(persons);
System.out.println(plan.getPlanCode() + "========equ_order_person:" + sce);
}
}
sce = equOrderPersonMapper.insertEquOrderPlans(persons);
System.out.println("========equ_order_standard:"+sce);
return sce;
}
}

@ -48,11 +48,15 @@ public class EquOrderServiceImpl implements IEquOrderService {
@Autowired
private PersonMapper personMapper;
@Autowired
private EquOrderEquSpareMapper equOrderEquSpareMapper;
@Autowired
private EquRepairOrderMapper equRepairOrderMapper;
@Autowired
private EquFileMapper equFileMapper;
@Autowired
private EquPlanMapper equPlanMapper;
@Autowired
private EquSpareApplyMapper equSpareApplyMapper;
@Autowired
private SparePartsLedgerMapper sparePartsLedgerMapper;
/**
*
@ -70,23 +74,28 @@ public class EquOrderServiceImpl implements IEquOrderService {
timeArray.add(order.getOrderStart());
timeArray.add(order.getOrderEnd());
order.setTimeArray(timeArray);
// 设置设备名称
order.setEquipmentName(equOrderMapper.selectEquipmentNameByEquCode(order.getEquipmentCode()));
// 设置计划名称
order.setPlanName(equOrderMapper.selectPlanNameByPlanCode(order.getPlanCode()));
// 工作中心(车间)
order.setWorkCenterName(equOrderMapper.selectCenterNameByCenterCode(order.getPlanWorkshop()));
EquOrderEqu equ = equOrderEquMapper.selectEquOrderEquListByParentCode(order.getOrderId());
List<EquOrderDetail> detailList = equOrderDetailMapper.selectEquOrderDetailByParentCode(equ.getId());
// 检查项
List<EquOrderDetail> detailList = equOrderDetailMapper.selectEquOrderDetailByOrderCode(order.getOrderCode());
for (EquOrderDetail detail : detailList) {
// 标准
List<EquOrderStandard> standardList = equOrderStandardMapper.selectEquOrderStandardByParentCode(detail.getId());
detail.setStandardList(standardList);
}
equ.setDetailList(detailList);
order.setDetailList(detailList);
List<EquOrderEquSpare> spareList = equOrderEquSpareMapper.selectEquOrderEquSpareByParentCode(equ.getId());
// 备件
List<EquSpareApply> spareList = equSpareApplyMapper.selectEquSpareApplyListByWorkCode(order.getOrderCode());
if (spareList.size() > 0) {
equ.setSpareList(spareList);
order.setSpareList(spareList);
}
// 人员信息
@ -100,8 +109,6 @@ public class EquOrderServiceImpl implements IEquOrderService {
order.setPersonList(personList);
order.setEqu(equ);
return order;
}
@ -114,11 +121,41 @@ public class EquOrderServiceImpl implements IEquOrderService {
@Override
@DS("#header.poolName")
public List<EquOrder> selectEquOrderList(EquOrder equOrder) {
if (equOrder.getLoopStartArray() != null) {
equOrder.setLoopStart(equOrder.getLoopStartArray().get(0));
equOrder.setLoopEnd(equOrder.getLoopStartArray().get(1));
}
if (equOrder.getLoopEndArray() != null) {
equOrder.setLoopEndArrayStart(equOrder.getLoopEndArray().get(0));
equOrder.setGetLoopEndArrayEnd(equOrder.getLoopEndArray().get(1));
}
if (equOrder.getOrderStartArray() != null) {
equOrder.setOrderStartArrayStart(equOrder.getOrderStartArray().get(0));
equOrder.setOrderStartArrayEnd(equOrder.getOrderStartArray().get(1));
}
if (equOrder.getOrderEndArray() != null) {
equOrder.setOrderEndArrayStart(equOrder.getOrderEndArray().get(0));
equOrder.setOrderEndArrayEnd(equOrder.getOrderEndArray().get(1));
}
List<EquOrder> orderList = equOrderMapper.selectEquOrderList(equOrder);
//获取当前所选工厂
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
String str = request.getHeader(key.substring(8));
int index = str.indexOf("_");
String factory = str.substring(index + 1);
List<WorkCenter> workCenters = equPlanMapper.selectWorkCenter(factory);
for (EquOrder order : orderList) {
EquOrderEqu equ = equOrderEquMapper.selectEquOrderEquListByParentCode(order.getOrderId());
order.setEquipmentCode(equ.getEquipmentCode());
order.setEquipmentName(equ.getEquipmentName());
for (WorkCenter center : workCenters) {
if (center.getFactoryCode().equals(order.getPlanWorkshop())) {
order.setWorkCenterName(center.getFactoryName());
}
}
order.setEquipmentName(equOrderMapper.selectEquipmentNameByEquCode(order.getEquipmentCode()));
}
return orderList;
}
@ -161,9 +198,13 @@ public class EquOrderServiceImpl implements IEquOrderService {
}
boolean hasError = false;
boolean maintenanceFlag = false;
EquOrderEqu equ = equOrder.getEqu();
List<EquOrderDetail> detailList = equ.getDetailList();
if (equOrder.getPlanType().equals("maintenance")) {
maintenanceFlag = true;
}
List<EquOrderDetail> detailList = equOrder.getDetailList();
for (EquOrderDetail detail : detailList) {
List<EquOrderStandard> standardList = detail.getStandardList();
for (EquOrderStandard standard : standardList) {
@ -192,18 +233,13 @@ public class EquOrderServiceImpl implements IEquOrderService {
int up = standard.getActualValue().compareTo(standard.getDetailUpLimit());
int down = standard.getActualValue().compareTo(standard.getDetailDownLimit());
standard.setDetailReach("1");
standard.setErrorFlag("0");
if (!(up != 1 && down != -1)) {
hasError = true;
standard.setErrorFlag("1");
standard.setDetailReach("0");
}
} else {
// TODO 未达标
standard.setErrorFlag("0");
if (standard.getDetailReach().equals("0")) {
hasError = true;
standard.setErrorFlag("1");
}
}
@ -235,11 +271,11 @@ public class EquOrderServiceImpl implements IEquOrderService {
}
// 报修信息
if (checkRepair && hasError) {
if (checkRepair && hasError && !maintenanceFlag) {
// 获取故障报修流水号
EquRepairOrder equRepairOrder = new EquRepairOrder();
String serialNum = String.format("%03d", equRepairOrderMapper.selectOrderCodeSerialNumber());
String equipmentCode = equOrder.getEqu().getEquipmentCode();
String equipmentCode = equOrder.getEquipmentCode();
//报修单号
equRepairOrder.setOrderCode("BX" + DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum);
//在主表中存入报修单号信息
@ -249,6 +285,18 @@ public class EquOrderServiceImpl implements IEquOrderService {
equRepairOrder.setOrderId(IdUtils.fastSimpleUUID());
equRepairOrder.setCreateTime(DateUtils.getNowDate());
equRepairOrder.setCreateBy(SecurityUtils.getUsername());
//报修人编码、故障时间、设备编码、报修时间、联系人联系方式-自动报修
equRepairOrder.setOrderBreakdownTime(DateUtils.getNowDate());
equRepairOrder.setOrderRepairmanCode(SecurityUtils.getUsername());
equRepairOrder.setEquipmentCode(equipmentCode);
equRepairOrder.setOrderTime(DateUtils.getNowDate());
EquTeamUser equTeamUser = new EquTeamUser();
equTeamUser.setUserName(SecurityUtils.getUsername());
EquTeamUser equTeamUserList = equRepairOrderMapper.getRepairPhoneNumber(equTeamUser);
equRepairOrder.setOrderConnection(equTeamUserList.getPhonenumber());
equRepairOrder.setOrderRepairmanName(equTeamUserList.getNickName());
// 报修来源
if (equOrder.getPlanType().equals("inspection")) {
equRepairOrder.setOrderSource("巡检");
@ -267,7 +315,7 @@ public class EquOrderServiceImpl implements IEquOrderService {
}
if (!hasError) {
// TODO 删除报修单
// 删除报修单
if (equOrder.getRepairCode() != null) {
if (!equOrder.getRepairCode().isEmpty()) {
equRepairOrderMapper.deleteEquRepairOrderByRepairCode(equOrder.getRepairCode());
@ -276,6 +324,32 @@ public class EquOrderServiceImpl implements IEquOrderService {
}
}
// 保养逻辑
if (maintenanceFlag) {
// 用时
if (equOrder.getOrderStart() != null) {
long diffSeconds = (equOrder.getOrderEnd().getTime() - equOrder.getOrderStart().getTime()) / 60000;
equOrder.setOrderCostTime(String.valueOf(diffSeconds));
}
// 保养图片
if (StringUtils.isNotEmpty(equOrder.getPicturePath())) {
String[] ids = equOrder.getPicturePath().split(",");
List<BaseFileData> files = new ArrayList<>();
BaseFileData file = null;
for (String id : ids) {
file = new BaseFileData();
file.setFileId(IdUtils.fastSimpleUUID());
file.setFileName(id.split("&fileName=")[1]);
file.setFileAddress(id);
file.setSourceId(equOrder.getOrderId());
file.setCreateBy(SecurityUtils.getUsername());
file.setCreateTime(new Date());
files.add(file);
}
equFileMapper.insertEquFileBatch(files);
}
}
// 更新工单信息
equOrderMapper.updateEquOrder(equOrder);
return success();
@ -289,8 +363,32 @@ public class EquOrderServiceImpl implements IEquOrderService {
*/
@Override
@DS("#header.poolName")
public int deleteEquOrderByOrderIds(String[] orderIds) {
return equOrderMapper.deleteEquOrderByOrderIds(orderIds);
public AjaxResult deleteEquOrderByOrderIds(String[] orderIds) {
// 保养-备件逻辑
for (String orderId : orderIds) {
EquOrder order = equOrderMapper.selectEquOrderByOrderId(orderId);
if (!order.getOrderStatus().equals("0")) {
return error(500,"工单已进行修改!不可删除!");
}
if (order.getPlanType().equals("maintenance")) {
List<EquSpareApply> applyList = equSpareApplyMapper.selectEquSpareApplyListByWorkCode(order.getOrderCode());
for (EquSpareApply apply : applyList) {
// 返回备件数量
sparePartsLedgerMapper.updateSpareNumAdd(apply);
}
}
}
// 逻辑删除获取人员
equOrderPersonMapper.delEquOrderPersonByorderIds(orderIds);
// 逻辑删除标准信息
equOrderStandardMapper.delEquOrderStandardByorderIds(orderIds);
// 逻辑删除检查项信息
equOrderDetailMapper.delEquOrderDetailByorderIds(orderIds);
// 逻辑删除备件信息
equSpareApplyMapper.delEquSpareApplyByorderIds(orderIds);
// 逻辑删除工单
equOrderMapper.delEquOrderByOrderIds(orderIds);
return success();
}
/**

@ -32,6 +32,7 @@ public class EquOutsourceWorkServiceImpl implements IEquOutsourceWorkService {
@Autowired
private EquRepairWorkOrderMapper equRepairWorkOrderMapper;
/**
*
*
@ -65,6 +66,7 @@ public class EquOutsourceWorkServiceImpl implements IEquOutsourceWorkService {
@Override
@DS("#header.poolName")
public int insertEquOutsourceWork(EquOutsourceWork equOutsourceWork) {
//新增的委外工单,不用报修单号、维修单号拼接
equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID());
String serialNum = String.format("%03d", equOutsourceWorkMapper.selectWorkCodeSerialNumber());
String equipmentCode = equOutsourceWork.getEquipmentCode();
@ -89,6 +91,11 @@ public class EquOutsourceWorkServiceImpl implements IEquOutsourceWorkService {
@Override
@DS("#header.poolName")
public int updateEquOutsourceWork(EquOutsourceWork equOutsourceWork) {
//1完成委外
if(equOutsourceWork.getWorkStatus().equals("1")){
//更新维修工单状态
equRepairWorkOrderMapper.updateWorkStatus(equOutsourceWork.getRepairCode());
}
equOutsourceWork.setUpdateTime(DateUtils.getNowDate());
equOutsourceWork.setUpdateBy(SecurityUtils.getUsername());
return equOutsourceWorkMapper.updateEquOutsourceWork(equOutsourceWork);

@ -95,6 +95,14 @@ public class EquPlanServiceImpl implements IEquPlanService {
equPlan.setUpdateTimeEnd(formatter.format(equPlan.getUpdateTimeArray().get(1)));
}
}
if (equPlan.getLoopStartArray() != null) {
equPlan.setLoopStart(equPlan.getLoopStartArray().get(0));
equPlan.setLoopEnd(equPlan.getLoopStartArray().get(1));
}
if (equPlan.getLoopEndArray() != null) {
equPlan.setLoopEndArrayStart(equPlan.getLoopEndArray().get(0));
equPlan.setGetLoopEndArrayEnd(equPlan.getLoopEndArray().get(1));
}
List<EquPlan> equPlans = equPlanMapper.selectEquPlanList(equPlan);
//获取当前所选工厂
@ -140,8 +148,10 @@ public class EquPlanServiceImpl implements IEquPlanService {
equPlan.setPlanId(IdUtils.fastSimpleUUID());
equPlan.setPlanCode((DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + planSerialNum));
equPlan.setPlanLoopStart(equPlan.getPlanTimeArray().get(0));
equPlan.setPlanLoopEnd(equPlan.getPlanTimeArray().get(1));
if (equPlan.getPlanTimeArray().size() > 0) {
equPlan.setPlanLoopStart(equPlan.getPlanTimeArray().get(0));
equPlan.setPlanLoopEnd(equPlan.getPlanTimeArray().get(1));
}
equPlan.setFactoryCode(factory);
equPlan.setCreateBy(SecurityContextHolder.getUserName());
equPlan.setCreateTime(DateUtils.getNowDate());

@ -1,5 +1,6 @@
package com.op.device.service.impl;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@ -9,18 +10,23 @@ import com.op.common.core.domain.BaseFileData;
import com.op.common.core.utils.DateUtils;
import com.op.common.core.utils.StringUtils;
import com.op.common.core.utils.uuid.IdUtils;
import com.op.common.core.web.domain.AjaxResult;
import com.op.common.security.utils.SecurityUtils;
import com.op.device.domain.*;
import com.op.device.mapper.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.op.device.service.IEquRepairOrderService;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import static com.op.common.core.web.domain.AjaxResult.error;
import static com.op.common.core.web.domain.AjaxResult.success;
/**
* Service
*
@ -42,7 +48,10 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
private EquOutsourceWorkMapper equOutsourceWorkMapper;
@Autowired
private EquFileMapper equFileMapper;
private EquOrderStandardMapper equOrderStandardMapper;
@Autowired
private EquOrderMapper equOrderMapper;
/**
*
*
@ -53,10 +62,33 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
@DS("#header.poolName")
public EquRepairOrder selectEquRepairOrderByOrderId(String orderId) {
EquRepairOrder list = equRepairOrderMapper.selectEquRepairOrderByOrderId(orderId);
List<EquFile> files = equFileMapper.getEquFileBatch(orderId);
List<BaseFileData> files = equRepairOrderMapper.getBaseFileBatch(orderId);
if (!CollectionUtils.isEmpty(files)) {
list.setFiles(files);
}
//查询对应检查项信息
EquOrder equOrder = new EquOrder();
//报修单号
equOrder.setRepairCode(list.getOrderCode());
//检查项
List<EquOrder> checkLists = equOrderMapper.selectCheckListByRepairCode(equOrder);
//每个检查项对应的检测标准
for(EquOrder equOrder1 :checkLists){
EquOrderStandard equOrderStandard = new EquOrderStandard();
equOrderStandard.setOrderCode(equOrder1.getOrderCode());
equOrderStandard.setParentCode(equOrder1.getId());
List<EquOrderStandard> standardLists = equOrderStandardMapper.selectPdaEquOrderList(equOrderStandard);
for(EquOrderStandard standardList :standardLists){
//每个检查标准里面的照片
List<BaseFileData> file = equOrderStandardMapper.getBaseFileBatch(standardList.getId());
if (!CollectionUtils.isEmpty(file)) {
standardList.setPicturePaths(file);
}
}
equOrder1.setStandardList(standardLists);
}
list.setCheckList(checkLists);
return list;
}
@ -69,6 +101,22 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
@Override
@DS("#header.poolName")
public List<EquRepairOrder> selectEquRepairOrderList(EquRepairOrder equRepairOrder) {
if (equRepairOrder.getOrderBreakdownTimeArray() != null) {
// 设置故障开始时间、结束时间
if (equRepairOrder.getOrderBreakdownTimeArray().size() == 2) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
equRepairOrder.setOrderBreakdownTimeStart(formatter.format(equRepairOrder.getOrderBreakdownTimeArray().get(0)));
equRepairOrder.setOrderBreakdownTimeEnd(formatter.format(equRepairOrder.getOrderBreakdownTimeArray().get(1)));
}
}
if (equRepairOrder.getOrderTimeArray() != null) {
// 设置更新日期开始和结束
if (equRepairOrder.getOrderTimeArray().size() == 2) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
equRepairOrder.setOrderTimeStart(formatter.format(equRepairOrder.getOrderTimeArray().get(0)));
equRepairOrder.setOrderTimeEnd(formatter.format(equRepairOrder.getOrderTimeArray().get(1)));
}
}
return equRepairOrderMapper.selectEquRepairOrderList(equRepairOrder);
}
@ -109,9 +157,8 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
file.setCreateTime(new Date());
files.add(file);
}
equFileMapper.insertEquFileBatch(files);
equRepairOrderMapper.insertBaseFileBatch(files);
}
return equRepairOrderMapper.insertEquRepairOrder(equRepairOrder);
}
@ -124,14 +171,31 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
@Override
@DS("#header.poolName")
public int checkEquRepairOrder(EquRepairOrder equRepairOrder) {
//改了,不生成流水号,从第十位开始切割
String code = equRepairOrder.getOrderCode().substring(10);
String workCode = DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + code;
//判断是否是点检、巡检过来的
if(equRepairOrder.getOrderSource().equals("点检") || equRepairOrder.getOrderSource().equals("巡检")){
//更新检查项信息
EquOrder equOrder = new EquOrder();
List<String> ids = equOrderMapper.getIdsByOrderCode(equRepairOrder.getOrderCode());
for(String id :ids){
EquOrder one = new EquOrder();
one.setOrderId(id);
one.setWorkCode("WX" + workCode);
one.setUpdateBy(SecurityUtils.getUsername());
one.setUpdateTime(DateUtils.getNowDate());
//只更新其中一个信息
equOrderMapper.updateEquOrderRepairCode(one);
}
}
if(equRepairOrder.getRepairDestination().equals("计划性维修")){
EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder();
//报修单号
equRepairWorkOrder.setOrderCode(equRepairOrder.getOrderCode());
//维修单号
String serialNum = String.format("%03d", equRepairWorkOrderMapper.selectWorkCodeSerialNumber());
String equipmentCode = equRepairOrder.getEquipmentCode();
equRepairWorkOrder.setWorkCode("WX"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum);
equRepairWorkOrder.setWorkCode("WX" + workCode);
equRepairWorkOrder.setOrderId(equRepairOrder.getOrderId());
equRepairWorkOrder.setEquipmentCode(equRepairOrder.getEquipmentCode());
equRepairWorkOrder.setWorkTeam(equRepairOrder.getWorkTeam());
@ -160,22 +224,24 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
equRepairWorkOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_",""));
equRepairWorkOrderMapper.insertEquRepairWorkOrder(equRepairWorkOrder);
equRepairOrder.setOrderStatus("审核通过");
}else if(equRepairOrder.getRepairDestination().equals("不维修")){
equRepairOrder.setOrderStatus("驳回");
}else if(equRepairOrder.getRepairDestination().equals("委外维修")){
EquOutsourceWork equOutsourceWork = new EquOutsourceWork();
//委外工单编码、id、联系方式、委外单位、委外人员、委外原因
equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID());
equOutsourceWork.setOrderCode(equRepairOrder.getOrderCode());
String serialNum = String.format("%03d", equOutsourceWorkMapper.selectWorkCodeSerialNumber());
String equipmentCode = equRepairOrder.getEquipmentCode();
equOutsourceWork.setEquipmentCode(equipmentCode);
equOutsourceWork.setWorkCode("WW"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum);
equOutsourceWork.setEquipmentCode(equRepairOrder.getEquipmentCode());
equOutsourceWork.setWorkCode("WW" + workCode);
equOutsourceWork.setRepairCode("无");
equOutsourceWork.setWorkConnection(equRepairOrder.getWorkConnection());
equOutsourceWork.setWorkOutsourcingUnit(equRepairOrder.getWorkOutsourcingUnit());
equOutsourceWork.setWorkPerson(equRepairOrder.getOutSourcePerson());
equOutsourceWork.setWorkReason(equRepairOrder.getOutSourceReason());
//委外类型 维修委外
equOutsourceWork.setWorkType("0");
equOutsourceWork.setCreateBy(SecurityUtils.getUsername());
equOutsourceWork.setCreateTime(DateUtils.getNowDate());
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
@ -184,10 +250,38 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
equOutsourceWorkMapper.insertEquOutsourceWork(equOutsourceWork);
equRepairOrder.setOrderStatus("审核通过");
}else if(equRepairOrder.getRepairDestination().equals("立即维修")){
//立即维修
//是否立即维修 1是 0 否
EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder();
//报修单号
equRepairWorkOrder.setOrderCode(equRepairOrder.getOrderCode());
//维修单号
equRepairWorkOrder.setWorkCode("WX"+workCode);
equRepairWorkOrder.setOrderId(equRepairOrder.getOrderId());
equRepairWorkOrder.setEquipmentCode(equRepairOrder.getEquipmentCode());
equRepairWorkOrder.setWorkTeam(equRepairOrder.getWorkTeam());
//不委外
equRepairWorkOrder.setWorkOutsource("0");
equRepairWorkOrder.setOutWorkCode("无");
//是否立即维修 1是 0 否
equRepairWorkOrder.setWorkHandle("0");
//计划维修时间
equRepairWorkOrder.setWorkPlanTime(equRepairOrder.getWorkPlanTime());
//是否停机维修 停机维修时间
if(equRepairOrder.getWorkPlanDownTime() != null){
equRepairWorkOrder.setWorkDownMachine("1");
equRepairWorkOrder.setWorkPlanDownTime(equRepairOrder.getWorkPlanDownTime());
}else{
equRepairWorkOrder.setWorkDownMachine("0");
}
equRepairWorkOrder.setWorkFaultDesc(equRepairOrder.getOrderDesc());
equRepairWorkOrder.setWorkStatus("0");
equRepairWorkOrder.setWorkId(IdUtils.fastSimpleUUID());
equRepairWorkOrder.setCreateTime(DateUtils.getNowDate());
equRepairWorkOrder.setCreateBy(SecurityUtils.getUsername());
//工厂
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
equRepairWorkOrder.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_",""));
equRepairWorkOrderMapper.insertEquRepairWorkOrder(equRepairWorkOrder);
equRepairOrder.setOrderStatus("审核通过");
}
equRepairOrder.setUpdateTime(DateUtils.getNowDate());
@ -201,30 +295,36 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
* @param equRepairOrder
* @return
*/
@Transactional//增加事务注解,出错时自动回滚
@Override
@DS("#header.poolName")
public int updateEquRepairOrder(EquRepairOrder equRepairOrder) {
equFileMapper.deleteEquFileBySourceId(equRepairOrder.getOrderId());
//上传附件
if (StringUtils.isNotEmpty(equRepairOrder.getFileList())) {
String[] ids = equRepairOrder.getFileList().split(",");
List<BaseFileData> files = new ArrayList<>();
BaseFileData file = null;
for (String id : ids) {
file = new BaseFileData();
file.setFileId(IdUtils.fastSimpleUUID());
file.setFileAddress(id);
file.setFileName(id.split("&fileName=")[1]);
file.setSourceId(equRepairOrder.getOrderId());
file.setCreateBy(SecurityUtils.getUsername());
file.setCreateTime(new Date());
files.add(file);
public AjaxResult updateEquRepairOrder(EquRepairOrder equRepairOrder) {
try{
equRepairOrderMapper.deleteBaseFileBySourceId(equRepairOrder.getOrderId());
//上传附件
if (StringUtils.isNotEmpty(equRepairOrder.getFileList())) {
String[] ids = equRepairOrder.getFileList().split(",");
List<BaseFileData> files = new ArrayList<>();
BaseFileData file = null;
for (String id : ids) {
file = new BaseFileData();
file.setFileId(IdUtils.fastSimpleUUID());
file.setFileAddress(id);
file.setFileName(id.split("&fileName=")[1]);
file.setSourceId(equRepairOrder.getOrderId());
file.setCreateBy(SecurityUtils.getUsername());
file.setCreateTime(new Date());
files.add(file);
}
equRepairOrderMapper.insertBaseFileBatch(files);
}
equFileMapper.insertEquFileBatch(files);
}
equRepairOrder.setUpdateTime(DateUtils.getNowDate());
equRepairOrder.setUpdateBy(SecurityUtils.getUsername());
return equRepairOrderMapper.updateEquRepairOrder(equRepairOrder);
equRepairOrder.setUpdateTime(DateUtils.getNowDate());
equRepairOrder.setUpdateBy(SecurityUtils.getUsername());
equRepairOrderMapper.updateEquRepairOrder(equRepairOrder);
return success("修改故障报修成功!");
}catch (Exception e) {
return error();
}
}
/**
@ -278,12 +378,12 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService {
/**
*
*
* @param equEquipment
* @param equTeamUser
* @return
*/
@Override
@DS("#header.poolName")
public List<EquEquipment> getRepairPersonList(EquEquipment equEquipment) {
return equRepairOrderMapper.getRepairPersonList(equEquipment);
public List<EquTeamUser> getRepairPersonList(EquTeamUser equTeamUser) {
return equRepairOrderMapper.getRepairPersonList(equTeamUser);
}
}

@ -1,25 +1,28 @@
package com.op.device.service.impl;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.op.common.core.domain.BaseFileData;
import com.op.common.core.utils.DateUtils;
import com.op.common.core.utils.StringUtils;
import com.op.common.core.utils.uuid.IdUtils;
import com.op.common.security.utils.SecurityUtils;
import com.op.device.domain.EquOutsourceWork;
import com.op.device.domain.EquTeamUser;
import com.op.device.mapper.EquOutsourceWorkMapper;
import com.op.device.domain.*;
import com.op.device.mapper.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.op.device.mapper.EquRepairWorkOrderMapper;
import com.op.device.domain.EquRepairWorkOrder;
import com.op.device.service.IEquRepairWorkOrderService;
import org.springframework.util.CollectionUtils;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
/**
* Service
*
@ -28,6 +31,12 @@ import javax.servlet.http.HttpServletRequest;
*/
@Service
public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService {
@Autowired
private EquOrderMapper equOrderMapper;
@Autowired
private EquOrderStandardMapper equOrderStandardMapper;
@Autowired
private EquRepairWorkOrderMapper equRepairWorkOrderMapper;
@ -43,7 +52,41 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
@Override
@DS("#header.poolName")
public EquRepairWorkOrder selectEquRepairWorkOrderByWorkId(String workId) {
return equRepairWorkOrderMapper.selectEquRepairWorkOrderByWorkId(workId);
//查询报修前图片
EquRepairWorkOrder list = equRepairWorkOrderMapper.selectEquRepairWorkOrderByWorkId(workId);
List<BaseFileData> beforeFiles = equRepairWorkOrderMapper.getBaseFileBatch(list.getOrderId());
if (!CollectionUtils.isEmpty(beforeFiles)) {
list.setBeforeRepairFiles(beforeFiles);
}
//查询维修后图片
List<BaseFileData> afterFiles = equRepairWorkOrderMapper.getBaseFileBatch(workId);
if (!CollectionUtils.isEmpty(afterFiles)) {
list.setAfterRepairFiles(afterFiles);
}
//查询报修前检查项图片
EquOrder equOrder = new EquOrder();
equOrder.setWorkCode(list.getWorkCode());
//检查项
List<EquOrder> checkLists = equOrderMapper.selectCheckListByWorkCode(equOrder);
//每个检查项对应的检测标准
for(EquOrder equOrder1 :checkLists){
EquOrderStandard equOrderStandard = new EquOrderStandard();
equOrderStandard.setOrderCode(equOrder1.getOrderCode());
equOrderStandard.setParentCode(equOrder1.getId());
List<EquOrderStandard> standardLists = equOrderStandardMapper.selectPdaEquOrderList(equOrderStandard);
for(EquOrderStandard standardList :standardLists){
//每个检查标准里面的照片
List<BaseFileData> files = equOrderStandardMapper.getBaseFileBatch(standardList.getId());
if (!CollectionUtils.isEmpty(files)) {
standardList.setPicturePaths(files);
}
}
equOrder1.setStandardList(standardLists);
}
list.setDetailList(checkLists);
return list;
}
/**
@ -114,6 +157,34 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
}
equRepairWorkOrder.setUpdateBy(SecurityUtils.getUsername());
equRepairWorkOrder.setUpdateTime(DateUtils.getNowDate());
//先删除每个维修工单对应图片
equRepairWorkOrderMapper.deleteBaseFileBySourceId(equRepairWorkOrder.getWorkId());
if (StringUtils.isNotEmpty(equRepairWorkOrder.getAfterRepairFile())) {
String[] ids = equRepairWorkOrder.getAfterRepairFile().split(",");
List<BaseFileData> files = new ArrayList<>();
BaseFileData file = null;
for (String id : ids) {
file = new BaseFileData();
file.setFileId(IdUtils.fastSimpleUUID());
file.setFileName(id.split("&fileName=")[1]);
file.setFileAddress(id);
file.setSourceId(equRepairWorkOrder.getWorkId());
file.setCreateBy(SecurityUtils.getUsername());
file.setCreateTime(new Date());
//维修后
file.setImageType("4");
files.add(file);
}
equRepairWorkOrderMapper.insertBaseFileBatch(files);
}
//更新标准表
for(EquOrderStandard equOrderStandard:equRepairWorkOrder.getStandardList()){
equOrderStandard.setUpdateBy(SecurityUtils.getUsername());
equOrderStandard.setUpdateTime(DateUtils.getNowDate());
equOrderStandardMapper.updateStandardAfterRepair(equOrderStandard);
}
return equRepairWorkOrderMapper.updateEquRepairWorkOrder(equRepairWorkOrder);
}
@ -151,20 +222,25 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
@Override
@DS("#header.poolName")
public int applyEquOutsourceWork(EquRepairWorkOrder equRepairWorkOrder) {
//如果存在之前的删掉重新增加,物理删除
equOutsourceWorkMapper.deleteEquOutsourceWorkByRepairCode(equRepairWorkOrder.getWorkCode());
//转委外
EquOutsourceWork equOutsourceWork = new EquOutsourceWork();
equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID());
//委外工单号
String serialNum = String.format("%03d", equOutsourceWorkMapper.selectWorkCodeSerialNumber());
String equipmentCode = equRepairWorkOrder.getEquipmentCode();
//String serialNum = String.format("%03d", equOutsourceWorkMapper.selectWorkCodeSerialNumber());
//改了,不生成流水号,从第十位开始切割
String code = DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equRepairWorkOrder.getWorkCode().substring(10);
equOutsourceWork.setWorkCode("WW"+ code);
equOutsourceWork.setOrderCode("无");
equOutsourceWork.setWorkCode("WW"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum);
equOutsourceWork.setEquipmentCode(equipmentCode);
equOutsourceWork.setEquipmentCode(equRepairWorkOrder.getEquipmentCode());
equOutsourceWork.setRepairCode(equRepairWorkOrder.getWorkCode());
equOutsourceWork.setWorkReason(equRepairWorkOrder.getOutSourceReason());
equOutsourceWork.setWorkPerson(equRepairWorkOrder.getOutSourcePerson());
equOutsourceWork.setWorkOutsourcingUnit(equRepairWorkOrder.getWorkOutsourcingUnit());
equOutsourceWork.setWorkConnection(equRepairWorkOrder.getWorkConnection());
//委外类型 维修委外
equOutsourceWork.setWorkType("0");
equOutsourceWork.setCreateTime(DateUtils.getNowDate());
equOutsourceWork.setCreateBy(SecurityUtils.getUsername());
if(equRepairWorkOrder.getWorkId()!= null){
@ -172,6 +248,10 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService
equRepairWorkOrder.setOutWorkCode(equOutsourceWork.getWorkCode());
equRepairWorkOrderMapper.updateWorkOutsource(equRepairWorkOrder);
}
//工厂号
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
equOutsourceWork.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_",""));
return equOutsourceWorkMapper.insertEquOutsourceWork(equOutsourceWork);
}
}

@ -1,13 +1,20 @@
package com.op.device.service.impl;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.List;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.op.common.core.utils.DateUtils;
import com.op.common.core.utils.uuid.IdUtils;
import com.op.common.core.web.domain.AjaxResult;
import com.op.common.security.utils.SecurityUtils;
import com.op.device.domain.EquOrder;
import com.op.device.domain.EquRepairWorkOrder;
import com.op.device.domain.SparePartsLedger;
import com.op.device.mapper.EquOrderMapper;
import com.op.device.mapper.EquRepairWorkOrderMapper;
import com.op.device.mapper.SparePartsLedgerMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.op.device.mapper.EquSpareApplyMapper;
@ -18,6 +25,9 @@ import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import static com.op.common.core.web.domain.AjaxResult.error;
import static com.op.common.core.web.domain.AjaxResult.success;
/**
* Service
*
@ -28,10 +38,16 @@ import javax.servlet.http.HttpServletRequest;
public class EquSpareApplyServiceImpl implements IEquSpareApplyService {
@Autowired
private EquSpareApplyMapper equSpareApplyMapper;
@Autowired
private SparePartsLedgerMapper sparePartsLedgerMapper;
@Autowired
private EquRepairWorkOrderMapper equRepairWorkOrderMapper;
@Autowired
private EquOrderMapper equOrderMapper;
/**
*
*
*
* @param applyId
* @return
*/
@ -43,7 +59,7 @@ public class EquSpareApplyServiceImpl implements IEquSpareApplyService {
/**
*
*
*
* @param equSpareApply
* @return
*/
@ -63,26 +79,57 @@ public class EquSpareApplyServiceImpl implements IEquSpareApplyService {
/**
*
*
*
* @param equSpareApply
* @return
*/
@Override
@DS("#header.poolName")
public int insertEquSpareApply(EquSpareApply equSpareApply) {
equSpareApply.setApplyId(IdUtils.fastSimpleUUID());
//工厂号
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
equSpareApply.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_",""));
equSpareApply.setCreateTime(DateUtils.getNowDate());
equSpareApply.setCreateBy(SecurityUtils.getUsername());
return equSpareApplyMapper.insertEquSpareApply(equSpareApply);
public AjaxResult insertEquSpareApply(EquSpareApply equSpareApply) {
try {
//equSpareApply.getSpareApplyLists().size() 是在申领备件的时候进行的操作
if(equSpareApply.getSpareApplyLists().size() >= 1){
List<EquSpareApply> list = equSpareApply.getSpareApplyLists();
for(EquSpareApply applyList:list){
applyList.setApplyId(IdUtils.fastSimpleUUID());
//领用时间
applyList.setApplyTime(DateUtils.getNowDate());
//申领人
applyList.setApplyPeople(SecurityUtils.getUsername());
//工厂号
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
applyList.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_",""));
applyList.setCreateTime(DateUtils.getNowDate());
applyList.setCreateBy(SecurityUtils.getUsername());
equSpareApplyMapper.insertEquSpareApply(applyList);
//更新完备品申领单后,更新库存
SparePartsLedger sparePartsLedger = new SparePartsLedger();
sparePartsLedger.setStorageId(applyList.getStorageId());
BigDecimal applyNum = applyList.getSpareQuantity();
BigDecimal amount = applyList.getAmount();
sparePartsLedger.setAmount(amount.subtract(applyNum));
sparePartsLedgerMapper.updateSparePartsLedger(sparePartsLedger);
}
}else{
equSpareApply.setApplyId(IdUtils.fastSimpleUUID());
//工厂号
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
equSpareApply.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_",""));
equSpareApply.setCreateTime(DateUtils.getNowDate());
equSpareApply.setCreateBy(SecurityUtils.getUsername());
equSpareApplyMapper.insertEquSpareApply(equSpareApply);
}
return success("新增申领记录成功!");
} catch (Exception e) {
return error();
}
}
/**
*
*
*
* @param equSpareApply
* @return
*/
@ -95,20 +142,60 @@ public class EquSpareApplyServiceImpl implements IEquSpareApplyService {
}
/**
*
*
* TODO
*
* @param applyIds
* @return
*/
@Override
@DS("#header.poolName")
public int deleteEquSpareApplyByApplyIds(String[] applyIds) {
return equSpareApplyMapper.deleteEquSpareApplyByApplyIds(applyIds);
public AjaxResult deleteEquSpareApplyByApplyIds(String[] applyIds) {
boolean check = true;
// 校验
for (String id : applyIds) {
EquSpareApply apply = equSpareApplyMapper.selectEquSpareApplyByApplyId(id);
int checkNull = 0;
if (apply.getWorkCode() != null) {
if (!apply.getWorkCode().isEmpty()) {
EquRepairWorkOrder workOrder = equRepairWorkOrderMapper.selectEquRepairWorkOrderByWorkCode(apply.getWorkCode());
if (workOrder != null) {
if (workOrder.getWorkStatus().equals("1")) {
check = false;
}
}else {
checkNull++;
}
EquOrder order = equOrderMapper.selectEquOrderByOrderCode(apply.getWorkCode());
if (order != null) {
if (order.getOrderStatus().equals("1")){
check = false;
}
}else {
checkNull++;
}
}
}
if (checkNull == 2) {
return error(500,"关联单号信息为空!删除失败!");
}
if (check) {
// 回填数据
sparePartsLedgerMapper.updateSpareNumAdd(apply);
// 逻辑删除领用单
equSpareApplyMapper.delEquSpareApplyByApplyId(id);
}else {
return error(500,"关联工单状态已完成,不可删除!");
}
}
return success();
}
/**
*
*
*
* @param applyId
* @return
*/

@ -52,7 +52,7 @@ public class EquTeamServiceImpl implements IEquTeamService {
List<EquTeamUser> equTeamUser1 = equTeamUserMapper.selectEquTeamUserList(equTeamUser);
EquTeam equTeam = equTeamMapper.selectEquTeamById(id);
equTeam.setSelectedData(equTeamUser1);
return equTeamMapper.selectEquTeamById(id);
return equTeam;
}
/**
@ -99,9 +99,9 @@ public class EquTeamServiceImpl implements IEquTeamService {
list = equTeam.getRightData();
String userId = list.get(i);
equTeamUser.setUserId(userId);
EquTeamUser memberList = equTeamMapper.selectTeamMember(equTeamUser);
equTeamUser.setUserName(memberList.getUserName());
equTeamUser.setNickName(memberList.getNickName());
// EquTeamUser memberList = equTeamMapper.selectTeamMember(equTeamUser);
// equTeamUser.setUserName(memberList.getUserName());
// equTeamUser.setNickName(memberList.getNickName());
equTeamUserMapper.insertEquTeamUser(equTeamUser);
}
return success("新增设备班组成功!");
@ -123,6 +123,7 @@ public class EquTeamServiceImpl implements IEquTeamService {
try{
equTeam.setUpdateTime(DateUtils.getNowDate());
equTeam.setUpdateBy(SecurityUtils.getUsername());
equTeamUserMapper.deleteEquTeamUserByTeamId(equTeam.getId());
equTeamMapper.updateEquTeam(equTeam);
for(int i = 0;i<equTeam.getRightData().size();i++){
EquTeamUser equTeamUser = new EquTeamUser();
@ -135,9 +136,8 @@ public class EquTeamServiceImpl implements IEquTeamService {
list = equTeam.getRightData();
String userId = list.get(i);
equTeamUser.setUserId(userId);
String userName = equTeamUserMapper.selectUserName(equTeamUser);
//判断班组人员有没有变动 挨个遍历
equTeamUser.setUserName(userName);
// String userName = equTeamUserMapper.selectUserName(equTeamUser);
// equTeamUser.setUserName(userName);
equTeamUserMapper.insertEquTeamUser(equTeamUser);
}
return success("修改设备班组成功!");

@ -33,8 +33,6 @@ public class EquUpkeepOrderServiceImpl implements IEquUpkeepOrderService {
@Autowired
private EquOrderMapper equOrderMapper;
@Autowired
private EquOrderEquSpareMapper equOrderEquSpareMapper;
@Autowired
private EquOrderStandardMapper equOrderStandardMapper;
@Autowired
private EquOrderDetailMapper equOrderDetailMapper;
@ -42,6 +40,10 @@ public class EquUpkeepOrderServiceImpl implements IEquUpkeepOrderService {
private EquOrderPersonMapper equOrderPersonMapper;
@Autowired
private EquOrderEquMapper equOrderEquMapper;
@Autowired
private EquSpareApplyMapper equSpareApplyMapper;
@Autowired
private SparePartsLedgerMapper sparePartsLedgerMapper;
/**
*
@ -68,7 +70,7 @@ public class EquUpkeepOrderServiceImpl implements IEquUpkeepOrderService {
}
/**
* TODO
*
*
* @param equPlan
* @return
@ -92,8 +94,10 @@ public class EquUpkeepOrderServiceImpl implements IEquUpkeepOrderService {
String serialNum = String.format("%03d",equOrderMapper.selectSerialNumber());
equOrder.setOrderCode("F"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD)+serialNum);
equOrder.setPlanLoopType("");
equOrder.setPlanLoopStart(equPlan.getPlanTimeArray().get(0));
equOrder.setPlanLoopEnd(equPlan.getPlanTimeArray().get(1));
if (equPlan.getPlanTimeArray() != null) {
equOrder.setPlanLoopStart(equPlan.getPlanTimeArray().get(0));
equOrder.setPlanLoopEnd(equPlan.getPlanTimeArray().get(1));
}
// 设置工单状态
equOrder.setOrderStatus("0");
equOrder.setFactoryCode(factory);
@ -102,42 +106,43 @@ public class EquUpkeepOrderServiceImpl implements IEquUpkeepOrderService {
equOrder.setUpdateBy(SecurityContextHolder.getUserName());
equOrder.setUpdateTime(DateUtils.getNowDate());
equOrder.setPlanType("maintenance");
equOrder.setUpkeep("0");
equOrder.setEquipmentCode(equPlan.getEquipmentItem().get(0).getEquipmentCode());
// 工单插入数据库
equOrderMapper.insertEquOrder(equOrder);
// 生成工单-设备
EquOrderEqu equ = new EquOrderEqu();
List<EquPlanEqu> equPlanEquList = equPlan.getEquipmentItem();
EquPlanEqu equPlanEqu = equPlanEquList.get(0);
BeanUtils.copyProperties(equPlanEqu,equ);
equ.setId(IdUtils.fastSimpleUUID());
equ.setParentCode(equOrder.getOrderId());
equ.setOrderCode(equOrder.getOrderCode());
equ.setFactoryCode(factory);
equ.setAttr1("");
equ.setCreateBy(SecurityContextHolder.getUserName());
// 设备插入
equOrderEquMapper.insertEquOrderEqu(equ);
EquPlanEqu equPlanEqu = equPlan.getEquipmentItem().get(0);
// 生成工单-备件
List<EquOrderEquSpare> spareList = new ArrayList<>();
List<EquPlanEquSpare> equSpareList = equPlanEqu.getSpareList();
for (EquPlanEquSpare spare : equSpareList) {
EquOrderEquSpare spareTemp = new EquOrderEquSpare();
BeanUtils.copyProperties(spare,spareTemp);
spareTemp.setId(IdUtils.fastSimpleUUID());
spareTemp.setOrderCode(equOrder.getOrderCode());
spareTemp.setParentCode(equ.getId());
spareTemp.setFactoryCode(factory);
spareTemp.setCreateBy(SecurityContextHolder.getUserName());
spareTemp.setCreateTime(DateUtils.getNowDate());
spareTemp.setUpdateBy(SecurityContextHolder.getUserName());
spareTemp.setUpdateTime(DateUtils.getNowDate());
// 插入备件信息
equOrderEquSpareMapper.insertEquOrderEquSpare(spareTemp);
spareList.add(spareTemp);
if (equSpareList != null) {
// 获取流水单号
int applySerialNum = equSpareApplyMapper.selectSerialNumber();
for (EquPlanEquSpare spare : equSpareList) {
EquSpareApply apply = new EquSpareApply();
apply.setApplyId(IdUtils.fastSimpleUUID());
apply.setApplyCode("A"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD)+String.format("%03d",applySerialNum));
applySerialNum++;
apply.setSpareCode(spare.getMaterialCode());
apply.setSpareName(spare.getMaterialDesc());
apply.setSpareModel(spare.getSpareType());
apply.setSpareQuantity(spare.getApplyNum());
apply.setFactoryCode(factory);
apply.setApplyPeople(SecurityContextHolder.getUserName());
apply.setWorkCode(equOrder.getOrderCode());
apply.setCreateBy(SecurityContextHolder.getUserName());
apply.setCreateTime(DateUtils.getNowDate());
apply.setSpareUseEquipment(equOrder.getEquipmentCode());
apply.setApplyTime(DateUtils.getNowDate());
// 插入备件信息
equSpareApplyMapper.insertEquSpareApply(apply);
// 减少备件仓库中备件数量
sparePartsLedgerMapper.updateSpareNumReduce(apply);
}
}
// 备件置入
System.out.println(spareList);
// 生成工单-设备-保养项
List<EquPlanDetail> detailList = equPlanEqu.getEquPlanDetailList();
@ -148,8 +153,7 @@ public class EquUpkeepOrderServiceImpl implements IEquUpkeepOrderService {
BeanUtils.copyProperties(detail,equOrderDetail);
equOrderDetail.setId(IdUtils.fastSimpleUUID());
equOrderDetail.setOrderCode(equOrder.getOrderCode());
equOrderDetail.setParentCode(equ.getId());
equOrderDetail.setFactroyCode(factory);
equOrderDetail.setFactoryCode(factory);
equOrderDetail.setStandardList(orderStandardList);
equOrderDetail.setCreateBy(SecurityContextHolder.getUserName());
equOrderDetail.setCreateTime(DateUtils.getNowDate());

@ -1,6 +1,7 @@
package com.op.device.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.op.common.core.domain.BaseFileData;
import com.op.common.core.web.domain.AjaxResult;
import com.op.device.domain.*;
import com.op.device.domain.vo.InspectionWorkVO;
@ -36,7 +37,9 @@ public class InspectionWorkServiceImpl implements IInspectionWorkService {
@Autowired
private EquOrderEquSpareMapper equOrderEquSpareMapper;
@Autowired
private EquOrderEquMapper equOrderEquMapper;
private EquSpareApplyMapper equSpareApplyMapper;
@Autowired
private EquFileMapper equFileMapper;
/**
*
@ -56,13 +59,21 @@ public class InspectionWorkServiceImpl implements IInspectionWorkService {
order.setPlanName(equPlan.getPlanName());
}
// 保养图片
BaseFileData selectTemp = new BaseFileData();
selectTemp.setSourceId(orderId);
List<String> upkeepPictures = equFileMapper.selectUrlList(selectTemp);
if (upkeepPictures != null) {
order.setUpkeepPictures(upkeepPictures);
}
// 查询备件信息
List<EquOrderEquSpare> spareList = equOrderEquSpareMapper.selectEquOrderEquSpareByOrderCode(order.getOrderCode());
List<EquSpareApply> spareList = equSpareApplyMapper.selectEquSpareApplyListByWorkCode(order.getOrderCode());
// 替换循环周期
order.setPlanLoopType(equOrderMapper.changeLoopType(order.getPlanLoopType()));
Equipment equipment = equipmentMapper.selectEquipmentByEquipmentCode(equOrderEquMapper.selectEquOrderEquListByParentCode(order.getOrderId()).getEquipmentCode());
Equipment equipment = equipmentMapper.selectEquipmentByEquipmentCode(order.getEquipmentCode());
// 查询检查项、标准
List<EquOrderDetail> detailList = equOrderDetailMapper.selectEquOrderDetailByOrderCode(order.getOrderCode());
@ -82,6 +93,14 @@ public class InspectionWorkServiceImpl implements IInspectionWorkService {
standard.setDetailReach("达标");
}
}
// 未达标图片
selectTemp.setSourceId(standard.getId());
selectTemp.setImageType("3");
List<String> checkPictrueList = equFileMapper.selectUrlList(selectTemp);
if (checkPictrueList != null) {
standard.setCheckPictrueList(checkPictrueList);
}
}
detail.setStandardList(standardList);
}

@ -15,6 +15,14 @@
ep.plan_restrict planRestrict,
ep.plan_type planType,
ep.plan_outsource planOutsource,
ep.calculation_rule calculationRule,
ep.shut_down as 'shutDown',
ep.upkeep,
ep.work_person workPerson,
ep.work_outsourcing_unit workOutsourcingUnit,
ep.work_connection workConnection,
ep.work_reason workReason,
ep.plan_code planCode,
epe.equipment_code equipmentCode,
epe.equipment_name equipmentName,
epe.id planEquId
@ -23,6 +31,9 @@
where ep.del_flag = '0' and epe.del_flag = '0' and ep.plan_status = '0'
and ep.plan_type = #{planType}
and CONVERT(varchar(10),GETDATE(), 120) >= CONVERT(varchar(10),ep.plan_loop_start, 120)
<if test='planType=="inspection" or planType=="maintenance" '>
and CONVERT(varchar(10),ep.plan_loop_end, 120) >= CONVERT(varchar(10),GETDATE(), 120)
</if>
</select>
<select id="getNewTaskOrder" resultType="com.op.device.domain.EquOrder">
select top 1 order_code orderCode,
@ -33,7 +44,19 @@
<if test='planLoopType=="season"'> DATEDIFF (month, create_time, GETDATE())/3 days </if>
<if test='planLoopType=="year"'> DATEDIFF (year, create_time, GETDATE()) days </if>
from equ_order
where plan_type = #{planType} and plan_code = #{planCode}
where plan_type = #{planType} and plan_code = #{planCode} and equipment_code = #{equipmentCode}
order by create_time desc
</select>
<select id="getNewTaskOrder0" resultType="com.op.device.domain.EquOrder">
select top 1 order_code orderCode,
order_start orderStart,
<if test='planLoopType=="day"'> DATEDIFF (day, order_start, GETDATE()) days </if>
<if test='planLoopType=="week"'> DATEDIFF (week, order_start, GETDATE()) days </if>
<if test='planLoopType=="month"'> DATEDIFF (month, order_start, GETDATE()) days </if>
<if test='planLoopType=="season"'> DATEDIFF (month, order_start, GETDATE())/3 days </if>
<if test='planLoopType=="year"'> DATEDIFF (year, order_start, GETDATE()) days </if>
from equ_order
where plan_type = #{planType} and plan_code = #{planCode} and equipment_code = #{equipmentCode}
order by create_time desc
</select>
</mapper>

@ -60,7 +60,7 @@
<select id="selectSerialNumber" resultType="java.lang.Integer">
SELECT COUNT(detail_id)+1 AS serialNum
FROM equ_check_item_detail
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) and parent_code = #{itemCode} and del_flag = '0'
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) and parent_code = #{itemCode}
</select>
<select id="selectEquCheckItemDetailByParentCode" parameterType="String" resultMap="EquCheckItemDetailResult">

@ -65,7 +65,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectSerialNumber" resultType="java.lang.Integer">
SELECT COUNT(item_id)+1 AS serialNum
FROM equ_check_item
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) and del_flag = '0'
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time)
</select>
<select id="selectAllEquipmentList" resultType="com.op.device.domain.vo.EquCheckItemVO">

@ -19,6 +19,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<!--故障大类-->
<result property="dictLabel" column="dict_label"/>
<result property="dictValue" column="dict_value"/>
</resultMap>
<sql id="selectEquFaultTypeVo">
@ -56,7 +61,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectSerialNumber" resultType="java.lang.Integer">
SELECT COUNT(fault_id)+1 AS serialNum
FROM equ_fault_type
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) and del_flag = '0'
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time)
</select>
<insert id="insertEquFaultType" parameterType="EquFaultType">
@ -125,4 +130,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{faultId}
</foreach>
</delete>
<select id="selectFirstLevelList" resultMap="EquFaultTypeResult">
SELECT
dict_label AS dictLabel
dict_value AS dictValue
FROM sys_dict_data
WHERE dict_type = 'device_fault_type'
</select>
</mapper>

@ -68,7 +68,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and image_type = #{imageType}
</select>
<insert id="insertEquFile" parameterType="EquFile">
<select id="selectUrlList" resultType="java.lang.String">
select file_address from base_file
<where>
<if test="imageType != null and imageType != ''"> and image_type = #{imageType}</if>
<if test="sourceId != null and sourceId != ''"> and source_id = #{sourceId}</if>
</where>
</select>
<insert id="insertEquFile" parameterType="EquFile">
insert into base_file
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="fileId != null">file_id,</if>
@ -105,7 +113,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</insert>
<insert id="insertEquFileBatch">
INSERT INTO base_file(file_id, file_name, file_address, source_id, remark, create_by, create_time)
INSERT INTO base_file(file_id, file_name, file_address, source_id, remark, create_by, create_time,image_type)
VALUES
<foreach collection="baseFiles" index="" item="baseFile" separator=",">
(
@ -115,7 +123,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{baseFile.sourceId},
#{baseFile.remark},
#{baseFile.createBy},
#{baseFile.createTime}
#{baseFile.createTime},
#{baseFile.imageType}
)
</foreach>
</insert>

@ -50,7 +50,7 @@
<select id="selectSerialNumber" resultType="java.lang.Integer">
SELECT COUNT(id)+1 AS serialNum
FROM equ_item_equipment
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) and del_flag = '0'
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time)
</select>
<select id="selectEquipmentCodeList" resultType="java.lang.String">

@ -14,7 +14,7 @@
<result property="itemMethod" column="item_method" />
<result property="itemType" column="item_type" />
<result property="itemTypeName" column="item_type_name" />
<result property="factroyCode" column="factroy_code" />
<result property="factoryCode" column="factory_code" />
<result property="attr1" column="attr1" />
<result property="attr2" column="attr2" />
<result property="attr3" column="attr3" />
@ -27,7 +27,7 @@
<sql id="selectEquOrderDetailVo">
select id, code, order_code, parent_code, item_code, item_name, item_method,
item_type, item_type_name, factroy_code, attr1, attr2, attr3, del_flag,
item_type, item_type_name, factory_code, attr1, attr2, attr3, del_flag,
create_by, create_time, update_by, update_time
from equ_order_detail
</sql>
@ -43,7 +43,7 @@
<if test="itemMethod != null and itemMethod != ''"> and item_method = #{itemMethod}</if>
<if test="itemType != null and itemType != ''"> and item_type = #{itemType}</if>
<if test="itemTypeName != null and itemTypeName != ''"> and item_type_name like concat('%', #{itemTypeName}, '%')</if>
<if test="factroyCode != null and factroyCode != ''"> and factroy_code = #{factroyCode}</if>
<if test="factoryCode != null and factoryCode != ''"> and factory_code = #{factoryCode}</if>
<if test="attr1 != null and attr1 != ''"> and attr1 = #{attr1}</if>
<if test="attr2 != null and attr2 != ''"> and attr2 = #{attr2}</if>
<if test="attr3 != null and attr3 != ''"> and attr3 = #{attr3}</if>
@ -78,7 +78,7 @@
<if test="itemMethod != null">item_method,</if>
<if test="itemType != null">item_type,</if>
<if test="itemTypeName != null">item_type_name,</if>
<if test="factroyCode != null and factroyCode != ''">factroy_code,</if>
<if test="factoryCode != null and factoryCode != ''">factory_code,</if>
<if test="attr1 != null">attr1,</if>
<if test="attr2 != null">attr2,</if>
<if test="attr3 != null">attr3,</if>
@ -98,7 +98,7 @@
<if test="itemMethod != null">#{itemMethod},</if>
<if test="itemType != null">#{itemType},</if>
<if test="itemTypeName != null">#{itemTypeName},</if>
<if test="factroyCode != null and factroyCode != ''">#{factroyCode},</if>
<if test="factoryCode != null and factoryCode != ''">#{factoryCode},</if>
<if test="attr1 != null">#{attr1},</if>
<if test="attr2 != null">#{attr2},</if>
<if test="attr3 != null">#{attr3},</if>
@ -112,9 +112,9 @@
<insert id="insertEquOrderDetails">
insert into equ_order_detail
(
id, parent_code,
id, order_code,
item_code, item_name, item_method,
item_type, item_type_name, factroy_code, del_flag,
item_type, item_type_name, factory_code, del_flag,
create_by, create_time
)
VALUES
@ -122,7 +122,7 @@
(
#{item.id},#{item.parentCode},
#{item.itemCode},#{item.itemName},#{item.itemMethod},
#{item.itemType},#{item.itemTypeName},#{item.factroyCode},#{item.delFlag},
#{item.itemType},#{item.itemTypeName},#{item.factoryCode},#{item.delFlag},
#{item.createBy},#{item.createTime}
)
</foreach>
@ -140,7 +140,7 @@
<if test="itemMethod != null">item_method = #{itemMethod},</if>
<if test="itemType != null">item_type = #{itemType},</if>
<if test="itemTypeName != null">item_type_name = #{itemTypeName},</if>
<if test="factroyCode != null and factroyCode != ''">factroy_code = #{factroyCode},</if>
<if test="factoryCode != null and factoryCode != ''">factory_code = #{factoryCode},</if>
<if test="attr1 != null">attr1 = #{attr1},</if>
<if test="attr2 != null">attr2 = #{attr2},</if>
<if test="attr3 != null">attr3 = #{attr3},</if>
@ -163,4 +163,13 @@
#{id}
</foreach>
</delete>
<delete id="delEquOrderDetailByorderIds" parameterType="String">
update equ_order_detail set del_flag = '1' where del_flag = '0' and order_code in ( select order_code from
equ_order where del_flag = '0' and order_id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
)
</delete>
</mapper>

@ -52,6 +52,11 @@
where parent_code = #{parentCode} and del_flag = '0'
</select>
<select id="selectEquOrderEquListByOrderCode" parameterType="String" resultMap="EquOrderEquResult">
<include refid="selectEquOrderEquVo"/>
where order_code = #{orderCode} and del_flag = '0'
</select>
<insert id="insertEquOrderEqu" parameterType="EquOrderEqu">
insert into equ_order_equ
<trim prefix="(" suffix=")" suffixOverrides=",">

@ -25,7 +25,10 @@
</resultMap>
<sql id="selectEquOrderEquSpareVo">
select id, code, order_code, parent_code, material_code, material_desc, spare_type, apply_num, factory_code, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time from equ_order_equ_spare
select id, code, order_code, parent_code, material_code, material_desc,
spare_type, apply_num, factory_code, attr1, attr2, attr3, del_flag,
create_by, create_time, update_by, update_time
from equ_order_equ_spare
</sql>
<select id="selectEquOrderEquSpareList" parameterType="EquOrderEquSpare" resultMap="EquOrderEquSpareResult">
@ -102,6 +105,22 @@
<if test="updateTime != null">#{updateTime},</if>
</trim>
</insert>
<insert id="insertEquOrderEquSpares">
insert into equ_order_equ_spare(
id, order_code, material_code, material_desc,
spare_type, apply_num, factory_code, del_flag,
create_by, create_time
)
VALUES
<foreach collection="list" index="index" item="item" separator=",">
(
#{item.id},#{item.code},#{item.materialCode},#{item.materialDesc},
#{item.spareType},#{item.applyNum},#{item.factoryCode},#{item.delFlag},
#{item.createBy},#{item.createTime}
)
</foreach>
</insert>
<update id="updateEquOrderEquSpare" parameterType="EquOrderEquSpare">
update equ_order_equ_spare
@ -136,4 +155,4 @@
#{id}
</foreach>
</delete>
</mapper>
</mapper>

@ -39,6 +39,14 @@
<result property="orderInspect" column="order_inspect" />
<result property="repairCode" column="repair_code" />
<result property="workCode" column="work_code" />
<result property="id" column="id" />
<result property="itemName" column="item_name" />
<result property="itemMethod" column="item_method" />
<result property="itemType" column="item_type" />
<result property="itemTypeName" column="item_type_name" />
<result property="outsourceCode" column="outsource_code" />
</resultMap>
<sql id="selectEquOrderVo">
@ -46,7 +54,7 @@
plan_loop_start, plan_loop_end, order_start, order_end, equipment_code, order_status,
order_cost, plan_person, order_cost_time, order_sign_person,
factory_code, attr1, attr2, attr3, del_flag, create_by, create_time,
update_by, update_time,upkeep,calculation_rule,shut_down,order_inspect,repair_code,work_code
update_by, update_time,upkeep,calculation_rule,shut_down,order_inspect,repair_code,work_code,outsource_code
from equ_order
</sql>
@ -57,10 +65,11 @@
<if test="planCode != null and planCode != ''"> and plan_code like concat('%', #{planCode}, '%')</if>
<if test="planType != null and planType != ''"> and plan_type = #{planType}</if>
<if test="orderCode != null and orderCode != ''"> and order_code like concat('%', #{orderCode}, '%')</if>
<if test="planWorkshop != null and planWorkshop != ''"> and plan_workshop like concat('%', #{planWorkshop}, '%')</if>
<if test="planWorkshop != null and planWorkshop != ''"> and plan_workshop = #{planWorkshop}</if>
<if test="planProdLine != null and planProdLine != ''"> and plan_prod_line = #{planProdLine}</if>
<if test="planLoop != null and planLoop != ''"> and plan_loop = #{planLoop}</if>
<if test="planLoopType != null and planLoopType != ''"> and plan_loop_type = #{planLoopType}</if>
<if test="equipmentCode != null and equipmentCode != ''"> and equipment_code like concat('%', #{equipmentCode}, '%')</if>
<if test="planLoopStart != null "> and plan_loop_start = #{planLoopStart}</if>
<if test="planLoopEnd != null "> and plan_loop_end = #{planLoopEnd}</if>
<if test="orderStart != null "> and order_start = #{orderStart}</if>
@ -84,16 +93,17 @@
<if test="shutDown != null "> and shut_down = #{shutDown}</if>
<if test="orderInspect != null "> and order_inspect = #{orderInspect}</if>
<if test="repairCode != null "> and repair_code = #{repairCode}</if>
<if test="outsourceCode != null "> and outsource_code = #{outsourceCode}</if>
<if test="workCode != null "> and work_code = #{workCode}</if>
<if test="loopStart != null "> and CONVERT(date,plan_loop_start) >= #{loopStart}</if>
<if test="loopEnd != null "> and #{loopEnd} >= CONVERT(date,plan_loop_start)</if>
<if test="loopEndArrayStart != null "> and CONVERT(date,plan_loop_end) >= #{loopEndArrayStart}</if>
<if test="getLoopEndArrayEnd != null "> and #{getLoopEndArrayEnd} >= CONVERT(date,plan_loop_end)</if>
<if test="orderStartArrayStart != null "> and CONVERT(date,order_start) >= #{orderStartArrayStart}</if>
<if test="orderStartArrayEnd != null "> and #{orderStartArrayEnd} >= CONVERT(date,order_start)</if>
<if test="orderEndArrayStart != null "> and CONVERT(date,order_end) >= #{orderEndArrayStart}</if>
<if test="orderEndArrayEnd != null "> and #{orderEndArrayEnd} >= CONVERT(date,order_end)</if>
and del_flag = '0'
<if test="(equipmentCode != null and equipmentCode != '') or (equipmentName != null and equipmentName != '')">
and order_code in (
select order_code from equ_order_equ
where equ_order.order_code = equ_order_equ.order_code
<if test="equipmentCode != null and equipmentCode != ''">and equ_order_equ.equipment_code like concat('%', #{equipmentCode}, '%')</if>
<if test="equipmentName != null and equipmentName != ''">and equ_order_equ.equipment_name like concat('%', #{equipmentName}, '%')</if>
)
</if>
</where>
</select>
@ -118,7 +128,7 @@
<select id="selectSerialNumber" resultType="java.lang.Integer">
SELECT COUNT(order_id)+1 AS serialNum
FROM equ_order
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) and del_flag = '0'
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time)
</select>
<select id="changeLoopType" resultType="java.lang.String">
@ -127,7 +137,7 @@
<select id="selectTodayTask" parameterType="String" resultMap="EquOrderResult">
<include refid="selectEquOrderVo"/>
where CONVERT(date,GETDATE()) > plan_loop_start and plan_type = #{planType} and del_flag = '0' and order_status != '1' and order_code in (
where CONVERT(date,GETDATE()) >= plan_loop_start and plan_type = #{planType} and del_flag = '0' and order_status != '1' and order_code in (
select order_code from equ_order_person where del_flag = '0' and user_id = #{userId} GROUP BY order_code
)
</select>
@ -139,6 +149,10 @@
)
</select>
<select id="selectEquipmentNameByEquCode" resultType="java.lang.String">
select equipment_name AS 'equipmentName' from base_equipment where equipment_code = #{equipmentCode} and del_flag = '0'
</select>
<insert id="insertEquOrder" parameterType="EquOrder">
insert into equ_order
<trim prefix="(" suffix=")" suffixOverrides=",">
@ -178,7 +192,7 @@
<if test="repairCode != null">repair_code,</if>
<if test="workCode != null">work_code,</if>
<if test="planRestrict != null">plan_restrict,</if>
<if test="outsourceCode != null">outsource_code,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="orderId != null">#{orderId},</if>
@ -216,6 +230,7 @@
<if test="repairCode != null">#{repairCode},</if>
<if test="workCode != null">#{workCode},</if>
<if test="planRestrict != null">#{planRestrict},</if>
<if test="outsourceCode != null">#{outsourceCode},</if>
</trim>
</insert>
@ -255,6 +270,7 @@
<if test="orderInspect != null">order_inspect = #{orderInspect},</if>
<if test="repairCode != null">repair_code = #{repairCode},</if>
<if test="workCode != null">work_code = #{workCode},</if>
<if test="outsourceCode != null">outsource_code = #{outsourceCode},</if>
</trim>
where order_id = #{orderId}
</update>
@ -269,4 +285,69 @@
#{orderId}
</foreach>
</delete>
<delete id="delEquOrderByOrderIds">
update equ_order set del_flag = '1' where order_id in
<foreach item="orderId" collection="array" open="(" separator="," close=")">
#{orderId}
</foreach>
</delete>
<!-- 手持维修查询检查项-->
<select id="selectCheckListByWorkCode" parameterType="EquOrder" resultMap="EquOrderResult">
select
eo.order_id,
eo.order_code,
eo.repair_code,
eo.work_code,
eod.id,
eod.item_name,
eod.item_method,
eod.item_type,
eod.item_type_name
from equ_order eo
left join equ_order_detail eod on eo.order_code = eod.order_code
where eo.work_code = #{workCode}
and eo.del_flag = '0'
</select>
<!-- 手持报修查询检查项-->
<select id="selectCheckListByRepairCode" parameterType="EquOrder" resultMap="EquOrderResult">
select
eo.order_id,
eo.order_code,
eo.repair_code,
eo.work_code,
eod.id,
eod.item_name,
eod.item_method,
eod.item_type,
eod.item_type_name
from equ_order eo
left join equ_order_detail eod on eo.order_code = eod.order_code
where eo.repair_code = #{repairCode}
and eo.del_flag = '0'
</select>
<!-- 查询对应检查项id-->
<select id="getIdsByOrderCode" parameterType="EquOrder" resultType="java.lang.String">
select
order_id
from equ_order
where repair_code = #{orderCode}
and del_flag = '0'
</select>
<!-- 更新维修单号 -->
<update id="updateEquOrderRepairCode" parameterType="EquOrder">
update equ_order
<trim prefix="SET" suffixOverrides=",">
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="workCode != null">work_code = #{workCode},</if>
</trim>
where order_id = #{orderId}
</update>
</mapper>

@ -82,7 +82,7 @@
<if test="updateTime != null">#{updateTime},</if>
</trim>
</insert>
<insert id="insertEquOrderPlans">
<insert id="insertEquOrderPersons">
insert into equ_order_person
(
id, order_code, user_id, user_name, factory_code,
@ -92,7 +92,7 @@
<foreach collection="list" index="index" item="item" separator=",">
(
#{item.id},#{item.planCode},
#{item.userId},#{item.userName},#{item.factroyCode},
#{item.userId},#{item.userName},#{item.factoryCode},
#{item.delFlag},#{item.createBy},#{item.createTime}
)
</foreach>
@ -127,4 +127,15 @@
#{id}
</foreach>
</delete>
<delete id="delEquOrderPersonByorderIds" parameterType="String">
update equ_order_person
set del_flag = '1'
where del_flag = '0' and order_code in (
select order_code from equ_order where del_flag = '0' and order_id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
)
</delete>
</mapper>

@ -31,11 +31,31 @@
<result property="repairReach" column="repair_reach" />
<result property="repairValue" column="repair_value" />
<result property="repairPicture" column="repair_picture" />
<!-- 检查项检查方法-->
<result property="itemMethod" column="item_method" />
</resultMap>
<resultMap type="com.op.common.core.domain.BaseFileData" id="BaseFileResult">
<result property="fileId" column="file_id" />
<result property="fileName" column="file_name" />
<result property="fileAddress" column="file_address" />
<result property="sourceId" column="source_id" />
<result property="remark" column="remark" />
<result property="attr1" column="attr1" />
<result property="attr2" column="attr2" />
<result property="attr3" column="attr3" />
<result property="attr4" column="attr4" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="imageType" column="image_type" />
</resultMap>
<sql id="selectBaseFileVo">
select file_id, file_name, file_address, source_id, remark, attr1,
attr2, attr3, attr4, create_by, create_time, update_by,
update_time,image_type from base_file
</sql>
<sql id="selectEquOrderStandardVo">
select id, code, parent_code, order_code, standard_type, standard_name, detail_up_limit, detail_down_limit,
detail_unit, detail_reach, actual_value, detail_error, factory_code, attr1, attr2, attr3,
@ -141,33 +161,18 @@
</trim>
</insert>
<insert id="insertBaseFileBatch">
INSERT INTO base_file(file_id, file_name, file_address, source_id, remark, create_by, create_time)
VALUES
<foreach collection="baseFiles" index="" item="baseFile" separator=",">
(
#{baseFile.fileId},
#{baseFile.fileName},
#{baseFile.fileAddress},
#{baseFile.sourceId},
#{baseFile.remark},
#{baseFile.createBy},
#{baseFile.createTime}
)
</foreach>
</insert>
<insert id="insertEquOrderStandards">
insert into equ_order_standard(
id, parent_code, order_code, standard_type, standard_name,
detail_up_limit, detail_down_limit,detail_unit,
factory_code,del_flag, create_by, create_time,fault_type
factory_code,del_flag, create_by, create_time
)
VALUES
<foreach collection="list" index="index" item="item" separator=",">
(
#{item.id},#{item.parentCode},#{item.planCode},#{item.standardType},#{item.standardName},
#{item.detailUpLimit},#{item.detailDownLimit},#{item.detailUnit},
#{item.factroyCode},#{item.delFlag},#{item.createBy},#{item.createTime}
#{item.factoryCode},#{item.delFlag},#{item.createBy},#{item.createTime}
)
</foreach>
</insert>
@ -204,6 +209,17 @@
where id = #{id} and del_flag = '0'
</update>
<update id="updateActualValues" parameterType="EquOrderStandard">
update equ_order_standard
<trim prefix="SET" suffixOverrides=",">
<if test="repairReach != null">repair_reach = #{repairReach},</if>
<if test="repairValue != null">repair_value = #{repairValue},</if>
<if test="repairPicture != null">repair_picture = #{repairPicture},</if>
</trim>
where id = #{id}
and del_flag = '0'
</update>
<delete id="deleteEquOrderStandardById" parameterType="String">
delete from equ_order_standard where id = #{id}
</delete>
@ -215,25 +231,72 @@
</foreach>
</delete>
<!--手持查询维修工单接口-->
<!--手持查询维修工单接口 /PC查询点检巡检信息接口-->
<select id="selectPdaEquOrderList" parameterType="EquOrderStandard" resultMap="EquOrderStandardResult">
select
eos.id,
eos.order_code,
eos.standard_name,
eod.item_method,
eos.detail_up_limit,
eos.detail_down_limit,
eos.detail_unit,
eos.detail_reach,
eos.actual_value
eos.id,
eos.order_code,
eos.standard_name,
eos.detail_up_limit,
eos.detail_down_limit,
eos.detail_unit,
eos.detail_reach,
eos.actual_value,
eos.standard_type,
eos.repair_reach,
eos.repair_value
from equ_order_standard eos
left join equ_order eo on eos.order_code = eo.order_code
left join equ_order_detail eod on eos.order_code = eod.order_code
<where>
<if test="workCode != null "> and eo.work_code = #{workCode}</if>
and eo.del_flag = '0'
and eos.error_flag = '1'
</where>
where parent_code = #{parentCode}
and order_code = #{orderCode}
and eos.detail_reach = '0'
</select>
<insert id="insertBaseFileBatch">
INSERT INTO base_file(file_id, file_name, file_address, source_id, remark, create_by, create_time,image_type)
VALUES
<foreach collection="baseFiles" index="" item="baseFile" separator=",">
(
#{baseFile.fileId},
#{baseFile.fileName},
#{baseFile.fileAddress},
#{baseFile.sourceId},
#{baseFile.remark},
#{baseFile.createBy},
#{baseFile.createTime},
#{baseFile.imageType}
)
</foreach>
</insert>
<delete id="deleteBaseFileBySourceId">
delete from base_file where source_id = #{sourceId}
</delete>
<delete id="delEquOrderStandardByorderIds" parameterType="String">
update equ_order_standard set del_flag = '1'
where del_flag = '0' and order_code in (
select order_code from equ_order where del_flag = '0' and order_id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
)
</delete>
<select id="getBaseFileBatch" resultMap="BaseFileResult">
<include refid="selectBaseFileVo"/>
where source_id = #{sourceId}
</select>
<update id="updateStandardAfterRepair" parameterType="EquOrderStandard">
update equ_order_standard
<trim prefix="SET" suffixOverrides=",">
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="repairReach != null">repair_reach = #{repairReach},</if>
<if test="repairValue != null">repair_value = #{repairValue},</if>
</trim>
where id = #{id}
and del_flag = '0'
</update>
</mapper>

@ -17,6 +17,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="equipmentCode" column="equipment_code" />
<result property="workCost" column="work_cost" />
<result property="workCostTime" column="work_cost_time" />
<result property="workStatus" column="work_status" />
<result property="attr1" column="attr1" />
<result property="attr2" column="attr2" />
<result property="attr3" column="attr3" />
@ -35,7 +36,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectEquOutsourceWorkVo">
select work_id, work_code,order_code, repair_code, work_person, work_outsourcing_unit, work_connection, work_reason, work_type, equipment_code, work_cost, work_cost_time, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time, factory_code from equ_outsource_work
select work_id, work_code,order_code, repair_code, work_person, work_outsourcing_unit, work_connection, work_reason, work_type, equipment_code, work_cost, work_cost_time,work_status, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time, factory_code from equ_outsource_work
</sql>
<select id="selectEquOutsourceWorkList" parameterType="EquOutsourceWork" resultMap="EquOutsourceWorkResult">
@ -52,6 +53,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
eow.equipment_code,
eow.work_cost,
eow.work_cost_time,
eow.work_status,
eow.attr1,
eow.attr2,
eow.attr3,
@ -79,7 +81,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="workType != null and workType != ''"> and work_type = #{workType}</if>
<if test="equipmentCode != null and equipmentCode != ''"> and equipment_code like concat('%', #{equipmentCode}, '%')</if>
<if test="workCost != null and workCost != ''"> and work_cost like concat('%', #{workCost}, '%')</if>
<if test="workCostTime != null and workCostTime != ''"> and work_cost_time = #{workCostTime}</if>
<if test="workCostTime != null and workCostTime != ''"> and work_cost_time like concat('%', #{workCostTime}, '%')</if>
<if test="attr1 != null and attr1 != ''"> and attr1 = #{attr1}</if>
<if test="attr2 != null and attr2 != ''"> and attr2 = #{attr2}</if>
<if test="attr3 != null and attr3 != ''"> and attr3 = #{attr3}</if>
@ -111,6 +113,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="equipmentCode != null">equipment_code,</if>
<if test="workCost != null">work_cost,</if>
<if test="workCostTime != null">work_cost_time,</if>
<if test="workStatus != null">work_status,</if>
<if test="attr1 != null">attr1,</if>
<if test="attr2 != null">attr2,</if>
<if test="attr3 != null">attr3,</if>
@ -134,6 +137,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="equipmentCode != null">#{equipmentCode},</if>
<if test="workCost != null">#{workCost},</if>
<if test="workCostTime != null">#{workCostTime},</if>
<if test="workStatus != null">#{workStatus},</if>
<if test="attr1 != null">#{attr1},</if>
<if test="attr2 != null">#{attr2},</if>
<if test="attr3 != null">#{attr3},</if>
@ -160,6 +164,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="equipmentCode != null">equipment_code = #{equipmentCode},</if>
<if test="workCost != null">work_cost = #{workCost},</if>
<if test="workCostTime != null">work_cost_time = #{workCostTime},</if>
<if test="workStatus != null">work_status = #{workStatus},</if>
<if test="attr1 != null">attr1 = #{attr1},</if>
<if test="attr2 != null">attr2 = #{attr2},</if>
<if test="attr3 != null">attr3 = #{attr3},</if>
@ -180,6 +185,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where work_id = #{workId}
</delete>
<delete id="deleteEquOutsourceWorkByRepairCode" parameterType="String">
delete from equ_outsource_work
where repair_code = #{workCode}
</delete>
<delete id="deleteEquOutsourceWorkByWorkIds" parameterType="String">
update equ_outsource_work
set del_flag = '1'

@ -25,7 +25,10 @@
</resultMap>
<sql id="selectEquPlanEquSpareVo">
select id, code, plan_code, parent_code, material_code, material_desc, spare_type, apply_num, factory_code, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time from equ_plan_equ_spare
select id, code, plan_code, parent_code, material_code, material_desc, spare_type,
apply_num, factory_code, attr1, attr2, attr3, del_flag, create_by, create_time,
update_by, update_time
from equ_plan_equ_spare
</sql>
<select id="selectEquPlanEquSpareList" parameterType="EquPlanEquSpare" resultMap="EquPlanEquSpareResult">
@ -134,4 +137,4 @@
update equ_plan_equ_spare set del_flag = '1' where plan_code = #{planCode} and del_flag = '0'
</delete>
</mapper>
</mapper>

@ -34,10 +34,14 @@
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="workPerson" column="work_person" />
<result property="workOutsourcingUnit" column="work_outsourcing_unit" />
<result property="workConnection" column="work_connection" />
<result property="workReason" column="work_reason" />
</resultMap>
<sql id="selectEquPlanVo">
select plan_id, plan_code, plan_name, plan_workshop, plan_prod_line, equipment_name, equipment_code, plan_loop, plan_loop_type, plan_loop_start, plan_loop_end, plan_person, plan_status, plan_restrict, plan_type, plan_outsource, work_code, upkeep, calculation_rule, shut_down, factory_code, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time from equ_plan
select plan_id, plan_code, plan_name, plan_workshop, plan_prod_line, equipment_name, equipment_code, plan_loop, plan_loop_type, plan_loop_start, plan_loop_end, plan_person, plan_status, plan_restrict, plan_type, plan_outsource, work_code, upkeep, calculation_rule, shut_down, factory_code, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time , work_person, work_outsourcing_unit, work_connection,work_reason from equ_plan
</sql>
<select id="selectEquPlanList" parameterType="EquPlan" resultMap="EquPlanResult">
@ -60,6 +64,10 @@
<if test="planOutsource != null and planOutsource != ''"> and plan_outsource = #{planOutsource}</if>
<if test="workCode != null and workCode != ''"> and work_code like concat('%', #{workCode}, '%')</if>
<if test="factoryCode != null and factoryCode != ''"> and factory_code = #{factoryCode}</if>
<if test="workPerson != null and workPerson != ''"> and work_person = #{workPerson}</if>
<if test="workOutsourcingUnit != null and workOutsourcingUnit != ''"> and work_outsourcing_unit = #{workOutsourcingUnit}</if>
<if test="workConnection != null and workConnection != ''"> and work_connection = #{workConnection}</if>
<if test="workReason != null and workReason != ''"> and work_reason = #{workReason}</if>
<if test="attr1 != null and attr1 != ''"> and attr1 = #{attr1}</if>
<if test="attr2 != null and attr2 != ''"> and attr2 = #{attr2}</if>
<if test="attr3 != null and attr3 != ''"> and attr3 = #{attr3}</if>
@ -73,6 +81,10 @@
<if test="upkeep != null and upkeep != ''"> and upkeep = #{upkeep}</if>
<if test="calculationRule != null and calculationRule != ''"> and calculation_rule = #{calculationRule}</if>
<if test="shutDown != null and shutDown != ''"> and shut_down = #{shutDown}</if>
<if test="loopStart != null "> and CONVERT(date,plan_loop_start) >= #{loopStart}</if>
<if test="loopEnd != null "> and #{loopEnd} >= CONVERT(date,plan_loop_start)</if>
<if test="loopEndArrayStart != null "> and CONVERT(date,plan_loop_end) >= #{loopEndArrayStart}</if>
<if test="getLoopEndArrayEnd != null "> and #{getLoopEndArrayEnd} >= CONVERT(date,plan_loop_end)</if>
and del_flag = '0'
</where>
</select>
@ -85,7 +97,7 @@
<select id="selectSerialNumber" resultType="java.lang.Integer">
SELECT COUNT(plan_id)+1 AS serialNum
FROM equ_plan
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) and del_flag = '0'
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time)
</select>
<select id="selectWorkCenter" resultType="com.op.device.domain.WorkCenter">
@ -131,6 +143,10 @@
<if test="createTime != null">create_time,</if>
<if test="updateBy != null and updateBy != ''">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="workPerson != null">work_person,</if>
<if test="workOutsourcingUnit != null">work_outsourcing_unit,</if>
<if test="workConnection != null">work_connection,</if>
<if test="workReason != null">work_reason,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="planId != null">#{planId},</if>
@ -162,6 +178,10 @@
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null and updateBy != ''">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="workPerson != null">#{workPerson},</if>
<if test="workOutsourcingUnit != null">#{workOutsourcingUnit},</if>
<if test="workConnection != null">#{workConnection},</if>
<if test="workReason != null">#{workReason},</if>
</trim>
</insert>
@ -196,6 +216,10 @@
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="workPerson != null">work_person = #{workPerson},</if>
<if test="workOutsourcingUnit != null">work_outsourcing_unit = #{workOutsourcingUnit},</if>
<if test="workConnection != null">work_connection = #{workConnection},</if>
<if test="workReason != null">work_reason = #{workReason},</if>
</trim>
where plan_id = #{planId}
</update>

@ -13,7 +13,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="orderSource" column="order_source" />
<result property="orderTime" column="order_time" />
<result property="orderHandle" column="order_handle" />
<result property="orderRepairman" column="order_repairman" />
<!--报修人编号、名字-->
<result property="orderRepairmanCode" column="order_repairman_code" />
<result property="orderRepairmanName" column="order_repairman_name" />
<result property="orderConnection" column="order_connection" />
<result property="orderStatus" column="order_status" />
<result property="orderRelevance" column="order_relevance" />
@ -44,10 +46,36 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="workOutsourcingUnit" column="work_outsourcing_unit" />
<result property="workConnection" column="work_connection" />
<result property="outSourceReason" column="work_reason" />
<!-- 检查项信息 -->
</resultMap>
<resultMap type="com.op.common.core.domain.BaseFileData" id="BaseFileResult">
<result property="fileId" column="file_id" />
<result property="fileName" column="file_name" />
<result property="fileAddress" column="file_address" />
<result property="sourceId" column="source_id" />
<result property="remark" column="remark" />
<result property="attr1" column="attr1" />
<result property="attr2" column="attr2" />
<result property="attr3" column="attr3" />
<result property="attr4" column="attr4" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="imageType" column="image_type" />
</resultMap>
<sql id="selectBaseFileVo">
select file_id, file_name, file_address, source_id, remark, attr1,
attr2, attr3, attr4, create_by, create_time, update_by,
update_time,image_type from base_file
</sql>
<sql id="selectEquRepairOrderVo">
select order_id, order_code, equipment_code, order_desc, order_breakdown_time, order_source, order_time, order_handle, order_repairman, 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 from equ_repair_order
</sql>
<select id="selectEquRepairOrderList" parameterType="EquRepairOrder" resultMap="EquRepairOrderResult">
@ -56,11 +84,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="orderCode != null and orderCode != ''"> and order_code like concat('%', #{orderCode}, '%')</if>
<if test="equipmentCode != null and equipmentCode != ''"> and equipment_code like concat('%', #{equipmentCode}, '%')</if>
<if test="orderDesc != null and orderDesc != ''"> and order_desc like concat('%', #{orderDesc}, '%')</if>
<if test="orderBreakdownTime != null "> and order_breakdown_time = #{orderBreakdownTime}</if>
<!--故障开始时间 结束时间-->
<if test="orderBreakdownTimeStart != null "> and CONVERT(date,order_breakdown_time) >= #{orderBreakdownTimeStart}</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="orderTime != null "> and order_time = #{orderTime}</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="orderHandle != null and orderHandle != ''"> and order_handle = #{orderHandle}</if>
<if test="orderRepairman != null and orderRepairman != ''"> and order_repairman like concat('%', #{orderRepairman}, '%')</if>
<if test="orderRepairmanCode != null and orderRepairmanCode != ''"> and order_repairman_code like concat('%', #{orderRepairmanCode}, '%')</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>
@ -87,7 +120,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
ero.order_source,
ero.order_time,
ero.order_handle,
ero.order_repairman,
ero.order_repairman_code,
ero.order_repairman_name,
ero.order_connection,
ero.order_status,
ero.order_relevance,
@ -114,7 +148,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
from equ_repair_order ero
left join base_equipment be on ero.equipment_code = be.equipment_code
left join equ_repair_work_order rwo on ero.order_code = rwo.order_code
left join equ_outsource_work eow on ero.order_code = eow.work_code
left join equ_outsource_work eow on ero.order_code = eow.order_code
where ero.order_id = #{orderId}
and ero.del_flag = '0'
ORDER BY create_time DESC
@ -131,7 +165,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="orderSource != null">order_source,</if>
<if test="orderTime != null">order_time,</if>
<if test="orderHandle != null">order_handle,</if>
<if test="orderRepairman != null">order_repairman,</if>
<if test="orderRepairmanCode != null">order_repairman_code,</if>
<if test="orderRepairmanName != null">order_repairman_name,</if>
<if test="orderConnection != null">order_connection,</if>
<if test="orderStatus != null">order_status,</if>
<if test="orderRelevance != null">order_relevance,</if>
@ -156,7 +191,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="orderSource != null">#{orderSource},</if>
<if test="orderTime != null">#{orderTime},</if>
<if test="orderHandle != null">#{orderHandle},</if>
<if test="orderRepairman != null">#{orderRepairman},</if>
<if test="orderRepairmanCode != null">#{orderRepairmanCode},</if>
<if test="orderRepairmanName != null">#{orderRepairmanName},</if>
<if test="orderConnection != null">#{orderConnection},</if>
<if test="orderStatus != null">#{orderStatus},</if>
<if test="orderRelevance != null">#{orderRelevance},</if>
@ -184,7 +220,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="orderSource != null">order_source = #{orderSource},</if>
<if test="orderTime != null">order_time = #{orderTime},</if>
<if test="orderHandle != null">order_handle = #{orderHandle},</if>
<if test="orderRepairman != null">order_repairman = #{orderRepairman},</if>
<if test="orderRepairmanCode != null">order_repairman_code = #{orderRepairmanCode},</if>
<if test="orderRepairmanName != null">order_repairman_name = #{orderRepairmanName},</if>
<if test="orderConnection != null">order_connection = #{orderConnection},</if>
<if test="orderStatus != null">order_status = #{orderStatus},</if>
<if test="orderRelevance != null">order_relevance = #{orderRelevance},</if>
@ -236,9 +273,26 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
user_id AS userId,
user_name AS userName,
nick_name AS nickName,
CONCAT(nick_name,user_name) AS teamUserName
CONCAT(nick_name,user_name) AS teamUserName,
phonenumber AS phonenumber
from sys_user
where del_flag = '0'
<where>
<if test="userName != null and userName != ''"> and user_name like concat('%', #{userName}, '%')</if>
<if test="nickName != null and nickName != ''"> and nick_name like concat('%', #{nickName}, '%')</if>
and del_flag = '0'
</where>
</select>
<select id="getRepairPhoneNumber" parameterType="EquTeamUser" resultType="com.op.device.domain.EquTeamUser">
select
user_id AS userId,
user_name AS userName,
nick_name AS nickName,
CONCAT(nick_name,user_name) AS teamUserName,
phonenumber AS phoneNumber
from sys_user
where user_name = #{userName}
and del_flag = '0'
</select>
<select id="selectEquRepairOrderByRepairCode" parameterType="String" resultMap="EquRepairOrderResult">
@ -246,4 +300,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where order_code = #{repairCode} and del_flag = '0'
</select>
<insert id="insertBaseFileBatch">
INSERT INTO base_file(file_id, file_name, file_address, source_id, remark, create_by, create_time,image_type)
VALUES
<foreach collection="baseFiles" index="" item="baseFile" separator=",">
(
#{baseFile.fileId},
#{baseFile.fileName},
#{baseFile.fileAddress},
#{baseFile.sourceId},
#{baseFile.remark},
#{baseFile.createBy},
#{baseFile.createTime},
#{baseFile.imageType}
)
</foreach>
</insert>
<delete id="deleteBaseFileBySourceId">
delete from base_file where source_id = #{sourceId}
</delete>
<select id="getBaseFileBatch" resultMap="BaseFileResult">
<include refid="selectBaseFileVo"/>
where source_id = #{sourceId}
</select>
</mapper>

@ -23,6 +23,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="workFaultDesc" column="work_fault_desc" />
<result property="workStartTime" column="work_start_time" />
<result property="workEndTime" column="work_end_time" />
<result property="actualDownStartTime" column="actual_down_start_time" />
<result property="actualDownEndTime" column="actual_down_end_time" />
<result property="workConnection" column="work_connection" />
<result property="workCostTime" column="work_cost_time" />
<result property="workCost" column="work_cost" />
<result property="workStatus" column="work_status" />
@ -43,18 +46,43 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="equipmentTypeName" column="equipment_type_name" />
<result property="equipmentLocation" column="equipment_location" />
<result property="department" column="department" />
<result property="workshopCode" column="workshop_code" />
<result property="workshopName" column="workshop_name" />
<!--报修信息-->
<result property="orderDesc" column="order_desc" />
<result property="orderBreakdownTime" column="order_breakdown_time" />
<result property="orderSource" column="order_source" />
<result property="orderTime" column="order_time" />
<result property="orderRepairman" column="order_repairman" />
<result property="orderRepairmanCode" column="order_repairman_code" />
<result property="orderConnection" column="order_connection" />
<!--班组-->
<result property="teamName" column="team_name" />
<result property="teamPerson" column="team_person" />
</resultMap>
<resultMap type="com.op.common.core.domain.BaseFileData" id="BaseFileResult">
<result property="fileId" column="file_id" />
<result property="fileName" column="file_name" />
<result property="fileAddress" column="file_address" />
<result property="sourceId" column="source_id" />
<result property="remark" column="remark" />
<result property="attr1" column="attr1" />
<result property="attr2" column="attr2" />
<result property="attr3" column="attr3" />
<result property="attr4" column="attr4" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="imageType" column="image_type" />
</resultMap>
<sql id="selectBaseFileVo">
select file_id, file_name, file_address, source_id, remark, attr1,
attr2, attr3, attr4, create_by, create_time, update_by,
update_time,image_type from base_file
</sql>
<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 from equ_repair_work_order
</sql>
@ -78,6 +106,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
erwo.work_fault_desc,
erwo.work_start_time,
erwo.work_end_time,
erwo.actual_down_start_time,
erwo.actual_down_end_time,
erwo.work_connection,
erwo.work_cost_time,
erwo.work_cost,
erwo.work_status,
@ -132,6 +163,55 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</where>
ORDER BY erwo.create_time DESC
</select>
<!-- 除了待维修-->
<select id="selectRepairWorkOrderList" parameterType="EquRepairWorkOrder" resultMap="EquRepairWorkOrderResult">
select
erwo.work_id,
erwo.order_id,
erwo.order_code,
erwo.work_code,
erwo.work_handle,
erwo.work_plan_time,
erwo.work_plan_down_time,
erwo.order_relevance,
erwo.work_person,
erwo.work_team,
erwo.work_outsource,
erwo.work_down_machine,
erwo.equipment_code,
erwo.work_reason,
erwo.work_fault_desc,
erwo.work_start_time,
erwo.work_end_time,
erwo.actual_down_start_time,
erwo.actual_down_end_time,
erwo.work_connection,
erwo.work_cost_time,
erwo.work_cost,
erwo.work_status,
erwo.out_work_id,
erwo.out_work_code,
erwo.attr1,
erwo.attr2,
erwo.attr3,
erwo.create_by,
erwo.create_time,
erwo.update_time,
erwo.update_by,
erwo.del_flag,
erwo.factory_code,
be.equipment_name,
et.team_name,
et.team_person
from equ_repair_work_order erwo
left join base_equipment be on erwo.equipment_code = be.equipment_code
left join equ_team et on erwo.work_team = et.team_code
where NOT (erwo.work_status = #{workStatus})
and erwo.work_outsource = #{workOutsource}
and erwo.del_flag = '0'
ORDER BY erwo.create_time DESC
</select>
<select id="selectEquRepairWorkOrderByWorkId" parameterType="String" resultMap="EquRepairWorkOrderResult">
select
@ -152,6 +232,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
erwo.work_fault_desc,
erwo.work_start_time,
erwo.work_end_time,
erwo.actual_down_start_time,
erwo.actual_down_end_time,
erwo.work_connection,
erwo.work_cost_time,
erwo.work_cost,
erwo.work_status,
@ -169,16 +252,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
be.equipment_spec,
be.equipment_type_name,
be.equipment_location,
be.workshop_code,
be.workshop_name,
be.department,
ero.order_desc,
ero.order_breakdown_time,
ero.order_source,
ero.order_time,
ero.order_repairman,
ero.order_repairman_code,
ero.order_connection,
eow.work_person AS outSourcePerson,
eow.work_outsourcing_unit AS workOutsourcingUnit,
eow.work_connection AS workConnection,
eow.work_connection AS outSourceConnection,
eow.work_reason AS outSourceReason
from equ_repair_work_order erwo
left join base_equipment be on erwo.equipment_code = be.equipment_code
@ -209,6 +294,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="workFaultDesc != null">work_fault_desc,</if>
<if test="workStartTime != null">work_start_time,</if>
<if test="workEndTime != null">work_end_time,</if>
<if test="actualDownStartTime != null">actual_down_start_time,</if>
<if test="actualDownEndTime != null">actual_down_end_time,</if>
<if test="workConnection != null">work_connection,</if>
<if test="workCostTime != null">work_cost_time,</if>
<if test="workCost != null">work_cost,</if>
<if test="workStatus != null">work_status,</if>
@ -242,6 +330,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="workFaultDesc != null">#{workFaultDesc},</if>
<if test="workStartTime != null">#{workStartTime},</if>
<if test="workEndTime != null">#{workEndTime},</if>
<if test="actualDownStartTime != null">#{actualDownStartTime},</if>
<if test="actualDownEndTime != null">#{actualDownEndTime},</if>
<if test="workConnection != null">#{workConnection},</if>
<if test="workCostTime != null">#{workCostTime},</if>
<if test="workCost != null">#{workCost},</if>
<if test="workStatus != null">#{workStatus},</if>
@ -278,6 +369,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="workFaultDesc != null">work_fault_desc = #{workFaultDesc},</if>
<if test="workStartTime != null">work_start_time = #{workStartTime},</if>
<if test="workEndTime != null">work_end_time = #{workEndTime},</if>
<if test="actualDownStartTime != null">actual_down_start_time = #{actualDownStartTime},</if>
<if test="actualDownEndTime != null">actual_down_end_time = #{actualDownEndTime},</if>
<if test="workConnection != null">work_connection = #{workConnection},</if>
<if test="workCostTime != null">work_cost_time = #{workCostTime},</if>
<if test="workCost != null">work_cost = #{workCost},</if>
<if test="workStatus != null">work_status = #{workStatus},</if>
@ -344,4 +438,43 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and sp.post_id = '12'
</select>
<delete id="deleteBaseFileBySourceId">
delete from base_file where source_id = #{sourceId}
</delete>
<select id="getBaseFileBatch" resultMap="BaseFileResult">
<include refid="selectBaseFileVo"/>
where source_id = #{sourceId}
</select>
<select id="selectEquRepairWorkOrderByWorkCode" parameterType="EquRepairWorkOrder" resultMap="EquRepairWorkOrderResult">
<include refid="selectEquRepairWorkOrderVo"/>
where work_code = #{workCode} and del_flag = '0'
</select>
<insert id="insertBaseFileBatch">
INSERT INTO base_file(file_id, file_name, file_address, source_id, remark, create_by, create_time,image_type)
VALUES
<foreach collection="baseFiles" index="" item="baseFile" separator=",">
(
#{baseFile.fileId},
#{baseFile.fileName},
#{baseFile.fileAddress},
#{baseFile.sourceId},
#{baseFile.remark},
#{baseFile.createBy},
#{baseFile.createTime},
#{baseFile.imageType}
)
</foreach>
</insert>
<update id="updateWorkStatus" parameterType="EquRepairWorkOrder">
update equ_repair_work_order
set
work_status = '1'
where work_code = #{repairCode}
and del_flag = '0'
</update>
</mapper>

@ -167,6 +167,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</foreach>
</delete>
<delete id="delEquSpareApplyByorderIds" parameterType="String">
update equ_spare_apply set del_flag = '1' where del_flag = '0' and work_code in ( select order_code from
equ_order where del_flag = '0' and order_id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
)
</delete>
<delete id="delEquSpareApplyByIds" parameterType="String">
update equ_spare_apply set del_flag = '1'
where apply_id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
<delete id="delEquSpareApplyByApplyId" parameterType="String">
update equ_spare_apply set del_flag = '1' where apply_id = #{id}
</delete>
<select id="selectRepairSparePartsRecord" parameterType="EquRepairWorkOrder" resultMap="EquSpareApplyResult">
<include refid="selectEquSpareApplyVo"/>
<where>
@ -176,4 +197,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
ORDER BY apply_time DESC
</select>
<select id="selectSerialNumber" resultType="java.lang.Integer">
SELECT COUNT(apply_id)+1 AS serialNum
FROM equ_spare_apply
WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time)
</select>
<select id="selectEquSpareApplyListByWorkCode" parameterType="String" resultMap="EquSpareApplyResult">
<include refid="selectEquSpareApplyVo"/>
where work_code = #{orderCode} and del_flag = '0'
</select>
</mapper>

@ -129,4 +129,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where del_flag = '0'
</select>
<select id="selectTeamMember" parameterType="EquTeamUser" resultType="com.op.device.domain.EquTeamUser">
select
user_id AS userId,
user_name AS userName,
nick_name AS nickName,
CONCAT(nick_name,user_name) AS teamUserName
from sys_user
where del_flag = '0'
and user_id = #{userId}
</select>
</mapper>

@ -21,13 +21,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</sql>
<select id="selectEquTeamUserList" parameterType="EquTeamUser" resultMap="EquTeamUserResult">
<include refid="selectEquTeamUserVo"/>
<where>
<if test="teamId != null and teamId != ''"> and team_id = #{teamId}</if>
<if test="teamCode != null and teamCode != ''"> and team_code = #{teamCode}</if>
<if test="userId != null and userId != ''"> and user_id = #{userId}</if>
<if test="userName != null and userName != ''"> and user_name like concat('%', #{userName}, '%')</if>
</where>
select id, team_id, team_code, user_id, user_name, create_by, create_time, update_by, update_time from equ_team_user
where team_id = #{teamId}
</select>
<select id="selectEquTeamUserById" parameterType="String" resultMap="EquTeamUserResult">
@ -76,10 +71,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where id = #{id}
</update>
<delete id="deleteEquTeamUserById" parameterType="String">
delete from equ_team_user where id = #{id}
</delete>
<delete id="deleteEquTeamUserByTeamId" parameterType="String">
delete from equ_team_user where team_id = #{teamId}
</delete>

@ -280,6 +280,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where storage_id = #{storageId}
</update>
<update id="updateSpareNumReduce">
update wms_ods_mate_storage_news
set amount = ( amount - #{spareQuantity} ) where material_code = #{spareCode}
</update>
<update id="updateSpareNumAdd">
update wms_ods_mate_storage_news
set amount = ( amount + #{spareQuantity} ) where material_code = #{spareCode}
</update>
<delete id="deleteSparePartsLedgerByStorageId" parameterType="String">
delete from wms_ods_mate_storage_news where storage_id = #{storageId}
</delete>

@ -53,7 +53,7 @@ public class RyTask {
remoteSapService.shopOrderSync(sapProOrder);
}
/**22
/**22
* 16
* 0 00 22 * * ?
*/
@ -122,9 +122,20 @@ public class RyTask {
remoteMesService.dataBKTask();
}
/**每日点检计划生成**/
/**点检计划生成**/
public void createSpotCheckPlanTask(){
logger.info("++点检计划+开始++createSpotCheckPlanTask+++++");
remoteDeviceService.createSpotCheckPlanTask();
}
/**巡检计划生成**/
public void createPatrolCheckPlanTask(){
logger.info("++巡检计划+开始++createPatrolCheckPlanTask+++++");
remoteDeviceService.createPatrolCheckPlanTask();
}
/**保养计划生成**/
public void createMaintenancePlanTask(){
logger.info("++保养计划+开始++createMaintenancePlanTask+++++");
remoteDeviceService.createMaintenancePlanTask();
}
}

@ -364,6 +364,10 @@ public class MesReportWorkController extends BaseController {
return getDataTable(list);
}
@PutMapping("/getBatchList")
public List<ProOrderWorkorder> getBatchList(@RequestBody ProOrderWorkorder ProOrderWorkorder) {
return mesReportWorkService.getBatchList(ProOrderWorkorder);
}
public static void main(String args[]){
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:00:00");

@ -163,6 +163,24 @@ public class MesReportWork extends BaseEntity {
private String createTimeEnd;
private String feedbackTimeStart;
private String feedbackTimeEnd;
private String batch;
private String endReport;
public String getEndReport() {
return endReport;
}
public void setEndReport(String endReport) {
this.endReport = endReport;
}
public String getBatch() {
return batch;
}
public void setBatch(String batch) {
this.batch = batch;
}
public Long getUseMan() {
return useMan;

@ -154,6 +154,24 @@ public class ProOrderWorkorder extends TreeEntity {
// 料罐名称(湿料计划模块使用)
private String bucketName;
private String batchCode;
private String batchId;
public String getBatchCode() {
return batchCode;
}
public void setBatchCode(String batchCode) {
this.batchCode = batchCode;
}
public String getBatchId() {
return batchId;
}
public void setBatchId(String batchId) {
this.batchId = batchId;
}
public String getBucketName() {
return bucketName;

@ -106,4 +106,6 @@ public interface MesReportWorkMapper {
Map<String, EquEquipmentDTO> getEquipInfoByCodes(String substring);
List<EquEquipmentDTO> getMesListEquip(EquEquipmentDTO qo);
List<ProOrderWorkorder> getBatchList(ProOrderWorkorder proOrderWorkorder);
}

@ -60,6 +60,7 @@ public interface IMesPrepareService {
*/
public int deleteMesPrepareByPrepareId(String prepareId);
/**废弃**/
public R getMesPrepare();
public R reportWorkTask();

@ -88,4 +88,6 @@ public interface IMesReportWorkService {
List<EquEquipmentDTO> getMesListEquip(EquEquipmentDTO equEquipmentDTO);
R reportSap(MesReportWork mesReportWork);
List<ProOrderWorkorder> getBatchList(ProOrderWorkorder proOrderWorkorder);
}

@ -330,7 +330,10 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService {
//工单完成数量>工单数量:关闭订单
MesReportWork proResult = mesReportWorkMapper.getProdResult(work);
//ProOrderWorkorder topOrder = this.getTopOrder(work.getWorkorderCode());
if(proResult.getQuantityFeedback().compareTo(work.getQuantitySplit())>=0){
if(proResult.getQuantityFeedback().compareTo(work.getQuantitySplit())>=0
||
"1".equals(work.getEndReport())//最终报工标识
){
//工单完成,关闭工单
remoteSapService.sapCloseOrder(work.getWorkorderCodeSap());
work.setStatus("w3");

@ -140,9 +140,11 @@ public class MesPrepareServiceImpl implements IMesPrepareService {
new LinkedBlockingQueue<Runnable>());
try {
dateSources.forEach(dateSource -> {
logger.info("++++++++++++" + dateSource.get("poolName") + "++++开始++++++++++");
Runnable run = () -> getMesPrepareByFactory(dateSource.get("poolName"));
executorService.execute(run);
if(!"ds_999".equals(dateSource.get("poolName"))){
logger.info("++++++++++++" + dateSource.get("poolName") + "++++开始++++++++++");
Runnable run = () -> getMesPrepareByFactory(dateSource.get("poolName"));
executorService.execute(run);
}
});
} catch (Exception e) {
logger.error("service == deviceOfflineTimingTask == exception", e);
@ -156,67 +158,63 @@ public class MesPrepareServiceImpl implements IMesPrepareService {
}
public void getMesPrepareByFactory(String poolName) {
DynamicDataSourceContextHolder.push(poolName);// 这是数据源的key
// List<SapMaterialPreparation> list = sapMaterialPreparationList.stream()
// .filter(a->a.getWERKS().equals(poolName))
// .collect(Collectors.toList());
//获取T+1天的所有母工单
MesPrepare qo = new MesPrepare();
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE, 1);//这里改为1
Date time = cal.getTime();
qo.setDayStr(new SimpleDateFormat("yyyy-MM-dd").format(time));
List<MesPrepare> parents = mesPrepareMapper.getParentWorkOrderT1(qo);
if (CollectionUtils.isEmpty(parents)) {
System.out.println("T+1无母工单数据");
}
for (MesPrepare mesPrepare : parents) {
List<SapMaterialPreparation> sapMaterialPreparationList = remoteSapService.materialPreparation(mesPrepare.getWorkorderCodeSap()).getData();
if (CollectionUtils.isEmpty(sapMaterialPreparationList)) {
System.out.println("sap无领料单数据");
}
//取出各领料单
Set<String> orderCodes = sapMaterialPreparationList.stream().map(SapMaterialPreparation::getAUFNR).collect(Collectors.toSet());
for (String orderCode : orderCodes) {
/**mes_prepare**/
String mesPrepareId = IdUtils.fastSimpleUUID();
MesPrepare mesPrepare0 = new MesPrepare();
mesPrepare0.setPrepareId(mesPrepareId);
mesPrepare0.setWorkorderCode(orderCode);//工单(子)
mesPrepare0.setCreateTime(DateUtils.getNowDate());
mesPrepare0.setCreateBy(SecurityUtils.getUsername());
mesPrepare0.setStatus("L0");//默认待确认
mesPrepareMapper.insertMesPrepare(mesPrepare0);
/**mes_prepare_detail**/
List<MesPrepareDetail> details = new ArrayList<>();
// List<SapMaterialPreparation> listdetails = list.stream()
// .filter(a->a.getAUFNR().equals(orderCode))
// .collect(Collectors.toList());
MesPrepareDetail detail = null;
Date createDate = DateUtils.getNowDate();
for (SapMaterialPreparation sap : sapMaterialPreparationList) {
detail = new MesPrepareDetail();
detail.setPrepareId(mesPrepareId);
detail.setRecordId(IdUtils.fastSimpleUUID());
detail.setAttr1(sap.getRSPOS());//预留/相关需求的项目编号
detail.setMaterialCode(sap.getMATNR());//物料号
detail.setMaterailName(sap.getMAKTX());//物料描述(短文本)
detail.setFactoryCode(sap.getWERKS());//工厂
detail.setLocator(sap.getLGORT());//库存地点
detail.setNeedDate(sap.getBDTER());//组件的需求日期
detail.setQuantity(sap.getBDMNG());////需求量
detail.setFundQuanlity(sap.getZQLSL());//欠料数量
detail.setUnit(sap.getMEINS());//基本计量单位
detail.setRecoil(sap.getRGEKZ());//反冲标识
detail.setBuyFlag(sap.getDBSKZ());//直接采购标识
detail.setCreateBy(SecurityUtils.getUsername());
detail.setCreateTime(createDate);
details.add(detail);
}
mesPrepareDetailMapper.insertMesPrepareDetails(details);
}
}
// DynamicDataSourceContextHolder.push(poolName);// 这是数据源的key
// //获取T+1天的所有母工单
// MesPrepare qo = new MesPrepare();
// Calendar cal = Calendar.getInstance();
// cal.add(Calendar.DATE, 1);//这里改为1
// Date time = cal.getTime();
// qo.setDayStr(new SimpleDateFormat("yyyy-MM-dd").format(time));
// List<MesPrepare> parents = mesPrepareMapper.getParentWorkOrderT1(qo);
// if (CollectionUtils.isEmpty(parents)) {
// System.out.println("T+1无母工单数据");
// }
// for (MesPrepare mesPrepare : parents) {
// List<SapMaterialPreparation> sapMaterialPreparationList = remoteSapService.materialPreparation(mesPrepare.getWorkorderCodeSap()).getData();
// if (CollectionUtils.isEmpty(sapMaterialPreparationList)) {
// System.out.println("sap无领料单数据");
// }
// //取出各领料单
// Set<String> orderCodes = sapMaterialPreparationList.stream().map(SapMaterialPreparation::getAUFNR).collect(Collectors.toSet());
// for (String orderCode : orderCodes) {
// /**mes_prepare**/
// String mesPrepareId = IdUtils.fastSimpleUUID();
// MesPrepare mesPrepare0 = new MesPrepare();
// mesPrepare0.setPrepareId(mesPrepareId);
// mesPrepare0.setWorkorderCode(orderCode);//工单(子)
// mesPrepare0.setCreateTime(DateUtils.getNowDate());
// mesPrepare0.setCreateBy(SecurityUtils.getUsername());
// mesPrepare0.setStatus("L0");//默认待确认
// mesPrepareMapper.insertMesPrepare(mesPrepare0);
// /**mes_prepare_detail**/
// List<MesPrepareDetail> details = new ArrayList<>();
//// List<SapMaterialPreparation> listdetails = list.stream()
//// .filter(a->a.getAUFNR().equals(orderCode))
//// .collect(Collectors.toList());
// MesPrepareDetail detail = null;
// Date createDate = DateUtils.getNowDate();
// for (SapMaterialPreparation sap : sapMaterialPreparationList) {
// detail = new MesPrepareDetail();
// detail.setPrepareId(mesPrepareId);
// detail.setRecordId(IdUtils.fastSimpleUUID());
// detail.setAttr1(sap.getRSPOS());//预留/相关需求的项目编号
// detail.setMaterialCode(sap.getMATNR());//物料号
// detail.setMaterailName(sap.getMAKTX());//物料描述(短文本)
// detail.setFactoryCode(sap.getWERKS());//工厂
// detail.setLocator(sap.getLGORT());//库存地点
// detail.setNeedDate(sap.getBDTER());//组件的需求日期
// detail.setQuantity(sap.getBDMNG());////需求量
// detail.setFundQuanlity(sap.getZQLSL());//欠料数量
// detail.setUnit(sap.getMEINS());//基本计量单位
// detail.setRecoil(sap.getRGEKZ());//反冲标识
// detail.setBuyFlag(sap.getDBSKZ());//直接采购标识
// detail.setCreateBy(SecurityUtils.getUsername());
// detail.setCreateTime(createDate);
// details.add(detail);
// }
// mesPrepareDetailMapper.insertMesPrepareDetails(details);
// }
// }
}

@ -122,6 +122,12 @@ public class MesReportWorkServiceImpl implements IMesReportWorkService {
return s;
}
@Override
@DS("#header.poolName")
public List<ProOrderWorkorder> getBatchList(ProOrderWorkorder proOrderWorkorder) {
return mesReportWorkMapper.getBatchList(proOrderWorkorder);
}
/**
*
*

@ -42,6 +42,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="uploadStatus" column="upload_status" />
<result property="uploadMsg" column="upload_msg" />
<result property="orderCode" column="order_code" />
<result property="batch" column="batch" />
</resultMap>
<resultMap type="com.op.system.api.domain.mes.ProOrderWorkorderDTO" id="ProOrderWorkorderDTOResult">
<result property="workorderId" column="workorder_id" />
@ -96,12 +97,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mrw.feedback_time, mrw.record_user, mrw.status, mrw.remark, mrw.work_time, mrw.machine_code,
mrw.machine_name, mrw.team_code, mrw.shift_code, mrw.create_by,
mrw.create_time,mrw.upload_time,mrw.upload_status,mrw.upload_msg,
mrw.use_man,
mrw.use_man,mrw.batch,
pow.order_code,pow.quantity_split
from mes_report_work mrw
left join pro_order_workorder pow on mrw.workorder_code = pow.workorder_code
<where>
and mrw.del_flag = '0'
and mrw.del_flag = '0' and pow.del_flag = '0'
<if test="reportCode != null and reportCode != ''"> and mrw.report_code like concat('%', #{reportCode}, '%')</if>
<if test="workorderCode != null and workorderCode != ''"> and mrw.workorder_code like concat('%', #{workorderCode}, '%')</if>
<if test="productCode != null and productCode != ''"> and mrw.product_code like concat('%', #{productCode}, '%')</if>
@ -228,7 +229,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mrw.id,
mrw.quantity_feedback quantityFeedback,
mrw.product_code productCode,
mrw.product_name productName
mrw.product_name productName,
mrw.end_report endReport
from mes_report_work mrw
left join pro_order_workorder ow on mrw.workorder_code = ow.workorder_code
left join pro_route rte on rte.route_code = ow.route_code
@ -433,6 +435,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
from base_equipment
where equipment_type_code = 'equ_type_bzx' and del_flag = '0'
</select>
<select id="getBatchList" resultType="com.op.mes.domain.ProOrderWorkorder">
select powb.batch_id batchId,
powb.batch_code batchCode
from pro_order_workorder_batch powb
left join pro_order_workorder pow on powb.workorder_id = pow.workorder_id
where powb.del_flag = '0' and pow.del_flag = '0'
and pow.workorder_code = #{workorderCode}
</select>
<insert id="insertMesReportWork" parameterType="MesReportWork">
insert into mes_report_work
@ -471,6 +481,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateTime != null">update_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="prodType != null and prodType != ''">prod_type,</if>
<if test="batch != null and batch != ''">batch,</if>
<if test="endReport != null and endReport != ''">end_report,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
@ -507,6 +519,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateTime != null">#{updateTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="prodType != null and prodType != ''">#{prodType},</if>
<if test="batch != null and batch != ''">#{batch},</if>
<if test="endReport != null and endReport != ''">#{endReport},</if>
</trim>
</insert>
@ -545,6 +559,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="batch != null and batch != ''">batch = #{batch},</if>
<if test="endReport != null and endReport != ''">end_report = #{endReport},</if>
</trim>
where id = #{id}
</update>

@ -73,7 +73,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
left join pro_process pp on pp.process_id = ppd.next_process_id
left join pro_process ppp on ppp.process_id = ppd.now_process_id
left join pro_order_workorder pow on pow.workorder_code = ppd.workorder_code
order by ppd.in_time desc
<where>
<if test="workorderCode != null and workorderCode != ''"> and ppd.workorder_code like concat('%', #{workorderCode}, '%')</if>
<if test="rfid != null and rfid != ''"> and rfid like concat('%', #{rfid}, '%')</if>
@ -92,6 +92,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="workBatchCode != null and workBatchCode != ''"> and work_batch_code = #{workBatchCode}</if>
<if test="bindStatus != null and bindStatus != ''"> and bind_status = #{bindStatus}</if>
</where>
order by ppd.in_time desc
</select>
<select id="selectProRfidProcessDetailByRecordId" parameterType="String" resultMap="ProRfidProcessDetailResult">
@ -109,7 +110,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
bp.product_code productCode,
bp.product_model productModel,
w.prod_line_code prodLineCode
from pro_rfid_process_detail rfid
from pro_rfid_process_detail rfid with (NOLOCK)
left join pro_process p on p.process_id = rfid.next_process_id
left join pro_order_workorder w on w.workorder_code = rfid.workorder_code
left join base_product bp on bp.product_code = w.product_code

@ -186,20 +186,23 @@ public class OpenServiceImpl implements OpenService {
sysSapLog.setCreateTime(DateUtils.getNowDate());
openMapper.addSapLog(sysSapLog);
//R r = remoteSapService.sapRFWOrder(sapRFW);
R r = remoteSapService.sapRFWOrder(sapRFW);
//上传成功更改mes_report_work状态
//if (r.getCode() == 200) {
if (r.getCode() == 200) {
work.setUploadStatus("1");
//} else {
// work.setUploadStatus("2");
// work.setUploadMsg(r.getMsg());
//}
} else {
work.setUploadStatus("2");
work.setUploadMsg(r.getMsg());
}
work.setUploadTime(DateUtils.getNowDate());
openMapper.updateSyncSapStatus(work);
//工单完成数量>工单数量:关闭订单
MesReportWorkDTO proResult = openMapper.getProdResult(work);
//ProOrderWorkorderDTO topOrder = this.getTopOrder(work.getWorkorderCode());
if(proResult.getQuantityFeedback().compareTo(work.getQuantitySplit())>=0){
if(proResult.getQuantityFeedback().compareTo(work.getQuantitySplit())>=0
||
"1".equals(work.getEndReport())//最终报工标识
){
//工单完成,关闭工单
remoteSapService.sapCloseOrder(work.getWorkorderCodeSap());
work.setStatus("w3");

@ -39,7 +39,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
bp.product_code productCode,
bp.product_model productModel,
w.prod_line_code prodLineCode
from pro_rfid_process_detail rfid
from pro_rfid_process_detail rfid with (NOLOCK)
left join pro_process p on p.process_id = rfid.next_process_id
left join pro_order_workorder w on w.workorder_code = rfid.workorder_code
left join base_product bp on bp.product_code = w.product_code
@ -84,7 +84,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mrw.id,
mrw.quantity_feedback quantityFeedback,
mrw.product_code productCode,
mrw.product_name productName
mrw.product_name productName,
mrw.end_report endReport
from mes_report_work mrw
left join pro_order_workorder ow on mrw.workorder_code = ow.workorder_code
left join pro_route rte on rte.route_code = ow.route_code

@ -77,6 +77,18 @@ public class ProOrderWorkorderController extends BaseController {
return proOrderWorkorderService.subChangeWorkOrder(splitOrderDTO);
}
/**
* -
*
* @param splitOrderDTO
* @return
*/
@PostMapping("/subChangeWorkOrderM")
@RequiresPermissions("mes:pro:workorder:edit")
public AjaxResult subChangeWorkOrderM(@RequestBody SplitOrderDTO splitOrderDTO) {
return proOrderWorkorderService.subChangeWorkOrderM(splitOrderDTO);
}
/**
* list
*

@ -208,10 +208,19 @@ public class ProOrderWorkorder extends TreeEntity {
/** 批次号 */
private List<StringBuilder> batchCodeList;
private List<StringBuilder> batchNumList;
private List<String> batchInfo;
/** $column.columnComment */
private String factoryCode;
public List<String> getBatchInfo() {
return batchInfo;
}
public void setBatchInfo(List<String> batchInfo) {
this.batchInfo = batchInfo;
}
public List<StringBuilder> getBatchNumList() {
return batchNumList;
}

@ -100,7 +100,7 @@ public interface ProOrderWorkorderMapper {
ProOrderWorkorder selectWorkOrderByCode(String workorderCode);
/**下发生产订单**/
public int downProOrderWorkorderByWorkorderIds(String[] workorderIds);
public int downWorkorders(String[] workorderIds);
public List<ProOrderWorkorder> getWorkOrderByIds(String[] workorderIds);
@ -152,5 +152,19 @@ public interface ProOrderWorkorderMapper {
int getProSortNo(ProOrder proOrder);
void deleteProOrderWorkorderByOrderIds(String[] orderIds);
List<String> getBatchInfo(String workorderCode);
ProOrderWorkorder getWorkOrderByCode(String workorderCode);
void updateProOrderWorkorderM(ProOrderWorkorder proWorkOrder);
void insertMesPrepare(MesPrepareDTO mesPrepare0);
int insertMesPrepareDetails(@Param("list") List<MesPrepareDetailDTO> details);
int updateWhiteWorkOrder(ProOrderWorkorder whiteOrder);
ProOrderWorkorder getPWorkOrder(ProOrderWorkorder whiteOrder);
}

@ -120,4 +120,6 @@ public interface IProOrderWorkorderService {
* @param whiteWorkOrder
*/
void deleteWhiteWorkorderByWorkOrder(List<ProOrderWorkorder> whiteWorkOrder);
AjaxResult subChangeWorkOrderM(SplitOrderDTO splitOrderDTO);
}

@ -2,6 +2,7 @@ package com.op.plan.service.impl;
import com.alibaba.fastjson2.JSONArray;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import com.op.common.core.context.SecurityContextHolder;
import com.op.common.core.domain.R;
import com.op.common.core.exception.ServiceException;
@ -21,7 +22,9 @@ import com.op.system.api.domain.SysSapLog;
import com.op.system.api.domain.dto.MesPrepareDTO;
import com.op.system.api.domain.dto.MesPrepareDetailDTO;
import com.op.system.api.domain.sap.SapCreateOrder;
import com.op.system.api.domain.sap.SapMaterialPreparation;
import net.bytebuddy.matcher.FilterableList;
import org.apache.commons.collections4.ListUtils;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -33,6 +36,7 @@ import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@ -110,6 +114,10 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService {
// workorder.setProdLineCode(proOrderMapper.selectProdLineName(workorder.getProdLineCode()));
// 通过工艺编码code查询出机型名称
workorder.setRouteName(proOrderWorkorderMapper.selectRouteNameByRouteCode(workorder.getRouteCode()));
//
// //批次信息(母)
// List<String> batchs = proOrderWorkorderMapper.getBatchInfo(workorder.getWorkorderId());
// workorder.setBatchInfo(batchs);
}
return workorderList;
}
@ -215,8 +223,6 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService {
@DS("#header.poolName")
@Transactional(rollbackFor = Exception.class)
public int downProOrderWorkorderByWorkorderIds(String[] workorderIds) {
List<String> ids = new ArrayList<>();
List<ProOrder> psorders = new ArrayList<>();//父级工单
List<SapCreateOrder> sapList = null;//回传给sap的工单
//如果是白坯生成备料单
for (String workorderId : workorderIds) {
@ -252,11 +258,30 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService {
details.add(detail);
proOrderWorkorderMapper.createPrepareDetails(details);
ids.add(workorderId);
}else{
//无湿料计划,下发不了
}
} else if (whiteOrder != null && !"white".equals(whiteOrder.getProdType())) {//成品的母工单回传sap
whiteOrder.setUpdateBy(SecurityUtils.getUsername());
whiteOrder.setUpdateTime(DateUtils.getNowDate());
return proOrderWorkorderMapper.updateWhiteWorkOrder(whiteOrder);
} else if (whiteOrder != null && !"white".equals(whiteOrder.getProdType())) {
List<String> pcodes = new ArrayList<>();//一起下发用
List<String> wcodes = new ArrayList<>();//领料单用
//成品的母工单//查上一级工单
Boolean isTop = true;
while(isTop) {
pcodes.add(whiteOrder.getWorkorderId());
wcodes.add(whiteOrder.getWorkorderCode());
//查上一级工单
whiteOrder.setWorkorderCode(whiteOrder.getParentOrder());
ProOrderWorkorder pWorkOrder = proOrderWorkorderMapper.getPWorkOrder(whiteOrder);
if(pWorkOrder == null || "0".equals(pWorkOrder.getParentOrder())){
isTop = false;
}else{
BeanUtils.copyProperties(pWorkOrder,whiteOrder);
}
}
sapList = new ArrayList<>();
SapCreateOrder sap = new SapCreateOrder();
sap.setWerks(whiteOrder.getFactoryCode());//工厂编码
@ -270,7 +295,7 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService {
//添加调用sap日志
SysSapLog sysSapLog = new SysSapLog();
sysSapLog.setId(IdUtils.fastSimpleUUID());
sysSapLog.setMesssge(sapList.toString());
sysSapLog.setMesssge(Arrays.asList(sapList).toString());
sysSapLog.setMethod("downProOrderWorkorderByWorkorderIds");
sysSapLog.setReqcode("请求");
sysSapLog.setCreateTime(DateUtils.getNowDate());
@ -283,65 +308,31 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService {
return 0;
}
List<String> returnCodes = r.getData();
Date updateTime = DateUtils.getNowDate();
if (!CollectionUtils.isEmpty(returnCodes)) {
for (String sapCode : returnCodes) {
logger.info("sap工单回传sap虚拟工单号" + StringUtils.join(returnCodes, ","));
for (int m=0;m<returnCodes.size();m++) {
ProOrderWorkorder oworkSap = new ProOrderWorkorder();
oworkSap.setWorkorderCodeSap(sapCode);
oworkSap.setWorkorderId(workorderId);//工单编码
oworkSap.setUpdateTime(DateUtils.getNowDate());
oworkSap.setWorkorderCodeSap(returnCodes.get(m));
oworkSap.setWorkorderId(pcodes.get(returnCodes.size()-(m+1)));//工单编码
oworkSap.setUpdateTime(updateTime);
/**pro_order_workorder**/
proOrderWorkorderMapper.updateWorkOrderCodeSap(oworkSap);
ProOrder order = this.getTopOrder(workorderId);
ProOrderWorkorder oworkSapParent = new ProOrderWorkorder();
oworkSapParent.setWorkorderCodeSap(sapCode);
oworkSapParent.setWorkorderId(order.getOrderCode());//母工单编码
oworkSapParent.setUpdateTime(DateUtils.getNowDate());
proOrderWorkorderMapper.updateWorkOrderCodeSap(oworkSapParent);
logger.info("sap工单回传sap虚拟工单号" + sapCode);
}
//子查父工单,都要工单状态改下发
ProOrder pOrder = new ProOrder();
pOrder.setParentOrder(workorderId);
List<ProOrder> pordes = getListBySonCode(pOrder);
if(!CollectionUtils.isEmpty(pordes)){
psorders.addAll(pordes);
}
ids.add(workorderId);
}
}
}
if(!CollectionUtils.isEmpty(ids)){
String[] idsArray = (String[])ids.toArray(new String[ids.size()]);
List<ProOrderWorkorder> workorders = proOrderWorkorderMapper.getWorkOrderByIds(idsArray);
for (ProOrderWorkorder workorder : workorders) {
//关联工艺
if (StringUtils.isNotBlank(workorder.getRouteCode())) {
List<ProWorkorderProcessDetail> workDetails = proWorkorderProcessDetailMapper.getWorkOrderDetailsByRouteCode(workorder);
if (!CollectionUtils.isEmpty(workDetails)) {
workDetails.forEach(str -> {
str.setRecordId(IdUtils.fastSimpleUUID());
str.setWorkorderId(workorder.getWorkorderId());
str.setStatus("s0");//未执行
str.setCreateBy(SecurityContextHolder.getUserName());
str.setCreateTime(DateUtils.getNowDate());
str.setFactoryCode(workorder.getFactoryCode());
});
proWorkorderProcessDetailMapper.addWorkOrderDetails(workDetails);
}
}
//获取领料单
Collections.reverse(wcodes);
this.getMesPrepare(returnCodes,wcodes);
//关闭订单//母订单的订单编码
R closeR= remoteSapService.sapCloseOrder(whiteOrder.getOrderCode());
logger.info("下发工单后关闭订单"+whiteOrder.getOrderCode()+":"+closeR.getMsg());
//下达工单
String[] idsArrayAll = (String[])pcodes.toArray(new String[pcodes.size()]);
return proOrderWorkorderMapper.downWorkorders(idsArrayAll);
}
//下达工单
if(!CollectionUtils.isEmpty(psorders)){
List<String> pcodes = psorders.stream().map(e -> e.getOrderCode()).collect(Collectors.toList());
ids.addAll(pcodes);
}
String[] idsArrayAll = (String[])ids.toArray(new String[ids.size()]);
//下达工单
return proOrderWorkorderMapper.downProOrderWorkorderByWorkorderIds(idsArrayAll);
}
return 0;
}
@ -357,45 +348,73 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService {
return codeList;
}
// //获取最低级材料
// private void getLastChildren(List<BaseBomComponentDTO> all, List<BaseBomComponentDTO> allChildren , BaseBomComponentDTO bc) {
// List<BaseBomComponentDTO> cList = all.stream().filter(item -> item.getCumc().equals(bc.getComponent()))
// .collect(Collectors.toList());
// if(CollectionUtils.isEmpty(cList)){
// allChildren.add(bc);
// }else{
// for(BaseBomComponentDTO bcc : cList){
// getLastChildren(all, allChildren ,bcc);
// }
// }
// }
// //获取顶级定单的bom组成
// private List<BaseBomComponentDTO> getBomDtos(String workorderId){
// List<BaseBomComponentDTO> bomdtoAdds = new ArrayList<>();//所有数据
//
// List<BaseBomComponentDTO> cumsDtos = new ArrayList<>();
// BaseBomComponentDTO cumsDto = new BaseBomComponentDTO();
// ProOrder order = this.getTopOrder(workorderId);
// cumsDto.setCumc(order.getProdCode());
// cumsDtos.add(cumsDto);
// List<BaseBomComponentDTO> bomdtos = proOrderWorkorderMapper.getBomComponents(order,cumsDtos);//最新版本的第一层子
// bomdtoAdds.addAll(bomdtos);
// Boolean isTrue = true;
// while(isTrue){
// List<BaseBomComponentDTO> bomdtoTop = new ArrayList<>();
// bomdtos.forEach(e->e.setCumc(e.getComponent()));
// bomdtoTop.addAll(bomdtos);
// List<BaseBomComponentDTO> bomdtoSon = proOrderWorkorderMapper.getBomComponents(order,bomdtoTop);
// if(CollectionUtils.isEmpty(bomdtoSon)){
// isTrue = false;
// }else{
// bomdtos = bomdtoSon;
// bomdtoAdds.addAll(bomdtoSon);
// }
// }
//
// return bomdtos;
// }
public void getMesPrepare(List<String> sapWorkOrders,List<String> workOrders) {
for(String sapWorkOrder:sapWorkOrders){
logger.info("获取sap领料单" + sapWorkOrder+"开始");
// //添加调用sap日志
// SysSapLog sysSapLog = new SysSapLog();
// sysSapLog.setId(IdUtils.fastSimpleUUID());
// sysSapLog.setMesssge(sapWorkOrder);
// sysSapLog.setMethod("getMesPrepare");
// sysSapLog.setReqcode("请求");
// sysSapLog.setCreateTime(DateUtils.getNowDate());
// proOrderMapper.addSapLog(sysSapLog);
List<SapMaterialPreparation> sapMaterialPreparationList = remoteSapService.materialPreparation(sapWorkOrder).getData();
if (CollectionUtils.isEmpty(sapMaterialPreparationList)) {
System.out.println("sap无领料单数据");
}
//取出各领料单
List<String> orderCodes = sapMaterialPreparationList.stream().map(SapMaterialPreparation::getAUFNR).collect(Collectors.toList());
Date createDate = DateUtils.getNowDate();
for (int m = 0;m<orderCodes.size();m++) {
String orderCode = orderCodes.get(m);
logger.info("领料单内容:"+orderCode);
/**mes_prepare**/
String mesPrepareId = IdUtils.fastSimpleUUID();
MesPrepareDTO mesPrepare0 = new MesPrepareDTO();
mesPrepare0.setPrepareId(mesPrepareId);
mesPrepare0.setWorkorderCode(workOrders.get(m));
mesPrepare0.setWorkorderName(orderCode);//工单(子)
mesPrepare0.setCreateTime(createDate);
mesPrepare0.setCreateBy(SecurityUtils.getUsername());
mesPrepare0.setStatus("L0");//默认待确认
proOrderWorkorderMapper.insertMesPrepare(mesPrepare0);
/**mes_prepare_detail**/
List<MesPrepareDetailDTO> details = new ArrayList<>();
MesPrepareDetailDTO detail = null;
for (SapMaterialPreparation sap : sapMaterialPreparationList) {
detail = new MesPrepareDetailDTO();
detail.setPrepareId(mesPrepareId);
detail.setRecordId(IdUtils.fastSimpleUUID());
detail.setAttr1(sap.getRSPOS());//预留/相关需求的项目编号
detail.setMaterialCode(sap.getMATNR());//物料号
detail.setMaterailName(sap.getMAKTX());//物料描述(短文本)
detail.setFactoryCode(sap.getWERKS());//工厂
detail.setLocator(sap.getLGORT());//库存地点
detail.setNeedDate(sap.getBDTER());//组件的需求日期
detail.setQuantity(sap.getBDMNG());////需求量
detail.setFundQuanlity(sap.getZQLSL());//欠料数量
detail.setUnit(sap.getMEINS());//基本计量单位
detail.setRecoil(sap.getRGEKZ());//反冲标识
detail.setBuyFlag(sap.getDBSKZ());//直接采购标识
detail.setCreateBy(SecurityUtils.getUsername());
detail.setCreateTime(createDate);
details.add(detail);
logger.info("领料单内容detail"+sap.getRSPOS()+","+sap.getMATNR()+","+
sap.getMAKTX()+","+sap.getWERKS()+","+ sap.getLGORT()+","+
sap.getBDTER()+","+sap.getBDMNG()+","+sap.getZQLSL()+","+
sap.getMEINS()+","+sap.getRGEKZ()+","+sap.getDBSKZ()
);
}
proOrderWorkorderMapper.insertMesPrepareDetails(details);
logger.info("获取sap领料单" + sapWorkOrder+"结束");
}
}
}
//根据工单子单编码获取最顶级订单的母单
private ProOrder getTopOrder(String workorderId) {
//pro_order_workorder
@ -973,14 +992,16 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService {
// 通过工单id查询批次号
List<ProOrderWorkorderBatch> batchCodeList = proOrderMapper.selectBatchCodesById(proOrderWorkorder.getWorkorderId());
List<StringBuilder> batchCodes = new ArrayList<>();
List<StringBuilder> batchNums = new ArrayList<>();
// 格式化数据
for (ProOrderWorkorderBatch batchCode : batchCodeList) {
batchCodes.add(new StringBuilder(batchCode.getBatchCode()).append(";").append("\n"));
batchNums.add(new StringBuilder(batchCode.getBatchQuantity()+"").append(";").append("\n"));
}
// 将查询结果设置到当前工单对象
proOrderWorkorder.setShiftDesc(shiftDesc);
proOrderWorkorder.setBatchCodeList(batchCodes);
proOrderWorkorder.setBatchNumList(batchNums);
// 通过母工单workorder_id查询子工单
List<ProOrderWorkorder> childWorkorders = proOrderWorkorderMapper.selectChildWorkOrder(proOrderWorkorder.getWorkorderCode());
if (!childWorkorders.isEmpty()) {
@ -1029,4 +1050,36 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService {
return workBatch;
}
/**
*
*
* @param splitOrderDTO
* @return
*/
@Override
@DS("#header.poolName")
@Transactional
public AjaxResult subChangeWorkOrderM(SplitOrderDTO splitOrderDTO) {
ProOrderWorkorder proWorkOrder = splitOrderDTO.getProOrderWorkorder();
proWorkOrder.setProdLineCode(JSONArray.toJSONString(splitOrderDTO.getProdLineCodeArray()));
proWorkOrder.setUpdateBy(SecurityUtils.getUsername());
proWorkOrder.setUpdateTime(DateUtils.getNowDate());
// 白坯订单变更逻辑
if (splitOrderDTO.getProOrderWorkorder().getProdType().equals("white")) {
proOrderWorkorderMapper.updateProOrderWorkorderM(proWorkOrder);
}else{
proOrderWorkorderMapper.updateProOrderWorkorder(proWorkOrder);
//pro_order_workorder
ProOrderWorkorder topWorkOrder = proOrderWorkorderMapper.getWorkOrderByCode(proWorkOrder.getWorkorderCode());
while (!"0".equals(topWorkOrder.getParentOrder()) && StringUtils.isNotEmpty(topWorkOrder.getParentOrder())) {
//pro_order_workorder
topWorkOrder = proOrderWorkorderMapper.getWorkOrderByCode(topWorkOrder.getParentOrder());
proWorkOrder.setWorkorderId(topWorkOrder.getWorkorderId());
proOrderWorkorderMapper.updateProOrderWorkorderM(proWorkOrder);
}
}
return success("变更成功");
}
}

@ -348,6 +348,26 @@
select count(0)+1 from pro_order_workorder
where product_date = #{productDate} and end_flag='1'
</select>
<select id="getBatchInfo" resultType="java.lang.String">
select concat(batch_code,':',batch_quantity)
from pro_order_workorder_batch
where workorder_id = #{workorderId} and del_flag = '0'
</select>
<select id="getWorkOrderByCode" resultType="com.op.plan.domain.ProOrderWorkorder">
select workorder_id workorderId,
workorder_code workorderCode,
parent_order parentOrder
from pro_order_workorder
where workorder_code = #{workorderCode} and del_flag = '0'
</select>
<select id="getPWorkOrder" resultMap="ProOrderWorkorderResult">
select workorder_id, workorder_code, order_id, order_code,
product_code, product_name, product_date, parent_order,
quantity_split,unit,prod_type, factory_code
from pro_order_workorder
where workorder_code = #{workorderCode}
and del_flag = '0'
</select>
<insert id="createPrepareDetails">
insert into mes_prepare_detail
@ -364,6 +384,90 @@
)
</foreach>
</insert>
<insert id="insertMesPrepare">
insert into mes_prepare
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="prepareId != null">prepare_id,</if>
<if test="workorderCode != null and workorderCode != ''">workorder_code,</if>
<if test="workorderName != null">workorder_name,</if>
<if test="parentOrder != null and parentOrder != ''">parent_order,</if>
<if test="orderId != null and orderId != ''">order_id,</if>
<if test="orderCode != null">order_code,</if>
<if test="productId != null">product_id,</if>
<if test="productCode != null and productCode != ''">product_code,</if>
<if test="prodType != null">prod_type,</if>
<if test="productName != null and productName != ''">product_name,</if>
<if test="productSpc != null">product_spc,</if>
<if test="wetDetailPlanId != null">wet_detail_plan_id,</if>
<if test="productDate != null">product_date,</if>
<if test="shiftId != null">shift_id,</if>
<if test="ancestors != null">ancestors,</if>
<if test="status != null">status,</if>
<if test="remark != null">remark,</if>
<if test="attr1 != null">attr1,</if>
<if test="attr2 != null">attr2,</if>
<if test="attr3 != null">attr3,</if>
<if test="attr4 != null">attr4,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="factoryCode != null">factory_code,</if>
<if test="materialCode != null and materialCode != ''">material_code,</if>
<if test="materialName != null and materialName != ''">material_name,</if>
<if test="materialSpc != null">material_spc,</if>
<if test="unit != null and unit != ''">unit,</if>
<if test="quantity != null">quantity,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="prepareId != null">#{prepareId},</if>
<if test="workorderCode != null and workorderCode != ''">#{workorderCode},</if>
<if test="workorderName != null">#{workorderName},</if>
<if test="parentOrder != null and parentOrder != ''">#{parentOrder},</if>
<if test="orderId != null and orderId != ''">#{orderId},</if>
<if test="orderCode != null">#{orderCode},</if>
<if test="productId != null">#{productId},</if>
<if test="productCode != null and productCode != ''">#{productCode},</if>
<if test="prodType != null">#{prodType},</if>
<if test="productName != null and productName != ''">#{productName},</if>
<if test="productSpc != null">#{productSpc},</if>
<if test="wetDetailPlanId != null">#{wetDetailPlanId},</if>
<if test="productDate != null">#{productDate},</if>
<if test="shiftId != null">#{shiftId},</if>
<if test="ancestors != null">#{ancestors},</if>
<if test="status != null">#{status},</if>
<if test="remark != null">#{remark},</if>
<if test="attr1 != null">#{attr1},</if>
<if test="attr2 != null">#{attr2},</if>
<if test="attr3 != null">#{attr3},</if>
<if test="attr4 != null">#{attr4},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="factoryCode != null">#{factoryCode},</if>
<if test="materialCode != null and materialCode != ''">#{materialCode},</if>
<if test="materialName != null and materialName != ''">#{materialName},</if>
<if test="materialSpc != null">#{materialSpc},</if>
<if test="unit != null and unit != ''">#{unit},</if>
<if test="quantity != null">#{quantity},</if>
</trim>
</insert>
<insert id="insertMesPrepareDetails">
INSERT INTO mes_prepare_detail (
record_id,prepare_id,material_code,material_name,unit,
quantity,create_by,create_time,factory_code,status,
locator,need_date,recoil,fund_quanlity,buy_flag
)VALUES
<foreach collection="list" item="d" index="index" separator=",">
(
#{d.recordId},#{d.prepareId},#{d.materialCode},#{d.materailName},#{d.unit},
#{d.quantity},#{d.createBy},#{d.createTime},#{d.factoryCode},#{d.status},
#{d.locator},#{d.needDate},#{d.recoil},#{d.fundQuanlity},#{d.buyFlag}
)
</foreach>
</insert>
<update id="updateProOrderWorkorder" parameterType="ProOrderWorkorder">
update pro_order_workorder
@ -403,12 +507,12 @@
where workorder_id = #{workorderId}
</update>
<!--工单下发-->
<update id="downProOrderWorkorderByWorkorderIds">
<update id="downWorkorders">
update pro_order_workorder
set status = 'w1'
where workorder_code in
<foreach item="workorderCode" collection="array" open="(" separator="," close=")">
#{workorderCode}
where workorder_id in
<foreach item="workorderId" collection="array" open="(" separator="," close=")">
#{workorderId}
</foreach>
and del_flag = '0'
</update>
@ -419,6 +523,20 @@
where workorder_code = #{workorderId}
and del_flag = '0'
</update>
<update id="updateProOrderWorkorderM">
update pro_order_workorder
<trim prefix="SET" suffixOverrides=",">
<if test="prodLineCode != null">prod_line_code = #{prodLineCode},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
</trim>
where workorder_id = #{workorderId}
</update>
<update id="updateWhiteWorkOrder">
update pro_order_workorder
set status = 'w1'
where workorder_id = #{workorderId}
</update>
<delete id="deleteProOrderWorkorderByWorkorderId" parameterType="String">
update pro_order_workorder

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save