Пример #1
0
        public static bool IsPermitOK(web_db._Weighing.TblPortage por, web_db.sardweb_Context db)
        {
            if (por.KindCode == (int)portage.kindPortage.kindPortageEnum.In)
            {
                long?   countForIn;
                decimal?weightForIn;
                cl.GetMojavez(por.FkCustomer, por.FkContracttype, db, true, out countForIn, out weightForIn);


                countForIn  -= por.PackingCount;
                weightForIn -= por.WeightNet;


                if (countForIn < 0 || weightForIn < 0)
                {
                    return(false);
                }
            }

            if (por.KindCode == (int)portage.kindPortage.kindPortageEnum.Out)
            {
                long?   countForOut;
                decimal?weightForOut;
                cl.GetMojavez(por.FkCustomer, por.FkContracttype, db, false, out countForOut, out weightForOut);
                countForOut  += por.PackingCount;
                weightForOut += por.WeightNet;


                if (countForOut < 0 || weightForOut < 0)
                {
                    return(false);
                }
            }
            return(true);
        }
Пример #2
0
        public store(web_db._Weighing.TblStoreLog n, web_db.sardweb_Context db)
        {
            var contract     = db.TblContracts.Find(n.FkContract) ?? new web_db._Weighing.TblContract();
            var contracttype = db.TblContractTypes.Find(n.FkContractType);
            var loc3         = db.TblLocations.SingleOrDefault(z => z.Id == n.FkLocation3);
            var loc2         = db.TblLocations.SingleOrDefault(z => z.Id == n.FkLocation2);
            var loc1         = db.TblLocations.SingleOrDefault(z => z.Id == n.FkLocation1);


            this.id          = n.Id;
            this.fklocation1 = n.FkLocation1;
            this.fklocation2 = n.FkLocation2;
            this.fklocation3 = n.FkLocation3;
            this.fkcontract  = n.FkContract;
            this.fkPacking   = n.FkPacking;
            this.fkProdoct   = n.FkProduct;
            this.count       = n.Count;
            this.Weight      = n.Weight;

            this.countin  = n.CountIn;
            this.Weightin = n.WeightIn;


            this.countout  = n.CountOut;
            this.Weightout = n.WeightOut;

            this.location     = (loc3 ?? loc2 ?? loc1 ?? new web_db._Weighing.TblLocation()).CodeFull;
            this.contracttype = contracttype.Title;
            this.customer     = (db.TblCustomers.Find(contract.FkCustomer) ?? new web_db.TblCustomer()).Title;
            this.contract     = contract.Code;
            this.Packing      = (db.TblPackings.SingleOrDefault(z => z.Id == n.FkPacking) ?? new web_db._Weighing.TblPacking()).Title;
            this.Prodoct      = (db.TblProducts.SingleOrDefault(z => z.Id == n.FkProduct) ?? new web_db._Weighing.TblProduct()).Title;
        }
Пример #3
0
        public IActionResult Confirm(Guid id, web_CusDB.tblReqContractRow.ResEnum kind)
        {
            var dbcus = new web_CusDB.db_Context();
            var db    = new web_db.sardweb_Context();

            ViewBag.kind = kind;
            var x = dbcus.tblReqContracts.Include(a => a.tblReqContractRows).Include(a => a.tblCus).SingleOrDefault(a => a.Id == id);

            x._LasttblReqContractRows = x.tblReqContractRows.OrderByDescending(a => a.Date).First();



            ViewBag.ash = web_CusDB.tblCus.checkCodeCusMain(x.tblCus);

            // var x = db.TblQueus.Find(id);
            // if ((x.WeightConfirm??0)==0)
            // {
            //     x.WeightConfirm = x.Weight;
            // }
            //var shname= _mySettings.GetValue<string>("txtPortagesms");

            ViewBag.Txtsms = @$ "وضعیت درخواست شما به ({kind.ToKPvalusAttr().Description}) تغییر کرد. 
کد درخواست: {x.Code}
";
            return(View(x._LasttblReqContractRows));
        }
Пример #4
0
            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 + ")";
            }
