提交姚再忠

main
userName 2025-02-05 15:48:44 +08:00
parent 9f1af07f1d
commit aa4b5e57c0
10 changed files with 505 additions and 114 deletions

View File

@ -14,12 +14,9 @@ public class AjaxJettyLauncher {
String currentDir = System.getProperty("user.dir");
logger.info("当前根目录是: " + currentDir);
PropertyConfigurator.configure("log4j.properties");
logger.error("JVM编码"+System.getProperty("file.encoding"));
AjaxJettyLauncher jl = new AjaxJettyLauncher();
jl.run();
}
@ -34,6 +31,7 @@ public class AjaxJettyLauncher {
server.addWebApplication("/" + getContextName() , getDeployPath());
server.start();
logger.error("1232221231");
logger.error("JVM编码"+System.getProperty("file.encoding"));
}
protected int getPort() {

View File

@ -106,7 +106,7 @@ public class Task extends VersionalEntity {
private OutBoxCount outBoxCount;//
private boolean bePrint = Boolean.FALSE;//是否拣货
private double yc_qty;//下发数量
private double yc_qty;//下发数量
private String endRegion;//-工作站
private int skip=0;//跳过
@ -127,7 +127,7 @@ public class Task extends VersionalEntity {
private String operator;//操作人
private Date dateline;//交单日期
private String setTask;//集套交单任务
private int agvStatus =0;//任务状态 0-未下发 1=已下发 2=执行中3=完成,-1已分配工作站未下发AGV
private int agvStatus =0;//任务状态 0-未下发 1=已下发 2=执行中3=完成
private Date operatorDate;//合单日期
/**任务号 1已绑定工作站0还没开始的任务*/
private int libraryStatus=0;
@ -140,10 +140,10 @@ public class Task extends VersionalEntity {
private String strBill4;//合单库位
private String strBill5;//合单人
private String strBill6;//是否未未拆包装
private String strBill7;//大容器号
private String strBill8;//头物料拼接号
private String strBill7;//
private String strBill8;//
private String strBill9;//
private String strBill10;//
private String strBill10;//退料属性T
private Date dateBill1=new Date();//下发日期
private Date dateBill2;//合单移动日期
private Date dateBill3;//合单任务完成日期
@ -156,6 +156,8 @@ public class Task extends VersionalEntity {
private String oldGzz;//原工作站
private String oldZrw;//原子任务
public String getOldGzz() {
return oldGzz;
}

View File

@ -83,8 +83,8 @@ public class PickTicket extends AbstractMoveDoc {
private String equatedQuantity;//优先级
private String driverName;//相关单号
private String lictrailer;//头物料描述
private String deliveryMode;//
private String shipmentMethod; //
private String deliveryMode;//receiver
private String shipmentMethod; //交接位置
private String shipToName;//NON-STOCK的申请人名字
private String department;//
private String logisticsCompany;//工作中心

View File

@ -33,6 +33,7 @@ import com.dev.swms.server.model.base.PackageUnit;
import com.dev.swms.server.model.base.Structure;
import com.dev.swms.server.model.base.Warehouse;
import com.dev.swms.server.model.base.WarehouseArea;
import com.dev.swms.server.model.base.WarehouseAreaStatus;
import com.dev.swms.server.model.base.Worker;
import com.dev.swms.server.model.base.Workstation;
import com.dev.swms.server.model.count.CountDetail;
@ -75,12 +76,10 @@ import com.dev.energy.server.model.EntityFactory;
import com.dev.energy.server.service.pojo.DefaultBaseManager;
import com.dev.energy.server.util.LocalizedMessage;
import com.dev.energy.server.web.security.UserHolder;
import org.apache.log4j.Logger;
@SuppressWarnings("unchecked")
public class DefaultCountPlanManager extends DefaultBaseManager implements
CountPlanManager {
private static Logger logger = Logger.getLogger(DefaultCountPlanManager.class);
protected final InventoryManager inventoryManager;
protected final ItemManager itemManager;
protected final BussinessCodeManager bussinessCodeManager;
@ -101,7 +100,7 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
* @see com.dev.swms.server.service.count.CountPlanManager#active(java.lang.Long)
*/
public void active(RowData rowData) {
logger.info(new Date());
System.out.println(new Date());
Long countPlanId = (Long) rowData.getColumnValue(0);
CountPlan countPlan = commonDao.load(CountPlan.class, countPlanId);
if (countPlan.active()) {
@ -110,13 +109,13 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
|| CountMethod.MOVED_ITEM.equals(countPlan.getCountMethod())
|| CountMethod.ABC.equals(countPlan.getCountMethod())) {
//按货品盘点
logger.info(new Date());
System.out.println(new Date());
List<CountDetail> cdlists= commonDao.findByQuery(" from CountDetail c where c.countPlan.id="+countPlanId);
for (CountDetail countDetail : cdlists) {
Item item = ((CountDetailItem) countDetail).getItem();
createCountRecordByItem(countPlan, item,countDetail);
}
logger.info(new Date());
System.out.println(new Date());
} else {
//按库位动碰盘点&&按库位盘点
for (CountDetail countDetail : countPlan.getDetails()) {
@ -140,7 +139,7 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
} else {
throw new BusinessException("countPlan.active.failed");
}
logger.info(new Date());
System.out.println(new Date());
}
/**
@ -181,7 +180,7 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
// return;
// }
// }
// logger.info(inventories.size());
// System.out.println(inventories.size());
item.setCycleDate(new Date());
if(inventories.size()>0)
createCountRecordByInventories(countPlan, inventories);
@ -239,6 +238,7 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
record.setQuantity(inventory.getQtyOfMasterPack());
record.setOperator(UserHolder.getUser().getName());
record.setOccurTime(new Date());
record.setBarCode(inventory.getBarCode());
commonDao.store(record);
inventory.setCounPlan(countPlan.getCode());
commonDao.store(inventory);
@ -1122,7 +1122,7 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
commonDao.store(cr);
// inv.setCounPlan(countPlan.getCode());
// commonDao.store(inv);
logger.info(inv.getId() );
System.out.println(inv.getId() );
js++;
}
// countPlan.setStatus(CountStatus.ACTIVE);
@ -1222,7 +1222,7 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
commonDao.store(cr);
// inv.setCounPlan(countPlan.getCode());
// commonDao.store(inv);
logger.info(inv.getId() );
System.out.println(inv.getId() );
js++;
}
// countPlan.setStatus(CountStatus.ACTIVE);
@ -1375,6 +1375,7 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
List<CountRecord> CountRecords = commonDao.findByQuery(" from CountRecord cr where cr.countPlan.id=:id and cr.needCount=1 and cr.delta=0",
new String[] { "id"},new Object[] {countPlanId});
for(CountRecord cr:CountRecords){
//是否盘点,是否有差异
if(cr.isNeedCount()&&cr.getCountQuantity()-cr.getQuantity()!=0) {
if(cr.getIndId()==null) {
cr.setIndId(0L);
@ -1387,7 +1388,19 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
inv.setQuantity(cr.getCountQuantity());
inv.setCounPlan(null);
InventoryLog log1 = new InventoryLog(InventoryLogType.CHECK_ADJUST,inv.getSOI(), 1, w==null?"":w.getName(), inv.getLocation(), cr.getItemKey(), new Date(), inv.getQuantity(), null, "盘点调整", null, null);
commonDao.store(inv);
if(inv.getQtyOfMasterPack()==0) {
commonDao.delete(inv);
List<Long> list=commonDao.findByQuery("select inv.id from Inventory inv where inv.location.id="+inv.getLocation().getId()+" and "
+ " inv.quantity>0 ");
if(list.size()==0) {
Location invloc=this.load(Location.class, inv.getLocation().getId());
invloc.setStatus(WarehouseAreaStatus.FREE);
commonDao.store(invloc);
}
}else {
commonDao.store(inv);
}
Inventory moveInv=new Inventory();
List<Inventory> incs=commonDao.findByQuery(" from Inventory inv where inv.location.id=97197 and "
+ " inv.itemKey.id="+cr.getItemKey().getId()+" ");
@ -1457,12 +1470,8 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
dInv.setStatus("已入库");
dInv.setStorageDate(new Date());
commonDao.store(dInv);
// cr.setDelta(1);
// commonDao.store(cr);
// InventoryLog log3 = new InventoryLog(InventoryLogType.CHECK_ADJUST,dInv.getSOI(), 1, w==null?"":w.getName(), loc, cr.getItemKey(), new Date(), moveInv.getQuantity(), null, null, null, null);
// log3.setSerial(dInv.getBarCode());
// log3.setSrcLoc(cr.getLocation());
// commonDao.store(log3);
loc.setStatus(WarehouseAreaStatus.OCCUPY);
commonDao.store(loc);
}
}else {
if(cr.isNeedCount()&&cr.getCountQuantity()-cr.getQuantity()==0) {
@ -2136,7 +2145,13 @@ public class DefaultCountPlanManager extends DefaultBaseManager implements
if (userId > 0) {
if (warehouseId > 0) {
Worker worker1=commonDao.load(Worker.class, userId);
List<CountRecord> Tasks= commonDao.findByQuery(" from CountRecord t where t.delta=0 and t.id in("+crIds+") order by t.itemKey.lotInfo.propC3 desc");
String hql=" from CountRecord t where t.delta=0 and t.id in("+crIds
+") ";
if(propD2!=null&&propD2.length()>0) {
hql+=" and CONVERT(varchar(100), t.itemKey.lotInfo.propD2, 23)='"+propD2+"'";
}
hql+=" order by t.itemKey.lotInfo.propC3 desc";
List<CountRecord> Tasks= commonDao.findByQuery(hql);
if(Tasks.size()>0){
double pqty=Double.parseDouble(countQuantity);
double qty=0;

View File

@ -71,7 +71,7 @@ import com.dev.swms.server.service.sequence.BussinessCodeManager;
import com.dev.swms.server.service.shipping.PickTicketManager;
import com.dev.swms.server.utils.TimeNumberUtils;
import com.dev.swms.server.web.filter.WarehouseHolder;
import org.apache.log4j.Logger;
public class DefaultInterfaceRespManager extends DefaultBaseManager implements InterfaceRespManager{
protected final InterfaceManager interfaceManager;
protected final ASNManager asnManager;
@ -83,7 +83,6 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
protected LocationStorageManager locationStorageManager;
protected final AgvTaskManager agvTaskManager;
protected final MoveDocManager moveDocManager;
private static Logger logger = Logger.getLogger(DefaultInterfaceRespManager.class);
public DefaultInterfaceRespManager(InterfaceManager interfaceManager,ASNManager asnManager,PickTicketManager pickTicketManager,
BussinessCodeManager manager3,JdbcManager jdbcManager,ItemManager itemManager,InterfaceReqManager interfaceReqManager,
LocationStorageManager locationStorageManager,AgvTaskManager agvTaskManager,MoveDocManager moveDocManager) {
@ -219,7 +218,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
JSONArray pickTickets=json.getJSONArray("header");
for(int j=0;j<pickTickets.size();j++){
JSONObject pickTicket=pickTickets.getJSONObject(j);
logger.info(pickTicket);
System.out.println(pickTicket);
String strBill1=pickTicket.has("TKAL1") ? pickTicket.getString("TKAL1") : ""; //Task Alias(SAP task number)
log.setReference(strBill1);
log.setFunction(strBill1);
@ -454,7 +453,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
PickTicket pTicket=null;
for(int j=0;j<pickTickets.size();j++){
JSONObject pickTicket=pickTickets.getJSONObject(j);
logger.info(pickTicket);
// System.out.println(pickTicket);
String strBill1=pickTicket.has("TKAL1") ? pickTicket.getString("TKAL1") : ""; //Task Alias(SAP task number)
String sourceId=pickTicket.has("TKIT1") ? pickTicket.getString("TKIT1") : ""; //Task item(Task item号5位流水号+2位版本号)
String TKPRN=pickTicket.has("TKPRN") ? pickTicket.getString("TKPRN") : ""; //优先级 U最高级 H加急
@ -570,6 +569,8 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
pTicket.setRelatedBill1(strBill1);
pTicket.setSourceId(strBill1);
pTicket.setWorkerName1(WERKS);//工厂
pTicket.setDeliveryMode(ZREV);//receiver
commonDao.store(pTicket);
ptid=pTicket.getId();
PickTicketDetail ptd =null;
@ -689,7 +690,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
JSONArray jsonDate =json.getJSONArray("header");
for( int i=0;i<jsonDate.size();i++ ) {
JSONObject pickTicket=jsonDate.getJSONObject(i);
logger.info(pickTicket);
System.out.println(pickTicket);
String btCode="CPUTPTC";
String sourceId=pickTicket.has("ZTKALI") ? pickTicket.getString("ZTKALI") : ""; //任务号
@ -859,7 +860,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
List<BillType> billTypes=commonDao.findByQuery(" from BillType bt where bt.code='"+billTypess+"'");//单据类型查询
for(int j=0;j<pickTickets.size();j++){
JSONObject pickTicket=pickTickets.getJSONObject(j);
logger.info(pickTicket);
System.out.println(pickTicket);
String RQORD=pickTicket.has("TAALS") ? pickTicket.getString("TAALS") : ""; //工单号(任务号)
String workerName4=pickTicket.has("KUNNR") ? pickTicket.getString("KUNNR") : ""; //需求者(客户编号)
String relatedBill1=pickTicket.has("SERNR") ? pickTicket.getString("SERNR") : ""; //序列号(项目ID)(机台号)
@ -985,7 +986,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
JSONArray jsonDate =json.getJSONArray("header");
for( int i=0;i<jsonDate.size();i++ ) {
JSONObject pickTicket=jsonDate.getJSONObject(i);
logger.info(pickTicket);
System.out.println(pickTicket);
String btCode="QPUTPTC";
String sourceId=pickTicket.has("ZTKALI") ? pickTicket.getString("ZTKALI") : ""; //任务号
@ -1083,6 +1084,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
pTicket.setRelatedBill2(relatedBill2);
pTicket.setUpdateTime(new Date());
pTicket.setCollectNo(strBill7);
pTicket.setShipmentMethod(JJLOCATION);
if (true) {
pTicket.setBillType(billType);
pTicket.setOrderDate(orderDate);
@ -1135,6 +1137,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
ptd.setNewLotInfo(newLotInfo);
ptd.setPickTicket(pTicket);
ptd.setStrBill16(JJLOCATION);//交接位置
ptd.setStrBill17(TEXT3);// TEXT3备注
ptd.setStrBill18(POTX2);// POTX2 (申请人)
ptd.setStrBill19(TEXT2);// TEXT2申请号
@ -1180,7 +1183,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
List<BillType> billTypes=commonDao.findByQuery(" from BillType bt where bt.code='"+billType+"'");//单据类型查询
for(int j=0;j<jsonArray.size();j++){//循环报文数据
JSONObject asn=JSONObject.fromObject(jsonArray.get(j));//根据报文获取数据赋值给asn
logger.info(asn);//输出数据
System.out.println(asn);//输出数据
String PO=asn.has("TAALS") ? asn.getString("TAALS") : ""; //入库序号(任务号)
log.setFunction(PO);
String strBill7=asn.has("MBLNR") ? asn.getString("MBLNR") : ""; //凭证号
@ -1532,7 +1535,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
if(returnCode.equals("200")) {
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject JSONobj=JSONObject.fromObject(jsonArray.get(i));
logger.info(JSONobj);
System.out.println(JSONobj);
String invId=JSONobj.has("invId")? JSONobj.getString("invId"):"";//任务号
double expectedQuantity=JSONobj.has("quantity")? JSONobj.getDouble("quantity"):0;//出库数量
String itemCode=JSONobj.has("itemCode")? JSONobj.getString("itemCode"):"";//货品(物料料号)(物料描述)
@ -1644,7 +1647,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
List<BillType> billTypes=commonDao.findByQuery(" from BillType bt where bt.code='"+billType+"'");
JSONObject objectItem=new JSONObject();
JSONObject asn=JSONObject.fromObject(jsonArray.get(j));
// logger.info(asn);
// System.out.println(asn);
// String billType="";
String PO=asn.has("sourceId") ? asn.getString("sourceId") : ""; //入库序号
int lineNo=asn.has("lineNo") ? asn.getInt("lineNo") : 0; //行号
@ -1726,7 +1729,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
List<BillType> billTypes=commonDao.findByQuery(" from BillType bt where bt.code='"+billType+"'");
JSONObject objectItem=new JSONObject();
JSONObject asn=JSONObject.fromObject(jsonArray.get(j));
// logger.info(asn);
// System.out.println(asn);
// String billType="";
String PO=asn.has("sourceId") ? asn.getString("sourceId") : ""; //入库序号
@ -2210,7 +2213,6 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
}else {
asnDetail.setExpectedQuantity(expectedQuantity);
}
asnDetail.setItem(items.get(0));
asnDetail.setStrBill2(strBill2);
// asnDetail.setStrBill1(strBill1);
@ -2269,7 +2271,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
List<BillType> billTypes=commonDao.findByQuery(" from BillType bt where bt.code='"+billType+"'");
JSONObject objectItem=new JSONObject();
JSONObject asn=JSONObject.fromObject(jsonArray.get(j));
logger.info(asn);
System.out.println(asn);
// String billType="";
log.setFunction("盘点差异");
String MATNR=asn.has("MATNR") ? asn.getString("MATNR") : ""; //物料号
@ -2362,7 +2364,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
CountPlan countPlan=null;
for(int j=0;j<json.getJSONArray("header").size();j++){
JSONObject pickTicket=json.getJSONArray("header").getJSONObject(j);
logger.info(pickTicket);
System.out.println(pickTicket);
String mdCode=pickTicket.has("ZTKALI") ? pickTicket.getString("ZTKALI") : ""; //任务号
log.setFunction(mdCode);
String SOI=pickTicket.has("ZITEM") ? pickTicket.getString("ZITEM") : ""; //任务项次号
@ -2509,9 +2511,9 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
JSONArray JSONA=json.getJSONArray("header");
for(int j=0;j<JSONA.size();j++){
JSONObject pickTicket=JSONA.getJSONObject(j);
logger.info(pickTicket);
System.out.println(pickTicket);
String mdCode=pickTicket.has("ZTKALI") ? pickTicket.getString("ZTKALI") : ""; //任务号
log.setFunction(mdCode);
String SOI=pickTicket.has("ZTALIN") ? pickTicket.getString("ZTALIN") : ""; //任务项次号
String strBill10=pickTicket.has("ZBPNUM") ? pickTicket.getString("ZBPNUM") : ""; //序列号顺序
String workerName4=pickTicket.has("ERNAM") ? pickTicket.getString("ERNAM") : ""; //需求者
@ -2535,7 +2537,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
String TEXT3=pickTicket.has("TEXT3") ? pickTicket.getString("TEXT3") : ""; //备注
String POTX2=pickTicket.has("POTX2") ? pickTicket.getString("POTX2") : ""; //申请人
String TEXT2=pickTicket.has("TEXT2") ? pickTicket.getString("TEXT2") : ""; //申请号
log.setFunction(mdCode+RSNUM);
Long longExtend1= Long.parseLong(pickTicket.has("ZEILE") ? pickTicket.getString("ZEILE") : "0"); //凭证项次号
String DATUM=pickTicket.has("DATUM") ? pickTicket.getString("DATUM") : "2022-12-31"; //日期 年-月-日
String UZEIT=pickTicket.has("UZEIT") ? pickTicket.getString("UZEIT") : "00:00:00"; //时间 时:分:秒
@ -2686,9 +2688,9 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
if (status.equals("20402")||status.equals("20103")) {
//返库
//更新AgvTask任务
// logger.info(taskCode+"打印2"+work);
// System.out.println(taskCode+"打印2"+work);
List<AgvTask> agvTasks = commonDao.findByQuery(" from AgvTask agvTask where agvTask.robotJobId='"+taskCode+"' or agvTask.robotJobId='A"+taskCode+"'");
// logger.info("打印3--"+agvTasks.size());
// System.out.println("打印3--"+agvTasks.size());
if (agvTasks.size()>0) {
AgvTask agvTask=agvTasks.get(0);
@ -2711,7 +2713,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
agvTask.setStationCode(locationStorage.get(0).getGzzCode());
commonDao.store(agvTask);
}
// logger.info("打印3"+agvTask.getRobotJobId());
// System.out.println("打印3"+agvTask.getRobotJobId());
//判断接驳口状态是否可用
// if(WcsCSDCode.getWmsJbkCode1(WcsCSDCode.getWmsCSDCode(work))) {
string = interfaceReqManager.sendAgvTask(agvTask)+"";
@ -2759,7 +2761,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
String msg="";
for(int j=0;j<jsonArray.size();j++){
JSONObject it=JSONObject.fromObject(jsonArray.get(j));
logger.info(it);
System.out.println(it);
String MATNR=it.has("MATNR") ? it.getString("MATNR") : ""; //物料号
String WERKS=it.has("WERKS") ? it.getString("WERKS") : ""; //工厂
String LGORT=it.has("LGORT") ? it.getString("LGORT") : ""; //库存地
@ -2931,7 +2933,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
if(jsonArray.size()>0) {
for(int j=0;j<jsonArray.size();j++){
JSONObject it=JSONObject.fromObject(jsonArray.get(j));
logger.info(it);
System.out.println(it);
String invId=it.has("invId") ? it.getString("invId") : ""; //库存序号
String itemCode=it.has("itemCode") ? it.getString("itemCode") : ""; //料号
log.setFunction("OA库存调整"+invId);
@ -2994,7 +2996,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
String msg="";
for(int j=0;j<jsonArray.size();j++){
JSONObject it=JSONObject.fromObject(jsonArray.get(j));
logger.info(it);
System.out.println(it);
String applicant=it.has("applicant") ? it.getString("applicant") : ""; //申请人
String applicantName=it.has("applicantName") ? it.getString("applicantName") : ""; //申请人名称
String dept=it.has("dept") ? it.getString("dept") : ""; //部门
@ -3416,7 +3418,7 @@ public class DefaultInterfaceRespManager extends DefaultBaseManager implements I
ASN asndb=null;
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject asn=JSONObject.fromObject(jsonArray.get(i));
logger.info(asn);
System.out.println(asn);
String jodNumber=asn.has("jodNumber")? asn.getString("jodNumber"):"";//工号
String name=asn.has("name")? asn.getString("name"):"";//姓名
String dept=asn.has("dept")? asn.getString("dept"):"";//部门

View File

@ -101,7 +101,7 @@ import com.dev.swms.server.utils.StringUtil;
import com.dev.swms.server.utils.TimeNumberUtils;
import com.dev.swms.server.utils.interfaceUtil;
import com.dev.swms.server.web.filter.WarehouseHolder;
import org.apache.log4j.Logger;
@SuppressWarnings("unchecked")
public class DefaultQueryAppManager extends DefaultBaseManager implements QueryAppManager {
protected final CarLoadManager carLoadManager;
@ -116,7 +116,6 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
protected final InventoryManager inventoryManager;
protected final WorkerManager workerManager;
protected final ItemJobLauncher itemJobLauncher;
private static Logger logger = Logger.getLogger(DefaultQueryAppManager.class);
public DefaultQueryAppManager(CarLoadManager carLoadManager,StockManager stockManager,AgvTaskManager agvTaskManager,JdbcManager jdbcManager,MoveDocManager moveDocManager,LocationManager locationManager,
PickTicketManager pickTicketManager,AutoAllocator autoAllocator,InterfaceReqManager interfaceReqManager,WorkerManager workerManager,InventoryManager inventoryManager,ItemJobLauncher itemJobLauncher) {
super();
@ -222,7 +221,6 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
sql+= " and ((ad.ftl_qty=0 and ad.EXPECTED_QUANTITY>ad.RECEIVED_QUANTITY) or (ad.ftl_qty>0 and ad.ftl_qty>ad.RECEIVED_QUANTITY)) "
+ " order by ad.strBill8,item.code";
// logger.info(sql);
Query query = session.createSQLQuery(sql);
List<Object[]> list= (List<Object[]>)query.list();
String sql1=" select ad.id,asn.code,ad.be_quality from ASN_DETAIL ad "
@ -238,7 +236,6 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
List<Object[]> asnds=(List<Object[]>)query1.list();
String sql2=sql1+" and ad.EXPECTED_QUANTITY=ad.RECEIVED_QUANTITY ";
// logger.info(sql2);
//整理完成
Query query2 = session.createSQLQuery(sql2);
List<Object[]> asds=(List<Object[]>)query2.list();
@ -257,7 +254,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
obj.put("strBill7", arrier[i++]==null?"":arrier[i-1]);//行号
obj.put("propC5", arrier[i++]==null?"":arrier[i-1]);
obj.put("propC2", arrier[i++]==null?"":arrier[i-1]);
// logger.info(arrier[8].toString()+"----");
// System.out.println(arrier[8].toString()+"----");
if(itemcode!=null&&!itemcode.equals("")) {
if(arrier[8]!=null&&arrier[8].toString().length()>0) {
@ -1104,7 +1101,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
// sql+=" and (upper(md.RELATEBILLCODE) like upper('%"+ asn_code + "%') or upper(s.LP) like upper('%"+ asn_code +"%'))";
// }
sql+=" order by mdd.ID ";
logger.info(sql);
// System.out.println(sql);
Query query = session.createSQLQuery(sql);
List<Object[]> list= (List<Object[]>)query.list();
if(list.size()>0){
@ -1245,7 +1242,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
if(moveDocDetail.getStrBill11()!=null&&moveDocDetail.getStrBill11().equals("1")) {
msg="加急料号"+item.getCode()+",需要出库";
}
// logger.info(moveDocDetail.getStrBill11());
// System.out.println(moveDocDetail.getStrBill11());
data1.put("beMarkWeight", beMarkWeight);
array.add(data1);
}
@ -1346,7 +1343,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
sql+=" and z.id = "+zoneId;
}
sql+=" group by md.RELATEBILLCODE,z.name,s.LP order by mdd.ID ";
logger.info(sql);
// System.out.println(sql);
Query query = session.createSQLQuery(sql);
List<Object[]> list= (List<Object[]>)query.list();
if(list.size()>0){
@ -1510,7 +1507,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
}
}
long etime1 = System.currentTimeMillis();
logger.infof(bigTask.getCode()+"亮灯时长:"+(etime1 - stime1));
System.out.printf(bigTask.getCode()+"亮灯时长:"+(etime1 - stime1));
}
taskids = sb.substring(0,sb.length()-1).toString();
@ -1558,7 +1555,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
data = array.toString();
status = "1";
long etime2 = System.currentTimeMillis();
logger.infof("料箱列表显示时长:"+(etime2 - stime2));
System.out.printf("料箱列表显示时长:"+(etime2 - stime2));
}else{
msg = "找不到相应记录!";
@ -1635,7 +1632,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
}
}
long etime1 = System.currentTimeMillis();
logger.info(agvTask.getRobotJobId()+"亮灯时长:"+(etime1 - stime1)+"\n");
// System.out.printf(agvTask.getRobotJobId()+"亮灯时长:"+(etime1 - stime1)+"\n");
}
agvid = sb.substring(0,sb.length()-1).toString();
@ -1683,7 +1680,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
}
}
long etime2 = System.currentTimeMillis();
logger.info("料箱列表显示时长:"+(etime2 - stime2)+"\n");
// System.out.printf("料箱列表显示时长:"+(etime2 - stime2)+"\n");
}else{
msg = "locode参数错误或为空!";
@ -3797,7 +3794,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
msg+=",加急单";
data1.put("zoneName", zoneCode);
}
logger.info(":"+jsondata1);
// System.out.println(":"+jsondata1);
obj.put("data1", jsondata1);
status = "1";
}
@ -5449,7 +5446,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
}else{
xlh=strBill2;
}
logger.info("料号="+item_code+" ,序列号="+xlh);
// System.out.println("料号="+item_code+" ,序列号="+xlh);
String sql=" from ASNDetail ad where ad.item.code='"+item_code+"' and ad.strBill2='"+xlh+"' ";
List<ASNDetail> ASNDetails = commonDao.findByQuery(sql);
@ -5879,7 +5876,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
}
sql+=" order by mdd.ID ";
logger.info(sql);
// System.out.println(sql);
Query query = session.createSQLQuery(sql);
List<Object[]> list= (List<Object[]>)query.list();
@ -5998,7 +5995,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
if (userId > 0) {
if (warehouseId > 0) {
logger.info("PC货架上架完成返库DefaultQueryAppManagersubmitAndPcStockPutHJ");
// System.out.println("PC货架上架完成返库DefaultQueryAppManagersubmitAndPcStockPutHJ");
List<Location> locs=commonDao.findByQuery(" from Location l where l.code='"+stockCode+"' and l.disabled=0 ");
if(locs.size()>0) {
Location loc=locs.get(0);
@ -6012,7 +6009,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
ag.setType("货架返库");
commonDao.store(ag);
boolean bo= interfaceReqManager.sendAgvTask(ag);
logger.info(bo+"--"+ag.getClassification()+"--"+ag.getCode());
// System.out.println(bo+"--"+ag.getClassification()+"--"+ag.getCode());
if(bo&&ag.getClassification().equals("盘点")&&ag.getCode()!=null) {
pickTicketManager.quercountPlan(ag, userId);
}
@ -6025,7 +6022,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
}
}
}else {
logger.info("无agvTask 任务");
System.out.println("无agvTask 任务");
}
status="1";
@ -6263,7 +6260,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
List<Double> invqty= commonDao.findByQuery(sql2);
if(invqty.size()>0) {
tqty=invqty.get(0);
logger.info("灯数量"+tqty);
// System.out.println("灯数量"+tqty);
}
InterWMStask iwt=InterWMStasks.get(i);
iwt.setQuant((int)tqty);
@ -6799,7 +6796,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
List<Double> invqty= commonDao.findByQuery(sql2);
if(invqty.size()>0) {
tqty=invqty.get(0);
logger.info("打印数量"+tqty);
// System.out.println("打印数量"+tqty);
}
//打印拣货标签
submitPrintTask( userId, number, mac, lsCode, t , ptd, pt,
@ -7054,7 +7051,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
// }else {
barcode+="/"+ymd.format(new Date());
// }
logger.info(barcode);
// System.out.println(barcode);
String emergent="";
if(pt!=null&&bt.getName().indexOf("工单")>=0&&pt.getEquatedQuantity()!=null
&&(pt.getEquatedQuantity().equals("H")||pt.getEquatedQuantity().equals("U")
@ -7341,7 +7338,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
String countCode=taskcode.replace(",","','");
sql+=" and t.countCode in('"+countCode+"') ";
}else {
logger.info("请选择盘点单号");
System.out.println("请选择盘点单号");
becount=false;
}
@ -7413,7 +7410,9 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
+" where 1=1 and b.COUNT_PLAN_ID=max(cr.COUNT_PLAN_ID)"
+" and b.count_Code=cr.count_Code "
+" and loc2.id=l.ID and cr.NEED_COUNT=b.NEED_COUNT"
+" and item2.id=i.id "
+" and item2.id=i.id and "
+ "( CONVERT(varchar(100), ik.PROP_D2, 23)=CONVERT(varchar(100), ik2.PROP_D2, 23) "
+ " or (ik.PROP_D2 is null and ik2.PROP_D2 is null )) "
+" for xml Path('')),1,1,'') as tId,"
+" cr.NEED_COUNT,max(i.NAME) ,max(i.UNIT) UNIT,"
+ "l.CODE as lcode,max(l.id) as lid,"
@ -7435,7 +7434,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
String countCode=taskcode.replace(",","','");
sql+=" and cr.count_Code in('"+countCode+"') ";
}else {
logger.info("请选择盘点单号");
System.out.println("请选择盘点单号");
}
sql+=" group by c.id,cr.count_Code,l.code,l.ID ,cr.NEED_COUNT,i.id,i.code,ik.PROP_C1,ik.PROP_D2,\r\n" +
" i.SINGLE_ITEM,i.BE_MARK_WEIGHT,i.isBOM ";
@ -7896,7 +7895,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
}
} catch (Exception e) {
e.printStackTrace();
logger.info("连接失败");
System.out.print("连接失败");
}finally{
session.close();
}
@ -7976,7 +7975,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
xlh=serial;
}
// logger.info("料号="+item_code+" ,序列号="+xlh);
// System.out.println("料号="+item_code+" ,序列号="+xlh);
String hql=" from Inventory inv where inv.quantity>0 "
+ " and inv.itemKey.item.code='"+item_code+"'"
+ " and inv.status='已入库'"
@ -8983,7 +8982,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
if(zone.getId()==1763) {
//容器返库3#料箱区
if(srcLocation.getStock()!=null) {
// logger.info("容器返库1");
// System.out.println("容器返库1");
Stock stock= commonDao.load(Stock.class, srcLocation.getStock().getId());
List<Task> tsks=commonDao.findByQuery(" from Task t where 1=1 "
+ " and t.endRegion='"+t.getEndRegion()+"'"
@ -8997,7 +8996,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
AgvTask agv=commonDao.load(AgvTask.class, t.getAgvTask().getId());
if(agv.getStatus().equals("ATPICK")) {
interfaceReqManager.wcsNextPT(agv.getRobotJobId(), s.getLP(), WcsCSDCode.getWcsCSDCode(t.getEndRegion()));
// logger.info("容器返库2");
// System.out.println("容器返库2");
}
}
}
@ -9829,7 +9828,7 @@ public class DefaultQueryAppManager extends DefaultBaseManager implements QueryA
}else {
data1.put("t_count", "清点");//q
}
// logger.info("-"+arrier[6].toString());
// System.out.println("-"+arrier[6].toString());
}
data1.put("lc_code", arrier[7]==null?"":arrier[7]);//地标码
String hx=arrier[8]==null?"":arrier[8].toString();//相差分钟

View File

@ -97,7 +97,7 @@ import com.dev.energy.server.model.EntityFactory;
import com.dev.energy.server.service.pojo.DefaultBaseManager;
import com.dev.energy.server.util.LocalizedMessage;
import com.dev.energy.server.web.security.UserHolder;
import org.apache.log4j.Logger;
/**
* @author dev
*
@ -112,7 +112,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
protected final JdbcManager jdbcManager;
protected final AgvTaskManager agvTaskManager;
protected final InterfaceReqManager interfaceReqManager;
private static Logger logger = Logger.getLogger(DefaultAutoAllocator.class);
public DefaultAutoAllocator(ItemManager manager,InventoryManager manager1,
@ -295,7 +295,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
//List<Inventory> inventories =sortByRule(tempInventories,moveDocDetail.getItem().getWarehouseItemStorageRule(), pickItemRule,turnOverMode);
//tempInventories.clear();
// for(Inventory inv:inventories){
// logger.info(inv.getId()+"===="+inv.getAvaliableQuantity());
// System.out.println(inv.getId()+"===="+inv.getAvaliableQuantity());
// }
//拣货分配,累加已分配数量
totalQty += allocateInventory(inventories, moveDocDetail);
@ -309,7 +309,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
if((moveDocDetail.getPreAllocatedQuantity()-moveDocDetail.getAllocatedQuantity())<=0){
break;
}else{
logger.info(moveDocDetail.getItem()+"===="+moveDocDetail.getAllocatedQuantity());
System.out.println(moveDocDetail.getItem()+"===="+moveDocDetail.getAllocatedQuantity());
}
}
@ -395,7 +395,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
if((DoubleUtils.format4F(moveDocDetail.getPreAllocatedQuantity())-DoubleUtils.format4F(moveDocDetail.getAllocatedQuantity()))<=0){
return null;
}else{
logger.info(moveDocDetail.getItem()+"===="+moveDocDetail.getAllocatedQuantity());
System.out.println(moveDocDetail.getItem()+"===="+moveDocDetail.getAllocatedQuantity());
}
// }
return errmsg;
@ -527,10 +527,10 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
pickTicketDetails=commonDao.findByQuery(" from PickTicketDetail ptd where ptd.pickTicket.id in ("+StringUtils.strip(pickTicketId.toString(),"[]")+") "
+ "and ptd.pickTicket.billType.code in('GPUTPTC') order by ptd.pickTicket.id,ptd.id");
if(pickTicketDetails.size()>0) {
logger.info(pickTicketDetails.size()+" 行数!");
System.out.println(pickTicketDetails.size()+" 行数!");
preAllocate(pickTicketDetails);
}else {
logger.info("今天无工单出库出库信息!");
System.out.println("今天无工单出库出库信息!");
}
return "";
}
@ -1581,7 +1581,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
task.setWarehouseArea(inventory.getWarehouseArea());
task.setBarCode(inventory.getBarCode());
task.setSrcLP(inventory.getLocation().getStock());
logger.info(inventory.getLocation().getId());
System.out.println(inventory.getLocation().getId());
commonDao.store(task);
}
@ -1592,7 +1592,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
}
shuaXinWaveDoc(id);//刷新波次单
}else{
logger.info("无波次任务!"+"\n");
System.out.println("无波次任务!"+"\n");
}
}
@ -1764,7 +1764,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
WaveDocDetail wdd = t.getWaveDocDetail();
SeedWall sw = wdd.getSeedWall();
LocationStorage ls = sw.getLocationStorage();//工作站
logger.info("任务:"+t.getCode()+"\n");
System.out.println("任务:"+t.getCode()+"\n");
String outsueAGVJSON = interfaceManager.outsueAGVJSON("kckq", ls.getDescription(), "QP_OUTBOUND", "", 1,0, "SI_QUICK_PICK", true, t.getCode(), 1, t.getSrcLoc().getCode(), 0);
String result = interfaceManager.doSslPost(ApiURL.issueAGV,outsueAGVJSON);
JSONObject json = JSONObject.fromObject(result);
@ -1794,19 +1794,19 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
int waveSum=(int) (inv.get(i).getQtyOfMasterPack()-inv.get(i).getQueuedQuantity());
if (sum-waveSum>=0) {
logger.info("料箱整箱:"+inv.get(i).getLocation().getCode());
System.out.println("料箱整箱:"+inv.get(i).getLocation().getCode());
String outsueAGVJSON=interfaceManager.outsueAGVJSON("kckq", ls.getDescription(), "QP_OUTBOUND", "", 1, 0, "SI_QUICK_PICK", true, robotJobId, 1l,inv.get(i).getLocation().getCode(),0);
interfaceManager.doSslPost(ApiURL.issueAGV, outsueAGVJSON);
}
else{
logger.info("料箱单拣:"+inv.get(i).getLocation().getCode());
System.out.println("料箱单拣:"+inv.get(i).getLocation().getCode());
String outsueAGVJSON=interfaceManager.outsueAGVJSON("kckq", ls.getDescription(), "QP_OUTBOUND", "", 1, 0, "SI_QUICK_PICK", true, robotJobId, 1,inv.get(i).getLocation().getCode(),0);
interfaceManager.doSslPost(ApiURL.issueAGV, outsueAGVJSON);
}
sum=sum-waveSum;
if (sum<=0) {
logger.info("呼叫完成:");
System.out.println("呼叫完成:");
return;
}
}
@ -1821,9 +1821,9 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
// .getPickTicket().getLx().getCode()
List<String> robotJobIds=new ArrayList<String>();
String returnAGVJSON=interfaceManager.returnAGVJSON(robotJobIds,1l,"", false,"RETURN_WAREHOUSE");
logger.info("json:"+returnAGVJSON);
System.out.println("json:"+returnAGVJSON);
}*/
// logger.info("回传入库:"+inv.get(i).getLocation().getCode());
// System.out.println("回传入库:"+inv.get(i).getLocation().getCode());
List<String> robotJobIds=new ArrayList<String>();
String returnAGVJSON=interfaceManager.returnAGVJSON(robotJobIds,1L,containerCode, false,"RETURN_WAREHOUSE");
interfaceManager.doSslPost(ApiURL.returnAGV, returnAGVJSON);
@ -1892,7 +1892,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
Map<String, Long> map= new HashMap<String, Long>();
map.put("waveDoc.id", id);
getQuantityMap(map);
logger.info("取消分配执行时长:"+(etime - stime)+"\n");
System.out.printf("取消分配执行时长:"+(etime - stime)+"\n");
jdbcManager.saveExceptionLog(UserHolder.getUser().getName()+"取消分配!");
}
}
@ -1976,7 +1976,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
}
shuaxinPick(pt);//刷新出库单
long etime = System.currentTimeMillis();
logger.info("取消分配执行时长:"+(etime - stime)+"\n");
System.out.printf("取消分配执行时长:"+(etime - stime)+"\n");
}
}
@ -2048,7 +2048,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
// }
shuaxinPick(pt);//刷新出库单
long etime = System.currentTimeMillis();
logger.info("取消分配执行时长:"+(etime - stime)+"\n");
System.out.printf("取消分配执行时长:"+(etime - stime)+"\n");
}
}
@ -2379,7 +2379,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
}else {
String bsql=" from BillTypeConfig b where b.billType.id="+pt.getBillType().getId();
if(ptd.getNewLotInfo()!=null&&ptd.getNewLotInfo().getPropC9()!=null&&!ptd.getNewLotInfo().getPropC9().equals("")) {
if(ptd.getNewLotInfo().getPropC9()!=null&&!ptd.getNewLotInfo().getPropC9().equals("")) {
bsql+=" and b.plantCode='"+ptd.getNewLotInfo().getPropC9()+"'";
}
List<BillTypeConfig> bts=commonDao.findByQuery(bsql);
@ -2483,6 +2483,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
task.setPlanQuantity(allocateQty);
task.setPlanQuantityMU(allocateQty);
task.setInventoryStatus(inventory.getStatus());
task.setStrBill10(inventory.getStatuss());
task.setCreateTime(new Date());
task.setWarehouseArea(inventory.getWarehouseArea());
task.setBarCode(inventory.getBarCode());
@ -2517,7 +2518,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
// interfaceReqManager.wmsSapZhuantaihuichuang(listtask, 0,"",1);//状态回传
// }
// }else {
// logger.info(pt.getCode()+"自动分配,无回传状态");
// System.out.println(pt.getCode()+"自动分配,无回传状态");
// }
//
// shuaxinPick(pt);//刷新订单
@ -2566,7 +2567,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
try {
commonDao.store(pt);
}catch(Exception e){
logger.info(pt.getId()+"保存失败");
System.out.println(pt.getId()+"保存失败");
}
}
}
@ -2688,7 +2689,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
}
shuaXinWaveDoc(id);//刷新波次单
}else{
logger.info("无波次任务!"+"\n");
System.out.println("无波次任务!"+"\n");
}
}
@ -3130,6 +3131,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
task.setCreateTime(new Date());
task.setWarehouseArea(inventory.getWarehouseArea());
task.setBarCode(inventory.getBarCode());
task.setStrBill10(inventory.getStatuss());
task.setSrcLP(inventory.getLocation().getStock());
if(UserHolder.getUser()!=null) {
task.setOperator(UserHolder.getUser().getName());
@ -3193,10 +3195,10 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
WarehouseArea wa=this.load(WarehouseArea.class, Long.parseLong(obj[0].toString()));
if(wa.getName().equals("料箱区")){
createAGV(obj[1].toString(),pickTicketDetailIds, wa.getId(),ave);
logger.info(obj[1]);
System.out.println(obj[1]);
}else if(wa.getName().equals("货架区")){
createAGV(obj[1].toString(),pickTicketDetailIds, wa.getId(),ave);
logger.info(obj[1]);
System.out.println(obj[1]);
}
}
@ -3222,10 +3224,9 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
public void taskIssuedAgv(List<Long> ids) {
for(Long id:ids) {
WaveDoc w= commonDao.load(WaveDoc.class, id);
List<Task> tids=commonDao.findByQuery(" from Task t where t.agvStatus=0 and t.waveDoc.id= "+id);
List<Task> tids=commonDao.findByQuery(" from Task t where t.agvStatus in(0,-1) and t.waveDoc.id= "+id);
Boolean beEnd=false;
for(Task t:tids) {
PickTicketDetail ptd=commonDao.load(PickTicketDetail.class, t.getPickTicketDetail().getId());
PickTicket pt=commonDao.load(PickTicket.class, ptd.getPickTicket().getId());
pt.setStatus(PickTicketStatus.CHECK);
@ -3353,7 +3354,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
}
}else {
logger.info("无出库单明细");
System.out.println("无出库单明细");
}
}
@ -3440,7 +3441,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
if(zone.getId()==1763) {
//容器返库
if(srcLocation.getStock()!=null) {
logger.info("容器返库1");
System.out.println("容器返库1");
Stock stock= commonDao.load(Stock.class, srcLocation.getStock().getId());
List<Task> tsks=commonDao.findByQuery(" from Task t where 1=1 "
+ " and t.endRegion='"+t.getEndRegion()+"'"
@ -3453,7 +3454,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
AgvTask agv=commonDao.load(AgvTask.class, t.getAgvTask().getId());
if(agv.getStatus().equals("ATPICK")) {
interfaceReqManager.wcsNextPT(agv.getRobotJobId(), s.getLP(), WcsCSDCode.getWcsCSDCode(t.getEndRegion()));
logger.info("容器返库2");
System.out.println("容器返库2");
}
}
}
@ -3506,7 +3507,7 @@ public class DefaultAutoAllocator extends DefaultBaseManager implements AutoAllo
//未回传的
List<Long> tasks2 = commonDao.findByQuery("select p.id from Task p where p.billCode='" + billCode
+ "' and p.popular=0 " + " and p.pickTicketDetail.pickTicket.id=" + pt.getId());
logger.info(tasks1.size() + "-----" + tasks2.size());
System.out.println(tasks1.size() + "-----" + tasks2.size());
// 是否回传SAP其他出库不出WMS仓出库完成不用回传自动生成入库单入库完成后在回传。
BillType bt = commonDao.load(BillType.class, pt.getBillType().getId());
if (tasks1.size() > 0 && tasks1.size() == tasks2.size()) {

View File

@ -518,6 +518,9 @@ public class DefaultTaskIssuedManager extends DefaultBaseManager implements Task
PickTicket pt = commonDao.load(PickTicket.class, pickTicketId);
if (pt != null) {
pt.setStatus(PickTicketStatus.CHECK);
if(des!=null&&!des.equals("")) {
pt.setDeliveryMode(des);
}
commonDao.store(pt);
}
}

View File

@ -8,6 +8,19 @@ import com.dev.energy.server.util.LocalizedMessage;
import com.dev.swms.server.utils.ConvertEnumName;
import com.dev.swms.server.web.servlet.export.ExportExcelGenerator;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.URLDecoder;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;
@ -19,8 +32,13 @@ import java.util.List;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import javax.servlet.http.HttpServletResponse;
import jxl.Workbook;
import jxl.WorkbookSettings;
import jxl.biff.EmptyCell;
import jxl.format.Border;
import jxl.format.BorderLineStyle;
@ -35,6 +53,7 @@ import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
import net.mlw.vlh.ValueList;
import org.apache.commons.lang.math.NumberUtils;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
@ -47,8 +66,350 @@ public class XLSExportGenerator implements ExportExcelGenerator, ApplicationCont
private static final WritableCellFormat detFormat = new WritableCellFormat(detFont);
private SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
public String GetHql(String hql ){
int s1=hql.indexOf("where");
if(s1<0){
s1=hql.indexOf("WHERE");
}
int s2=hql.indexOf("and 1=1");
if(s2>0){
if(s2-s1<=50){
String str=hql.substring(s1, s2);
hql=hql.replace(str, "where 1=1 ");
}
}
return hql;
}
public void makeDir(String folderPath){
File folder = new File(folderPath);
boolean success = folder.mkdirs();
if (success) {
System.out.println("文件夹创建成功");
} else {
System.out.println("文件夹创建失败");
}
}
protected String GetTitle(TableConfig tableConfig, String model, String locale) throws Exception {
StringBuffer sb=new StringBuffer();
List columnProperties = tableConfig.getColumnProperties();
for(int col = 0; col < columnProperties.size(); ++col) {
ColumnProperty property = (ColumnProperty)columnProperties.get(col);
if(property.isExportExcel()) {
sb.append(URLDecoder.decode(property.getTitle(),"utf-8")+",");
}
}
return sb.toString();
}
protected String writeCSVByType(ApplicationContext ac, ColumnProperty property, List values, String model, String locale) {
String data="";
if(property.isExportExcel()) {
Object value = values.get(property.getValueIndex());
if(value != null && !"-".equals(value) && !"".equals(value)) {
if(value instanceof Number) {
data=NumberUtils.createDouble(value.toString()).doubleValue()+"";
} else if(value instanceof java.sql.Date) {
data=dateFormatter.format(value);
} else if(value instanceof Timestamp) {
if(property.getTitle().indexOf("日期")!=-1){
data="\t"+dateFormatter.format(value)+"\t";
}else{
data="\t"+datetimehoursFormatter.format(value)+"\t";
}
} else {
if(property.getFormat() != null && property.getFormat().length() > 0) {
Formatter formatter = (Formatter)ac.getBean(property.getFormat());
value =convertFormat(formatter, value, property, values, model, locale);
}
try {
data=URLDecoder.decode( value.toString(),"utf-8");
}catch(Exception e) {
data=value.toString();
}
if(data.indexOf(",")>-1){
data="\""+data.replace("\"", "\"\"")+"\"";
}
}
} else {
data="";
}
}
return data;
}
public void delFile(String filePath){
Path path = Paths.get(filePath);
try {
Files.delete(path);
//System.out.println("文件删除成功");
} catch (IOException e) {
//System.out.println("文件删除失败: " + e.getMessage());
}
}
public void exportExcel(ApplicationContext ac,String hql, Map params, TableConfig tableConfig, HttpServletResponse res, String referenceModel, String locale) throws Exception {
hql=GetHql(hql);//处理下HQL语句
String maxSizeofPage="10000";
String pageName = this.sdf.format(new Date());
Pattern pattern = Pattern.compile("\\s+");
Matcher matcher = pattern.matcher(pageName);
pageName = matcher.replaceAll("");
String header = "attachment; filename=" + pageName + ".csv";
res.setCharacterEncoding("utf-8");
res.setContentType("application/ms-excel; charset=utf-8");
res.setHeader("content-disposition", header);
makeDir("C://ZhongWei/ZIP");
params.put("pagingNumberPer", maxSizeofPage);
params.put("pagingPage", "1");
ValueListQueryManager gridQueryManager = (ValueListQueryManager)ac.getBean("valueListQueryManager");
List <String> files =new ArrayList<String>();
//查询第一页数据
//System.out.print("查询HQL:"+(hql));
Long time =System.currentTimeMillis();
ValueList valueList = gridQueryManager.queryByValueList(hql, params);
Long endtime =System.currentTimeMillis();
System.out.print("查询用时1:"+(endtime-time));
time=endtime;
int sheetNumber = 1;
int exportTotalPages = valueList.getValueListInfo().getTotalNumberOfPages();
if(exportTotalPages>20){
exportTotalPages=20;
//最大限制100W条数据
}
endtime =System.currentTimeMillis();
System.out.print("查询用时:2"+(endtime-time));
String filePath="C://ZhongWei/ZIP/"+pageName+"_"+1+".csv";
String charsetName = "UTF-8";//GBK,UTF-8,ANSI
// BufferedWriter writer = new BufferedWriter(new FileWriter(filePath));
BufferedWriter writer = new BufferedWriter(
new OutputStreamWriter(Files.newOutputStream(Paths.get(filePath)), charsetName));
// writer.write("这是一些文本");
writer.write("\ufeff");
writer.write(this.GetTitle(tableConfig, referenceModel, locale));
writer.newLine();
time=endtime;
do {
int row_index = 1;
files.add(filePath);
if(sheetNumber>1){
params.put("pagingNumberPer", maxSizeofPage);
params.put("pagingPage", "" + sheetNumber);
valueList = gridQueryManager.queryValueList(hql, params);
}
endtime =System.currentTimeMillis();
System.out.print("查询用时:"+(endtime-time));
time=endtime;
try{
for(Iterator col_index = valueList.getList().iterator(); col_index.hasNext(); ++row_index) {
Object[] objs= (Object[])col_index.next();
ArrayList list = new ArrayList();
Collections.addAll(list, objs);
List columnProperties = tableConfig.getColumnProperties();
int cloSize=columnProperties.size();
StringBuffer sb=new StringBuffer();
for(int col = 0; col <cloSize ; ++col) {
ColumnProperty property = (ColumnProperty)columnProperties.get(col);
String data= this.writeCSVByType(ac, property, list, referenceModel, locale);
sb.append(data+",");
}
writer.write(sb.toString());
writer.newLine();
list=null;
}
}catch (IOException e) {
e.printStackTrace();
}
valueList=null;
endtime =System.currentTimeMillis();
System.out.println("导入用时:"+(endtime-time));
time=endtime;
System.gc();
System.out.println("打印sheetNumber:"+sheetNumber);
} while(sheetNumber++ < exportTotalPages);
writer.close();
InputStream in = new FileInputStream(filePath); //获取下载文件的输入流
int count =0;
byte[] by = new byte[1024];
//通过response对象获取OutputStream流
OutputStream out= res.getOutputStream();
OutputStreamWriter osw = new OutputStreamWriter(out, "UTF-8");
while((count=in.read(by))!=-1){
out.write(by, 0, count);//将缓冲区的数据输出到浏览器
}
in.close();
gridQueryManager=null;
// out.flush();
// out.close();
res.getOutputStream().flush();
res.getOutputStream().close();
delFile(filePath);
System.gc();
}
public void exportExcel3(ApplicationContext ac,String hql, Map params, TableConfig tableConfig, HttpServletResponse res, String referenceModel, String locale) throws Exception {
hql=GetHql(hql);//处理下HQL语句
String maxSizeofPage="40000";
String pageName = this.sdf.format(new Date());
Pattern pattern = Pattern.compile("\\s+");
Matcher matcher = pattern.matcher(pageName);
pageName = matcher.replaceAll("");
String header = "attachment; filename=" + pageName + ".zip";
res.setCharacterEncoding("GBK");
res.setContentType("application/ms-excel; charset=GBK");
res.setHeader("content-disposition", header);
makeDir("C://ZhongWei/ZIP");
params.put("pagingNumberPer", maxSizeofPage);
params.put("pagingPage", "1");
ValueListQueryManager gridQueryManager = (ValueListQueryManager)ac.getBean("valueListQueryManager");
List <String> files =new ArrayList<String>();
//查询第一页数据
//System.out.print("查询HQL:"+(hql));
Long time =System.currentTimeMillis();
ValueList valueList = gridQueryManager.queryByValueList(hql, params);
Long endtime =System.currentTimeMillis();
System.out.print("查询用时1:"+(endtime-time));
time=endtime;
int sheetNumber = 1;
int exportTotalPages = valueList.getValueListInfo().getTotalNumberOfPages();
endtime =System.currentTimeMillis();
System.out.print("查询用时:2"+(endtime-time));
time=endtime;
do {
int row_index = 1;
String filePath="C://ZhongWei/ZIP/"+pageName+"_"+sheetNumber+".xls";
files.add(filePath);
WritableWorkbook workbook = Workbook.createWorkbook(new File(filePath));
WritableSheet sheet = workbook.createSheet(pageName, sheetNumber);
this.exportXLSTitle(tableConfig, sheet, referenceModel, locale);
if(sheetNumber>1){
params.put("pagingNumberPer", maxSizeofPage);
params.put("pagingPage", "" + sheetNumber);
valueList = gridQueryManager.queryValueList(hql, params);
}
endtime =System.currentTimeMillis();
System.out.print("查询用时:"+(endtime-time));
time=endtime;
for(Iterator col_index = valueList.getList().iterator(); col_index.hasNext(); ++row_index) {
Object[] objs= (Object[])col_index.next();
ArrayList list = new ArrayList();
Collections.addAll(list, objs);
List columnProperties = tableConfig.getColumnProperties();
int cloSize=columnProperties.size();
for(int col = 1; col <cloSize ; ++col) {
ColumnProperty property = (ColumnProperty)columnProperties.get(col);
this.writeSheetByType(ac,sheet, property, list, referenceModel, locale, row_index, col-1);
}
list=null;
}
valueList=null;
endtime =System.currentTimeMillis();
System.out.println("导入用时:"+(endtime-time));
time=endtime;
workbook.write();
workbook.removeSheet(0);
workbook.close();
System.gc();
System.out.println("打印sheetNumber:"+sheetNumber);
} while(sheetNumber++ < exportTotalPages);
String zipFileName = "C://ZhongWei/ZIP/"+pageName+".zip";
try{
zipFiles(files, zipFileName);
}catch(Exception e ){
}
InputStream in = new FileInputStream(zipFileName); //获取下载文件的输入流
int count =0;
byte[] by = new byte[1024];
//通过response对象获取OutputStream流
OutputStream out= res.getOutputStream();
while((count=in.read(by))!=-1){
out.write(by, 0, count);//将缓冲区的数据输出到浏览器
}
in.close();
gridQueryManager=null;
res.getOutputStream().flush();
res.getOutputStream().close();
System.gc();
}
public static void zipFiles(List<String> srcFiles, String destZipFile) throws IOException {
try (
FileOutputStream fos = new FileOutputStream(destZipFile);
ZipOutputStream zipOut = new ZipOutputStream(fos);
) {
for (String srcFile : srcFiles) {
File fileToZip = new File(srcFile);
FileInputStream fis = new FileInputStream(fileToZip);
ZipEntry zipEntry = new ZipEntry(fileToZip.getName());
zipOut.putNextEntry(zipEntry);
byte[] bytes = new byte[1024];
int length;
while ((length = fis.read(bytes)) >= 0) {
zipOut.write(bytes, 0, length);
}
fis.close();
}
}
}
public void exportExcel2(ApplicationContext ac,String hql, Map params, TableConfig tableConfig, HttpServletResponse res, String referenceModel, String locale) throws Exception {
String pagingNumberPer="40000";
String pageName = this.sdf.format(new Date());
Pattern pattern = Pattern.compile("\\s+");
@ -91,6 +452,7 @@ public class XLSExportGenerator implements ExportExcelGenerator, ApplicationCont
}
for(Iterator var26 = valueList.getList().iterator(); var26.hasNext(); ++var27) {
Object[] objs= (Object[])var26.next();
System.out.println(objs);
ArrayList list = new ArrayList();
Collections.addAll(list, objs);
List columnProperties = tableConfig.getColumnProperties();
@ -100,12 +462,14 @@ public class XLSExportGenerator implements ExportExcelGenerator, ApplicationCont
ColumnProperty property = (ColumnProperty)columnProperties.get(col);
this.writeSheetByType(ac,sheet, property, list, referenceModel, locale, var27, col-1);
}
}
System.out.println("打印"+offset);
} while(offset++ < exportTotalPages);
workbook.write();
workbook.close();
res.getOutputStream().flush();
res.getOutputStream().close();
}
protected void exportXLSTitle(TableConfig tableConfig, WritableSheet sheet, String model, String locale) throws Exception {

View File

@ -55,7 +55,10 @@
pickTicket.jiaodanDate,
pickTicket.workerName1,
pickTicket.workerName4,
pickTicket.deliveryMode,
pickTicket.shipmentMethod,
pickTicket.type,
pickTicket.sourceId,
pickTicket.userName
from PickTicket pickTicket
@ -82,7 +85,7 @@
<columns>
<column id="pickTicket.id" title="pickTicket" visible="false" />
<column id="pickTicket.collectNo" width="140" title="预留号"
visible="true" horizonAlign="center" format="colourPickTicket"/>
visible="true" horizonAlign="center" />
<column id="pickTicket.sourceType" width="80" title="出库类型"
visible="true" horizonAlign="center" />
<column id="pickTicket.orderDate1" width="120" title="需求日期"
@ -122,6 +125,10 @@
visible="true" horizonAlign="center" />
<column id="pickTicket.workerName4" width="140" title="申请人"
visible="true" horizonAlign="center" />
<column id="pickTicket.deliveryMode" width="140" title="receiver"
visible="true" horizonAlign="center" />
<column id="pickTicket.shipmentMethod" width="140" title="交接位置"
visible="true" horizonAlign="center" />
<column id="pickTicket.type" width="40" title="转入"
visible="true" horizonAlign="center" />
<column id="pickTicket.sourceId" width="150" title="SAP接口号"