public ResultModel PledgeApplyUpdateHandle(UserModel user, NFMT.Operate.Model.Apply apply, Model.PledgeApply pledgeApply, List<Model.PledgeApplyDetail> details) { ResultModel result = new ResultModel(); NFMT.Operate.DAL.ApplyDAL applyDAL = new NFMT.Operate.DAL.ApplyDAL(); try { using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required)) { result = pledgeapplyDAL.Get(user, pledgeApply.PledgeApplyId); if (result.ResultStatus != 0) return result; NFMT.WareHouse.Model.PledgeApply pledgeApplyRe = result.ReturnValue as NFMT.WareHouse.Model.PledgeApply; if (pledgeApplyRe == null || pledgeApplyRe.PledgeApplyId <= 0) { result.ResultStatus = -1; return result; } result = applyDAL.Get(user, apply.ApplyId); if (result.ResultStatus != 0) return result; NFMT.Operate.Model.Apply applyRe = result.ReturnValue as NFMT.Operate.Model.Apply; if (result.ResultStatus != 0) return result; applyRe.EmpId = apply.EmpId; applyRe.ApplyTime = apply.ApplyTime; applyRe.ApplyDept = apply.ApplyDept; applyRe.ApplyCorp = apply.ApplyCorp; applyRe.ApplyDesc = apply.ApplyDesc; //更新主申请 result = applyDAL.Update(user, applyRe); if (result.ResultStatus != 0) return result; NFMT.WareHouse.DAL.PledgeApplyDetailDAL pledgeApplyDetailDAL = new PledgeApplyDetailDAL(); //作废所有明细 result = pledgeApplyDetailDAL.InvalidAll(user, pledgeApply.PledgeApplyId); if (result.ResultStatus != 0) return result; NFMT.WareHouse.DAL.StockDAL stockDAL = new StockDAL(); foreach(Model.PledgeApplyDetail detail in details) { //写入质押申请明细 detail.PledgeApplyId = pledgeApply.PledgeApplyId; result = pledgeApplyDetailDAL.Insert(user, detail); if (result.ResultStatus != 0) return result; } scope.Complete(); } } catch (Exception ex) { result.ResultStatus = -1; result.Message = ex.Message; } finally { if (result.ResultStatus != 0) log.ErrorFormat("{0} {1},类型序号:{2}", user.EmpName, result.Message, result.ReturnValue); else if (log.IsInfoEnabled) log.InfoFormat("{0} {1},类型序号:{2}", user.EmpName, result.Message, result.ReturnValue); } return result; }
public ResultModel Update(UserModel user, NFMT.Operate.Model.Apply apply, Model.InvoiceApply invoiceApply, List<Model.InvoiceApplyDetail> details) { ResultModel result = new ResultModel(); try { using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required)) { NFMT.Operate.DAL.ApplyDAL applyDAL = new NFMT.Operate.DAL.ApplyDAL(); result = applyDAL.Get(user, apply.ApplyId); if (result.ResultStatus != 0) return result; NFMT.Operate.Model.Apply applyRes = result.ReturnValue as NFMT.Operate.Model.Apply; if (applyRes == null) { result.ResultStatus = -1; result.Message = "获取申请信息失败"; return result; } applyRes.ApplyCorp = apply.ApplyCorp; applyRes.ApplyDept = apply.ApplyDept; applyRes.EmpId = user.EmpId; applyRes.ApplyTime = DateTime.Now; applyRes.ApplyDesc = apply.ApplyDesc; result = applyDAL.Update(user, applyRes); if (result.ResultStatus != 0) return result; invoiceApply.TotalBala = details.Sum(a => a.InvoiceBala); result = invoiceapplyDAL.Update(user, invoiceApply); if (result.ResultStatus != 0) return result; DAL.InvoiceApplyDetailDAL invoiceApplyDetailDAL = new InvoiceApplyDetailDAL(); result = invoiceApplyDetailDAL.InvalidAll(user, invoiceApply.InvoiceApplyId); if (result.ResultStatus != 0) return result; foreach (Model.InvoiceApplyDetail detail in details) { result = invoiceApplyDetailDAL.Insert(user, detail); if (result.ResultStatus != 0) return result; } scope.Complete(); } } catch (Exception ex) { result.ResultStatus = -1; result.Message = ex.Message; } finally { if (result.ResultStatus != 0) this.Log.ErrorFormat("{0} {1},序号:{2}", user.EmpName, result.Message, result.ReturnValue); else if (this.Log.IsInfoEnabled) this.Log.InfoFormat("{0} {1},序号:{2}", user.EmpName, result.Message, result.ReturnValue); } return result; }