Пример #5
0
        public IActionResult contractAc(Guid id)
        {
            var db = new web_db.sardweb_Context();

            var kiloview = true;                                                                                                                                         // Models.cl._conf.Any(a => a.Key == web_db.TblConf.KeyEnum.US_WeightViewEnable && a.Value == true.ToString());
            var x        = from n in db.TblPortageRows.Include(a => a.FkContractNavigation).Include(a => a.TblPortageRowInjuries).ThenInclude(a => a.FkInjuryNavigation) //.ThenInclude(a=>a.FkCustomerNavigation)
                           where n.FkContract == id
                           orderby n.Date descending
                           select
                           new web_sard.Models.tbls.portage.store
            {
                date     = n.Date,
                contract = n.FkContractNavigation.Code,
                // contracttype=n.FkContractNavigation.contr
                count    = n.Count,
                countin  = n.Count > 0 ? (long?)n.Count : null,
                countout = n.Count < 0 ? (long?)n.Count : null,
                // customer=n.FkContractNavigation.FkCustomerNavigation.Title,
                fklocation1 = n.FkLocation1,
                fklocation2 = n.FkLocation2,
                fklocation3 = n.FkLocation3,
                fkPacking   = n.FkPacking,
                fkProdoct   = n.FkProduct,
                location    = n.CodeLocation,
                Packing     = (db.TblPackings.SingleOrDefault(a => a.Id == n.FkPacking) ?? new web_db._Weighing.TblPacking()).Title,
                Prodoct     = (db.TblProducts.SingleOrDefault(a => a.Id == n.FkProduct) ?? new web_db._Weighing.TblProduct()).Title,
                Weight      = kiloview ? ((decimal?)n.WeightOne * n.Count) : null,
                Weightin    = kiloview ? (n.Count > 0 ? ((decimal?)n.WeightOne * n.Count) : null) : null,
                Weightout   = kiloview ? (n.Count < 0 ? ((decimal?)n.WeightOne * n.Count) : null) : null,
                txt         = string.Join(",", n.TblPortageRowInjuries.Select(a => a.FkInjuryNavigation.Title)) + " " + n.Txt
            };

            return(View(x.AsEnumerable()));
        }
Пример #6
0
        public static bool RemoveFullPortage(Guid id, web_db.sardweb_Context db)
        {
            var portage = db.TblPortages.Find(id);


            var contypeclone = db.TblContractTypes.Single(a => a.Id == portage.FkContracttype);


            #region rem PortageRows


            foreach (var item in db.TblPortageRows.Where(a => a.FkPortage == portage.Id))
            {
                db.TblPortageRowInjuries.RemoveRange(db.TblPortageRowInjuries.Where(a => a.FkPortageRow == item.Id));
                db.TblPortageRows.Remove(item);
            }


            #endregion


            #region rem images
            var dbdoc = new web_dbDocument.db_Context();
            dbdoc.TblDocuments.RemoveRange(dbdoc.TblDocuments.Where(a => a.FkPortage == portage.Id));
            db.TblPortages.Remove(portage);
            #endregion
            db.SaveChanges();
            dbdoc.SaveChanges();



            return(true);
        }
Пример #7
0
        public IActionResult Edit(Guid?id, web_db._Weighing.TblContractType.KindCotractTypeEnum?kindcontract = null)
        {
            var dbcus = new web_CusDB.db_Context();
            var db    = new web_db.sardweb_Context();


            var x = dbcus.tblReqContracts.Include(a => a.tblReqContractRows).Include(a => a.tblCus).SingleOrDefault(a => a.Id == id);

            if (x == null)
            {
                try
                {
                    x = new web_CusDB.tblReqContract()
                    {
                        KindContract = kindcontract.Value
                    };
                }
                catch
                {
                    return(RedirectToAction(nameof(List)));
                }
            }
            else
            {
                x._LasttblReqContractRows = x.tblReqContractRows.OrderByDescending(a => a.Date).First();
                x._Contract = db.TblContracts.Find(x.ContractId);
            }
            return(View(x));
        }
Пример #8
0
        public IActionResult SyncDoc()
        {
            {
                using (var dbdoc = new web_dbDocument.db_Context())
                {
                    using (var db = new web_db.sardweb_Context())
                    {
                        foreach (var item in db.TblDocuments.Take(100))
                        {
                            dbdoc.TblDocuments.Add(new web_dbDocument.TblDocument
                            {
                                Date      = item.Date,
                                FkP       = item.FkP,
                                FkPortage = item.FkPortage,
                                fkuser    = item.fkuser,
                                Format    = item.Format,
                                Id        = item.Id,
                                Image     = item.Image,
                                Kind      = item.Kind
                            });
                            db.Remove(item);
                        }

                        db.SaveChanges();
                        dbdoc.SaveChanges();
                    }
                }
            }



            return(RedirectToAction("Index"));
        }
