| 
									
										
										
										
											2025-05-26 15:30:17 +08:00
										 |  |  |  | using BLL; | 
					
						
							| 
									
										
										
										
											2025-06-17 09:58:07 +08:00
										 |  |  |  | using Model; | 
					
						
							| 
									
										
										
										
											2025-05-26 15:30:17 +08:00
										 |  |  |  | using System; | 
					
						
							|  |  |  |  | using System.Linq; | 
					
						
							| 
									
										
										
										
											2025-07-01 19:03:10 +08:00
										 |  |  |  | using System.Runtime.Remoting.Metadata.W3cXsd2001; | 
					
						
							| 
									
										
										
										
											2025-05-26 15:30:17 +08:00
										 |  |  |  | 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)) | 
					
						
							|  |  |  |  |                 { | 
					
						
							| 
									
										
										
										
											2025-06-17 09:58:07 +08:00
										 |  |  |  |                     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(); | 
					
						
							| 
									
										
										
										
											2025-05-26 15:30:17 +08:00
										 |  |  |  |                     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; | 
					
						
							| 
									
										
										
										
											2025-07-01 19:03:10 +08:00
										 |  |  |  |                     MaterialOutM.OutSheetCode = string.Format("CKD--{0}{1}", DateTime.Now.ToString("yyyyMMdd"), count.ToString("000")); | 
					
						
							| 
									
										
										
										
											2025-05-26 15:30:17 +08:00
										 |  |  |  |                     db.Cl_W_MaterialOutM.InsertOnSubmit(outm); | 
					
						
							|  |  |  |  |                     db.SubmitChanges(); | 
					
						
							| 
									
										
										
										
											2025-07-01 19:03:10 +08:00
										 |  |  |  |                     responeData.data = MaterialOutM; | 
					
						
							| 
									
										
										
										
											2025-05-26 15:30:17 +08:00
										 |  |  |  |                 } | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             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; | 
					
						
							| 
									
										
										
										
											2025-06-17 09:58:07 +08:00
										 |  |  |  |       | 
					
						
							| 
									
										
										
										
											2025-05-26 15:30:17 +08:00
										 |  |  |  |                     db.Cl_W_MaterialOutS.InsertOnSubmit(outs); | 
					
						
							| 
									
										
										
										
											2025-06-17 09:58:07 +08:00
										 |  |  |  |                     Model.Cl_W_MaterialOutM clw = db.Cl_W_MaterialOutM.FirstOrDefault(x => x.OutSheetMID == MaterialOutS.OutSheetMID); | 
					
						
							|  |  |  |  |                     if(clw.IsOk != "1") | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         clw.IsOk = "1"; | 
					
						
							|  |  |  |  |                     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-05-26 15:30:17 +08:00
										 |  |  |  |                     db.SubmitChanges(); | 
					
						
							| 
									
										
										
										
											2025-07-01 19:03:10 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |                     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(); | 
					
						
							| 
									
										
										
										
											2025-05-26 15:30:17 +08:00
										 |  |  |  |                     responeData.data = MaterialOutS.OutSheetSID; | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             catch (System.Exception ex) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 responeData.code = 0; | 
					
						
							|  |  |  |  |                 responeData.message = ex.Message; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             return responeData; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         #endregion | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | } |