Exemple #1
0
 public JsonResult UpdateTEO(PZ_TEO pZ_TEO)
 {
     pZ_TEO.KursValuti = pZ_TEO.KursValuti / 10000;
     using (PortalKATEKEntities db = new PortalKATEKEntities())
     {
         db.Configuration.ProxyCreationEnabled = false;
         db.Configuration.LazyLoadingEnabled   = false;
         db.Entry(pZ_TEO).State = EntityState.Modified;
         db.SaveChanges();
         return(Json(4, JsonRequestBehavior.AllowGet));
     }
 }
        public JsonResult Update(Debit_CostUpdate debit_CostUpdate, float mcost, DateTime mdateGetMoney)
        {
            Debit_CostUpdate newCost       = db.Debit_CostUpdate.Find(debit_CostUpdate.id);
            Debit_WorkBit    debit_WorkBit = db.Debit_WorkBit.Where(d => d.id_PlanZakaz == newCost.id_PZ_PlanZakaz & d.id_TaskForPZ == 15).First();

            if (mdateGetMoney.Year < 2010)
            {
                return(Json(1, JsonRequestBehavior.AllowGet));
            }
            if (mcost == 0)
            {
                return(Json(1, JsonRequestBehavior.AllowGet));
            }

            newCost.cost            = mcost;
            newCost.dateGetMoney    = mdateGetMoney;
            db.Entry(newCost).State = EntityState.Modified;
            db.SaveChanges();
            PZ_TEO pZ_TEO = db.PZ_TEO.Where(d => d.Id_PlanZakaz == newCost.id_PZ_PlanZakaz).First();
            double nds    = 0;

            try
            {
                nds = (double)pZ_TEO.NDS;
            }
            catch
            {
            }
            double costCorrect = nds + (double)pZ_TEO.OtpuskChena;
            double costNow     = 0;

            foreach (var data in db.Debit_CostUpdate.Where(d => d.id_PZ_PlanZakaz == newCost.id_PZ_PlanZakaz))
            {
                costNow += data.cost;
            }
            if (costCorrect - costNow == 0)
            {
                debit_WorkBit.close           = true;
                debit_WorkBit.dateClose       = DateTime.Now;
                db.Entry(debit_WorkBit).State = EntityState.Modified;
                db.SaveChanges();
            }
            return(Json(1, JsonRequestBehavior.AllowGet));
        }
        public ActionResult NewPlus(Debit_CostUpdate debit_CostUpdate)
        {
            Debit_WorkBit debit_WorkBit = db.Debit_WorkBit.Where(d => d.id_PlanZakaz == debit_CostUpdate.id_PZ_PlanZakaz & d.id_TaskForPZ == 15).First();

            if (debit_CostUpdate.dateGetMoney.Year < 2010)
            {
                return(RedirectToAction("NewPlus", "Upload", new { debit_WorkBit.id, area = "Deb" }));
            }
            if (debit_CostUpdate.cost == 0)
            {
                return(RedirectToAction("NewPlus", "Upload", new { debit_WorkBit.id, area = "Deb" }));
            }
            PZ_PlanZakaz pZ_PlanZakaz = db.PZ_PlanZakaz.Find(debit_CostUpdate.id_PZ_PlanZakaz);

            debit_CostUpdate.id_PZ_PlanZakaz = pZ_PlanZakaz.Id;
            debit_CostUpdate.dateCreate      = DateTime.Now;
            db.Debit_CostUpdate.Add(debit_CostUpdate);
            db.SaveChanges();
            PZ_TEO pZ_TEO = db.PZ_TEO.Where(d => d.Id_PlanZakaz == debit_CostUpdate.id_PZ_PlanZakaz).First();
            double nds    = 0;

            try
            {
                nds = (double)pZ_TEO.NDS;
            }
            catch
            {
            }
            double costCorrect = nds + (double)pZ_TEO.OtpuskChena;
            double costNow     = 0;

            foreach (var data in db.Debit_CostUpdate.Where(d => d.id_PZ_PlanZakaz == debit_CostUpdate.id_PZ_PlanZakaz))
            {
                costNow += data.cost;
            }
            if (costCorrect - costNow == 0)
            {
                debit_WorkBit.close           = true;
                debit_WorkBit.dateClose       = DateTime.Now;
                db.Entry(debit_WorkBit).State = EntityState.Modified;
                db.SaveChanges();
            }
            return(RedirectToAction("Index", "Upload", new { area = "Deb" }));
        }
        public ActionResult NewPlus(int id)
        {
            double        getCost       = 0;
            Debit_WorkBit debit_WorkBit = db.Debit_WorkBit.Find(id);

            ViewBag.PlanZakaz   = db.PZ_PlanZakaz.Find(debit_WorkBit.id_PlanZakaz).PlanZakaz.ToString();
            ViewBag.idPlanZakaz = db.PZ_PlanZakaz.Find(debit_WorkBit.id_PlanZakaz).Id;
            System.Globalization.NumberFormatInfo numForInf = new System.Globalization.CultureInfo("en-US", false).NumberFormat;
            ViewBag.Cost    = db.PZ_TEO.Where(d => d.Id_PlanZakaz == debit_WorkBit.id_PlanZakaz).First().OtpuskChena.ToString("N", numForInf);
            ViewBag.Curency = db.PZ_TEO.Where(d => d.Id_PlanZakaz == debit_WorkBit.id_PlanZakaz).First().PZ_Currency.Name.ToString();
            var listCost = db.Debit_CostUpdate.Where(d => d.id_PZ_PlanZakaz == debit_WorkBit.id_PlanZakaz).ToList();

            foreach (var data in listCost)
            {
                getCost += data.cost;
            }
            ViewBag.GetCost = getCost.ToString("N", numForInf);
            PZ_TEO pZ_TEO  = db.PZ_TEO.Where(d => d.Id_PlanZakaz == debit_WorkBit.id_PlanZakaz).First();
            double nds     = 0;
            double ndsCost = pZ_TEO.OtpuskChena;

            if (pZ_TEO.NDS != null)
            {
                ndsCost += (double)pZ_TEO.NDS;
                nds     += (double)pZ_TEO.NDS;
            }
            ViewBag.NDS      = nds.ToString("N", numForInf);
            ViewBag.CostNDS  = ndsCost.ToString("N", numForInf);
            ViewBag.PostCost = (ndsCost - getCost).ToString("N", numForInf);
            ViewBag.listCost = listCost.ToList();
            PZ_Setup pZ_Setup = db.PZ_Setup.First(d => d.id_PZ_PlanZakaz == debit_WorkBit.id_PlanZakaz);

            ViewBag.UslovieOplat = pZ_Setup.UslovieOplatyText;
            ViewBag.UslovieOplat = pZ_Setup.PunktDogovoraOSrokahPriemki;

            Debit_CostUpdate dc = new Debit_CostUpdate();

            dc.id_PZ_PlanZakaz = debit_WorkBit.id_PlanZakaz;
            return(View(dc));
        }