Пример #9
0
        public static void GetMojavez(Guid custumer, Guid contracttype, web_db.sardweb_Context db, bool inn, out long?countFor, out decimal?weightFor)
        {
            var x       = db.TblContracts.Where(a => a.FkCustomer == custumer && a.FkContractType == contracttype);
            var contype = db.TblContractTypes.Find(contracttype);

            if (contype.KindCotractType == web_db._Weighing.TblContractType.KindCotractTypeEnum.ASabad)

            {
                var conf = contype.ConfigASabad();

                if (inn)
                {
                    countFor  = (x.Sum(a => a.CountMaxIn) ?? 0).gadrmotlagh();
                    countFor -= (x.Sum(a => a.SumInCount) ?? 0).gadrmotlagh();
                    weightFor = null;
                }
                else
                {
                    var v1 = x.Sum(a => a.CountMaxOut ?? 0).gadrmotlagh();
                    var v2 = (x.Sum(a => a.SumOutCount) ?? 0).gadrmotlagh();
                    countFor  = v1;
                    countFor -= v2;


                    weightFor = null;
                }
                return;
            }

            countFor = null;

            weightFor = null;
        }
Пример #10
0
        public locationchart(web_db.sardweb_Context db, web_db._Weighing.TblLocation row)
        {
            this.code   = row.Code;
            this.id     = row.Id;
            this.title  = row.Title;
            this.wight  = row.Wight;
            this.childs = db.TblLocations.Where(a => a.FkP == row.Id).OrderBy(a => a.Code).Select(a => new locationchart(db, a)).ToList();

            this.CodeFull = row.CodeFull;
        }
Пример #11
0
 public mandeHesabclass(IEnumerable <web_db._Weighing.TblPortageRow> x, web_db.sardweb_Context db, bool c = false)
 {
     if (x.Any() == false)
     {
         return;
     }
     var contrtt      = x.Select(a => a.FkContract).Distinct();
     var contr        = db.TblContracts.Where(a => contrtt.Contains(a.Id));
     var ContractType = db.TblContractTypes.Single(a => a.Id == contr.First().FkContractType);
 }
Пример #12
0
        /// <summary>
        /// Initializes a new instance of the <see cref="user"/> class.
        /// </summary>
        /// <param name="model">The model<see cref="web_db.TblUser"/>.</param>
        /// <param name="db">The db<see cref="web_db.sardweb_Context"/>.</param>
        public user(web_db.TblUser model, web_db.sardweb_Context db)
        {
            Id            = model.Id;
            Mob           = model.Mob;
            Password      = model.Password;
            Roles         = model.Roles.Split(",");
            Title         = model.Title;
            Username      = model.Username;
            this.isActive = model.IsActive;

            Permis = db.TblUserPermis.Where(a => a.FkUser == model.Id).ToArray();
        }
Пример #13
0
        public IActionResult Index()
        {
            var db = new web_db.sardweb_Context();

            ViewBag.htmlmain = (db.TblConf.SingleOrDefault(a => a.Key == web_db.TblConf.KeyEnum.US_htmlmain) ?? new web_db.TblConf()).Value;

            ViewBag.cars = db.TblPortages.Include(a => a.FkContracttypeNavigation).Where(a => a.IsDel == false && a.Date1.Date == DateTime.Now.Date).ToList();

            ViewBag.carEntezar = (long)(db.TblPortages.Where(a => a.Date2.HasValue && a.IsEnd).OrderByDescending(a => a.Date1).Take(100).AsEnumerable().Select(a => a.Date2.Value - a.Date1).Average(a => a.Ticks));


            return(View());
        }
