Browse Source

报工部分代码提交

master
DouDou 2 years ago
parent
commit
d61033cc35
  1. 97
      src/main/java/com/spring/modules/schedule/controller/ScheduleController.java
  2. 149
      src/main/java/com/spring/modules/schedule/data/BaseRollData.java
  3. 179
      src/main/java/com/spring/modules/schedule/data/BaseShopOrderData.java
  4. 522
      src/main/java/com/spring/modules/schedule/data/ScheduleData.java
  5. 1130
      src/main/java/com/spring/modules/schedule/data/SearchScheduleData.java
  6. 257
      src/main/java/com/spring/modules/schedule/data/SfdcRollOpsData.java
  7. 48
      src/main/java/com/spring/modules/schedule/mapper/ProcedureMapper.java
  8. 57
      src/main/java/com/spring/modules/schedule/mapper/ScheduleMapper.java
  9. 56
      src/main/java/com/spring/modules/schedule/service/ScheduleService.java
  10. 54
      src/main/java/com/spring/modules/schedule/service/impl/ScheduleServiceImpl.java
  11. 18
      src/main/resources/mapper/schedule/ProcedureMapper.xml
  12. 96
      src/main/resources/mapper/schedule/ScheduleMapper.xml

97
src/main/java/com/spring/modules/schedule/controller/ScheduleController.java

@ -0,0 +1,97 @@
package com.spring.modules.schedule.controller;
import com.spring.common.utils.R;
import com.spring.modules.schedule.data.BaseRollData;
import com.spring.modules.schedule.data.ScheduleData;
import com.spring.modules.schedule.data.SearchScheduleData;
import com.spring.modules.schedule.data.SfdcRollOpsData;
import com.spring.modules.schedule.service.ScheduleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.text.ParseException;
import java.util.List;
import java.util.Map;
/**
* 生产订单排产
* @author LR
* @date 2021/10/20 11:04
**/
@RestController
@RequestMapping(value = "/schedule")
public class ScheduleController {
@Autowired
private ScheduleService scheduleService;
/**
* TODO 查询派工单的数据
* @author LR
* @date 2021/10/25 16:07
* @param inData
* @return com.gaotao.common.utils.R
**/
@RequestMapping(value = "getProduceScheduleData")
public R getProduceScheduleData(@RequestBody SearchScheduleData inData){
List<ScheduleData> resultList = scheduleService.getProduceScheduleData(inData);
return R.ok()
.put("code", 200)
.put("msg", "查询成功!")
.put("rows", resultList)
.put("total", resultList.size());
}
/**
* TODO 按照派工单号查询派工单的数据
* @author LR
* @date 2021/11/8 14:23
* @param seqNo
* @return com.gaotao.common.utils.R
**/
@RequestMapping(value = "getScheduleDataBySeqNo")
public R getScheduleDataBySeqNo(@RequestBody String seqNo){
ScheduleData result = scheduleService.getScheduleDataBySeqNo(seqNo);
return R.ok()
.put("code", 200)
.put("msg", "查询成功!")
.put("row", result);
}
/**
* TODO 获取当前的上机卷信息
* @author LR
* @date 2021/11/9 16:02
* @param inData
* @return com.gaotao.common.utils.R
**/
@RequestMapping(value = "getCurrentRollOpsBySeqNo")
public R getCurrentRollOpsBySeqNo(@RequestBody BaseRollData inData){
SfdcRollOpsData result = scheduleService.getCurrentRollOpsBySeqNo(inData);
return R.ok()
.put("code", 200)
.put("msg", "查询成功!")
.put("row", result);
}
/**
* TODO 查询上机卷的记录数据
* @author LR
* @date 2021/11/9 16:24
* @param inData
* @return com.gaotao.common.utils.R
**/
@RequestMapping(value = "getSfdcRollOpsByCon")
public R getSfdcRollOpsByCon(@RequestBody SearchScheduleData inData){
List<SfdcRollOpsData> resultList = scheduleService.getSfdcRollOpsByCon(inData);
return R.ok()
.put("code", 200)
.put("msg", "查询成功!")
.put("rows", resultList)
.put("total", resultList.size());
}
}

149
src/main/java/com/spring/modules/schedule/data/BaseRollData.java

