Преглед изворни кода

注掉商标调用SAP那块

fubin пре 3 година
родитељ
комит
b5de41689b

+ 303 - 303
DK.Service/PMModuleLogic/PMModuleLogicDAL.cs

@@ -27388,340 +27388,340 @@ updateuserid=:updateuserid where barcode=:barcode";
         {
             int returnRows = 1;
             message = "";
-            try
-            {
-                string sql = "";
-                sql = @"
-                SELECT GDD.MATERIALCODE AS MATNR,
-                       DECODE(GDD.TESTMOULDFLAG, 0, 'C', 1, 'Y', '-') AS ZSCMS,
-                       CASE
-                           WHEN (INSTR(GDD.GROUTINGLINECODE, 'A') = 1 OR INSTR(GDD.GROUTINGLINECODE, 'D') = 1)
-                                AND INSTR(GT.GOODSTYPECODE, '001002') = 1 THEN
-                            1
-                           WHEN (INSTR(GDD.GROUTINGLINECODE, 'B') = 1 OR INSTR(GDD.GROUTINGLINECODE, 'D') = 1)
-                                AND INSTR(GT.GOODSTYPECODE, '001001') = 1 THEN
-                            2
-                           WHEN INSTR(GDD.GROUTINGLINECODE, 'C') = 1 THEN
-                            3
-                           ELSE
-                            9
-                       END AS WORKSHOP
-                  FROM TP_PM_GROUTINGDAILYDETAIL GDD
-                 INNER JOIN TP_MST_GOODS G
-                    ON G.GOODSID = GDD.GOODSID
-                 INNER JOIN TP_MST_GOODSTYPE GT
-                    ON GT.GOODSTYPEID = G.GOODSTYPEID
-                 WHERE GDD.BARCODE = :BARCODE ";
-
-                DataTable dtMatnr = oracleTrConn.GetSqlResultToDt(sql, new OracleParameter[]
-                {
-                    new OracleParameter(":barcode", OracleDbType.Varchar2, barcode, ParameterDirection.Input)
-                });
-
-                // 如果物料编码不一致
-                if (!oldMatnr.Equals(dtMatnr.Rows[0]["MATNR"]))
-                {
-                    sql = @"
-                    SELECT IDNRK,
-                           MEINS,
-                           MENGE,
-                           IDNRKNAME,
-                           IDNRKONLYCODE,
-                           CHARG,
-                           LGORT
-                      FROM TP_PM_BARCODEIDNRKREL
-                     WHERE VALUEFLAG = '1'
-                       AND BARCODE = :BARCODE ";
-                    DataTable dtIdnrks = oracleTrConn.GetSqlResultToDt(sql, new OracleParameter[]
-                    {
-                        new OracleParameter(":BARCODE", OracleDbType.Varchar2, barcode, ParameterDirection.Input)
-                    });
+            //try
+            //{
+            //    string sql = "";
+            //    sql = @"
+            //    SELECT GDD.MATERIALCODE AS MATNR,
+            //           DECODE(GDD.TESTMOULDFLAG, 0, 'C', 1, 'Y', '-') AS ZSCMS,
+            //           CASE
+            //               WHEN (INSTR(GDD.GROUTINGLINECODE, 'A') = 1 OR INSTR(GDD.GROUTINGLINECODE, 'D') = 1)
+            //                    AND INSTR(GT.GOODSTYPECODE, '001002') = 1 THEN
+            //                1
+            //               WHEN (INSTR(GDD.GROUTINGLINECODE, 'B') = 1 OR INSTR(GDD.GROUTINGLINECODE, 'D') = 1)
+            //                    AND INSTR(GT.GOODSTYPECODE, '001001') = 1 THEN
+            //                2
+            //               WHEN INSTR(GDD.GROUTINGLINECODE, 'C') = 1 THEN
+            //                3
+            //               ELSE
+            //                9
+            //           END AS WORKSHOP
+            //      FROM TP_PM_GROUTINGDAILYDETAIL GDD
+            //     INNER JOIN TP_MST_GOODS G
+            //        ON G.GOODSID = GDD.GOODSID
+            //     INNER JOIN TP_MST_GOODSTYPE GT
+            //        ON GT.GOODSTYPEID = G.GOODSTYPEID
+            //     WHERE GDD.BARCODE = :BARCODE ";
+
+            //    DataTable dtMatnr = oracleTrConn.GetSqlResultToDt(sql, new OracleParameter[]
+            //    {
+            //        new OracleParameter(":barcode", OracleDbType.Varchar2, barcode, ParameterDirection.Input)
+            //    });
 
-                    // 如果装了配件了
-                    if (dtIdnrks.Rows.Count > 0)
-                    {
-                        string datuv = System.DateTime.Now.Date.ToString("yyyyMMdd");
+            //    // 如果物料编码不一致
+            //    if (!oldMatnr.Equals(dtMatnr.Rows[0]["MATNR"]))
+            //    {
+            //        sql = @"
+            //        SELECT IDNRK,
+            //               MEINS,
+            //               MENGE,
+            //               IDNRKNAME,
+            //               IDNRKONLYCODE,
+            //               CHARG,
+            //               LGORT
+            //          FROM TP_PM_BARCODEIDNRKREL
+            //         WHERE VALUEFLAG = '1'
+            //           AND BARCODE = :BARCODE ";
+            //        DataTable dtIdnrks = oracleTrConn.GetSqlResultToDt(sql, new OracleParameter[]
+            //        {
+            //            new OracleParameter(":BARCODE", OracleDbType.Varchar2, barcode, ParameterDirection.Input)
+            //        });
 
-                        Hashtable pars = new Hashtable();
-                        pars.Add("MATNR", dtMatnr.Rows[0]["MATNR"]);  // 物料
-                        pars.Add("WERKS", "5000");                    // 工厂
-                        pars.Add("ZSCS", "T");                        // 生产工艺
-                        pars.Add("ZSCCJ", dtMatnr.Rows[0]["WORKSHOP"]); // 生产车间
-                        pars.Add("ZSCMS", dtMatnr.Rows[0]["ZSCMS"]);  // 生产模式
-                        pars.Add("ZJDNU", "60");                      // 节点
-                        pars.Add("DATUV", datuv);                     // 查询日期
-                        pars.Add("EMENG", 1);                         // 需求数量
+            //        // 如果装了配件了
+            //        if (dtIdnrks.Rows.Count > 0)
+            //        {
+            //            string datuv = System.DateTime.Now.Date.ToString("yyyyMMdd");
 
-                        Hashtable item = new Hashtable();
-                        item.Add("item", pars);
+            //            Hashtable pars = new Hashtable();
+            //            pars.Add("MATNR", dtMatnr.Rows[0]["MATNR"]);  // 物料
+            //            pars.Add("WERKS", "5000");                    // 工厂
+            //            pars.Add("ZSCS", "T");                        // 生产工艺
+            //            pars.Add("ZSCCJ", dtMatnr.Rows[0]["WORKSHOP"]); // 生产车间
+            //            pars.Add("ZSCMS", dtMatnr.Rows[0]["ZSCMS"]);  // 生产模式
+            //            pars.Add("ZJDNU", "60");                      // 节点
+            //            pars.Add("DATUV", datuv);                     // 查询日期
+            //            pars.Add("EMENG", 1);                         // 需求数量
 
-                        Hashtable body = new Hashtable();
-                        body.Add("T_INPUT", item);
+            //            Hashtable item = new Hashtable();
+            //            item.Add("item", pars);
 
-                        string postString = JsonConvert.SerializeObject(body);
+            //            Hashtable body = new Hashtable();
+            //            body.Add("T_INPUT", item);
 
-                        INIUtility ini = INIUtility.Instance(INIUtility.IniFile.SAP_HEGII);
-                        string url039 = ini.ReadIniData("SAP_NEW_INFO", "Url039");
-                        //string url039 = "http://hgs4podev.hegii.com:50200/RESTAdapter/DKMES/ZPPFM039";
+            //            string postString = JsonConvert.SerializeObject(body);
 
-                        string result = string.Empty;
-                        try
-                        {
-                            result = SAPDataLogic.PostData(url039, postString, "POST");
-                        }
-                        catch (Exception ex)
-                        {
-                            message = "获取SAP库存接口异常:\n" + ex.Message;
-                            return -4;
-                        }
+            //            INIUtility ini = INIUtility.Instance(INIUtility.IniFile.SAP_HEGII);
+            //            string url039 = ini.ReadIniData("SAP_NEW_INFO", "Url039");
+            //            //string url039 = "http://hgs4podev.hegii.com:50200/RESTAdapter/DKMES/ZPPFM039";
 
+            //            string result = string.Empty;
+            //            try
+            //            {
+            //                result = SAPDataLogic.PostData(url039, postString, "POST");
+            //            }
+            //            catch (Exception ex)
+            //            {
+            //                message = "获取SAP库存接口异常:\n" + ex.Message;
+            //                return -4;
+            //            }
 
-                        JObject returnObj = JsonConvert.DeserializeObject<JObject>(result);
-                        JObject output = returnObj["T_OUTPUT"] as JObject;
-                        JArray array = output["item"] as JArray;
-                        DataTable dtIdnrk = Utility.ConvertToDataTable(array);
 
-                        if ("E".Equals(dtIdnrk.Rows[0]["ZTYPE"] + ""))
-                        {
-                            message = "获取SAP库存失败";
-                            return -5;
-                        }
+            //            JObject returnObj = JsonConvert.DeserializeObject<JObject>(result);
+            //            JObject output = returnObj["T_OUTPUT"] as JObject;
+            //            JArray array = output["item"] as JArray;
+            //            DataTable dtIdnrk = Utility.ConvertToDataTable(array);
 
-                        dtIdnrk.DefaultView.RowFilter = "MAKTX NOT LIKE '%半成品%'";
-                        dtIdnrk = dtIdnrk.DefaultView.ToTable();
-
-                        // 获取已走过的装配工序
-                        string procedureidlist = oracleTrConn.GetSqlResultToStr(@"
-                        SELECT LISTAGG(PROCEDUREID, ',') WITHIN GROUP(ORDER BY PROCEDUREID) AS PROCEDUREIDLIST
-                          FROM TP_PM_PRODUCTIONDATA
-                         WHERE VALUEFLAG = '1'
-                           AND MODELTYPE = '-5'
-                           AND BARCODE = :BARCODE ",
-                           new OracleParameter[] { new OracleParameter("BARCODE", barcode) }
-                        );
-                        procedureidlist = "," + procedureidlist + ",";
-
-
-                        // 过滤当前工序需要的组件
-                        DataTable dtIdnrkType = oracleTrConn.GetSqlResultToDt(@"
-                        SELECT IDNRKTYPE
-                          FROM TP_PC_PROCEDUREIDNRKTYPE
-                         WHERE INSTR(:PROCEDUREIDLIST , ',' || PROCEDUREID || ',') > 0",
-                            new OracleParameter[] { new OracleParameter("PROCEDUREIDLIST", procedureidlist) }
-                        );
-
-                        dtIdnrk.DefaultView.RowFilter = "MAKTX NOT LIKE '%半成品%'";
-                        dtIdnrk = dtIdnrk.DefaultView.ToTable();
-
-                        // 如果包含其它,就不判断了
-                        if (dtIdnrkType.Select("IDNRKTYPE = '其它'").Length == 0)
-                        {
-                            string fifter = "";
-                            foreach (DataRow row in dtIdnrkType.Rows)
-                            {
-                                fifter += " MAKTX LIKE '%" + row["IDNRKTYPE"] + "%' OR";
-                            }
+            //            if ("E".Equals(dtIdnrk.Rows[0]["ZTYPE"] + ""))
+            //            {
+            //                message = "获取SAP库存失败";
+            //                return -5;
+            //            }
 
-                            // 如果没有条件,也不判断了
-                            if (fifter.Length > 0)
-                            {
-                                fifter = fifter.Substring(0, fifter.Length - 2);
-                                dtIdnrk.DefaultView.RowFilter = fifter;
-                                dtIdnrk = dtIdnrk.DefaultView.ToTable();
-                            }
-                        }
+            //            dtIdnrk.DefaultView.RowFilter = "MAKTX NOT LIKE '%半成品%'";
+            //            dtIdnrk = dtIdnrk.DefaultView.ToTable();
+
+            //            // 获取已走过的装配工序
+            //            string procedureidlist = oracleTrConn.GetSqlResultToStr(@"
+            //            SELECT LISTAGG(PROCEDUREID, ',') WITHIN GROUP(ORDER BY PROCEDUREID) AS PROCEDUREIDLIST
+            //              FROM TP_PM_PRODUCTIONDATA
+            //             WHERE VALUEFLAG = '1'
+            //               AND MODELTYPE = '-5'
+            //               AND BARCODE = :BARCODE ",
+            //               new OracleParameter[] { new OracleParameter("BARCODE", barcode) }
+            //            );
+            //            procedureidlist = "," + procedureidlist + ",";
+
+
+            //            // 过滤当前工序需要的组件
+            //            DataTable dtIdnrkType = oracleTrConn.GetSqlResultToDt(@"
+            //            SELECT IDNRKTYPE
+            //              FROM TP_PC_PROCEDUREIDNRKTYPE
+            //             WHERE INSTR(:PROCEDUREIDLIST , ',' || PROCEDUREID || ',') > 0",
+            //                new OracleParameter[] { new OracleParameter("PROCEDUREIDLIST", procedureidlist) }
+            //            );
+
+            //            dtIdnrk.DefaultView.RowFilter = "MAKTX NOT LIKE '%半成品%'";
+            //            dtIdnrk = dtIdnrk.DefaultView.ToTable();
+
+            //            // 如果包含其它,就不判断了
+            //            if (dtIdnrkType.Select("IDNRKTYPE = '其它'").Length == 0)
+            //            {
+            //                string fifter = "";
+            //                foreach (DataRow row in dtIdnrkType.Rows)
+            //                {
+            //                    fifter += " MAKTX LIKE '%" + row["IDNRKTYPE"] + "%' OR";
+            //                }
 
-                        // 过滤掉已安装的组件
-                        object idnrklist = oracleTrConn.GetSqlResultToStr(@"
-                        SELECT LISTAGG(IDNRK, ''',''') WITHIN GROUP(ORDER BY IDNRK) AS IDNRKLIST
-                          FROM TP_PM_BARCODEIDNRKREL
-                         WHERE VALUEFLAG = '1'
-                           AND BARCODE = :BARCODE ",
-                            new OracleParameter[] { new OracleParameter("BARCODE", barcode) }
-                        );
-
-                        // 可以保留的组件
-                        DataTable dtCanSaveIdnrk = dtIdnrk.Copy();
-                        dtCanSaveIdnrk.DefaultView.RowFilter = "IDNRK IN ('" + idnrklist + "')";
-                        dtCanSaveIdnrk = dtCanSaveIdnrk.DefaultView.ToTable();
-
-                        if (idnrklist != null)
-                        {
-                            dtIdnrk.DefaultView.RowFilter = "IDNRK NOT IN ('" + idnrklist + "')";
-                            dtIdnrk = dtIdnrk.DefaultView.ToTable();
-                        }
+            //                // 如果没有条件,也不判断了
+            //                if (fifter.Length > 0)
+            //                {
+            //                    fifter = fifter.Substring(0, fifter.Length - 2);
+            //                    dtIdnrk.DefaultView.RowFilter = fifter;
+            //                    dtIdnrk = dtIdnrk.DefaultView.ToTable();
+            //                }
+            //            }
 
-                        if (dtIdnrk.Rows.Count == 0)
-                        {
-                        }
+            //            // 过滤掉已安装的组件
+            //            object idnrklist = oracleTrConn.GetSqlResultToStr(@"
+            //            SELECT LISTAGG(IDNRK, ''',''') WITHIN GROUP(ORDER BY IDNRK) AS IDNRKLIST
+            //              FROM TP_PM_BARCODEIDNRKREL
+            //             WHERE VALUEFLAG = '1'
+            //               AND BARCODE = :BARCODE ",
+            //                new OracleParameter[] { new OracleParameter("BARCODE", barcode) }
+            //            );
+
+            //            // 可以保留的组件
+            //            DataTable dtCanSaveIdnrk = dtIdnrk.Copy();
+            //            dtCanSaveIdnrk.DefaultView.RowFilter = "IDNRK IN ('" + idnrklist + "')";
+            //            dtCanSaveIdnrk = dtCanSaveIdnrk.DefaultView.ToTable();
+
+            //            if (idnrklist != null)
+            //            {
+            //                dtIdnrk.DefaultView.RowFilter = "IDNRK NOT IN ('" + idnrklist + "')";
+            //                dtIdnrk = dtIdnrk.DefaultView.ToTable();
+            //            }
 
-                        // 加上需要的列
-                        dtIdnrk.Columns.Add("LGORT", typeof(string));
-                        dtIdnrk.Columns.Add("CHARG", typeof(string));
-                        dtIdnrk.Columns.Add("IDNRKONLYCODE", typeof(string));
+            //            if (dtIdnrk.Rows.Count == 0)
+            //            {
+            //            }
 
-                        // 提取包材物料编码
-                        List<string> matnrs = new List<string>();
-                        foreach (DataRow row in dtIdnrk.Rows)
-                        {
-                            if (!matnrs.Contains(row["IDNRK"] + ""))
-                            {
-                                matnrs.Add(row["IDNRK"] + "");
-                            }
-                        }
+            //            // 加上需要的列
+            //            dtIdnrk.Columns.Add("LGORT", typeof(string));
+            //            dtIdnrk.Columns.Add("CHARG", typeof(string));
+            //            dtIdnrk.Columns.Add("IDNRKONLYCODE", typeof(string));
 
-                        string ZMSG = string.Empty;
+            //            // 提取包材物料编码
+            //            List<string> matnrs = new List<string>();
+            //            foreach (DataRow row in dtIdnrk.Rows)
+            //            {
+            //                if (!matnrs.Contains(row["IDNRK"] + ""))
+            //                {
+            //                    matnrs.Add(row["IDNRK"] + "");
+            //                }
+            //            }
 
-                        // 查线边仓库存
-                        DataTable dtSapInventory = SapApi.ZMM_WMS016("5000", matnrs, "", out ZMSG);
-                        dtSapInventory.DefaultView.RowFilter = "LGORT IN('2420','2430','2440','2450','2460','2470','2480','2490')";
-                        dtSapInventory = dtSapInventory.DefaultView.ToTable();
+            //            string ZMSG = string.Empty;
 
-                        DataRow[] rows = null;
-                        if (dtSapInventory != null && dtSapInventory.Rows.Count > 0)
-                        {
-                            // 改名
-                            dtSapInventory.Columns["MATNR"].ColumnName = "IDNRK";
+            //            // 查线边仓库存
+            //            DataTable dtSapInventory = SapApi.ZMM_WMS016("5000", matnrs, "", out ZMSG);
+            //            dtSapInventory.DefaultView.RowFilter = "LGORT IN('2420','2430','2440','2450','2460','2470','2480','2490')";
+            //            dtSapInventory = dtSapInventory.DefaultView.ToTable();
 
-                            // 判断是否缺库存
-                            List<string> notEnoughIdnrks = new List<string>();
-                            foreach (string idnrk in matnrs)
-                            {
-                                rows = dtSapInventory.Select("IDNRK = '" + idnrk + "'"); ;
-                                if (rows.Length == 0)
-                                {
-                                    notEnoughIdnrks.Add(idnrk);
-                                }
-                            }
+            //            DataRow[] rows = null;
+            //            if (dtSapInventory != null && dtSapInventory.Rows.Count > 0)
+            //            {
+            //                // 改名
+            //                dtSapInventory.Columns["MATNR"].ColumnName = "IDNRK";
 
-                            if (notEnoughIdnrks.Count > 0)
-                            {
-                                message = "以下组件在SAP系统中库存不足:\n" + string.Join(",", notEnoughIdnrks.ToArray());
-                                return -6;
-                            }
+            //                // 判断是否缺库存
+            //                List<string> notEnoughIdnrks = new List<string>();
+            //                foreach (string idnrk in matnrs)
+            //                {
+            //                    rows = dtSapInventory.Select("IDNRK = '" + idnrk + "'"); ;
+            //                    if (rows.Length == 0)
+            //                    {
+            //                        notEnoughIdnrks.Add(idnrk);
+            //                    }
+            //                }
 
-                            // 库存数量要改为数字类型
-                            dtSapInventory.Columns.Add("BALANCE", typeof(decimal));
-                            decimal balance = 0;
+            //                if (notEnoughIdnrks.Count > 0)
+            //                {
+            //                    message = "以下组件在SAP系统中库存不足:\n" + string.Join(",", notEnoughIdnrks.ToArray());
+            //                    return -6;
+            //                }
 
-                            foreach (DataRow row in dtSapInventory.Rows)
-                            {
-                                decimal.TryParse(row["KYKC"] + "", out balance);
-                                row["BALANCE"] = balance;
-                            }
-                        }
-                        else
-                        {
-                            message = "以下组件在SAP系统中库存不足:\n" + string.Join(",", matnrs.ToArray());
-                            return -6;
-                        }
+            //                // 库存数量要改为数字类型
+            //                dtSapInventory.Columns.Add("BALANCE", typeof(decimal));
+            //                decimal balance = 0;
 
-                        dtSapInventory.DefaultView.RowFilter = "BALANCE <> 0";
-                        dtSapInventory = dtSapInventory.DefaultView.ToTable();
+            //                foreach (DataRow row in dtSapInventory.Rows)
+            //                {
+            //                    decimal.TryParse(row["KYKC"] + "", out balance);
+            //                    row["BALANCE"] = balance;
+            //                }
+            //            }
+            //            else
+            //            {
+            //                message = "以下组件在SAP系统中库存不足:\n" + string.Join(",", matnrs.ToArray());
+            //                return -6;
+            //            }
 
-                        dtSapInventory.DefaultView.Sort = "LGORT, CHARG";
-                        dtSapInventory = dtSapInventory.DefaultView.ToTable();
+            //            dtSapInventory.DefaultView.RowFilter = "BALANCE <> 0";
+            //            dtSapInventory = dtSapInventory.DefaultView.ToTable();
 
-                        DateTime now = DateTime.Now;
-                        foreach (DataRow row in dtIdnrk.Rows)
-                        {
-                            rows = dtSapInventory.Select("IDNRK = '" + row["IDNRK"] + "' AND BALANCE >= " + row["MENGE"]);
-                            if (rows.Length > 0)
-                            {
-                                row["LGORT"] = rows[0]["LGORT"];
-                                row["CHARG"] = rows[0]["CHARG"];
-                                row["IDNRKONLYCODE"] = "";
-                            }
-                            else
-                            {
-                                message = row["IDNRK"] + ":库存不足";
-                                return -6;
-                            }
-                        }
+            //            dtSapInventory.DefaultView.Sort = "LGORT, CHARG";
+            //            dtSapInventory = dtSapInventory.DefaultView.ToTable();
 
-                        dtIdnrk.TableName = "Idnrk";
-                        dtCanSaveIdnrk.TableName = "CanSaveIdnrk";
+            //            DateTime now = DateTime.Now;
+            //            foreach (DataRow row in dtIdnrk.Rows)
+            //            {
+            //                rows = dtSapInventory.Select("IDNRK = '" + row["IDNRK"] + "' AND BALANCE >= " + row["MENGE"]);
+            //                if (rows.Length > 0)
+            //                {
+            //                    row["LGORT"] = rows[0]["LGORT"];
+            //                    row["CHARG"] = rows[0]["CHARG"];
+            //                    row["IDNRKONLYCODE"] = "";
+            //                }
+            //                else
+            //                {
+            //                    message = row["IDNRK"] + ":库存不足";
+            //                    return -6;
+            //                }
+            //            }
 
-                        string canSaveIdnrks = ",";
-                        if (dtCanSaveIdnrk != null && dtCanSaveIdnrk.Rows.Count > 0)
-                        {
-                            foreach (DataRow row in dtCanSaveIdnrk.Rows)
-                            {
-                                canSaveIdnrks += row["IDNRK"] + ",";
-                            }
-                        }
+            //            dtIdnrk.TableName = "Idnrk";
+            //            dtCanSaveIdnrk.TableName = "CanSaveIdnrk";
 
-                        string delSql = @"
-                        DELETE FROM TP_PM_BARCODEIDNRKREL
-                         WHERE BARCODE = :BARCODE
-                           AND INSTR(:CANSAVEIDNRKS, ','|| IDNRK ||',') = 0 ";
+            //            string canSaveIdnrks = ",";
+            //            if (dtCanSaveIdnrk != null && dtCanSaveIdnrk.Rows.Count > 0)
+            //            {
+            //                foreach (DataRow row in dtCanSaveIdnrk.Rows)
+            //                {
+            //                    canSaveIdnrks += row["IDNRK"] + ",";
+            //                }
+            //            }
 
-                        returnRows += oracleTrConn.ExecuteNonQuery(delSql, new OracleParameter[]
-                        {
-                            new OracleParameter(":BARCODE", barcode),
-                            new OracleParameter(":CANSAVEIDNRKS", canSaveIdnrks)
-                        });
+            //            string delSql = @"
+            //            DELETE FROM TP_PM_BARCODEIDNRKREL
+            //             WHERE BARCODE = :BARCODE
+            //               AND INSTR(:CANSAVEIDNRKS, ','|| IDNRK ||',') = 0 ";
 
-                        if (dtIdnrk != null && dtIdnrk.Rows.Count > 0)
-                        {
-                            string barcodeidnrkrel = @"
-                            INSERT INTO TP_PM_BARCODEIDNRKREL
-                                    (PROCEDUREID,
-                                     BARCODE,
-                                     MATNR,
-                                     IDNRK,
-                                     MEINS,
-                                     MENGE,
-                                     IDNRKNAME,
-                                     IDNRKONLYCODE,
-                                     CHARG,
-                                     LGORT,
-                                     ACCOUNTID,
-                                     CREATEUSERID,
-                                     UPDATEUSERID)
-                                VALUES
-                                    (:PROCEDUREID,
-                                     :BARCODE,
-                                     :MATNR,
-                                     :IDNRK,
-                                     :MEINS,
-                                     :MENGE,
-                                     :IDNRKNAME,
-                                     :IDNRKONLYCODE,
-                                     :CHARG,
-                                     :LGORT,
-                                     :ACCOUNTID,
-                                     :USERID,
-                                     :USERID) ";
-
-                            foreach (DataRow row in dtIdnrk.Rows)
-                            {
-                                returnRows += oracleTrConn.ExecuteNonQuery(barcodeidnrkrel,
-                                new OracleParameter[]
-                                {
-                                    new OracleParameter(":PROCEDUREID", -1),
-                                    new OracleParameter(":BARCODE", barcode),
-                                    new OracleParameter(":MATNR", row["MATNR"]),
-                                    new OracleParameter(":IDNRK", row["IDNRK"]),
-                                    new OracleParameter(":MEINS", row["MEINS"]),
-                                    new OracleParameter(":MENGE", Convert.ToDecimal( row["MENGE"])),
-                                    new OracleParameter(":IDNRKNAME", row["MAKTX"]),
-                                    new OracleParameter(":IDNRKONLYCODE", row["IDNRKONLYCODE"]),
-                                    new OracleParameter(":CHARG", row["CHARG"]),
-                                    new OracleParameter(":LGORT", row["LGORT"]),
-                                    new OracleParameter(":ACCOUNTID", sUserInfo.AccountID),
-                                    new OracleParameter(":USERID", sUserInfo.UserID)
-                                });
-                            }
-                        }
-                    }
-                }
-            }
-            catch (Exception ex)
-            {
-                message = "接口异常:\n" + ex.Message;
-                return -4;
-            }
+            //            returnRows += oracleTrConn.ExecuteNonQuery(delSql, new OracleParameter[]
+            //            {
+            //                new OracleParameter(":BARCODE", barcode),
+            //                new OracleParameter(":CANSAVEIDNRKS", canSaveIdnrks)
+            //            });
+
+            //            if (dtIdnrk != null && dtIdnrk.Rows.Count > 0)
+            //            {
+            //                string barcodeidnrkrel = @"
+            //                INSERT INTO TP_PM_BARCODEIDNRKREL
+            //                        (PROCEDUREID,
+            //                         BARCODE,
+            //                         MATNR,
+            //                         IDNRK,
+            //                         MEINS,
+            //                         MENGE,
+            //                         IDNRKNAME,
+            //                         IDNRKONLYCODE,
+            //                         CHARG,
+            //                         LGORT,
+            //                         ACCOUNTID,
+            //                         CREATEUSERID,
+            //                         UPDATEUSERID)
+            //                    VALUES
+            //                        (:PROCEDUREID,
+            //                         :BARCODE,
+            //                         :MATNR,
+            //                         :IDNRK,
+            //                         :MEINS,
+            //                         :MENGE,
+            //                         :IDNRKNAME,
+            //                         :IDNRKONLYCODE,
+            //                         :CHARG,
+            //                         :LGORT,
+            //                         :ACCOUNTID,
+            //                         :USERID,
+            //                         :USERID) ";
+
+            //                foreach (DataRow row in dtIdnrk.Rows)
+            //                {
+            //                    returnRows += oracleTrConn.ExecuteNonQuery(barcodeidnrkrel,
+            //                    new OracleParameter[]
+            //                    {
+            //                        new OracleParameter(":PROCEDUREID", -1),
+            //                        new OracleParameter(":BARCODE", barcode),
+            //                        new OracleParameter(":MATNR", row["MATNR"]),
+            //                        new OracleParameter(":IDNRK", row["IDNRK"]),
+            //                        new OracleParameter(":MEINS", row["MEINS"]),
+            //                        new OracleParameter(":MENGE", Convert.ToDecimal( row["MENGE"])),
+            //                        new OracleParameter(":IDNRKNAME", row["MAKTX"]),
+            //                        new OracleParameter(":IDNRKONLYCODE", row["IDNRKONLYCODE"]),
+            //                        new OracleParameter(":CHARG", row["CHARG"]),
+            //                        new OracleParameter(":LGORT", row["LGORT"]),
+            //                        new OracleParameter(":ACCOUNTID", sUserInfo.AccountID),
+            //                        new OracleParameter(":USERID", sUserInfo.UserID)
+            //                    });
+            //                }
+            //            }
+            //        }
+            //    }
+            //}
+            //catch (Exception ex)
+            //{
+            //    message = "接口异常:\n" + ex.Message;
+            //    return -4;
+            //}
             return returnRows;
         }
     }

