From 6b91eea8f3a54269a61d0626efb879cc7da5b4bf Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期二, 25 四月 2023 09:39:57 +0800
Subject: [PATCH] 物流检验报表接口开发

---
 VueWebApi/DLL/DAL/ReportManagerDAL.cs |  265 ++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 221 insertions(+), 44 deletions(-)

diff --git a/VueWebApi/DLL/DAL/ReportManagerDAL.cs b/VueWebApi/DLL/DAL/ReportManagerDAL.cs
index a9d1acb..bc93b07 100644
--- a/VueWebApi/DLL/DAL/ReportManagerDAL.cs
+++ b/VueWebApi/DLL/DAL/ReportManagerDAL.cs
@@ -221,12 +221,17 @@
 
 
         #region[鐝粍宸ヨ祫鎶ヨ〃璁板綍鏌ヨ]
-        public static ToMessage GroupSalaryReportSearch(string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string username, string operopendate, string operclosedate, int startNum, int endNum, string prop, string order)
+        public static ToMessage GroupSalaryReportSearch(string compute, string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string username, string operopendate, string operclosedate, string rejectstepcode, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                if (compute == "last")  //鏈亾宸ュ簭
+                {
+                    search += "and P.isend=@isend ";
+                    dynamicParams.Add("@isend", "Y");
+                }
                 if (wocode != "" && wocode != null)
                 {
                     search += "and A.wo_code like '%'+@wocode+'%' ";
@@ -264,29 +269,35 @@
                 }
                 if (operopendate != "" && operopendate != null)
                 {
-                    search += "and A.lm_date between @operopendate and @operclosedate ";
+                    search += "and B.report_date between @operopendate and @operclosedate ";
                     dynamicParams.Add("@operopendate", operopendate + " 00:00:00");
                     dynamicParams.Add("@operclosedate", operclosedate + " 23:59:59");
                 }
-
+                if (rejectstepcode != "" && rejectstepcode != null)
+                {
+                    string[] s1 = Array.ConvertAll<string, string>(rejectstepcode.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), s => s.ToString()); //string鍒嗗壊杞瑂tring[] 
+                    search += "and A.step_code not in @s1";
+                    dynamicParams.Add("@s1", s1);
+                }
                 if (search == "")
                 {
                     search = "and 1=1 ";
                 }
-                search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
+                //search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select distinct A.id,A.wo_code,M.partcode,M.partname,M.partspec,T.stepcode,T.stepname,A.task_qty,G.group_code,G.group_name,A.good_qty,isnull(S.unprice,0) as unprice,A.good_qty*isnull(S.unprice,0) as usermoney,U.username as lm_user,A.lm_date  
+                var sql = @"select distinct A.id,A.wo_code,M.partcode,M.partname,M.partspec,T.stepcode,T.stepname,A.task_qty,G.group_code,G.group_name,A.good_qty,
+                            isnull(S.unprice,0) as unprice,A.good_qty*isnull(S.unprice,0) as usermoney,U.username as lm_user,A.lm_date,B.report_date   
                             from TK_Wrk_Record A
                             inner join TK_Wrk_RecordSub B on A.id=B.m_id
-                            inner join TK_Wrk_Step P on A.wo_code=P.wo_code and A.step_code=P.step_code and P.isend='Y'
+                            inner join TK_Wrk_Step P on A.wo_code=P.wo_code and A.step_code=P.step_code 
                             left  join TK_Wrk_Man K on A.wo_code=K.wo_code
                             left  join TGroup G on B.usergroup_code=G.group_code
-                            left  join TPrteEqp_Stad S on A.materiel_code=S.materiel_code and A.eqp_code=S.eqp_code and A.step_code=S.step_code and K.route_code=S.route_code and K.wkshp_code=S.wkspcode
+                            left  join TWoPrteEqp_Stad S on A.wo_code=S.wo and A.materiel_code=S.materiel_code and A.eqp_code=S.eqp_code and A.step_code=S.step_code and K.route_code=S.route_code 
                             left  join TMateriel_Info M on A.materiel_code=M.partcode
                             left  join TStep T on A.step_code=T.stepcode
                             left  join TUser U on A.lm_user=U.usercode 