Пример #14
0
        public static void _refstoreOne(web_db.sardweb_Context db, Guid fkportage)
        {
            var x       = db.TblPortageRows.Where(a => a.FkPortage == fkportage);
            var por     = db.TblPortages.Find(fkportage);
            var contype = web_sard.Models.cl._ListContractType(por.FkSalmali).Single(a => a.Id == por.FkContracttype);

            por.WeightNet = (por.Weight1 - por.Weight2).gadrmotlagh();
            if (Models.tbls.portage.kindPortage.listkindcontract.Single(a => a.code == por.KindCode).Manfi)
            {
                por.WeightNet = -por.WeightNet;
            }

            por.PackingCount = x.Sum(a => a.Count);

            por.PackingOfWeight = (double?)(por.WeightNet / por.PackingCount).gadrmotlagh();



            por.OtcodeResid = "";
            db.TblPortageMoneys.RemoveRange(db.TblPortageMoneys.Where(a => a.FkPortage == por.Id));


            decimal ss = 0;

            foreach (var item in x)
            {
                var sc = Models.cl.getWeightScale(item.FkProduct, item.FkPacking);


                item.WeightOne = sc * por.PackingOfWeight;
                if (item.WeightOne.HasValue)
                {
                    ss += (decimal)item.WeightOne * item.Count;
                }
            }


            foreach (var item in x)
            {
                if (item.WeightOne.HasValue)
                {
                    item.WeightOne = item.WeightOne * (double)(por.WeightNet / ss);
                }
            }



            db.SaveChanges();
            _refstoreTow(db, fkportage);
        }
Пример #15
0
        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);
            }
        }
Пример #16
0
        public Product(web_db._Weighing.TblProduct row, web_db.sardweb_Context db, int salmali)
        {
            this.id       = row.Id;
            this.isActive = row.IsActive;
            this.title    = row.Title;
            this.code     = row.Code;

            this.OtcodeKala           = row.OtcodeKala;
            this.OtcodeKalaAcc        = row.OtcodeKalaAcc;
            this.OtcodeVahedShomaresh = row.OtcodeVahedShomaresh;
            {
                InContract  = db.TblContracts.Include(a => a.TblContractProducts).Where(a => a.FkSalmali == salmali && a.TblContractProducts.Any(S => S.FkProduct == this.id)).Sum(a => a.WeightMaxIn) ?? 0;
                OutContract = db.TblContracts.Include(a => a.TblContractProducts).Where(a => a.FkSalmali == salmali && a.TblContractProducts.Any(S => S.FkProduct == this.id)).Sum(a => a.WeightMaxOut) ?? 0;
            }
        }
Пример #17
0
 public static bool RemoveFullContract(Guid id, web_db.sardweb_Context db)
 {
     try
     {
         db.TblContractPackings.RemoveRange(db.TblContractPackings.Where(a => a.FkContract == id));
         db.TblContractProducts.RemoveRange(db.TblContractProducts.Where(a => a.FkContract == id));
         db.TblContracts.Remove(db.TblContracts.Find(id));
         db.SaveChanges();
         return(true);
     }
     catch
     {
         return(false);
     }
 }
Пример #18
0
        public IActionResult Confirm(web_CusDB.tblReqContractRow model, bool sms,
                                     string Txtsms, Guid[] mahsulss, web_CusDB.tblReqContractRow.ResEnum kind)
        {
            var dbcus = new web_CusDB.db_Context();
            var db    = new web_db.sardweb_Context();

            var x = dbcus.tblReqContracts.Include(a => a.tblReqContractRows)
                    .Include(a => a.tblCus).SingleOrDefault(a => a.Id == model.Id);

            x._LasttblReqContractRows = x.tblReqContractRows.OrderByDescending(a => a.Date).First();

            var z = db.TblProducts.Where(a => mahsulss.Contains(a.Id)).Select(a => a.Title).ToList();

            z.AddRange(db.TblPackings.Where(a => mahsulss.Contains(a.Id)).Select(a => a.Title).ToList());

            model.CodeMahsuls = mahsulss.ToJson();
            model.Mahsuls     = string.Join(',', z);

            dbcus.tblReqContractRows.Add(new  web_CusDB.tblReqContractRow
            {
                Id               = Guid.NewGuid(),
                CodeMahsuls      = model.CodeMahsuls,
                Mahsuls          = model.Mahsuls,
                Date             = DateTime.Now,
                ResDate          = DateTime.Now,
                ResTxt           = model.ResTxt,
                ResUserId        = User._getuserid(),
                TblReqContractId = x.Id,
                Vaziat           = kind,
                WeightCount      = model.WeightCount
            });
            //var row = db.tbl.Find(id);
            //row.WeightConfirm = WeightConfirm;
            //row.KindQueu = kind;
            //row.TxtReq = TxtReq;

            if (sms && Txtsms.IsEmpty() == false && Txtsms.Length > 5)
            {
                Models.cl._listSmsForSend.Add(new Models.cl.SmsForSend
                {
                    number = x.tblCus.Mob,
                    txt    = Txtsms
                });
            }

            dbcus.SaveChanges();
            return(RedirectToAction(nameof(List)));
        }