+ 13 - 1
DK.Service/ReportModuleLogic/ReportModuleLogic.cs

@@ -4576,12 +4576,23 @@ namespace Dongke.IBOSS.PRD.Service.ReportModuleLogic
             "                   and (:in_rptSprocedureId is null or ((:in_rptSprocedureId = 11 AND ((pd.procedureid = 11 ) OR (pd.procedureid =104 AND pd.isrefire = '0'))) \n" +
             "               OR (:in_rptSprocedureId = 58 AND ((pd.procedureid = 58) OR (pd.procedureid =104 AND pd.isrefire = '6'))) \n" +
             "               OR (:in_rptSprocedureId not in (11,58) AND pd.procedureid = :in_rptSprocedureId)))\n" +
-            "                   and pd.procedureid IN(11,104)\n" +
+            //"                   and pd.procedureid IN(11,104)\n" +
             // end
             //"                   and (:in_OutProcedureIDS is null or instr(','||:in_OutProcedureIDS||',', ','||pd.procedureid||',') > 0)\n" +
             "                   and pd.accountid = :in_AccountID\n";
 
             StringBuilder selSql = new StringBuilder(sqlString);
+
+            if (se.RptSProcedureID == 58)
+            {
+                selSql.Append("  and pd.procedureid IN(58)  ");
+            }
+            else
+            {
+                selSql.Append("  and pd.procedureid IN(11,104)  ");
+            }
+
+
             // 试验标识
             if (!string.IsNullOrEmpty(se.TestMouldFlag))
             {
@@ -4666,6 +4677,7 @@ namespace Dongke.IBOSS.PRD.Service.ReportModuleLogic
             //"                   and pd.AccountID = :in_AccountID\n" +
             //"                   and length(pd.kilncarbatchno) > 0\n";
             selSql.Append(sqlString);
+            
             // 试验标识
             if (!string.IsNullOrEmpty(se.TestMouldFlag))
             {

+ 2 - 2
WCF.Service/WCF.Hosting/SAP_HEGII.ini

@@ -56,8 +56,8 @@ Factory=5000
 #Url030=http://hgs4powd1.hegii.com:8000/RESTAdapter/DKMES/ZPPFM030
 #Url033=http://hgs4powd1.hegii.com:8000/RESTAdapter/DKMES/ZPPFM033
 #Url034=http://hgs4powd1.hegii.com:8000/RESTAdapter/DKMES/ZPPFM034
-#Url039=http://hgs4podev.hegii.com:8000/RESTAdapter/DKMES/ZPPFM039
-#Url138=http://hgs4podev.hegii.com:8000/RESTAdapter/DKMES/ZSDFM138
+#Url039=http://hgs4powd1.hegii.com:8000/RESTAdapter/DKMES/ZPPFM039
+#Url138=http://hgs4powd1.hegii.com:8000/RESTAdapter/DKMES/ZSDFM138
 #UserName=PODKMES:Sapdk#800
 #Factory=5000