-                            where " + search;
+                            where G.group_code<>'' " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
@@ -333,12 +344,17 @@
         #endregion
 
         #region[鐝粍宸ヨ祫鎶ヨ〃璁板綍瀵煎嚭]
-        public static ToMessage GroupSalaryReportExcelSearch(string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string username, string operopendate, string operclosedate)
+        public static ToMessage GroupSalaryReportExcelSearch(string compute, string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string username, string operopendate, string operclosedate,string rejectstepcode)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                if (compute == "last")  //鏈亾宸ュ簭
+                {
+                    search += "and P.isend=@isend ";
+                    dynamicParams.Add("@isend", "Y");
+                }
                 if (wocode != "" && wocode != null)
                 {
                     search += "and A.wo_code like '%'+@wocode+'%' ";
@@ -376,31 +392,36 @@
                 }
                 if (operopendate != "" && operopendate != null)
                 {
-                    search += "and A.lm_date between @operopendate and @operclosedate ";
+                    search += "and B.report_date between @operopendate and @operclosedate ";
                     dynamicParams.Add("@operopendate", operopendate + " 00:00:00");
                     dynamicParams.Add("@operclosedate", operclosedate + " 23:59:59");
                 }
-
+                if (rejectstepcode != "" && rejectstepcode != null)
+                {
+                    string[] s1 = Array.ConvertAll<string, string>(rejectstepcode.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), s => s.ToString()); //string鍒嗗壊杞瑂tring[] 
+                    search += "and A.step_code not in @s1";
+                    dynamicParams.Add("@s1", s1);
+                }
                 if (search == "")
                 {
                     search = "and 1=1 ";
                 }
-                search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
+                //search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
                 var sql = @"select distinct A.wo_code as 宸ュ崟缂栧彿,M.partcode as 浜у搧缂栫爜,M.partname as 浜у搧鍚嶇О,M.partspec as 浜у搧瑙勬牸,
                             T.stepcode as 宸ュ簭缂栫爜,T.stepname as 宸ュ簭鍚嶇О,A.task_qty as 浠诲姟鏁伴噺,G.group_code as 鐝粍缂栫爜,G.group_name as 鐝粍鍚嶇О,
-                            A.good_qty as 鎶ュ伐鏁伴噺,isnull(S.unprice,0) as 宸ュ簭鍗曚环,A.good_qty*isnull(S.unprice,0) as 璁′欢宸ヨ祫,U.username as 鎿嶄綔浜哄憳,A.lm_date as 鎿嶄綔鏃堕棿 
+                            A.good_qty as 鎶ュ伐鏁伴噺,isnull(S.unprice,0) as 宸ュ簭鍗曚环,A.good_qty*isnull(S.unprice,0) as 璁′欢宸ヨ祫,U.username as 鎿嶄綔浜哄憳,A.lm_date as 鎿嶄綔鏃堕棿,B.report_date as 鎶ュ伐鏃堕棿 
                             from TK_Wrk_Record A
                             inner join TK_Wrk_RecordSub B on A.id=B.m_id
-                            inner join TK_Wrk_Step P on A.wo_code=P.wo_code and A.step_code=P.step_code and P.isend='Y'
+                            inner join TK_Wrk_Step P on A.wo_code=P.wo_code and A.step_code=P.step_code
                             left  join TK_Wrk_Man K on A.wo_code=K.wo_code
                             left  join TGroup G on B.usergroup_code=G.group_code
-                            left  join TPrteEqp_Stad S on A.materiel_code=S.materiel_code and A.eqp_code=S.eqp_code and A.step_code=S.step_code and K.route_code=S.route_code and K.wkshp_code=S.wkspcode
+                            left  join TWoPrteEqp_Stad S on A.wo_code=S.wo and A.materiel_code=S.materiel_code and A.eqp_code=S.eqp_code and A.step_code=S.step_code and K.route_code=S.route_code 
                             left  join TMateriel_Info M on A.materiel_code=M.partcode
                             left  join TStep T on A.step_code=T.stepcode
                             left  join TUser U on A.lm_user=U.usercode 
