yl
2022-08-26 8427cbd12ab2cd1923054ff72e263f5bdebc0803
VueWebApi/DLL/DAL/DeviceManagerDAL.cs
@@ -614,8 +614,15 @@
                    mes.data = null;
                    return mes;
                }
                //删除设备
                sql = @"update TEqpInfo set is_delete='1' where code=@devicecode";
                list.Add(new { str = sql, parm = new { devicecode = devicecode } });
                //删除设备关联点检标准表
                sql = @"delete TEqpchk_Eqp  where eqp_code=@devicecode";
                list.Add(new { str = sql, parm = new { devicecode = devicecode } });
                //删除设备绑定保养标准表
                sql = @"delete TEqpmai_Eqp  where eqp_code=@devicecode";
                list.Add(new { str = sql, parm = new { devicecode = devicecode } });
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
@@ -1125,7 +1132,7 @@
                //根据设备点检标准编码获取关联的检验项目信息
                sql = @"select B.code,B.name,A.chkdesc,A.isscan,A.cycle  from TEqpchk_Deta A
                        left join TEqpchk_Item  B on A.code=B.code
                        where  A.eqpcheck_main_code=@checkstaned_code order by A.seq asc";
                        where  A.eqpchk_main_code=@checkstaned_code order by A.seq asc";
                dynamicParams.Add("@checkstaned_code", rout.code);
                var data0 = DapperHelper.selectdata(sql, dynamicParams);
                rout.Data = data0;