Пример #19
0
        public customerAcc(web_db.TblCustomer row, web_db.sardweb_Context db)
        {
            this.Code          = row.Code;
            this.Id            = row.Id;
            this.IdOtherSystem = row.IdOtherSystem;
            this.Mob           = row.Mob;
            this.NationalCode  = row.NationalCode;
            this.Title         = row.Title;
            this.codesContract = (row.TblContracts ?? (ICollection <web_db._Weighing.TblContract>)db.TblContracts.Where(a => a.FkCustomer == row.Id)).Select(a => a.Code).ToArray();


            //var x = from n in db.TblPortageMoneys
            //        where n.FkContractType == contype && n.FkCustomer == row.Id
            //        group n by n.Kind into m
            //        select new customerAccRow { Kind =m.Key, Weight=m.Sum(a=>a.Weight), PriceSum=m.Sum(a=>a.PriceSum)};
        }
Пример #20
0
        internal async Task _loginAsync(web_db.TblUser x, web_db.sardweb_Context db)
        {
            var claims = new List <Claim>
            {
                new Claim(ClaimTypes.NameIdentifier, x.Id.ToString()),
                new Claim(ClaimTypes.Name, x.Username ?? ""),
                new Claim(ClaimTypes.Role, x.Roles ?? ""),
                new Claim(ClaimTypes.GivenName, x.Title ?? ""),
                new Claim("Years", db.TblUserSals.Where(a => a.FkUser == x.Id).Select(a => a.FkSal).ToArray().ToJson()),
                new Claim(ClaimTypes.Dsa, x.Salmalidef.ToString()),
                new Claim("Permis", Newtonsoft.Json.JsonConvert.SerializeObject(db.TblUserPermis.Where(a => a.FkUser == x.Id)).ToString()),
                new Claim("userBalanceCode", x.BalanceCode.ToString()),
            };

            ClaimsIdentity  userIdentity = new ClaimsIdentity(claims, "login");
            ClaimsPrincipal principal    = new ClaimsPrincipal(userIdentity);
            await HttpContext.SignInAsync(principal);
        }
Пример #21
0
 public packing(web_db._Weighing.TblPacking row, web_db.sardweb_Context db, int salmali)
 {
     this.Code                 = row.Code;
     this.Id                   = row.Id;
     this.IsActive             = row.IsActive;
     this.Title                = row.Title;
     this.WightEmpty           = row.WightEmpty;
     this.WightFull            = row.WightFull;
     this.WightScale           = row.WightScale;
     this.ForContractType      = row.ForContractType();
     this.OtcodeKala           = row.OtcodeKala;
     this.OtcodeKalaAcc        = row.OtcodeKalaAcc;
     this.OtcodeVahedShomaresh = row.OtcodeVahedShomaresh;
     this.IsNotAc              = row.IsNotAc ?? false;
     {
         InContract  = db.TblContracts.Include(a => a.TblContractPackings).Where(a => a.FkSalmali == salmali && a.TblContractPackings.Any(S => S.FkPacking == this.Id)).Sum(a => a.CountMaxIn) ?? 0;
         OutContract = db.TblContracts.Include(a => a.TblContractPackings).Where(a => a.FkSalmali == salmali && a.TblContractPackings.Any(S => S.FkPacking == this.Id)).Sum(a => a.CountMaxOut) ?? 0;
     }
 }
Пример #22
0
        public IActionResult Index()
        {
            var kiloview = true; // Models.cl._conf.Any(a => a.Key == web_db.TblConf.KeyEnum.US_WeightViewEnable && a.Value == true.ToString());
            var db       = new web_db.sardweb_Context();
            var us       = new web_CusDB.db_Context().TblCustomers.Single(a => a.Id == User._getuserId());


            var x = (from n in db.TblContracts
                     let s = db.TblSalMalis.FirstOrDefault(a => a.Id == n.FkSalmali)
                             let c = db.TblCustomers.FirstOrDefault(a => a.Id == n.FkCustomer)
                                     where
                                     ((c.NationalCode.Equals(us.CodeMelli)) && (c.Mob.Trim().Equals(us.Mob.Trim())))

                                     && (s.IsOrginal == true)
                                     select new web_sard.Models.tbls.contract.contract(n, db, true, false, null, kiloview)).ToList();

            ViewBag.sals = db.TblSalMalis.Where(a => a.IsOrginal == true).OrderByDescending(a => a.SalAz).ToList();
            return(View(x));
        }
