using Newtonsoft.Json.Linq; using Pub_Class; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Web.Http; using WebAPI.Models; namespace WebAPI.Controllers { //生产任务单Controller //数据库主表Sc_ICMOBillMain //数据库子表Sc_ICMOBillSub public class Sc_ICMOBillController : ApiController { public DBUtility.ClsPub.Enum_BillStatus BillStatus; private json objJsonResult = new json(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); DataSet ds; #region 生产任务单删除功能 [Route("Sc_ICMOBill/DeltetSc_ICMOReportBill")] [HttpGet] public object DeltetSc_ICMOReportBill(string HInterID,string user) { try { //判断是否有删除权限 if (!DBUtility.ClsPub.Security_Log("Sc_ICMOBill_Drop", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "无权限删除!"; objJsonResult.data = null; return objJsonResult; } if (string.IsNullOrWhiteSpace(HInterID)) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "HInterID为空!"; objJsonResult.data = null; return objJsonResult; } oCN.BeginTran();//开始事务 ds = oCN.RunProcReturn("select * from Sc_ICMOBillMain where HInterID=" + HInterID, "Sc_ICMOBillMain"); if (ds == null || ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没有数据,无法删除!"; objJsonResult.data = null; return objJsonResult; ; } oCN.RunProc("delete from Sc_ICMOBillMain where HInterID=" + HInterID); oCN.Commit();//提交事务 objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "* 数据删除成功!"; objJsonResult.data = null; return objJsonResult; ; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "删除失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 墙咔装箱单回车事件 [Route("Sc_ICMOBill/QK_PackingBillByXSBill")] [HttpGet] public object QK_PackingBillByXSBill(string HBillNo) { try { string sql = string.Format(@"select b.HMaterID,m.HNumber HMaterCode,m.HName HMaterName,b.HUnitID,u.HName HUnitName, b.HQty HQty,a.HAddress HAddress,b.HDate HDate,b.HOutStockQty HOutStockQty,b.HInvoiceQty HInvoiceQty, b.HTaxPrice HTaxPrice,b.HPrice HPrice,b.HMoney HMoney,a.HCusID HCusID,c.HName HCusName,a.HEmpID,e.HName HEmpName, i.HInterID,i.HBillNo from Xs_SeOrderBillMain a left join Xs_SeOrderBillSub b on a.HInterID=b.HInterID left join Gy_Material m on b.HMaterID=m.HItemID left join Gy_Unit u on b.HUnitID=u.HItemID left join Gy_Customer c on a.HCusID=c.HItemID left join Gy_Employee e on a.HEmpID=e.HItemID left join Sc_ICMOBillMain i on i.HSeOrderInterID=a.HInterID where a.HInterID=(select HSeOrderInterID from Sc_ICMOBillMain where HBillNo='" + HBillNo + "')"); ds = oCN.RunProcReturn(sql, "Xs_SeOrderBillMain"); if (ds.Tables[0].Rows.Count != 0 || ds != null) { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "获取成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "暂无对应的销售明细!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "获取失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region 墙咔装箱单整箱生成 [Route("Sc_ICMOBill/QK_PackingBillSavePack")] [HttpPost] public object QK_PackingBillSavePack([FromBody] JObject msg) { var _value = msg["msg"].ToString(); string msg1 = _value.ToString(); string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); string msg2 = sArray[0].ToString(); string msg3 = sArray[1].ToString(); string msg4 = sArray[2].ToString(); ListModels oListModels = new ListModels(); try { if (msg4=="ZZ") { //表体数据 //按 },{来拆分数组 //去掉【和】 msg2 = msg2.Replace("\\", ""); msg2 = msg2.Replace("\n", ""); //\n //msg2 = msg2.Replace("'", "’"); List ls = new List(); ls = oListModels.getObjectByJson_QK_PackingBill(msg2); oCN.BeginTran(); foreach (Models.ClsQK_PackingBill oItemSub in ls) { var HInterID = DBUtility.ClsPub.CreateBillID("3783", ref DBUtility.ClsPub.sExeReturnInfo); var HBillNo = DBUtility.ClsPub.CreateBillCode("3783", ref DBUtility.ClsPub.sExeReturnInfo, true); string sql = string.Format(@"Insert Sc_PackUnionBillMain(HYear,HPeriod,HBillType,HInterID,HDate,HBillNo,HBillStatus,HCheckItemNowID,HCheckItemNextID, HRemark,HBacker,HChecker,HMaker,HMakeDate,HUpDater,HCloseMan,HCloseType,HDeleteMan, HICMOInterID,HICMOBillNo,HBarCode_Pack,HMaterID,HUnitID,HWeight,HMWeight,HPWeight, HProdOrgID,HDeptID,HEmpID,HSNum,HPackNum,HBarCode_Cus,HBatchNo,HBillSubType) values('2022',1,'3783'," + HInterID + ",getdate(),'" + HBillNo + "',1,0,0," + "'自动绑定','','', " + msg3 + ",getdate(),'','',0,''," + oItemSub.HInterID + ",'" + oItemSub.HBillNo + "','" + HBillNo + "'," + oItemSub.HMaterID + "," + oItemSub.HUnitID + "," + oItemSub.HWeight + "," + oItemSub.HMWeight + "," + oItemSub.HPWeight + "," + "0,0," + oItemSub.HEmpID + ",0,0,'','','')"); oCN.RunProc(sql); } oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "整装生成成功!"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } else { msg2 = msg2.Replace("\\", ""); msg2 = msg2.Replace("\n", ""); //\n //msg2 = msg2.Replace("'", "’"); List ls = new List(); ls = oListModels.getObjectByJson_QK_PackingBill(msg2); var HInterID = DBUtility.ClsPub.CreateBillID("3783", ref DBUtility.ClsPub.sExeReturnInfo); var HBillNo = DBUtility.ClsPub.CreateBillCode("3783", ref DBUtility.ClsPub.sExeReturnInfo, true); oCN.BeginTran(); foreach (Models.ClsQK_PackingBill oItemSub in ls) { string sql = string.Format(@"insert into Sc_PackUnionBillSub(HInterID,HEntryID,HCloseMan,HCloseType,HRemark, HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType, HRelationQty,HRelationMoney,HMaterID,HUnitID,HQty,HSourceID,HEquipID,HGroupID,HWorkerID, HScanDate,HBarCode,HBarCode_Pack) values("+HInterID+",'','',0,'自动绑定',"+oItemSub.HInterID+",'',"+oItemSub.HBillNo+",'3710',"+ "0,0,"+ oItemSub.HMaterID+","+ oItemSub.HUnitID+","+ oItemSub.HQty+", 0,0,0,0,"+ "getdate(),'',"+HBillNo+")"); oCN.RunProc(sql); } string sql2 = string.Format(@"Insert Sc_PackUnionBillMain(HYear,HPeriod,HBillType,HInterID,HDate,HBillNo,HBillStatus,HCheckItemNowID,HCheckItemNextID, HRemark,HBacker,HChecker,HMaker,HMakeDate,HUpDater,HCloseMan,HCloseType,HDeleteMan,HICMOInterID,HICMOBillNo, HBarCode_Pack,HMaterID,HUnitID,HWeight,HMWeight,HPWeight, HProdOrgID,HDeptID,HEmpID,HSNum,HPackNum,HBarCode_Cus,HBatchNo,HBillSubType) values('2022',1,'3783'," + HInterID + ",getdate(),'" + HBillNo + "',1,0,0," + "'自动绑定','','', " + msg3 + ",getdate(),'','',0,'',0,0,'" + HBillNo + "',0,0,0,0,0" + "0,0,0,0,0,'','','')"); oCN.RunProc(sql2); oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "拼装生成成功"; 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; } } #endregion } }