Beispiel #1
0
        public override ActionResult WindowCommonShow(string PanelID, string ParentVariable, string ParentKey)
        {
            GetParentVariable(ParentVariable);
            string[] ss  = ParentVar.KeyWords.Split(CosValue.SPLITOPERATOR2);
            string[] sss = new string[2];
            sss[0] = ss[0];
            if (ss.Length == 2)
            {
                sss[1] = ss[1];
            }
            else
            {
                sss[1] = null;
            }
            DataListManage man = GetDataListManage(sss[0], sss[1]);

            man.InitSelection(ParentVar.transValue);
            var model = man.GetSpecialModelFromCurrentID(man.sRowNowID);

            if (model.ID == 0)
            {
                SimpleDlgDataListManage simpleMan = new SimpleDlgDataListManage();
                model = simpleMan.GetNewModel(model, sss[1]);
            }
            var form = this.GetCmp <FormPanel>(PanelID + "_Form");

            form.SetValues(model);
            return(this.Direct());
        }
        public override void InitHeader(string PanelID, DataListManage datalistMan)
        {
            var list  = this.GetCmp <GridPanel>(PanelID);
            var store = this.GetCmp <Store>(PanelID + "_Store");

            store.PageSize = AppSettingValues.DATALISTPAGELIMIT;
            store.RemoveFields();
            setStoreField(PanelID, "ID", CosDataBase.INT_TYPE);
            for (int i = 0; i < datalistMan.arrColumn.Count; i++)
            {
                bool visiable = true;
                if (i >= 10)
                {
                    visiable = false;
                }
                if (i < datalistMan.arrColumn.Count - 1)
                {
                    setPanelColumn(PanelID, (ColumnModel)datalistMan.arrColumn[i], datalistMan.bSort, 0, visiable);
                }
                else
                {
                    setPanelColumn(PanelID, (ColumnModel)datalistMan.arrColumn[i], datalistMan.bSort, 1, visiable);
                }
                setStoreField(PanelID, (ColumnModel)datalistMan.arrColumn[i]);
            }
            list.SortableColumns = true;
        }
        public virtual void InitHeader(string PanelID, DataListManage datalistMan)
        {
            var list  = this.GetCmp <GridPanel>(PanelID);
            var store = this.GetCmp <Store>(PanelID + "_Store");

            store.PageSize = AppSettingValues.DATALISTPAGELIMIT;

            store.RemoveFields();
            RowNumbererColumn col = new RowNumbererColumn();

            col.Width = 40;
            list.AddColumn(col);
            setStoreField(PanelID, "ID", CosDataBase.INT_TYPE);
            if (PanelID == "BMKSearch_DataList")
            {
                for (int i = 0; i < datalistMan.arrColumn.Count; i++)
                {
                    bool visiable = true;
                    if (((i >= 9) && (i != datalistMan.arrColumn.Count - 1)) || (i == 0))
                    {
                        visiable = false;
                    }
                    if (i < datalistMan.arrColumn.Count - 1)
                    {
                        setPanelColumn(PanelID, (ColumnModel)datalistMan.arrColumn[i], datalistMan.bSort, 0, visiable);
                    }
                    else
                    {
                        setPanelColumn(PanelID, (ColumnModel)datalistMan.arrColumn[i], datalistMan.bSort, 1, visiable);
                    }
                    setStoreField(PanelID, (ColumnModel)datalistMan.arrColumn[i]);
                }
            }
            else
            {
                for (int i = 0; i < datalistMan.arrColumn.Count; i++)
                {
                    bool visiable = true;
                    if ((i >= 9) && (i != datalistMan.arrColumn.Count - 1))
                    {
                        visiable = false;
                    }
                    if (i < datalistMan.arrColumn.Count - 1)
                    {
                        setPanelColumn(PanelID, (ColumnModel)datalistMan.arrColumn[i], datalistMan.bSort, 0, visiable);
                    }
                    else
                    {
                        setPanelColumn(PanelID, (ColumnModel)datalistMan.arrColumn[i], datalistMan.bSort, 1, visiable);
                    }
                    setStoreField(PanelID, (ColumnModel)datalistMan.arrColumn[i]);
                }
            }

            list.SortableColumns = true;
        }
        public virtual ActionResult SetDataCombo(string PanelID)
        {
            DataListManage datalistMan = (DataListManage)GetDataListManager(PanelID);

            datalistMan.SetarrColumn();
            var combo = this.GetCmp <ComboBox>(PanelID);

            combo.SetValue(((ColumnModel)datalistMan.arrColumn[0]).WordValue);
            return(this.Direct());
        }
        /// <summary>
        /// 对DataList的初始化,由BeforeRender的DirectEvent调用
        /// </summary>
        /// <returns></returns>
        public override ActionResult InitDataList(string ParentVariable, string PanelID, string Center_PageID)
        {
            PanelID = PanelID + "_DataSel";
            DataListManage datalistMan = (DataListManage)GetDataListManager(ParentVariable);

            InitHeader(PanelID, datalistMan);
            if (datalistMan.bFirstVisit)
            {
                RefreashStore(PanelID);
            }
            return(this.Direct());
        }
        /// <summary>
        /// 设置单选/多选方式
        /// </summary>
        /// <param name="clsDLManager"></param>
        private void SetSelectionModel(DataListManage datalistMan, string PanelID)
        {
            var selModel = this.GetCmp <RowSelectionModel>(PanelID + "_SelectedModel");

            if (datalistMan.bSingleSelect)
            {
                selModel.Mode = SelectionMode.Single;
            }
            else
            {
                selModel.Mode = SelectionMode.Multi;
            }
        }
        public ActionResult DataList_RegularExportClick(string ParentVariable, string sInitNames, string sInitValues, string sInitSigns, string sNowNames, string sNowValues, string sNowSigns)
        {
            DirectResult result = new DirectResult();

            result.IsUpload = true;

            string sNames  = sInitNames;
            string sValues = sInitValues;
            string sSigns  = sInitSigns;

            if (sInitNames != "")
            {
                if (sSigns == "")
                {
                    string[] ss = sNames.Split(CosValue.SPLITOPERATOR1);
                    for (int i = 0; i < ss.Length; i++)
                    {
                        sSigns = SIGN.Equal.ToString() + CosValue.SPLITOPERATOR1;
                    }
                    sSigns = sSigns.Remove(sSigns.Length - 1, 1);
                }
            }
            if (sNowValues != "")
            {
                if (sNames != "")
                {
                    sNames  = sNames + CosValue.SPLITOPERATOR1 + sNowNames;
                    sValues = sValues + CosValue.SPLITOPERATOR1 + sNowValues;
                    sSigns  = sSigns + CosValue.SPLITOPERATOR1 + sNowSigns;
                }
                else
                {
                    sNames  = sNowNames;
                    sValues = sNowValues;
                    sSigns  = sNowSigns;
                }
            }
            GetParentVariable(ParentVariable);
            DataListManage man = GetDataListManage(ParentVar.KeyWords, ParentVar.transValue);
            DataTable      dt  = man.GetSomeRecordForExcel(sNames, sValues, sSigns);
            ExcelOut       ex  = new ExcelOut();

            if (!ex.ExcelCreateAndDownload(dt))
            {
                X.Msg.Alert("错误", "导出文件出错!").Show();
            }
            return(result);
        }
        /// <summary>
        /// 获取当前Datalist中的数据
        /// </summary>
        /// <param name="parameters"></param>
        /// <returns></returns>
        public virtual ActionResult DataListRead(StoreRequestParameters parameters, string ParentVariable, string sInitNames, string sInitValues, string sInitSigns, string sInitAndOrs, string sNowNames, string sNowValues, string sNowSigns, string sNowAndOrs, string sVisitStatus)
        {
            GetParentVariable(ParentVariable);
            DataListManage datalistMan = (DataListManage)GetDataListManage(ParentVar.KeyWords, ParentVar.transValue);

            if ((sVisitStatus == "1") || datalistMan.bFirstVisit)
            {
                datalistMan.paremeters = new StoreRequestParameters();
                datalistMan.paremeters = parameters;

                string sNames  = sInitNames;
                string sValues = sInitValues;
                string sSigns  = sInitSigns;
                string sAndOrs = sInitAndOrs;

                if (sInitNames != "")
                {
                    if (sSigns == "")
                    {
                        string[] ss = sNames.Split(CosValue.SPLITOPERATOR1);
                        sSigns = string.Join(CosValue.SPLITOPERATOR1.ToString(), (string[])NewDuplicateArray(SIGN.Equal, ss.Length).ToArray(typeof(string)));
                    }
                }

                if (sNowNames != "")
                {
                    if (sNames != "")
                    {
                        sNames  = sNames + CosValue.SPLITOPERATOR1 + sNowNames;
                        sValues = sValues + CosValue.SPLITOPERATOR1 + sNowValues;
                        sSigns  = sSigns + CosValue.SPLITOPERATOR1 + sNowSigns;
                        sAndOrs = sAndOrs + CosValue.SPLITOPERATOR1 + sNowAndOrs;
                    }
                    else
                    {
                        sNames  = sNowNames;
                        sValues = sNowValues;
                        sSigns  = sNowSigns;
                        sAndOrs = sNowAndOrs;
                    }
                }
                return(this.Store(datalistMan.InitStore(sNames, sValues, sSigns)));
            }
            else
            {
                return(null);
            }
        }
        /// <summary>
        /// 对DataList的初始化,由BeforeRender的DirectEvent调用
        /// </summary>
        /// <returns></returns>
        public virtual ActionResult InitDataList(string ParentVariable, string PanelID, string Center_PageID)
        {
            GetParentVariable(ParentVariable);
            DataListManage man = GetDataListManage(ParentVar.KeyWords, ParentVar.transValue);

            if (man != null)
            {
                InitTopButton(PanelID, man, Center_PageID);
                InitHeader(PanelID, man);
                SetSelectionModel(man, PanelID);
                if (man.bFirstVisit)
                {
                    SetHiddenValue(PanelID + "_VisitStatus", "1");
                    RefreashStore(PanelID);
                }
            }
            return(this.Direct());
        }
        /// <summary>
        /// 获取当前Datalist中的数据
        /// </summary>
        /// <param name="parameters"></param>
        /// <returns></returns>
        public ActionResult DataSelRead(StoreRequestParameters parameters, string ParentVariable, string sInitNames, string sInitValues, string sInitSigns, string sNowNames, string sNowValues, string sNowSigns, string sVisitStatus)
        {
            DataListManage datalistMan = (DataListManage)GetDataListManager(ParentVariable);

            datalistMan.paremeters = new StoreRequestParameters();
            datalistMan.paremeters = parameters;

            string sNames  = sInitNames;
            string sValues = sInitValues;
            string sSigns  = sInitSigns;

            if (sInitNames != "")
            {
                if (sSigns == "")
                {
                    string[] ss = sNames.Split(CosValue.SPLITOPERATOR1);
                    for (int i = 0; i < ss.Length; i++)
                    {
                        sSigns = SIGN.Equal.ToString() + CosValue.SPLITOPERATOR1;
                    }
                    sSigns = sSigns.Remove(sSigns.Length - 1, 1);
                }
            }

            if (sNowValues != "")
            {
                if (sNames != "")
                {
                    sNames  = sNames + CosValue.SPLITOPERATOR1 + sNowNames;
                    sValues = sValues + CosValue.SPLITOPERATOR1 + sNowValues;
                    sSigns  = sSigns + CosValue.SPLITOPERATOR1 + SIGN.Like;
                }
                else
                {
                    sNames  = sNowNames;
                    sValues = sNowValues;
                    sSigns  = SIGN.Like.ToString();
                }
            }

            return(this.Store(datalistMan.InitStore(sNames, sValues, sSigns)));
        }
        /// <summary>
        /// 初始化DataList顶部工具条的Button
        /// </summary>
        private void InitTopButton(string PanelID, DataListManage datalistMan, string Center_PageID)
        {
            foreach (ButtonModel mo in datalistMan.arrTopButton)
            {
                SetButtonVisiable(PanelID, mo.ButtonID);
                if (mo.ButtonName != null)
                {
                    SetButtonName(PanelID, mo.ButtonID, mo.ButtonName);
                }
                if (mo.ButtonIcon != Icon.Blank)
                {
                    SetButtonIcon(PanelID, mo.ButtonID, mo.ButtonIcon);
                }
            }

            if (datalistMan.bNeedAuthor)
            {
                UserInfoManage userMan     = new UserInfoManage();
                string[]       key         = { CookieKeys.USERROLES };
                string         sUserRoles  = string.Join("", userMan.GetLoginUserInfo(key));
                var            authormodel = userMan.GetAccountOperationModel(sUserRoles, Center_PageID);
                if (!authormodel.AddFlag)
                {
                    SetButtonVisiable(PanelID, DataListButton.btnAdd, false);
                    SetButtonVisiable(PanelID, DataListButton.btnInport, false);
                }
                if (!authormodel.EditFlag)
                {
                    SetButtonVisiable(PanelID, DataListButton.btnEdit, false);
                }
                if (!authormodel.DeleteFlag)
                {
                    SetButtonVisiable(PanelID, DataListButton.btnDelete, false);
                }
                if (!authormodel.SearchFlag)
                {
                    SetButtonVisiable(PanelID, DataListButton.btnSearch, false);
                    SetButtonVisiable(PanelID, DataListButton.btnReset, false);
                    SetButtonVisiable(PanelID, DataListButton.btnExport, false);
                }
            }
        }
        public virtual ActionResult InitComboBox(string PanelID)
        {
            DataListManage datalistMan = (DataListManage)GetDataListManager(PanelID);

            return(this.Store(datalistMan.GetModelsForComboSearch()));
        }