Exemplo n.º 1
0
 public PortageDocument(web_dbDocument.TblDocument row)
 {
     this.Date      = row.Date;
     this.FkPortage = row.FkPortage;
     this.Id        = row.Id;
     this.Kind      = row.Kind;
 }
Exemplo n.º 2
0
        public IActionResult Create(web_db._Weighing.TblCar model, IFormFile file)
        {
            if (!ModelState.IsValid)
            {
                ViewBag.error = "ثبت انجام نشد - فیلد ها را درست پر کنید";
                return(View(model));
            }
            try
            {
                var x = db.TblCars.Find(model.Id);
                if (x == null)
                {
                    x = new web_db._Weighing.TblCar {
                        Id = model.Id, PriceTowBascol = 0
                    };

                    db.TblCars.Add(x);
                }



                x.Title          = model.Title;
                x.IsDel          = model.IsDel;
                x.PriceTowBascol = model.PriceTowBascol;
                var dbdoc = new web_dbDocument.db_Context();

                if (file != null)
                {
                    var r = dbdoc.TblDocuments.FirstOrDefault(a => a.FkP == x.Id);
                    if (r == null)
                    {
                        r = new web_dbDocument.TblDocument
                        {
                            Date   = DateTime.Now,
                            FkP    = x.Id,
                            fkuser = User._getuserid(),
                            Id     = Guid.NewGuid(),
                            Kind   = "Image"
                        };
                        dbdoc.TblDocuments.Add(r);
                    }
                    r.Image = file.ToByteArray().imgTosmall();
                }



                db.SaveChanges();
                dbdoc.SaveChanges();
                ViewBag.txt        = "ثبت انجام شد";
                Models.cl._ListCar = db.TblCars.OrderBy(a => a.Title).ToList();
                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                ViewBag.error = "ثبت انجام نشد";
            }
            return(View(model));
        }
Exemplo n.º 3
0
        public IActionResult DocUpload(IList <IFormFile> files, Guid idp, string kind = "")
        {
            var db = new web_dbDocument.db_Context();

            foreach (IFormFile source in files)
            {
                string Extension = Path.GetExtension(source.FileName).ToLowerInvariant();
                if (Extension.IsEmpty())
                {
                    Extension = ".jpg";
                }
                if (kind.IsEmpty() == false)
                {
                    var v = db.TblDocuments.FirstOrDefault(a => a.Kind == kind && (a.FkP == idp || a.FkPortage == idp));
                    if (v != null)
                    {
                        db.TblDocuments.Remove(v);
                    }
                }

                web_dbDocument.TblDocument x = new web_dbDocument.TblDocument
                {
                    Id     = Guid.NewGuid(),
                    FkP    = idp,
                    Kind   = kind.IsEmpty() ? "" : kind,
                    Date   = DateTime.Now,
                    fkuser = User._getuserid()
                };
                db.TblDocuments.Add(x);



                x.Date = DateTime.Now;
                using (var target = new MemoryStream())
                {
                    source.CopyTo(target);
                    x.Image = target.ToArray();
                }
                x.Format = Extension;

                if ((Extension).IsImage())
                {
                    x.Image = x.Image.imgTosmall(web_lib.FilesHelper.imageSize.s800);
                }
            }
            db.SaveChanges();
            return(Content("OK"));
        }
Exemplo n.º 4
0
        public IActionResult addDoc(Guid id, Guid idp, IFormFile image = null, bool del = false, string kind = "Yard")
        {
            var dbdoc = new web_dbDocument.db_Context();


            if (del)
            {
                var x = dbdoc.TblDocuments.Find(id);



                var pp = db.TblPortages.Find(x.FkPortage);
                if ((pp.FkSalmali != User._getuserSalMaliDef()) || (pp.IsEnd) || (pp.IsDel))
                {
                    return(RedirectToAction("index"));
                }



                dbdoc.TblDocuments.Remove(x);
            }
            else
            {
                var pp = db.TblPortages.Find(idp);
                if ((pp.FkSalmali != User._getuserSalMaliDef()) || (pp.IsEnd) || (pp.IsDel))
                {
                    return(RedirectToAction("index"));
                }
                web_dbDocument.TblDocument x = null;

                if (kind == "Sign")
                {
                    x = dbdoc.TblDocuments.FirstOrDefault(a => a.FkPortage == idp && a.Kind == kind);
                }
                if (kind == "SignPermit")
                {
                    x = dbdoc.TblDocuments.FirstOrDefault(a => a.FkPortage == idp && a.Kind == kind);
                }
                if (x == null)
                {
                    x = new web_dbDocument.TblDocument
                    {
                        Id        = Guid.NewGuid(),
                        FkPortage = idp,
                        Kind      = kind
                    };
                    dbdoc.TblDocuments.Add(x);
                }
                x.Date = DateTime.Now;


                using (var target = new MemoryStream())
                {
                    image.CopyTo(target);
                    x.Image = target.ToArray();
                }
                x.Image = x.Image.imgTosmall(web_lib.FilesHelper.imageSize.s800);
            }

            dbdoc.SaveChanges();



            return(RedirectToAction("view", new { id = idp, openkind = 1 }));
        }
Exemplo n.º 5
0
        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);
        }