public void PostCreateBoard(out bool result, dynamic data) { try { string SavantCode = data.SavantCode; var Item = new PRS_BlankingResultService().GetModelList(ParamQuery.Instance().AndWhere("SavantCode", SavantCode)); var ItemDetail = new PRS_BlankingPlateDetailService().GetModelList(ParamQuery.Instance().AndWhere("MainID", string.Join(",", Item.Select(a => a.ID)), Cp.In)); var list = from master in Item join detail in ItemDetail on master.ID equals detail.MainID select new { MasterID = master.ID, PartBlankingQuntity = master.PartBlankingQuntity, DetailID = detail.ID, PlateSize = detail.PlateSize }; new Mes_BlankingResultService() .Delete(ParamDelete .Instance() .AndWhere("BlankingResultID", string.Join(",", Item.Select(a => a.ID)), Cp.In)); var BoardCode = MmsHelper.GetOrderNumber("Mes_BlankingResult", "BoardCode", "XJB", "", ""); string PreCode = BoardCode.Substring(0, BoardCode.Length - 3); int StartNumber = Convert.ToInt32(BoardCode.Substring(BoardCode.Length - 3)); foreach (var item in list) { int count = item.PartBlankingQuntity; for (int i = 0; i < count; i++) { BoardCode = PreCode + StartNumber.ToString().PadLeft(3, '0'); StartNumber++; db.UseTransaction(true); db.Insert("Mes_BlankingResult") .Column("BlankingResultID", item.MasterID) .Column("IsEnable", 1) .Column("CreateTime", DateTime.Now) .Column("CreatePerson", MmsHelper.GetUserCode()) .Column("BiankingSize", item.PlateSize.ToString()) .Column("IsBlanking", 0) .Column("BlankingDetailID", item.DetailID) //.Column("BlankingType",1) .Column("BoardCode", BoardCode).Execute(); } } db.Commit(); result = true; } catch { db.Rollback(); result = false; } }
public dynamic Get(RequestWrapper query) { query.LoadSettingXmlString(@" <settings defaultOrderBy='ID'> <select>*</select> <from>PRS_BlankingPlateDetail</from> <where defaultForAll='true' defaultCp='equal' defaultIgnoreEmpty='true'> <field name='PlateSize' cp='equal'></field> </where> </settings>"); var service = new PRS_BlankingPlateDetailService(); var pQuery = query.ToParamQuery(); var result = service.GetDynamicList(pQuery.AndWhere("MainID", PRS_BlankingPlateDetailController.MainID)); return(result); }
public int AuditBillCode(string mainID, out string msg) { msg = string.Empty; var rowsAffected = 0; string sql = String.Format(@" select BillState FROM PRS_BlankingRecord where ID='{0}'", mainID); var state = db.Sql(sql).QuerySingle <int>(); if (state == 2) { msg = "单据已审核"; return(0); } else { try { using (db.UseTransaction(true)) { int isFalse = 0; sql = string.Format(@"update PRS_BlankingRecord set BillState=2 where ID='{0}'", mainID); rowsAffected = db.Sql(sql).Execute(); if (rowsAffected > 0) { msg = "生产请购单据审核成功"; var pQuery = ParamQuery.Instance().AndWhere("IsEnable", 1).AndWhere("MainID", mainID); List <PRS_BlankingResult> resList = new PRS_BlankingResultService().GetModelList(pQuery); foreach (var result in resList) { for (int i = 0; i < result.PartBlankingQuntity; i++) { pQuery = ParamQuery.Instance().AndWhere("IsEnable", 1).AndWhere("MainID", result.ID); List <PRS_BlankingPlateDetail> plateList = new PRS_BlankingPlateDetailService().GetModelList(pQuery); foreach (var plate in plateList) { int res = db.Insert("Mes_BlankingResult") .Column("BlankingResultID", plate.MainID) .Column("BlankingQuantity", 1) .Column("IsEnable", 1) .Column("Ispicking", 0) .Column("BiankingSize", plate.PlateSize) .Column("CreateTime", DateTime.Now) .Column("CreatePerson", MmsHelper.GetUserName()) .Column("ModifyTime", DateTime.Now) .Column("ModifyPerson", MmsHelper.GetUserName()).Execute(); if (res <= 0) { isFalse++; } } } } //return rowsAffected; } else { msg = "生产请购单据审核失败,请先保存数据后审核"; db.Rollback(); return(0); } if (isFalse > 0) { db.Rollback(); return(0); } else { db.Commit(); msg = "生产请购单据审核成功"; return(1); } } } catch { msg = "生产请购单据审核失败"; return(0); } } }
public void Edit(dynamic data) { var listWrapper = RequestWrapper.Instance().LoadSettingXmlString(@" <settings> <table> PRS_BlankingPlateDetail </table> <where> <field name='ID' cp='equal'></field> </where> </settings>"); //data.list.inserted[0].MainID StringBuilder sb = new StringBuilder(); long maxICode = new SYS_PartService().GetSysPartMaxICode("050203"); string newPName = PRS_BlankingPlateDetailController.NewPName; DateTime newDT = DateTime.Now; for (var i = 0; i < data.list.inserted.Count; i++) { string iCode = "050203" + (++maxICode).ToString().PadLeft(12, '0'); data.list.inserted[i].InventoryCode = iCode; sb.Append(WinFormClientService.GetInsertSQL(new SYS_Part() { InventoryCode = iCode, InventoryName = newPName, Model = $"尺寸={data.list.inserted[i].PlateSize},重量={data.list.inserted[i].Weight},线长={data.list.inserted[i].LineLength}", IsEnable = 1, CreatePerson = MmsHelper.GetUserName(), CreateTime = newDT, ModifyPerson = MmsHelper.GetUserName(), ModifyTime = newDT })); } for (var i = 0; i < data.list.updated.Count; i++) { sb.Append(WinFormClientService.GetUpdateSQL(nameof(SYS_Part), new KeyValuePair <string, object>("InventoryCode", data.list.updated[i].InventoryCode), new { Model = $"尺寸={data.list.updated[i].PlateSize},重量={data.list.updated[i].Weight},线长={data.list.updated[i].LineLength}" })); } string sql = sb.ToString(); using (var db = Db.Context("Mms")) { db.Sql(sql).Execute(); } //dynamic inserted_list= data.list.inserted; //dynamic deleted_list = data.list.deleted; //dynamic updated_list = data.list.updated; //var PRS_BlankingPlateDetail_IDList = new List<int>(); //foreach (dynamic item in inserted_list) //{ // int ID = item.ID; // PRS_BlankingPlateDetail_IDList.Add(ID); //} //foreach (dynamic item in deleted_list) //{ // int ID = item.ID; // PRS_BlankingPlateDetail_IDList.Add(ID); //} //foreach (dynamic item in updated_list) //{ // int ID = item.ID; // PRS_BlankingPlateDetail_IDList.Add(ID); //} //bool flag = true; //new Mes_BlankingResultService().PostCreateBoard(out flag, PRS_BlankingPlateDetail_IDList); var service = new PRS_BlankingPlateDetailService(); var result = service.Edit(null, listWrapper, data); }