public IHttpActionResult PosttwhcheckrecordsDtl() { 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 { twhcheckrecords t = new twhcheckrecords(); t.ChkNO = chkNO; t.WHID = warId; t.ChkDate = DateTime.Parse(chkDate); t.Remark = remark; t.ChkStatus = "N"; t.AreaID = "1"; t.PosiID = "1"; t.UpdateID = updateId; t.UpdateDate = DateTime.Parse(chkDate); 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.Parse(chkDate); tw = listTwhDtl[i]; db.twhcheckrecorddtl.Add(tw); } db.twhcheckrecords.Add(t); db.SaveChanges(); tran.Commit(); } catch (Exception ex) { tran.Rollback(); return(new PageResult("error", Request)); } } return(Content <string>(HttpStatusCode.OK, "OK")); }
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 Posttwhcheckrecords() { 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"]); List <twhstockrecords> listStock = new List <twhstockrecords>(); using (var tran = db.Database.BeginTransaction()) { try { if (twhcheckrecordsExists(chkNO)) { db.twhcheckrecords.Where(c => c.ChkNO == chkNO) .Update(c => new twhcheckrecords { ChkStatus = "F", UpdateID = updateId, Remark = remark, UpdateDate = DateTime.Now }); } else { twhcheckrecords t = new twhcheckrecords(); t.ChkNO = chkNO; t.WHID = warId; t.ChkDate = DateTime.Parse(chkDate); t.Remark = remark; t.ChkStatus = "F"; t.AreaID = "1"; t.PosiID = "1"; t.UpdateID = updateId; t.UpdateDate = DateTime.Parse(chkDate); db.twhcheckrecords.Add(t); } for (int i = 0; i < listTwhDtl.Count; i++) { string ChkNO = listTwhDtl[i].ChkNO = chkNO; string PdtID = listTwhDtl[i].PdtID; float InvNum = listTwhDtl[i].InvNum; float RealNum = listTwhDtl[i].RealNum; float DifNum = listTwhDtl[i].DifNum; twhstockrecords stockrecords = new twhstockrecords(); stockrecords.WHID = warId; stockrecords.AreaID = "1"; stockrecords.PosiID = "1"; stockrecords.PdtID = listTwhDtl[i].PdtID; stockrecords.RefWHID = warId; stockrecords.RefAreaID = "1"; stockrecords.RefPosiID = "1"; stockrecords.UpdateID = updateId; var date = DateTime.Now; stockrecords.UpdateDate = date; stockrecords.CreateDate = date; //调整库存前先锁住行 //string sqlQuery = "select * from twhinventory where whid ='" + warId + "' and pdtid='" + PdtID + "' for update"; //var inventory = db.twhinventory.SqlQuery(sqlQuery).FirstOrDefault(); var inventory = db.twhinventory.Where(inv => inv.WHID == warId && inv.PdtID == PdtID).FirstOrDefault(); float invNum = (float)inventory.InvNum; if (listTwhDtl[i].DifNum == 0) { break; } if (listTwhDtl[i].DifNum > 0) { stockrecords.Num = listTwhDtl[i].DifNum; stockrecords.OpeType = "Y"; db.twhinventory.Where(inv => inv.WHID == warId && inv.PdtID == PdtID) .Update(inv => new twhinventory { InvNum = RealNum }); } else { stockrecords.Num = Math.Abs(listTwhDtl[i].DifNum); stockrecords.OpeType = "K"; db.twhinventory.Where(inv => inv.WHID == warId && inv.PdtID == PdtID) .Update(inv => new twhinventory { InvNum = RealNum }); } if (twhcheckrecorddtlExists(ChkNO, PdtID)) { db.twhcheckrecorddtl.Where(c => c.ChkNO == ChkNO && c.PdtID == PdtID) .Update(c => new twhcheckrecorddtl { InvNum = InvNum, RealNum = RealNum, DifNum = DifNum, UpdateID = updateId, UpdateDate = DateTime.Now, AdjStatus = "F" }); } else { twhcheckrecorddtl tw = new twhcheckrecorddtl(); listTwhDtl[i].ChkNO = chkNO; listTwhDtl[i].AdjStatus = "F"; listTwhDtl[i].UpdateID = updateId; tw = listTwhDtl[i]; db.twhcheckrecorddtl.Add(tw); } listStock.Add(stockrecords); } db.twhstockrecords.AddRange(listStock); db.SaveChanges(); tran.Commit(); } catch (Exception ex) { tran.Rollback(); return(new PageResult("error", Request)); } } return(Content <string>(HttpStatusCode.OK, "OK")); }