@ -0,0 +1,149 @@
package com.spring.modules.schedule.data;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.spring.modules.report.data.BaseData;
import org.apache.ibatis.type.Alias;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* @author LR
* @Title: BaseRollData
* 卷信息基础表
* @Date 2021/11/9 15:41
*/
@Alias("BaseRollData")
public class BaseRollData extends BaseData {
private String orderNo;
private Integer itemNo;
private String seqNo;
private String rollNo;
private Float rollQty;
private Integer histSeqNo;
private String oriRollNo;
private String firstLevelRollNo;
private String finishedBy;
private String finishedFlag;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date finishedDate;
private String rollType;
private String rollTypeDb;
private String remark;
public BaseRollData() {
}
public String getOrderNo() {
return orderNo;
}
public void setOrderNo(String orderNo) {
this.orderNo = orderNo;
}
public Integer getItemNo() {
return itemNo;
}
public void setItemNo(Integer itemNo) {
this.itemNo = itemNo;
}
public String getSeqNo() {
return seqNo;
}
public void setSeqNo(String seqNo) {
this.seqNo = seqNo;
}
public String getRollNo() {
return rollNo;
}
public void setRollNo(String rollNo) {
this.rollNo = rollNo;
}
public Float getRollQty() {
return rollQty;
}
public void setRollQty(Float rollQty) {
this.rollQty = rollQty;
}
public Integer getHistSeqNo() {
return histSeqNo;
}
public void setHistSeqNo(Integer histSeqNo) {
this.histSeqNo = histSeqNo;
}
public String getOriRollNo() {
return oriRollNo;
}
public void setOriRollNo(String oriRollNo) {
this.oriRollNo = oriRollNo;
}
public String getFirstLevelRollNo() {
return firstLevelRollNo;
}
public void setFirstLevelRollNo(String firstLevelRollNo) {
this.firstLevelRollNo = firstLevelRollNo;
}
public String getFinishedBy() {
return finishedBy;
}
public void setFinishedBy(String finishedBy) {
this.finishedBy = finishedBy;
}
public String getFinishedFlag() {
return finishedFlag;
}
public void setFinishedFlag(String finishedFlag) {
this.finishedFlag = finishedFlag;
}
public Date getFinishedDate() {
return finishedDate;
}
public void setFinishedDate(Date finishedDate) {
this.finishedDate = finishedDate;
}
public String getRollType() {
return rollType;
}
public void setRollType(String rollType) {
this.rollType = rollType;
}
public String getRollTypeDb() {
return rollTypeDb;
}
public void setRollTypeDb(String rollTypeDb) {
this.rollTypeDb = rollTypeDb;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
}

179
src/main/java/com/spring/modules/schedule/data/BaseShopOrderData.java

@ -0,0 +1,179 @@
package com.spring.modules.schedule.data;
import com.spring.modules.report.data.BaseData;
import org.apache.ibatis.type.Alias;
/**
* @author LR
* @Title: ShopOrderData
* 生产订单数据
* @Date 2021/10/25 14:07
*/
@Alias("BaseShopOrderData")
public class BaseShopOrderData extends BaseData {
private String orderNo;//
private Integer itemNo;
private String itemDesc;//
private String partNo;//
private String partDesc;
private Integer preItemNo;//
private String preItemDesc;
private String preScheduledFlag;
private Integer nextItemNo;//
private String nextItemDesc;
private String nextScheduledFlag;
private String workCenterNo;
private String workCenterDesc;//加工中心描述
private String resourceId;
private String resourceDesc;//机台描述
private Float machRunFactor;
private Float machSetupTime;//
private String factorUnit;//
public BaseShopOrderData() {
}
public String getOrderNo() {
return orderNo;
}
public void setOrderNo(String orderNo) {
this.orderNo = orderNo;
}
public Integer getItemNo() {
return itemNo;
}
public void setItemNo(Integer itemNo) {
this.itemNo = itemNo;
}
public String getItemDesc() {
return itemDesc;
}
public void setItemDesc(String itemDesc) {
this.itemDesc = itemDesc;
}
public String getPartNo() {
return partNo;
}
public void setPartNo(String partNo) {
this.partNo = partNo;
}
public String getPartDesc() {
return partDesc;
}
public void setPartDesc(String partDesc) {
this.partDesc = partDesc;
}
public Integer getPreItemNo() {
return preItemNo;
}
public void setPreItemNo(Integer preItemNo) {
this.preItemNo = preItemNo;
}
public String getPreItemDesc() {
return preItemDesc;
}
public void setPreItemDesc(String preItemDesc) {
this.preItemDesc = preItemDesc;
}
public String getPreScheduledFlag() {
return preScheduledFlag;
}
public void setPreScheduledFlag(String preScheduledFlag) {
this.preScheduledFlag = preScheduledFlag;
}
public Integer getNextItemNo() {
return nextItemNo;
}
public void setNextItemNo(Integer nextItemNo) {
this.nextItemNo = nextItemNo;
}
public String getNextItemDesc() {
return nextItemDesc;
}
public void setNextItemDesc(String nextItemDesc) {
this.nextItemDesc = nextItemDesc;
}
public String getNextScheduledFlag() {
return nextScheduledFlag;
}
public void setNextScheduledFlag(String nextScheduledFlag) {
this.nextScheduledFlag = nextScheduledFlag;
}
public String getWorkCenterNo() {
return workCenterNo;
}
public void setWorkCenterNo(String workCenterNo) {
this.workCenterNo = workCenterNo;
}
public String getWorkCenterDesc() {
return workCenterDesc;
}
public void setWorkCenterDesc(String workCenterDesc) {
this.workCenterDesc = workCenterDesc;
}
public String getResourceId() {
return resourceId;
}
public void setResourceId(String resourceId) {
this.resourceId = resourceId;
}
public String getResourceDesc() {
return resourceDesc;
}
public void setResourceDesc(String resourceDesc) {
this.resourceDesc = resourceDesc;
}
public Float getMachRunFactor() {
return machRunFactor;
}
public void setMachRunFactor(Float machRunFactor) {
this.machRunFactor = machRunFactor;
}
public Float getMachSetupTime() {
return machSetupTime;
}
public void setMachSetupTime(Float machSetupTime) {
this.machSetupTime = machSetupTime;
}
public String getFactorUnit() {
return factorUnit;
}
public void setFactorUnit(String factorUnit) {
this.factorUnit = factorUnit;
}
}

522
src/main/java/com/spring/modules/schedule/data/ScheduleData.java

@ -0,0 +1,522 @@
package com.spring.modules.schedule.data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.ibatis.type.Alias;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* @author LR
* @Title: ShopOrderData
* 生产订单数据
* @Date 2021/10/25 14:07
*/
@Alias("ScheduleData")
public class ScheduleData extends BaseShopOrderData {
private String spec;//
private Float lotSize;//
private Float qtyRequired;
private Float qtyReported;
private Float qtyApprove;
private Float qtyScrapt;//
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date needDate;//
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date scheduledDate;
private String customerId;//
private String customerName;//
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date enterDate;
private String availResource;//
private String closedFlag;
private String scheduledSeqNo;//
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date planStartTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date planFinishTime;
private String shiftNo;//
private Float timeRequired;
private Float timeReported;
private Integer seqNo;
private String selectedFlag;//
private String sourceFlag;
private Float qtyScheduledPreOps;//
private String parkFlag;//
private Float timeRequiredOriginal;
private Float qtyRequiredOriginal;//
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date preOpsPlanStartTime;//
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date preOpsPlanFinishTime;
private String remark;//
private String oriSOOrderNo;//
private String custPartNo;
private Float eficiency;//
private Float delayHours;//
private String costRollUpFlag;
private String barcodeId;//
private Integer crewSize;
private String outWorkFlag;//
private Float efficiency;//
private String closedBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date closedDate;//
private String repairSOFlag;//印版已发
private String manualFlag;//刀模已发
private boolean checkedFlag;//是否选中
private String orderType;//订单类型
private String mergeStatusCon;//合并字段的内容
private String laterShipFlag;//晚于发货时间
private String earlierItemFlag;//早于上工序
private String finishPreItemFlag;//早于上工序的标记
private String preResourceInfo;//前道机台信息
private Float preQtyFinished;//前道工序完成的
private String colorStyle;//颜色样式
private String matIssueFlag;//排料标记
private String plateIssueFlag;//网版已发
private String toolIssueFlag;//刀模已发
public ScheduleData() {
}
public String getSpec() {
return spec;
}
public void setSpec(String spec) {
this.spec = spec;
}
public Float getLotSize() {
return lotSize;
}
public void setLotSize(Float lotSize) {
this.lotSize = lotSize;
}
public Float getQtyRequired() {
return qtyRequired;
}
public void setQtyRequired(Float qtyRequired) {
this.qtyRequired = qtyRequired;
}
public Float getQtyReported() {
return qtyReported;
}
public void setQtyReported(Float qtyReported) {
this.qtyReported = qtyReported;
}
public Float getQtyApprove() {
return qtyApprove;
}
public void setQtyApprove(Float qtyApprove) {
this.qtyApprove = qtyApprove;
}
public Float getQtyScrapt() {
return qtyScrapt;
}
public void setQtyScrapt(Float qtyScrapt) {
this.qtyScrapt = qtyScrapt;
}
public Date getNeedDate() {
return needDate;
}
public void setNeedDate(Date needDate) {
this.needDate = needDate;
}
public Date getScheduledDate() {
return scheduledDate;
}
public void setScheduledDate(Date scheduledDate) {
this.scheduledDate = scheduledDate;
}
public String getCustomerId() {
return customerId;
}
public void setCustomerId(String customerId) {
this.customerId = customerId;
}
public String getCustomerName() {
return customerName;
}
public void setCustomerName(String customerName) {
this.customerName = customerName;
}
public Date getEnterDate() {
return enterDate;
}
public void setEnterDate(Date enterDate) {
this.enterDate = enterDate;
}
public String getAvailResource() {
return availResource;
}
public void setAvailResource(String availResource) {
this.availResource = availResource;
}
public String getClosedFlag() {
return closedFlag;
}
public void setClosedFlag(String closedFlag) {
this.closedFlag = closedFlag;
}
public String getScheduledSeqNo() {
return scheduledSeqNo;
}
public void setScheduledSeqNo(String scheduledSeqNo) {
this.scheduledSeqNo = scheduledSeqNo;
}
public Date getPlanStartTime() {
return planStartTime;
}
public void setPlanStartTime(Date planStartTime) {
this.planStartTime = planStartTime;
}
public Date getPlanFinishTime() {
return planFinishTime;
}
public void setPlanFinishTime(Date planFinishTime) {
this.planFinishTime = planFinishTime;
}
public String getShiftNo() {
return shiftNo;
}
public void setShiftNo(String shiftNo) {
this.shiftNo = shiftNo;
}
public Float getTimeRequired() {
return timeRequired;
}
public void setTimeRequired(Float timeRequired) {
this.timeRequired = timeRequired;
}
public Float getTimeReported() {
return timeReported;
}
public void setTimeReported(Float timeReported) {
this.timeReported = timeReported;
}
public Integer getSeqNo() {
return seqNo;
}
public void setSeqNo(Integer seqNo) {
this.seqNo = seqNo;
}
public String getSelectedFlag() {
return selectedFlag;
}
public void setSelectedFlag(String selectedFlag) {
this.selectedFlag = selectedFlag;
}
public String getSourceFlag() {
return sourceFlag;
}
public void setSourceFlag(String sourceFlag) {
this.sourceFlag = sourceFlag;
}
public Float getQtyScheduledPreOps() {
return qtyScheduledPreOps;
}
public void setQtyScheduledPreOps(Float qtyScheduledPreOps) {
this.qtyScheduledPreOps = qtyScheduledPreOps;
}
public String getParkFlag() {
return parkFlag;
}
public void setParkFlag(String parkFlag) {
this.parkFlag = parkFlag;
}
public Float getTimeRequiredOriginal() {
return timeRequiredOriginal;
}
public void setTimeRequiredOriginal(Float timeRequiredOriginal) {
this.timeRequiredOriginal = timeRequiredOriginal;
}
public Float getQtyRequiredOriginal() {
return qtyRequiredOriginal;
}
public void setQtyRequiredOriginal(Float qtyRequiredOriginal) {
this.qtyRequiredOriginal = qtyRequiredOriginal;
}
public Date getPreOpsPlanStartTime() {
return preOpsPlanStartTime;
}
public void setPreOpsPlanStartTime(Date preOpsPlanStartTime) {
this.preOpsPlanStartTime = preOpsPlanStartTime;
}
public Date getPreOpsPlanFinishTime() {
return preOpsPlanFinishTime;
}
public void setPreOpsPlanFinishTime(Date preOpsPlanFinishTime) {
this.preOpsPlanFinishTime = preOpsPlanFinishTime;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public String getOriSOOrderNo() {
return oriSOOrderNo;
}
public void setOriSOOrderNo(String oriSOOrderNo) {
this.oriSOOrderNo = oriSOOrderNo;
}
public String getCustPartNo() {
return custPartNo;
}
public void setCustPartNo(String custPartNo) {
this.custPartNo = custPartNo;
}
public Float getEficiency() {
return eficiency;
}
public void setEficiency(Float eficiency) {
this.eficiency = eficiency;
}
public Float getDelayHours() {
return delayHours;
}
public void setDelayHours(Float delayHours) {
this.delayHours = delayHours;
}
public String getCostRollUpFlag() {
return costRollUpFlag;
}
public void setCostRollUpFlag(String costRollUpFlag) {
this.costRollUpFlag = costRollUpFlag;
}
public String getBarcodeId() {
return barcodeId;
}
public void setBarcodeId(String barcodeId) {
this.barcodeId = barcodeId;
}
public Integer getCrewSize() {
return crewSize;
}
public void setCrewSize(Integer crewSize) {
this.crewSize = crewSize;
}
public String getOutWorkFlag() {
return outWorkFlag;
}
public void setOutWorkFlag(String outWorkFlag) {
this.outWorkFlag = outWorkFlag;
}
public Float getEfficiency() {
return efficiency;
}
public void setEfficiency(Float efficiency) {
this.efficiency = efficiency;
}
public String getClosedBy() {
return closedBy;
}
public void setClosedBy(String closedBy) {
this.closedBy = closedBy;
}
public Date getClosedDate() {
return closedDate;
}
public void setClosedDate(Date closedDate) {
this.closedDate = closedDate;
}
public String getRepairSOFlag() {
return repairSOFlag;
}
public void setRepairSOFlag(String repairSOFlag) {
this.repairSOFlag = repairSOFlag;
}
public String getManualFlag() {
return manualFlag;
}
public void setManualFlag(String manualFlag) {
this.manualFlag = manualFlag;
}
public boolean isCheckedFlag() {
return checkedFlag;
}
public void setCheckedFlag(boolean checkedFlag) {
this.checkedFlag = checkedFlag;
}
public String getOrderType() {
return orderType;
}
public void setOrderType(String orderType) {
this.orderType = orderType;
}
public String getMergeStatusCon() {
return mergeStatusCon;
}
public void setMergeStatusCon(String mergeStatusCon) {
this.mergeStatusCon = mergeStatusCon;
}
public String getLaterShipFlag() {
return laterShipFlag;
}
public void setLaterShipFlag(String laterShipFlag) {
this.laterShipFlag = laterShipFlag;
}
public String getEarlierItemFlag() {
return earlierItemFlag;
}
public void setEarlierItemFlag(String earlierItemFlag) {
this.earlierItemFlag = earlierItemFlag;
}
public String getFinishPreItemFlag() {
return finishPreItemFlag;
}
public void setFinishPreItemFlag(String finishPreItemFlag) {
this.finishPreItemFlag = finishPreItemFlag;
}
public String getPreResourceInfo() {
return preResourceInfo;
}
public void setPreResourceInfo(String preResourceInfo) {
this.preResourceInfo = preResourceInfo;
}
public Float getPreQtyFinished() {
return preQtyFinished;
}
public void setPreQtyFinished(Float preQtyFinished) {
this.preQtyFinished = preQtyFinished;
}
public String getColorStyle() {
return colorStyle;
}
public void setColorStyle(String colorStyle) {
this.colorStyle = colorStyle;
}
public String getMatIssueFlag() {
return matIssueFlag;
}
public void setMatIssueFlag(String matIssueFlag) {
this.matIssueFlag = matIssueFlag;
}
public String getPlateIssueFlag() {
return plateIssueFlag;
}
public void setPlateIssueFlag(String plateIssueFlag) {
this.plateIssueFlag = plateIssueFlag;
}
public String getToolIssueFlag() {
return toolIssueFlag;
}
public void setToolIssueFlag(String toolIssueFlag) {
this.toolIssueFlag = toolIssueFlag;
}
}

1130
src/main/java/com/spring/modules/schedule/data/SearchScheduleData.java
File diff suppressed because it is too large
View File

257
src/main/java/com/spring/modules/schedule/data/SfdcRollOpsData.java

@ -0,0 +1,257 @@
package com.spring.modules.schedule.data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.ibatis.type.Alias;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* @author LR
* @Title: SfdcRollOpsData
* 上机卷信息
* @Date 2021/11/9 15:50
*/
@Alias("SfdcRollOpsData")
public class SfdcRollOpsData extends BaseRollData {
private String scanedBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date scanedDate;
private String startProdFlag;
private String firstSetupBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date firstSetupDate;
private String latestSetupBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date latestSetupDate;
private String firstEndSetupBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date firstEndSetupDate;
private String latestEndSetupBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date latestEndSetupDate;
private String firstProdBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date firstProdDate;
private String latestProdBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date latestProdDate;
private String firstEndProdBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date firstEndProdDate;
private String latestEndProdBy;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date latestEndProdDate;
private String pauseFlag;
private Float qtyReported;
private Float qtyDefected;
private String reportedFlag;
public SfdcRollOpsData() {
}
//单纯插入数据
public SfdcRollOpsData(String scanedBy, Date scanedDate, String startProdFlag, String pauseFlag, Float qtyReported, Float qtyDefected, String reportedFlag) {
this.scanedBy = scanedBy;
this.scanedDate = scanedDate;
this.startProdFlag = startProdFlag;
this.pauseFlag = pauseFlag;
this.qtyReported = qtyReported;
this.qtyDefected = qtyDefected;
this.reportedFlag = reportedFlag;
}
public String getScanedBy() {
return scanedBy;
}
public void setScanedBy(String scanedBy) {
this.scanedBy = scanedBy;
}
public Date getScanedDate() {
return scanedDate;
}
public void setScanedDate(Date scanedDate) {
this.scanedDate = scanedDate;
}
public String getStartProdFlag() {
return startProdFlag;
}
public void setStartProdFlag(String startProdFlag) {
this.startProdFlag = startProdFlag;
}
public String getFirstSetupBy() {
return firstSetupBy;
}
public void setFirstSetupBy(String firstSetupBy) {
this.firstSetupBy = firstSetupBy;
}
public Date getFirstSetupDate() {
return firstSetupDate;
}
public void setFirstSetupDate(Date firstSetupDate) {
this.firstSetupDate = firstSetupDate;
}
public String getLatestSetupBy() {
return latestSetupBy;
}
public void setLatestSetupBy(String latestSetupBy) {
this.latestSetupBy = latestSetupBy;
}
public Date getLatestSetupDate() {
return latestSetupDate;
}
public void setLatestSetupDate(Date latestSetupDate) {
this.latestSetupDate = latestSetupDate;
}
public String getFirstEndSetupBy() {
return firstEndSetupBy;
}
public void setFirstEndSetupBy(String firstEndSetupBy) {
this.firstEndSetupBy = firstEndSetupBy;
}
public Date getFirstEndSetupDate() {
return firstEndSetupDate;
}
public void setFirstEndSetupDate(Date firstEndSetupDate) {
this.firstEndSetupDate = firstEndSetupDate;
}
public String getLatestEndSetupBy() {
return latestEndSetupBy;
}
public void setLatestEndSetupBy(String latestEndSetupBy) {
this.latestEndSetupBy = latestEndSetupBy;
}
public Date getLatestEndSetupDate() {
return latestEndSetupDate;
}
public void setLatestEndSetupDate(Date latestEndSetupDate) {
this.latestEndSetupDate = latestEndSetupDate;
}
public String getFirstProdBy() {
return firstProdBy;
}
public void setFirstProdBy(String firstProdBy) {
this.firstProdBy = firstProdBy;
}
public Date getFirstProdDate() {
return firstProdDate;
}
public void setFirstProdDate(Date firstProdDate) {
this.firstProdDate = firstProdDate;
}
public String getLatestProdBy() {
return latestProdBy;
}
public void setLatestProdBy(String latestProdBy) {
this.latestProdBy = latestProdBy;
}
public Date getLatestProdDate() {
return latestProdDate;
}
public void setLatestProdDate(Date latestProdDate) {
this.latestProdDate = latestProdDate;
}
public String getFirstEndProdBy() {
return firstEndProdBy;
}
public void setFirstEndProdBy(String firstEndProdBy) {
this.firstEndProdBy = firstEndProdBy;
}
public Date getFirstEndProdDate() {
return firstEndProdDate;
}
public void setFirstEndProdDate(Date firstEndProdDate) {
this.firstEndProdDate = firstEndProdDate;
}
public String getLatestEndProdBy() {
return latestEndProdBy;
}
public void setLatestEndProdBy(String latestEndProdBy) {
this.latestEndProdBy = latestEndProdBy;
}
public Date getLatestEndProdDate() {
return latestEndProdDate;
}
public void setLatestEndProdDate(Date latestEndProdDate) {
this.latestEndProdDate = latestEndProdDate;
}
public String getPauseFlag() {
return pauseFlag;
}
public void setPauseFlag(String pauseFlag) {
this.pauseFlag = pauseFlag;
}
public Float getQtyReported() {
return qtyReported;
}
public void setQtyReported(Float qtyReported) {
this.qtyReported = qtyReported;
}
public Float getQtyDefected() {
return qtyDefected;
}
public void setQtyDefected(Float qtyDefected) {
this.qtyDefected = qtyDefected;
}
public String getReportedFlag() {
return reportedFlag;
}
public void setReportedFlag(String reportedFlag) {
this.reportedFlag = reportedFlag;
}
}

48
src/main/java/com/spring/modules/schedule/mapper/ProcedureMapper.java

@ -0,0 +1,48 @@
package com.spring.modules.schedule.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
/**
*
* @ClassName: ProcedureDao
* @Description: 存储过程专用dao
* @author lirui
* @date 2019年5月11日
*
*/
@Mapper
@Repository
public interface ProcedureMapper {
/**
*
* @Title: getProcedureData
* @Description: 存储过程的通用方法
* @param procedureName
* @param params
* @return 参数
* @return List<Map<String,Object>> 返回类型
* @author LR
* @throws
*/
List<Map<String, Object>> getProcedureData(@Param("procedureName")String procedureName, @Param("params")List<Object> params);
/**
*
* @Title: execProduceData
* @Description: 执行没有返回数据的存储过程
* @author LR
* @date 2020年3月9日
* @param @param procedureName
* @param @param params 参数
* @return void 返回类型
* @throws
*/
void execProduceData(@Param("procedureName")String procedureName, @Param("params")List<Object> params);
}

57
src/main/java/com/spring/modules/schedule/mapper/ScheduleMapper.java

@ -0,0 +1,57 @@
package com.spring.modules.schedule.mapper;
import com.spring.modules.schedule.data.BaseRollData;
import com.spring.modules.schedule.data.ScheduleData;
import com.spring.modules.schedule.data.SearchScheduleData;
import com.spring.modules.schedule.data.SfdcRollOpsData;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
/**
* @author LR
* @Title: ScheduleMapper
* 生产订单排产dao
* @Date 2021/10/20 11:20
*/
@Mapper
@Repository
public interface ScheduleMapper {
/**
* TODO 查询派工单的数据
* @author LR
* @date 2021/10/25 16:09
* @param inData
**/
List<ScheduleData> getProduceScheduleData(SearchScheduleData inData);
/**
* TODO 按照派工单号查询派工单的数据
* @author LR
* @date 2021/11/8 14:25
* @param seqNo
* @return com.gaotao.modules.schedule.data.ScheduleData
**/
ScheduleData getScheduleDataBySeqNo(String seqNo);
/**
* TODO 获取当前的上机卷信息
* @author LR
* @date 2021/11/9 16:04
* @param inData
**/
SfdcRollOpsData getCurrentRollOpsBySeqNo(BaseRollData inData);
/**
* TODO 获取上机卷记录按照条件查询
* @author LR
* @date 2021/11/9 16:28
* @param inData
**/
List<SfdcRollOpsData> getSfdcRollOpsByCon(SearchScheduleData inData);
}

56
src/main/java/com/spring/modules/schedule/service/ScheduleService.java

@ -0,0 +1,56 @@
package com.spring.modules.schedule.service;
import com.spring.modules.schedule.data.BaseRollData;
import com.spring.modules.schedule.data.ScheduleData;
import com.spring.modules.schedule.data.SearchScheduleData;
import com.spring.modules.schedule.data.SfdcRollOpsData;
import java.text.ParseException;
import java.util.List;
import java.util.Map;
/**
* @author LR
* @Title: ScheduleService
* 生产订单排产
* @Date 2021/10/21 11:26
*/
public interface ScheduleService {
/**
* @description: 查询派工单
* @author LR
* @date 2024/6/6 9:18
* @version 1.0
*/
List<ScheduleData> getProduceScheduleData(SearchScheduleData inData);
/**
* TODO 按照派工单号查询派工单的数据
*
* @param seqNo
* @return com.gaotao.modules.schedule.data.ScheduleData
* @author LR
* @date 2021/11/8 14:24
**/
ScheduleData getScheduleDataBySeqNo(String seqNo);
/**
* TODO 获取当前的上机卷信息
* @author LR
* @date 2021/11/9 16:04
* @param inData
* @return com.gaotao.modules.schedule.data.SfdcRollOpsData
**/
SfdcRollOpsData getCurrentRollOpsBySeqNo(BaseRollData inData);
/**
* TODO 查询上机卷的记录数据
*
* @param inData
* @return java.util.List<com.gaotao.modules.schedule.data.SfdcRollOpsData>
* @author LR
* @date 2021/11/9 16:25
**/
List<SfdcRollOpsData> getSfdcRollOpsByCon(SearchScheduleData inData);
}

54
src/main/java/com/spring/modules/schedule/service/impl/ScheduleServiceImpl.java

@ -0,0 +1,54 @@
package com.spring.modules.schedule.service.impl;
import com.spring.modules.schedule.data.BaseRollData;
import com.spring.modules.schedule.data.ScheduleData;
import com.spring.modules.schedule.data.SearchScheduleData;
import com.spring.modules.schedule.data.SfdcRollOpsData;
import com.spring.modules.schedule.mapper.ScheduleMapper;
import com.spring.modules.schedule.service.ScheduleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class ScheduleServiceImpl implements ScheduleService {
@Autowired
private ScheduleMapper scheduleMapper;
@Override
public List<ScheduleData> getProduceScheduleData(SearchScheduleData inData) {
//查询参数 默认是否查询
boolean searchFlag = inData.isSearchFlag();
if(searchFlag){
return scheduleMapper.getProduceScheduleData(inData);
}
return null;
}
@Override
public ScheduleData getScheduleDataBySeqNo(String seqNo) {
return scheduleMapper.getScheduleDataBySeqNo(seqNo);
}
@Override
public SfdcRollOpsData getCurrentRollOpsBySeqNo(BaseRollData inData) {
SfdcRollOpsData resultRow = scheduleMapper.getCurrentRollOpsBySeqNo(inData);
//判断是否查询到结果
if (null == resultRow) {
resultRow = new SfdcRollOpsData();
resultRow.setRollNo("暂无卷号");
}
return resultRow;
}
@Override
public List<SfdcRollOpsData> getSfdcRollOpsByCon(SearchScheduleData inData) {
//判断是否查询当前卷的
boolean currentRollFlag = inData.isCurrentRollFlag();
if (!currentRollFlag) {
inData.setRollNo(null);
}
return scheduleMapper.getSfdcRollOpsByCon(inData);
}
}

18
src/main/resources/mapper/schedule/ProcedureMapper.xml

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.spring.modules.schedule.mapper.ProcedureMapper">
<!-- 通用存储过程的结果集返回 -->
<select id="getProcedureData" resultType="java.util.Map" statementType="CALLABLE">
exec ${procedureName}
<foreach collection="params" item="param" index="index" separator=",">
#{param}
</foreach>
</select>
<!-- 通用无结果集返回 -->
<select id="execProduceData" statementType="CALLABLE">
exec ${procedureName}
<foreach collection="params" item="param" index="index" separator=",">
#{param}
</foreach>
</select>
</mapper>

96
src/main/resources/mapper/schedule/ScheduleMapper.xml

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.spring.modules.schedule.mapper.ScheduleMapper">
<!--按照条件查询工单的数据-->
<select id="getProduceScheduleData" parameterType="SearchScheduleData" resultType="ScheduleData">
select TOP 200 T.Site site, T.SeqNo, T.OrderNo orderNo, T.ItemNo itemNo, S.OperationDesc itemDesc, S.PartNo partNo,
P.part_desc, T.QtyRequired qtyRequired, T.QtyReported qtyReported, T.S_WorkCenterNo workCenterNo,
T.S_ResourceID resourceId
from SOScheduledRouting as T
Left Join SORouting as S On T.Site=S.Site and T.OrderNo=S.OrderNo
Left Join Part as P On S.Site=P.Site and S.PartNo=P.part_no
<where>
T.Site=S.Site and T.OrderNo=S.OrderNo and T.ItemNo=S.ItemNo
<if test="itemNo != null and itemNo > 0">
and T.ItemNo= #{itemNo}
</if>
<if test="orderNo != null and orderNo != ''">
AND op.OrderNo like '%' + #{orderNo} + '%'
</if>
</where>
Order by T.SeqNo
</select>
<!--按照派工单号查询派工单的数据-->
<select id="getScheduleDataBySeqNo" parameterType="java.lang.String" resultType="ScheduleData">
select T.Site site, T.SeqNo, T.OrderNo orderNo, T.ItemNo itemNo, S.OperationDesc itemDesc, S.PartNo partNo,
P.part_desc, T.QtyRequired qtyRequired, T.QtyReported qtyReported, T.S_WorkCenterNo workCenterNo,
T.S_ResourceID resourceId
from SOScheduledRouting as T
Left Join SORouting as S On T.Site=S.Site and T.OrderNo=S.OrderNo
Left Join Part as P On S.Site=P.Site and S.PartNo=P.part_no
<where>
T.Site=S.Site and T.OrderNo=S.OrderNo and T.ItemNo=S.ItemNo
AND T.SeqNo = #{seqNo}
</where>
</select>
<!--获取当前的上机卷信息-->
<select id="getCurrentRollOpsBySeqNo" parameterType="BaseRollData" resultType="SfdcRollOpsData">
SELECT TOP 1 sro.Site site, sro.OrderNo orderNo, sro.RollNo rollNo, sro.ItemNo itemNo, sro.SeqNo seqNo,
sro.ScanedBy scanedBy, sro.ScanedDate scanedDate,
sro.StartProdFlag startProdFlag, sro.FirstSetupBy firstSetupBy, sro.FirstSetupDate firstSetupDate,
sro.LatestSetupBy latestSetupBy,
sro.LatestSetupDate latestSetupDate, sro.FirstEndSetupBy firstEndSetupBy, sro.FirstEndSetupDate
firstEndSetupDate, sro.LatestEndSetupBy latestEndSetupBy,
sro.LatestEndSetupDate latestEndSetupDate, sro.FirstProdBy firstProdBy, sro.FirstProdDate firstProdDate,
sro.LatestProdBy latestProdBy,
sro.LatestProdDate latestProdDate, sro.FirstEndProdBy firstEndProdBy, sro.FirstEndProdDate firstEndProdDate,
sro.LatestEndProdBy latestEndProdBy,
sro.LatestEndProdDate latestEndProdDate, sro.FinishedDate finishedDate, sro.FinishedBy finishedBy,
sro.FinishedFlag finishedFlag, sro.PauseFlag pauseFlag,
sro.Remark remark, sro.QtyReported qtyReported, sro.QtyDefected qtyDefected, sro.ReportedFlag reportedFlag
FROM SFDC_RollOps sro
<where>
sro.SeqNo = #{seqNo}
AND sro.FinishedFlag <![CDATA[<>]]> 'Y' AND sro.PauseFlag <![CDATA[<>]]> 'Y'
</where>
</select>
<!--按照条件查询上机卷记录-->
<select id="getSfdcRollOpsByCon" parameterType="SearchScheduleData" resultType="SfdcRollOpsData">
SELECT sro.Site site, sro.OrderNo orderNo, sro.RollNo rollNo, sro.ItemNo itemNo, sro.SeqNo seqNo, sro.ScanedBy
scanedBy, sro.ScanedDate scanedDate,
sro.StartProdFlag startProdFlag, sro.FirstSetupBy firstSetupBy, sro.FirstSetupDate firstSetupDate,
sro.LatestSetupBy latestSetupBy,
sro.LatestSetupDate latestSetupDate, sro.FirstEndSetupBy firstEndSetupBy, sro.FirstEndSetupDate
firstEndSetupDate, sro.LatestEndSetupBy latestEndSetupBy,
sro.LatestEndSetupDate latestEndSetupDate, sro.FirstProdBy firstProdBy, sro.FirstProdDate firstProdDate,
sro.LatestProdBy latestProdBy,
sro.LatestProdDate latestProdDate, sro.FirstEndProdBy firstEndProdBy, sro.FirstEndProdDate firstEndProdDate,
sro.LatestEndProdBy latestEndProdBy,
sro.LatestEndProdDate latestEndProdDate, sro.FinishedDate finishedDate, sro.FinishedBy finishedBy,
sro.FinishedFlag finishedFlag, sro.PauseFlag pauseFlag,
sro.Remark remark, sro.QtyReported qtyReported, sro.QtyDefected qtyDefected, sro.ReportedFlag reportedFlag
FROM SFDC_RollOps sro
<where>
<if test="site != null and site != ''">
AND sro.Site = #{site}
</if>
<if test="orderNo != null and orderNo != ''">
AND sro.OrderNo = #{orderNo}
</if>
<if test="itemNo != null and itemNo != ''">
AND sro.ItemNo = #{itemNo}
</if>
<if test="seqNo != null and seqNo != ''">
AND sro.SeqNo = #{seqNo}
</if>
<if test="rollNo != null and rollNo != ''">
AND sro.RollNo = #{rollNo}
</if>
</where>
ORDER BY sro.RollNo DESC
</select>
</mapper>
Loading…
Cancel
Save