@ -5,6 +5,7 @@ using System.Collections.Generic;
using System.Linq ;
using System.Text ;
using System.Threading.Tasks ;
using Volo.Abp ;
using Volo.Abp.DependencyInjection ;
using Volo.Abp.Domain.Repositories.Dapper ;
using Volo.Abp.EntityFrameworkCore ;
@ -1145,295 +1146,136 @@ namespace Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report
/// <summary>
/// 有条码的业务(可根据条码/K号/底盘号,查询是否结算过,结算期间)
/// </summary>
/// <param name="version"> </param>
/// <param name="CNumber">通用代码号 </param>
/// <param name="state"></param>
/// <returns></returns>
public virtual List < WmsOutputtSearchWithCode > GetWmsSearchWithCodeReportList ( string version , string stat e)
public virtual List < WmsOutputtSearchWithCode > GetWmsSearchWithCodeReportList ( string CNumber , string materialCod e)
{
if ( string . IsNullOrEmpty ( CNumber ) )
{
throw new BusinessException ( "001" , "通用代码号不能为空!" ) ;
}
string getcnumber = "" ;
var _ org_cnumbersList = CNumber . Split ( new char [ ] { '\n' } ) . Distinct ( ) . ToList ( ) ;
var _ cnumbersList = _ org_cnumbersList [ 0 ] . Replace ( "\\n" , "," ) . TrimEnd ( ',' ) . Split ( ',' ) ;
foreach ( var cnumber in _ cnumbersList )
{
getcnumber + = "'" + cnumber . ToString ( ) . Trim ( ) + "'" + "," ;
}
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" +
" temp1.remark 备注 \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" +
" Remark \n" +
" FROM\n" +
" Set_WmsJitOutPutDetial \n" +
" WHERE\n" +
" VERSION = '{0}' \n" +
" AND State =2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsKanbanOutPutDetial \n" +
" WHERE\n" +
" VERSION = '{0}' \n" +
" AND State =2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" VERSION = '{0}' \n" +
" AND State =2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsSharePartOutPutDetial \n" +
" WHERE\n" +
" VERSION = '{0}' \n" +
" AND State =2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsSharePart90OutPutDetial \n" +
" WHERE\n" +
" VERSION = '{0}' \n" +
" AND State =2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsHQHKanbanOutPutDetial \n" +
" WHERE\n" +
" VERSION = '{0}' \n" +
" AND State =2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsHQWithOutKanbanOutPutDetial \n" +
" WHERE\n" +
" IsBack = 0 \n" +
" AND VERSION = '{0}' \n" +
" AND State =2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsOneTimeSaleOutPutDetial \n" +
" WHERE\n" +
" IsBack = 1 \n" +
" AND VERSION = '{0}' \n" +
" AND State =2 \n" +
"UNION ALL\n" +
"SELECT\n" +
" '一次性销售' AS TYPE,\n" +
" '一次性销售' Client,\n" +
" BillNum,\n" +
" SapMaterialCode,\n" +
" Qty Qty,\n" +
" RealityNumber OutputQty,\n" +
" 0 IsBack,\n" +
" Price,\n" +
" '' CNumber,\n" +
" Remark \n" +
"FROM\n" +
" Set_WmsOneTimeSaleOutPutDetial \n" +
"WHERE\n" +
" VERSION = '{0}' \n" +
" AND STATE = 2 \n" +
"Union All\n" +
"SELECT\n" +
"'自定义发货出库' AS Type,\n" +
"customercode Client,\n" +
"BillNum,\n" +
"SapMaterialCode,\n" +
"Qty Qty,\n" +
"Qty OutputQty,\n" +
"'0' IsBack,\n" +
"Price,\n" +
"Kanban CNumber,\n" +
"Remark\n" +
"FROM\n" +
"Set_WmsCustomerKanbanOutPutDetial\n" +
"WHERE\n" +
"VERSION = '{0}'\n" +
"AND State =2\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" +
" temp1.remark 备注 \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" +
" Remark \n" +
" FROM\n" +
" Set_WmsJitOutPutDetial \n" +
" WHERE\n" +
" ChassisNumber IN ({0}) \n" +
" AND State = 2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsKanbanOutPutDetial \n" +
" WHERE\n" +
" Kanban IN ({0}) \n" +
" AND State = 2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsSharePart90OutPutDetial \n" +
" WHERE\n" +
" OrderBillNum IN ({0}) \n" +
" AND State = 2 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" +
" Remark \n" +
" FROM\n" +
" Set_WmsHQHKanbanOutPutDetial \n" +
" WHERE\n" +
" Kanban IN ({0}) \n" +
" AND State = 2 \n" +
//" UNION ALL SELECT\n" +
//" '自定义发货出库' AS Type,\n" +
//" customercode Client,\n" +
//" BillNum,\n" +
//" SapMaterialCode,\n" +
//" Qty Qty,\n" +
//" Qty OutputQty,\n" +
//" '0' IsBack,\n" +
//" Price,\n" +
//" Kanban CNumber,\n" +
//" Remark \n" +
//" FROM\n" +
//" Set_WmsCustomerKanbanOutPutDetial \n" +
//" WHERE\n" +
//" Kanban IN ({0}) \n" +
//" AND State = 2\n" +
" \n" +
" ) temp1\n" +
" LEFT JOIN ( SELECT MAX ( Id ) Id, MaterialCode, MaterialDesc, EstimateType, EstimateTypeDesc FROM Set_material GROUP BY MaterialCode, MaterialDesc, EstimateTypeDesc, EstimateType ) temp2 ON temp1.MaterialCode = temp2.MaterialCode" ;
" ) temp1\n" +
" LEFT JOIN ( SELECT MAX ( Id ) Id, MaterialCode, MaterialDesc, EstimateType, EstimateTypeDesc FROM Set_material GROUP BY MaterialCode, MaterialDesc, EstimateTypeDesc, EstimateType ) temp2 ON temp1.MaterialCode = temp2.MaterialCode" ;
//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" +
// " temp1.remark 备注 \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" +
// " Remark \n" +
// " FROM\n" +
// " Set_WmsJitOutPutDetial \n" +
// " WHERE\n" +
// " VERSION = '{0}' \n" +
// " AND State = 2 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" +
// " Remark \n" +
// " FROM\n" +
// " Set_WmsKanbanOutPutDetial \n" +
// " WHERE\n" +
// " VERSION = '{0}' \n" +
// " AND State = 2 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" +
// " Remark \n" +
// " FROM\n" +
// " Set_WmsSharePart90OutPutDetial \n" +
// " WHERE\n" +
// " VERSION = '{0}' \n" +
// " AND State = 2 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" +
// " Remark \n" +
// " FROM\n" +
// " Set_WmsHQHKanbanOutPutDetial \n" +
// " WHERE\n" +
// " VERSION = '{0}' \n" +
// " AND State = 2 \n" +
// " ) temp1\n" +
// " LEFT JOIN ( SELECT MAX ( Id ) Id, MaterialCode, MaterialDesc, EstimateType, EstimateTypeDesc FROM Set_material GROUP BY MaterialCode, MaterialDesc, EstimateTypeDesc, EstimateType ) temp2 ON temp1.MaterialCode = temp2.MaterialCode";
_ sql = string . Format ( _ sql , version , state ) ;
_ sql = string . Format ( _ sql , getcnumber . TrimEnd ( ',' ) ) ;
var _ query = DbConnection . Query < WmsOutputtSearchWithCode > ( _ sql , null , null , true , 1 2 0 0 , null ) ;
return _ query . ToList ( ) ;
var _l s = _ query . ToList ( ) ;
return _l s ;
}