Exemplo n.º 1
0
        protected override void AfterGetData(DataTable dt, bool isNew, string upperVersionID)
        {
            if (!isNew)
            {
                if (dt.Rows[0]["CtrlSourceAttr"] != null && dt.Rows[0]["CtrlSourceAttr"] != DBNull.Value)
                {
                    var dic = JsonHelper.ToObject(dt.Rows[0]["CtrlSourceAttr"].ToString());
                    foreach (var key in dic.Keys)
                    {
                        if (!dt.Columns.Contains(key))
                        {
                            dt.Columns.Add(key);
                        }
                        dt.Rows[0][key] = dic[key];
                    }
                }
            }
            string defineCode    = GetQueryString("DefineCode");
            var    allDefines    = this.InfrasDB.ExecuteDataTable("select * from S_EP_DefineApportion where Code = '" + defineCode + "'");
            var    inputHtmlList = new Dictionary <string, object>();

            if (allDefines.Rows.Count == 0)
            {
                return;
            }
            DataRow row = allDefines.Rows[0];

            if (row["InputSource"] == null || row["InputSource"] == DBNull.Value)
            {
                return;
            }

            var define = new S_EP_DefineApportion(FormulaHelper.DataRowToDic(row));

            inputHtmlList.Add(row["ID"].ToString(), define.GetInputDefineHtml());

            ViewBag.Script += "\n  var inputHtmlDic = " + JsonHelper.ToJson(inputHtmlList) + ";";

            //分摊明细
            string showDetail = (!string.IsNullOrEmpty(define.ModelDic.GetValue("ShowDetail")) &&
                                 define.ModelDic.GetValue("ShowDetail").ToLower() == "true").ToString().ToLower();

            ViewBag.Script += "\n  var showDetail = " + showDetail + ";";
            ViewBag.Script += "\n  var detailUrl = '" + define.ModelDic.GetValue("DetailUrl") + "';";
            string paramSetting = JsonHelper.ToJson(define.DetailParamDefineList);

            ViewBag.Script += "\n  var paramSetting = " + paramSetting + ";";

            //控件数据源
            ViewBag.Script += define.GetFormCtrlDataSoruce();
        }