Exemple #5
0
        public NewPlanZakaz(PZ_PlanZakaz pZ_PlanZakaz, bool addDebitWork)
        {
            int          numberPZ        = db.PZ_PlanZakaz.Where(d => d.PlanZakaz < 9000).Max(d => d.PlanZakaz) + 1;
            PZ_PlanZakaz newPZ_PlanZakaz = new PZ_PlanZakaz()
            {
                PlanZakaz                      = numberPZ,
                DateCreate                     = DateTime.Now,
                MTR                            = pZ_PlanZakaz.MTR,
                Name                           = pZ_PlanZakaz.Name,
                OL                             = pZ_PlanZakaz.OL,
                Zapros                         = pZ_PlanZakaz.Zapros,
                DateSupply                     = pZ_PlanZakaz.DateSupply,
                DateShipping                   = pZ_PlanZakaz.DateShipping,
                Cost                           = pZ_PlanZakaz.Cost,
                Description                    = pZ_PlanZakaz.Description,
                ProductType                    = pZ_PlanZakaz.ProductType,
                Dostavka                       = pZ_PlanZakaz.Dostavka,
                Manager                        = pZ_PlanZakaz.Manager,
                Client                         = pZ_PlanZakaz.Client,
                Gruzopoluchatel                = pZ_PlanZakaz.Gruzopoluchatel,
                PostAdresGruzopoluchatel       = pZ_PlanZakaz.PostAdresGruzopoluchatel,
                INNGruzopoluchatel             = pZ_PlanZakaz.INNGruzopoluchatel,
                OKPOGruzopoluchatelya          = pZ_PlanZakaz.OKPOGruzopoluchatelya,
                KodGruzopoluchatela            = pZ_PlanZakaz.KodGruzopoluchatela,
                StantionGruzopoluchatel        = pZ_PlanZakaz.StantionGruzopoluchatel,
                KodStanciiGruzopoluchatelya    = pZ_PlanZakaz.KodStanciiGruzopoluchatelya,
                OsobieOtmetkiGruzopoluchatelya = pZ_PlanZakaz.OsobieOtmetkiGruzopoluchatelya,
                DescriptionGruzopoluchatel     = pZ_PlanZakaz.DescriptionGruzopoluchatel,
                Folder                         = pZ_PlanZakaz.Folder,
                Modul                          = pZ_PlanZakaz.Modul,
                timeContract                   = pZ_PlanZakaz.timeContract,
                timeContractDate               = pZ_PlanZakaz.timeContractDate,
                timeArr                        = pZ_PlanZakaz.timeArr,
                timeArrDate                    = pZ_PlanZakaz.timeArrDate,
                id_PZ_FIO                      = pZ_PlanZakaz.id_PZ_FIO,
                numZakupki                     = pZ_PlanZakaz.numZakupki,
                numLota                        = pZ_PlanZakaz.numLota,
                dataOtgruzkiBP                 = pZ_PlanZakaz.dataOtgruzkiBP,
                ProjectUID                     = pZ_PlanZakaz.ProjectUID,
                nameTU                         = pZ_PlanZakaz.nameTU,
                TypeShip                       = pZ_PlanZakaz.TypeShip,
                criticalDateShip               = pZ_PlanZakaz.criticalDateShip,
                nomenklaturNumber              = pZ_PlanZakaz.nomenklaturNumber,
                costSMR                        = pZ_PlanZakaz.costSMR,
                costPNR                        = pZ_PlanZakaz.costPNR,
                id_PZ_OperatorDogovora         = pZ_PlanZakaz.id_PZ_OperatorDogovora,
                PowerST                        = pZ_PlanZakaz.PowerST,
                VN_NN                          = pZ_PlanZakaz.VN_NN
            };

            db.PZ_PlanZakaz.Add(newPZ_PlanZakaz);
            db.SaveChanges();
            Reclamation_CloseOrder reclamation_CloseOrder = new Reclamation_CloseOrder
            {
                close           = false,
                dateTimeClose   = DateTime.Now,
                description     = "",
                id_PZ_PlanZakaz = newPZ_PlanZakaz.Id,
                userClose       = newPZ_PlanZakaz.Manager
            };

            db.Reclamation_CloseOrder.Add(reclamation_CloseOrder);
            db.SaveChanges();
            PZ_TEO pZ_TEO = new PZ_TEO
            {
                Currency     = 1,
                NDS          = 0,
                Rate         = 0,
                SSM          = 0,
                SSR          = 0,
                IzdKom       = 0,
                IzdPPKredit  = 0,
                PI           = 0,
                NOP          = 0,
                KI_S         = 0,
                KI_prochee   = 0,
                Id_PlanZakaz = newPZ_PlanZakaz.Id
            };

            db.PZ_TEO.Add(pZ_TEO);
            db.SaveChanges();
            PZ_Setup pZ_Setup = new PZ_Setup
            {
                KolVoDneyNaPrijemku         = 0,
                PunktDogovoraOSrokahPriemki = "",
                RassmotrenieRKD             = 0,
                SrokZamechanieRKD           = 0,
                TimeNaRKD         = 0,
                UslovieOplatyInt  = 0,
                UslovieOplatyText = "",
                id_PZ_PlanZakaz   = newPZ_PlanZakaz.Id
            };

            db.PZ_Setup.Add(pZ_Setup);
            db.SaveChanges();
            Debit_Platform debit_Platform = new Debit_Platform
            {
                id_PlanZakaz  = newPZ_PlanZakaz.Id,
                countPlatform = 0,
                gabar         = "",
                massa         = 0,
                numPlatform   = "",
                numPlomb      = ""
            };

            db.Debit_Platform.Add(debit_Platform);
            db.SaveChanges();
            if (addDebitWork == true)
            {
                List <TaskForPZ> dateTaskWork = db.TaskForPZ.Where(w => w.step == 1).Where(z => z.id_TypeTaskForPZ == 1).ToList();
                foreach (var data in dateTaskWork)
                {
                    Debit_WorkBit newDebit_WorkBit = new Debit_WorkBit();
                    newDebit_WorkBit.dateCreate    = DateTime.Now;
                    newDebit_WorkBit.close         = false;
                    newDebit_WorkBit.id_PlanZakaz  = newPZ_PlanZakaz.Id;
                    newDebit_WorkBit.id_TaskForPZ  = (int)data.id;
                    newDebit_WorkBit.datePlanFirst = DateTime.Now.AddDays((double)data.time);
                    newDebit_WorkBit.datePlan      = DateTime.Now.AddDays((double)data.time);
                    db.Debit_WorkBit.Add(new Debit_WorkBit()
                    {
                        close         = false,
                        dateClose     = null,
                        dateCreate    = DateTime.Now,
                        datePlan      = newDebit_WorkBit.datePlan,
                        datePlanFirst = newDebit_WorkBit.datePlanFirst,
                        id_PlanZakaz  = newDebit_WorkBit.id_PlanZakaz,
                        id_TaskForPZ  = newDebit_WorkBit.id_TaskForPZ
                    });
                    db.SaveChanges();
                }
            }
        }