@@ -1156,7 +1163,7 @@
                if (opertype == "Add")
                {
                    //新增设备点检标准主表
                    sql = @"insert into TEqpchk_Main(code,name,description,iscontr,lm_user,lm_date) values(@code,@name,@descr,@lm_user,@lm_date)";
                    sql = @"insert into TEqpchk_Main(code,name,description,iscontr,lm_user,lm_date) values(@code,@name,@descr,@iscontr,@lm_user,@lm_date)";
                    list.Add(new { str = sql, parm = new { code = json.code, name = json.name, descr = json.description, iscontr = json.enable, lm_user = username, lm_date = DateTime.Now.ToString() } });
                    for (int i = 0; i < json.Data.Rows.Count; i++)
                    {
@@ -1313,7 +1320,7 @@
        {
            string sql = "";
            var dynamicParams = new DynamicParameters();
            List<StepEqp> list = new List<StepEqp>();
            List<StandEqp> list = new List<StandEqp>();
            try
            {
                //获取工作站集合(车间,包含已绑定工作站标识)
@@ -1328,26 +1335,41 @@
                var data = DapperHelper.selectdata(sql, dynamicParams);
                for (int i = 0; i < data.Rows.Count; i++)
                {
                    StepEqp rout = new StepEqp();
                    StandEqp rout = new StandEqp();
                    rout.code = data.Rows[i]["WKSP_CODE"].ToString();
                    rout.name = data.Rows[i]["WKSP_NAME"].ToString();
                    rout.type = data.Rows[i]["TYPE"].ToString();
                    rout.flag = data.Rows[i]["FLAG"].ToString();
                    rout.children = new List<StepEqpCn>();
                    rout.children = new List<StandEqpCn>();
                    //根据车间编码查找设备(包含已关联标识)
                    sql = @"select A.code,A.name,'E' as type,(case when B.eqp_code is null then 'N' else 'Y' end) flag
                    //sql = @"select A.code,A.name,'E' as type,(case when B.eqp_code is null then 'N' else 'Y' end) flag
                    //        from TEqpInfo A
                    //        left join(
                    //        select distinct A.eqp_code  from TEqpchk_Eqp A
                    //        inner join TEqpInfo B on A.eqp_code=B.code
                    //        where A.eqpchkmain_code=@checkstand_code and A.is_delete<>'1' and B.is_delete<>'1'
                    //        ) B on A.code=B.eqp_code where A.wksp_code=@wkspcode and A.is_delete<>'1'";
                    sql = @"select *  from(
                            select AA.code,AA.name,(case when BB.eqpchkmain_code is null then 'N' else 'Y' end) flag,(case when AA.eqpchkmain_code  is null then 'N' else 'Y' end) flage1
                            from(
                            select A.code,A.name,B.eqpchkmain_code
                            from TEqpInfo A
                            left join(
                            select distinct A.eqp_code  from TEqpchk_Eqp A
                            inner join TEqpInfo B on A.eqp_code=B.code
                            where A.eqpchkmain_code=@checkstand_code and A.is_delete<>'1' and B.is_delete<>'1'
                            ) B on A.code=B.eqp_code where A.wksp_code=@wkspcode and A.is_delete<>'1'";
                            left join TEqpchk_Eqp B on A.code=B.eqp_code
                            where A.wksp_code=@wkspcode and A.is_delete<>'1'
                            ) as AA
                            left join (
                             select A.code,A.name,B.eqpchkmain_code
                             from TEqpInfo A
                             inner join TEqpchk_Eqp B on A.code=B.eqp_code
                             where A.wksp_code=@wkspcode and B.eqpchkmain_code=@checkstand_code and A.is_delete<>'1'
                            ) as BB on AA.code=BB.code
                            ) as CC where case when flag ='N' and flage1 ='Y' then 0 else 1 end=1";
                    dynamicParams.Add("@checkstand_code", checkstand_code);
                    dynamicParams.Add("@wkspcode", data.Rows[i]["WKSP_CODE"].ToString());
                    var data0 = DapperHelper.selectdata(sql, dynamicParams);
                    for (int j = 0; j < data0.Rows.Count; j++)
                    {
                        StepEqpCn cn = new StepEqpCn();
                        StandEqpCn cn = new StandEqpCn();
                        cn.code = data0.Rows[j]["CODE"].ToString();//设备编码
                        cn.name = data0.Rows[j]["NAME"].ToString();//设备名称
                        cn.type = data0.Rows[j]["TYPE"].ToString();//工作站类型(E:设备 W:外协供方)
@@ -1734,7 +1756,7 @@
        {
            string sql = "";
            var dynamicParams = new DynamicParameters();
            List<StepEqp> list = new List<StepEqp>();
            List<StandEqp> list = new List<StandEqp>();
            try
            {
                //获取工作站集合(车间,包含已绑定工作站标识)
@@ -1745,30 +1767,46 @@
                        inner join TEqpInfo B on A.eqp_code=B.code 
                        where A.eapmai_code=@repairstand_code and A.is_delete<>'1' and B.is_delete<>'1'
                        ) B on T.org_code=B.wksp_code where T.description='W' and is_delete<>'1'";
                dynamicParams.Add("@repairstand_code", repairstand_code);
                var data = DapperHelper.selectdata(sql, dynamicParams);
                for (int i = 0; i < data.Rows.Count; i++)
                {
                    StepEqp rout = new StepEqp();
                    StandEqp rout = new StandEqp();
                    rout.code = data.Rows[i]["WKSP_CODE"].ToString();
                    rout.name = data.Rows[i]["WKSP_NAME"].ToString();
                    rout.type = data.Rows[i]["TYPE"].ToString();
                    rout.flag = data.Rows[i]["FLAG"].ToString();
                    rout.children = new List<StepEqpCn>();
                    rout.children = new List<StandEqpCn>();
                    //根据车间编码查找设备(包含已关联标识)
                    sql = @"select A.code,A.name,'E' as type,(case when B.eqp_code is null then 'N' else 'Y' end) flag
                    //sql = @"select A.code,A.name,'E' as type,(case when B.eqp_code is null then 'N' else 'Y' end) flag
                    //        from TEqpInfo A
                    //        left join(
                    //        select distinct A.eqp_code  from TEqpmai_Eqp A
                    //        inner join TEqpInfo B on A.eqp_code=B.code
                    //        where A.eapmai_code=@repairstand_code and A.is_delete<>'1' and B.is_delete<>'1'
                    //        ) B on A.code=B.eqp_code where A.wksp_code=@wkspcode and A.is_delete<>'1'";
                    sql = @"select *  from(
                            select AA.code,AA.name,(case when BB.eapmai_code is null then 'N' else 'Y' end) flag,(case when AA.eapmai_code  is null then 'N' else 'Y' end) flage1
                            from(
                            select A.code,A.name,B.eapmai_code
                            from TEqpInfo A
                            left join(
                            select distinct A.eqp_code  from TEqpmai_Eqp A
                            inner join TEqpInfo B on A.eqp_code=B.code
                            where A.eapmai_code=@repairstand_code and A.is_delete<>'1' and B.is_delete<>'1'
                            ) B on A.code=B.eqp_code where A.wksp_code=@wkspcode and A.is_delete<>'1'";
                            left join TEqpmai_Eqp B on A.code=B.eqp_code
                            where A.wksp_code=@wkspcode and A.is_delete<>'1'
                            ) as AA
                            left join (
                             select A.code,A.name,B.eapmai_code
                             from TEqpInfo A
                             inner join TEqpmai_Eqp B on A.code=B.eqp_code
                             where A.wksp_code=@wkspcode and B.eapmai_code=@repairstand_code and A.is_delete<>'1'
                            ) as BB on AA.code=BB.code
                            ) as CC where case when flag ='N' and flage1 ='Y' then 0 else 1 end=1";
                    dynamicParams.Add("@repairstand_code", repairstand_code);
                    dynamicParams.Add("@wkspcode", data.Rows[i]["WKSP_CODE"].ToString());
                    var data0 = DapperHelper.selectdata(sql, dynamicParams);
                    for (int j = 0; j < data0.Rows.Count; j++)
                    {
                        StepEqpCn cn = new StepEqpCn();
                        StandEqpCn cn = new StandEqpCn();
                        cn.code = data0.Rows[j]["CODE"].ToString();//设备编码
                        cn.name = data0.Rows[j]["NAME"].ToString();//设备名称
                        cn.type = data0.Rows[j]["TYPE"].ToString();//工作站类型(E:设备 W:外协供方)