public Rows(web_db._Weighing.TblPortageRow row, web_db.sardweb_Context db) { var por = db.TblPortages.Find(row.FkPortage); var con = db.TblContracts.Find(row.FkContract) ?? new web_db._Weighing.TblContract(); var contype = db.TblContractTypes.Find(por.FkContracttype); var cus = db.TblCustomers.Find(row.FkPortageNavigation.FkCustomer) ?? new web_db.TblCustomer(); Contract = cus.Title; Contractcode = con.Code; ContractType = contype.Title; ContractTypecode = contype.Code; Count = row.Count; date = por.Date1; datestr = por.Date1.ToPersianDate(); IdPort = row.FkPortage; IdRow = row.Id; Location = row.CodeLocation; Packing = row.FkPacking.HasValue ? (web_sard.Models.cl._ListPacking.Single(a => a.Id == row.FkPacking).Title) : ""; Product = row.FkProduct.HasValue ? (web_sard.Models.cl._ListProduct.Single(a => a.Id == row.FkProduct).Title) : ""; UserAdd = db.TblUsers.Find(row.FkUser).Title; Weight = row.WeightOne ?? 0; Portagekindcode = por.KindCode; Portagekindstr = por.KindTitle; residcode = por.Code; Car = por.CarMashin + " " + por.CarShMashin + " (" + por.CarRanande + por.CarTell + ")"; }
public PortageRow(web_db._Weighing.TblPortageRow row, web_db.sardweb_Context db, bool portage) { this.Code = row.Code; this.Count = row.Count.gadrmotlagh(); this.WeightOne = row.WeightOne; this.Date = row.Date; this.FkPacking = row.FkPacking; this.FkProduct = row.FkProduct; this.Packing = (web_sard.Models.cl._ListPacking.SingleOrDefault(a => a.Id == row.FkPacking) ?? new web_db._Weighing.TblPacking()).Title; this.Product = (web_sard.Models.cl._ListProduct.SingleOrDefault(a => a.Id == row.FkProduct) ?? new web_db._Weighing.TblProduct()).Title; this.Id = row.Id; this.FkContract = row.FkContract; this.CodeContract = (db.TblContracts.Find(row.FkContract) ?? new web_db._Weighing.TblContract()).Code; this.Txt = row.Txt; this.IsNimPalet = row.IsNimPalet; this.ListInjurys = db.TblPortageRowInjuries.Where(a => a.FkPortageRow == row.Id).Select(a => a.FkInjury).ToArray(); this.ListInjurysTbl = (from n in db.TblPortageRowInjuries.Include(a => a.FkInjuryNavigation) where n.FkPortageRow == row.Id let inj = n.FkInjuryNavigation select new alltbl { code = inj.Ord, key = inj.Id, title = inj.Title }).ToList(); this.CodeLocation = row.CodeLocation; if (this.CodeLocation.IsEmpty() == false) { var z = this.CodeLocation.Split("-"); if (z.Count() > 0) { L1 = Convert.ToInt32(z[0]); } if (z.Count() > 1) { L2 = Convert.ToInt32(z[1]); } if (z.Count() > 2) { L3 = Convert.ToInt32(z[2]); } } UserAddStr = db.TblUsers.Find(row.FkUser).Title; this.fkportage = row.FkPortage; tblportage = new portage(); if (this.fkportage.HasValue && portage) { tblportage = new portage(db.TblPortages.Find(this.fkportage), db); } }
public JsonResult AddlistRow(Guid idp, Guid id, int?L1, int?L2, int?L3, int?L1peer, int?L2peer, int?L3peer, Guid fkcontractpeer, long Count, float?Weight, Guid fkcontract, Guid?FkPacking, Guid?FkProduct, Guid[] FkInjurys, string Txt) { if (Count < 1) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "تعداد اشتباه است - ثبت انجام نشد" }))); } if ((FkPacking == Guid.Empty) || (FkPacking == null)) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "سبد انتخاب نشده است - ثبت انجام نشد" }))); } var pp = db.TblPortages.Find(idp); if ((pp.FkSalmali != User._getuserSalMaliDef()) || (pp.IsEnd) || (pp.IsDel)) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "ثبت انجام نشد - غیر مجاز" }))); } #region PEER web_db._Weighing.TblLocation ll1P = null; string peerloc = ""; if (Models.tbls.portage.kindPortage.istofrom(pp.KindCode)) { if (fkcontractpeer.IsEmpty()) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "قرارداد انتخاب نشده است - قبت انجام نشد" }))); } if ((L1peer ?? 0) < 1) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "فاز طرف قراردادانتخاب نشده است - قبت انجام نشد" }))); } peerloc = L1peer + (L2peer.HasValue ? ("-" + L2peer + (L3peer.HasValue ? ("-" + L3peer) : "")) : ""); ll1P = web_sard.Models.cl._ListLocation.SingleOrDefault(a => a.CodeFull == peerloc && a.Isdell == false); if (ll1P == null) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "فاز و سالن و طبقه اشتباه است - ثبت انجام نشد" }))); } } #endregion var ppp = db.TblContractTypes.Find(pp.FkContracttype); var conf = ppp.ConfigASurting(); var pkind = Models.tbls.portage.kindPortage.listkindcontract.Single(a => a.code == pp.KindCode); if ((FkProduct == Guid.Empty) || (FkProduct == null)) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "محصول انتخاب نشده است - ثبت انجام نشد" }))); } if (conf.NeedLocation) { if (conf.LocationLvlRequired > 0) { if ((L1 ?? 0) < 1) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "فاز اشتباه است - ثبت انجام نشد" }))); } } if (conf.LocationLvlRequired > 1) { if ((L2 ?? 0) < 1) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "سالن اشتباه است - ثبت انجام نشد" }))); } } if (conf.LocationLvlRequired > 2) { if ((L3 ?? 0) < 1) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "طبقه اشتباه است - ثبت انجام نشد" }))); } } } var row = db.TblPortageRows.Find(id); if (row == null) { row = new web_db._Weighing.TblPortageRow { Id = Guid.NewGuid(), Date = DateTime.Now, Code = 1, FkPortage = idp, FkContract = fkcontract, FkContractType = ppp.Id, FkUser = User._getuserid().Value, }; db.TblPortageRows.Add(row); } if (L1.HasValue) { row.CodeLocation = L1 + (L2.HasValue ? ("-" + L2 + (L3.HasValue ? ("-" + L3) : "")) : ""); var ll1 = web_sard.Models.cl._ListLocation.SingleOrDefault(a => a.CodeFull == row.CodeLocation && a.Isdell == false); if (ll1 == null) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "فاز و سالن و طبقه اشتباه است - ثبت انجام نشد" }))); } if (ll1.FkP.HasValue) { var ll2 = web_sard.Models.cl._ListLocation.SingleOrDefault(a => a.Id == ll1.FkP); if (ll2.FkP.HasValue) { row.FkLocation1 = ll2.FkP.Value; row.FkLocation2 = ll1.FkP; row.FkLocation3 = ll1.Id; } else { row.FkLocation1 = ll1.FkP.Value; row.FkLocation2 = ll1.Id; } } else { row.FkLocation1 = ll1.Id; } } row.Count = (pkind.Manfi ? -1 : 1) * Count; if (Weight > 0) { row.WeightOne = (float)(((decimal)Weight) / (decimal)row.Count).gadrmotlagh(); row.WeightPalet1 = (decimal)Weight; } row.FkPacking = FkPacking; row.FkProduct = FkProduct; row.Txt = Txt; row.TxtPackingProduct = ((db.TblProducts.Find(FkProduct) ?? new web_db._Weighing.TblProduct()).Title + " " + db.TblPackings.Find(FkPacking).Title).Trim(); db.TblPortageRowInjuries.RemoveRange(db.TblPortageRowInjuries.Where(a => a.FkPortageRow == row.Id)); foreach (var item in FkInjurys) { db.TblPortageRowInjuries.Add(new web_db._Weighing.TblPortageRowInjury { FkPortageRow = row.Id, FkInjury = item }); } #region Peer if (Models.tbls.portage.kindPortage.istofrom(pp.KindCode)) { var porPeer = db.TblPortages.Find(pp._FkPortagePeer); var rowPeer = db.TblPortageRows.Find(row.FkRowPeer); if (rowPeer == null) { rowPeer = new web_db._Weighing.TblPortageRow { Id = Guid.NewGuid(), FkRowPeer = row.Id }; row.FkRowPeer = rowPeer.Id; db.TblPortageRows.Add(rowPeer); } rowPeer.FkPortage = porPeer.Id; rowPeer.FkContractType = porPeer.FkContracttype; rowPeer.FkPacking = row.FkPacking; rowPeer.FkProduct = row.FkProduct; rowPeer.FkContract = fkcontractpeer; rowPeer.Code = row.Code; rowPeer.Date = row.Date; rowPeer.Count = row.Count; rowPeer.Txt = row.Txt; rowPeer.FkUser = row.FkUser; rowPeer.WeightOne = row.WeightOne; rowPeer.WeightPalet1 = row.WeightPalet1; rowPeer.CodeLocation = peerloc; if (ll1P.FkP.HasValue) { var ll2P = web_sard.Models.cl._ListLocation.SingleOrDefault(a => a.Id == ll1P.FkP); if (ll2P.FkP.HasValue) { rowPeer.FkLocation1 = ll2P.FkP.Value; rowPeer.FkLocation2 = ll1P.FkP; rowPeer.FkLocation3 = ll1P.Id; } else { rowPeer.FkLocation1 = ll1P.FkP.Value; rowPeer.FkLocation2 = ll1P.Id; } } else { rowPeer.FkLocation1 = ll1P.Id; } // rowPeer.TxtPackingProduct =row.TxtPackingProduct, } #endregion db.SaveChanges(); return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = true, txt = "ثبت انجام شد" }))); }
public IActionResult Movement(Guid id, long Count, Guid FkNewLocation) { var x = db.TblStoreLogs.Find(id); var contype = cl._ListContractType(User._getuserSalMaliDef()).Single(a => a.Id == x.FkContractType); if (x.Count < 0 || Count > x.Count || Count < 0) { return(Redirect(Request.UrlReferer())); } var row1 = new web_db._Weighing.TblPortageRow { FkContract = x.FkContract, Date = DateTime.Now, FkPacking = x.FkPacking, FkProduct = x.FkProduct, Id = Guid.NewGuid(), Txt = "جابجایی", FkUser = User._getuserid().Value, FkContractType = contype.Id }; { row1.FkLocation1 = x.FkLocation1; row1.FkLocation2 = x.FkLocation2; row1.FkLocation3 = x.FkLocation3; row1.CodeLocation = ( cl._ListLocation.SingleOrDefault(a => a.Id == row1.FkLocation3) ?? cl._ListLocation.SingleOrDefault(a => a.Id == row1.FkLocation2) ?? cl._ListLocation.SingleOrDefault(a => a.Id == row1.FkLocation1) ?? new web_db._Weighing.TblLocation()).CodeFull; row1.Count = -Count; row1.WeightOne = (double?)(x.Weight / x.Count); db.TblPortageRows.Add(row1); } var row2 = new web_db._Weighing.TblPortageRow { FkContract = x.FkContract, Date = DateTime.Now, FkPacking = x.FkPacking, FkProduct = x.FkProduct, Id = Guid.NewGuid(), Txt = "جابجایی", FkUser = User._getuserid().Value, FkContractType = x.FkContractType, }; { { var ll1 = cl._ListLocation.SingleOrDefault(a => a.Id == FkNewLocation); row2.CodeLocation = ll1.CodeFull; if (ll1.FkP.HasValue) { var ll2 = cl._ListLocation.SingleOrDefault(a => a.Id == ll1.FkP); if (ll2.FkP.HasValue) { row2.FkLocation1 = ll2.FkP.Value; row2.FkLocation2 = ll1.FkP; row2.FkLocation3 = ll1.Id; } else { row2.FkLocation1 = ll1.FkP.Value; row2.FkLocation2 = ll1.Id; } } else { row2.FkLocation1 = ll1.Id; } } row2.Count = Count; row2.WeightOne = (double?)(x.Weight / x.Count); db.TblPortageRows.Add(row2); } db.SaveChanges(); Models.cl.refTblStoreLogcontractSardKhane(x.FkContract.Value, db); db.SaveChanges(); return(Redirect(Request.UrlReferer())); return(null); }
public JsonResult AddlistRow(Guid idp, Guid id, int?L1, int?L2, int?L3, long Count, Guid fkcontract, Guid?FkPacking, Guid?FkProduct, Guid[] FkInjurys, string Txt, bool isNimPalet = false) { if (Count < 1) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "تعداد اشتباه است - ثبت انجام نشد" }))); } if ((FkPacking == Guid.Empty) || (FkPacking == null)) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "سبد انتخاب نشده است - ثبت انجام نشد" }))); } var pp = db.TblPortages.Find(idp); if ((pp.FkSalmali != User._getuserSalMaliDef()) || (pp.IsEnd) || (pp.IsDel)) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "ثبت انجام نشد - غیر مجاز" }))); } if (pp._FkPortagePeer.HasValue) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "ثبت انجام نشد - غیر مجاز" }))); } var ppp = db.TblContractTypes.Find(pp.FkContracttype); if (ppp.KindCotractType == web_db._Weighing.TblContractType.KindCotractTypeEnum.ASardKhane) { var conf = ppp.ConfigASardKhane(); var pkind = Models.tbls.portage.kindPortage.listkindcontract.Single(a => a.code == pp.KindCode); if ((FkProduct == Guid.Empty) || (FkProduct == null)) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "محصول انتخاب نشده است - ثبت انجام نشد" }))); } if (conf.NeedLocation) { if (conf.LocationLvlRequired > 0) { if ((L1 ?? 0) < 1) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "فاز اشتباه است - ثبت انجام نشد" }))); } } if (conf.LocationLvlRequired > 1) { if ((L2 ?? 0) < 1) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "سالن اشتباه است - ثبت انجام نشد" }))); } } if (conf.LocationLvlRequired > 2) { if ((L3 ?? 0) < 1) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "طبقه اشتباه است - ثبت انجام نشد" }))); } } } var row = db.TblPortageRows.Find(id); if (row == null) { row = new web_db._Weighing.TblPortageRow { Id = Guid.NewGuid(), Date = DateTime.Now, Code = 1, FkPortage = idp, FkContract = fkcontract, FkContractType = ppp.Id, FkUser = User._getuserid().Value, }; db.TblPortageRows.Add(row); } if (L1.HasValue) { row.CodeLocation = L1 + (L2.HasValue ? ("-" + L2 + (L3.HasValue ? ("-" + L3) : "")) : ""); var ll1 = cl._ListLocation.SingleOrDefault(a => a.CodeFull == row.CodeLocation && a.Isdell == false); if (ll1 == null) { return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = false, txt = "فاز و سالن و طبقه اشتباه است - ثبت انجام نشد" }))); } if (ll1.FkP.HasValue) { var ll2 = cl._ListLocation.SingleOrDefault(a => a.Id == ll1.FkP); if (ll2.FkP.HasValue) { row.FkLocation1 = ll2.FkP.Value; row.FkLocation2 = ll1.FkP; row.FkLocation3 = ll1.Id; } else { row.FkLocation1 = ll1.FkP.Value; row.FkLocation2 = ll1.Id; } } else { row.FkLocation1 = ll1.Id; } } row.Count = (pkind.Manfi ? -1 : 1) * Count; row.FkPacking = FkPacking; row.FkProduct = FkProduct; row.Txt = Txt; row.IsNimPalet = isNimPalet; row.TxtPackingProduct = db.TblProducts.Find(FkProduct).Title + " " + db.TblPackings.Find(FkPacking).Title; db.TblPortageRowInjuries.RemoveRange(db.TblPortageRowInjuries.Where(a => a.FkPortageRow == row.Id)); foreach (var item in FkInjurys) { db.TblPortageRowInjuries.Add(new web_db._Weighing.TblPortageRowInjury { FkPortageRow = row.Id, FkInjury = item }); } db.SaveChanges(); } return(Json(Newtonsoft.Json.JsonConvert.SerializeObject(new { ok = true, txt = "ثبت انجام شد" }))); }
private porret[] ClonePortage(Guid id, int setYear, bool image) { var portage = db.TblPortages.Find(id); var customer = db.TblCustomers.Find(portage.FkCustomer); var Clone = db.TblPortages.SingleOrDefault(a => a.Code == portage.Code && a.KindCode == portage.KindCode && a.FkSalmali == setYear); var contype = db.TblContractTypes.Find(portage.FkContracttype); var contypeclone = db.TblContractTypes.Single(a => a.Code == contype.Code && a.FkSalmali == setYear); var customerClone = db.TblCustomers.SingleOrDefault(a => a.Code == customer.Code && a.FkSalmali == setYear);; if (contypeclone.KindCotractType == web_db._Weighing.TblContractType.KindCotractTypeEnum.ASardKhane) { #region Clone Portage { if (Clone == null) { Clone = new web_db._Weighing.TblPortage { FkSalmali = setYear, Id = Guid.NewGuid(), }; db.TblPortages.Add(Clone); } Clone.FkContracttype = contypeclone.Id; Clone.FkCustomer = customerClone.Id; Clone.CarMashin = portage.CarMashin; Clone.CarRanande = portage.CarRanande; Clone.CarShMashin = portage.CarShMashin; Clone.CarTell = portage.CarTell; Clone.Code = portage.Code; Clone.Date1 = portage.Date1; Clone.Date2 = portage.Date2; Clone.Dateadd1 = portage.Dateadd1; Clone.Dateadd2 = portage.Dateadd2; Clone.Dateedit1 = portage.Dateedit1; Clone.Dateedit2 = portage.Dateedit2; Clone.FkCar = portage.FkCar; Clone.FkUsAdd1 = portage.FkUsAdd1; Clone.FkUsAdd2 = portage.FkUsAdd2; Clone.FkUsEdit1 = portage.FkUsEdit1; Clone.FkUsEdit2 = portage.FkUsEdit2; Clone.FkUsPermit = portage.FkUsPermit; Clone.IsDel = portage.IsDel; Clone.IsEnd = portage.IsEnd; Clone.IsPermitOk = portage.IsPermitOk; Clone.KindCode = portage.KindCode; Clone.KindTitle = portage.KindTitle; Clone.OtcodeResid = portage.OtcodeResid; Clone.PackingCount = portage.PackingCount; Clone.PackingOfWeight = portage.PackingOfWeight; Clone.SmsOk = portage.SmsOk; // Clone.SaveFaktor = portage.SaveFaktor; Clone.SmsVaziat = portage.SmsVaziat; // Clone.SumMoney = portage.SumMoney; Clone.Txt = portage.Txt; Clone.Weight1 = portage.Weight1; Clone.Weight1IsBascul = portage.Weight1IsBascul; Clone.TxtPermit = portage.TxtPermit; Clone.Weight2 = portage.Weight2; Clone.Weight2IsBascul = portage.Weight2IsBascul; Clone.WeightNet = portage.WeightNet; } #endregion #region Clone PortageRows foreach (var item in db.TblPortageRows.Include(a => a.TblPortageRowInjuries).Where(a => a.FkPortage == Clone.Id)) { db.TblPortageRowInjuries.RemoveRange(item.TblPortageRowInjuries); db.TblPortageRows.Remove(item); } foreach (var item in db.TblPortageRows.Include(a => a.TblPortageRowInjuries).Where(a => a.FkPortage == portage.Id)) { var cont = db.TblContracts.Find(item.FkContract); var contClone = db.TblContracts.Single(a => a.Code == cont.Code && a.FkSalmali == setYear); var v = new web_db._Weighing.TblPortageRow { Id = Guid.NewGuid(), FkContractType = Clone.FkContracttype, FkContract = contClone.Id, FkPortage = Clone.Id, Code = item.Code, CodeLocation = item.CodeLocation, Count = item.Count, Date = item.Date, FkLocation1 = item.FkLocation1, FkLocation2 = item.FkLocation2, FkLocation3 = item.FkLocation3, FkPacking = item.FkPacking, FkProduct = item.FkProduct, FkUser = item.FkUser, IsNimPalet = item.IsNimPalet, Txt = item.Txt, WeightOne = item.WeightOne }; db.TblPortageRows.Add(v); foreach (var iteminj in item.TblPortageRowInjuries) { db.TblPortageRowInjuries.Add(new web_db._Weighing.TblPortageRowInjury { FkInjury = iteminj.FkInjury, FkPortageRow = v.Id }); } } #endregion #region Clone images var dbdoc = new web_dbDocument.db_Context(); dbdoc.TblDocuments.RemoveRange(dbdoc.TblDocuments.Where(a => a.FkPortage == Clone.Id || a.FkP == Clone.Id)); if (image) { foreach (var item in dbdoc.TblDocuments.Where(a => a.FkPortage == portage.Id)) { var c = new web_dbDocument.TblDocument { Id = Guid.NewGuid(), Date = item.Date, Image = item.Image, Kind = item.Kind, FkP = Clone.Id, Format = item.Format }; dbdoc.TblDocuments.Add(c); } } #endregion db.SaveChanges(); dbdoc.SaveChanges(); var x = db.TblPortageRows.Where(a => a.FkPortage == Clone.Id); return(x.Select(a => new porret { id = (Guid)a.FkContract, Product = true }).Distinct().ToArray()); } else if (contypeclone.KindCotractType == web_db._Weighing.TblContractType.KindCotractTypeEnum.ASabad) { #region Clone Portage { if (Clone == null) { Clone = new web_db._Weighing.TblPortage { FkSalmali = setYear, Id = Guid.NewGuid(), }; db.TblPortages.Add(Clone); } Clone.FkContracttype = contypeclone.Id; Clone.FkCustomer = customerClone.Id; Clone.CarMashin = portage.CarMashin; Clone.CarRanande = portage.CarRanande; Clone.CarShMashin = portage.CarShMashin; Clone.CarTell = portage.CarTell; Clone.Code = portage.Code; Clone.Date1 = portage.Date1; Clone.Date2 = portage.Date2; Clone.Dateadd1 = portage.Dateadd1; Clone.Dateadd2 = portage.Dateadd2; Clone.Dateedit1 = portage.Dateedit1; Clone.Dateedit2 = portage.Dateedit2; Clone.FkCar = portage.FkCar; Clone.FkUsAdd1 = portage.FkUsAdd1; Clone.FkUsAdd2 = portage.FkUsAdd2; Clone.FkUsEdit1 = portage.FkUsEdit1; Clone.FkUsEdit2 = portage.FkUsEdit2; Clone.FkUsPermit = portage.FkUsPermit; Clone.IsDel = portage.IsDel; Clone.IsEnd = portage.IsEnd; Clone.IsPermitOk = portage.IsPermitOk; Clone.KindCode = portage.KindCode; Clone.KindTitle = portage.KindTitle; Clone.OtcodeResid = portage.OtcodeResid; Clone.PackingCount = portage.PackingCount; Clone.PackingOfWeight = portage.PackingOfWeight; Clone.SmsOk = portage.SmsOk; // Clone.SaveFaktor = portage.SaveFaktor; Clone.SmsVaziat = portage.SmsVaziat; // Clone.SumMoney = portage.SumMoney; Clone.Txt = portage.Txt; Clone.Weight1 = portage.Weight1; Clone.Weight1IsBascul = portage.Weight1IsBascul; Clone.TxtPermit = portage.TxtPermit; Clone.Weight2 = portage.Weight2; Clone.Weight2IsBascul = portage.Weight2IsBascul; Clone.WeightNet = portage.WeightNet; } #endregion #region Clone PortageRows foreach (var item in db.TblPortageRows.Where(a => a.FkPortage == Clone.Id)) { db.TblPortageRowInjuries.RemoveRange(db.TblPortageRowInjuries.Where(a => a.FkPortageRow == item.Id)); db.TblPortageRows.Remove(item); } foreach (var item in db.TblPortageRows.Where(a => a.FkPortage == portage.Id)) { var cont = db.TblContracts.Find(item.FkContract); var contClone = db.TblContracts.Single(a => a.Code == cont.Code && a.FkSalmali == setYear); var v = new web_db._Weighing.TblPortageRow { Id = Guid.NewGuid(), FkContractType = Clone.FkContracttype, FkContract = contClone.Id, FkPortage = Clone.Id, Code = item.Code, CodeLocation = item.CodeLocation, Count = item.Count, Date = item.Date, FkLocation1 = item.FkLocation1, FkLocation2 = item.FkLocation2, FkLocation3 = item.FkLocation3, FkPacking = item.FkPacking, FkProduct = item.FkProduct, FkUser = item.FkUser, IsNimPalet = item.IsNimPalet, Txt = item.Txt, WeightOne = item.WeightOne }; db.TblPortageRows.Add(v); foreach (var iteminj in db.TblPortageRowInjuries.Where(a => a.FkPortageRow == item.Id)) { db.TblPortageRowInjuries.Add(new web_db._Weighing.TblPortageRowInjury { FkInjury = iteminj.FkInjury, FkPortageRow = v.Id }); } } #endregion #region Clone images var dbdoc = new web_dbDocument.db_Context(); dbdoc.TblDocuments.RemoveRange(dbdoc.TblDocuments.Where(a => a.FkPortage == Clone.Id)); foreach (var item in dbdoc.TblDocuments.Where(a => a.FkPortage == portage.Id)) { var c = new web_dbDocument.TblDocument { Id = Guid.NewGuid(), FkP = Clone.Id, Date = item.Date, Image = item.Image, Kind = item.Kind }; dbdoc.TblDocuments.Add(c); } #endregion dbdoc.SaveChanges(); db.SaveChanges(); return(new porret[] { new porret { id = contypeclone.Id, Product = false } }); } return(null); }
public PortageRow(web_db._Weighing.TblPortageRow row, web_db.sardweb_Context db, bool portage, bool peer = false) { this.Code = row.Code; this.Count = row.Count.gadrmotlagh(); this.WeightOne = row.WeightOne; this.Weight = WeightOne > 0 ? Math.Round((this.WeightOne * this.Count) ?? 0) : null; this.Date = row.Date; this.FkPacking = row.FkPacking; this.FkProduct = row.FkProduct; this.Packing = (web_sard.Models.cl._ListPacking.SingleOrDefault(a => a.Id == row.FkPacking) ?? new web_db._Weighing.TblPacking()).Title; this.Product = (web_sard.Models.cl._ListProduct.SingleOrDefault(a => a.Id == row.FkProduct) ?? new web_db._Weighing.TblProduct()).Title; this.Id = row.Id; this.FkContract = row.FkContract; this.CodeContract = (db.TblContracts.Find(row.FkContract) ?? new web_db._Weighing.TblContract()).Code; this.Txt = row.Txt; this.IsNimPalet = row.IsNimPalet; this.ListInjurys = db.TblPortageRowInjuries.Where(a => a.FkPortageRow == row.Id).Select(a => a.FkInjury).ToArray(); this.ListInjurysTbl = (from n in db.TblPortageRowInjuries.Include(a => a.FkInjuryNavigation) where n.FkPortageRow == row.Id let inj = n.FkInjuryNavigation select new web_sard.Models.tbls.alltbl { code = inj.Ord, key = inj.Id, title = inj.Title }).ToList(); this.CodeLocation = row.CodeLocation; if (this.CodeLocation.IsEmpty() == false) { var z = this.CodeLocation.Split("-"); if (z.Count() > 0) { L1 = Convert.ToInt32(z[0]); } if (z.Count() > 1) { L2 = Convert.ToInt32(z[1]); } if (z.Count() > 2) { L3 = Convert.ToInt32(z[2]); } } UserAddStr = db.TblUsers.Find(row.FkUser).Title; this.fkportage = row.FkPortage; tblportage = new portage(); if (this.fkportage.HasValue && portage) { tblportage = new portage(db.TblPortages.Find(this.fkportage), db); } rowPeerSard = new ASardKhane.Models.tbls.portage.PortageRow(); rowPeerAnbar = new ASabad.Models.tbls.portage.PortageRow(); ListProducts = new List <web_db._Weighing.TblProduct>(); ListPackings = new List <web_db._Weighing.TblPacking>(); if (peer == true && row.FkRowPeer.HasValue) { var por = new portage(db.TblPortages.Find(this.fkportage), db); var v = db.TblPortageRows.Find(row.FkRowPeer); if (v != null) { if (por.KindCode == (int)Models.tbls.portage.kindPortage.kindPortageEnum.InFromSardkhane || por.KindCode == (int)Models.tbls.portage.kindPortage.kindPortageEnum.OutToSardkhane) { rowPeerSard = new web_sard.Areas.ASardKhane.Models.tbls.portage.PortageRow(v, db, false, false); } else if (por.KindCode == (int)Models.tbls.portage.kindPortage.kindPortageEnum.InFromAnbar || por.KindCode == (int)Models.tbls.portage.kindPortage.kindPortageEnum.OutToAnbar) { rowPeerAnbar = new web_sard.Areas.ASabad.Models.tbls.portage.PortageRow(v, db, false); } } } }
public IActionResult CreateIN(Guid idtype, int kindPortage, Models.tbls.portage.portage model) { ModelState.Remove("Weight2"); ModelState.Remove("Date2date"); ModelState.Remove("Date2time"); ModelState.Remove("Customer.Mob"); ModelState.Remove("Customer.NationalCode"); ModelState.Remove("Customer.Code"); ModelState.Remove("Customer.Title"); ModelState.Remove("Customer.Id"); ModelState.Remove("FkCarTbl"); var typecontract = db.TblContractTypes.Find(idtype); if (typecontract.KindCotractType == web_db._Weighing.TblContractType.KindCotractTypeEnum.ABaskul) { var conf = typecontract.ConfigABaskul(); if (ModelState.IsValid && ((model.ListRows.FirstOrDefault() ?? new Models.tbls.portage.PortageRow()).FkPacking.IsEmpty() == false)) { var x = db.TblPortages.Find(model.Id); if (x == null) { model.Code = (db.TblPortages.Where(a => a.FkSalmali == User._getuserSalMaliDef() && a.FkContracttype == idtype && a.KindCode == kindPortage).Max(a => (long?)a.Code) ?? 0) + 1; x = new web_db._Weighing.TblPortage { FkSalmali = User._getuserSalMaliDef(), Code = model.Code, Dateadd1 = DateTime.Now, FkContracttype = idtype, FkUsAdd1 = User._getuserid().Value, Id = model.Id, KindCode = kindPortage, KindTitle = "توزین", }; db.TblPortages.Add(x); } else { x.Dateedit1 = DateTime.Now; x.FkUsEdit1 = User._getuserid().Value; } var dbdoc = new web_dbDocument.db_Context(); x.CarMashin = model.CarMashin; x.CarRanande = model.CarRanande; x.CarShMashin = model.CarShMashin; x.CarTell = model.CarTell; x.FkCar = model.FkCar; x.CarMashin = cl._ListCar.Single(a => a.Id == model.FkCar).Title; x.FkCustomer = model.FkCustomer; if (x.Weight1 != model.Weight1) { var z = cl.captureDorbinBaskul(); if (z != null) { dbdoc.TblDocuments.Add(new web_dbDocument.TblDocument { Date = DateTime.Now, FkP = x.Id, Id = Guid.NewGuid(), Image = z, Kind = "InBaskul", Format = "" }); } } x.Weight1 = model.Weight1; x.Weight1IsBascul = model.Weight1IsBascul; x.Txt = model.Txt; x.Date1 = model.Date1date.ToDate().AddHours(model.Date1time.Hours).AddMinutes(model.Date1time.Minutes); x.IsDel = false; x.IsPermitOk = null; x.FkUsPermit = null; x.TxtPermit = ""; var c = db.TblPortageRows.FirstOrDefault(a => a.FkPortage == x.Id); if (c == null) { c = new web_db._Weighing.TblPortageRow { Id = Guid.NewGuid(), Code = 1, Count = 0, Date = DateTime.Now, FkPortage = x.Id, FkPacking = model.ListRows.First().FkPacking, FkUser = User._getuserid().Value, FkContractType = typecontract.Id, }; db.TblPortageRows.Add(c); } else { c.FkPacking = model.ListRows.First().FkPacking; } c.TxtPackingProduct = (c.FkPacking.HasValue ? (db.TblPackings.Find(c.FkPacking).Title) : ""); ViewBag.error = checkportage(x); if (((string)ViewBag.error).IsEmpty()) { x.Weight1 = model.Weight1; x.WeightNet = model.Weight2.HasValue?(x.Weight1 - x.Weight2).gadrmotlagh():null; db.SaveChanges(); dbdoc.SaveChanges(); return(RedirectToAction("index", new { idtype = x.FkContracttype })); } } ViewData["type"] = db.TblContractTypes.Find(idtype); ViewData["kindPortage"] = kindPortage; ViewData["listcustumer"] = cus(typecontract, model); return(View(model)); } return(null); }
public PortageRow(web_db._Weighing.TblPortageRow row, web_db.sardweb_Context db, bool portage, bool peer = false, bool __Dif = false) { this.Code = row.Code; this.Count = row.Count.gadrmotlagh(); this.WeightOne = row.WeightOne; this.Date = row.Date; this.FkPacking = row.FkPacking; this.FkProduct = row.FkProduct; this.Packing = (web_sard.Models.cl._ListPacking.SingleOrDefault(a => a.Id == row.FkPacking) ?? new web_db._Weighing.TblPacking()).Title; this.Product = (web_sard.Models.cl._ListProduct.SingleOrDefault(a => a.Id == row.FkProduct) ?? new web_db._Weighing.TblProduct()).Title; this.Id = row.Id; this.FkContract = row.FkContract; this.CodeContract = (db.TblContracts.Find(row.FkContract) ?? new web_db._Weighing.TblContract()).Code; this.Txt = row.Txt; this.IsNimPalet = row.IsNimPalet; this.ListInjurys = db.TblPortageRowInjuries.Where(a => a.FkPortageRow == row.Id).Select(a => a.FkInjury).ToArray(); this.ListInjurysTbl = (from n in db.TblPortageRowInjuries.Include(a => a.FkInjuryNavigation) where n.FkPortageRow == row.Id let inj = n.FkInjuryNavigation select new web_sard.Models.tbls.alltbl { code = inj.Ord, key = inj.Id, title = inj.Title }).ToList(); this.CodeLocation = row.CodeLocation; if (this.CodeLocation.IsEmpty() == false) { var z = this.CodeLocation.Split("-"); if (z.Count() > 0) { L1 = Convert.ToInt32(z[0]); } if (z.Count() > 1) { L2 = Convert.ToInt32(z[1]); } if (z.Count() > 2) { L3 = Convert.ToInt32(z[2]); } } UserAddStr = db.TblUsers.Find(row.FkUser).Title; this.fkportage = row.FkPortage; tblportage = new portage(); if (this.fkportage.HasValue && (portage || __Dif)) { tblportage = new portage(db.TblPortages.Find(this.fkportage), db); } if (__Dif) { WeightOneOther = (from n in db.TblPortageRows.Include(a => a.FkPortageNavigation) let p = n.FkPortageNavigation where (p.IsDel == false) && (p.IsEnd == true) && p.Id != fkportage && (p.KindCode == tblportage.KindCode) && (n.FkContract == FkContract && n.FkProduct == FkProduct && n.FkPacking == FkPacking) select n.WeightOne).Average(); } this.Txt = row.Txt; if (peer == true && row.FkRowPeer.HasValue) { rowPeer = new web_sard.Areas.ASurting.Models.tbls.portage.PortageRow(db.TblPortageRows.Find(row.FkRowPeer), db, false, false); } }