Пример #23
0
        public static bool RemoveFullPortage(Guid id, web_db.sardweb_Context db)
        {
            var portage = db.TblPortages.Find(id);


            var contypeclone = db.TblContractTypes.Single(a => a.Id == portage.FkContracttype);


            #region rem PortageRows


            foreach (var item in db.TblPortageRows.Where(a => a.FkPortage == portage.Id))
            {
                db.TblPortageRowInjuries.RemoveRange(db.TblPortageRowInjuries.Where(a => a.FkPortageRow == item.Id));
                db.TblPortageRows.Remove(item);
            }


            #endregion


            #region rem images
            var dbdoc = new web_dbDocument.db_Context();

            dbdoc.TblDocuments.RemoveRange(dbdoc.TblDocuments.Where(a => a.FkPortage == portage.Id));
            db.TblPortages.Remove(portage);
            #endregion
            db.SaveChanges();
            dbdoc.SaveChanges();

            if (contypeclone.KindCotractType == web_db._Weighing.TblContractType.KindCotractTypeEnum.ASardKhane)
            {
                var x = db.TblPortageRows.Where(a => a.FkPortage == portage.Id);
                foreach (var item in x.Select(a => a.FkContract).Distinct())
                {
                    Models.cl.refTblStoreLogcontractSardKhane(item.Value, db);
                }
            }


            return(true);
        }
Пример #24
0
        //public static bool RemoveFullPortage(Guid id, web_db.sardweb_Context db)
        //{
        //    var portage = db.TblPortages.Find(id);


        //    var contypeclone = db.TblContractTypes.Single(a => a.Id == portage.FkContracttype);


        //    #region rem PortageRows


        //    foreach (var item in db.TblPortageRows.Where(a => a.FkPortage == portage.Id))
        //    {
        //        db.TblPortageRowInjuries.RemoveRange(db.TblPortageRowInjuries.Where(a => a.FkPortageRow == item.Id));
        //        db.TblPortageRows.Remove(item);

        //    }


        //    #endregion


        //    #region rem images

        //    db.TblDocuments.RemoveRange(db.TblDocuments.Where(a => a.FkPortage == portage.Id));
        //    db.TblPortages.Remove(portage);
        //    #endregion
        //    db.SaveChanges();

        //    if (contypeclone.KindCotractType == web_db._Weighing.TblContractType.KindCotractTypeEnum.ASardKhane)
        //    {
        //        var x = db.TblPortageRows.Where(a => a.FkPortage == portage.Id);
        //        foreach (var item in x.Select(a => a.FkContract).Distinct())
        //        {
        //            Models.cl.refTblStoreLogcontractSardKhane(item.Value, db);
        //        }
        //    }

        //    else if (contypeclone.KindCotractType == web_db._Weighing.TblContractType.KindCotractTypeEnum.ASabad)

        //    {
        //        Models.cl.refTblStoreLogcontractTypeSabad(contypeclone.Id , db);

        //    }


        //    return true;
        //}
        //public static bool RemoveFullContract(Guid id, web_db.sardweb_Context db)
        //{
        //    try
        //    {
        //        db.TblContractPackings.RemoveRange(db.TblContractPackings.Where(a => a.FkContract == id));
        //        db.TblContractProducts.RemoveRange(db.TblContractProducts.Where(a => a.FkContract == id));
        //        db.TblContracts.Remove(db.TblContracts.Find(id));
        //        db.SaveChanges();
        //        return true;
        //    }
        //    catch
        //    {
        //        return false;
        //    }


        //}

        public static async Task <Guid?> AddPayvastCustomerAsync(web_db.sardweb_Context db, string CellPhone, int sal)
        {
            var Mali_KindOT = (Models.cl._conf.SingleOrDefault(a => a.Key == web_db.TblConf.KeyEnum.Mali_KindOT) ?? new web_db.TblConf()).Value;
            var Mali_UrlOT  = (Models.cl._conf.SingleOrDefault(a => a.Key == web_db.TblConf.KeyEnum.Mali_UrlOT) ?? new web_db.TblConf()).Value;
            var Mali_UserOT = (Models.cl._conf.SingleOrDefault(a => a.Key == web_db.TblConf.KeyEnum.Mali_UserOT) ?? new web_db.TblConf()).Value;
            var Mali_PassOT = (Models.cl._conf.SingleOrDefault(a => a.Key == web_db.TblConf.KeyEnum.Mali_PassOT) ?? new web_db.TblConf()).Value;


            ApiPaivast.AccountingServiceSoapClient vv = new AccountingServiceSoapClient(AccountingServiceSoapClient.EndpointConfiguration.AccountingServiceSoap, Mali_UrlOT);
            var c = await vv.GetCustomerIdByCellPhoneAsync(CellPhone : CellPhone);

            var idc = c;

            var cid = await vv.GetCustomerInfoAsync(idc, Mali_UserOT, Mali_PassOT);

            if (cid != null)
            {
                string txt = "ثبت موفق";
                var    row = db.TblCustomers.FirstOrDefault(a => a.FkSalmali == sal && a.IdOtherSystem == cid.Id.ToString());
                if (row == null)
                {
                    row = new web_db.TblCustomer
                    {
                        Id            = Guid.NewGuid(),
                        FkSalmali     = sal,
                        IdOtherSystem = cid.Id.ToString(),
                        IsEnable      = true,
                        Code          = (db.TblCustomers.Where(a => a.FkSalmali == sal).Max(a => (int?)a.Code) ?? 0) + 1,
                    };
                    db.TblCustomers.Add(row);
                    txt = "بروزرسانی موفق";
                }
                row.IsEnable     = true;
                row.Addras       = "";
                row.Mob          = CellPhone;
                row.NationalCode = cid.NationalCode;
                row.Title        = cid.Name.ToPersianChars();
                db.SaveChanges();
                return(row.Id);
            }
            return(null);
        }
