Browse Source

手工匹配优化

zengtx 1 year ago
parent
commit
a6d57e0e9b

+ 84 - 22
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/orderData/controller/SySOAndOMController.java

@@ -35,6 +35,7 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.math.BigDecimal;
+import java.time.ZonedDateTime;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -127,25 +128,85 @@ public class SySOAndOMController extends JeecgController<SySOAndOM, ISySOAndOMSe
         return Result.OK(pageList);
     }
 
+    //手工匹配里的保存
     @AutoLog(value = "订单数据同步接口-新增")
     @ApiOperation(value="订单数据同步接口-新增", notes="订单数据同步接口-新增")
     @RequestMapping(value = "/addSOAndOM")
     public Result<?> addSOAndOM(@RequestBody List<SySOAndOM> sySOAndOM) {
         //检查参数
-        if(sySOAndOM==null){
+        if (sySOAndOM == null) {
             return Result.error("请不要保存错误数据!!!");
         }
+
         //判断新增单据是否已入单证
-        Map<String,Object> columnMap = new HashMap<String,Object>();
-        columnMap.put("account",sySOAndOM.get(0).getAccount());
-        columnMap.put("order_number",sySOAndOM.get(0).getOrderNumber());
-        List list = syOrderDataService.listByMap(columnMap);
-        if(list.size()>0){
-            return Result.error("同步单据已入单证!!!");
-        }
+//        Map<String, Object> columnMap = new HashMap<String, Object>();
+//        columnMap.put("account", sySOAndOM.get(0).getAccount());
+//        columnMap.put("order_number", sySOAndOM.get(0).getOrderNumber());
+//        List list = syOrderDataService.listByMap(columnMap);
+
+        QueryWrapper<SyOrderData> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("account", sySOAndOM.get(0).getAccount());
+        queryWrapper.like("order_number", sySOAndOM.get(0).getOrderNumber());
+        List list = syOrderDataService.list(queryWrapper);
+
+
         //进入新增 1.查询U8 2.保存
         SyOrderData syOrderData = sySOAndOMService.queryOrderByCode(sySOAndOM.get(0));
-        for (SySOAndOM sy:sySOAndOM) {
+
+        if (list.size() > 0) {
+            //主表ID
+            String syOrderId = syOrderData.getAccount() + syOrderData.getId()+"-("+list.size()+")";
+            //已经入单证的数据,重新生成新的单子,使用后缀加1
+            for (SySOAndOM sy : sySOAndOM) {
+
+                SyOrderDataItem syOrderDataItem = sySOAndOMService.queryOrderItemByCode(sy);
+                SyOrderDataVO ordervo = sySOAndOMService.queryOM(sy);
+                syOrderDataItem.setQuantity(new BigDecimal(sy.getQuantity()));
+                syOrderDataItem.setSurplusNum(new BigDecimal(sy.getQuantity()));
+                syOrderDataItem.setOmpoAccount(ordervo.getOmpoAccount());
+                syOrderDataItem.setOmpoCode(ordervo.getOmpoCode());
+                syOrderDataItem.setOmpoId(ordervo.getOmpoId());
+                syOrderDataItem.setDArriveDate(ordervo.getDArriveDate());
+                syOrderDataItem.setOmpoIdItem(ordervo.getOmpoIdItem());
+                syOrderDataItem.setITaxPrice(ordervo.getITaxPrice());
+                if (syOrderDataItem.getGuangpeiGateWidth() == null || syOrderDataItem.getGuangpeiGateWidth().equals("/") ||
+                        syOrderDataItem.getGuangpeiGateWidth().equals("")) {
+                    syOrderDataItem.setGuangpeiGateWidth(ordervo.getGuangpeiGateWidth());
+                }
+                syOrderDataItem.setSupplier(ordervo.getSupplier());
+                if (syOrderDataItem.getInventoryCcode().substring(0, 2).equals("19")) {
+                    syOrderDataItem.setGarmentFactory(ordervo.getSupplier());
+                }/*else if(syOrderData.getCustomerAbbreviation().equals("International Apparel Group") || syOrderData.getCustomerAbbreviation().equals("宁波森语") ) {
+                syOrderDataItem.setGarmentFactory(queryGSupplier(syOrderData.getOrderNumber(),syOrderData.getAccount(),syOrderData.getCustomerCode()));
+            }*/ else {
+                    syOrderDataItem.setGarmentFactory(syOrderData.getGarmentFactory());
+                }
+                if (syOrderDataItem.getOmpoIdItem() != null && sy.getAccount() != null) {
+                    List<String> rsup = queryRSupplier(syOrderDataItem.getOmpoIdItem(), sy.getAccount());
+                    if (rsup.size() > 0) {
+                        syOrderDataItem.setRSupplierCode(rsup.get(0));
+                        syOrderDataItem.setRSupplier(rsup.get(1));
+                    }
+                }
+                if (sy.getCopyRow() == 0) {
+                    syOrderDataItem.setId(syOrderData.getAccount() + syOrderDataItem.getId()+"-("+list.size()+")");
+                } else {
+                    syOrderDataItem.setId(syOrderData.getAccount() + syOrderDataItem.getId() + "-" + sy.getCopyRow()+"-("+list.size()+")");
+                }
+                syOrderDataItem.setSyOrderDataId(syOrderId);
+                syOrderDataItemService.save(syOrderDataItem);
+            }
+            syOrderData.setFlag(1);
+            syOrderData.setId(syOrderId);
+            syOrderData.setOrderNumber(syOrderData.getOrderNumber()+"-("+list.size()+")");
+            syOrderDataService.save(syOrderData);
+            //回写U8 手动拉取为 同步字段状态值为 2
+            sySOAndOM.get(0).setFlag("2");
+            sySOAndOMService.updateSO(sySOAndOM.get(0));
+            return Result.OK("同步成功!!!");
+        }else{
+
+        for (SySOAndOM sy : sySOAndOM) {
             SyOrderDataItem syOrderDataItem = sySOAndOMService.queryOrderItemByCode(sy);
             SyOrderDataVO ordervo = sySOAndOMService.queryOM(sy);
             syOrderDataItem.setQuantity(new BigDecimal(sy.getQuantity()));
@@ -156,41 +217,42 @@ public class SySOAndOMController extends JeecgController<SySOAndOM, ISySOAndOMSe
             syOrderDataItem.setDArriveDate(ordervo.getDArriveDate());
             syOrderDataItem.setOmpoIdItem(ordervo.getOmpoIdItem());
             syOrderDataItem.setITaxPrice(ordervo.getITaxPrice());
-            if(syOrderDataItem.getGuangpeiGateWidth()==null||syOrderDataItem.getGuangpeiGateWidth().equals("/")||
-                    syOrderDataItem.getGuangpeiGateWidth().equals("")){
+            if (syOrderDataItem.getGuangpeiGateWidth() == null || syOrderDataItem.getGuangpeiGateWidth().equals("/") ||
+                    syOrderDataItem.getGuangpeiGateWidth().equals("")) {
                 syOrderDataItem.setGuangpeiGateWidth(ordervo.getGuangpeiGateWidth());
             }
             syOrderDataItem.setSupplier(ordervo.getSupplier());
-            if(syOrderDataItem.getInventoryCcode().substring(0,2).equals("19")){
+            if (syOrderDataItem.getInventoryCcode().substring(0, 2).equals("19")) {
                 syOrderDataItem.setGarmentFactory(ordervo.getSupplier());
             }/*else if(syOrderData.getCustomerAbbreviation().equals("International Apparel Group") || syOrderData.getCustomerAbbreviation().equals("宁波森语") ) {
                 syOrderDataItem.setGarmentFactory(queryGSupplier(syOrderData.getOrderNumber(),syOrderData.getAccount(),syOrderData.getCustomerCode()));
-            }*/else {
+            }*/ else {
                 syOrderDataItem.setGarmentFactory(syOrderData.getGarmentFactory());
             }
-            if(syOrderDataItem.getOmpoIdItem()!=null && sy.getAccount()!=null){
-                List<String> rsup = queryRSupplier(syOrderDataItem.getOmpoIdItem(),sy.getAccount());
-                if(rsup.size()>0){
+            if (syOrderDataItem.getOmpoIdItem() != null && sy.getAccount() != null) {
+                List<String> rsup = queryRSupplier(syOrderDataItem.getOmpoIdItem(), sy.getAccount());
+                if (rsup.size() > 0) {
                     syOrderDataItem.setRSupplierCode(rsup.get(0));
                     syOrderDataItem.setRSupplier(rsup.get(1));
                 }
             }
-            if(sy.getCopyRow()==0){
-                syOrderDataItem.setId(syOrderData.getAccount()+syOrderDataItem.getId());
-            }else{
-                syOrderDataItem.setId(syOrderData.getAccount()+syOrderDataItem.getId()+"-"+sy.getCopyRow());
+            if (sy.getCopyRow() == 0) {
+                syOrderDataItem.setId(syOrderData.getAccount() + syOrderDataItem.getId());
+            } else {
+                syOrderDataItem.setId(syOrderData.getAccount() + syOrderDataItem.getId() + "-" + sy.getCopyRow());
             }
-            syOrderDataItem.setSyOrderDataId(syOrderData.getAccount()+syOrderDataItem.getSyOrderDataId());
+            syOrderDataItem.setSyOrderDataId(syOrderData.getAccount() + syOrderDataItem.getSyOrderDataId());
             syOrderDataItemService.save(syOrderDataItem);
         }
         syOrderData.setFlag(1);
-        syOrderData.setId(syOrderData.getAccount()+syOrderData.getId());
+        syOrderData.setId(syOrderData.getAccount() + syOrderData.getId());
         syOrderDataService.save(syOrderData);
         //回写U8 手动拉取为 同步字段状态值为 2
         sySOAndOM.get(0).setFlag("2");
         sySOAndOMService.updateSO(sySOAndOM.get(0));
         return Result.OK("同步成功!!!");
     }
+    }
 
     /*
      * 查询成衣工厂  (面辅料供应商编码 面辅料供应商名称)

+ 5 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/orderData/entity/SyOrderDataVO.java

@@ -1,6 +1,8 @@
 package org.jeecg.modules.documents.orderData.entity;
 import lombok.Data;
 
+import java.math.BigDecimal;
+
 @Data
 public class SyOrderDataVO {
     //销售订单子表id
@@ -40,4 +42,7 @@ public class SyOrderDataVO {
     //采购委外计划到货时间
     private String dArriveDate;
 
+    //数量
+    private BigDecimal quantity;
+
 }

+ 122 - 55
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/orderData/service/impl/SyOrderDataServiceImpl.java

@@ -20,6 +20,7 @@ import org.jeecg.modules.openApi.service.ISenYuDataSourceOne;
 import org.jeecg.modules.openApi.service.ISenYuDataSourceThree;
 import org.jeecg.modules.openApi.service.ISenYuDataSourceTwo;
 import org.jeecg.modules.system.util.JsonChangeUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeansException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.ApplicationContext;
@@ -85,11 +86,11 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
             String pkorgSplit[] = pkorg.split(",");
 
             //查销售订单主表数据
-            for (String str : pkorgSplit) {
-                String pkorgStr = str;
-                String pkorgValue[] = pkorgStr.split(":");
-                //得到对应的账套
-                //String account = pkorgValue[1];
+            if (account != "" && account !=null) {
+//                String pkorgStr = str;
+//                String pkorgValue[] = pkorgStr.split(":");
+//                //得到对应的账套
+//                //String account = pkorgValue[1];
 
                 String sql = "SELECT " +
                         "s.ID AS id," +
@@ -238,44 +239,109 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
                         }
                     }
                     sy2.setSyOrderDataId(sy.getAccount()+sy2.getSyOrderDataId());
-                    SyOrderDataVO ordervo = queryOrder(sy2.getId());
-                    if(ordervo != null){
-                        sy2.setOmpoAccount(ordervo.getOmpoAccount());
-                        sy2.setOmpoCode(ordervo.getOmpoCode());
-                        sy2.setOmpoId(ordervo.getOmpoId());
-                        sy2.setDArriveDate(ordervo.getDArriveDate());
-                        sy2.setOmpoIdItem(ordervo.getOmpoIdItem());
-                        sy2.setITaxPrice(ordervo.getITaxPrice());
+                    List<SyOrderDataVO> ordervo = queryOrder(sy2.getId());
+
+                    if(ordervo.size()!=0 && ordervo.size() == 1){
+                        sy2.setOmpoAccount(ordervo.get(0).getOmpoAccount());
+                        sy2.setOmpoCode(ordervo.get(0).getOmpoCode());
+                        sy2.setOmpoId(ordervo.get(0).getOmpoId());
+                        sy2.setDArriveDate(ordervo.get(0).getDArriveDate());
+                        sy2.setOmpoIdItem(ordervo.get(0).getOmpoIdItem());
+                        sy2.setITaxPrice(ordervo.get(0).getITaxPrice());
                         if(sy2.getGuangpeiGateWidth()==null||sy2.getGuangpeiGateWidth().equals("/")||sy2.getGuangpeiGateWidth().equals("")){
-                            sy2.setGuangpeiGateWidth(ordervo.getGuangpeiGateWidth());
+                            sy2.setGuangpeiGateWidth(ordervo.get(0).getGuangpeiGateWidth());
                         }
-                        sy2.setSupplier(ordervo.getSupplier());
+                        sy2.setSupplier(ordervo.get(0).getSupplier());
                         if(sy2.getInventoryCcode().substring(0,2).equals("19")){
-                            sy2.setGarmentFactory(ordervo.getSupplier());
+                            sy2.setGarmentFactory(ordervo.get(0).getSupplier());
                         }/*else if(sy.getCustomerAbbreviation().equals("International Apparel Group") || sy.getCustomerAbbreviation().equals("宁波森语") ) {
                             sy2.setGarmentFactory(queryGSupplier(sy.getOrderNumber(),sy.getAccount(),sy.getCustomerCode()));
                         }*/else {
                             sy2.setGarmentFactory(sy.getGarmentFactory());
                         }
-                        sy2.setSupplierCode(ordervo.getSupplierCode());
+                        sy2.setSupplierCode(ordervo.get(0).getSupplierCode());
+
+                        if(sy2.getOmpoIdItem()==null || sy2.getOmpoIdItem().equals("")){
+                            continue;
+                        }
+                        if(sy2.getOmpoIdItem()!=null && sy.getAccount()!=null){
+                            List<String> rsup = queryRSupplier(sy2.getOmpoIdItem(),sy.getAccount());
+                            if(rsup.size()>0){
+                                sy2.setRSupplierCode(rsup.get(0));
+                                sy2.setRSupplier(rsup.get(1));
+                            }
+                        }
+                        if(isNewOrder){
+                            syOrderDataItemService.save(sy2);
+                            continue;
+                        }
+
+                        syItemList.add(sy2);
                     }else {
-                        continue;
-                    }
-                    if(sy2.getOmpoIdItem()==null || sy2.getOmpoIdItem().equals("")){
-                        continue;
-                    }
-                    if(sy2.getOmpoIdItem()!=null && sy.getAccount()!=null){
-                        List<String> rsup = queryRSupplier(sy2.getOmpoIdItem(),sy.getAccount());
-                        if(rsup.size()>0){
-                            sy2.setRSupplierCode(rsup.get(0));
-                            sy2.setRSupplier(rsup.get(1));
+                        int indexi = 0;
+                        for(SyOrderDataVO li:ordervo) {
+
+                            sy2.setQuantity(li.getQuantity());//数量
+                            sy2.setSurplusNum(li.getQuantity());
+
+                            sy2.setOmpoAccount(li.getOmpoAccount());
+                            sy2.setOmpoCode(li.getOmpoCode());
+                            sy2.setOmpoId(li.getOmpoId());
+                            sy2.setDArriveDate(li.getDArriveDate());
+                            sy2.setOmpoIdItem(li.getOmpoIdItem());
+                            sy2.setITaxPrice(li.getITaxPrice());
+                            if(sy2.getGuangpeiGateWidth()==null||sy2.getGuangpeiGateWidth().equals("/")||sy2.getGuangpeiGateWidth().equals("")){
+                                sy2.setGuangpeiGateWidth(li.getGuangpeiGateWidth());
+                            }
+                            sy2.setSupplier(li.getSupplier());
+                            if(sy2.getInventoryCcode().substring(0,2).equals("19")){
+                                sy2.setGarmentFactory(li.getSupplier());
+                            }/*else if(sy.getCustomerAbbreviation().equals("International Apparel Group") || sy.getCustomerAbbreviation().equals("宁波森语") ) {
+                            sy2.setGarmentFactory(queryGSupplier(sy.getOrderNumber(),sy.getAccount(),sy.getCustomerCode()));
+                        }*/else {
+                                sy2.setGarmentFactory(sy.getGarmentFactory());
+                            }
+                            sy2.setSupplierCode(li.getSupplierCode());
+
+                            if(sy2.getOmpoIdItem()==null || sy2.getOmpoIdItem().equals("")){
+                                continue;
+                            }
+                            if(sy2.getOmpoIdItem()!=null && sy.getAccount()!=null){
+                                List<String> rsup = queryRSupplier(sy2.getOmpoIdItem(),sy.getAccount());
+                                if(rsup.size()>0){
+                                    sy2.setRSupplierCode(rsup.get(0));
+                                    sy2.setRSupplier(rsup.get(1));
+                                }
+                            }
+
+                            indexi++;
+                            SyOrderDataItem syEntity = new SyOrderDataItem();
+                            BeanUtils.copyProperties(sy2, syEntity);
+                            if(indexi>1 ){
+                                syEntity.setId(syEntity.getId()+"-("+indexi+")");
+                            }
+
+                            if(isNewOrder){
+                                String item = syOrderDataItemService.queryItemMub(syEntity.getId());
+                                if(item!=null && item.equals("已被参照")) {
+                                    idsID.add(syEntity.getId());
+                                    continue;
+                                }else {
+                                    if(indexi>1){
+                                        idsID.add(syEntity.getId());
+                                    }
+                                    //更新数据前 删除旧数据防止id冲突
+                                    syOrderDataItemService.deleteByID(syEntity.getId());
+                                }
+                                syOrderDataItemService.save(syEntity);
+                                continue;
+                            }
+
+                            syItemList.add(syEntity);
                         }
+
                     }
-                    if(isNewOrder){
-                        syOrderDataItemService.save(sy2);
-                        continue;
-                    }
-                    syItemList.add(sy2);
+
                 }
                 //处理U8已经删除的数据,单证系统也需要删除
                 //第一查询改订单下所有行数据
@@ -310,12 +376,12 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
                             senYuDataSourceThree.update(blackWrite);
                         }
                         //进入下一个主表的添加,这里是单个订单同步 所以是返回同步失败且通知原因
-                        if(jianMub<1){
-                            result.setMessage("同步失败,销售订单不符合同步需求!!!");
-                            return result;
-                        }else {
-                            continue;
-                        }
+//                        if(jianMub<1){
+//                            result.setMessage("同步失败,销售订单不符合同步需求!!!");
+//                            return result;
+//                        }else {
+                           // continue;
+                       // }
                     }
                 }
                 //添加主表数据进入数据库
@@ -492,11 +558,11 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
     /*
    查询最终供应商数据
     */
-    public SyOrderDataVO queryOrder(String orderItemID) throws Exception{
+    public List<SyOrderDataVO> queryOrder(String orderItemID) throws Exception{
         SyOrderDataVO syOrderDataVO = new SyOrderDataVO();
         syOrderDataVO.setId(orderItemID);
         List<Map<String, Object>> listSon = new ArrayList<>();
-        SyOrderDataVO result = new SyOrderDataVO();
+        List<SyOrderDataVO> result = new ArrayList<>();
         /*
         查询账套用于判断
          */
@@ -518,14 +584,14 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
         对应账套取对应的值
          */
         if(account[0].equals(syOrderDataVO.getAccount())){
-            String sql = "  SELECT" +
+            String sql = "  SELECT quantity," +
                     " ompoCode,ompoIdItem,ompoId,supplierCode,v.cVenAbbName as supplier,iTaxPrice,dArriveDate,guangpeiGateWidth," +account[0]+" as ompoAccount"+
                     " FROM" +
                     " SO_SODetails s" +
                     " left join (" +
                     " SELECT om.cCode as ompoCode,om.MOID as ompoId,od.MODetailsID as ompoIdItem," +
                     " od.cDefine23  as guangpeiGateWidth,od.dArriveDate,"+
-                    " om.cVenCode as supplierCode,od.iTaxPrice,od.cInvCode,od.isosid" +
+                    " om.cVenCode as supplierCode,od.iTaxPrice,od.cInvCode,od.isosid,od.iQuantity as quantity " +
                     " FROM OM_MOMain om" +
                     " LEFT JOIN  OM_MODetails  od on om.MOID =od.MOID" +
                     " where om.iVerifyStateNew = 2 and (om.cCloser is null or om.cCloser='asuser')" +
@@ -535,17 +601,17 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
             listSon = senYuDataSourceOne.queryForList(sql);
             List<JSONObject> jian = JsonChangeUtils.toJSONObject(listSon);
             for (JSONObject jsonObject:jian) {
-                result = JSONObject.toJavaObject(jsonObject, SyOrderDataVO.class);
+                result.add(JSONObject.toJavaObject(jsonObject, SyOrderDataVO.class));
             }
             return result;
 
         }else if(account[1].equals(syOrderDataVO.getAccount())){
-            String sql = "SELECT" +
+            String sql = "SELECT quantity," +
                     " ompoCode,ompoIdItem,ompoId,supplierCode,v.cVenAbbName as supplier,iTaxPrice,guangpeiGateWidth,dArriveDate,s.iRowNo as poIrowno," +account[1]+" as ompoAccount"+
                     " FROM" +
                     " SO_SODetails s" +
                     " left join (" +
-                    " SELECT pm.cPOID as ompoCode,pm.POID as ompoId,pd.id as ompoIdItem,pd.irowno as poIrowno,"+
+                    " SELECT pm.cPOID as ompoCode,pm.POID as ompoId,pd.id as ompoIdItem,pd.irowno as poIrowno,pd.iQuantity as quantity,"+
                     " pd.cDefine23  as guangpeiGateWidth,pd.dArriveDate,"+
                     " pm.cVenCode as supplierCode,pd.iTaxPrice,pd.cInvCode,pd.iorderdid as isosid" +
                     " FROM PO_Pomain pm" +
@@ -558,28 +624,29 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
             List<JSONObject> jian = JsonChangeUtils.toJSONObject(list);
             for (JSONObject jsonObject:jian) {
                 syOrderDataVO = JSONObject.toJavaObject(jsonObject, SyOrderDataVO.class);
+                result.add(syOrderDataVO);
             }
             if(syOrderDataVO.getSupplier()==null){
-                return syOrderDataVO;
+                return result;
             }
             if(!syOrderDataVO.getSupplier().equals("马菲羊")){
-                return syOrderDataVO;
+                return result;
             }
-            String sql2 = "SELECT" +
+            String sql2 = "SELECT quantity," +
                     " ompoCode,ompoIdItem,ompoId,supplierCode,v.cVenAbbName as supplier,iTaxPrice,dArriveDate,guangpeiGateWidth," +account[2]+" as ompoAccount"+
                     " FROM" +
                     "  so_somain ss " +
                     "  join SO_SODetails s on s.id=ss.id" +
                     " join HY_DZ_K7_SYNERGISMLOGDID hy on voucherno=s.cSOCode and did=s.isosid "+
                     " left join (" +
-                    " SELECT pm.cPOID as ompoCode,pm.POID as ompoId,pd.id as ompoIdItem," +
+                    " SELECT pm.cPOID as ompoCode,pm.POID as ompoId,pd.id as ompoIdItem,pd.iQuantity as quantity," +
                     " pd.cDefine23  as guangpeiGateWidth,pd.dArriveDate,"+
                     " pm.cVenCode as supplierCode,pd.iTaxPrice,pd.cInvCode,pd.iorderdid as isosid" +
                     " FROM PO_Pomain pm" +
                     " LEFT JOIN  PO_Podetails pd on pm.POID=pd.POID" +
                     " where pm.iverifystateex = 2 and (pm.cCloser is null or pm.cCloser='asuser')" +
                     " UNION" +
-                    " SELECT om.cCode as ompoCode,om.MOID as ompoId,od.MODetailsID as ompoIdItem," +
+                    " SELECT om.cCode as ompoCode,om.MOID as ompoId,od.MODetailsID as ompoIdItem,od.iQuantity as quantity," +
                     " od.cDefine23  as guangpeiGateWidth,od.dArriveDate,"+
                     " om.cVenCode as supplierCode,od.iTaxPrice,od.cInvCode,od.isosid" +
                     " FROM OM_MOMain om" +
@@ -591,24 +658,24 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
             listSon = senYuDataSourceThree.queryForList(sql2);
             List<JSONObject> jian2 = JsonChangeUtils.toJSONObject(listSon);
             for (JSONObject jsonObject:jian2) {
-                result = JSONObject.toJavaObject(jsonObject, SyOrderDataVO.class);
+                result.add(JSONObject.toJavaObject(jsonObject, SyOrderDataVO.class));
             }
             return result;
 
         }else if(account[2].equals(syOrderDataVO.getAccount())){
-            String sql = "SELECT" +
+            String sql = "SELECT quantity," +
                     " ompoCode,ompoIdItem,ompoId,supplierCode,v.cVenAbbName as supplier,iTaxPrice,dArriveDate,guangpeiGateWidth," +account[2]+" as ompoAccount"+
                     " FROM" +
                     " SO_SODetails s" +
                     " left join (" +
-                    " SELECT pm.cPOID as ompoCode,pm.POID as ompoId,pd.id as ompoIdItem," +
+                    " SELECT pm.cPOID as ompoCode,pm.POID as ompoId,pd.id as ompoIdItem,pd.iQuantity as quantity," +
                     " pd.cDefine23  as guangpeiGateWidth,pd.dArriveDate,"+
                     " pm.cVenCode as supplierCode,pd.iTaxPrice,pd.cInvCode,pd.iorderdid as isosid" +
                     " FROM PO_Pomain pm" +
                     " LEFT JOIN  PO_Podetails pd on pm.POID=pd.POID" +
                     " where pm.iverifystateex = 2 and (pm.cCloser is null or pm.cCloser='asuser')" +
                     " UNION" +
-                    " SELECT om.cCode as ompoCode,om.MOID as ompoId,od.MODetailsID as ompoIdItem," +
+                    " SELECT om.cCode as ompoCode,om.MOID as ompoId,od.MODetailsID as ompoIdItem,od.iQuantity as quantity," +
                     " od.cDefine23  as guangpeiGateWidth,od.dArriveDate,"+
                     " om.cVenCode as supplierCode,od.iTaxPrice,od.cInvCode,od.isosid" +
                     " FROM OM_MOMain om" +
@@ -620,7 +687,7 @@ public class SyOrderDataServiceImpl extends ServiceImpl<SyOrderDataMapper, SyOrd
             listSon = senYuDataSourceThree.queryForList(sql);
             List<JSONObject> jian = JsonChangeUtils.toJSONObject(listSon);
             for (JSONObject jsonObject:jian) {
-                result = JSONObject.toJavaObject(jsonObject, SyOrderDataVO.class);
+                result.add(JSONObject.toJavaObject(jsonObject, SyOrderDataVO.class));
             }
             return result;