-                            where " + search;
+                            where G.group_code<>'' " + search;
                 DataTable data = DapperHelper.selectdata(sql, dynamicParams);
                 data.TableName = "Table"; //璁剧疆DataTable鐨勫悕绉�
                 string msg = DownLoad.DataTableToExcel(data, "鐝粍璁′欢宸ヨ祫鎶ヨ〃");
@@ -422,54 +443,64 @@
 
 
         #region[浜哄憳宸ヨ祫鏄庣粏鎶ヨ〃]
-        public static ToMessage PeopleSalaryReportSearch(string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string reportname, string reportopendate, string reportclosedate, int startNum, int endNum, string prop, string order)
+        public static ToMessage PeopleSalaryReportSearch(string compute, string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string reportname, string reportopendate, string reportclosedate,string rejectstepcode, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                if (compute == "last")  //鏈亾宸ュ簭
+                {
+                    search += "and AA.isend=@isend ";
+                    dynamicParams.Add("@isend", "Y");
+                }
                 if (wocode != "" && wocode != null)
                 {
-                    search += "and A.wo_code like '%'+@wocode+'%' ";
+                    search += "and AA.wo_code like '%'+@wocode+'%' ";
                     dynamicParams.Add("@wocode", wocode);
                 }
                 if (partcode != "" && partcode != null)
                 {
-                    search += "and M.partcode like '%'+@partcode+'%' ";
+                    search += "and AA.partcode like '%'+@partcode+'%' ";
                     dynamicParams.Add("@partcode", partcode);
                 }
                 if (partname != "" && partname != null)
                 {
-                    search += "and M.partname like '%'+@partname+'%' ";
+                    search += "and AA.partname like '%'+@partname+'%' ";
                     dynamicParams.Add("@partname", partname);
                 }
                 if (partspec != "" && partspec != null)
                 {
-                    search += "and M.partspec like '%'+@partspec+'%' ";
+                    search += "and AA.partspec like '%'+@partspec+'%' ";
                     dynamicParams.Add("@partspec", partspec);
                 }
                 if (stepname != "" && stepname != null)
                 {
-                    search += "and T.stepname like '%'+@stepname+'%' ";
+                    search += "and AA.stepname like '%'+@stepname+'%' ";
                     dynamicParams.Add("@stepname", stepname);
                 }
                 if (groupcode != "" && groupcode != null)
                 {
-                    search += "and G.group_code=@groupcode ";
+                    search += "and AA.group_code=@groupcode ";
                     dynamicParams.Add("@groupcode", groupcode);
                 }
                 if (reportname != "" && reportname != null)
                 {
-                    search += "and U.username like '%'+@reportname+'%' ";
+                    search += "and AA.username like '%'+@reportname+'%' ";
                     dynamicParams.Add("@reportname", reportname);
                 }
                 if (reportopendate != "" && reportopendate != null)
                 {
-                    search += "and B.report_date between @reportopendate and @reportclosedate ";
+                    search += "and AA.report_date between @reportopendate and @reportclosedate ";
                     dynamicParams.Add("@reportopendate", reportopendate + " 00:00:00");
                     dynamicParams.Add("@reportclosedate", reportclosedate + " 23:59:59");
                 }
-
+                if (rejectstepcode != "" && rejectstepcode != null)
+                {
+                    string[] s1 = Array.ConvertAll<string, string>(rejectstepcode.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), s => s.ToString()); //string鍒嗗壊杞瑂tring[] 
+                    search += "and AA.stepcode not in @s1";
+                    dynamicParams.Add("@s1", s1);
+                }
                 if (search == "")
                 {
                     search = "and 1=1 ";
@@ -477,16 +508,23 @@
                 search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select distinct A.wo_code,M.partcode,M.partname,M.partspec,T.stepcode,T.stepname,A.task_qty,G.group_code,G.group_name,B.report_qty,isnull(S.unprice,0) as unprice,B.report_qty*isnull(S.unprice,0) as usermoney,U.username as lm_user,B.report_date  
+                var sql = @"select AA.wo_code,AA.partcode,AA.partname,AA.partspec,AA.stepcode,AA.stepname,
+                            AA.task_qty,AA.group_code,AA.group_name,AA.report_qty,AA.unprice,AA.ratio,AA.isend,
+                            AA.moneys as usermoney,AA.username,AA.report_date
+                            from (
+                            select distinct A.wo_code,M.partcode,M.partname,M.partspec,T.stepcode,T.stepname,
+                            A.task_qty,G.group_code,G.group_name,B.report_qty,isnull(S.unprice,0) as unprice,B.ratio,P.isend,
+                            (B.report_qty*isnull(S.unprice,0))*(B.ratio/100) as moneys,U.username,B.report_date
                             from TK_Wrk_Record A
                             inner join TK_Wrk_RecordSub B on A.id=B.m_id
-                            inner join TK_Wrk_Step P on A.wo_code=P.wo_code and A.step_code=P.step_code and P.isend='Y'
+                            inner join TK_Wrk_Step P on A.wo_code=P.wo_code and A.step_code=P.step_code 
                             left  join TK_Wrk_Man K on A.wo_code=K.wo_code
                             left  join TGroup G on B.usergroup_code=G.group_code
-                            left  join TPrteEqp_Stad S on A.materiel_code=S.materiel_code and A.eqp_code=S.eqp_code and A.step_code=S.step_code and K.route_code=S.route_code and K.wkshp_code=S.wkspcode
+                            left  join TWoPrteEqp_Stad S on A.wo_code=S.wo and A.materiel_code=S.materiel_code and A.eqp_code=S.eqp_code and A.step_code=S.step_code and K.route_code=S.route_code 
                             left  join TMateriel_Info M on A.materiel_code=M.partcode
                             left  join TStep T on A.step_code=T.stepcode
                             left  join TUser U on B.report_person=U.usercode
+                            ) as AA
                             where " + search;
                 var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
                 mes.code = "200";
@@ -506,54 +544,64 @@
         #endregion
 
         #region[浜哄憳宸ヨ祫鏄庣粏鎶ヨ〃瀵煎嚭]
-        public static ToMessage PeopleSalaryReportExcelSearch(string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string reportname, string reportopendate, string reportclosedate)
+        public static ToMessage PeopleSalaryReportExcelSearch(string compute, string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string reportname, string reportopendate, string reportclosedate,string rejectstepcode)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                if (compute == "last")  //鏈亾宸ュ簭
+                {
+                    search += "and AA.isend=@isend ";
+                    dynamicParams.Add("@isend", "Y");
+                }
                 if (wocode != "" && wocode != null)
                 {
-                    search += "and A.wo_code like '%'+@wocode+'%' ";
+                    search += "and AA.wo_code like '%'+@wocode+'%' ";
                     dynamicParams.Add("@wocode", wocode);
                 }
                 if (partcode != "" && partcode != null)
                 {
-                    search += "and M.partcode like '%'+@partcode+'%' ";
+                    search += "and AA.partcode like '%'+@partcode+'%' ";
                     dynamicParams.Add("@partcode", partcode);
                 }
                 if (partname != "" && partname != null)
                 {
-                    search += "and M.partname like '%'+@partname+'%' ";
+                    search += "and AA.partname like '%'+@partname+'%' ";
                     dynamicParams.Add("@partname", partname);
                 }
                 if (partspec != "" && partspec != null)
                 {
-                    search += "and M.partspec like '%'+@partspec+'%' ";
+                    search += "and AA.partspec like '%'+@partspec+'%' ";
                     dynamicParams.Add("@partspec", partspec);
                 }
                 if (stepname != "" && stepname != null)
                 {
-                    search += "and T.stepname like '%'+@stepname+'%' ";
+                    search += "and AA.stepname like '%'+@stepname+'%' ";
                     dynamicParams.Add("@stepname", stepname);
                 }
                 if (groupcode != "" && groupcode != null)
                 {
-                    search += "and G.group_code=@groupcode ";
+                    search += "and AA.group_code=@groupcode ";
                     dynamicParams.Add("@groupcode", groupcode);
                 }
                 if (reportname != "" && reportname != null)
                 {
-                    search += "and U.username like '%'+@reportname+'%' ";
+                    search += "and AA.username like '%'+@reportname+'%' ";
                     dynamicParams.Add("@reportname", reportname);
                 }
                 if (reportopendate != "" && reportopendate != null)
                 {
-                    search += "and B.report_date between @reportopendate and @reportclosedate ";
+                    search += "and AA.report_date between @reportopendate and @reportclosedate ";
                     dynamicParams.Add("@reportopendate", reportopendate + " 00:00:00");
                     dynamicParams.Add("@reportclosedate", reportclosedate + " 23:59:59");
                 }
-
+                if (rejectstepcode != "" && rejectstepcode != null)
+                {
+                    string[] s1 = Array.ConvertAll<string, string>(rejectstepcode.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), s => s.ToString()); //string鍒嗗壊杞瑂tring[] 
+                    search += "and AA.stepcode not in @s1";
+                    dynamicParams.Add("@s1", s1);
+                }
                 if (search == "")
                 {
                     search = "and 1=1 ";
@@ -561,18 +609,23 @@
                 search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select distinct A.wo_code as 宸ュ崟缂栧彿,M.partcode as 浜у搧缂栫爜,M.partname as 浜у搧鍚嶇О,M.partspec as 浜у搧瑙勬牸,T.stepcode as 宸ュ簭缂栫爜,T.stepname as 宸ュ簭鍚嶇О,
-                            A.task_qty as 浠诲姟鏁伴噺,G.group_code as 鐢熶骇鐝粍缂栫爜,G.group_name as 鐢熶骇鐝粍鍚嶇О,B.report_qty as 鎶ュ伐鏁伴噺,isnull(S.unprice,0) as 宸ュ簭鍗曚环,
-                            B.report_qty*isnull(S.unprice,0) as 璁′欢宸ヨ祫,U.username as 鎶ュ伐浜哄憳,B.report_date as 鎶ュ伐鏃堕棿  
+                var sql = @"select AA.wo_code as 宸ュ崟缂栧彿,AA.partcode as 浜у搧缂栫爜,AA.partname as 浜у搧鍚嶇О,AA.partspec as 浜у搧瑙勬牸,AA.stepcode as 宸ュ簭缂栫爜,AA.stepname as 宸ュ簭鍚嶇О,AA.isend as 鏄惁鏈亾宸ュ簭,
+                            AA.task_qty as 浠诲姟鏁伴噺,AA.group_code as 鐢熶骇鐝粍缂栫爜,AA.group_name as 鐢熶骇鐝粍鍚嶇О,AA.report_qty as 鎶ュ伐鏁伴噺,AA.unprice as 宸ュ簭鍗曚环,AA.ratio as 鍒嗛厤姣斾緥,
+                            AA.moneys as 璁′欢宸ヨ祫,AA.username as 鎶ュ伐浜哄憳,AA.report_date as 鎶ュ伐鏃堕棿
+                            from (
+                            select distinct A.wo_code,M.partcode,M.partname,M.partspec,T.stepcode,T.stepname,
+                            A.task_qty,G.group_code,G.group_name,B.report_qty,isnull(S.unprice,0) as unprice,B.ratio,P.isend,
+                            (B.report_qty*isnull(S.unprice,0))*(B.ratio/100) as moneys,U.username,B.report_date
                             from TK_Wrk_Record A
                             inner join TK_Wrk_RecordSub B on A.id=B.m_id
-                            inner join TK_Wrk_Step P on A.wo_code=P.wo_code and A.step_code=P.step_code and P.isend='Y'
+                            inner join TK_Wrk_Step P on A.wo_code=P.wo_code and A.step_code=P.step_code 
                             left  join TK_Wrk_Man K on A.wo_code=K.wo_code
                             left  join TGroup G on B.usergroup_code=G.group_code
-                            left  join TPrteEqp_Stad S on A.materiel_code=S.materiel_code and A.eqp_code=S.eqp_code and A.step_code=S.step_code and K.route_code=S.route_code and K.wkshp_code=S.wkspcode
+                            left  join TWoPrteEqp_Stad S on A.wo_code=S.wo and A.materiel_code=S.materiel_code and A.eqp_code=S.eqp_code and A.step_code=S.step_code and K.route_code=S.route_code 
                             left  join TMateriel_Info M on A.materiel_code=M.partcode
                             left  join TStep T on A.step_code=T.stepcode
                             left  join TUser U on B.report_person=U.usercode
+                            ) as AA
                             where " + search;
                 DataTable data = DapperHelper.selectdata(sql, dynamicParams);
                 data.TableName = "Table"; //璁剧疆DataTable鐨勫悕绉�
@@ -1307,5 +1360,129 @@
             return mes;
         }
         #endregion
