|
@@ -127,6 +127,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
|
|
|
entity.setOrderNumber(detailsItem.getOrderNumber());//获取订单号
|
|
|
entity.setSmallPo(detailsItem.getSmallPo());//小po
|
|
|
entity.setOmpoAccount(detailsItem.getOmpoAccount());
|
|
|
+ entity.setAccount(detailsItem.getAccount());
|
|
|
entity.setOmpoIdItem(detailsItem.getOmpoIdItem());
|
|
|
entity.setSyOrderDataItemId(detailsItem.getSyOrderDataItemId());
|
|
|
entity.setSyOrderDataId(detailsItem.getSyOrderDataId());
|
|
@@ -288,176 +289,6 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
|
|
|
return syPackingListFabricMapper.queryMain(page,queryWrapper);
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 每3分钟拉取一次数据
|
|
|
- */
|
|
|
- //@Override
|
|
|
- //@Scheduled(fixedRate=1000*60*300)
|
|
|
- //@Transactional
|
|
|
- public void getU8Data3() {
|
|
|
- SimpleDateFormat sf= new SimpleDateFormat("yyMMdd");
|
|
|
- try{
|
|
|
- QueryWrapper<DxpDataPlan> queryWrapper = new QueryWrapper<>();
|
|
|
- queryWrapper.eq("code", "senYu_accessory_data");
|
|
|
- DxpDataPlan dxpDataPlan=dxpDataPlanService.getOne(queryWrapper);
|
|
|
- String time=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(System.currentTimeMillis());//获取现在时间
|
|
|
- String lastTime=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(dxpDataPlan.getLastTime());
|
|
|
- System.out.println("time:\t"+time);
|
|
|
- System.out.println("lastTime:\t"+lastTime);
|
|
|
- String [] pks=dxpDataPlan.getPkOrg().split(",");
|
|
|
- for (String pk : pks){
|
|
|
- String account=pk.split(":")[1];//获取账套号
|
|
|
- //先插主表数据,然后根据主表id查询子表数据再添加
|
|
|
- String sql="select \n" +
|
|
|
- "a.id u8Id,\n" +
|
|
|
- account+" as account , \n" +
|
|
|
- "'1' as is_U8_Data,\n" +
|
|
|
- "a.cMemo memo,\n" +
|
|
|
- "0 as delflag,\n" +
|
|
|
- "0 as status,\n" +
|
|
|
- "a.cMaker createby,\n" +
|
|
|
- "a.cMaker preparedBy,\n" +
|
|
|
- "a.cDefine10 exportInvoiceNo,\n" +
|
|
|
- "a.dnmaketime preparedDate\n" +
|
|
|
- "from rdrecord32 a\n" +
|
|
|
- "where " +
|
|
|
- "cCusCode='T020001' and\n" +
|
|
|
- " (select count(1) from \n" +
|
|
|
- "rdrecords32 left join Inventory\n" +
|
|
|
- "on rdrecords32.cInvCode=Inventory.cInvCode \n" +
|
|
|
- "where rdrecords32.id=a.id\n" +
|
|
|
- "and cInvCCode not like '01%'\n" +
|
|
|
- "and cInvCCode not like '02%'\n" +
|
|
|
- "and cInvCCode not like '03%'\n" +
|
|
|
- "and cInvCCode not like '04%'\n" +
|
|
|
- "and cInvCCode not like '19%'\n" +
|
|
|
- " )>0 and a.dnverifytime>'"+lastTime+"'";//根据最后一次拉去时间
|
|
|
- List<Map<String, Object>> listMain = new ArrayList<>();
|
|
|
- System.out.println("sql:\t"+sql);
|
|
|
- if(account.equals("903")){
|
|
|
- listMain = senYuDataSourceThree.queryForList(sql);//903
|
|
|
- }else{
|
|
|
- listMain = senYuDataSourceTwo.queryForList(sql);//902
|
|
|
- }
|
|
|
- if (listMain.size()==0){
|
|
|
- continue;//退出本次循环
|
|
|
- }
|
|
|
- List<JSONObject> jsonObjects = JsonChangeUtils.toJSONObject(listMain);
|
|
|
- for(JSONObject json : jsonObjects){
|
|
|
- SyPackingListFabric sy = JSONObject.toJavaObject(json, SyPackingListFabric.class);
|
|
|
- QueryWrapper<SyPackingListFabric> queryWrapperCount=new QueryWrapper<>();
|
|
|
- queryWrapperCount.like("create_time", new SimpleDateFormat("yyyy-MM-dd").format(System.currentTimeMillis()));//今天生成
|
|
|
- queryWrapperCount.eq("is_U8_Data","1");//判断是不是辅料
|
|
|
- queryWrapperCount.select("lpad(count(0)+1,6,0) as id");
|
|
|
- String dateNo ="FL"+sf.format(System.currentTimeMillis())+getOne(queryWrapperCount).getId();//获取单据号
|
|
|
- sy.setDocumentNo(dateNo);//单据号
|
|
|
- sy.setU8Id(account+sy.getU8Id());
|
|
|
- sy.setId(sy.getU8Id());
|
|
|
- String pname="";
|
|
|
- syPackingListFabricMapper.insert(sy);//添加数据
|
|
|
- String sql2="select " +
|
|
|
- "b.AutoID as u8id ,\n" +
|
|
|
- "b.id as u8pid,\n" +
|
|
|
- "left(b.csocode,ISNULL(NULLIF(CHARINDEX('-',b.csocode)-1,-1),len(b.csocode))) as planLotNumber,\n" +
|
|
|
- "b.csocode as orderNumber,\n" +
|
|
|
- account+" as account,\n"+
|
|
|
- "0 as delflag,\n" +
|
|
|
- "f.AutoID as isosid,\n" +
|
|
|
- "b.iQuantity as inventoryQuantity,\n" +
|
|
|
- "b.cbMemo as remarks,\n" +
|
|
|
- "b.cbMemo as memo,\n" +
|
|
|
- "f.iTaxUnitPrice as price,\n"+
|
|
|
- "d.cPersonName as salesman,\n" +
|
|
|
- "b.cDefine22 as itemNumber,\n" +
|
|
|
- "b.cFree6 as gramWeight,\n" +
|
|
|
- "b.cFree1 as colour,\n" +
|
|
|
- "b.cInvCode as inventoryCode,\n" +
|
|
|
- "c.cInvName as inventoryName,\n" +
|
|
|
- "c.cInvName as composition,\n" +
|
|
|
- "b.cFree2 as size ,\n" +
|
|
|
- "f.cDefine35 as rolls,\n" +
|
|
|
- "e.cComUnitName as masterMetering,\n" +
|
|
|
- "b.cFree4 as width,\n" +
|
|
|
- "c.cInvStd as specificationAndModel\n" +
|
|
|
- "from rdrecord32 a \n" +
|
|
|
- "left JOIN rdrecords32 b\n" +
|
|
|
- "on a.id=b.id \n" +
|
|
|
- "left join Inventory c\n" +
|
|
|
- "on b.cInvCode=c.cInvCode\n" +
|
|
|
- "LEFT JOIN Person d\n" +
|
|
|
- "ON d.cPersonCode = a.cPersonCode\n" +
|
|
|
- "left join ComputationUnit e\n" +
|
|
|
- "on c.cComunitCode=e.cComunitCode\n" +
|
|
|
- "left join SO_SODetails f\n" +
|
|
|
- "on b.iorderdid=f.iSOsID\n" +
|
|
|
- "where cInvCCode not like '01%'\n" +
|
|
|
- "and cInvCCode not like '02%'\n" +
|
|
|
- "and cInvCCode not like '03%'\n" +
|
|
|
- "and cInvCCode not like '04%'\n" +
|
|
|
- "and cInvCCode not like '19%'\n" +
|
|
|
- "and cCusCode='T020001'\n" +
|
|
|
- "and a.id='"+sy.getU8Id().substring(3)+"'";
|
|
|
- List<Map<String, Object>> list = new ArrayList<>();
|
|
|
- //String groupId=oConvertUtils.getId();//获取id
|
|
|
- if(account.equals("903")){
|
|
|
- list = senYuDataSourceThree.queryForList(sql2);//903
|
|
|
- }else{
|
|
|
- list = senYuDataSourceTwo.queryForList(sql2);//902
|
|
|
- }
|
|
|
- List<JSONObject> jianSon = JsonChangeUtils.toJSONObject(list);
|
|
|
- for (JSONObject json1 : jianSon){
|
|
|
- SyPackingListFabricItem sy1 = JSONObject.toJavaObject(json1, SyPackingListFabricItem.class);
|
|
|
- sy1.setU8Id(account+sy1.getU8Id());//获取账套号+id
|
|
|
- sy1.setId(sy1.getU8Id());
|
|
|
- sy1.setIsosid(sy1.getAccount()+sy1.getIsosid());//账套号+销售订单id
|
|
|
- sy1.setActualDeclaredQuantity(sy1.getInventoryQuantity());//给报关数量赋值
|
|
|
- sy1.setGroupId(sy1.getOrderNumber()+"-"+sy1.getInventoryCode()+"-"+sy1.getSize());
|
|
|
- sy1.setSyPackingListFabricId(sy.getId());//获取主表id
|
|
|
- if(sy1.getMasterMetering().equals("KG")){//当单位为KG时
|
|
|
- sy1.setTotalPrice(sy1.getNetWeight().multiply(sy1.getPrice()));//净重*单价
|
|
|
- }else{
|
|
|
- sy1.setTotalPrice(sy1.getActualDeclaredQuantity().multiply(sy1.getPrice()));//实际报关数量*单价
|
|
|
- }
|
|
|
- sy1.setU8Pid(sy.getU8Id());
|
|
|
- QueryWrapper<SyShippingDetailsItem> queryWrapper2 = new QueryWrapper<>();
|
|
|
- queryWrapper2.eq("sy_order_data_item_id",sy1.getIsosid());
|
|
|
- queryWrapper2.last("limit 1");
|
|
|
- SyShippingDetailsItem syShippingDetailsItem=syShippingDetailsItemMapper.selectOne(queryWrapper2);
|
|
|
- if(syShippingDetailsItem!=null){
|
|
|
- pname=syShippingDetailsItem.getGarmentFactory();//成衣工厂
|
|
|
- String elementsId=syShippingDetailsItem.getElementsId();//申报要素id
|
|
|
- if(oConvertUtils.isNotEmpty(elementsId)){
|
|
|
- SyDeclarationElements syDeclarationElements=syDeclarationElementsMapper.selectById(elementsId);
|
|
|
- if(syDeclarationElements!=null){
|
|
|
- sy1.setDeclarationName(syDeclarationElements.getDeclarationName());//获取报关品名
|
|
|
- }
|
|
|
- }
|
|
|
- sy1.setSupplierCodePrintingPlant(syShippingDetailsItem.getSupplierCode());//染厂供应商编码
|
|
|
- sy1.setSupplierPrintingPlant(syShippingDetailsItem.getSupplierCode());//染厂供应商
|
|
|
- sy1.setSupplier(syShippingDetailsItem.getSupplier());//供应商编码
|
|
|
- sy1.setSupplierCode(syShippingDetailsItem.getSupplierCode());//供应商
|
|
|
- sy1.setSyShippingDetailsId(syShippingDetailsItem.getShippingDetailsId());//出运明细主表id
|
|
|
- sy1.setSyShippingDetailsItemId(syShippingDetailsItem.getId());//出运明细子表id
|
|
|
- sy1.setManualYarnUnitPrice(syShippingDetailsItem.getManualYarnUnitPrice());//手册纱单价
|
|
|
- sy1.setManualYarnFlag(syShippingDetailsItem.getManualYarnFlag());//是否手册纱
|
|
|
- sy1.setManualYarnProportion(syShippingDetailsItem.getManualYarnProportion());//手册纱占比
|
|
|
- }
|
|
|
- syPackingListFabricItemMapper.insert(sy1);//插入新数据
|
|
|
- }
|
|
|
- if(oConvertUtils.isNotEmpty(pname)){//不为空就进行添加修改
|
|
|
- sy.setGarmentFactory(pname);//成衣工厂
|
|
|
- syPackingListFabricMapper.updateById(sy);//添加成衣工厂
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- dxpDataPlanService.updateLastTime2(time,"senYu_accessory_data");//修改最后抓取时间
|
|
|
- }catch (Exception e){
|
|
|
- System.out.println("辅料更新失败:"+e.getMessage());
|
|
|
- log.error(e.getMessage());
|
|
|
- }
|
|
|
- //return sys;
|
|
|
- }
|
|
|
-
|
|
|
@Override
|
|
|
@Transactional
|
|
|
public boolean submitBatch(String[] ids) {
|
|
@@ -545,6 +376,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
|
|
|
s1.setMasterMetering(item.getMasterMetering());//单位
|
|
|
syPackingListFabric.setSyDeclarationElementsId(item.getShippingDetailsId());//出运明细主表id
|
|
|
s1.setSpecificationAndModel(item.getSpecificationAndModel());//规格型号
|
|
|
+ s1.setAccount(item.getAccount());
|
|
|
if(s1.getActualDeclaredQuantity()!=null){
|
|
|
s1.setTotalPrice(s1.getActualDeclaredQuantity().multiply(s1.getPrice()));//实际报关数量*单价
|
|
|
}
|
|
@@ -646,7 +478,8 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
|
|
|
item.setInventoryCode(syShippingDetailsItem.getInventoryCode());//物料编码
|
|
|
item.setOmpoId(syShippingDetailsItem.getOmpoId());
|
|
|
item.setOmpoIdItem(syShippingDetailsItem.getOmpoIdItem());
|
|
|
- item.setOmpoAccount(syShippingDetailsItem.getAccount());
|
|
|
+ item.setOmpoAccount(syShippingDetailsItem.getOmpoAccount());
|
|
|
+ item.setAccount(syShippingDetailsItem.getAccount());
|
|
|
|
|
|
item.setSyOrderDataItemId(syShippingDetailsItem.getSyOrderDataItemId());
|
|
|
item.setSyOrderDataId(syShippingDetailsItem.getSyOrderDataId());
|
|
@@ -1570,6 +1403,7 @@ public class SyPackingListFabricServiceImpl extends ServiceImpl<SyPackingListFab
|
|
|
sy1.setSupplierDyeingPlant(syShippingDetailsItem.getSupplier());//染厂
|
|
|
}
|
|
|
sy1.setSupplier(syShippingDetailsItem.getSupplier());//供应商编码
|
|
|
+ sy1.setElementsId(elementsId);//申报要素id
|
|
|
sy1.setSupplierCode(syShippingDetailsItem.getSupplierCode());//供应商
|
|
|
sy1.setSyShippingDetailsId(syShippingDetailsItem.getShippingDetailsId());//出运明细主表id
|
|
|
sy1.setSyShippingDetailsItemId(syShippingDetailsItem.getId());//出运明细子表id
|