Пример #25
0
        public IActionResult Index()
        {
            var db    = new web_CusDB.db_Context();
            var dbweb = new web_db.sardweb_Context();
            var x     = db.tblReqContracts.Where(a => a.tblCusId == User._getuserId()).OrderByDescending(a => a.DateLast).ToList();

            foreach (var item in x)
            {
                item._Contract = dbweb.TblContracts.Include(a => a.FkContractTypeNavigation).SingleOrDefault(a => a.Id == item.ContractId);
                item._LasttblReqContractRows = db.tblReqContractRows.OrderBy(a => a.Date).Last(a => a.TblReqContractId == item.Id);
            }



            ViewBag.US_WeightZarib = (dbweb.TblConf.SingleOrDefault(a => a.Key == web_db.TblConf.KeyEnum.US_WeightZarib) ?? new web_db.TblConf()).Value.ToInt(1);



            return(View(x));
        }
Пример #26
0
        public IActionResult contract(Guid id)
        {
            var kiloview = true;// Models.cl._conf.Any(a => a.Key == web_db.TblConf.KeyEnum.US_WeightViewEnable && a.Value == true.ToString());
            var db       = new web_db.sardweb_Context();
            var dbdoc    = new web_dbDocument.db_Context();
            var us       = new web_CusDB.db_Context().TblCustomers.Single(a => a.Id == User._getuserId());

            var x    = db.TblContracts.Find(id);
            var port = db.TblPortages.Include(a => a.TblPortageRows).Where(a =>
                                                                           a.TblPortageRows.Any(s => s.FkContract == id)).Select(a => a.Id).Distinct().ToList();

            if (port == null)
            {
                port = new List <Guid>();
            }

            ViewBag.listiamges = dbdoc.TblDocuments.Where(a => (port.Contains(a.FkP ?? Guid.Empty) || port.Contains(a.FkPortage ?? Guid.Empty)) && (a.Kind.Contains("Sign") == false)).ToList();
            ViewBag.kiloview   = kiloview;// Models.cl._conf.Any(a => a.Key == web_db.TblConf.KeyEnum.US_WeightViewEnable && a.Value == true.ToString());

            return(View(new web_sard.Models.tbls.contract.contract(x, db, true, true, null, kiloview)));
        }
Пример #27
0
        public static web_db.TblCustomer checkCodeCusMain(web_CusDB.tblCus c)
        {
            web_db.sardweb_Context db = new web_db.sardweb_Context();

            var saldef = db.TblSalMalis.FirstOrDefault(a => a.IsOpen);

            if (saldef == null)
            {
                return(null);
            }
            var x = db.TblCustomers.Where(a => a.Mob == c.Mob && a.NationalCode == c.CodeMelli & a.FkSalmali == saldef.Id).Distinct();


            var f = x.FirstOrDefault();

            if (f != null && f.Code != c.CodeCusMainSystem)
            {
                return(x.First());
            }
            return(null);
        }
