Bläddra i källkod

成本报表 表头查询

liuchaohui 2 år sedan
förälder
incheckning
c42d5ce12e

+ 107 - 25
jeecg-boot-module-system/src/main/java/org/jeecg/modules/cost/service/impl/SyCostAllocationServiceImpl.java

@@ -186,31 +186,113 @@ public class SyCostAllocationServiceImpl extends ServiceImpl<SyCostAllocationMap
         //返回数据
         SyCostAllocation syCostAllocation=new SyCostAllocation();
         //查询U8数据 表头
-        String sqlQueryhard = "SELECT    " +
-                "max(o.omCode) as planNum,max(c.cInvName) as poStyleNum,max(pe.cPersonName) as exportSales,  " +
-                "max(ss.cSOCode) as garmentContractno,max(de.cDepName) as department,max(cc.cCusAbbName) as customerShortame,  " +
-                "v.cVenName as processUnit,max(ss.dDate) as outdata,max(ss.iTaxRate) as taxrate,max(ss.cMaker) as preparedBy,  " +
-                "sum(s.iNatSum) as salesordersLocaltotal,sum(s.iSum) as salesrrdersOriginaltotal,sum(o.iQuantity) as planQuantity  " +
-                "FROM    " +
-                "SO_SODetails s   " +
-                "LEFT JOIN SO_SOMain ss on ss.ID= s.ID   " +
-                "right JOIN (   " +
-                "    SELECT    " +
-                "    om.cCode AS omCode,   " +
-                "    om.MOID AS ompoId,od.MODetailsID AS ompoIdItem,   " +
-                "    om.cVenCode AS supplierCode,od.cInvCode,od.isosid,od.iQuantity    " +
-                "    FROM   " +
-                "    OM_MOMain om   " +
-                "    LEFT JOIN OM_MODetails od ON om.MOID = od.MOID    " +
-                "    WHERE   " +
-                "    om.cState = 1 and om.cCode like '"+plannum+"%'"+
-                ") o ON s.isosid  = o.isosid AND s.cInvCode = o.cInvCode   " +
-                "LEFT JOIN Vendor v ON o.supplierCode= v.cVenCode   " +
-                "LEFT JOIN Inventory c on c.cInvCode=s.cInvCode   " +
-                "LEFT JOIN Person  pe ON ss.cPersonCode = pe.cPersonCode   " +
-                "LEFT JOIN Department de ON ss.cDepCode = de.cDepCode   " +
-                "LEFT JOIN Customer cc ON ss.cCusCode = cc.cCusCode   " +
-                "WHERE c.cInvCcode like '19%' GROUP BY v.cVenName ;";
+        String sqlQueryhard = "SELECT     " +
+                "  max(o.omCode) as planNum,max(c.cInvName) as poStyleNum,max(pe.cPersonName) as exportSales," +
+                "  max(ss.cSOCode) as garmentContractno,max(de.cDepName) as department," +
+                "  max(cc.cCusAbbName) as customerShortame,v.cVenName as processUnit,max(ss.dDate) as outdata," +
+                "  max(ss.iTaxRate) as taxrate,max(ss.cMaker) as preparedBy,sum(s.iNatSum) as salesordersLocaltotal," +
+                "  sum(s.iSum) as salesrrdersOriginaltotal,sum(o.iQuantity) as planQuantity   " +
+                "FROM  UFDATA_901_2021.dbo.SO_SODetails s    " +
+                "LEFT JOIN UFDATA_901_2021.dbo.SO_SOMain ss on ss.ID= s.ID    " +
+                "right JOIN (    " +
+                "       SELECT     " +
+                "       om.cCode AS omCode,    " +
+                "       om.MOID AS ompoId,od.MODetailsID AS ompoIdItem,    " +
+                "       om.cVenCode AS supplierCode,od.cInvCode,od.isosid,od.iQuantity     " +
+                "       FROM    " +
+                "       UFDATA_901_2021.dbo.OM_MOMain om    " +
+                "       LEFT JOIN UFDATA_901_2021.dbo.OM_MODetails od ON om.MOID = od.MOID     " +
+                "       WHERE    " +
+                "       om.cState = 1 and om.cCode like '"+plannum+"%'" +
+                "       ) o ON s.isosid  = o.isosid AND s.cInvCode = o.cInvCode    " +
+                "LEFT JOIN UFDATA_901_2021.dbo.Vendor v ON o.supplierCode= v.cVenCode    " +
+                "LEFT JOIN UFDATA_901_2021.dbo.Inventory c on c.cInvCode=s.cInvCode    " +
+                "LEFT JOIN UFDATA_901_2021.dbo.Person  pe ON ss.cPersonCode = pe.cPersonCode    " +
+                "LEFT JOIN UFDATA_901_2021.dbo.Department de ON ss.cDepCode = de.cDepCode    " +
+                "LEFT JOIN UFDATA_901_2021.dbo.Customer cc ON ss.cCusCode = cc.cCusCode    " +
+                "WHERE c.cInvCcode like '19%' GROUP BY v.cVenName " +
+
+                "union all" +
+
+                "SELECT     " +
+                "  max(o.omCode) as planNum,max(c.cInvName) as poStyleNum,max(pe.cPersonName) as exportSales," +
+                "  max(ss.cSOCode) as garmentContractno,max(de.cDepName) as department," +
+                "  max(cc.cCusAbbName) as customerShortame,v.cVenName as processUnit,max(ss.dDate) as outdata," +
+                "  max(ss.iTaxRate) as taxrate,max(ss.cMaker) as preparedBy,sum(s.iNatSum) as salesordersLocaltotal," +
+                "  sum(s.iSum) as salesrrdersOriginaltotal,sum(o.iQuantity) as planQuantity   " +
+                "FROM   UFDATA_902_2021.dbo.SO_SODetails s    " +
+                "LEFT JOIN UFDATA_902_2021.dbo.SO_SOMain ss on ss.ID= s.ID    " +
+                "right JOIN (    " +
+                "       SELECT     " +
+                "       om.cCode AS omCode,    " +
+                "       om.MOID AS ompoId,od.MODetailsID AS ompoIdItem,    " +
+                "       om.cVenCode AS supplierCode,od.cInvCode,od.isosid,od.iQuantity     " +
+                "       FROM    " +
+                "       UFDATA_902_2021.dbo.OM_MOMain om    " +
+                "       LEFT JOIN UFDATA_902_2021.dbo.OM_MODetails od ON om.MOID = od.MOID     " +
+                "       WHERE    " +
+                "       om.cState = 1 and om.cCode like '"+plannum+"%'" +
+                "       ) o ON s.isosid  = o.isosid AND s.cInvCode = o.cInvCode    " +
+                "LEFT JOIN UFDATA_902_2021.dbo.Vendor v ON o.supplierCode= v.cVenCode    " +
+                "LEFT JOIN UFDATA_902_2021.dbo.Inventory c on c.cInvCode=s.cInvCode    " +
+                "LEFT JOIN UFDATA_902_2021.dbo.Person  pe ON ss.cPersonCode = pe.cPersonCode    " +
+                "LEFT JOIN UFDATA_902_2021.dbo.Department de ON ss.cDepCode = de.cDepCode    " +
+                "LEFT JOIN UFDATA_902_2021.dbo.Customer cc ON ss.cCusCode = cc.cCusCode    " +
+                "WHERE c.cInvCcode like '19%' GROUP BY v.cVenName " +
+
+                "union all" +
+
+                "SELECT     " +
+                "  max(o.omCode) as planNum,max(c.cInvName) as poStyleNum,max(pe.cPersonName) as exportSales," +
+                "  max(ss.cSOCode) as garmentContractno,max(de.cDepName) as department," +
+                "  max(cc.cCusAbbName) as customerShortame,v.cVenName as processUnit,max(ss.dDate) as outdata," +
+                "  max(ss.iTaxRate) as taxrate,max(ss.cMaker) as preparedBy,sum(s.iNatSum) as salesordersLocaltotal," +
+                "  sum(s.iSum) as salesrrdersOriginaltotal,sum(o.iQuantity) as planQuantity   " +
+                "FROM  UFDATA_903_2021.dbo.SO_SODetails s    " +
+                "LEFT JOIN UFDATA_903_2021.dbo.SO_SOMain ss on ss.ID= s.ID    " +
+                "right JOIN (    " +
+                "       SELECT     " +
+                "       om.cCode AS omCode,    " +
+                "       om.MOID AS ompoId,od.MODetailsID AS ompoIdItem,    " +
+                "       om.cVenCode AS supplierCode,od.cInvCode,od.isosid,od.iQuantity     " +
+                "       FROM    " +
+                "       UFDATA_903_2021.dbo.OM_MOMain om    " +
+                "       LEFT JOIN UFDATA_903_2021.dbo.OM_MODetails od ON om.MOID = od.MOID     " +
+                "       WHERE    " +
+                "       om.cState = 1 and om.cCode like '"+plannum+"%'" +
+                "       ) o ON s.isosid  = o.isosid AND s.cInvCode = o.cInvCode    " +
+                "LEFT JOIN UFDATA_903_2021.dbo.Vendor v ON o.supplierCode= v.cVenCode    " +
+                "LEFT JOIN UFDATA_903_2021.dbo.Inventory c on c.cInvCode=s.cInvCode    " +
+                "LEFT JOIN UFDATA_903_2021.dbo.Person  pe ON ss.cPersonCode = pe.cPersonCode    " +
+                "LEFT JOIN UFDATA_903_2021.dbo.Department de ON ss.cDepCode = de.cDepCode    " +
+                "LEFT JOIN UFDATA_903_2021.dbo.Customer cc ON ss.cCusCode = cc.cCusCode    " +
+                "WHERE c.cInvCcode like '19%' GROUP BY v.cVenName ";
+                
+//                "SELECT    " +
+//                "max(o.omCode) as planNum,max(c.cInvName) as poStyleNum,max(pe.cPersonName) as exportSales,  " +
+//                "max(ss.cSOCode) as garmentContractno,max(de.cDepName) as department,max(cc.cCusAbbName) as customerShortame,  " +
+//                "v.cVenName as processUnit,max(ss.dDate) as outdata,max(ss.iTaxRate) as taxrate,max(ss.cMaker) as preparedBy,  " +
+//                "sum(s.iNatSum) as salesordersLocaltotal,sum(s.iSum) as salesrrdersOriginaltotal,sum(o.iQuantity) as planQuantity  " +
+//                "FROM    " +
+//                "SO_SODetails s   " +
+//                "LEFT JOIN SO_SOMain ss on ss.ID= s.ID   " +
+//                "right JOIN (   " +
+//                "    SELECT    " +
+//                "    om.cCode AS omCode,   " +
+//                "    om.MOID AS ompoId,od.MODetailsID AS ompoIdItem,   " +
+//                "    om.cVenCode AS supplierCode,od.cInvCode,od.isosid,od.iQuantity    " +
+//                "    FROM   " +
+//                "    OM_MOMain om   " +
+//                "    LEFT JOIN OM_MODetails od ON om.MOID = od.MOID    " +
+//                "    WHERE   " +
+//                "    om.cState = 1 and om.cCode like '"+plannum+"%'"+
+//                ") o ON s.isosid  = o.isosid AND s.cInvCode = o.cInvCode   " +
+//                "LEFT JOIN Vendor v ON o.supplierCode= v.cVenCode   " +
+//                "LEFT JOIN Inventory c on c.cInvCode=s.cInvCode   " +
+//                "LEFT JOIN Person  pe ON ss.cPersonCode = pe.cPersonCode   " +
+//                "LEFT JOIN Department de ON ss.cDepCode = de.cDepCode   " +
+//                "LEFT JOIN Customer cc ON ss.cCusCode = cc.cCusCode   " +
+//                "WHERE c.cInvCcode like '19%' GROUP BY v.cVenName ;";
         List<Map<String, Object>> list  = senYuDataSourceOne.queryForList(sqlQueryhard);
         if(list.size()==0){
             return null;