Commit da33cb54 LN

工单发料增量字段修改

1 个父辈 69da045c
...@@ -2,12 +2,9 @@ package com.neotel.smfcore.core.order; ...@@ -2,12 +2,9 @@ package com.neotel.smfcore.core.order;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.google.common.base.Strings; import com.google.common.base.Strings;
import com.neotel.smfcore.common.bean.ResultBean;
import com.neotel.smfcore.common.exception.ValidateException; import com.neotel.smfcore.common.exception.ValidateException;
import com.neotel.smfcore.common.utils.Constants; import com.neotel.smfcore.common.utils.Constants;
import com.neotel.smfcore.core.barcode.service.manager.IBarcodeManager;
import com.neotel.smfcore.core.barcode.service.manager.IComponentManager; import com.neotel.smfcore.core.barcode.service.manager.IComponentManager;
import com.neotel.smfcore.core.barcode.service.po.Barcode;
import com.neotel.smfcore.core.barcode.service.po.Component; import com.neotel.smfcore.core.barcode.service.po.Component;
import com.neotel.smfcore.core.device.enums.OP; import com.neotel.smfcore.core.device.enums.OP;
import com.neotel.smfcore.core.device.enums.OP_STATUS; import com.neotel.smfcore.core.device.enums.OP_STATUS;
...@@ -27,7 +24,7 @@ import com.neotel.smfcore.core.system.listener.ITaskListener; ...@@ -27,7 +24,7 @@ import com.neotel.smfcore.core.system.listener.ITaskListener;
import com.neotel.smfcore.core.system.service.po.DataLog; import com.neotel.smfcore.core.system.service.po.DataLog;
import com.neotel.smfcore.core.system.util.TaskService; import com.neotel.smfcore.core.system.util.TaskService;
import com.neotel.smfcore.hikvision.HikApi; import com.neotel.smfcore.hikvision.HikApi;
import com.neotel.smfcore.hikvision.bean.OrderItemInfo; import com.neotel.smfcore.hikvision.bean.HikOrderInfo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -327,7 +324,7 @@ public class LiteOrderCache implements ITaskListener { ...@@ -327,7 +324,7 @@ public class LiteOrderCache implements ITaskListener {
//判断是工单号查询还是补料单号查询 //判断是工单号查询还是补料单号查询
List<Object> apiResults = null; List<Object> apiResults = null;
List<OrderItemInfo> newItems = null; List<HikOrderInfo> newItems = null;
if (ObjectUtil.isNotEmpty(liteOrder.getReplenishmentNo())) { if (ObjectUtil.isNotEmpty(liteOrder.getReplenishmentNo())) {
// 7.9补料单发料状态查询接口 // 7.9补料单发料状态查询接口
apiResults = HikApi.updateRepOrderApi(userName, liteOrder.getReplenishmentNo()); apiResults = HikApi.updateRepOrderApi(userName, liteOrder.getReplenishmentNo());
...@@ -345,11 +342,11 @@ public class LiteOrderCache implements ITaskListener { ...@@ -345,11 +342,11 @@ public class LiteOrderCache implements ITaskListener {
addOrderToMap(liteOrder); addOrderToMap(liteOrder);
return liteOrder; return liteOrder;
} else { } else {
newItems = (ArrayList<OrderItemInfo>) apiResults.get(1); newItems = (ArrayList<HikOrderInfo>) apiResults.get(1);
} }
} }
if (newItems != null) { if (newItems != null) {
for (OrderItemInfo apiItems : newItems for (HikOrderInfo apiItems : newItems
) { ) {
LiteOrderItem newItem = apiItems.crateOrderItem(liteOrder.getOrderNo()); LiteOrderItem newItem = apiItems.crateOrderItem(liteOrder.getOrderNo());
liteOrder = updateOrderItem(liteOrder, newItem); liteOrder = updateOrderItem(liteOrder, newItem);
......
...@@ -23,7 +23,7 @@ import com.neotel.smfcore.core.system.rest.bean.dto.TaskDto; ...@@ -23,7 +23,7 @@ import com.neotel.smfcore.core.system.rest.bean.dto.TaskDto;
import com.neotel.smfcore.core.system.rest.bean.mapstruct.TaskMapper; import com.neotel.smfcore.core.system.rest.bean.mapstruct.TaskMapper;
import com.neotel.smfcore.core.system.service.po.DataLog; import com.neotel.smfcore.core.system.service.po.DataLog;
import com.neotel.smfcore.core.system.util.TaskService; import com.neotel.smfcore.core.system.util.TaskService;
import com.neotel.smfcore.hikvision.bean.HikOutInfo; import com.neotel.smfcore.hikvision.bean.HikOrderInfo;
import com.neotel.smfcore.security.annotation.AnonymousAccess; import com.neotel.smfcore.security.annotation.AnonymousAccess;
import com.neotel.smfcore.security.bean.FileProperties; import com.neotel.smfcore.security.bean.FileProperties;
import com.neotel.smfcore.security.service.manager.IGroupManager; import com.neotel.smfcore.security.service.manager.IGroupManager;
...@@ -45,7 +45,6 @@ import org.springframework.web.bind.annotation.*; ...@@ -45,7 +45,6 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import java.io.File; import java.io.File;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
...@@ -176,13 +175,13 @@ public class OrderController { ...@@ -176,13 +175,13 @@ public class OrderController {
File folder = new File(properties.getPath(), "pos"); File folder = new File(properties.getPath(), "pos");
File localFile = FileUtil.upload(orderFile, folder.getAbsolutePath()); File localFile = FileUtil.upload(orderFile, folder.getAbsolutePath());
// Map<String, List<LiteOrderItem>> itemMap = orderFileWatch.readCsvFile(fileName, localFile.getAbsolutePath()); // Map<String, List<LiteOrderItem>> itemMap = orderFileWatch.readCsvFile(fileName, localFile.getAbsolutePath());
List<HikOutInfo> itemList = orderFileWatch.readCsvFile(fileName, localFile.getAbsolutePath()); List<HikOrderInfo> itemList = orderFileWatch.readCsvFile(fileName, localFile.getAbsolutePath());
if (itemList == null || itemList.size() <= 0) { if (itemList == null || itemList.size() <= 0) {
throw new ValidateException("smfcore.fileError", "文件解析失败"); throw new ValidateException("smfcore.fileError", "文件解析失败");
} }
for (HikOutInfo outInfo : for (HikOrderInfo outInfo :
itemList) { itemList) {
//查找工单是否存在 //查找工单是否存在
......
package com.neotel.smfcore.core.order.service.po; package com.neotel.smfcore.core.order.service.po;
import com.neotel.smfcore.common.base.BasePo; import com.neotel.smfcore.common.base.BasePo;
import com.neotel.smfcore.common.utils.StorageConstants;
import com.neotel.smfcore.common.utils.StringUtils; import com.neotel.smfcore.common.utils.StringUtils;
import com.neotel.smfcore.core.order.enums.LITEORDER_STATUS; import com.neotel.smfcore.core.order.enums.LITEORDER_STATUS;
import com.neotel.smfcore.hikvision.bean.HikOutInfo; import com.neotel.smfcore.hikvision.bean.HikOrderInfo;
import lombok.Data; import lombok.Data;
import org.springframework.data.annotation.Transient; import org.springframework.data.annotation.Transient;
import org.springframework.data.mongodb.core.mapping.Document; import org.springframework.data.mongodb.core.mapping.Document;
...@@ -268,7 +267,7 @@ public class LiteOrder extends BasePo implements Serializable { ...@@ -268,7 +267,7 @@ public class LiteOrder extends BasePo implements Serializable {
return startDate; return startDate;
} }
public void UpdateOutInfo(HikOutInfo outInfo){ public void UpdateOutInfo(HikOrderInfo outInfo){
//更改工单信息 //更改工单信息
this.setJobNo(outInfo.getJobNo()); this.setJobNo(outInfo.getJobNo());
......
...@@ -7,17 +7,14 @@ import com.neotel.smfcore.common.utils.SmbUtil; ...@@ -7,17 +7,14 @@ import com.neotel.smfcore.common.utils.SmbUtil;
import com.neotel.smfcore.core.device.util.DataCache; import com.neotel.smfcore.core.device.util.DataCache;
import com.neotel.smfcore.core.order.LiteOrderCache; import com.neotel.smfcore.core.order.LiteOrderCache;
import com.neotel.smfcore.core.order.service.manager.ILiteOrderManager; import com.neotel.smfcore.core.order.service.manager.ILiteOrderManager;
import com.neotel.smfcore.core.order.service.po.LiteOrder;
import com.neotel.smfcore.core.order.service.po.LiteOrderItem;
import com.neotel.smfcore.core.system.bean.OrderSetting; import com.neotel.smfcore.core.system.bean.OrderSetting;
import com.neotel.smfcore.hikvision.bean.HikOutInfo; import com.neotel.smfcore.hikvision.bean.HikOrderInfo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.logging.log4j.util.Strings; import org.apache.logging.log4j.util.Strings;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.io.File; import java.io.File;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledExecutorService;
...@@ -292,11 +289,11 @@ public class OrderFileWatch { ...@@ -292,11 +289,11 @@ public class OrderFileWatch {
// } // }
public List<HikOutInfo> readCsvFile(String fileName, String fileURL) { public List<HikOrderInfo> readCsvFile(String fileName, String fileURL) {
try { try {
fileName = fileName.replace(".csv", ""); fileName = fileName.replace(".csv", "");
log.info("开始更解析上传的工单"); log.info("开始更解析上传的工单");
List<HikOutInfo> items = Lists.newArrayList(); List<HikOrderInfo> items = Lists.newArrayList();
OrderSetting orderSetting = dataCache.getOrderSetting(); OrderSetting orderSetting = dataCache.getOrderSetting();
...@@ -310,7 +307,7 @@ public class OrderFileWatch { ...@@ -310,7 +307,7 @@ public class OrderFileWatch {
// materialNo String 9 物料号 // materialNo String 9 物料号
// qty Integer 需求数量 // qty Integer 需求数量
// overFlag Integer 超发标识(1是不允许超发,0是允许超发) // overFlag Integer 超发标识(1是不允许超发,0是允许超发)
// increment Integer 发料增量 // prepareIncrement Integer 发料增量
// wemng Integer 排程数量 // wemng Integer 排程数量
CsvReader csvRead = CsvReader.newReader(fileURL, "jobNo", "jobNo"); CsvReader csvRead = CsvReader.newReader(fileURL, "jobNo", "jobNo");
...@@ -324,7 +321,7 @@ public class OrderFileWatch { ...@@ -324,7 +321,7 @@ public class OrderFileWatch {
int materialNoIndex = csvRead.getIndex("materialNo", "materialNo"); int materialNoIndex = csvRead.getIndex("materialNo", "materialNo");
int qtyIndex = csvRead.getIndex("qty", "qty"); int qtyIndex = csvRead.getIndex("qty", "qty");
int overFlagIndex = csvRead.getIndex("overFlag", "overFlag"); int overFlagIndex = csvRead.getIndex("overFlag", "overFlag");
int incrementIndex = csvRead.getIndex("increment", "increment"); int incrementIndex = csvRead.getIndex("prepareIncrement", "prepareIncrement");
int wemngIndex = csvRead.getIndex("wemng", "wemng"); int wemngIndex = csvRead.getIndex("wemng", "wemng");
int row = 1; int row = 1;
...@@ -339,7 +336,7 @@ public class OrderFileWatch { ...@@ -339,7 +336,7 @@ public class OrderFileWatch {
continue; continue;
} }
try { try {
HikOutInfo item = new HikOutInfo(); HikOrderInfo item = new HikOrderInfo();
item.setJobNo(lineValues[jobNoIndex]); item.setJobNo(lineValues[jobNoIndex]);
item.setStation(lineValues[stationIndex]); item.setStation(lineValues[stationIndex]);
item.setBaseCode(lineValues[baseCodeIndex]); item.setBaseCode(lineValues[baseCodeIndex]);
...@@ -350,7 +347,7 @@ public class OrderFileWatch { ...@@ -350,7 +347,7 @@ public class OrderFileWatch {
item.setMaterialNo(lineValues[materialNoIndex]); item.setMaterialNo(lineValues[materialNoIndex]);
item.setQty(Integer.parseInt(lineValues[qtyIndex])); item.setQty(Integer.parseInt(lineValues[qtyIndex]));
item.setOverFlag(Integer.parseInt(lineValues[overFlagIndex])); item.setOverFlag(Integer.parseInt(lineValues[overFlagIndex]));
item.setIncrement(Integer.parseInt(lineValues[incrementIndex])); item.setPrepareIncrement(Integer.parseInt(lineValues[incrementIndex]));
item.setWemng(Integer.parseInt(lineValues[wemngIndex])); item.setWemng(Integer.parseInt(lineValues[wemngIndex]));
......
...@@ -194,7 +194,7 @@ public class SettingsController { ...@@ -194,7 +194,7 @@ public class SettingsController {
// int wemngIndex = csvRead.getIndex("wemng", "wemng"); // int wemngIndex = csvRead.getIndex("wemng", "wemng");
String[] titleArray = new String[]{"jobNo", "station", "baseCode", "lgort", "workLine", "startDate", "endDate" String[] titleArray = new String[]{"jobNo", "station", "baseCode", "lgort", "workLine", "startDate", "endDate"
, "materialNo", "qty", "overFlag", "increment", "wemng"}; , "materialNo", "qty", "overFlag", "prepareIncrement", "wemng"};
for (String title : for (String title :
titleArray) { titleArray) {
...@@ -221,7 +221,7 @@ public class SettingsController { ...@@ -221,7 +221,7 @@ public class SettingsController {
map.put("materialNo", "materialNo".toUpperCase() + "-" + i); map.put("materialNo", "materialNo".toUpperCase() + "-" + i);
map.put("qty", i * 1000); map.put("qty", i * 1000);
map.put("overFlag", "1"); map.put("overFlag", "1");
map.put("increment", i * 100); map.put("prepareIncrement", i * 100);
map.put("wemng", i * 10); map.put("wemng", i * 10);
maps.add(map); maps.add(map);
} }
......
...@@ -457,7 +457,7 @@ public class HikApi { ...@@ -457,7 +457,7 @@ public class HikApi {
else { else {
log.info(apiName + "返回" + JsonUtil.toJsonStr(responseInfo)); log.info(apiName + "返回" + JsonUtil.toJsonStr(responseInfo));
String dataStr = responseInfo.getData(); String dataStr = responseInfo.getData();
List<OrderItemInfo> list = JsonUtil.toList(dataStr, OrderItemInfo .class); List<HikOrderInfo> list = JsonUtil.toList(dataStr, HikOrderInfo .class);
resultList.add(responseInfo.getCode()); resultList.add(responseInfo.getCode());
resultList.add(list); resultList.add(list);
return resultList; return resultList;
...@@ -564,7 +564,7 @@ public class HikApi { ...@@ -564,7 +564,7 @@ public class HikApi {
} else { } else {
log.info(apiName + "返回" + JsonUtil.toJsonStr(responseInfo)); log.info(apiName + "返回" + JsonUtil.toJsonStr(responseInfo));
String dataStr = responseInfo.getData(); String dataStr = responseInfo.getData();
List<OrderItemInfo> list = JsonUtil.toList(dataStr, OrderItemInfo .class); List<HikOrderInfo> list = JsonUtil.toList(dataStr, HikOrderInfo .class);
resultList.add(responseInfo.getCode()); resultList.add(responseInfo.getCode());
resultList.add(list); resultList.add(list);
return resultList; return resultList;
......
...@@ -10,8 +10,7 @@ import com.neotel.smfcore.core.order.service.manager.ILiteOrderItemManager; ...@@ -10,8 +10,7 @@ import com.neotel.smfcore.core.order.service.manager.ILiteOrderItemManager;
import com.neotel.smfcore.core.order.service.manager.ILiteOrderManager; import com.neotel.smfcore.core.order.service.manager.ILiteOrderManager;
import com.neotel.smfcore.core.order.service.po.LiteOrder; import com.neotel.smfcore.core.order.service.po.LiteOrder;
import com.neotel.smfcore.core.order.service.po.LiteOrderItem; import com.neotel.smfcore.core.order.service.po.LiteOrderItem;
import com.neotel.smfcore.hikvision.bean.HikOutInfo; import com.neotel.smfcore.hikvision.bean.HikOrderInfo;
import com.neotel.smfcore.panacim.PanaMaterial;
import com.neotel.smfcore.security.annotation.AnonymousAccess; import com.neotel.smfcore.security.annotation.AnonymousAccess;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -20,7 +19,6 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -20,7 +19,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -41,7 +39,7 @@ public class HikvisionApiController { ...@@ -41,7 +39,7 @@ public class HikvisionApiController {
@ApiOperation("创建出库单:创建出库需求单,可一次性传入多个") @ApiOperation("创建出库单:创建出库需求单,可一次性传入多个")
@PostMapping(value = "/outInfo") @PostMapping(value = "/outInfo")
@AnonymousAccess @AnonymousAccess
public ResultBean outInfo(@RequestBody List<HikOutInfo> outInfos) { public ResultBean outInfo(@RequestBody List<HikOrderInfo> outInfos) {
// 6.1创建出库单 // 6.1创建出库单
// 接口功能 // 接口功能
// 创建出库需求单,可一次性传入多个 // 创建出库需求单,可一次性传入多个
...@@ -74,7 +72,7 @@ public class HikvisionApiController { ...@@ -74,7 +72,7 @@ public class HikvisionApiController {
// msg string 提示消息 // msg string 提示消息
// data 返回数据 // data 返回数据
if (outInfos != null && outInfos.size() > 0) { if (outInfos != null && outInfos.size() > 0) {
for (HikOutInfo outInfo : for (HikOrderInfo outInfo :
outInfos) { outInfos) {
//查找工单是否存在 //查找工单是否存在
......
...@@ -5,7 +5,6 @@ import com.neotel.smfcore.core.order.service.po.LiteOrderItem; ...@@ -5,7 +5,6 @@ import com.neotel.smfcore.core.order.service.po.LiteOrderItem;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.util.unit.DataUnit;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
...@@ -13,7 +12,7 @@ import java.util.Date; ...@@ -13,7 +12,7 @@ import java.util.Date;
@Slf4j @Slf4j
@Getter @Getter
@Setter @Setter
public class HikOutInfo implements Serializable { public class HikOrderInfo implements Serializable {
/** /**
* jobNo String true 工单号/合单号[合并唯一] * jobNo String true 工单号/合单号[合并唯一]
*/ */
...@@ -59,28 +58,38 @@ public class HikOutInfo implements Serializable { ...@@ -59,28 +58,38 @@ public class HikOutInfo implements Serializable {
/** /**
*qty Integer true 需求数量 *qty Integer true 需求数量
*/ */
protected Integer qty; protected int qty=0;
/** /**
*overFlag Integer true 超发标识[贵重物料](1是不允许超发,0是允许超发) *overFlag Integer true 超发标识[贵重物料](1是不允许超发,0是允许超发)
*/ */
protected Integer overFlag; protected int overFlag=0;
/** // /**
*increment Integer true 发料增量 // *increment Integer true 发料增量
*/ // */
protected Integer increment; // protected int increment=0;
/** /**
*wemng Integer true 排程数量 *wemng Integer true 排程数量
*/ */
protected Integer wemng; protected int wemng=0;
/** /**
*reason String false 移动原因 *reason String false 移动原因
*/ */
protected String reason=""; protected String reason="";
/**
*increment Integer true 发料增量
*/
protected int prepareIncrement=0;
// public int getIncrement(){
// if(increment<=0&&prepareIncrement>=0){
// return prepareIncrement;
// }
// return increment;
// }
public LiteOrderItem crateOrderItem(String orderNo) { public LiteOrderItem crateOrderItem(String orderNo) {
LiteOrderItem item = new LiteOrderItem(); LiteOrderItem item = new LiteOrderItem();
item.setOrderNo(orderNo); item.setOrderNo(orderNo);
...@@ -88,7 +97,7 @@ public class HikOutInfo implements Serializable { ...@@ -88,7 +97,7 @@ public class HikOutInfo implements Serializable {
item.setMaterialNo(this.getMaterialNo()); item.setMaterialNo(this.getMaterialNo());
item.setQty(this.getQty()); item.setQty(this.getQty());
item.setOverFlag(this.getOverFlag()); item.setOverFlag(this.getOverFlag());
item.setIncrement(this.getIncrement()); item.setIncrement(this.getPrepareIncrement());
item.setReason(this.getReason()); item.setReason(this.getReason());
item.setWemng(this.wemng); item.setWemng(this.wemng);
return item; return item;
......
package com.neotel.smfcore.hikvision.bean;
import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
import java.util.Date;
@Getter
@Setter
public class OrderItemInfo extends HikOutInfo {
// jobNo String 16 工单号/合单号
// station String 32 站位号
// baseCode String 16 基地编号
// lgort String 16 库位
// workLine String 16 产线
// startDate String 19 开工时间
// endDate String 19 完工时间
// materialNo String 9 物料号
// qty Integer 需求数量
// overFlag Integer 超发标识(1是不允许超发,0是允许超发)
// prepareIncrement Integer 发料增量
// wemng Integer 排程数量
/**
*increment Integer true 发料增量
*/
private Integer prepareIncrement;
public Integer getIncrement(){
if(getIncrement()<=0&&prepareIncrement>=0){
return prepareIncrement;
}
return increment;
}
}
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!