示例#1
0
        public IActionResult Record(Models.p10RecordViewModel v)
        {
            if (ModelState.IsValid)
            {
                BO.p10MasterProduct c = new BO.p10MasterProduct();
                if (v.Rec.pid > 0)
                {
                    c = Factory.p10MasterProductBL.Load(v.Rec.pid);
                }

                c.p10Code            = v.Rec.p10Code;
                c.p10Name            = v.Rec.p10Name;
                c.p10Memo            = v.Rec.p10Memo;
                c.b02ID              = v.Rec.b02ID;
                c.p20ID              = v.Rec.p20ID;
                c.p20ID_Pro          = v.Rec.p20ID_Pro;
                c.p13ID              = v.Rec.p13ID;
                c.p10TypeFlag        = v.Rec.p10TypeFlag;
                c.p10RecalcUnit2Kg   = v.Rec.p10RecalcUnit2Kg;
                c.p10PackagingCode   = v.Rec.p10PackagingCode;
                c.p10Davka           = v.Rec.p10Davka;
                c.p10DavkaMin        = v.Rec.p10DavkaMin;
                c.p10DavkaMax        = v.Rec.p10DavkaMax;
                c.p10SalesPerMonth   = v.Rec.p10SalesPerMonth;
                c.p10UnitsPerPalette = v.Rec.p10UnitsPerPalette;
                c.ValidUntil         = v.Toolbar.GetValidUntil(c);
                c.ValidFrom          = v.Toolbar.GetValidFrom(c);

                v.Rec.pid = Factory.p10MasterProductBL.Save(c);
                if (v.Rec.pid > 0)
                {
                    Factory.o51TagBL.SaveTagging("p10", v.Rec.pid, v.TagPids);
                    v.SetJavascript_CallOnLoad(v.Rec.pid);
                    return(View(v));
                }
            }


            RefreshState(v);
            this.Notify_RecNotSaved();
            return(View(v));
        }
示例#2
0
        public BO.Result master_produkt_save(string p10Code, string p13Code, string p10Name, string p20Code_MJ, string p20Code_VJ, int p10TypeFlag, double p10RecalcUnit2Kg, string p10Memo, string p10PackagingCode, double p10Davka, double p10DavkaMin, double p10DavkaMax, double p10SalesPerMonth, double p10UnitsPerPalette)
        {
            if (string.IsNullOrEmpty(p10Code) == true || string.IsNullOrEmpty(p10Name) == true || string.IsNullOrEmpty(p20Code_MJ) == true || string.IsNullOrEmpty(p20Code_VJ) == true || p10RecalcUnit2Kg <= 0)
            {
                return(new BO.Result(true, "Na vstupu je povinné: kód produktu [p10Code], název produktu [p10Name], MJ [p20Code_MJ], VJ [p20Code_VJ], typ produktu [p10TypeFlag], přepočet MJ na VJ [p10RecalcUnit2Kg]."));
            }
            if (p10TypeFlag <= 0 || p10TypeFlag > 6)
            {
                return(new BO.Result(true, "Hodnota [p10TypeFlag] může být 1 - 6."));
            }
            var recP20MJ = _f.p20UnitBL.LoadByCode(p20Code_MJ, 0);

            if (recP20MJ == null)
            {
                return(new BO.Result(true, string.Format("Nelze načíst MJ s kódem: {0}.", p20Code_MJ)));
            }
            var recP20VJ = _f.p20UnitBL.LoadByCode(p20Code_VJ, 0);

            if (recP20VJ == null)
            {
                return(new BO.Result(true, string.Format("Nelze načíst VJ s kódem: {0}.", p20Code_VJ)));
            }
            BO.p13MasterTpv recP13 = null;
            if (string.IsNullOrEmpty(p13Code) == false)
            {
                recP13 = _f.p13MasterTpvBL.LoadByCode(p13Code, 0);
                if (recP13 == null)
                {
                    return(new BO.Result(true, string.Format("Nelze načíst recepturu s kódem: {0}.", p13Code)));
                }
            }

            var recP10 = _f.p10MasterProductBL.LoadByCode(p10Code, 0);

            if (recP10 == null)
            {
                recP10 = new BO.p10MasterProduct()
                {
                    p10Code = p10Code
                };
            }
            if (recP13 != null)
            {
                recP10.p13ID = recP13.pid;
            }
            recP10.p10Name            = p10Name;
            recP10.p10Memo            = p10Memo;
            recP10.p10TypeFlag        = (BO.ProductTypeEnum)p10TypeFlag;
            recP10.p10RecalcUnit2Kg   = p10RecalcUnit2Kg;
            recP10.p20ID              = recP20MJ.pid;
            recP10.p20ID_Pro          = recP20VJ.pid;
            recP10.p10PackagingCode   = p10PackagingCode;
            recP10.p10Davka           = p10Davka;
            recP10.p10DavkaMax        = p10DavkaMax;
            recP10.p10DavkaMin        = p10DavkaMin;
            recP10.p10SalesPerMonth   = p10SalesPerMonth;
            recP10.p10UnitsPerPalette = p10UnitsPerPalette;

            int intP10ID = _f.p10MasterProductBL.Save(recP10);

            if (intP10ID > 0)
            {
                return(new BO.Result(false, "Uloženo"));
            }
            else
            {
                string strErrs = string.Join(" ** ", _f.CurrentUser.Messages4Notify.Select(p => p.Value));
                return(new BO.Result(true, strErrs));
            }
        }