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; } }
//todo 改成支持多个Tab // 地址:GET api/mms/@(controller)/getnewrowid 预取得新的明细表的行号 public string GetNewRowId(string type, string key, int qty = 1) { switch (type) { case "grid0": var service0 = new PRS_BlankingResultService(); return(service0.GetNewKey("ID", "maxplus", qty, ParamQuery.Instance().AndWhere("ID", key, Cp.Equal))); default: return(""); } }
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); } } }