/// <summary> /// 向NC发送发运单 /// </summary> /// <param name="fydid">发运单id</param> /// <returns>返回int类型 0发运单数据为空1成功,-1写入中间表出错,-2发送NC错误-3代码错误</returns> public string SENDFYD(string fydid, string path) { string LogSql = ""; string name = "Dal_Interface_WL.SENDFYD"; try { TransactionHelper.BeginTransaction(); if (UPSLABSTATUS_Tran(fydid, "S") == 0) { TransactionHelper.RollBack(); return("变更钢坯状态错误!"); } if (UPFYDSTATUS_Tran(fydid, "9") == 0) { TransactionHelper.RollBack(); return("变更发运单状态错误!"); } string message = dal_Interface_NC_DM.SendXml_DM(path, fydid); if (message != "1") { TransactionHelper.RollBack(); return(message); } TransactionHelper.Commit(); return("1"); } catch (Exception ex) { LogSql = "INSERT INTO TI_RF_LOG(C_TYPE, C_LOG, C_NAME) VALUES('向物流发送发运单','" + ex.ToString() + "','" + name + "')"; DbHelperOra.ExecuteSql(LogSql); return(ex.ToString()); } }
/// <summary> /// 重置顺序 /// </summary> public int CZSORT() { DataTable dt = GetListByStatus(1, "", "").Tables[0]; if (dt.Rows.Count > 0) { int sort = 1; TransactionHelper.BeginTransaction(); foreach (DataRow item in dt.Rows) { string sql = ""; sql = "UPDATE TB_PRO SET N_SORT='" + sort + "' WHERE C_ID='" + item["C_ID"] + "' "; if (TransactionHelper.ExecuteSql(sql) == 1) { sort++; } else { TransactionHelper.RollBack(); return(0); } } } TransactionHelper.Commit(); return(1); }
/// <summary> /// 发送发运单到中间表 /// </summary> /// <param name="fydid">要发送的发运单号</param> /// <returns>返回int类型 1转入成功-1发送失败</returns> public string ADDFYDToZJB(string fydid, DateTime dateTime) { TransactionHelper.BeginTransaction(); #region MyRegion string rjhsql = "SELECT C_PLAN_ID,C_ID,C_MAT_CODE,C_STD_CODE,C_SEND_STOCK_CODE,c_Judge_Lev_Zh,C_PACK,N_FYZS FROM TMD_DISPATCHDETAILS WHERE C_DISPATCH_ID='" + fydid + "'"; DataTable plandt = TransactionHelper.Query(rjhsql).Tables[0]; if (plandt.Rows.Count < 1) { TransactionHelper.RollBack(); return("未查询到发运单子表数据!"); } foreach (DataRow planrow in plandt.Rows) { int plannum = Convert.ToInt32(planrow["N_FYZS"]); #region 获取出库单 string no = RV.UI.ServerTime.timeNow().Year.ToString() + (Convert.ToInt32(RV.UI.ServerTime.timeNow().Month) > 9 ? RV.UI.ServerTime.timeNow().Month.ToString() : ("0" + RV.UI.ServerTime.timeNow().Month.ToString())) + (Convert.ToInt32(RV.UI.ServerTime.timeNow().Day) > 9 ? RV.UI.ServerTime.timeNow().Day.ToString() : ("0" + RV.UI.ServerTime.timeNow().Day.ToString())); //转库单号 string maxckd = GetCKDNO(no); //查询当天最大转库单 if (maxckd == "0") { no = no + "0001"; } else { no = (Convert.ToInt64(maxckd.Substring(2, maxckd.Length - 2)) + 1).ToString(); } no = "GP" + no; #endregion #region 获取线材实绩 DataTable dt1 = GetListByidstr(fydid, planrow["C_MAT_CODE"].ToString(), planrow["C_STD_CODE"].ToString(), planrow["C_SEND_STOCK_CODE"].ToString(), planrow["c_Judge_Lev_Zh"].ToString(), "1").Tables[0];//要传输的发运单数据 if (dt1.Rows.Count < 1) { TransactionHelper.RollBack(); return("根据发运单子表查询线材实绩错误!"); } int fpnum = 0; string idstr = ""; foreach (DataRow xqitem in dt1.Rows) { if (plannum == fpnum) { break; } idstr += "'" + xqitem["C_ID"] + "',"; fpnum++; } idstr = idstr.Substring(0, idstr.Length - 1); #region 变更线材实绩 if (BJBynum(plannum, fydid) == 0) { TransactionHelper.RollBack(); return("根据发运单子表变更线材实绩错误!"); } #endregion DataTable sjdt = GetListByidstr(idstr).Tables[0];//要传输的发运单数据 foreach (DataRow item1 in sjdt.Rows) { #region 添加中间表 string sql = ""; sql += "insert into TMD_DISPATCH_SJZJB(C_DISPATCH_ID,N_NUM,N_STATUS,C_CKDH,N_JZ,C_SEND_STOCK,C_STOVE,C_BATCH_NO,C_PLAN_ID,C_STL_GRD,C_STD_CODE,C_SPEC,C_PK_NCID,C_ZLDJ,C_BZYQ,D_CKSJ,C_MAT_CODE,C_MAT_NAME,C_TICK_STR) values('" + fydid + "','" + item1["N_NUM"] + "','8','" + no + "','" + item1["N_WGT"] + "','" + item1["C_SLABWH_CODE"] + "','" + item1["C_STOVE"] + "','" + item1["C_BATCH_NO"] + "','" + planrow["C_PLAN_ID"].ToString() + "','" + item1["C_STL_GRD"] + "','" + item1["C_STD_CODE"] + "','" + item1["C_SPEC"] + "','" + planrow["C_ID"].ToString() + "','" + item1["C_JUDGE_LEV_ZH"].ToString() + "','',to_date('" + dateTime + "', 'yyyy-mm-dd hh24:mi:ss'),'" + item1["C_MAT_CODE"].ToString() + "','" + item1["C_MAT_NAME"].ToString() + "','')"; if (TransactionHelper.ExecuteSql(sql) == 0) { TransactionHelper.RollBack(); return("条件发运单中间表错误!"); } #endregion } #endregion } #endregion TransactionHelper.Commit(); return("1"); }