using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Data; using System.Web.Http; using WebAPI.Models; namespace WebAPI.Controllers { /** * 裁切派工单 */ public class Xs_CutWorkSendBillController : ApiController { private json objJsonResult = new json(); public DataSet ds = new DataSet(); public WebServer webserver = new WebServer(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); /// /// 扫描找货单号获取相关信息 /// /// [Route("Xs_CutWorkSendBill/getHSEOrderBillNo")] [HttpGet] public object getHSEOrderBillNo(string HSEOrderBillNo) { if (HSEOrderBillNo == null || ("").Equals(HSEOrderBillNo)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "请输入找货单号!"; objJsonResult.data = null; return objJsonResult; } try { ds = getHSEOrderBillNo_s(HSEOrderBillNo); if (ds == null || ds.Tables[0].Rows.Count <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "返回记录成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 生成裁切派工单 /// /// [Route("Xs_CutWorkSendBill/set_SaveCutWorkSendBill")] [HttpPost] public object set_SaveCutWorkSendBill([FromBody] JObject oMain) { string oMainData = oMain["oMain"].ToString(); oMainData = oMainData.Substring(8, oMainData.Length - 9); try { List lsmain = new List(); ListModels oListModels = new ListModels(); List list = Newtonsoft.Json.JsonConvert.DeserializeObject>(oMainData); int HYear = Pub_Class.ClsPub.isInt(DateTime.Now.Year); int HPeriod = Pub_Class.ClsPub.isInt(DateTime.Now.Month); string HBillType = "9191"; oCN.BeginTran(); var mainSql = "Insert Into Xs_CutWorkSendBillMain " + "(HYear,HPeriod,HBillType,HInterID,HDate" + ",HBillNo,HMaker,HMakeDate,HMainSourceBillType" + ",HGroupID)" + " values" + "(" + HYear + "," + HPeriod + ",'" + HBillType + "'," + list[0].HInterID + ",GETDATE(),'" + list[0].HBillNo + "','" + list[0].HMaker + "',GETDATE(),'1401'," + list[0].HGroupID + ")"; oCN.RunProc(mainSql); for (int i = 0; i < list.Count; i++) { var subSql = "Insert Into Xs_CutWorkSendBillSub " + "(HInterID,HBillNo_bak,HSourceInterID,HSourceBillNo,HSourceBillType" + ",HSEOrderBillNo,HSEOrderInterID)" + " values" + "(" + list[i].HInterID + ",'" + list[i].HBillNo + "'," + list[i].HMainSourceInterID + ",'" + list[i].HMainSourceBillNo + "','1401','" + list[i].HMainSourceBillNo + "'," + list[i].HMainSourceInterID + ")"; oCN.RunProc(subSql); //反写金蝶销售订单的裁切派工班组 var HGroupSql = "update AIS20200908101915zs..T_SAL_ORDERENTRY set F_XSDD_PGSJ=GETDATE(),F_XSDD_PGBZ=(select HName from Gy_Group where HItemID=" + list[i].HGroupID + ") where FID = " + list[i].HMainSourceInterID + ""; oCN.RunProc(HGroupSql); } oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "生成找货单成功!单据号为:" + list[0].HBillNo; objJsonResult.data = null; return objJsonResult; } catch (Exception e) { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "上传失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } /// /// 上下架单列表 /// /// [Route("Xs_CutWorkSendBill/List")] [HttpGet] public object List(string sWhere) { try { ds = List_s(sWhere); if (ds == null || ds.Tables[0].Rows.Count <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!"; objJsonResult.data = null; return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "返回记录成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有返回任何记录!" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } #region sql语句 public static DataSet getHSEOrderBillNo_s(string HSEOrderBillNo) { return new SQLHelper.ClsCN().RunProcReturn( "select FID HMainSourceInterID,FBILLNO HMainSourceBillNo,1 pages,'' HMaker from AIS20200908101915zs..T_SAL_ORDER where FBILLNO ='" + HSEOrderBillNo + "'" , "AIS20200908101915zs..T_SAL_ORDER"); } public static DataSet List_s(string sWhere) { return new SQLHelper.ClsCN().RunProcReturn("select * from h_v_Xs_CutWorkSendBillList where 1=1 " + sWhere , "h_v_Xs_CutWorkSendBillList"); } #endregion } }