Commit 93ddd934 sunke

1 条码尺寸从Qisda获取,并与测量尺寸进行比对

2 需求单无库存时,返回Not Found
1 个父辈 3cc971a5
...@@ -9,7 +9,9 @@ import java.util.List; ...@@ -9,7 +9,9 @@ import java.util.List;
*/ */
public interface IComponentManager extends IManager<Component> { public interface IComponentManager extends IManager<Component> {
public Component findByPartNumber(String partNumber); public Component findByPartNumber(String partNumber, String provider);
List<Component> listByPn(String pn);
List<Component> allNeedAlarmComponents(); List<Component> allNeedAlarmComponents();
......
...@@ -57,7 +57,7 @@ public class BarcodeManagerImpl implements IBarcodeManager { ...@@ -57,7 +57,7 @@ public class BarcodeManagerImpl implements IBarcodeManager {
@Override @Override
public Barcode save(Barcode barcode) throws ValidateException{ public Barcode save(Barcode barcode) throws ValidateException{
validateSave(barcode); validateSave(barcode);
Component component = componentManager.findByPartNumber(barcode.getPartNumber()); Component component = componentManager.findByPartNumber(barcode.getPartNumber(), barcode.getProvider());
if(component != null){ if(component != null){
if(barcode.getMaxStorageTime() <= 0){ if(barcode.getMaxStorageTime() <= 0){
barcode.setMaxStorageTime(component.getMaxStorageTime()); barcode.setMaxStorageTime(component.getMaxStorageTime());
...@@ -119,7 +119,7 @@ public class BarcodeManagerImpl implements IBarcodeManager { ...@@ -119,7 +119,7 @@ public class BarcodeManagerImpl implements IBarcodeManager {
protected boolean validateComponent(Barcode barcode) { protected boolean validateComponent(Barcode barcode) {
return componentManager.findByPartNumber(barcode.getPartNumber()) != null; return componentManager.findByPartNumber(barcode.getPartNumber(),barcode.getProvider()) != null;
} }
protected boolean validateUnique(Barcode barcode) { protected boolean validateUnique(Barcode barcode) {
......
...@@ -33,10 +33,17 @@ public class ComponentManagerImpl implements IComponentManager { ...@@ -33,10 +33,17 @@ public class ComponentManagerImpl implements IComponentManager {
} }
@Override @Override
public Component findByPartNumber(String partNumber) { public Component findByPartNumber(String partNumber, String provider) {
if (StringUtils.isEmpty(partNumber)) if (StringUtils.isEmpty(partNumber))
return null; return null;
else return componentDao.findOneByCondition(new String[] {"partNumber"}, new String[] {partNumber}); else return componentDao.findOneByCondition(new String[] {"partNumber","provider"}, new String[] {partNumber,provider});
}
@Override
public List<Component> listByPn(String pn){
Criteria c = Criteria.where("partNumber").is(pn);
Query query = Query.query(c);
return componentDao.findByQuery(query);
} }
@Override @Override
...@@ -64,7 +71,7 @@ public class ComponentManagerImpl implements IComponentManager { ...@@ -64,7 +71,7 @@ public class ComponentManagerImpl implements IComponentManager {
public Component save(Component component) throws ValidateException{ public Component save(Component component) throws ValidateException{
String partNumber = component.getPartNumber(); String partNumber = component.getPartNumber();
Component dbComponent = findByPartNumber(partNumber); Component dbComponent = findByPartNumber(partNumber, component.getProvider());
if(dbComponent != null){ if(dbComponent != null){
//数据库中已存在,但不是更新(要保存的没有 ID,或者有 ID但与数据库中的 ID不一致) //数据库中已存在,但不是更新(要保存的没有 ID,或者有 ID但与数据库中的 ID不一致)
if(Strings.isNullOrEmpty(component.getId()) || !dbComponent.getId().equals(component.getId()) ){ if(Strings.isNullOrEmpty(component.getId()) || !dbComponent.getId().equals(component.getId()) ){
......
...@@ -177,7 +177,7 @@ public class TcpServer { ...@@ -177,7 +177,7 @@ public class TcpServer {
barcode.setAmount(amount); barcode.setAmount(amount);
//未补过料 //未补过料
if(Strings.isNullOrEmpty(barcode.getNextBarcode())){ if(Strings.isNullOrEmpty(barcode.getNextBarcode())){
Component component = componentManager.findByPartNumber(barcode.getPartNumber()); Component component = componentManager.findByPartNumber(barcode.getPartNumber(), barcode.getProvider());
int alarmAmount = component.getAlarmAmount(); int alarmAmount = component.getAlarmAmount();
if(amount <= alarmAmount){ if(amount <= alarmAmount){
StoragePos pos = storagePosManager.findPartNumberPos(null,barcode.getPartNumber(),new ArrayList<String>(), StorageConstants.CHECKOUT_TYPE.FIFO); StoragePos pos = storagePosManager.findPartNumberPos(null,barcode.getPartNumber(),new ArrayList<String>(), StorageConstants.CHECKOUT_TYPE.FIFO);
......
...@@ -185,7 +185,7 @@ public class FileUploadController extends BaseFormController { ...@@ -185,7 +185,7 @@ public class FileUploadController extends BaseFormController {
log.debug("Parse component to list with size: " + list.size()); log.debug("Parse component to list with size: " + list.size());
if (list != null && list.size() > 0) { if (list != null && list.size() > 0) {
for (ComponentExcel componentExcel : list) { for (ComponentExcel componentExcel : list) {
Component component = componentManager.findByPartNumber(componentExcel.getPartNumber()); Component component = componentManager.findByPartNumber(componentExcel.getPartNumber(), null);
if (component == null) { if (component == null) {
component = new Component(); component = new Component();
} }
...@@ -254,7 +254,7 @@ public class FileUploadController extends BaseFormController { ...@@ -254,7 +254,7 @@ public class FileUploadController extends BaseFormController {
if(partNumber.isEmpty()){ if(partNumber.isEmpty()){
log.warn("行[partNumber="+partNumber + ","+"reelId="+reelId+",qty="+qty+"]中PN 为空,此行忽略"); log.warn("行[partNumber="+partNumber + ","+"reelId="+reelId+",qty="+qty+"]中PN 为空,此行忽略");
}else{ }else{
Component component = componentManager.findByPartNumber(partNumber); Component component = componentManager.findByPartNumber(partNumber,"");
if(component == null){ if(component == null){
log.info("未找到["+ partNumber+"]的档案,创建新的数量为["+qty+"]档案"); log.info("未找到["+ partNumber+"]的档案,创建新的数量为["+qty+"]档案");
component = new Component(); component = new Component();
......
...@@ -65,7 +65,7 @@ public class BarcodeGenerateController extends BaseUpdateController { ...@@ -65,7 +65,7 @@ public class BarcodeGenerateController extends BaseUpdateController {
barcode.setStatus(StorageConstants.BARCODE_STATUS.NEW); barcode.setStatus(StorageConstants.BARCODE_STATUS.NEW);
barcode.setUsed(false); barcode.setUsed(false);
//String componentId = barcode.getComponentId(); //String componentId = barcode.getComponentId();
Component component = componentManager.findByPartNumber(barcode.getPartNumber()); Component component = componentManager.findByPartNumber(barcode.getPartNumber(),barcode.getProvider());
if(StringUtils.isEmpty(barcode.getBarcode())) { if(StringUtils.isEmpty(barcode.getBarcode())) {
String bs = getUuid(); String bs = getUuid();
......
...@@ -282,7 +282,7 @@ public class BoxChartController extends BaseController { ...@@ -282,7 +282,7 @@ public class BoxChartController extends BaseController {
List<SolderInventoryItem> results = Lists.newArrayList(); List<SolderInventoryItem> results = Lists.newArrayList();
for (InventoryItem inventoryItem : storageTypeInventory.values()) { for (InventoryItem inventoryItem : storageTypeInventory.values()) {
String partNumber = inventoryItem.getPartNumber(); String partNumber = inventoryItem.getPartNumber();
Component component = componentManager.findByPartNumber(partNumber); Component component = componentManager.findByPartNumber(partNumber, "");
int minStoreNum = component.getMinStoreNum(); int minStoreNum = component.getMinStoreNum();
int maxStoreNum = component.getMaxStoreNum(); int maxStoreNum = component.getMaxStoreNum();
......
...@@ -106,7 +106,7 @@ public class ComponentUpdateController extends BaseUpdateController{ ...@@ -106,7 +106,7 @@ public class ComponentUpdateController extends BaseUpdateController{
if(Strings.isNullOrEmpty(component.getFixtureNumber())){ if(Strings.isNullOrEmpty(component.getFixtureNumber())){
throw new ValidateException("夹具编号不能为空"); throw new ValidateException("夹具编号不能为空");
}else { }else {
Component fixture = componentmanager.findByPartNumber(component.getFixtureNumber()); Component fixture = componentmanager.findByPartNumber(component.getFixtureNumber(), null);
if(fixture == null){ if(fixture == null){
throw new ValidateException("不存在编号为【"+component.getFixtureNumber()+"】的夹具"); throw new ValidateException("不存在编号为【"+component.getFixtureNumber()+"】的夹具");
}else{ }else{
......
...@@ -16,10 +16,7 @@ import com.myproject.manager.IBarcodeManager; ...@@ -16,10 +16,7 @@ import com.myproject.manager.IBarcodeManager;
import com.myproject.manager.IComponentManager; import com.myproject.manager.IComponentManager;
import com.myproject.manager.IStorageManager; import com.myproject.manager.IStorageManager;
import com.myproject.manager.IStoragePosManager; import com.myproject.manager.IStoragePosManager;
import com.myproject.util.BarcodeRule; import com.myproject.util.*;
import com.myproject.util.DateUtil;
import com.myproject.util.PLATE_SIZE;
import com.myproject.util.StorageConstants;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -210,6 +207,56 @@ public class DataCache{ ...@@ -210,6 +207,56 @@ public class DataCache{
return settings; return settings;
} }
private Component getComponent(Barcode barcode) throws ValidateException {
boolean needSave = false;
Component component = componentManager.findByPartNumber(barcode.getPartNumber(), barcode.getProvider());
if(component == null){
component = componentManager.findByPartNumber(barcode.getPartNumber(), null);
if(component != null){
if(component.getProvider() == null){
component.setProvider(barcode.getProvider());
needSave = true;
}
}
}
if(component == null){
if(barcode.getPlateSize() > 0){
log.info("自动添加["+barcode.getPartNumber()+"]的档案信息");
component = new Component();
component.setPartNumber(barcode.getPartNumber());
component.setAmount(barcode.getAmount());
component.setPlateSize(barcode.getPlateSize());
component.setHeight(barcode.getHeight());
component.setName(barcode.getPartNumber());
component.setProvider(barcode.getProvider());
needSave = true;
}
}
if(component == null){
throw new ValidateException("档案不存在");
}
if(!component.isSizeConfirmed()){
//尺寸未确认过,从Qisda获取
PLATE_SIZE plateSize = QisdaApi.PartNoRule(barcode.getPartNumber(), barcode.getProvider());
if(plateSize != null){
component.setPlateSize(plateSize.getW());
component.setHeight(plateSize.getH());
if(Strings.isNullOrEmpty(component.getProvider())){
component.setProvider(barcode.getProvider());
}
component.setSizeConfirmed(true);
needSave = true;
}
}
if(needSave){
component = componentManager.save(component);
}
return component;
}
/** /**
* 解析条码为单个 Barcode * 解析条码为单个 Barcode
*/ */
...@@ -256,34 +303,36 @@ public class DataCache{ ...@@ -256,34 +303,36 @@ public class DataCache{
} }
} }
} }
Component component = componentManager.findByPartNumber(barcode.getPartNumber());
int validDay = 0; try {
if(component != null){ Component component = getComponent(barcode);
validDay = component.getValidDay(); codeBeanFromRule.setError(null);
codeBeanFromRule.setShowImg(component.getShowImg());
if(component.isSizeConfirmed()){ if(component.isSizeConfirmed()){
//尺寸已经确认的,判断尺寸,如果大小不符合,直接NG,如果大小符合,尺寸差别在4mm内的修改尺寸 //尺寸已经确认的,判断尺寸,如果大小不符合,直接NG,如果大小符合,尺寸差别在4mm内的修改尺寸
if(barcode.getPlateSize() != component.getPlateSize()){ if(barcode.getPlateSize() != component.getPlateSize()){
String msg = barcode.getBarcode() + "测量尺寸["+barcode.getSizeStr()+"]与确认PN尺寸["+component.getSizeStr()+"]不符"; String msg = barcode.getBarcode() + "测量尺寸["+barcode.getSizeStr()+"]与给定尺寸["+component.getSizeStr()+"]不符";
codeBeanFromRule.setError(msg); codeBeanFromRule.setError(msg);
throw new ValidateException(msg);
}else{ }else{
//如果厚度小于4mm,使用确认的尺寸入库 //如果厚度小于4mm,使用确认的尺寸入库
int diffHeight = barcode.getHeight() - component.getHeight(); int diffHeight = barcode.getHeight() - component.getHeight();
if(diffHeight !=0 && Math.abs(diffHeight) <= 4){ if(Math.abs(diffHeight) > 4){
log.info(barcode.getBarcode() + "测量尺寸["+barcode.getSizeStr()+"]与确认PN尺寸["+component.getSizeStr()+"]厚度误差在4mm以内,使用确认的尺寸进行入库"); String msg = barcode.getBarcode() + "测量厚度["+barcode.getSizeStr()+"]与给定厚度["+component.getSizeStr()+"]误差过大";
try { //codeBeanFromRule.setError(msg);
barcode.setHeight(component.getHeight()); throw new ValidateException(msg);
barcodeManager.save(barcode); }else if(diffHeight !=0 && Math.abs(diffHeight) <= 4){
}catch (Exception e){ log.info(barcode.getBarcode() + "测量尺寸["+barcode.getSizeStr()+"]与给定尺寸["+component.getSizeStr()+"]厚度误差在4mm以内,使用给定尺寸进行入库");
barcode.setHeight(component.getHeight());
} barcodeManager.save(barcode);
} }
} }
} }
} catch (ValidateException e) {
codeBeanFromRule.setError(e.getMessage());
log.info(e.getMessage());
} }
codeBeanFromRule.setError(null);
codeBeanFromRule.setCodeStr(barcode.getBarcode()); codeBeanFromRule.setCodeStr(barcode.getBarcode());
codeBeanFromRule.setBarcode(barcode); codeBeanFromRule.setBarcode(barcode);
return codeBeanFromRule; return codeBeanFromRule;
...@@ -292,74 +341,50 @@ public class DataCache{ ...@@ -292,74 +341,50 @@ public class DataCache{
try{ try{
//如果有料盘尺寸,重新设置料盘尺寸信息,没有档案时自动添加档案 //如果有料盘尺寸,重新设置料盘尺寸信息,没有档案时自动添加档案
if(codeBeanFromRule.hasReelSizeInfo()){ if(codeBeanFromRule.hasReelSizeInfo()){
//log.info("料盘["+barcode.getBarcode()+"]的尺寸信息从["+barcode.getPlateSize()+"x"+barcode.getHeight()+"]设置为["+codeBeanFromRule.getReelWidth()+"x"+codeBeanFromRule.getReelHeight()+"]"); barcodeFromRule.setPlateSize(codeBeanFromRule.getReelWidth());
Component component = componentManager.findByPartNumber(barcodeFromRule.getPartNumber()); barcodeFromRule.setHeight(codeBeanFromRule.getReelHeight());
}
if(component == null){
log.info("自动添加["+barcodeFromRule.getPartNumber()+"]的档案信息["+codeBeanFromRule.getReelWidth()+"x"+codeBeanFromRule.getReelHeight()+"]");
component = new Component();
component.setPartNumber(barcodeFromRule.getPartNumber());
component.setAmount(barcodeFromRule.getAmount());
component.setPlateSize(barcodeFromRule.getPlateSize());
component.setHeight(barcodeFromRule.getHeight());
component.setName(barcodeFromRule.getPartNumber());
component.setProvider(barcodeFromRule.getProvider());
componentManager.save(component);
}else{
//尺寸已经确认的,不再更新尺寸
if(!component.isSizeConfirmed()){
//如果 barcode 里的料盘信息比 Component 中的大,使用比较大的,防止放不进去撞击
if(codeBeanFromRule.getReelHeight() > component.getHeight() || codeBeanFromRule.getReelWidth() > component.getPlateSize()){
log.info("更新物料["+component.getPartNumber()+"]档案尺寸["+component.getPlateSize()+"x"+component.getHeight()+"]为["+codeBeanFromRule.getReelWidth()+"x"+codeBeanFromRule.getReelHeight()+"]");
component.setPlateSize(barcodeFromRule.getPlateSize());
component.setHeight(barcodeFromRule.getHeight());
componentManager.save(component);
}
}else{
Component component = getComponent(barcodeFromRule);
if(component.isSizeConfirmed()){
//尺寸已经确认的,判断尺寸,如果大小不符合,直接NG,如果大小符合,尺寸差别在4mm内的修改尺寸
if(barcodeFromRule.getPlateSize() != component.getPlateSize()){
String msg = barcodeFromRule.getBarcode() + "测量尺寸["+barcodeFromRule.getSizeStr()+"]与给定尺寸["+component.getSizeStr()+"]不符";
codeBeanFromRule.setError(msg);
throw new ValidateException(msg);
}else{
//如果厚度小于4mm,使用确认的尺寸入库
int diffHeight = barcodeFromRule.getHeight() - component.getHeight();
if(Math.abs(diffHeight) > 4){
String msg = barcodeFromRule.getBarcode() + "测量厚度["+barcodeFromRule.getSizeStr()+"]与给定厚度["+component.getSizeStr()+"]误差过大";
codeBeanFromRule.setError(msg);
throw new ValidateException(msg);
}else if(diffHeight !=0 && Math.abs(diffHeight) <= 4){
log.info(barcodeFromRule.getBarcode() + "测量尺寸["+barcodeFromRule.getSizeStr()+"]与给定寸["+component.getSizeStr()+"]厚度误差在4mm以内,使用给定尺寸进行入库");
barcodeFromRule.setHeight(component.getHeight());
} }
//codeBeanFromRule.setShowImg(component.getShowImg());
} }
} }
//codeBeanFromRule.setShowImg(component.getShowImg());
boolean needAddNew = true; Date produceDate = barcodeFromRule.getProduceDate();
if(isProductionFor(CUSTOMER.LIAN_DIAN)){ if(produceDate != null && barcodeFromRule.getExpireDate() == null){
//联电的唯一码中必须带有-,否则无效 int validDay = component.getValidDay();
if(!barcodeFromRule.getBarcode().contains("-")){ if( validDay > 0){
needAddNew = false; log.info("设置"+barcodeFromRule.getBarcode()+"的过期时间");
log.info("唯一码["+barcodeFromRule.getBarcode()+"]中不带符号-,忽略"); Date expireDate = DateUtil.addDays(produceDate, validDay);
return null; barcodeFromRule.setExpireDate(expireDate);
} }
} }
if(needAddNew){
log.info("自动添加条码"+barcodeItemStr+"到数据库中");
Component component = componentManager.findByPartNumber(barcodeFromRule.getPartNumber());
if(component == null){
throw new ValidateException("档案不存在");
}
//codeBeanFromRule.setShowImg(component.getShowImg()); log.info("自动添加条码"+barcodeItemStr+"到数据库中");
Date produceDate = barcodeFromRule.getProduceDate(); barcode = barcodeManager.save(barcodeFromRule);
if(produceDate != null && barcodeFromRule.getExpireDate() == null){ codeBeanFromRule.setCodeStr(barcode.getBarcode());
int validDay = component.getValidDay(); codeBeanFromRule.setBarcode(barcode);
if( validDay > 0){ codeBeanFromRule.setError(null);
log.info("设置"+barcodeFromRule.getBarcode()+"的过期时间");
Date expireDate = DateUtil.addDays(produceDate, validDay);
barcodeFromRule.setExpireDate(expireDate);
barcodeManager.save(barcodeFromRule);
}
}
barcode = barcodeManager.save(barcodeFromRule);
codeBeanFromRule.setCodeStr(barcode.getBarcode());
codeBeanFromRule.setBarcode(barcode);
codeBeanFromRule.setError(null);
}
}catch (ValidateException ve){ }catch (ValidateException ve){
//档案不存在 //档案不存在
codeBeanFromRule.setError("x档案 "+barcodeFromRule.getPartNumber()+" 不存在"); codeBeanFromRule.setError(ve.getMessage());
log.warn("x档案"+barcodeFromRule.getPartNumber()+"不存在"); log.info(ve.getMessage());
} }
//解析成功了,直接返回 //解析成功了,直接返回
return codeBeanFromRule; return codeBeanFromRule;
......
...@@ -66,7 +66,7 @@ public class MesApiController extends BaseController { ...@@ -66,7 +66,7 @@ public class MesApiController extends BaseController {
log.info("收到 MES 的 数据同步信息"+Partnumber+"【"+w+"x"+h+"】"); log.info("收到 MES 的 数据同步信息"+Partnumber+"【"+w+"x"+h+"】");
Component c = componentManager.findByPartNumber(Partnumber); Component c = componentManager.findByPartNumber(Partnumber, null);
if(c == null){ if(c == null){
c = new Component(); c = new Component();
} }
...@@ -98,7 +98,7 @@ public class MesApiController extends BaseController { ...@@ -98,7 +98,7 @@ public class MesApiController extends BaseController {
String PARTNUMBER = checkParameter(request,"PN"); String PARTNUMBER = checkParameter(request,"PN");
String QTY = checkParameter(request,"QTY"); String QTY = checkParameter(request,"QTY");
log.info("收到条码同步信息:RI="+REEL_ID + " PN=" + PARTNUMBER + " QTY="+QTY); log.info("收到条码同步信息:RI="+REEL_ID + " PN=" + PARTNUMBER + " QTY="+QTY);
Component c = componentManager.findByPartNumber(PARTNUMBER); Component c = componentManager.findByPartNumber(PARTNUMBER, null);
if(c == null){ if(c == null){
return "Error: 物料编号[" + PARTNUMBER + "]的档案不存在"; return "Error: 物料编号[" + PARTNUMBER + "]的档案不存在";
} }
......
...@@ -181,6 +181,12 @@ public class QisdaApiController extends BaseController { ...@@ -181,6 +181,12 @@ public class QisdaApiController extends BaseController {
map.put("so", appendInfo.getSo()); map.put("so", appendInfo.getSo());
bindReelInfos.add(map); bindReelInfos.add(map);
} }
}else{
//无库存,返回Not Found
Map<String,String> map = new HashMap<>();
map.put("reelId", reelId);
map.put("so", "Not Found");
bindReelInfos.add(map);
} }
} }
} catch (Exception e) { } catch (Exception e) {
...@@ -935,17 +941,23 @@ public class QisdaApiController extends BaseController { ...@@ -935,17 +941,23 @@ public class QisdaApiController extends BaseController {
//缺料,查看是否有本工单,同PN的,如果有抢一个过来 //缺料,查看是否有本工单,同PN的,如果有抢一个过来
//缺料,料架留空 //缺料,料架留空
Component c = componentManager.findByPartNumber(outItem.getPn()); boolean hasBigSizePn = false;
if(c != null){ List<Component> pnList = componentManager.listByPn(outItem.getPn());
String shelfType = StorageConstants.SHEFL_TYPE.D; for (Component c : pnList) {
if(c.getPlateSize() > 7 || c.getHeight() > 12){ if(c.getPlateSize() > 7 || c.getHeight() > 12){
shelfType = StorageConstants.SHEFL_TYPE.C; hasBigSizePn = true;
break;
} }
log.info(outItem.getSlotlocation() + "["+outItem.getPn()+"]缺料,保留"+shelfType+"类型架位"); }
InquiryShelfBean.addEmptyLoc(outItem, shelfType); if(pnList.isEmpty()){
}else{
log.error("未找到物料["+outItem.getPn()+"]的尺寸信息,保留C类型架位"); log.error("未找到物料["+outItem.getPn()+"]的尺寸信息,保留C类型架位");
InquiryShelfBean.addEmptyLoc(outItem, StorageConstants.SHEFL_TYPE.C); InquiryShelfBean.addEmptyLoc(outItem, StorageConstants.SHEFL_TYPE.C);
}else if(hasBigSizePn){
log.info(outItem.getSlotlocation() + "["+outItem.getPn()+"]缺料,且PN数据中有大料,保留C类型架位");
InquiryShelfBean.addEmptyLoc(outItem, StorageConstants.SHEFL_TYPE.C);
}else {
log.info(outItem.getSlotlocation() + "["+outItem.getPn()+"]缺料,保留D类型架位");
InquiryShelfBean.addEmptyLoc(outItem, StorageConstants.SHEFL_TYPE.D);
} }
} }
return tasks; return tasks;
......
...@@ -1854,10 +1854,10 @@ public class TaskService implements ITaskService { ...@@ -1854,10 +1854,10 @@ public class TaskService implements ITaskService {
barcode.setCheckOutDate(null,""); barcode.setCheckOutDate(null,"");
barcode.setPosName(task.getPosName()); barcode.setPosName(task.getPosName());
barcode.setInitialAmount(barcode.getAmount()); barcode.setInitialAmount(barcode.getAmount());
if(Strings.isNullOrEmpty(barcode.getProviderNumber())){//补上供应商编号 // if(Strings.isNullOrEmpty(barcode.getProviderNumber())){//补上供应商编号
Component component = componentManager.findByPartNumber(barcode.getPartNumber()); // Component component = componentManager.findByPartNumber(barcode.getPartNumber());
barcode.setProviderNumber(component.getProviderNumber()); // barcode.setProviderNumber(component.getProviderNumber());
} // }
// AppendInfo appendInfo = barcode.getAppendInfo(); // AppendInfo appendInfo = barcode.getAppendInfo();
// appendInfo.setDnNo(task.getSourceName()); // appendInfo.setDnNo(task.getSourceName());
......
...@@ -112,7 +112,7 @@ ...@@ -112,7 +112,7 @@
<!--/span--> <!--/span-->
<div class="col-md-6"> <div class="col-md-6">
<div class="form-group"> <div class="form-group">
<label class="control-label col-md-3"><fmt:message key="component.providerNumber"/> <label class="control-label col-md-3"><fmt:message key="component.provider"/>
:</label> :</label>
<div class="col-md-9"> <div class="col-md-9">
...@@ -290,12 +290,12 @@ ...@@ -290,12 +290,12 @@
$(this).attr("placeholder", codeValue); $(this).attr("placeholder", codeValue);
$(this).val(""); $(this).val("");
$.post("${ctx}/service/store/resolveBarcode", {code: codeValue}, function (data) { $.post("${ctx}/service/store/resolveBarcode", {code: codeValue}, function (data) {
if (data.error == null) { if (data.valid) {
$("#barcode").text(data.barcode.barcode); $("#barcode").text(data.barcode.barcode);
$("#partNumber").text(data.barcode.partNumber); $("#partNumber").text(data.barcode.partNumber);
$("#batch").text(data.barcode.batch); $("#batch").text(data.barcode.batch);
$("#amount").text(data.barcode.amount); $("#amount").text(data.barcode.amount);
$("#providerNumber").text(data.barcode.providerNumber); $("#providerNumber").text(data.barcode.provider);
$("#modifyNum").focus(); $("#modifyNum").focus();
} else { } else {
printErrorMessage(data.error); printErrorMessage(data.error);
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!