/// <summary> /// 特殊信息 /// </summary> /// <param name="dt_Batch">需要确认的数据</param> /// <param name="TickNo">钩号</param> /// <returns></returns> public string Send_PcInfo(DataTable dt_Batch, int[] rownumber, string strPcInfo, string strDel) { string result = "1"; try { TransactionHelper.BeginTransaction(); TransactionHelper_SQL.BeginTransaction(); Dal_TQC_SPECIFIC_CONTENT_LOG dalLog = new Dal_TQC_SPECIFIC_CONTENT_LOG(); string pcinfo = strPcInfo + ";"; string userID = RV.UI.UserInfo.UserID; DateTime dTime = RV.UI.ServerTime.timeNow(); for (int i = 0; i < rownumber.Length; i++) { int i_index = rownumber[i]; string strID = dt_Batch.Rows[i_index]["C_ID"].ToString(); Mod_TRC_ROLL_PRODCUT mod_roll_prodcut = dal.GetModel(strID); if (strDel == "0") { if (dt_Batch.Rows[i_index]["C_PCINFO"].ToString().Contains(pcinfo)) { mod_roll_prodcut.C_PCINFO = dt_Batch.Rows[i_index]["C_PCINFO"].ToString().Replace(pcinfo, ""); } } else { mod_roll_prodcut.C_PCINFO = mod_roll_prodcut.C_PCINFO + pcinfo; } string strDJ = ""; if (string.IsNullOrEmpty(mod_roll_prodcut.C_JUDGE_LEV_ZH)) { strDJ = "DP"; } else { strDJ = mod_roll_prodcut.C_JUDGE_LEV_ZH; } string sql = ""; sql += "insert into ReZJB_GPD(Barcode,WGDH,CK,HW,PCH,WLH,WLMC,SX,PH,GG,BB,GH,ZL,BZ,RQ,RKType,RKRY,WeightRQ,ProduceData,PCInfo,vfree0,vfree3,GPTYPE,ZJBstatus,CAPPK,vfree1,vfree2,insertts) values('" + mod_roll_prodcut.C_BARCODE + "','" + mod_roll_prodcut.C_TRC_ROLL_MAIN_ID + "','" + mod_roll_prodcut.C_LINEWH_CODE + "','" + mod_roll_prodcut.C_LINEWH_LOC_CODE + "','" + mod_roll_prodcut.C_BATCH_NO + "','" + mod_roll_prodcut.C_MAT_CODE + "','" + mod_roll_prodcut.C_MAT_DESC + "','" + strDJ + "','" + mod_roll_prodcut.C_STL_GRD + "','" + mod_roll_prodcut.C_SPEC + "mm','" + mod_roll_prodcut.C_GROUP + "','" + mod_roll_prodcut.C_TICK_NO + "','" + mod_roll_prodcut.N_WGT + "','" + mod_roll_prodcut.C_STD_CODE + "','" + mod_roll_prodcut.D_RKRQ + "','" + mod_roll_prodcut.C_MOVE_DESC + "','" + mod_roll_prodcut.C_RKRY + "','" + mod_roll_prodcut.D_WEIGHT_DT + "','" + mod_roll_prodcut.D_PRODUCE_DATE + "','" + mod_roll_prodcut.C_PCINFO + "','" + mod_roll_prodcut.C_STOVE + "','" + mod_roll_prodcut.C_BZYQ + "','','0','" + mod_roll_prodcut.C_ID + "','" + mod_roll_prodcut.C_ZYX1 + "','" + mod_roll_prodcut.C_ZYX2 + "','" + dTime + "')"; if (TransactionHelper_SQL.ExecuteSql(sql) == 0) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("特殊信息传到条码时出错!"); } mod_roll_prodcut.C_EMP_ID = userID; mod_roll_prodcut.C_PLANT_DESC = dTime.ToString(); if (!dal.Update_Trans_XL(mod_roll_prodcut)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("特殊信息保存时出错!"); } Mod_TQC_SPECIFIC_CONTENT_LOG modLog = new Mod_TQC_SPECIFIC_CONTENT_LOG(); modLog.C_BATCH_NO = mod_roll_prodcut.C_BATCH_NO; if (strDel == "0") { modLog.C_CONTENT = "取消" + strPcInfo; } else { modLog.C_CONTENT = "添加" + strPcInfo; } modLog.C_TICK_NO = mod_roll_prodcut.C_TICK_NO; modLog.C_EMP_ID = userID; if (!dalLog.Add_Trans(modLog)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("特殊信息保存日志失败!"); } } TransactionHelper.Commit(); TransactionHelper_SQL.Commit(); return(result); } catch (Exception ex) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(ex.Message); } }
/// <summary> /// 下发条码 /// </summary> /// <returns></returns> public string Down_RF(DataTable dt) { string result = "1"; try { TransactionHelper.BeginTransaction(); TransactionHelper_SQL.BeginTransaction(); string userID = RV.UI.UserInfo.UserID; DateTime dTime = RV.UI.ServerTime.timeNow(); Dal_TRC_ROLL_PDD_ITEM dalRollPddItem = new Dal_TRC_ROLL_PDD_ITEM(); Dal_TPB_LINEWH dalTpbLineWh = new Dal_TPB_LINEWH(); Int64 i_ID_Main = 0; Int64 i_ID_Item = 0; string s_id_main = dal.Get_Max_ID(); if (string.IsNullOrEmpty(s_id_main)) { i_ID_Main = 20190200000; } else { i_ID_Main = Convert.ToInt64(s_id_main) + 1; } string s_id_item = dalRollPddItem.Get_Max_ID(); if (string.IsNullOrEmpty(s_id_item)) { i_ID_Item = 2019022500000; } else { i_ID_Item = Convert.ToInt64(s_id_item) + 1; } for (int i = 0; i < dt.Rows.Count; i++) { if (dt.Rows[i]["条码账存卷数"].ToString() == "0") { continue; } string NC_CK_ID = dalTpbLineWh.GetList_id(dt.Rows[i]["仓库"].ToString()).ToString(); string strDH = dal.Get_PDDH(dTime.ToString(), dt.Rows[i]["仓库"].ToString()); if (string.IsNullOrEmpty(strDH)) { strDH = dal.Get_Max_PDDH(dTime.ToString()); if (string.IsNullOrEmpty(strDH)) { strDH = "PD" + dTime.ToString("yyyyMMdd") + "0001"; } else { strDH = "PD" + (Convert.ToUInt64(strDH) + 1).ToString(); } i_ID_Main++; Mod_TRC_ROLL_PDD modPdd = new Mod_TRC_ROLL_PDD(); modPdd.C_ID = i_ID_Main.ToString(); modPdd.C_CK = dt.Rows[i]["仓库"].ToString(); modPdd.D_PDRQ = dTime; modPdd.C_YSDH = strDH; modPdd.D_INSERT = dTime; if (!dal.Add_Trans(modPdd)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("往CAP盘点主表插入失败!"); } string strSql = "insert into ReZJB_PDD(ZJBstatus,CAPPK,ck,pdrq,ysdh,insertts,beizhu)values('0','" + i_ID_Main.ToString() + "','" + NC_CK_ID + "','" + dTime + "','" + strDH + "','" + dTime + "','') "; if (!dal.Add_RF_Trans(strSql)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("往RF盘点主表插入失败!"); } } i_ID_Item++; Mod_TRC_ROLL_PDD_ITEM modItem = new Mod_TRC_ROLL_PDD_ITEM(); modItem.C_YSDH = strDH; modItem.C_MATCODE = dt.Rows[i]["物料号"].ToString(); modItem.C_PCH = dt.Rows[i]["批次号"].ToString(); modItem.C_SX = dt.Rows[i]["质量等级"].ToString(); //modItem.C_ZCSL = dt.Rows[i]["仓库"].ToString(); //modItem.C_FZCZL = dt.Rows[i]["仓库"].ToString(); //modItem.C_FREE0 = ""; modItem.C_FREE1 = dt.Rows[i]["自由项1"].ToString(); modItem.C_FREE2 = dt.Rows[i]["自由项2"].ToString(); modItem.C_FREE3 = dt.Rows[i]["自由项3"].ToString(); //modItem.C_FREE4 = ""; modItem.C_ID = i_ID_Item.ToString(); modItem.D_INSERT = dTime; //modItem.C_REMARK = ""; modItem.C_CK = dt.Rows[i]["仓库"].ToString(); modItem.C_MATDESC = dt.Rows[i]["物料名称"].ToString(); modItem.C_SPEC = dt.Rows[i]["规格"].ToString(); modItem.C_STL_GRD = dt.Rows[i]["钢种"].ToString(); modItem.C_NC_SL = Convert.ToDecimal(dt.Rows[i]["NC账存卷数"].ToString()); modItem.C_NC_ZL = Convert.ToDecimal(dt.Rows[i]["NC账存数量"].ToString()); modItem.C_CAP_SL = Convert.ToDecimal(dt.Rows[i]["CAP账存卷数"].ToString()); modItem.C_CAP_ZL = Convert.ToDecimal(dt.Rows[i]["CAP账存数量"].ToString()); modItem.C_RF_SL = Convert.ToDecimal(dt.Rows[i]["条码账存卷数"].ToString()); modItem.C_RF_ZL = Convert.ToDecimal(dt.Rows[i]["条码账存数量"].ToString()); //modItem.C_RF_SJ_SL = dt.Rows[i]["仓库"].ToString(); //modItem.C_RF_SJ_ZL = dt.Rows[i]["仓库"].ToString(); modItem.C_NC_CAP_SL = Convert.ToDecimal(dt.Rows[i]["NC与CAP卷数账差"].ToString()); modItem.C_NC_CAP_ZL = Convert.ToDecimal(dt.Rows[i]["NC与CAP数量账差"].ToString()); modItem.C_RF_CAP_SL = Convert.ToDecimal(dt.Rows[i]["条码与CAP卷数账差"].ToString()); modItem.C_RF_CAP_ZL = Convert.ToDecimal(dt.Rows[i]["条码与CAP数量账差"].ToString()); //modItem.C_CAP_SJ_SL = Convert.ToDecimal(dt.Rows[i]["CAP与实盘卷数差异"].ToString()); //modItem.C_CAP_SJ_ZL = Convert.ToDecimal(dt.Rows[i]["CAP与实盘数量差异"].ToString()); if (!dalRollPddItem.Add_Trans(modItem)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("往CAP盘点明细表插入失败!"); } string strSql_Item = "insert into ReZJB_PDD_Item(ysdh,BARCODE,PCH,SX,ZCSL,FZCZL,vfree0,vfree1,vfree2,vfree3,vfree4,ZJBstatus,CAPPK,insertts)values('" + strDH + "','" + dt.Rows[i]["物料号"].ToString() + "','" + dt.Rows[i]["批次号"].ToString() + "','" + dt.Rows[i]["质量等级"].ToString() + "','" + dt.Rows[i]["条码账存卷数"].ToString() + "','" + dt.Rows[i]["条码账存数量"].ToString() + "','','" + dt.Rows[i]["自由项1"].ToString() + "','" + dt.Rows[i]["自由项2"].ToString() + "','" + dt.Rows[i]["自由项3"].ToString() + "','','0','" + i_ID_Item.ToString() + "','" + dTime + "' ) "; if (!dal.Add_RF_Trans(strSql_Item)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("往RF盘点主表插入失败!"); } } TransactionHelper.Commit(); TransactionHelper_SQL.Commit(); } catch (Exception ex) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(ex.Message); } return(result); }
/// <summary> /// 同步条码盘点结果信息 /// </summary> /// <returns></returns> public string TB_RF_PD_Result() { string result = "1"; try { TransactionHelper.BeginTransaction(); TransactionHelper_SQL.BeginTransaction(); string userID = RV.UI.UserInfo.UserID; DateTime dTime = RV.UI.ServerTime.timeNow(); Dal_TRC_ROLL_PDD_ITEM dalRollPddItem = new Dal_TRC_ROLL_PDD_ITEM(); DataTable dtMain = dal.Get_PD_List().Tables[0]; if (dtMain.Rows.Count > 0) { for (int i = 0; i < dtMain.Rows.Count; i++) { DataTable dtItem = dal.Get_PD_ITEM_List(dtMain.Rows[i]["ysdh"].ToString()).Tables[0]; for (int mm = 0; mm < dtItem.Rows.Count; mm++) { Mod_TRC_ROLL_PDD_ITEM model_Item = dalRollPddItem.GetModel(dtItem.Rows[mm]["YSDH"].ToString(), dtItem.Rows[mm]["BARCODE"].ToString(), dtItem.Rows[mm]["PCH"].ToString(), dtItem.Rows[mm]["SX"].ToString(), dtItem.Rows[mm]["vfree1"].ToString(), dtItem.Rows[mm]["vfree2"].ToString(), dtItem.Rows[mm]["vfree3"].ToString()); if (model_Item != null) { model_Item.C_RF_SJ_SL = Convert.ToDecimal(dtItem.Rows[mm]["SPSL"].ToString()); model_Item.C_RF_SJ_ZL = Convert.ToDecimal(dtItem.Rows[mm]["SPZL"].ToString()); model_Item.C_CAP_SJ_SL = model_Item.C_CAP_SL - model_Item.C_RF_SJ_SL; model_Item.C_CAP_SJ_ZL = model_Item.C_CAP_ZL - model_Item.C_RF_SJ_ZL; if (!dalRollPddItem.Update_Trans(model_Item)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("更新实盘重量失败!"); } } } string strSql = "update SeZJB_PDD_FINISHED set ZJBstatus=1 where ysdh='" + dtMain.Rows[i]["ysdh"].ToString() + "' "; if (!dal.Update_RF_Trans(strSql)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("更新条码盘点表状态失败!"); } } } else { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("没有需要同步的盘点信息!"); } TransactionHelper.Commit(); TransactionHelper_SQL.Commit(); } catch (Exception ex) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(ex.Message); } return(result); }
/// <summary> /// 修料 /// </summary> /// <param name="strs">线材实绩主键</param> /// <param name="Type">修料状态</param> /// <param name="PCINFO">特殊信息</param> /// <returns></returns> public int TransaTSXX(string strs, string Type, string PCINFO, string rollID, string strSFHG) { try { Dal_TRC_ROLL_PRODCUT dalTrcRollProduct = new Dal_TRC_ROLL_PRODCUT(); Dal_TQC_UPDATE_MATERIAL dal_Update = new Dal_TQC_UPDATE_MATERIAL(); Dal_TQC_UPDATE_MATERIAL_LOG dal_update_log = new Dal_TQC_UPDATE_MATERIAL_LOG(); Dal_TQC_UPD_MATERIAL_MAIN dalUpdMain = new Dal_TQC_UPD_MATERIAL_MAIN(); Dal_Interface_FR dalInterface_FR = new Dal_Interface_FR(); Dal_TQC_SPECIFIC_CONTENT_LOG dalLog = new Dal_TQC_SPECIFIC_CONTENT_LOG(); TransactionHelper.BeginTransaction(); TransactionHelper_SQL.BeginTransaction(); string strUserID = RV.UI.UserInfo.UserID; DateTime dTime = RV.UI.ServerTime.timeNow(); string[] strs_Product_ID = strs.Substring(0, strs.Length - 1).Split(','); string[] strs_ID = null; if (rollID != "") { strs_ID = rollID.Substring(0, rollID.Length - 1).Split(','); } if (strs_Product_ID.Length == 0) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } for (int i = 0; i < strs_Product_ID.Length; i++) { Mod_TRC_ROLL_PRODCUT modProduct = dalTrcRollProduct.GetModel(strs_Product_ID[i]); Mod_TQC_UPDATE_MATERIAL_LOG mod_log = new Mod_TQC_UPDATE_MATERIAL_LOG(); decimal? wgt = modProduct.N_WGT; DataTable dt = dalInterface_FR.Get_TM_XL_List(modProduct.C_BATCH_NO, modProduct.C_TICK_NO).Tables[0]; if (dt == null) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } if (rollID == "") { Mod_TQC_UPDATE_MATERIAL mod = new Mod_TQC_UPDATE_MATERIAL(); mod.C_ROLL_PRODUCT_ID = modProduct.C_ID; mod.C_TYPE = Type; mod.C_EMP_ID = strUserID; mod.C_SFHG = strSFHG; mod_log.C_TYPE = mod.C_TYPE; dalUpdMain.Update_BATCH_NO(modProduct.C_BATCH_NO); if (!dal_Update.Add_Trans(mod)) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } } else { Mod_TQC_UPDATE_MATERIAL mod = dal_Update.GetModel(strs_ID[i]); if (Type == "2") { if (mod.C_TYPE == "3") { mod.C_TYPE = "6"; PCINFO = "0"; Mod_TQC_UPDATE_MATERIAL_LOG mod_logs = new Mod_TQC_UPDATE_MATERIAL_LOG(); mod_logs.C_TYPE = "2"; mod_logs.N_WGT = wgt; mod_logs.N_WGT_DIFFERENCE = wgt - Convert.ToDecimal(dt.Rows[0]["ZL"]); mod_logs.C_SFHG = mod.C_SFHG; mod_logs.C_ROLL_PRODUCT_ID = modProduct.C_ID; mod_logs.C_EMP_ID = strUserID; if (!dal_update_log.Add_Trans(mod_logs)) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } } else { mod.C_TYPE = Type; } } if (Type == "3") { if (mod.C_TYPE == "2") { mod.C_TYPE = "6"; PCINFO = "0"; Mod_TQC_UPDATE_MATERIAL_LOG mod_logs = new Mod_TQC_UPDATE_MATERIAL_LOG(); mod_logs.C_TYPE = "3"; mod_logs.N_WGT = wgt; mod_logs.N_WGT_DIFFERENCE = wgt - Convert.ToDecimal(dt.Rows[0]["ZL"]); mod_logs.C_SFHG = mod.C_SFHG; mod_logs.C_ROLL_PRODUCT_ID = modProduct.C_ID; mod_logs.C_EMP_ID = strUserID; if (!dal_update_log.Add_Trans(mod_logs)) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } } else { mod.C_TYPE = Type; } } mod.C_EMP_ID = strUserID; mod.D_MOD_DT = dTime; mod.N_WGT = wgt; mod.C_SFHG = strSFHG; mod.N_WGT_DIFFERENCE = wgt - Convert.ToDecimal(dt.Rows[0]["ZL"]); mod_log.C_TYPE = mod.C_TYPE; mod_log.N_WGT = wgt; mod_log.N_WGT_DIFFERENCE = wgt - Convert.ToDecimal(dt.Rows[0]["ZL"]); mod_log.C_SFHG = mod.C_SFHG; modProduct.N_WGT = Convert.ToDecimal(dt.Rows[0]["ZL"]); if (!dal_Update.Update_Trans(mod)) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } } if (PCINFO == "0") { if (modProduct.C_PCINFO.Contains("待修料;")) { modProduct.C_PCINFO = modProduct.C_PCINFO.Replace("待修料;", ""); } } else { if (modProduct.C_PCINFO == "") { modProduct.C_PCINFO = PCINFO + ";"; } else if (modProduct.C_PCINFO.Contains("待修料")) { modProduct.C_PCINFO = modProduct.C_PCINFO; } else { modProduct.C_PCINFO = modProduct.C_PCINFO + PCINFO + ";"; } } modProduct.C_EMP_ID = strUserID; modProduct.C_PLANT_DESC = dTime.ToString(); if (!dalTrcRollProduct.Update_Trans_XL(modProduct)) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } mod_log.C_ROLL_PRODUCT_ID = modProduct.C_ID; mod_log.C_EMP_ID = strUserID; if (!dal_update_log.Add_Trans(mod_log)) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } string strDJ = ""; if (string.IsNullOrEmpty(modProduct.C_JUDGE_LEV_ZH)) { strDJ = "DP"; } else { strDJ = modProduct.C_JUDGE_LEV_ZH; } string sql = ""; sql += "insert into ReZJB_GPD(Barcode,WGDH,CK,HW,PCH,WLH,WLMC,SX,PH,GG,BB,GH,ZL,BZ,RQ,RKType,RKRY,WeightRQ,ProduceData,PCInfo,vfree0,vfree3,GPTYPE,ZJBstatus,CAPPK,vfree1,vfree2,insertts) values('" + modProduct.C_BARCODE + "','" + modProduct.C_TRC_ROLL_MAIN_ID + "','" + modProduct.C_LINEWH_CODE + "','" + modProduct.C_LINEWH_LOC_CODE + "','" + modProduct.C_BATCH_NO + "','" + modProduct.C_MAT_CODE + "','" + modProduct.C_MAT_DESC + "','" + strDJ + "','" + modProduct.C_STL_GRD + "','" + modProduct.C_SPEC + "mm','" + modProduct.C_GROUP + "','" + modProduct.C_TICK_NO + "','" + modProduct.N_WGT + "','" + modProduct.C_STD_CODE + "','" + modProduct.D_RKRQ + "','" + modProduct.C_MOVE_DESC + "','" + modProduct.C_RKRY + "','" + modProduct.D_WEIGHT_DT + "','" + modProduct.D_PRODUCE_DATE + "','" + modProduct.C_PCINFO + "','" + modProduct.C_STOVE + "','" + modProduct.C_BZYQ + "','','0','" + modProduct.C_ID + "','" + modProduct.C_ZYX1 + "','" + modProduct.C_ZYX2 + "','" + RV.UI.ServerTime.timeNow() + "')"; if (TransactionHelper_SQL.ExecuteSql(sql) == 0) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } else { if (rollID != "") { Mod_TQC_UPDATE_MATERIAL mod = dal_Update.GetModel(strs_ID[i]); if (Type == "2") { if (mod.C_TYPE == "3") { Mod_TQC_SPECIFIC_CONTENT_LOG modLog = new Mod_TQC_SPECIFIC_CONTENT_LOG(); modLog.C_BATCH_NO = modProduct.C_BATCH_NO; modLog.C_CONTENT = "取消待修料"; modLog.C_TICK_NO = modProduct.C_TICK_NO; modLog.C_EMP_ID = strUserID; if (!dalLog.Add_Trans(modLog)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(0); } } } if (Type == "3") { if (mod.C_TYPE == "2") { Mod_TQC_SPECIFIC_CONTENT_LOG modLog = new Mod_TQC_SPECIFIC_CONTENT_LOG(); modLog.C_BATCH_NO = modProduct.C_BATCH_NO; modLog.C_CONTENT = "取消待修料"; modLog.C_TICK_NO = modProduct.C_TICK_NO; modLog.C_EMP_ID = strUserID; if (!dalLog.Add_Trans(modLog)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(0); } } } } } } TransactionHelper_SQL.Commit(); TransactionHelper.Commit(); return(1); } catch (Exception ex) { TransactionHelper_SQL.RollBack(); TransactionHelper.RollBack(); return(0); } }
/// <summary> /// 改判 /// </summary> /// <param name="strs">已选择的数据ID数组</param> /// <param name="strGrd">钢种</param> /// <param name="strStdCode">执行标准</param> /// <param name="strMatCode">物料编码</param> /// <param name="strMatName">物料名称</param> /// <param name="strZrdwID">责任单位代码</param> /// <param name="strZrdwName">责任单位描述</param> /// <param name="strRemark">备注</param> /// <param name="strUrl">NC接口地址</param> /// <param name="strPDDJ">判定等级</param> /// <param name="strZYX1">自由项1</param> /// <param name="strZYX2">自由项2</param> /// <param name="strBZYQ">包装要求</param> /// <param name="strGPYY">改判原因</param> /// <returns></returns> public string Gp_Roll_WW(string strs, string strGrd, string strStdCode, string strMatCode, string strMatName, string strZrdwID, string strZrdwName, string strRemark, string strUrl, string strPDDJ, string strZYX1, string strZYX2, string strBZYQ, string strGPYY) { string result = "1"; try { Dal_TRC_ROLL_PRODCUT dalTrcRollProduct = new Dal_TRC_ROLL_PRODCUT(); Dal_Interface_NC_Roll_KC4N dalInterface = new Dal_Interface_NC_Roll_KC4N(); Dal_TB_STD_CONFIG dalTbStdConfig = new Dal_TB_STD_CONFIG(); Dal_TQD_DESIGN dalDesign = new Dal_TQD_DESIGN(); TransactionHelper.BeginTransaction(); TransactionHelper_SQL.BeginTransaction(); string strUserID = RV.UI.UserInfo.userID; DateTime time = RV.UI.ServerTime.timeNow(); string strBatch = ""; string C_MASTER_ID = ""; string C_GP_BEFORE_ID = ""; string C_GP_AFTER_ID = ""; string strDesignNo = dalDesign.Get_Design_No(strStdCode, strGrd); if (string.IsNullOrEmpty(strDesignNo)) { return("改判失败,没有找到对应的执行标准信息!"); } DataTable dt = dal.GetList_max().Tables[0]; if (string.IsNullOrEmpty(dt.Rows[0]["C_MASTER_ID"].ToString())) { C_MASTER_ID = "XJ" + time.ToString("yyMMdd00001"); } else { C_MASTER_ID = "XJ" + (Convert.ToInt64(dt.Rows[0]["C_MASTER_ID"].ToString()) + 1).ToString(); } if (string.IsNullOrEmpty(dt.Rows[0]["C_GP_BEFORE_ID"].ToString())) { C_GP_BEFORE_ID = "XQ" + time.ToString("yyMMdd00001"); } else { C_GP_BEFORE_ID = "XQ" + (Convert.ToInt64(dt.Rows[0]["C_GP_BEFORE_ID"].ToString()) + 1).ToString(); } if (string.IsNullOrEmpty(dt.Rows[0]["C_GP_AFTER_ID"].ToString())) { C_GP_AFTER_ID = "XH" + time.ToString("yyMMdd00001"); } else { C_GP_AFTER_ID = "XH" + (Convert.ToInt64(dt.Rows[0]["C_GP_AFTER_ID"].ToString()) + 1).ToString(); } string[] strs_Product_ID = strs.Substring(0, strs.Length - 1).Split(','); if (strs_Product_ID.Length == 0) { return("改判失败,请选择需要改判的数据!"); } for (int i = 0; i < strs_Product_ID.Length; i++) { Mod_TRC_ROLL_PRODCUT modProduct = dalTrcRollProduct.GetModel(strs_Product_ID[i]); strBatch = modProduct.C_BATCH_NO; if (modProduct != null) { Mod_TQC_ROLL_COMMUTE modTqcRollCommute = new Mod_TQC_ROLL_COMMUTE(); modTqcRollCommute.C_ROLL_ID = modProduct.C_ID; modTqcRollCommute.C_STA_ID = modProduct.C_PLANT_ID; //modTqcRollCommute.C_STA_DESC = modProduct.C_PLANT_DESC; modTqcRollCommute.C_STOVE = modProduct.C_STOVE; modTqcRollCommute.C_BATCH_NO = modProduct.C_BATCH_NO; modTqcRollCommute.C_TICK_NO = modProduct.C_TICK_NO; modTqcRollCommute.N_WGT = Convert.ToDecimal(modProduct.N_WGT); modTqcRollCommute.C_STL_GRD_BEFORE = modProduct.C_STL_GRD; modTqcRollCommute.C_STA_ID = modProduct.C_STA_ID; modTqcRollCommute.C_STD_CODE_BEFORE = modProduct.C_STD_CODE; modTqcRollCommute.C_SPEC_BEFORE = modProduct.C_SPEC; modTqcRollCommute.C_MAT_CODE_BEFORE = modProduct.C_MAT_CODE; modTqcRollCommute.C_MAT_DESC_BEFORE = modProduct.C_MAT_DESC; modTqcRollCommute.C_ZYX1_BEFORE = modProduct.C_ZYX1; modTqcRollCommute.C_ZYX2_BEFORE = modProduct.C_ZYX2; modTqcRollCommute.C_JUDGE_LEV_BP_BEFORE = modProduct.C_JUDGE_LEV_ZH; modTqcRollCommute.D_COMMUTE_DATE = time; modTqcRollCommute.C_STL_GRD_AFTER = strGrd; modTqcRollCommute.C_STD_CODE_AFTER = strStdCode; modTqcRollCommute.C_SPEC_AFTER = modProduct.C_SPEC; modTqcRollCommute.C_MAT_CODE_AFTER = strMatCode; modTqcRollCommute.C_MAT_DESC_AFTER = strMatName; modTqcRollCommute.C_REASON_DEPMT_ID = strZrdwID; modTqcRollCommute.C_REASON_DEPMT_DESC = strZrdwName; modTqcRollCommute.C_ZYX1_AFTER = strZYX1; modTqcRollCommute.C_ZYX2_AFTER = strZYX2; modTqcRollCommute.C_EMP_ID = strUserID; modTqcRollCommute.C_REMARK = strRemark; modTqcRollCommute.C_MASTER_ID = C_MASTER_ID; modTqcRollCommute.C_GP_BEFORE_ID = C_GP_BEFORE_ID; modTqcRollCommute.C_GP_AFTER_ID = C_GP_AFTER_ID; modTqcRollCommute.C_JUDGE_LEV_BP_AFTER = strPDDJ; modTqcRollCommute.C_BZYQ_AFTER = strBZYQ; modTqcRollCommute.C_BZYQ_BEFORE = modProduct.C_BZYQ; modTqcRollCommute.C_COMMUTE_REASON = strGPYY; if (dal.Add_Trans(modTqcRollCommute)) { modProduct.C_STD_CODE = strStdCode; modProduct.C_STL_GRD = strGrd; modProduct.C_MAT_DESC = strMatName; modProduct.C_MAT_CODE = strMatCode; modProduct.C_MASTER_ID = C_MASTER_ID; modProduct.C_JUDGE_LEV_ZH = strPDDJ; modProduct.C_GP_BEFORE_ID = C_GP_BEFORE_ID; modProduct.C_GP_AFTER_ID = C_GP_AFTER_ID; modProduct.C_ZYX1 = strZYX1; modProduct.C_ZYX2 = strZYX2; modProduct.C_BZYQ = strBZYQ; modProduct.C_JUDGE_LEV_ZH = strPDDJ; modProduct.C_IS_PD = "N"; modProduct.C_IS_QR = "Y"; modProduct.C_QR_USER = strUserID; modProduct.D_QR_DATE = time; modProduct.C_DESIGN_NO = strDesignNo; modProduct.C_QGP_STATE = "Y"; modProduct.C_COMMUTE_REASON = strGPYY; if (!dalTrcRollProduct.Update_Trans(modProduct)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("改判失败,请检查改判的信息!"); } } else { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("改判失败,添加改判记录失败!"); } } } //综合判定需要 if (!dalTrcRollProduct.Update_Batch_No(strBatch)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("改判失败,请检查批号!"); } string result_NC = dalInterface.SendXml_GP(strUrl, C_MASTER_ID, C_GP_BEFORE_ID, C_GP_AFTER_ID); if (result_NC != "1") { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(result_NC); } TransactionHelper_SQL.Commit(); TransactionHelper.Commit(); } catch (Exception ex) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(ex.Message); } return(result); }
/// <summary> /// 改判 /// </summary> /// <param name="strs">已选择的数据ID数组</param> /// <param name="strGrd">钢种</param> /// <param name="strStdCode">执行标准</param> /// <param name="strMatCode">物料编码</param> /// <param name="strMatName">物料名称</param> /// <param name="strZrdwID">责任单位代码</param> /// <param name="strZrdwName">责任单位描述</param> /// <param name="strRemark">备注</param> /// <param name="strUrl">NC接口地址</param> /// <param name="strPDDJ">判定等级</param> /// <param name="strZYX1">自由项1</param> /// <param name="strZYX2">自由项2</param> /// <param name="strBZYQ">包装要求</param> /// <param name="strGPYY">改判原因</param> /// <returns></returns> public string Gp_Roll(string strs, string strGrd, string strStdCode, string strMatCode, string strMatName, string strZrdwID, string strZrdwName, string strRemark, string strUrl, string strPDDJ, string strZYX1, string strZYX2, string strBZYQ, string strGPYY) { string result = "1"; try { Dal_TRC_ROLL_PRODCUT dalTrcRollProduct = new Dal_TRC_ROLL_PRODCUT(); Dal_Interface_NC_Roll_KC4N dalInterface = new Dal_Interface_NC_Roll_KC4N(); Dal_TB_STD_CONFIG dalTbStdConfig = new Dal_TB_STD_CONFIG(); Dal_TQD_DESIGN dalDesign = new Dal_TQD_DESIGN(); TransactionHelper.BeginTransaction(); TransactionHelper_SQL.BeginTransaction(); string strUserID = RV.UI.UserInfo.userID; DateTime time = RV.UI.ServerTime.timeNow(); string strBatch = ""; string C_MASTER_ID = ""; string C_GP_BEFORE_ID = ""; string C_GP_AFTER_ID = ""; string strDesignNo = dalDesign.Get_Design_No(strStdCode, strGrd); if (string.IsNullOrEmpty(strDesignNo)) { return("改判失败,没有找到对应的执行标准信息!"); } DataTable dt = dal.GetList_max().Tables[0]; if (string.IsNullOrEmpty(dt.Rows[0]["C_MASTER_ID"].ToString())) { C_MASTER_ID = "XJ" + time.ToString("yyMMdd00001"); } else { C_MASTER_ID = "XJ" + (Convert.ToInt64(dt.Rows[0]["C_MASTER_ID"].ToString()) + 1).ToString(); } if (string.IsNullOrEmpty(dt.Rows[0]["C_GP_BEFORE_ID"].ToString())) { C_GP_BEFORE_ID = "XQ" + time.ToString("yyMMdd00001"); } else { C_GP_BEFORE_ID = "XQ" + (Convert.ToInt64(dt.Rows[0]["C_GP_BEFORE_ID"].ToString()) + 1).ToString(); } if (string.IsNullOrEmpty(dt.Rows[0]["C_GP_AFTER_ID"].ToString())) { C_GP_AFTER_ID = "XH" + time.ToString("yyMMdd00001"); } else { C_GP_AFTER_ID = "XH" + (Convert.ToInt64(dt.Rows[0]["C_GP_AFTER_ID"].ToString()) + 1).ToString(); } string[] strs_Product_ID = strs.Substring(0, strs.Length - 1).Split(','); if (strs_Product_ID.Length == 0) { return("改判失败,请选择需要改判的数据!"); } for (int i = 0; i < strs_Product_ID.Length; i++) { Mod_TRC_ROLL_PRODCUT modProduct = dalTrcRollProduct.GetModel(strs_Product_ID[i]); strBatch = modProduct.C_BATCH_NO; string sql = ""; sql += "insert into ReZJB_GPD(Barcode,WGDH,CK,HW,PCH,WLH,WLMC,SX,PH,GG,BB,GH,ZL,BZ,RQ,RKType,RKRY,WeightRQ,ProduceData,PCInfo,vfree0,vfree3,GPTYPE,ZJBstatus,CAPPK,vfree1,vfree2,insertts) values('" + modProduct.C_BARCODE + "','" + modProduct.C_TRC_ROLL_MAIN_ID + "','" + modProduct.C_LINEWH_CODE + "','" + modProduct.C_LINEWH_LOC_CODE + "','" + modProduct.C_BATCH_NO + "','" + strMatCode + "','" + strMatName + "','" + strPDDJ + "','" + strGrd + "','" + modProduct.C_SPEC + "mm','" + modProduct.C_GROUP + "','" + modProduct.C_TICK_NO + "','" + modProduct.N_WGT + "','" + strStdCode + "','" + modProduct.D_RKRQ + "','" + modProduct.C_MOVE_DESC + "','" + modProduct.C_RKRY + "','" + modProduct.D_WEIGHT_DT + "','" + modProduct.D_PRODUCE_DATE + "','" + modProduct.C_PCINFO + "','" + modProduct.C_STOVE + "','" + strBZYQ + "','','0','" + modProduct.C_ID + "','" + strZYX1 + "','" + strZYX2 + "','" + time + "')"; if (TransactionHelper_SQL.ExecuteSql(sql) == 0) { TransactionHelper_SQL.RollBack(); return("改判失败,信息传到条码时出错!"); } if (modProduct != null) { Mod_TQC_ROLL_COMMUTE modTqcRollCommute = new Mod_TQC_ROLL_COMMUTE(); modTqcRollCommute.C_ROLL_ID = modProduct.C_ID; modTqcRollCommute.C_STA_ID = modProduct.C_PLANT_ID; //modTqcRollCommute.C_STA_DESC = modProduct.C_PLANT_DESC; modTqcRollCommute.C_STOVE = modProduct.C_STOVE; modTqcRollCommute.C_BATCH_NO = modProduct.C_BATCH_NO; modTqcRollCommute.C_TICK_NO = modProduct.C_TICK_NO; modTqcRollCommute.N_WGT = Convert.ToDecimal(modProduct.N_WGT); modTqcRollCommute.C_STL_GRD_BEFORE = modProduct.C_STL_GRD; modTqcRollCommute.C_STA_ID = modProduct.C_STA_ID; modTqcRollCommute.C_STD_CODE_BEFORE = modProduct.C_STD_CODE; modTqcRollCommute.C_SPEC_BEFORE = modProduct.C_SPEC; modTqcRollCommute.C_MAT_CODE_BEFORE = modProduct.C_MAT_CODE; modTqcRollCommute.C_MAT_DESC_BEFORE = modProduct.C_MAT_DESC; modTqcRollCommute.C_ZYX1_BEFORE = modProduct.C_ZYX1; modTqcRollCommute.C_ZYX2_BEFORE = modProduct.C_ZYX2; modTqcRollCommute.C_JUDGE_LEV_BP_BEFORE = modProduct.C_JUDGE_LEV_ZH; modTqcRollCommute.D_COMMUTE_DATE = time; modTqcRollCommute.C_STL_GRD_AFTER = strGrd; modTqcRollCommute.C_STD_CODE_AFTER = strStdCode; modTqcRollCommute.C_SPEC_AFTER = modProduct.C_SPEC; modTqcRollCommute.C_MAT_CODE_AFTER = strMatCode; modTqcRollCommute.C_MAT_DESC_AFTER = strMatName; modTqcRollCommute.C_REASON_DEPMT_ID = strZrdwID; modTqcRollCommute.C_REASON_DEPMT_DESC = strZrdwName; modTqcRollCommute.C_ZYX1_AFTER = strZYX1; modTqcRollCommute.C_ZYX2_AFTER = strZYX2; modTqcRollCommute.C_EMP_ID = strUserID; modTqcRollCommute.C_REMARK = strRemark; modTqcRollCommute.C_MASTER_ID = C_MASTER_ID; modTqcRollCommute.C_GP_BEFORE_ID = C_GP_BEFORE_ID; modTqcRollCommute.C_GP_AFTER_ID = C_GP_AFTER_ID; modTqcRollCommute.C_JUDGE_LEV_BP_AFTER = strPDDJ; modTqcRollCommute.C_BZYQ_AFTER = strBZYQ; modTqcRollCommute.C_BZYQ_BEFORE = modProduct.C_BZYQ; modTqcRollCommute.C_COMMUTE_REASON = strGPYY; if (dal.Add_Trans(modTqcRollCommute)) { modProduct.C_STD_CODE = strStdCode; modProduct.C_STL_GRD = strGrd; modProduct.C_MAT_DESC = strMatName; modProduct.C_MAT_CODE = strMatCode; modProduct.C_MASTER_ID = C_MASTER_ID; modProduct.C_JUDGE_LEV_ZH = strPDDJ; modProduct.C_GP_BEFORE_ID = C_GP_BEFORE_ID; modProduct.C_GP_AFTER_ID = C_GP_AFTER_ID; modProduct.C_ZYX1 = strZYX1; modProduct.C_ZYX2 = strZYX2; modProduct.C_BZYQ = strBZYQ; modProduct.C_JUDGE_LEV_ZH = strPDDJ; modProduct.C_IS_PD = "N"; modProduct.C_IS_QR = "Y"; modProduct.C_QR_USER = strUserID; modProduct.D_QR_DATE = time; modProduct.C_DESIGN_NO = strDesignNo; modProduct.C_QGP_STATE = "Y"; modProduct.C_COMMUTE_REASON = strGPYY; if (!dalTrcRollProduct.Update_Trans(modProduct)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("改判失败,请检查改判的信息!"); } } else { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("改判失败,添加改判记录失败!"); } } } //综合判定需要 if (!dalTrcRollProduct.Update_Batch_No(strBatch)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("改判失败,请检查批号!"); } string result_NC = dalInterface.SendXml_GP(strUrl, C_MASTER_ID, C_GP_BEFORE_ID, C_GP_AFTER_ID); if (result_NC != "1") { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(result_NC); } TransactionHelper_SQL.Commit(); TransactionHelper.Commit(); } catch (Exception ex) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(ex.Message); } return(result); }
/// <summary> /// 保存特殊信息 /// </summary> /// <param name="dr">需要添加特殊信息的批号信息</param> /// <param name="strTSXX">特殊信息</param> /// <returns></returns> public string Cancle_TSXX(DataRow dr) { string result = "1"; try { TransactionHelper.BeginTransaction(); string userID = RV.UI.UserInfo.UserID; DateTime dTime = RV.UI.ServerTime.timeNow(); Dal_TRC_ROLL_PRODCUT dalTrcRollProduct = new Dal_TRC_ROLL_PRODCUT(); Mod_TQC_COMPRE_ROLL model = dal.GetModel(dr["C_ID"].ToString()); if (model != null) { model.C_PCINFO = ""; if (!dal.Update_Trans(model)) { TransactionHelper.RollBack(); return("保存特殊信息失败!"); } DataTable dt_Details = dalTrcRollProduct.Get_Details(dr["批号"].ToString(), dr["执行标准"].ToString(), dr["物料编码"].ToString(), dr["钢种"].ToString(), dr["炉号"].ToString(), dr["表判结果"].ToString(), dr["不合格原因"].ToString()).Tables[0]; if (dt_Details.Rows.Count > 0) { string sql = ""; for (int kk = 0; kk < dt_Details.Rows.Count; kk++) { Mod_TRC_ROLL_PRODCUT modProduct = dalTrcRollProduct.GetModel(dt_Details.Rows[kk]["C_ID"].ToString()); if (modProduct != null) { modProduct.C_PCINFO = modProduct.C_PCINFO.Replace("厂外时效", ""); string strDJ = ""; if (string.IsNullOrEmpty(modProduct.C_JUDGE_LEV_ZH)) { strDJ = "DP"; } else { strDJ = modProduct.C_JUDGE_LEV_ZH; } sql = "insert into ReZJB_GPD(Barcode,WGDH,CK,HW,PCH,WLH,WLMC,SX,PH,GG,BB,GH,ZL,BZ,RQ,RKType,RKRY,WeightRQ,ProduceData,PCInfo,vfree0,vfree3,GPTYPE,ZJBstatus,CAPPK,insertts,vfree1,vfree2) values('" + modProduct.C_BARCODE + "','" + modProduct.C_TRC_ROLL_MAIN_ID + "','" + modProduct.C_LINEWH_CODE + "','" + modProduct.C_LINEWH_LOC_CODE + "','" + modProduct.C_BATCH_NO + "','" + modProduct.C_MAT_CODE + "','" + modProduct.C_MAT_DESC + "','" + strDJ + "','" + modProduct.C_STL_GRD + "','" + modProduct.C_SPEC + "mm','" + modProduct.C_GROUP + "','" + modProduct.C_TICK_NO + "','" + modProduct.N_WGT + "','" + modProduct.C_STD_CODE + "','" + modProduct.D_RKRQ + "','" + modProduct.C_MOVE_DESC + "','" + modProduct.C_RKRY + "','" + modProduct.D_WEIGHT_DT + "','" + modProduct.D_PRODUCE_DATE + "','" + modProduct.C_PCINFO + "','" + modProduct.C_STOVE + "','" + modProduct.C_BZYQ + "','','0','" + modProduct.C_ID + "','" + dTime + "','" + modProduct.C_ZYX1.ToString() + "','" + modProduct.C_ZYX2.ToString() + "')"; if (TransactionHelper_SQL.ExecuteSql(sql) == 0) { TransactionHelper.RollBack(); return("特殊信息传到条码时出错!"); } modProduct.C_EMP_ID = userID; modProduct.C_PLANT_DESC = dTime.ToString(); if (!dalTrcRollProduct.Update_Trans_XL(modProduct)) { TransactionHelper.RollBack(); return("保存特殊信息出错!"); } } else { TransactionHelper.RollBack(); return("没有找到线材信息!"); } } } else { TransactionHelper.RollBack(); return("特殊信息传到条码时出错!"); } } TransactionHelper.Commit(); } catch (Exception ex) { TransactionHelper.RollBack(); return("0"); } return(result); }
/// <summary> /// 线材综合判定确认 /// </summary> /// <param name="strBatchNo">批号</param> /// <param name="strUrl">xml地址</param> /// <returns></returns> public string Roll_Compre_OK(string strBatchNo, string strUrl) { string result = "1"; try { Dal_TRC_ROLL_PRODCUT dalTrcRollProduct = new Dal_TRC_ROLL_PRODCUT(); Dal_TRC_ROLL_WGD dalTrcRollWgd = new Dal_TRC_ROLL_WGD(); Dal_TQC_ROLL_COMMUTE DalTqcRollCommute = new Dal_TQC_ROLL_COMMUTE(); Dal_Interface_NC_Roll_KC4N_ZP dal_interface = new Dal_Interface_NC_Roll_KC4N_ZP(); Dal_Interface_NC_Roll_KC4N_ZP_No_WGD dal_interface_No_Wgd = new Dal_Interface_NC_Roll_KC4N_ZP_No_WGD(); Dal_TQR_ZBS_ITEM dalTqrZbsItem = new Dal_TQR_ZBS_ITEM(); Dal_TQC_COMPRE_ITEM_RESULT dalTqcCompreItemResult = new Dal_TQC_COMPRE_ITEM_RESULT(); Dal_TQC_PHYSICS_RESULT_MAIN dalTqcPhysicsResultMain = new Dal_TQC_PHYSICS_RESULT_MAIN(); TransactionHelper.BeginTransaction(); TransactionHelper_SQL.BeginTransaction(); string strUserID = RV.UI.UserInfo.userID; DateTime time = RV.UI.ServerTime.timeNow(); string C_MASTER_ID = ""; string C_GP_BEFORE_ID = ""; string C_GP_AFTER_ID = ""; DataTable dt_CompreRoll = dal.Get_List(strBatchNo).Tables[0]; if (dt_CompreRoll.Rows.Count > 0) { int num = 0; for (int i = 0; i < dt_CompreRoll.Rows.Count; i++) { num++; Mod_TQC_COMPRE_ROLL modTqcCompreRoll = dal.GetModel(dt_CompreRoll.Rows[i]["C_ID"].ToString()); if (!string.IsNullOrEmpty(modTqcCompreRoll.C_RESULT_PEOPLE) || !string.IsNullOrEmpty(modTqcCompreRoll.C_RESULT_ALL)) { //判定结果回写实绩表 string strResult = ""; if (!string.IsNullOrEmpty(modTqcCompreRoll.C_RESULT_PEOPLE)) { strResult = modTqcCompreRoll.C_RESULT_PEOPLE; } else { strResult = modTqcCompreRoll.C_RESULT_ALL; } if (strResult == "N") { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("综判等级为N,请选择人工判定等级!"); } modTqcCompreRoll.C_QR_STATE = "Y"; modTqcCompreRoll.C_EMP_ID = strUserID; modTqcCompreRoll.D_MOD_DT = time; if (!dal.Update_Trans(modTqcCompreRoll)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("操作失败!"); } DataTable dt = DalTqcRollCommute.GetList_max_Trans().Tables[0]; if (string.IsNullOrEmpty(dt.Rows[0]["C_GP_AFTER_ID"].ToString())) { C_GP_AFTER_ID = "ph" + time.ToString("yyMMdd00001"); } else { C_GP_AFTER_ID = "ph" + (Convert.ToInt64(dt.Rows[0]["C_GP_AFTER_ID"].ToString()) + 1).ToString(); } if (!dalTrcRollProduct.Update_Trans(strResult, modTqcCompreRoll.C_EMP_ID, modTqcCompreRoll, C_GP_AFTER_ID)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("操作失败!"); } } else { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("请先选择人工判定等级!"); } } int num_main = dalTqcPhysicsResultMain.Get_Count(strBatchNo); if (num_main > 0) { if (!dalTqcPhysicsResultMain.Update_PD_Trans(strBatchNo)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("更新判定状态失败!"); } } if (num == dt_CompreRoll.Rows.Count) { #region 步重量 DataTable dtTM = dal.Get_TM_List(strBatchNo).Tables[0]; if (dtTM.Rows.Count > 0) { for (int i = 0; i < dtTM.Rows.Count; i++) { if (!dalTrcRollProduct.Update_Wgt_Trans(strBatchNo, dtTM.Rows[i]["GH"].ToString(), dtTM.Rows[i]["ZL"].ToString())) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("更新重量失败!"); } } } else { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("没有找到条码库存信息,判定失败!"); } #endregion Mod_TRC_ROLL_WGD mod_wgd = dalTrcRollWgd.Get_WGD_Modle(strBatchNo);//获取完工单信息 if (mod_wgd != null) { DataTable dt_Group = dalTrcRollProduct.Get_List_ByGroup(strBatchNo).Tables[0]; for (int i = 0; i < dt_Group.Rows.Count; i++) { #region 更新线材实绩表 DataTable dt = DalTqcRollCommute.GetList_max_MasterID_Trans().Tables[0]; if (string.IsNullOrEmpty(dt.Rows[0]["C_MASTER_ID"].ToString())) { C_MASTER_ID = "sj" + time.ToString("yyMMdd00001"); } else { C_MASTER_ID = "sj" + (Convert.ToInt64(dt.Rows[0]["C_MASTER_ID"].ToString()) + 1).ToString(); } if (string.IsNullOrEmpty(dt.Rows[0]["C_GP_BEFORE_ID"].ToString())) { C_GP_BEFORE_ID = "pq" + time.ToString("yyMMdd00001"); } else { C_GP_BEFORE_ID = "pq" + (Convert.ToInt64(dt.Rows[0]["C_GP_BEFORE_ID"].ToString()) + 1).ToString(); } if (!dalTrcRollProduct.Update_Trans(C_MASTER_ID, C_GP_BEFORE_ID, dt_Group.Rows[i]["C_STD_CODE"].ToString(), dt_Group.Rows[i]["C_MAT_CODE"].ToString(), dt_Group.Rows[i]["C_ZYX1"].ToString(), dt_Group.Rows[i]["C_ZYX2"].ToString(), strBatchNo)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("操作失败!"); } #endregion #region 条码 DataTable dt_Details = dalTrcRollProduct.Get_Details(strBatchNo, dt_Group.Rows[i]["C_STD_CODE"].ToString(), dt_Group.Rows[i]["C_MAT_CODE"].ToString(), dt_Group.Rows[i]["C_ZYX1"].ToString(), dt_Group.Rows[i]["C_ZYX2"].ToString()).Tables[0]; if (dt_Details.Rows.Count > 0) { string sql = ""; for (int kk = 0; kk < dt_Details.Rows.Count; kk++) { if (mod_wgd.C_MRSX.ToString() == "DP") { sql = "insert into ReZJB_GPD(Barcode,WGDH,CK,HW,PCH,WLH,WLMC,SX,PH,GG,BB,GH,ZL,BZ,RQ,RKType,RKRY,WeightRQ,ProduceData,PCInfo,vfree0,vfree3,GPTYPE,ZJBstatus,CAPPK,insertts,vfree1,vfree2) values('" + dt_Details.Rows[kk]["C_BARCODE"] + "','" + dt_Details.Rows[kk]["C_TRC_ROLL_MAIN_ID"] + "','" + dt_Details.Rows[kk]["C_LINEWH_CODE"] + "','" + dt_Details.Rows[kk]["C_LINEWH_LOC_CODE"] + "','" + dt_Details.Rows[kk]["C_BATCH_NO"] + "','" + dt_Details.Rows[kk]["C_MAT_CODE"] + "','" + dt_Details.Rows[kk]["C_MAT_DESC"] + "','" + dt_Details.Rows[kk]["C_JUDGE_LEV_ZH"] + "','" + dt_Details.Rows[kk]["C_STL_GRD"] + "','" + dt_Details.Rows[kk]["C_SPEC"] + "mm','" + dt_Details.Rows[kk]["C_GROUP"] + "','" + dt_Details.Rows[kk]["C_TICK_NO"] + "','" + dt_Details.Rows[kk]["N_WGT"] + "','" + dt_Details.Rows[kk]["C_STD_CODE"] + "','" + dt_Details.Rows[kk]["D_RKRQ"] + "','" + dt_Details.Rows[kk]["C_MOVE_DESC"] + "','" + dt_Details.Rows[kk]["C_RKRY"] + "','" + dt_Details.Rows[kk]["D_WEIGHT_DT"] + "','" + dt_Details.Rows[kk]["D_PRODUCE_DATE"] + "','" + dt_Details.Rows[kk]["C_PCINFO"] + "','" + dt_Details.Rows[kk]["C_STOVE"] + "','" + dt_Details.Rows[kk]["C_BZYQ"] + "','','0','" + dt_Details.Rows[kk]["C_ID"] + "','" + time + "','" + dt_Details.Rows[kk]["C_ZYX1"].ToString() + "','" + dt_Details.Rows[kk]["C_ZYX2"].ToString() + "')"; if (TransactionHelper_SQL.ExecuteSql(sql) == 0) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("信息传到条码时出错!"); } } else { if (dt_Details.Rows[kk]["C_JUDGE_LEV_BP"].ToString() != dt_Details.Rows[kk]["C_JUDGE_LEV_ZH"].ToString()) { sql = "insert into ReZJB_GPD(Barcode,WGDH,CK,HW,PCH,WLH,WLMC,SX,PH,GG,BB,GH,ZL,BZ,RQ,RKType,RKRY,WeightRQ,ProduceData,PCInfo,vfree0,vfree3,GPTYPE,ZJBstatus,CAPPK,insertts,vfree1,vfree2) values('" + dt_Details.Rows[kk]["C_BARCODE"] + "','" + dt_Details.Rows[kk]["C_TRC_ROLL_MAIN_ID"] + "','" + dt_Details.Rows[kk]["C_LINEWH_CODE"] + "','" + dt_Details.Rows[kk]["C_LINEWH_LOC_CODE"] + "','" + dt_Details.Rows[kk]["C_BATCH_NO"] + "','" + dt_Details.Rows[kk]["C_MAT_CODE"] + "','" + dt_Details.Rows[kk]["C_MAT_DESC"] + "','" + dt_Details.Rows[kk]["C_JUDGE_LEV_ZH"] + "','" + dt_Details.Rows[kk]["C_STL_GRD"] + "','" + dt_Details.Rows[kk]["C_SPEC"] + "mm','" + dt_Details.Rows[kk]["C_GROUP"] + "','" + dt_Details.Rows[kk]["C_TICK_NO"] + "','" + dt_Details.Rows[kk]["N_WGT"] + "','" + dt_Details.Rows[kk]["C_STD_CODE"] + "','" + dt_Details.Rows[kk]["D_RKRQ"] + "','" + dt_Details.Rows[kk]["C_MOVE_DESC"] + "','" + dt_Details.Rows[kk]["C_RKRY"] + "','" + dt_Details.Rows[kk]["D_WEIGHT_DT"] + "','" + dt_Details.Rows[kk]["D_PRODUCE_DATE"] + "','" + dt_Details.Rows[kk]["C_PCINFO"] + "','" + dt_Details.Rows[kk]["C_STOVE"] + "','" + dt_Details.Rows[kk]["C_BZYQ"] + "','','0','" + dt_Details.Rows[kk]["C_ID"] + "','" + time + "','" + dt_Details.Rows[kk]["C_ZYX1"].ToString() + "','" + dt_Details.Rows[kk]["C_ZYX2"].ToString() + "')"; if (TransactionHelper_SQL.ExecuteSql(sql) == 0) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("信息传到条码时出错!"); } } } } } else { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("信息传到条码时出错!"); } #endregion #region NC string sql_NC = "select count(distinct t.STORCODE) from XGERP50.V_ONHAND_XC t where t.批次号='" + strBatchNo + "' AND T.INVTYPE='" + dt_Group.Rows[i]["C_STL_GRD"].ToString() + "' AND T.INVCODE='" + dt_Group.Rows[i]["C_MAT_CODE"].ToString() + "' "; int countNC = dal.Get_NC_Batch_Count(sql_NC); if (countNC > 1) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("该批次信息不在同一个仓库,不能判定!"); } else if (countNC == 0) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("该批次信息还没有入库!"); } string interface_nc = dal_interface.SendXml_GP(strUrl, strBatchNo, C_MASTER_ID, dt_Group.Rows[i]["C_MAT_CODE"].ToString(), dt_Group.Rows[i]["N_WGT"].ToString(), dt_Group.Rows[i]["QUA"].ToString(), dt_Group.Rows[i]["C_ZYX1"].ToString(), dt_Group.Rows[i]["C_ZYX2"].ToString(), mod_wgd, C_GP_BEFORE_ID); if (interface_nc != "1") { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(interface_nc); } #endregion } } else { DataTable dt_Group = dalTrcRollProduct.Get_List_ByGroup(strBatchNo).Tables[0]; for (int i = 0; i < dt_Group.Rows.Count; i++) { #region 更新线材实绩表 DataTable dt = DalTqcRollCommute.GetList_max_MasterID_Trans().Tables[0]; if (string.IsNullOrEmpty(dt.Rows[0]["C_MASTER_ID"].ToString())) { C_MASTER_ID = "sj" + time.ToString("yyMMdd00001"); } else { C_MASTER_ID = "sj" + (Convert.ToInt64(dt.Rows[0]["C_MASTER_ID"].ToString()) + 1).ToString(); } if (string.IsNullOrEmpty(dt.Rows[0]["C_GP_BEFORE_ID"].ToString())) { C_GP_BEFORE_ID = "pq" + time.ToString("yyMMdd00001"); } else { C_GP_BEFORE_ID = "pq" + (Convert.ToInt64(dt.Rows[0]["C_GP_BEFORE_ID"].ToString()) + 1).ToString(); } if (!dalTrcRollProduct.Update_Trans(C_MASTER_ID, C_GP_BEFORE_ID, dt_Group.Rows[i]["C_STD_CODE"].ToString(), dt_Group.Rows[i]["C_MAT_CODE"].ToString(), dt_Group.Rows[i]["C_ZYX1"].ToString(), dt_Group.Rows[i]["C_ZYX2"].ToString(), strBatchNo)) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("操作失败!"); } #endregion #region 条码 DataTable dt_Details = dalTrcRollProduct.Get_Details(strBatchNo, dt_Group.Rows[i]["C_STD_CODE"].ToString(), dt_Group.Rows[i]["C_MAT_CODE"].ToString(), dt_Group.Rows[i]["C_ZYX1"].ToString(), dt_Group.Rows[i]["C_ZYX2"].ToString()).Tables[0]; if (dt_Details.Rows.Count > 0) { string sql = ""; for (int kk = 0; kk < dt_Details.Rows.Count; kk++) { sql = "insert into ReZJB_GPD(Barcode,WGDH,CK,HW,PCH,WLH,WLMC,SX,PH,GG,BB,GH,ZL,BZ,RQ,RKType,RKRY,WeightRQ,ProduceData,PCInfo,vfree0,vfree3,GPTYPE,ZJBstatus,CAPPK,insertts,vfree1,vfree2) values('" + dt_Details.Rows[kk]["C_BARCODE"] + "','" + dt_Details.Rows[kk]["C_TRC_ROLL_MAIN_ID"] + "','" + dt_Details.Rows[kk]["C_LINEWH_CODE"] + "','" + dt_Details.Rows[kk]["C_LINEWH_LOC_CODE"] + "','" + dt_Details.Rows[kk]["C_BATCH_NO"] + "','" + dt_Details.Rows[kk]["C_MAT_CODE"] + "','" + dt_Details.Rows[kk]["C_MAT_DESC"] + "','" + dt_Details.Rows[kk]["C_JUDGE_LEV_ZH"] + "','" + dt_Details.Rows[kk]["C_STL_GRD"] + "','" + dt_Details.Rows[kk]["C_SPEC"] + "mm','" + dt_Details.Rows[kk]["C_GROUP"] + "','" + dt_Details.Rows[kk]["C_TICK_NO"] + "','" + dt_Details.Rows[kk]["N_WGT"] + "','" + dt_Details.Rows[kk]["C_STD_CODE"] + "','" + dt_Details.Rows[kk]["D_RKRQ"] + "','" + dt_Details.Rows[kk]["C_MOVE_DESC"] + "','" + dt_Details.Rows[kk]["C_RKRY"] + "','" + dt_Details.Rows[kk]["D_WEIGHT_DT"] + "','" + dt_Details.Rows[kk]["D_PRODUCE_DATE"] + "','" + dt_Details.Rows[kk]["C_PCINFO"] + "','" + dt_Details.Rows[kk]["C_STOVE"] + "','" + dt_Details.Rows[kk]["C_BZYQ"] + "','','0','" + dt_Details.Rows[kk]["C_ID"] + "','" + time + "','" + dt_Details.Rows[kk]["C_ZYX1"].ToString() + "','" + dt_Details.Rows[kk]["C_ZYX2"].ToString() + "')"; if (TransactionHelper_SQL.ExecuteSql(sql) == 0) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("信息传到条码时出错!"); } } } else { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("信息传到条码时出错!"); } #endregion #region NC string sql_NC = "select count(distinct t.STORCODE) from XGERP50.V_ONHAND_XC t where t.批次号='" + strBatchNo + "' AND T.INVTYPE='" + dt_Group.Rows[i]["C_STL_GRD"].ToString() + "' AND T.INVCODE='" + dt_Group.Rows[i]["C_MAT_CODE"].ToString() + "' "; int countNC = dal.Get_NC_Batch_Count(sql_NC); if (countNC > 1) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("该批次信息不在同一个仓库,不能判定!"); } else if (countNC == 0) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("该批次信息还没有入库!"); } string interface_nc = dal_interface_No_Wgd.SendXml_GP(strUrl, strBatchNo, C_MASTER_ID, dt_Group.Rows[i]["C_MAT_CODE"].ToString(), dt_Group.Rows[i]["N_WGT"].ToString(), dt_Group.Rows[i]["QUA"].ToString(), dt_Group.Rows[i]["C_ZYX1"].ToString(), dt_Group.Rows[i]["C_ZYX2"].ToString(), C_GP_BEFORE_ID); if (interface_nc != "1") { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(interface_nc); } #endregion } } } else { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return("信息有误!"); } } TransactionHelper.Commit(); TransactionHelper_SQL.Commit(); } catch (Exception ex) { TransactionHelper.RollBack(); TransactionHelper_SQL.RollBack(); return(ex.Message); } return(result); }