Beispiel #1
0
        public IActionResult Batch(int j72id, string pids)
        {
            if (!this.TestIfUserEditor(true, true))
            {
                return(this.StopPageCreateEdit(true));
            }
            var v = new Models.TagsBatch();

            RefreshState_Batch(ref v, j72id, pids);

            return(View(v));
        }
Beispiel #2
0
        public IActionResult Batch(Models.TagsBatch v, string oper)
        {
            RefreshState_Batch(ref v, v.j72ID, v.Record_Pids);

            if (ModelState.IsValid)
            {
                if (oper == "postback")
                {
                    RefreshState_Batch(ref v, v.j72ID, v.Record_Pids);
                    return(View(v));
                }
                if (v.SelectedO53ID == 0)
                {
                    this.AddMessage("Musíte vybrat kategorii.");
                    RefreshState_Batch(ref v, v.j72ID, v.Record_Pids);
                    return(View(v));
                }


                List <int> o51ids = new List <int>();
                if (v.RecO53.o53IsMultiSelect == true)
                {
                    o51ids = v.SelectedO51IDs.Where(p => p > 0).ToList();
                }
                else
                {
                    o51ids.Add(v.SelectedRadioO51ID);
                }

                List <int> pids = BO.BAS.ConvertString2ListInt(v.Record_Pids);

                if (o51ids.Count > 0 || oper == "clear")
                {
                    string strO51IDs = string.Join(",", o51ids);
                    foreach (int pid in pids)
                    {
                        switch (oper)
                        {
                        case "replace":
                            Factory.o51TagBL.SaveTagging(v.Record_Entity, pid, strO51IDs, v.SelectedO53ID);
                            break;

                        case "clear":
                            Factory.o51TagBL.SaveTagging(v.Record_Entity, pid, "", v.SelectedO53ID);
                            break;

                        case "append":
                            var c = Factory.o51TagBL.GetTagging(v.Record_Entity, pid);
                            if (c.TagPids == null)
                            {
                                c.TagPids = strO51IDs;
                            }
                            else
                            {
                                c.TagPids += "," + strO51IDs;
                            }
                            Factory.o51TagBL.SaveTagging(v.Record_Entity, pid, c.TagPids, v.SelectedO53ID);

                            break;

                        case "remove":
                            var d = Factory.o51TagBL.GetTagging(v.Record_Entity, pid);
                            if (d.TagPids != null)
                            {
                                foreach (int o51id in o51ids)
                                {
                                    d.TagPids = BO.BAS.RemoveValueFromDelimitedString(d.TagPids, o51id.ToString());
                                }
                                Factory.o51TagBL.SaveTagging(v.Record_Entity, pid, d.TagPids, v.SelectedO53ID);
                            }
                            break;
                        }
                    }
                    v.SetJavascript_CallOnLoad(v.j72ID);
                    return(View(v));
                }
            }



            return(View(v));
        }