+
+
+        #region[鐗╂祦妫�楠岃褰曟煡璇
+        public static ToMessage LogisticsCheckSearch(string checktypecode, string partcode, string partname, string partspec, string labcode, string customercode, string batchno, string checkuser, string opencheckdate, string closecheckdate, int startNum, int endNum, string prop, string order)
+        {
+            var dynamicParams = new DynamicParameters();
+            string search = "";
+            try
+            {
+                if (checktypecode != "" && checktypecode != null)
+                {
+                    search += "and A.check_type=@checktypecode ";
+                    dynamicParams.Add("@checktypecode", checktypecode);
+                }
+                if (partcode != "" && partcode != null)
+                {
+                    search += "and M.partcode like '%'+@partcode+'%' ";
+                    dynamicParams.Add("@partcode", partcode);
+                }
+                if (partname != "" && partname != null)
+                {
+                    search += "and M.partname like '%'+@partname+'%' ";
+                    dynamicParams.Add("@partname", partname);
+                }
+                if (partspec != "" && partspec != null)
+                {
+                    search += "and M.partspec like '%'+@partspec+'%' ";
+                    dynamicParams.Add("@partspec", partspec);
+                }
+                if (labcode != "" && labcode != null)
+                {
+                    search += "and A.hbarcode like '%'+@labcode+'%' ";
+                    dynamicParams.Add("@labcode", labcode);
+                }
+                if (customercode != "" && customercode != null)
+                {
+                    search += "and A.customer_code=@customercode ";
+                    dynamicParams.Add("@customercode", customercode);
+                }
+                if (batchno != "" && batchno != null)
+                {
+                    search += "and R.hbatchno like '%'+@batchno+'%' ";
+                    dynamicParams.Add("@batchno", labcode);
+                }
+                if (checkuser != "" && checkuser != null)
+                {
+                    search += "and U.usercode like '%'+@checkuser+'%' ";
+                    dynamicParams.Add("@checkuser", checkuser);
+                }        
+                if (opencheckdate != "" && opencheckdate != null)
+                {
+                    search += "and A.lm_date between @opencheckdate and @closecheckdate ";
+                    dynamicParams.Add("@opencheckdate", opencheckdate + " 00:00:00");
+                    dynamicParams.Add("@closecheckdate", closecheckdate + " 23:59:59");
+                }
+                if (search == "")
+                {
+                    search = "and 1=1 ";
+                }
+                search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
+                // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+                var total = 0; //鎬绘潯鏁�
+                var sql = @"select A.check_type,A.check_typename,A.sampmethod,M.partcode,M.partname,M.partspec,R.hbatchno, 
+                            A.hbarcode,A.customer_code,C.name as customer_name,U.usercode,U.username,A.lm_date,A.check_result 
+                            from TStepCheckRecord A
+                            inner join TStepCheckRecordSub B on A.id=B.m_id
+                            left  join TMateriel_Info M on A.partcode=M.partcode
+                            left  join T_BarCodeBill R on A.hbarcode=R.hbarcode
+                            left  join TCustomer C on A.customer_code=C.code
+                            left  join TUser U on A.check_user=U.usercode
+                            where " + search;
+                var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
+                mes.code = "200";
+                mes.Message = "鏌ヨ鎴愬姛!";
+                mes.count = total;
+                mes.data = data.ToList();
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[鐗╂祦妫�楠岋紝鏌ョ湅妫�楠屾槑缁哴
+        public static ToMessage LogisticsCheckSubSearch(string checkid)
+        {
+            var sql = "";
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                //瀛樺偍杩囩▼鍚�
+                sql = @"h_p_IFCLD_WuLiuCheckSubSelect";
+                dynamicParams.Add("@checkid", checkid);
+                DataTable dt = DapperHelper.selectProcedure(sql, dynamicParams);
+                if (dt.Rows.Count > 0)
+                {
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.Message = "鏌ヨ鎴愬姛!";
+                    mes.data = dt;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.Message = "鏃犳楠屾槑缁嗘暟鎹�!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3