From aeb4d87e1a00157f02557f9c75c2a5000bd64ab7 Mon Sep 17 00:00:00 2001 From: Administrator Date: Wed, 2 Mar 2022 19:35:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Report/WmsOutputSumDapperRepository.cs | 992 ++++++++++-------- .../Services/Report/FisUpdateExportService.cs | 6 +- .../InvoiceSettledDetailDiffExportService.cs | 2 +- ...UnInvoiceSettledDetailDiffExportService.cs | 2 +- .../Report/WmsOutputSumExportService.cs | 8 +- 5 files changed, 562 insertions(+), 448 deletions(-) diff --git a/src/Modules/SettleAccount/src/SettleAccount.EntityFrameworkCore/Repository/SettleAccountJob/Report/WmsOutputSumDapperRepository.cs b/src/Modules/SettleAccount/src/SettleAccount.EntityFrameworkCore/Repository/SettleAccountJob/Report/WmsOutputSumDapperRepository.cs index 54b9ef7d..9b9ceb94 100644 --- a/src/Modules/SettleAccount/src/SettleAccount.EntityFrameworkCore/Repository/SettleAccountJob/Report/WmsOutputSumDapperRepository.cs +++ b/src/Modules/SettleAccount/src/SettleAccount.EntityFrameworkCore/Repository/SettleAccountJob/Report/WmsOutputSumDapperRepository.cs @@ -14,21 +14,51 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report public class WmsOutputSum { - [ExporterHeader(DisplayName = "物料号" )] - //物料号 - public string MaterialCode { set; get; } - [ExporterHeader(DisplayName = "物料描述")] - //物料描述 - public string MaterialDesc { set; get; } - [ExporterHeader(DisplayName = "物料组(车型)")] - //物料组(车型) - public string MaterialGroup { set; get; } + [ExporterHeader(DisplayName = "客户")] + public string 客户 { set; get; } + [ExporterHeader(DisplayName = "出库类型")] + public string 出库类型 { set; get; } + [ExporterHeader(DisplayName = "结算单")] + public string 结算单 { set; get; } + [ExporterHeader(DisplayName = "物料号")] + public string 物料号 { set; get; } + [ExporterHeader(DisplayName = "通用代码号")] + public string 通用代码号 { set; get; } [ExporterHeader(DisplayName = "结算数量")] - public decimal Qty { set; get; } - [ExporterHeader(DisplayName = "单价")] - public decimal Price { set; get; } - [ExporterHeader(DisplayName = "金额")] - public decimal Amt { set; get; } + public string 结算数量 { set; get; } + [ExporterHeader(DisplayName = "实际出库数量")] + public string 实际出库数量 { set; get; } + [ExporterHeader(DisplayName = "差异数量")] + public string 差异数量 { set; get; } + [ExporterHeader(DisplayName = "开票单价")] + public string 开票单价 { set; get; } + [ExporterHeader(DisplayName = "结算金额")] + public string 结算金额 { set; get; } + [ExporterHeader(DisplayName = "WMS待出库金额")] + public string WMS待出库金额 { set; get; } + + + + + [ExporterHeader(DisplayName = "物料组编码")] + public string 物料组编码 { set; get; } + [ExporterHeader(DisplayName = "物料组车型")] + public string 物料组车型 { set; get; } + [ExporterHeader(DisplayName = "物料描述")] + public string 物料描述 { set; get; } + + + + + + + + + + + + + } @@ -65,315 +95,370 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report { } - public virtual List GetWmsSumExtendList(string version) + public virtual List GetWmsSumExtendList(string version) { - var str = "SELECT\n" + - " Client 客户,\n" + - " [Type] 出库类型,\n" + - " BillNum 出库单,\n" + - " MaterialCode 物料号,\n" + - " MaterialDesc 物料描述,\n" + - " BillNum 出库单号,\n" + - " MaterialGroup 物料组,\n" + - " [1] 待出库,\n" + - " ISNULL([2], 0 ) 已出库 \n" + - "FROM\n" + - " (\n" + - " SELECT\n" + - " * \n" + - " FROM\n" + - " (\n" + - " SELECT\n" + - " temp.Client,\n" + - " temp.Type,\n" + - " temp.BillNum,\n" + - " temp.MaterialCode,\n" + - " temp2.MaterialDesc,\n" + - " temp.Qty,\n" + - " 1 STATE,\n" + - " EstimateTypeDesc MaterialGroup,\n" + - " EstimateType \n" + - " FROM\n" + - " (\n" + - " SELECT\n" + - " '大众准时化出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsJitOutPutDetial \n" + - " WHERE\n" + - " State = 1 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '大众看板出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 1 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '大众无看板出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " SapMaterialCode MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsWithOutKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 1 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " SapMaterialCode UNION ALL\n" + - " SELECT\n" + - " '大众备件汇总出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsSharePartOutPutDetial \n" + - " WHERE\n" + - " State = 1 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '大众备件条码出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsSharePart90OutPutDetial \n" + - " WHERE\n" + - " State = 1 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '红旗看板出库' AS Type,\n" + - " '红旗' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsHQHKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 1 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '红旗看板出库' AS Type,\n" + - " '红旗' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsHQHKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 1 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '红旗一轿手工出库' AS Type,\n" + - " '红旗' Client,\n" + - " BillNum,\n" + - " SapMaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsHQWithOutKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 1 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " SapMaterialCode UNION ALL\n" + - " SELECT\n" + - " '一汽奔腾轿车出库' AS Type,\n" + - " '奔腾' Client,\n" + - " BillNum,\n" + - " SapMaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsHQWithOutKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 1 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " SapMaterialCode \n" + - " ) temp\n" + - " LEFT JOIN ( SELECT max( Id ) Id, MaterialCode, MaterialDesc, EstimateType, EstimateTypeDesc FROM Set_material GROUP BY MaterialCode, MaterialDesc, EstimateTypeDesc, EstimateType ) temp2 ON temp.MaterialCode = temp2.MaterialCode \n" + - " ) t1 UNION ALL\n" + - " SELECT\n" + - " * \n" + - " FROM\n" + - " (\n" + - " SELECT\n" + - " temp.Client ,\n" + - " temp.Type,\n" + - " temp.BillNum,\n" + - " temp.MaterialCode,\n" + - " temp2.MaterialDesc,\n" + - " temp.Qty,\n" + - " 2 STATE,\n" + - " EstimateTypeDesc MaterialGroup,\n" + - " EstimateType \n" + - " FROM\n" + - " (\n" + - " SELECT\n" + - " '大众准时化出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsJitOutPutDetial \n" + - " WHERE\n" + - " State = 2 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '大众看板出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 2 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '大众无看板出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " SapMaterialCode MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsWithOutKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 2 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " SapMaterialCode UNION ALL\n" + - " SELECT\n" + - " '大众备件汇总出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsSharePartOutPutDetial \n" + - " WHERE\n" + - " State = 2 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '大众备件条码出库' AS Type,\n" + - " '大众' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsSharePart90OutPutDetial \n" + - " WHERE\n" + - " State = 2 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '红旗看板出库' AS Type,\n" + - " '红旗' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsHQHKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 2 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '红旗看板出库' AS Type,\n" + - " '红旗' Client,\n" + - " BillNum,\n" + - " MaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsHQHKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 2 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " MaterialCode UNION ALL\n" + - " SELECT\n" + - " '红旗一轿手工出库' AS Type,\n" + - " '红旗' Client,\n" + - " BillNum,\n" + - " SapMaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsHQWithOutKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 2 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " SapMaterialCode UNION ALL\n" + - " SELECT\n" + - " '一汽奔腾轿车出库' AS Type,\n" + - " '奔腾' Client,\n" + - " BillNum,\n" + - " SapMaterialCode,\n" + - " SUM( Qty ) Qty \n" + - " FROM\n" + - " Set_WmsHQWithOutKanbanOutPutDetial \n" + - " WHERE\n" + - " State = 2 \n" + - " AND VERSION = '{0}' \n" + - " GROUP BY\n" + - " BillNum,\n" + - " SapMaterialCode \n" + - " ) temp\n" + - " LEFT JOIN ( SELECT max( Id ) Id, MaterialCode, MaterialDesc, EstimateType, EstimateTypeDesc FROM Set_material GROUP BY MaterialCode, MaterialDesc, EstimateTypeDesc, EstimateType ) temp2 ON temp.MaterialCode = temp2.MaterialCode \n" + - " ) t2 \n" + - " ) TEMP PIVOT ( SUM( QTY ) FOR STATE IN ([1],[2]) ) A order by 客户,出库类型,出库单"; - - string _sql = string.Format(str, version); - var _query = DbConnection.Query(_sql, null, null, true, 1200, null); + var _sql= "SELECT\n" + + " Client 客户,\n" + + " Type 出库类型,\n" + + " BillNum 结算单,\n" + + " MaterialCode 物料号,\n" + + " MaterialDesc 物料描述,\n" + + " BillNum 结算单号,\n" + + " MaterialGroup 物料组,\n" + + " ISnull([0], 2 ) 结算数量,\n" + + " ISNULL([2], 0 ) 实际出库数量,\n" + + " isnull([0], 2 ) - ISNULL([2], 0 ) 数量差异,\n" + + " Price 开票单价,\n" + + " Round( ISnull([0], 2 )* Price, 2 ) 结算金额,\n" + + " Round( ISNULL([2], 0 )* Price, 2 ) WMS待出库金额,\n" + + " ROUND(( isnull([0], 2 ) - ISNULL([2], 0 ))* Price, 2 ) WMS待出库金额 \n" + + "FROM\n" + + " (\n" + + " SELECT\n" + + " * \n" + + " FROM\n" + + " (\n" + + " SELECT\n" + + " temp.Client,\n" + + " temp.Type,\n" + + " temp.BillNum,\n" + + " temp.MaterialCode,\n" + + " temp2.MaterialDesc,\n" + + " temp.Qty,\n" + + " 0 STATE,\n" + + " EstimateTypeDesc MaterialGroup,\n" + + " EstimateType,\n" + + " IsBack,\n" + + " Price \n" + + " FROM\n" + + " (\n" + + " SELECT\n" + + " '大众准时化出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " ChassisNumber CNumber \n" + + " FROM\n" + + " Set_WmsJitOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price,\n" + + " ChassisNumber UNION ALL\n" + + " SELECT\n" + + " '大众看板出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " Kanban CNumber \n" + + " FROM\n" + + " Set_WmsKanbanOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price,\n" + + " Kanban UNION ALL\n" + + " SELECT\n" + + " '大众无看板出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " SapMaterialCode MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsWithOutKanbanOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " GROUP BY\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " Price UNION ALL\n" + + " SELECT\n" + + " '大众备件汇总出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 1 IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsSharePartOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price UNION ALL\n" + + " SELECT\n" + + " '大众备件条码出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 1 IsBack,\n" + + " Price,\n" + + " OrderBillNum CNumber \n" + + " FROM\n" + + " Set_WmsSharePart90OutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price,\n" + + " OrderBillNum UNION ALL\n" + + " SELECT\n" + + " '红旗看板出库' AS Type,\n" + + " '红旗' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " Kanban CNumber \n" + + " FROM\n" + + " Set_WmsHQHKanbanOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price,\n" + + " Kanban UNION ALL\n" + + " SELECT\n" + + " '红旗一轿手工出库' AS Type,\n" + + " '红旗' Client,\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsHQWithOutKanbanOutPutDetial \n" + + " WHERE\n" + + " IsBack = 0 \n" + + " AND VERSION = '{0}' \n" + + " GROUP BY\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " IsBack,\n" + + " Price UNION ALL\n" + + " SELECT\n" + + " '红旗一轿手工出库(备件)' AS Type,\n" + + " '红旗' Client,\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsHQWithOutKanbanOutPutDetial \n" + + " WHERE\n" + + " IsBack = 1 \n" + + " AND VERSION = '{0}' \n" + + " GROUP BY\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " IsBack,\n" + + " Price \n" + + " ) temp\n" + + " LEFT JOIN ( SELECT max( Id ) Id, MaterialCode, MaterialDesc, EstimateType, EstimateTypeDesc FROM Set_material GROUP BY MaterialCode, MaterialDesc, EstimateTypeDesc, EstimateType ) temp2 ON temp.MaterialCode = temp2.MaterialCode \n" + + " ) t1 UNION ALL\n" + + " SELECT\n" + + " * \n" + + " FROM\n" + + " (\n" + + " SELECT\n" + + " temp.Client,\n" + + " temp.Type,\n" + + " temp.BillNum,\n" + + " temp.MaterialCode,\n" + + " temp2.MaterialDesc,\n" + + " temp.Qty,\n" + + " 0 STATE,\n" + + " EstimateTypeDesc MaterialGroup,\n" + + " EstimateType,\n" + + " IsBack,\n" + + " Price \n" + + " FROM\n" + + " (\n" + + " SELECT\n" + + " '大众准时化出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " ChassisNumber CNumber \n" + + " FROM\n" + + " Set_WmsJitOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " AND State = 2 \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price,\n" + + " ChassisNumber UNION ALL\n" + + " SELECT\n" + + " '大众看板出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " Kanban CNumber \n" + + " FROM\n" + + " Set_WmsKanbanOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " AND State = 2 \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price,\n" + + " Kanban UNION ALL\n" + + " SELECT\n" + + " '大众无看板出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " SapMaterialCode MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsWithOutKanbanOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " AND State = 2 \n" + + " GROUP BY\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " Price UNION ALL\n" + + " SELECT\n" + + " '大众备件汇总出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 1 IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsSharePartOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " AND State = 2 \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price UNION ALL\n" + + " SELECT\n" + + " '大众备件条码出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 1 IsBack,\n" + + " Price,\n" + + " OrderBillNum CNumber \n" + + " FROM\n" + + " Set_WmsSharePart90OutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " AND State = 2 \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price,\n" + + " OrderBillNum UNION ALL\n" + + " SELECT\n" + + " '红旗看板出库' AS Type,\n" + + " '红旗' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " Kanban CNumber \n" + + " FROM\n" + + " Set_WmsHQHKanbanOutPutDetial \n" + + " WHERE\n" + + " VERSION = '{0}' \n" + + " AND State = 2 \n" + + " GROUP BY\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Price,\n" + + " Kanban UNION ALL\n" + + " SELECT\n" + + " '红旗一轿手工出库' AS Type,\n" + + " '红旗' Client,\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsHQWithOutKanbanOutPutDetial \n" + + " WHERE\n" + + " IsBack = 0 \n" + + " AND VERSION = '{0}' \n" + + " AND State = 2 \n" + + " GROUP BY\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " IsBack,\n" + + " Price UNION ALL\n" + + " SELECT\n" + + " '红旗一轿手工出库(备件)' AS Type,\n" + + " '红旗' Client,\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " SUM( Qty ) Qty,\n" + + " IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsHQWithOutKanbanOutPutDetial \n" + + " WHERE\n" + + " IsBack = 1 \n" + + " AND VERSION = '{0}' \n" + + " AND State = 2 \n" + + " GROUP BY\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " IsBack,\n" + + " Price \n" + + " ) temp\n" + + " LEFT JOIN ( SELECT max( Id ) Id, MaterialCode, MaterialDesc, EstimateType, EstimateTypeDesc FROM Set_material GROUP BY MaterialCode, MaterialDesc, EstimateTypeDesc, EstimateType ) temp2 ON temp.MaterialCode = temp2.MaterialCode \n" + + " ) t2 \n" + + " ) TEMP PIVOT ( SUM( QTY ) FOR STATE IN ([0],[1],[2],[3]) ) A \n" + + "ORDER BY\n" + + " 客户,出库类型,结算单"; + + _sql = string.Format(_sql, version); + var _query = DbConnection.Query(_sql, null, null, true, 1200, null); return _query.ToList(); } @@ -383,122 +468,155 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report - var str = "SELECT\n" + -" temp.MaterialCode,\n" + -" temp2.MaterialDesc,\n" + -" temp.Qty,\n" + -" temp.Price,\n" + -" Round( temp.Qty * temp.Price, 2 ) Amt,\n" + -" EstimateTypeDesc MaterialGroup ,\n" + -" EstimateType \n" + -"FROM\n" + -" (\n" + -" SELECT\n" + -" MaterialCode,\n" + -" SUM( Qty ) Qty,\n" + -" Price \n" + -" FROM\n" + -" Set_WmsJitOutPutDetial \n" + -" WHERE\n" + -" State = {1} \n" + -" AND VERSION = '{0}' \n" + -" GROUP BY\n" + -" MaterialCode,\n" + -" Price UNION ALL\n" + -" SELECT\n" + -" MaterialCode,\n" + -" SUM( Qty ) Qty,\n" + -" Price \n" + -" FROM\n" + -" Set_WmsKanbanOutPutDetial \n" + -" WHERE\n" + -" State = {1} \n" + -" AND VERSION = '{0}' \n" + -" GROUP BY\n" + -" MaterialCode,\n" + -" Price UNION ALL\n" + -" SELECT\n" + -" SapMaterialCode MaterialCode,\n" + -" SUM( Qty ) Qty,\n" + -" Price \n" + -" FROM\n" + -" Set_WmsWithOutKanbanOutPutDetial \n" + -" WHERE\n" + -" State = 2 \n" + -" AND VERSION = '{0}' \n" + -" GROUP BY\n" + -" SapMaterialCode,\n" + -" Price UNION ALL\n" + -" SELECT\n" + -" MaterialCode,\n" + -" SUM( Qty ) Qty,\n" + -" Price \n" + -" FROM\n" + -" Set_WmsSharePartOutPutDetial \n" + -" WHERE\n" + -" State = {1} \n" + -" AND VERSION = '{0}' \n" + -" GROUP BY\n" + -" MaterialCode,\n" + -" Price UNION ALL\n" + -" SELECT\n" + -" MaterialCode,\n" + -" SUM( Qty ) Qty,\n" + -" Price \n" + -" FROM\n" + -" Set_WmsSharePart90OutPutDetial \n" + -" WHERE\n" + -" State = {1} \n" + -" AND VERSION = '{0}' \n" + -" GROUP BY\n" + -" MaterialCode,\n" + -" Price UNION ALL\n" + -" SELECT\n" + -" MaterialCode,\n" + -" SUM( Qty ) Qty,\n" + -" Price \n" + -" FROM\n" + -" Set_WmsHQHKanbanOutPutDetial \n" + -" WHERE\n" + -" State = {1} \n" + -" AND VERSION = '{0}' \n" + -" GROUP BY\n" + -" MaterialCode,\n" + -" Price UNION ALL\n" + -" SELECT\n" + -" MaterialCode,\n" + -" SUM( Qty ) Qty,\n" + -" Price \n" + -" FROM\n" + -" Set_WmsHQFKanbanOutPutDetial \n" + -" WHERE\n" + -" State = {1} \n" + -" AND VERSION = '{0}' \n" + -" GROUP BY\n" + -" MaterialCode,\n" + -" Price UNION ALL\n" + -" SELECT\n" + -" MaterialCode,\n" + -" SUM( Qty ) Qty,\n" + -" Price \n" + -" FROM\n" + -" Set_WmsHQMKanbanOutPutDetial \n" + -" WHERE\n" + -" State = {1} \n" + -" AND VERSION = '{0}' \n" + -" GROUP BY\n" + -" MaterialCode,\n" + -" Price \n" + -" ) temp\n" + -" LEFT JOIN ( SELECT max( Id ) Id, MaterialCode, MaterialDesc, EstimateType, EstimateTypeDesc FROM Set_material GROUP BY MaterialCode, MaterialDesc, EstimateTypeDesc, EstimateType ) temp2 ON temp.MaterialCode = temp2.MaterialCode \n" + -"ORDER BY\n" + -" MaterialCode"; - - - - - - string _sql = string.Format(str, version,state); + var _sql = "SELECT\n" + + " ROW_NUMBER()OVER(ORDER BY Type DESC) 行号 ,\n"+ + " temp1.Client 客户,\n" + + " temp1.Type 出库类型,\n" + + " temp1.BillNum 结算单,\n" + + " temp1.MaterialCode 物料号,\n" + + " temp1.CNumber 通用代码号,\n" + + " Isnull( temp1.Qty, 0 ) 结算数量,\n" + + " Isnull( temp1.OutputQty, 0 ) 实际出库数量,\n" + + " Isnull( temp1.Qty, 0 )- Isnull( temp1.OutputQty, 0 ) 差异数量,\n" + + " temp1.Price 开票单价,\n" + + " Round( Isnull( temp1.Qty, 0 )* temp1.Price, 2 ) 结算金额,\n" + + " Round(( Isnull( temp1.Qty, 0 )- Isnull( temp1.OutputQty, 0 ))* temp1.Price, 2 ) WMS待出库金额 \n" + + " temp2.EstimateType 物料组编码, \n"+ + " temp2.EstimateTypeDesc 物料组车型, \n"+ + " temp2.MaterialDesc 物料描述 \n"+ + + "FROM\n" + + " (\n" + + " SELECT\n" + + " '大众准时化出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Qty,\n" + + " 0 OutputQty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " ChassisNumber CNumber \n" + + " FROM\n" + + " Set_WmsJitOutPutDetial \n" + + " WHERE\n" + + " VERSION = '202201' \n" + + " AND State = 3 UNION ALL\n" + + " SELECT\n" + + " '大众看板出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Qty Qty,\n" + + " 0 OutputQty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " Kanban CNumber \n" + + " FROM\n" + + " Set_WmsKanbanOutPutDetial \n" + + " WHERE\n" + + " VERSION = '202201' \n" + + " AND State = 3 UNION ALL\n" + + " SELECT\n" + + " '大众无看板出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " SapMaterialCode MaterialCode,\n" + + " Qty Qty,\n" + + " RealityNumber OutputQty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsWithOutKanbanOutPutDetial \n" + + " WHERE\n" + + " VERSION = '202201' \n" + + " AND State = 3 UNION ALL\n" + + " SELECT\n" + + " '大众备件汇总出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Qty Qty,\n" + + " RealityNumber OutputQty,\n" + + " 1 IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsSharePartOutPutDetial \n" + + " WHERE\n" + + " VERSION = '202201' \n" + + " AND State = 3 UNION ALL\n" + + " SELECT\n" + + " '大众备件条码出库' AS Type,\n" + + " '大众' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Qty Qty,\n" + + " 0 OutPutQty,\n" + + " 1 IsBack,\n" + + " Price,\n" + + " OrderBillNum CNumber \n" + + " FROM\n" + + " Set_WmsSharePart90OutPutDetial \n" + + " WHERE\n" + + " VERSION = '202201' \n" + + " AND State = 3 UNION ALL\n" + + " SELECT\n" + + " '红旗看板出库' AS Type,\n" + + " '红旗' Client,\n" + + " BillNum,\n" + + " MaterialCode,\n" + + " Qty Qty,\n" + + " 0 OutPutQty,\n" + + " 0 IsBack,\n" + + " Price,\n" + + " Kanban CNumber \n" + + " FROM\n" + + " Set_WmsHQHKanbanOutPutDetial \n" + + " WHERE\n" + + " VERSION = '202201' \n" + + " AND State = 3 UNION ALL\n" + + " SELECT\n" + + " '红旗一轿手工出库' AS Type,\n" + + " '红旗' Client,\n" + + " BillNum,\n" + + " SapMaterialCode MaterialCode,\n" + + " Qty,\n" + + " RealityNumber OutputQty,\n" + + " IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsHQWithOutKanbanOutPutDetial \n" + + " WHERE\n" + + " IsBack = 0 \n" + + " AND VERSION = '202201' \n" + + " AND State = 3 UNION ALL\n" + + " SELECT\n" + + " '红旗一轿手工出库(备件)' AS Type,\n" + + " '红旗' Client,\n" + + " BillNum,\n" + + " SapMaterialCode,\n" + + " Qty Qty,\n" + + " RealityNumber OutputQty,\n" + + " IsBack,\n" + + " Price,\n" + + " '' CNumber \n" + + " FROM\n" + + " Set_WmsHQWithOutKanbanOutPutDetial \n" + + " WHERE\n" + + " IsBack = 1 \n" + + " AND VERSION = '202201' \n" + + " AND State = 3 \n" + + " ) temp1"; + + + + + + + _sql = string.Format(_sql, version,state); var _query = DbConnection.Query(_sql,null,null,true,1200,null); diff --git a/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/FisUpdateExportService.cs b/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/FisUpdateExportService.cs index 84282a5f..9ecff068 100644 --- a/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/FisUpdateExportService.cs +++ b/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/FisUpdateExportService.cs @@ -18,11 +18,7 @@ namespace SettleAccount.Job.Services.Report public FisUpdateExportService( FisUpdateDapperRepository dapperRepository - //HQHSettledDetailDapperRepository dapperRepository, - - //OutputService outputService, - //InputService inputService - //, IBlobContainer fileContainer + ) { _dapperRepository = dapperRepository; diff --git a/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/InvoiceSettledDetailDiffExportService.cs b/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/InvoiceSettledDetailDiffExportService.cs index 86cb854a..748307a4 100644 --- a/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/InvoiceSettledDetailDiffExportService.cs +++ b/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/InvoiceSettledDetailDiffExportService.cs @@ -184,7 +184,7 @@ namespace SettleAccount.Job.Services //.Select(p => p.FirstOrDefault()); - _ls = _ls.OrderBy(p => p.ChassisNumber).ThenBy(p => p.KENNCode).ThenBy(p => p.SapMaterialCode).ToList(); + _ls = _ls.OrderBy(p => p.SapMaterialCode).ThenBy(p => p.ChassisNumber).ThenBy(p => p.KENNCode).ThenBy(p => p.SapMaterialCode).ToList(); } _outputService.Export(id, _filename, _ls); diff --git a/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/UnInvoiceSettledDetailDiffExportService.cs b/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/UnInvoiceSettledDetailDiffExportService.cs index f8e3ba25..9e31baf3 100644 --- a/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/UnInvoiceSettledDetailDiffExportService.cs +++ b/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/UnInvoiceSettledDetailDiffExportService.cs @@ -410,7 +410,7 @@ namespace SettleAccount.Job.Services //} _list = _list.OrderBy(p => p.ChassisNumber).ThenBy(p => p.SapMaterialCode).ThenBy(p => p.Flag).ToList(); - var report2List = _ls.Select(p => new { p.MaterialGroup, DiffAmt = p.Price * p.Qty }).GroupBy(p => new { p.MaterialGroup }).Select(p => new SettleDoorPanelSumExport { MaterialGroup = p.Key.MaterialGroup, InvoiceDiffPrice = p.Sum(itm => itm.DiffAmt), Version = version }); + var report2List = _ls.Where(p=>p.UnSettleVersion==version).Select(p => new { p.MaterialGroup, DiffAmt = p.Price * p.Qty }).GroupBy(p => new { p.MaterialGroup }).Select(p => new SettleDoorPanelSumExport { MaterialGroup = p.Key.MaterialGroup, InvoiceDiffPrice = p.Sum(itm => itm.DiffAmt), Version = version }); return report2List.ToList(); } diff --git a/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/WmsOutputSumExportService.cs b/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/WmsOutputSumExportService.cs index b733e542..819444e8 100644 --- a/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/WmsOutputSumExportService.cs +++ b/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/WmsOutputSumExportService.cs @@ -74,7 +74,7 @@ namespace SettleAccount.Job.Services.Report var _groupList = materialGroup.Split(new char[] { ',' }).Distinct().ToList(); if (_groupList.Count() > 0) { - _ls = _ls.Where(p => _groupList.Contains(p.MaterialGroup)).ToList(); + _ls = _ls.Where(p => _groupList.Contains(p.物料组车型)).ToList(); } } if (!string.IsNullOrEmpty(materialCode)) @@ -82,15 +82,15 @@ namespace SettleAccount.Job.Services.Report var _groupList = materialCode.Split(new char[] { ',' }).Distinct().ToList(); if (_groupList.Count() > 0) { - _ls = _ls.Where(p => _groupList.Contains(p.MaterialCode)).ToList(); + _ls = _ls.Where(p => _groupList.Contains(p.物料号)).ToList(); } } var _first = exportName.FirstOrDefault(); ExcelExporter _exporter = new ExcelExporter();//导出Excel - var result = _exporter.Append(_ls.ToList(), "汇总表") + var result = _exporter.Append(_ls.ToList(), "未结明细表") .SeparateBySheet() - .Append(_lst.ToList(), "完成清单表") + .Append(_lst.ToList(), "结算出库汇总表") .ExportAppendDataAsByteArray(); result.ShouldNotBeNull(); _fileContainer.SaveAsync(_first, result.Result, true);