From 9c634fd767aec36ef97c3a814bf7a29c67d20ee1 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期五, 29 三月 2024 10:57:35 +0800
Subject: [PATCH] 修改单据重复显示问题,增加工单源单id关联
---
VueWebApi/DLL/DAL/AppAnalyticsDAL.cs | 77 ++++++++++++++++++++++++++++----------
1 files changed, 56 insertions(+), 21 deletions(-)
diff --git a/VueWebApi/DLL/DAL/AppAnalyticsDAL.cs b/VueWebApi/DLL/DAL/AppAnalyticsDAL.cs
index e96f522..5e1c401 100644
--- a/VueWebApi/DLL/DAL/AppAnalyticsDAL.cs
+++ b/VueWebApi/DLL/DAL/AppAnalyticsDAL.cs
@@ -20,13 +20,28 @@
public static SqlParameter[] parameters; //瀹氫箟鍏ㄥ眬SqlParameter鍙傛暟鏁扮粍
#region[App鐢熶骇鐪嬫澘]
- public static ToMessage ProductionKanban(string usercode, string startopendate, string endclosedate,string defecttype)
+ public static ToMessage ProductionKanban(string stu_torgcode,string stu_torgtypecode,string usercode, string startopendate, string endclosedate,string defecttype)
{
Dictionary<object, object> dList = new Dictionary<object, object>();
var dynamicParams = new DynamicParameters();
string search = "";
try
{
+ switch (stu_torgtypecode)
+ {
+ case "":
+ break;
+ case "D":
+ search += "and L.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ case "W":
+ search += "and C.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ default:
+ break;
+ }
// --------------鐢熶骇鎬昏--------------
var sql = @"select
sum(CASE AA.clmname WHEN '璁″垝鏁伴噺' THEN AA.clmqty ELSE 0 END) as 'plan_qty',
@@ -34,16 +49,21 @@
sum(CASE AA.clmname WHEN '缂洪櫡浜у嚭' THEN AA.clmqty ELSE 0 END) as 'defect_qty'
from(
select isnull(sum(A.plan_qty),0) as clmqty,'璁″垝鏁伴噺'as clmname from TK_Wrk_Man A
- where A.lm_date between @startopendate and @endclosedate
- union all
+ left join TOrganization C on A.wkshp_code=C.org_code
+ left join TOrganization L on C.parent_id=L.id
+ where A.lm_date between @startopendate and @endclosedate "+search;
+ sql += @"union all
select isnull(sum(P.good_qty),0) as report_qty,'鍚堟牸浜у嚭' as 鍚堟牸浜у嚭 from TK_Wrk_Man A
inner join TK_Wrk_Step P on A.wo_code=P.wo_code and P.isend='Y'
- where A.lm_date between @startopendate and @endclosedate
- union all
+ left join TOrganization C on A.wkshp_code=C.org_code
+ left join TOrganization L on C.parent_id=L.id
+ where A.lm_date between @startopendate and @endclosedate "+search;
+ sql += @"union all
select (isnull(sum(P.ng_qty),0)+isnull(sum(P.bad_qty),0)) as ngqty,'缂洪櫡浜у嚭' as 缂洪櫡浜у嚭 from TK_Wrk_Man A
inner join TK_Wrk_Step P on A.wo_code=P.wo_code
- where A.lm_date between @startopendate and @endclosedate
- ) as AA";
+ left join TOrganization C on A.wkshp_code=C.org_code
+ left join TOrganization L on C.parent_id=L.id
+ where A.lm_date between @startopendate and @endclosedate "+search+") as AA";
dynamicParams.Add("@startopendate", startopendate + " 00:00:00");
dynamicParams.Add("@endclosedate", endclosedate + " 23:59:59");
var data0 = DapperHelper.selectdata(sql, dynamicParams);
@@ -53,9 +73,9 @@
select COUNT(A.id) as cluntqty,
case when A.status='START' then '鎵ц涓�' when A.status='CLOSED' then '宸茬粨鏉�' else '鏈紑濮�' end as wo_status
from TK_Wrk_Man A
- where A.lm_date between @startopendate and @endclosedate
- group by A.status
- ) as AA group by AA.wo_status";
+ left join TOrganization C on A.wkshp_code=C.org_code
+ left join TOrganization L on C.parent_id=L.id
+ where A.lm_date between @startopendate and @endclosedate "+search+" group by A.status) as AA group by AA.wo_status";
var data1 = DapperHelper.selectdata(sql1, dynamicParams);
dList.Add("dt1", data1);
// --------------缂洪櫡缁熻--------------
@@ -67,20 +87,18 @@
select A.plan_qty,M.partname,S.ng_qty,S.bad_qty from TK_Wrk_Man A
inner join (select wo_code, isnull(sum(ng_qty),0) as ng_qty,isnull(sum(bad_qty),0) as bad_qty from TK_Wrk_Step where ng_qty>0 or bad_qty>0 group by wo_code) S on A.wo_code=S.wo_code
inner join TMateriel_Info M on A.materiel_code=M.partcode
- where A.lm_date between @startopendate and @endclosedate
- ) as AA
- group by AA.partname
- order by defect_qty desc";
+ left join TOrganization C on A.wkshp_code=C.org_code
+ left join TOrganization L on C.parent_id=L.id
+ where A.lm_date between @startopendate and @endclosedate "+search+") as AA group by AA.partname order by defect_qty desc";
break;
case "stp"://鎸夊伐搴忕粺璁�
sql2 = @"select top 5 sum(AA.plan_qty) as plan_qty,AA.stepname,sum(AA.ng_qty)+sum(AA.bad_qty) as defect_qty from (
select A.plan_qty,T.stepname,S.ng_qty,S.bad_qty from TK_Wrk_Man A
inner join (select wo_code,step_code, isnull(sum(ng_qty),0) as ng_qty,isnull(sum(bad_qty),0) as bad_qty from TK_Wrk_Step where ng_qty>0 or bad_qty>0 group by wo_code,step_code) S on A.wo_code=S.wo_code
inner join TStep T on S.step_code=T.stepcode
- where A.lm_date between @startopendate and @endclosedate
- ) as AA
- group by AA.stepname
- order by defect_qty desc";
+ left join TOrganization C on A.wkshp_code=C.org_code
+ left join TOrganization L on C.parent_id=L.id
+ where A.lm_date between @startopendate and @endclosedate "+search+") as AA group by AA.stepname order by defect_qty desc";
break;
default:
break;
@@ -103,15 +121,30 @@
#endregion
#region[App鐢熶骇杩涘害鐪嬫澘鍗曟嵁淇℃伅]
- public static ToMessage ProductionScheduleKanban(string ordertype, string partcode, string startopendate, string endclosedate)
+ public static ToMessage ProductionScheduleKanban(string stu_torgcode,string stu_torgtypecode, string ordertype, string partcode, string startopendate, string endclosedate)
{
Dictionary<object, object> dList = new Dictionary<object, object>();
List<AppScheduleKanban> list = new List<AppScheduleKanban>();
var dynamicParams = new DynamicParameters();
- string search = "",sql="";
+ string search = "", search1 = "",sql ="";
DataTable dt;
try
{
+ switch (stu_torgtypecode)
+ {
+ case "":
+ break;
+ case "D":
+ search1 += "and L.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ case "W":
+ search1 += "and C.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ default:
+ break;
+ }
//鏍规嵁鏌ヨ鏉′欢,鏌ユ壘绗﹀悎瑕佹眰鐨勫崟鎹�
switch (ordertype)
{
@@ -268,8 +301,10 @@
//鑾峰彇鍗曟嵁淇℃伅
sql = @"select distinct A.wo_code,T.partcode,T.partname,T.partspec,A.lm_date,sum(A.plan_qty) as orderqty
from TK_Wrk_Man A
+ left join TOrganization C on A.wkshp_code=C.org_code
+ left join TOrganization L on C.parent_id=L.id
left join TMateriel_Info T on A.materiel_code=T.partcode
- where 1=1 "+search+" group by A.wo_code,T.partcode,T.partname,T.partspec,A.lm_date order by A.lm_date desc";
+ where 1=1 " + search+search1+" group by A.wo_code,T.partcode,T.partname,T.partspec,A.lm_date order by A.lm_date desc";
dt = DapperHelper.selectlist(sql, dynamicParams);
if (dt.Rows.Count > 0)
{
--
Gitblit v1.9.3