波次提交
parent
cc566e8b66
commit
f943b8ad32
|
|
@ -6,11 +6,11 @@ public interface WaveDocStatus {
|
|||
*/
|
||||
public static String OPEN = "OPEN";
|
||||
/**
|
||||
* 生效
|
||||
* 已分配
|
||||
*/
|
||||
public static String ACTIVE = "ACTIVE";
|
||||
/**
|
||||
* 分配;
|
||||
* 以下发;
|
||||
*/
|
||||
public static String ALLOCATE = "ALLOCATE";
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -3229,11 +3229,17 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
|
|||
WaveDoc w= commonDao.load(WaveDoc.class, id);
|
||||
List<Task> tids=commonDao.findByQuery(" from Task t where t.agvStatus in(0,-1) and t.waveDoc.id= "+id);
|
||||
Boolean beEnd=false;
|
||||
List<Long> pdids=new ArrayList<Long>();//出库id
|
||||
for(Task t:tids) {
|
||||
PickTicketDetail ptd=commonDao.load(PickTicketDetail.class, t.getPickTicketDetail().getId());
|
||||
PickTicket pt=commonDao.load(PickTicket.class, ptd.getPickTicket().getId());
|
||||
if(!pdids.contains(ptd.getPickTicket().getId())) {
|
||||
pdids.add(ptd.getPickTicket().getId());
|
||||
}
|
||||
if(!pt.getStatus().equals(PickTicketStatus.CHECK)) {
|
||||
pt.setStatus(PickTicketStatus.CHECK);
|
||||
commonDao.store(pt);
|
||||
}
|
||||
t.setStrBill1(UserHolder.getUser().getName());
|
||||
t.setDateBill1(new Date());
|
||||
t.setAgvStatus(1);//1=可以分配分拨墙并下发AGV
|
||||
|
|
@ -3245,6 +3251,14 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
|
|||
if(tids.size()==0) {
|
||||
w.setStatus("ALLOCATE");
|
||||
}
|
||||
//给SAP回传状态
|
||||
if(pdids.size()>0) {
|
||||
for(Long pid:pdids) {
|
||||
List<Task> tasks= commonDao.findByQuery(" from Task t where "
|
||||
+ " t.pickTicketDetail.pickTicket.id="+pid+" and t.planQuantity>0 ");
|
||||
boolean SAPstatus= interfaceReqManager.wmsSapZhuantaihuichuang(tasks, 0,"",1);//状态回传
|
||||
}
|
||||
}
|
||||
//关闭未入波的数据
|
||||
// if(beEnd) {
|
||||
//
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@ import com.dev.swms.server.model.inventory.Task;
|
|||
import com.dev.swms.server.model.receiving.SlotType;
|
||||
import com.dev.swms.server.model.shipping.NewWaveFlag;
|
||||
import com.dev.swms.server.model.shipping.WaveDoc;
|
||||
import com.dev.swms.server.model.shipping.WaveDocStatus;
|
||||
import com.dev.swms.server.service.shipping.NewWaveManager;
|
||||
import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ;
|
||||
|
||||
|
|
@ -122,7 +123,7 @@ public class DefaultNewWaveManager extends DefaultBaseManager implements
|
|||
+ "left join ITEM_KEY ik2 on ik2.id=b.ITEM_KEY_ID "
|
||||
+ "left join item item2 on item2.id=ik2.ITEM_ID "
|
||||
+ "where 1=1 and b.BILLCODE=t.BILLCODE and pt1.BILL_TYPE_ID=1094 and loc2.id=loc.id and item2.id=item.id "
|
||||
// " and b.PLAN_QUANTITY_MU-b.MOVED_QUANTITY_MU>0 "+
|
||||
+ " and b.PLAN_QUANTITY_MU-b.MOVED_QUANTITY_MU>0 "
|
||||
+ " for xml Path('')),1,1,'') as taskId,"
|
||||
+ "item.code as liaohao ,"
|
||||
+ "max(z.id) as kuqu,"
|
||||
|
|
@ -602,6 +603,7 @@ public class DefaultNewWaveManager extends DefaultBaseManager implements
|
|||
}
|
||||
task.setOldZrw(fenPei.gdh + "-"
|
||||
+ (fenPei.chf_fz + seq ));
|
||||
|
||||
}
|
||||
|
||||
// task.setBillCode(fenPei.gdh+"-"+lx+"-"+fenPei.chf_fz);
|
||||
|
|
@ -614,7 +616,9 @@ public class DefaultNewWaveManager extends DefaultBaseManager implements
|
|||
// task.setAgvStatus(-1);//旧逻辑运行,状态不动,先注释
|
||||
// }
|
||||
task.setOldGzz(gongZuoZhan.code);
|
||||
|
||||
|
||||
task.setBillCode(task.getOldZrw());
|
||||
task.setEndRegion(task.getOldGzz());
|
||||
task.setStrBill9(lx+"-"+fenPei.chf_fz);
|
||||
task.setStrBill8(fenPei.twl);
|
||||
this.commonDao.store(task);
|
||||
|
|
@ -1377,7 +1381,8 @@ public class DefaultNewWaveManager extends DefaultBaseManager implements
|
|||
+ " LEFT JOIN ITEM item ON item.id= ik.ITEM_ID "
|
||||
+ " LEFT JOIN WAVE_DOC wd ON wd.id= t.WAVE_DOC_ID "
|
||||
+ " WHERE 1 = 1 AND pt.BILL_TYPE_ID= 1094 and loc.ZONE_ID in (1763,1765,1766) "
|
||||
+ " AND t.agv_Status in (-2) " // (-1,1,2)
|
||||
+ " AND t.agv_Status in (-1,1,2) " // (-1,1,2)
|
||||
+ " AND t.PLAN_QUANTITY>0 and t.MOVED_QUANTITY_MU=0 "
|
||||
+ " AND t.WAVE_DOC_ID IS NOT NULL and t.END_REGION is not null and wd.code!='"
|
||||
+ waveDocCode
|
||||
+ "' "
|
||||
|
|
@ -1530,7 +1535,10 @@ public class DefaultNewWaveManager extends DefaultBaseManager implements
|
|||
//定义工作站最小能效数,自适应开启工作站数
|
||||
//自适应合理开启工作站数gzz_codes,每个工作站暂定60
|
||||
int lx_jianHuoXiaoLv=getValueGzzNumber(lx_sx);
|
||||
List<Object[]> lx_wwc_list=getTaskList(waveDoc.getCode(), NewWaveFlag.LXQ);
|
||||
List<Object[]> lx_wwc_list=getTaskList(waveDoc.getCode(), NewWaveFlag.LXQ);//料箱区任务
|
||||
List<Object[]> hj_wwc_list=getTaskList(waveDoc.getCode(), NewWaveFlag.HJQ);//货架区任务
|
||||
List<Object[]> lk_wwc_list=getTaskList(waveDoc.getCode(), NewWaveFlag.LKQ);//立库区任务
|
||||
|
||||
if(lx_wwc_list.size()<=lx_jianHuoXiaoLv*5){//lx_jianHuoXiaoLv*lx_codes.size()/2
|
||||
List<GongZuoZhan> gzlistGongZuoZhans = new ArrayList<DefaultNewWaveManager.GongZuoZhan>();
|
||||
for (String gongzuozhancode : lx_codes) {
|
||||
|
|
@ -1560,16 +1568,35 @@ public class DefaultNewWaveManager extends DefaultBaseManager implements
|
|||
lkCount += gzz_maps.get(code) == null ? 0 : gzz_maps.get(code);
|
||||
}
|
||||
//有任务没有分配分配工作站错误
|
||||
|
||||
allocateGZZ(lx_wwc_list, lx_codes,
|
||||
(int) lx_sx.getTaskD(), lx_jianHuoXiaoLv, lxCount,
|
||||
gzz_maps);
|
||||
allocateGZZ(getTaskList(waveDoc.getCode(), NewWaveFlag.HJQ), hj_codes,
|
||||
(int) hj_sx.getTaskD(), getValueGzzNumber(hj_sx), hjCount,
|
||||
gzz_maps);
|
||||
allocateGZZ(getTaskList(waveDoc.getCode(), NewWaveFlag.LKQ), lk_codes,
|
||||
(int) lk_sx.getTaskD(), getValueGzzNumber(lk_sx), lkCount,
|
||||
gzz_maps);
|
||||
if(lx_wwc_list.size()>0) {
|
||||
if(lx_codes.size()>0) {
|
||||
allocateGZZ(lx_wwc_list, lx_codes,
|
||||
(int) lx_sx.getTaskD(), lx_jianHuoXiaoLv, lxCount,
|
||||
gzz_maps);
|
||||
}else {
|
||||
throw new BusinessException("请选择料箱区工作站!");
|
||||
}
|
||||
}
|
||||
if(hj_wwc_list.size()>0) {
|
||||
if(hj_codes.size()>0) {
|
||||
allocateGZZ(hj_wwc_list, hj_codes,
|
||||
(int) hj_sx.getTaskD(), getValueGzzNumber(hj_sx), hjCount,
|
||||
gzz_maps);
|
||||
}else {
|
||||
throw new BusinessException("请选择货架区工作站!");
|
||||
}
|
||||
}
|
||||
if(lk_wwc_list.size()>0) {
|
||||
if(lk_codes.size()>0) {
|
||||
allocateGZZ(lk_wwc_list, lk_codes,
|
||||
(int) lk_sx.getTaskD(), getValueGzzNumber(lk_sx), lkCount,
|
||||
gzz_maps);
|
||||
}else {
|
||||
throw new BusinessException("请选择立库工作站!");
|
||||
}
|
||||
}
|
||||
waveDoc.setStatus(WaveDocStatus.ACTIVE);
|
||||
commonDao.store(waveDoc);
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4551,6 +4551,8 @@ public class DefaultPickTicketManager extends DefaultBaseManager implements Pick
|
|||
newTask.setWorker2(t.getWorker2());
|
||||
newTask.setDateBill1(t.getDateBill1());
|
||||
newTask.setStrBill1(t.getStrBill1());
|
||||
newTask.setStrBill10(t.getStrBill10());
|
||||
newTask.setNcrCode(t.getNcrCode());
|
||||
newTask.setStrBill3(t.getStrBill3());
|
||||
commonDao.store(newTask);
|
||||
t.setPlanQuantity(pickedQuantity);
|
||||
|
|
@ -8511,7 +8513,6 @@ public class DefaultPickTicketManager extends DefaultBaseManager implements Pick
|
|||
waveDoc.setEndDate(date2);
|
||||
waveDoc.setPrintCount(taskqty);//拆分行数
|
||||
commonDao.store(waveDoc);
|
||||
// WaveDoc waveDoc=this.load(WaveDoc.class, waveDocId);
|
||||
List<Long> pdids=new ArrayList<Long>();
|
||||
for(Long id:ids){
|
||||
Task task =this.load(Task.class, id);
|
||||
|
|
@ -8530,10 +8531,9 @@ public class DefaultPickTicketManager extends DefaultBaseManager implements Pick
|
|||
if(pdids.size()>0) {
|
||||
for(Long pid:pdids) {
|
||||
PickTicket pt= commonDao.load(PickTicket.class, pid);
|
||||
List<Task> tasks= commonDao.findByQuery(" from Task t where "
|
||||
+ " t.pickTicketDetail.pickTicket.id="+pid+" and t.planQuantity>0 ");
|
||||
boolean SAPstatus= interfaceReqManager.wmsSapZhuantaihuichuang(tasks, 0,"",1);//状态回传
|
||||
// interfaceReqManager.saptoWmsTaskStatus(tasks, 1, SAPstatus);
|
||||
// List<Task> tasks= commonDao.findByQuery(" from Task t where "
|
||||
// + " t.pickTicketDetail.pickTicket.id="+pid+" and t.planQuantity>0 ");
|
||||
// boolean SAPstatus= interfaceReqManager.wmsSapZhuantaihuichuang(tasks, 0,"",1);//状态回传
|
||||
shuaxinPick(pt);//刷新订单
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -414,6 +414,7 @@ public class ASNReceiveServlet extends HttpServlet {
|
|||
String types =json.has("type")?json.getString("type"):"";
|
||||
resultJson=app.queryTaskList(z_id,types, workerId, wId);
|
||||
}else if("receiveTask".equals(methodType)){
|
||||
//PDA领取拣货任务
|
||||
String taskIds =json.has("taskIds")?json.getString("taskIds"):"";
|
||||
resultJson=this.receiveTask(taskIds, workerId, wId, commonDao);
|
||||
}else if("queryLoc".equals(methodType)){
|
||||
|
|
|
|||
|
|
@ -43,6 +43,7 @@
|
|||
<booleanList id="item.beMarkWeight" title="是否序列号" row="18" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/>
|
||||
|
||||
<booleanList id="strExtend1" title="图片" row="20" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/>
|
||||
<booleanList id="item.beUnpacking" title="是否一包一个" row="20" col="2" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="false"/>
|
||||
|
||||
</inputUIs>
|
||||
</search>
|
||||
|
|
@ -66,7 +67,7 @@
|
|||
item.alertLeadingDays,
|
||||
item.singleItem,
|
||||
item.brand,
|
||||
item.beUnpacking,
|
||||
item.beUnpacking,
|
||||
item.beMarkWeight,
|
||||
item.isBOM,
|
||||
item.beWeight,
|
||||
|
|
@ -87,7 +88,7 @@
|
|||
/~item.beInv: and item.beInv = {item.beInv} ~/
|
||||
/~strExtend1: and ((item.strExtend1 is not null and {strExtend1}=true)
|
||||
or (item.strExtend1 is null and {strExtend1}=false) ) ~/
|
||||
|
||||
/~item.beUnpacking: and item.beUnpacking = {item.beUnpacking} ~/
|
||||
/~item.beSAPItem: and item.beSAPItem = {item.beSAPItem} ~/
|
||||
/~item.shipRules: and item.shipRules like {item.shipRules} ~/
|
||||
/~item.CAname: and item.CAname like {item.CAname} ~/
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@
|
|||
<checkbox id="lk5" title="605" row="15" col="5" defaultValue="false" span="1" readOnly="false" required="false" reserve="false" forceOverride="true" inVisible="true"/>
|
||||
</inputUIs>
|
||||
<buttons>
|
||||
<commit id="save" title="save"
|
||||
<commit id="11save22" title="save"
|
||||
enableType="none" invisible="false">
|
||||
<mappings>
|
||||
<mapping id="waveDoc.id" className="long"/>
|
||||
|
|
|
|||
|
|
@ -53,6 +53,7 @@
|
|||
pickTicket.allocatedQuantity,
|
||||
pickTicket.pickedQuantity,
|
||||
pickTicket.shippedQuantity,
|
||||
pickTicket.shipmentMethod,
|
||||
pickTicket.updateTime,
|
||||
pickTicket.updateTime
|
||||
from PickTicket pickTicket
|
||||
|
|
@ -104,7 +105,8 @@
|
|||
<column id="pickTicket.shippedQuantity" width="60"
|
||||
title="发运数量" visible="true" horizonAlign="center"
|
||||
dataType="double" />
|
||||
|
||||
<column id="pickTicket.shipmentMethod" width="140" title="交接位置"
|
||||
visible="true" horizonAlign="center" />
|
||||
<column id="pickTicket.updateTime1" title="创建日期" visible="true"
|
||||
horizonAlign="center" format="dateFormatter"/>
|
||||
<column id="pickTicket.updateTime2" title="创建时间" visible="true"
|
||||
|
|
|
|||
|
|
@ -175,8 +175,9 @@
|
|||
pickTicket.equatedQuantity,
|
||||
t.barCode,
|
||||
t.inventoryStatus,
|
||||
t.beUnpacking,
|
||||
|
||||
pickTicketDetail.lineNumber,
|
||||
t.beUnpacking,
|
||||
pickTicket.updateTime,
|
||||
pickTicket.updateTime,
|
||||
t.strBill1,
|
||||
|
|
|
|||
|
|
@ -48,9 +48,9 @@
|
|||
containId="false" pageId="editbkcbPage2" >
|
||||
<enableExpression><![CDATA[(${waveDoc.status} =='OPEN')]]></enableExpression>
|
||||
</popup>
|
||||
<popup id="issuedFpTask" title="分配" enableType="none" invisible="false"
|
||||
<popup id="231issuedFpTask312" title="分配工作站" enableType="none" invisible="false"
|
||||
containId="false" pageId="editbkfpPage" >
|
||||
<!-- <enableExpression><![CDATA[(${waveDoc.status} =='OPEN')]]></enableExpression> -->
|
||||
<enableExpression><![CDATA[(${waveDoc.status} =='OPEN')]]></enableExpression>
|
||||
</popup>
|
||||
<!-- <commit id="celenPick" title="下发" enableType="none"
|
||||
invisible="false" >
|
||||
|
|
|
|||
Loading…
Reference in New Issue