using BLL; using Model; using System; using System.Linq; using System.Runtime.Remoting.Metadata.W3cXsd2001; using System.Web.Http; namespace WebAPI.Controllers { /** * 物资出库 */ public class MaterialsOutController : ApiController { #region 添加物资出库主表 [HttpPost] public Model.ResponeData AddMaterialOutM(Model.Cl_W_MaterialOutM MaterialOutM) { var responeData = new Model.ResponeData(); try { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { var userTime = DateTime.Now; int count = db.Cl_W_MaterialOutM.Where(x => x.UserTime.Value.Year == userTime.Year&&x.UserTime.Value.Month==userTime.Month&&x.UserTime.Value.Day==userTime.Day).ToList().Count(); Model.Cl_W_MaterialOutM outm = new Model.Cl_W_MaterialOutM(); outm.OutSheetMID = MaterialOutM.OutSheetMID; outm.ProjectId = MaterialOutM.ProjectId; outm.OutSheetCode = string.Format("CKD--{0}{1}", DateTime.Now.ToString("yyyyMMdd"),count.ToString("000")); outm.UserTime = DateTime.Now; outm.UnitId = MaterialOutM.UnitId; outm.UAid = MaterialOutM.UAid; outm.InstallationId = MaterialOutM.InstallationId; outm.PlanSheetMID = MaterialOutM.PlanSheetMID; // 工区ID outm.YYPID = MaterialOutM.YYPID; outm.RecordMan = MaterialOutM.RecordMan; MaterialOutM.OutSheetCode = string.Format("CKD--{0}{1}", DateTime.Now.ToString("yyyyMMdd"), count.ToString("000")); db.Cl_W_MaterialOutM.InsertOnSubmit(outm); db.SubmitChanges(); responeData.data = MaterialOutM; } } catch (System.Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion #region 添加物资子表 [HttpPost] public Model.ResponeData AddMaterialOutS(Model.Cl_W_MaterialOutS MaterialOutS) { var responeData = new Model.ResponeData(); try { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { int count = db.Cl_W_MaterialOutM.Where(x => x.UserTime == DateTime.Now).ToList().Count(); Model.Cl_W_MaterialOutS outs = new Model.Cl_W_MaterialOutS(); outs.ProjectId = MaterialOutS.ProjectId; outs.OutSheetMID = MaterialOutS.OutSheetMID; outs.OutSheetSID = Guid.NewGuid().ToString(); outs.MaterialID = MaterialOutS.MaterialID; //outs.Soft = MaterialOutS.Soft ?? DBNull.Value; outs.PlannedQuantity = MaterialOutS.PlannedQuantity; outs.StoreQuantity = MaterialOutS.StoreQuantity; outs.OutQuantity = MaterialOutS.OutQuantity; outs.OutQuantityY = MaterialOutS.OutQuantityY; outs.StorePQuantity = MaterialOutS.StorePQuantity; outs.CertificatesFactoryNo = MaterialOutS.CertificatesFactoryNo; outs.FurnaceBatchNo = MaterialOutS.FurnaceBatchNo; outs.CertificateSelfNo = MaterialOutS.CertificateSelfNo; outs.Weight = MaterialOutS.Weight; outs.Price = MaterialOutS.Price; outs.OutQuantityP = MaterialOutS.OutQuantityP; outs.OutQuantityO = MaterialOutS.OutQuantityO; outs.StorehouseName = MaterialOutS.StorehouseName; outs.StorageSheetSID = MaterialOutS.StorageSheetSID; outs.FirstpartyCode = MaterialOutS.FirstpartyCode; outs.ISupload = MaterialOutS.ISupload; outs.InstallationId = MaterialOutS.InstallationId; outs.Shue = MaterialOutS.Shue; outs.Bhsje = MaterialOutS.Bhsje; db.Cl_W_MaterialOutS.InsertOnSubmit(outs); Model.Cl_W_MaterialOutM clw = db.Cl_W_MaterialOutM.FirstOrDefault(x => x.OutSheetMID == MaterialOutS.OutSheetMID); if(clw.IsOk != "1") { clw.IsOk = "1"; } db.SubmitChanges(); Model.Cl_w_comp cl = new Model.Cl_w_comp(); cl.CompID = Guid.NewGuid().ToString(); cl.ProjectId = MaterialOutS.ProjectId; cl.InstallationId = clw.InstallationId; cl.Ghfs = clw.YYPID; cl.TAreaMaterialMID = MaterialOutS.FirstpartyCode; cl.TAreaMaterialSID = ""; cl.MaterialID = MaterialOutS.MaterialID; cl.Aquantity = 0; cl.PlanSheetMID = ""; cl.PlanSheetSID = ""; cl.Pquantity = 0; cl.StorageSheetMID = ""; cl.StorageSheetSID = ""; cl.SQuantity = 0; cl.StorageHJSID = ""; cl.StorageHJMID = ""; cl.HQuantity = 0; cl.OutSheetMID = MaterialOutS.OutSheetMID; cl.OutSheetSID = outs.OutSheetSID; cl.OQuantity = MaterialOutS.OutQuantity; cl.ReturnSheetMid = ""; cl.ReturnSheetSID = ""; cl.RQuantity = 0; db.Cl_w_comp.InsertOnSubmit(cl); db.SubmitChanges(); responeData.data = MaterialOutS.OutSheetSID; } } catch (System.Exception ex) { responeData.code = 0; responeData.message = ex.Message; } return responeData; } #endregion } }