Exemple #6
0
        public NewPlanZakaz(PZ_PlanZakaz pZ_PlanZakaz, bool addDebitWork)
        {
            int          numberPZ        = db.PZ_PlanZakaz.Where(d => d.PlanZakaz < 9000).Max(d => d.PlanZakaz) + 1;
            PZ_PlanZakaz newPZ_PlanZakaz = new PZ_PlanZakaz()
            {
                PZ_SMRId                       = pZ_PlanZakaz.PZ_SMRId,
                id_CountryName                 = pZ_PlanZakaz.id_CountryName,
                id_Provider                    = pZ_PlanZakaz.id_Provider,
                PlanZakaz                      = numberPZ,
                DateCreate                     = DateTime.Now,
                MTR                            = pZ_PlanZakaz.MTR,
                Name                           = pZ_PlanZakaz.Name,
                OL                             = pZ_PlanZakaz.OL,
                Zapros                         = pZ_PlanZakaz.Zapros,
                DateSupply                     = pZ_PlanZakaz.DateSupply,
                DateShipping                   = pZ_PlanZakaz.DateShipping,
                Cost                           = pZ_PlanZakaz.Cost,
                Description                    = pZ_PlanZakaz.Description,
                ProductType                    = pZ_PlanZakaz.ProductType,
                Dostavka                       = pZ_PlanZakaz.Dostavka,
                Manager                        = pZ_PlanZakaz.Manager,
                Client                         = pZ_PlanZakaz.Client,
                Gruzopoluchatel                = pZ_PlanZakaz.Gruzopoluchatel,
                PostAdresGruzopoluchatel       = pZ_PlanZakaz.PostAdresGruzopoluchatel,
                INNGruzopoluchatel             = pZ_PlanZakaz.INNGruzopoluchatel,
                OKPOGruzopoluchatelya          = pZ_PlanZakaz.OKPOGruzopoluchatelya,
                KodGruzopoluchatela            = pZ_PlanZakaz.KodGruzopoluchatela,
                StantionGruzopoluchatel        = pZ_PlanZakaz.StantionGruzopoluchatel,
                KodStanciiGruzopoluchatelya    = pZ_PlanZakaz.KodStanciiGruzopoluchatelya,
                OsobieOtmetkiGruzopoluchatelya = pZ_PlanZakaz.OsobieOtmetkiGruzopoluchatelya,
                DescriptionGruzopoluchatel     = pZ_PlanZakaz.DescriptionGruzopoluchatel,
                Folder                         = pZ_PlanZakaz.Folder,
                Modul                          = pZ_PlanZakaz.Modul,
                massa                          = 0,
                timeContract                   = pZ_PlanZakaz.timeContract,
                timeContractDate               = pZ_PlanZakaz.timeContractDate,
                timeArr                        = pZ_PlanZakaz.timeArr,
                timeArrDate                    = pZ_PlanZakaz.timeArrDate,
                id_PZ_FIO                      = pZ_PlanZakaz.id_PZ_FIO,
                numZakupki                     = pZ_PlanZakaz.numZakupki,
                numLota                        = pZ_PlanZakaz.numLota,
                dataOtgruzkiBP                 = pZ_PlanZakaz.dataOtgruzkiBP,
                ProjectUID                     = pZ_PlanZakaz.ProjectUID,
                nameTU                         = pZ_PlanZakaz.nameTU,
                TypeShip                       = pZ_PlanZakaz.TypeShip,
                criticalDateShip               = pZ_PlanZakaz.criticalDateShip,
                nomenklaturNumber              = pZ_PlanZakaz.nomenklaturNumber,
                costSMR                        = pZ_PlanZakaz.costSMR,
                costPNR                        = pZ_PlanZakaz.costPNR,
                id_PZ_OperatorDogovora         = pZ_PlanZakaz.id_PZ_OperatorDogovora,
                PowerST                        = pZ_PlanZakaz.PowerST,
                VN_NN                          = pZ_PlanZakaz.VN_NN,
                objectOfExploitation           = pZ_PlanZakaz.objectOfExploitation,
                counterText                    = pZ_PlanZakaz.counterText,
                coefM                          = 3.5,
                coefE                          = 3.5
            };

            db.PZ_PlanZakaz.Add(newPZ_PlanZakaz);
            db.SaveChanges();
            Reclamation_CloseOrder reclamation_CloseOrder = new Reclamation_CloseOrder
            {
                close           = false,
                dateTimeClose   = DateTime.Now,
                description     = "",
                id_PZ_PlanZakaz = newPZ_PlanZakaz.Id,
                userClose       = newPZ_PlanZakaz.Manager
            };

            db.Reclamation_CloseOrder.Add(reclamation_CloseOrder);
            db.SaveChanges();
            PZ_TEO pZ_TEO = new PZ_TEO
            {
                Currency          = 1,
                NDS               = 0,
                Rate              = 0,
                SSM               = 0,
                SSR               = 0,
                IzdKom            = 0,
                IzdPPKredit       = 0,
                PI                = 0,
                NOP               = 0,
                KI_S              = 0,
                KI_prochee        = 0,
                Id_PlanZakaz      = newPZ_PlanZakaz.Id,
                OtpuskChena       = 0,
                KursValuti        = 0,
                SSRFact           = 0,
                percentYear       = 0,
                percentPI         = 0,
                durationBeforePay = 0,
                SSMToBYN          = 0,
                SSMProduct        = 0,
                importDuty        = 0,
                importDutyPlan    = 0
            };

            db.PZ_TEO.Add(pZ_TEO);
            db.SaveChanges();
            PZ_Setup pZ_Setup = new PZ_Setup
            {
                KolVoDneyNaPrijemku         = 0,
                PunktDogovoraOSrokahPriemki = "",
                RassmotrenieRKD             = 0,
                SrokZamechanieRKD           = 0,
                TimeNaRKD         = 0,
                UslovieOplatyInt  = 0,
                UslovieOplatyText = "",
                id_PZ_PlanZakaz   = newPZ_PlanZakaz.Id
            };

            db.PZ_Setup.Add(pZ_Setup);
            db.SaveChanges();
            Debit_Platform debit_Platform = new Debit_Platform
            {
                id_PlanZakaz  = newPZ_PlanZakaz.Id,
                countPlatform = 0,
                gabar         = "",
                massa         = 0,
                numPlatform   = "",
                numPlomb      = ""
            };

            db.Debit_Platform.Add(debit_Platform);
            db.SaveChanges();
            PlanVerificationItems planVerificationItems = new PlanVerificationItems
            {
                id_PZ_PlanZakaz       = newPZ_PlanZakaz.Id,
                @fixed                = false,
                appDescription        = "",
                factDescription       = "",
                fixetFirstDate        = false,
                planDescription       = "",
                verificationDateInPrj = newPZ_PlanZakaz.dataOtgruzkiBP
            };

            db.PlanVerificationItems.Add(planVerificationItems);
            db.SaveChanges();
            ApproveCDOrders approveCDOrders = new ApproveCDOrders
            {
                id_PZ_PlanZakaz = newPZ_PlanZakaz.Id,
                id_AspNetUsersM = "4f91324a-1918-4e62-b664-d8cd89a19d95",
                id_AspNetUsersE = "8363828f-bba2-4a89-8ed8-d7f5623b4fa8",
                description     = "",
                remove          = false,
                gHand           = false,
                isOpening       = false
            };

            db.ApproveCDOrders.Add(approveCDOrders);
            db.SaveChanges();
            if (addDebitWork == true)
            {
                List <TaskForPZ> dateTaskWork = db.TaskForPZ.Where(w => w.step == 1).Where(z => z.id_TypeTaskForPZ == 1).ToList();
                foreach (var data in dateTaskWork)
                {
                    Debit_WorkBit newDebit_WorkBit = new Debit_WorkBit();
                    newDebit_WorkBit.dateCreate    = DateTime.Now;
                    newDebit_WorkBit.close         = false;
                    newDebit_WorkBit.id_PlanZakaz  = newPZ_PlanZakaz.Id;
                    newDebit_WorkBit.id_TaskForPZ  = (int)data.id;
                    newDebit_WorkBit.datePlanFirst = DateTime.Now.AddDays((double)data.time);
                    newDebit_WorkBit.datePlan      = DateTime.Now.AddDays((double)data.time);
                    if (newDebit_WorkBit.id_TaskForPZ == 1)
                    {
                        newDebit_WorkBit.dateClose = DateTime.Now;
                    }
                    db.Debit_WorkBit.Add(new Debit_WorkBit()
                    {
                        close         = false,
                        dateCreate    = DateTime.Now,
                        datePlan      = newDebit_WorkBit.datePlan,
                        datePlanFirst = newDebit_WorkBit.datePlanFirst,
                        id_PlanZakaz  = newDebit_WorkBit.id_PlanZakaz,
                        id_TaskForPZ  = newDebit_WorkBit.id_TaskForPZ,
                        dateClose     = newDebit_WorkBit.dateClose
                    });
                    db.SaveChanges();
                }
            }
        }