Пример #28
0
        public static void _refstoreTow(web_db.sardweb_Context db, Guid fkportage)
        {
            var x   = db.TblPortageRows.Where(a => a.FkPortage == fkportage);
            var por = db.TblPortages.Find(fkportage);

            por.WeightNet = (por.Weight1 - por.Weight2).gadrmotlagh();
            if (Models.tbls.portage.kindPortage.listkindcontract.Single(a => a.code == por.KindCode).Manfi)
            {
                por.WeightNet = -por.WeightNet;
            }
            var contype = web_sard.Models.cl._ListContractType(por.FkSalmali).Single(a => a.Id == por.FkContracttype);

            if (contype.KindCotractType == web_db._Weighing.TblContractType.KindCotractTypeEnum.ASabad)
            {
                Models.cl.refTblStoreLogcontractTypeSabad(contype.Id, db);
            }



            db.SaveChanges();
        }
Пример #29
0
        public static async Task sendsmsNoteAsync(IConfiguration _mySettings, CancellationToken stoppingToken = default)
        {
            web_db.sardweb_Context db = new web_db.sardweb_Context();
            {
                var sms  = Models.cl._conf.Any(a => a.Key == web_db.TblConf.KeyEnum.Main_ActiceSms && a.Value == true.ToString());
                var user = (Models.cl._conf.SingleOrDefault(a => a.Key == web_db.TblConf.KeyEnum.Main_UserSms) ?? new web_db.TblConf()).Value;
                var pass = (Models.cl._conf.SingleOrDefault(a => a.Key == web_db.TblConf.KeyEnum.Main_PassSms) ?? new web_db.TblConf()).Value;
                var num  = (Models.cl._conf.SingleOrDefault(a => a.Key == web_db.TblConf.KeyEnum.Main_NumSms) ?? new web_db.TblConf()).Value;


                web_lib.sms s = new web_lib.sms {
                    numfrom = num, password = pass, username = user
                };


                var x  = db.TblNoteRows.Where(a => a.SendSms && a.Date == DateTime.Now.Date).Include(a => a.TblNote).AsEnumerable().GroupBy(a => a.TblNote);
                var us = db.TblUsers.Where(a => a.IsActive && a.IsDel == false).AsEnumerable();
                foreach (var mes in x)
                {
                    foreach (var item in us.Where(a => mes.Any(s => s.ForUserId.GetValueOrDefault() == a.Id || (string.IsNullOrWhiteSpace(s.ForUserroll) == false? a.Roles.Contains(s.ForUserroll ?? ""):false))))
                    {
                        var txt = new StringBuilder();
                        txt.AppendLine(_mySettings.GetValue <string>("txtPortagesms"));
                        txt.AppendLine($"یاداوری");

                        txt.AppendLine($"در مورخه : " + (DateTime.Now.Date).ToPersianDate());

                        txt.AppendLine(mes.Key.Caption);

                        try
                        {
                            var v = await s.sendsmsAsync(item.Mob, txt.ToString(), stoppingToken);
                        }
                        catch
                        {
                        }
                    }
                }
            };
        }
Пример #30
0
 public customer(web_db.TblCustomer row, web_db.sardweb_Context db, web_db._Weighing.TblContractType.KindCotractTypeEnum?kind = null, bool grops = true)
 {
     this.Addras        = row.Addras;
     this.Code          = row.Code;
     this.FkSalmali     = row.FkSalmali;
     this.Id            = row.Id;
     this.IdOtherSystem = row.IdOtherSystem;
     this.IsEnable      = row.IsEnable;
     this.Mob           = row.Mob;
     this.NationalCode  = row.NationalCode;
     this.Title         = row.Title;
     this.datelastlogin = row.Dateloginlast;
     this.codesContract = (db.TblContracts.Include(a => a.FkContractTypeNavigation).Where(a => (kind == null?true: (a.FkContractTypeNavigation.KindCotractType == kind)) && a.FkCustomer == row.Id)).Select(a => a.Code).ToArray();
     this.listfkGroup   = new Guid[] { };
     this.listGroup     = new string[] { };
     if (grops)
     {
         var v = db.TblCustomerGroups.Where(a => a.FkCustumer == this.Id).Include(a => a.FkGroupNavigation);
         this.listfkGroup = v.Select(a => a.FkGroup).ToArray();
         this.listGroup   = v.Select(a => a.FkGroupNavigation.Title).ToArray();
     }
 }