public IHttpActionResult PosttwhcheckrecordsDtlEdit() { HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"]; HttpRequestBase request = context.Request; JavaScriptSerializer js = new JavaScriptSerializer(); string chkNO = request.Params["chkNO"]; string warId = request.Params["warId"]; string chkDate = request.Params["chkDate"]; string remark = request.Params["remark"]; string updateId = request.Params["updateId"]; List <twhcheckrecorddtl> listTwhDtl = js.Deserialize <List <twhcheckrecorddtl> >(request.Params["listTwhDtl"]); using (var tran = db.Database.BeginTransaction()) { try { var twhcheckrecords = db.twhcheckrecords.AsNoFilter().Where(w => w.ChkNO == chkNO).FirstOrDefault(); twhcheckrecords.UpdateID = updateId; twhcheckrecords.Remark = remark; twhcheckrecords.UpdateDate = DateTime.Now; db.Entry(twhcheckrecords).State = EntityState.Unchanged; db.Entry(twhcheckrecords).Property(p => p.UpdateID).IsModified = true; db.Entry(twhcheckrecords).Property(p => p.Remark).IsModified = true; db.Entry(twhcheckrecords).Property(p => p.UpdateDate).IsModified = true; db.twhcheckrecorddtl.Where(w => w.ChkNO == chkNO).Delete(); db.SaveChanges(); for (int i = 0; i < listTwhDtl.Count; i++) { string ChkNO = listTwhDtl[i].ChkNO; string PdtID = listTwhDtl[i].PdtID; float InvNum = listTwhDtl[i].InvNum; float RealNum = listTwhDtl[i].RealNum; float DifNum = listTwhDtl[i].DifNum; twhcheckrecorddtl tw = new twhcheckrecorddtl(); listTwhDtl[i].ChkNO = chkNO; listTwhDtl[i].AdjStatus = "N"; listTwhDtl[i].UpdateID = updateId; listTwhDtl[i].UpdateDate = DateTime.Now; tw = listTwhDtl[i]; db.twhcheckrecorddtl.Add(tw); } db.SaveChanges(); tran.Commit(); } catch (Exception ex) { tran.Rollback(); return(new PageResult("error", Request)); } } return(Content <string>(HttpStatusCode.OK, "OK")); }
public IHttpActionResult Putmcustomer(string id, mcustomer mcustomer) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != mcustomer.CusID) { return(BadRequest()); } db.Entry(mcustomer).State = EntityState.Modified; try { db.SaveChanges(); } catch (Exception) { if (mcustomerExists(mcustomer.CusID)) { return(new PageResult("Conflict", Request)); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult Puttsaleorderdtl(string id, tsaleorderdtl tsaleorderdtl) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != tsaleorderdtl.SaleOrderNO) { return(BadRequest()); } db.Entry(tsaleorderdtl).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!tsaleorderdtlExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult Putmwarehouse(string id, mwarehouse mwarehouse) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != mwarehouse.WHID) { return(BadRequest()); } db.Entry(mwarehouse).State = EntityState.Modified; try { db.SaveChanges(); } catch (Exception) { if (!mwarehouseExists(id)) { return(new PageResult("Conflict", Request)); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public int ImportList(List <msupplier> lstpdt, out int addNum, out int updNum, out int cfNum) { int ret = 0; using (var tran = erpsEntities.Database.BeginTransaction()) { try { addNum = 0; updNum = 0; cfNum = 0; cfNum = lstpdt.GroupBy(x => x.SupID).Where(x => x.Count() > 1).Count(); //去除重复的ID数据 lstpdt = lstpdt.Where((x, i) => lstpdt.FindIndex(n => n.SupID == x.SupID) == i).ToList(); var all = erpsEntities.msupplier.AsNoTracking().ToList(); var allID = all.Select(s => s.SupID).ToList(); //新增 var addlist = lstpdt.Where(w => !allID.Contains(w.SupID)).ToList(); erpsEntities.msupplier.AddRange(addlist); //修改 var updlist = lstpdt.Where(w => allID.Contains(w.SupID)).ToList(); for (int i = 0; i < updlist.Count; i++) { msupplier msupplier = new msupplier(); msupplier = updlist[i]; erpsEntities.msupplier.Attach(msupplier); erpsEntities.Entry(msupplier).State = EntityState.Unchanged; erpsEntities.Entry(msupplier).Property(x => x.SupID).IsModified = true; erpsEntities.Entry(msupplier).Property(x => x.SupName).IsModified = true; erpsEntities.Entry(msupplier).Property(x => x.Contact).IsModified = true; erpsEntities.Entry(msupplier).Property(x => x.Phone).IsModified = true; erpsEntities.Entry(msupplier).Property(x => x.Address).IsModified = true; erpsEntities.Entry(msupplier).Property(x => x.UpdateID).IsModified = true; erpsEntities.Entry(msupplier).Property(x => x.UpdateDate).IsModified = true; } ret = erpsEntities.SaveChanges(); tran.Commit(); addNum = addlist.Count; updNum = updlist.Count; if (ret > 0) { ret = 1; } return(ret); } catch (Exception ex) { tran.Rollback(); ret = -1; throw ex; } } }
public IHttpActionResult Putsuser(int id, suser suser) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != suser.UserId) { return(BadRequest()); } suser.UpdateDate = DateTime.Now; db.Entry(suser).State = EntityState.Modified; if (suser.Pass == null || suser.Pass.Trim() == "") { db.Entry(suser).Property("Pass").IsModified = false; } else { suser.Pass = ValidCodeUtils.EncryptPassword(suser.Pass); } try { db.SaveChanges(); } catch (Exception) { if (suserExists(suser.UID)) { return(new PageResult("Conflict", Request)); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public int ImportMProductList(List <mproduct> lstpdt, out int addNum, out int updNum, out int cfNum) { int ret = 0; using (var tran = erpsEntities.Database.BeginTransaction()) { try { addNum = 0; updNum = 0; cfNum = 0; cfNum = lstpdt.GroupBy(x => x.PdtID).Where(x => x.Count() > 1).Count(); //去除重复的ID数据 lstpdt = lstpdt.Where((x, i) => lstpdt.FindIndex(n => n.PdtID == x.PdtID) == i).ToList(); var all = erpsEntities.mproduct.AsNoTracking().ToList(); var allID = all.Select(s => s.PdtID).ToList(); //新增 var addlist = lstpdt.Where(w => !allID.Contains(w.PdtID)).ToList(); erpsEntities.mproduct.AddRange(addlist); //修改 var updlist = lstpdt.Where(w => allID.Contains(w.PdtID)).ToList(); for (int i = 0; i < updlist.Count; i++) { mproduct mproduct = new mproduct(); mproduct = updlist[i]; //var curState = erpsEntities.Entry<mproduct>(mproduct).State; erpsEntities.mproduct.Attach(mproduct); erpsEntities.Entry(mproduct).State = EntityState.Modified; erpsEntities.Entry(mproduct).Property(x => x.SalPrice).IsModified = false; erpsEntities.Entry(mproduct).Property(x => x.MgrInfo).IsModified = false; erpsEntities.Entry(mproduct).Property(x => x.Remark).IsModified = false; erpsEntities.Entry(mproduct).Property(x => x.CreateID).IsModified = false; erpsEntities.Entry(mproduct).Property(x => x.CreateDate).IsModified = false; } ret = erpsEntities.SaveChanges(); tran.Commit(); addNum = addlist.Count; updNum = updlist.Count; if (ret > 0) { ret = 1; } return(ret); } catch (Exception ex) { tran.Rollback(); ret = -1; throw ex; } } }
public BaseDataPackage <string> WholePurOrderWriteOff(string PurOrderNO) { var result = new BaseDataPackage <string>(); try { erpsEntities db = new erpsEntities(); int ret = 0; var purorder = db.tpurorder.Where(w => w.PurOrderNO == PurOrderNO).FirstOrDefault <tpurorder>(); purorder.State = "F"; var entitys = db.tpurorderdtl.Where(w => w.PurOrderNO == PurOrderNO); entitys.ToList().ForEach(item => { item.LftNum = 0; item.State = "F"; db.Entry(item).State = System.Data.Entity.EntityState.Modified; }); ret = db.SaveChanges(); if (ret > 0) { result.Status = ApiStatusCode.OK; result.Message = "冲销成功"; return(result); } else { result.DataList = null; result.Status = ApiStatusCode.FAIL; result.Message = "冲销失败"; return(result); } } catch (Exception ex) { result.Status = ApiStatusCode.EXCEPTION; result.Message = "发生异常=>" + ex.Message; return(result); } }
public BaseDataPackage <string> EditSupplierProdPrice(string id, msupplierprodprice msupplier) { var result = new BaseDataPackage <string>(); erpsEntities db = new erpsEntities(); msupplier.UpdateDate = DateTime.Now; db.Entry(msupplier).State = EntityState.Modified; try { db.SaveChanges(); result.Status = ApiStatusCode.OK; result.Message = "修改成功"; return(result); } catch (Exception ex) { result.Message = "发生异常=>" + ex.Message; result.Status = ApiStatusCode.EXCEPTION; return(result); } }
public int EditPurOrderDtl(string purOrderNo, List <tpurorderdtl> tpurodrdtl, List <tpurorderatt> tpurodratt) { int ret = 0; using (var tran = erpsEntities.Database.BeginTransaction()) { try { var vm = erpsEntities.tpurorderdtl.Where(m => m.PurOrderNO == purOrderNo); vm.ToList().ForEach(t => erpsEntities.Entry(t).State = EntityState.Deleted); erpsEntities.tpurorderdtl.RemoveRange(vm); erpsEntities.tpurorderdtl.AddRange(tpurodrdtl); erpsEntities.tpurorderatt.AddRange(tpurodratt); ret = erpsEntities.SaveChanges(); tran.Commit(); if (ret > 0) { ret = 1; } return(ret); } catch (Exception ex) { tran.Rollback(); ret = -1; throw ex; } } }
public int AddSaleOrderDtl(tsaleorder tsaleorder, List <tsaleorderdtl> tsaleorderdtls, List <tsaleorderatt> tsaleorderatts) { int ret = 0; using (var tran = erpsEntities.Database.BeginTransaction()) { try { erpsEntities.tsaleorder.Add(tsaleorder); erpsEntities.tsaleorderdtl.AddRange(tsaleorderdtls); erpsEntities.tsaleorderatt.AddRange(tsaleorderatts); if (!string.IsNullOrEmpty(tsaleorderdtls[0].SaleFocaNO)) { //冲销对应销售预测信息 var newOrderDtl = (tsaleorderdtls.GroupBy(g => new { g.SeqNo, g.PdtID }) .Select(s => new { SaleFocaNO = s.Max(m => m.SaleFocaNO), SeqNo = s.Max(m => m.SeqNo), CusID = s.Max(m => m.CusID), PdtID = s.Max(m => m.PdtID), OrderNum = s.Sum(m => m.OrderNum) })).ToList(); bool isF = true; for (int i = 0; i < newOrderDtl.Count; i++) { var SaleFocaNO = newOrderDtl[i].SaleFocaNO; var SeqNo = newOrderDtl[i].SeqNo; var obj = erpsEntities.tsaleforcastdtl .Where(w => w.SaleFocaNO == SaleFocaNO && w.SeqNo == SeqNo).FirstOrDefault(); erpsEntities.tsaleforcastdtl.Attach(obj); var num = (obj.LftNum - newOrderDtl[i].OrderNum) < 0 ? 0 : obj.LftNum - newOrderDtl[i].OrderNum; obj.LftNum = num; if (num == 0) { obj.State = "F"; erpsEntities.Entry(obj).Property(xx => xx.State).IsModified = true; } else { isF = false; } erpsEntities.Entry(obj).Property(xx => xx.LftNum).IsModified = true; } if (isF) { var SaleFocaNO = newOrderDtl[0].SaleFocaNO; var saleforcast = erpsEntities.tsaleforcast .Where(w => w.SaleFocaNO == SaleFocaNO).FirstOrDefault(); erpsEntities.tsaleforcast.Attach(saleforcast); saleforcast.State = "F"; erpsEntities.Entry(saleforcast).Property(xx => xx.State).IsModified = true; } } ret = erpsEntities.SaveChanges(); tran.Commit(); if (ret > 0) { ret = 1; } return(ret); } catch (Exception ex) { tran.Rollback(); ret = -1; throw ex; } } }