Exemple #7
0
        private void GetData(HttpPostedFileBase fileUpload)
        {
            string nameSheet = "факт";
            //сохраняем файл в папке с заказом
            string fileReplace = Path.GetFileName(fileUpload.FileName);

            fileReplace = ToSafeFileName(fileReplace);
            var fileName = string.Format("{0}\\{1}", directory, fileReplace);

            fileUpload.SaveAs(fileName);
            //Открываем экселевский файл
            Excel.Application application = new Excel.Application();
            Excel.Workbook    workbook    = application.Workbooks.Open(fileName);
            Excel.Worksheet   worksheet   = null;
            //Ищем нужные нам листы
            foreach (Excel.Worksheet data in workbook.Worksheets)
            {
                if (data.Name == nameSheet)
                {
                    worksheet = data;
                    break;
                }
            }
            var range = worksheet.UsedRange;
            List <UploadHTEO> list = new List <UploadHTEO>();

            for (int row = 1; row < range.Rows.Count; row++)
            {
                UploadHTEO hteo = new UploadHTEO();
                try
                {
                    hteo.PlanZakaz = Convert.ToInt32(((Excel.Range)range.Cells[row, 2]).Text);
                    try
                    {
                        hteo.DateShip = Convert.ToDateTime(((Excel.Range)range.Cells[row, 5]).Text);
                    }
                    catch
                    {
                        hteo.DateShip = new DateTime();
                    }
                    try
                    {
                        hteo.Virucha = Convert.ToDouble(((Excel.Range)range.Cells[row, 11]).Text);
                    }
                    catch
                    {
                        hteo.Virucha = 0;
                    }
                    try
                    {
                        hteo.OChena = Convert.ToDouble(((Excel.Range)range.Cells[row, 12]).Text);
                    }
                    catch
                    {
                        hteo.OChena = 0;
                    }
                    try
                    {
                        hteo.IzKom = Convert.ToDouble(((Excel.Range)range.Cells[row, 18]).Text);
                    }
                    catch
                    {
                        hteo.IzKom = 0;
                    }
                    try
                    {
                        hteo.PercKredit = Convert.ToDouble(((Excel.Range)range.Cells[row, 18]).Text);
                    }
                    catch
                    {
                        hteo.PercKredit = 0;
                    }
                    try
                    {
                        hteo.SSM = Convert.ToDouble(((Excel.Range)range.Cells[row, 32]).Text);
                    }
                    catch
                    {
                        hteo.SSM = 0;
                    }
                    try
                    {
                        hteo.FSSM = Convert.ToDouble(((Excel.Range)range.Cells[row, 37]).Text);
                    }
                    catch
                    {
                        hteo.FSSM = 0;
                    }
                    try
                    {
                        hteo.SSPO = Convert.ToDouble(((Excel.Range)range.Cells[row, 34]).Text);
                    }
                    catch
                    {
                        hteo.SSPO = 0;
                    }
                    try
                    {
                        hteo.FSSPO = Convert.ToDouble(((Excel.Range)range.Cells[row, 39]).Text);
                    }
                    catch
                    {
                        hteo.FSSPO = 0;
                    }
                    hteo.Curency = 0;
                    try
                    {
                        hteo.PI = Convert.ToDouble(((Excel.Range)range.Cells[row, 17]).Text);
                    }
                    catch
                    {
                        hteo.PI = 0;
                    }
                    try
                    {
                        hteo.DateOpen = Convert.ToDateTime(((Excel.Range)range.Cells[row, 3]).Text);
                    }
                    catch
                    {
                        hteo.DateOpen = new DateTime();
                    }
                    hteo.Valut = "";
                    list.Add(hteo);
                }
                catch
                {
                }
            }
            foreach (var variable in list)
            {
                try
                {
                    int    idPz = db.PZ_PlanZakaz.First(d => d.PlanZakaz == variable.PlanZakaz).Id;
                    PZ_TEO teo  = db.PZ_TEO.First(d => d.Id_PlanZakaz == idPz);
                    teo.SSRFact         = variable.FSSPO;
                    db.Entry(teo).State = EntityState.Modified;
                    db.SaveChanges();
                    if (db.XTEO.Any(d => d.planZakaz == variable.PlanZakaz))
                    {
                        XTEO xteo = db.XTEO.First(d => d.planZakaz == variable.PlanZakaz);
                        xteo.planZakaz       = Convert.ToInt32(variable.PlanZakaz);
                        xteo.curency         = variable.Curency;
                        xteo.dateShip        = variable.DateShip;
                        xteo.fssm            = variable.FSSM;
                        xteo.izKom           = variable.IzKom;
                        xteo.viruchka        = variable.Virucha;
                        xteo.fsspo           = variable.FSSPO;
                        xteo.oChena          = variable.OChena;
                        xteo.percKredit      = variable.PercKredit;
                        xteo.ssm             = variable.SSM;
                        xteo.sspo            = variable.SSPO;
                        xteo.pi              = variable.PI;
                        xteo.dateOpen        = variable.DateOpen;
                        xteo.valut           = variable.Valut;
                        db.Entry(xteo).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                    else
                    {
                        XTEO xteo = new XTEO
                        {
                            planZakaz  = Convert.ToInt32(variable.PlanZakaz),
                            curency    = variable.Curency,
                            dateShip   = variable.DateShip,
                            fssm       = variable.FSSM,
                            izKom      = variable.IzKom,
                            viruchka   = variable.Virucha,
                            fsspo      = variable.FSSPO,
                            oChena     = variable.OChena,
                            percKredit = variable.PercKredit,
                            ssm        = variable.SSM,
                            sspo       = variable.SSPO,
                            pi         = variable.PI,
                            valut      = variable.Valut,
                            dateOpen   = variable.DateOpen
                        };
                        db.XTEO.Add(xteo);
                        db.SaveChanges();
                    }
                }
                catch
                {
                }
            }
            application.Quit();
            System.Runtime.InteropServices.Marshal.ReleaseComObject(application);
            application = null;
            workbook    = null;
            worksheet   = null;
            GC.Collect();
        }