Esempio n. 1
0
        public ActionResult Demo()
        {
            StrObjectDict dict = GetParams();

            string temp        = dict.GetString("FormStruct");
            string FormID      = dict.GetString("FormID");
            string VersionCode = dict.GetString("VersionCode");

            StrObjectDict tes1 = JsonAdapter.FromJsonAsDictionary(temp).toStrObjDict();

            string result = temp.ToJson();


            //string[] array = temp.Trim().Split(',');

            //string temp2 = "";

            //for (int i = 0; i < array.Length; i++)
            //{
            //    array[i] += ",";
            //    temp2 += array[i];
            //}

            //temp2 = temp2.Substring(0, temp2.Length - 1);

            //IList<string> lis = new List<string>(array);

            int temps = FormManager.Instance.InsertData(tes1, dict);

            //return this.MyJson(1, lis);

            return(this.MyJson(1, tes1));
        }
Esempio n. 2
0
        public ActionResult TargetLoad()
        {
            var sod  = GetParams();
            var data = _dal.List <NursingMarkTarget>(sod);

            var    lst = new List <dynamic>();
            string strScoreValue, strScoreRemark;

            foreach (var item in data)
            {
                strScoreValue = strScoreRemark = string.Empty;
                var strJson = "[";
                if (!string.IsNullOrEmpty(item.ScoreValue))
                {
                    var scoreValue  = item.ScoreValue.Split(',');
                    var valueRange  = item.ValueRange.Split(',');
                    var scoreRemark = string.IsNullOrEmpty(item.ScoreRemark) ? null : item.ScoreRemark.Split(',');
                    for (int i = 0; i < scoreValue.Length; i++)
                    {
                        strJson += "{";
                        strJson += string.Format("'fz':'{0}','zy':'{1}','sm':'{2}'",
                                                 scoreValue[i],
                                                 valueRange[i],
                                                 scoreRemark == null ? "" : scoreRemark[i]);
                        strJson        += "},";
                        strScoreValue  += string.Format("{0}={1},", valueRange[i], scoreValue[i]);
                        strScoreRemark += string.Format("{0}分({1});", scoreValue[i], scoreRemark == null ? "" : scoreRemark[i]);
                    }
                    strScoreValue  = strScoreValue.TrimEnd(',');
                    strScoreRemark = strScoreRemark.TrimEnd(';');
                    strJson        = strJson.TrimEnd(',');
                }
                strJson += "]";

                var obj = new
                {
                    ID             = item.ID,
                    Name           = item.Name,
                    MarkTabID      = item.MarkTabID,
                    Remark         = item.Remark,
                    SerialNumber   = item.SerialNumber,
                    IsMultiple     = item.IsMultiple,
                    ElementID      = item.ElementID,
                    StrScoreValue  = strScoreValue,
                    StrScoreRemark = strScoreRemark,
                    score_group    = JsonAdapter.FromJsonAsDictionary(strJson)
                };

                lst.Add(obj);
            }
            return(this.MyJson(1, lst));
        }
Esempio n. 3
0
        public int SaveFormData(IDictionary <string, object> obj)
        {   //step1 -> delete  step2 -> Insert
            this.DelFormData(obj);
            //insert
            var           temp = obj.GetString("Content");
            StrObjectDict list = JsonAdapter.FromJsonAsDictionary(temp).toStrObjDict();
            Dictionary <string, Dictionary <string, object> > dicList = new Dictionary <string, Dictionary <string, object> >();
            IList <DBState> dblist = new List <DBState>();

            foreach (var item in list)
            {
                if (item.Value is Dictionary <string, object> )
                {
                    FindChilds(item.Value as Dictionary <string, object>, dicList, item.Key);
                }
            }
            var t = dicList.Remove("info");

            foreach (var i in dicList)
            {
                foreach (var s in i.Value)
                {
                    dblist.Add(new DBState
                    {
                        Name  = "INSERT_FormData",
                        Param = new
                        {
                            ID          = obj["ID"],
                            FSID        = s.Key.ToString(),
                            DataText    = s.Value.ToString(),
                            VersionCode = obj["VersionCode"],
                            FormID      = obj["FormID"]
                        }.toStrObjDict(),
                        Type = ESqlType.INSERT
                    });
                }
            }
            return(DB.Execute(dblist));
        }
Esempio n. 4
0
        //public void OnActionExecuted(ActionExecutedContext filterContext)
        //{
        //    ControllerContext controllerContext = filterContext.Controller.ControllerContext;
        //    HttpRequestBase request = controllerContext.HttpContext.Request;
        //    if (!request.IsAjaxRequest())
        //    {
        //        string text = request.Req("menuid");
        //        filterContext.Controller.ViewData["exclude_btn"] = "[]";
        //        if (!string.IsNullOrEmpty(text))
        //        {
        //            IList<StrObjectDict> list = DB.ListSod("list_menu_op_by_yhid", StrObjectDict.FromVariable(new
        //            {
        //                YHID = LoginSession.Current.YHID,
        //                MENUID = text
        //            }));
        //            string text2 = "";
        //            for (int i = 0; i < list.Count; i++)
        //            {
        //                if (i > 0)
        //                {
        //                    text2 += ",";
        //                }
        //                text2 = text2 + "'" + Utils.GetString(list[i]["OPDM"]) + "'";
        //            }
        //            filterContext.Controller.ViewData["exclude_btn"] = "[" + text2 + "]";

        //        }
        //    }
        //}


        public void OnActionExecuted(ActionExecutedContext filterContext)
        {
            JsonResult json = filterContext.Result as JsonResult;

            if (json == null)
            {
                return;
            }

            PropertyInfo info = json.Data.GetType().GetProperty("Flag");

            if (info == null)
            {
                return;
            }
            object result = info.GetValue(json.Data, null);

            if (result == null || result.ToString() == "0")
            {
                return;
            }

            //检查菜单的操作权限,并返回允许的操作
            ControllerContext controllerContext = filterContext.Controller.ControllerContext;
            HttpRequestBase   request           = controllerContext.HttpContext.Request;

            //string menuID = request.Req("MenuID");

            //根据url查找功能,如果没有找到,则认为是操作,不进行处理,否则查找功能相应操作是否有相应权限
            string uri = request.Url.PathAndQuery;


            if (!string.IsNullOrEmpty(uri))
            {
                IList <StrObjectDict> menuOpt = MenuManager.Instance.GetMenuOpt(new
                {
                    UserID = "123",//LoginSession.Current.YHID,
                    Url    = uri
                }.toStrObjDict());

                if (menuOpt != null && menuOpt.Count() > 0)
                {
                    JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                    javaScriptSerializer.MaxJsonLength *= 100;

                    string s = javaScriptSerializer.Serialize(json.Data);

                    object        o           = JsonAdapter.FromJsonAsDictionary(s);
                    StrObjectDict dict_filter = StrObjectDict.FromVariable(o);
                    if (dict_filter.ContainsKey("Output"))
                    {
                        o = dict_filter["Output"];

                        if (o == null || o.ToString() == "")
                        {
                            o = new
                            {
                                Option = ""
                            };
                        }

                        StrObjectDict output = o.toStrObjDict();

                        output["Option"]      = menuOpt;
                        dict_filter["Output"] = output;
                    }
                    filterContext.Result = filterContext.Controller.MyJson(int.Parse(dict_filter["Flag"].ToString()), "" + dict_filter["Msg"], dict_filter["Output"]);
                }
            }
        }
Esempio n. 5
0
        public ActionResult UpdateVer()
        {
            StrObjectDict dict   = GetParams();
            string        Struct = dict.GetString("FormStruct");

            string id = dict.GetString("ID");

            if (string.IsNullOrEmpty(id))
            {
                return(this.MyJson(0, "参数不能为空:ID"));
            }
            dict["FormID"] = dict["ID"];

            IList <StrObjectDict> checkvercode = FormManager.Instance.CheckVerCode(dict);
            IList <StrObjectDict> formtype     = FormManager.Instance.GetFormTypes(dict);

            try
            {
                if (string.IsNullOrEmpty(checkvercode[0]["VersionCode"].ToString()))
                {
                    return(this.MyJson(-1, "调用失败"));
                }
            }
            catch
            {
                return(this.MyJson(0, "最新版本号获取失败"));
            }

            try
            {
                if (string.IsNullOrEmpty(formtype[0]["Type"].ToString()))
                {
                    return(this.MyJson(-1, "调用失败"));
                }
            }
            catch
            {
                return(this.MyJson(0, "表单类型获取失败"));
            }



            dict["VersionCode"] = checkvercode[0]["VersionCode"];

            dict["PageNumber"] = "1";

            var result = FormManager.Instance.FormVerUpdate(dict);

            if (dict["FormType"].ToString().Trim() != "2")
            {
                try
                {
                    var           del  = FormManager.Instance.DelData(dict);
                    StrObjectDict list = JsonAdapter.FromJsonAsDictionary(Struct).toStrObjDict();
                    var           data = FormManager.Instance.InsertData(list, dict);
                }
                catch
                {
                    //执行失败删除插入内容
                    FormManager.Instance.FormVerDel(dict);
                    return(this.MyJson(-1, "UpdateVer接口的错误信息:检测到[报表统计数据]ID存在重复,违反唯一约束条件。数据进行回滚操作。"));
                }
            }

            if (result > 0)
            {
                return(this.MyJson(1, "更新成功"));
            }
            else
            {
                return(this.MyJson(0, "更新失败"));
            }
        }
Esempio n. 6
0
        public ActionResult InsertVer()
        {
            StrObjectDict dict   = GetParams();
            string        Struct = dict.GetString("FormStruct");
            string        id     = dict.GetString("FormID");

            if (string.IsNullOrEmpty(id))
            {
                return(this.MyJson(0, "参数不能为空:FormID"));
            }

            IList <StrObjectDict> checkvercode = FormManager.Instance.CheckVerCode(dict);
            IList <StrObjectDict> formtype     = FormManager.Instance.GetFormTypes(dict);

            try
            {
                if (string.IsNullOrEmpty(checkvercode[0]["VersionCode"].ToString()))
                {
                    return(this.MyJson(-1, "调用失败"));
                }
            }
            catch
            {
                return(this.MyJson(0, "最新版本号获取失败"));
            }

            try
            {
                if (string.IsNullOrEmpty(formtype[0]["Type"].ToString()))
                {
                    return(this.MyJson(-1, "调用失败"));
                }
            }
            catch
            {
                return(this.MyJson(0, "表单类型获取失败"));
            }

            dict["FormType"] = formtype[0]["Type"];

            var    version = checkvercode[0]["VersionCode"].ToString();
            string temp    = FormManager.Instance.NewVerCode(version);

            if (temp == "Error")
            {
                return(this.MyJson(-1, "接口错误"));
            }

            dict["VersionCode"] = temp;

            dict["PageNumber"] = "1";
            dict["ID"]         = Utils.getGUID();

            var result = FormManager.Instance.FormVerInsert(dict);

            //var results = FormManager.Instance.SetVerCode(dict);
            if (dict["FormType"].ToString().Trim() != "2")
            {
                try
                {
                    StrObjectDict list = JsonAdapter.FromJsonAsDictionary(Struct).toStrObjDict();
                    var           data = FormManager.Instance.InsertData(list, dict);
                }
                catch (Exception msg)
                {
                    //执行失败删除插入内容
                    FormManager.Instance.FomrVerDelCatch(dict["ID"].ToString());
                    //恢复原先版本号
                    //dict["VersionCode"] = version;
                    //FormManager.Instance.SetVerCode(dict);
                    return(this.MyJson(-1, msg.Message));
                }
            }

            if (result > 0)
            {
                return(this.MyJson(1, "保存成功"));
            }
            else
            {
                return(this.MyJson(0, "保存失败"));
            }
        }
Esempio n. 7
0
        public override ActionResult InsertOrUpdate()
        {
            StrObjectDict dict = GetParams();

            string Struct    = dict.GetString("FormStruct");
            string formstyle = dict.GetString("FormStyle");

            if (!dict.ContainsKey("VersionCode"))
            {
                dict["VersionCode"] = "1.0";
            }
            //if (string.IsNullOrEmpty(dict["Pages"].ToString()))
            //{
            //    return this.MyJson(0, "参数不能为空:Pages");
            //}

            dict["ModifyTime"]  = DateTime.Now;
            dict["ModifyUser"]  = LoginSession.Current.NAME;
            dict["InvalidTime"] = DateTime.Now;
            dict["UpdateUser"]  = LoginSession.Current.NAME;
            dict["PageNo"]      = "1";

            #region NursingForm
            string   name           = dict.GetString("Name");
            string   fastCode       = dict.GetString("FastCode");
            string   formType       = dict.GetString("FormType");
            string   markCode       = dict.GetString("MarkCode");
            string   modifyUser     = LoginSession.Current.NAME;
            DateTime modifyTime     = DateTime.Now;
            string   deptRange      = dict.GetString("DeptRange");
            string   formAgainst    = dict.GetString("FormAgainst");
            string   newVersionCode = dict.GetString("NewVersionCode");
            string   designVersion  = dict.GetString("DesignVersion");
            string   resolution     = dict.GetString("Resolution");
            DateTime invalidTime    = DateTime.Now;
            string   isInvalid      = dict.GetString("IsInvalid");
            string   ID             = dict.GetString("ID");
            #endregion

            #region NursingFormVersion
            string   updateUser    = LoginSession.Current.NAME;
            string   version       = dict.GetString("VersionCode");
            string   updateRemark  = dict.GetString("UpdateRemark");
            string   issuer        = dict.GetString("Issuer");
            DateTime issueDateTime = DateTime.Now;
            string   issueRemark   = dict.GetString("IssueRemark");
            #endregion

            #region NursingFormFile
            string pageNumber  = dict.GetString("PageNumber");
            string pageNo      = dict.GetString("PageNo");
            string pageContent = dict.GetString("PageContent");
            string docment     = dict.GetString("Docment");
            string versionCode = dict.GetString("VersionCode");
            string formStruct  = dict.GetString("FormStruct");
            #endregion

            if (formType != "2")
            {
                if (string.IsNullOrEmpty(formstyle))
                {
                    return(this.MyJson(0, "参数不能为空:FormStyle"));
                }
            }
            else
            {
                dict["FormStyle"] = "N/A";
            }

            if (string.IsNullOrEmpty(formType))
            {
                return(this.MyJson(0, "参数不能为空:FormType"));
            }

            if (string.IsNullOrEmpty(ID))
            {
                string id = Utils.getGUID();
                dict["ID"]     = id;
                dict["FormID"] = id;
                switch (dict["FormStyle"].ToString())
                {
                //样式A
                case "4f31eca8-ff29-404f-99f7-8cc8afe395a5":
                    dict["FormStructA"]  = dict["FormStruct"];
                    dict["PageContentA"] = dict["PageContent"];
                    dict.Remove("FormStruct");
                    dict.Remove("PageContent");
                    break;

                //样式B
                case "c4bbc193-9f77-408c-909c-4073a9da2d01":
                    dict["FormStructB"]  = dict["FormStruct"];
                    dict["PageContentB"] = dict["PageContent"];
                    dict.Remove("FormStruct");
                    dict.Remove("PageContent");
                    break;

                //样式C
                case "7f9b2933-fe36-45b0-9442-d3fb7384d90e":
                    dict["FormStructC"]  = dict["FormStruct"];
                    dict["PageContentC"] = dict["PageContent"];
                    dict.Remove("FormStruct");
                    dict.Remove("PageContent");
                    break;

                //自适应
                default:
                    break;
                }
                try
                {
                    var result = FormManager.Instance.FormInsert(dict);
                }
                catch
                {
                    //执行失败删除插入内容
                    var del = FormManager.Instance.NursingFormInsertDelete(id);
                    return(this.MyJson(-1, "调用失败:请检查入参是否符合规范或缺失必要入参或表单名称是否重复。"));
                }
                if (dict["FormType"].ToString().Trim() != "2")
                {
                    try
                    {
                        StrObjectDict list = JsonAdapter.FromJsonAsDictionary(Struct).toStrObjDict();
                        var           data = FormManager.Instance.InsertData(list, dict);
                    }
                    catch
                    {
                        //执行失败删除插入内容
                        var del = FormManager.Instance.NursingFormInsertDelete(id);
                        return(this.MyJson(-1, "InsertOrUpdate接口的错误信息:检测到[报表统计数据]ID存在重复,违反唯一约束条件。数据进行回滚操作。"));
                    }
                }
                return(this.MyJson(1, "保存成功!"));
            }
            else
            {
                switch (dict["FormStyle"].ToString())
                {
                //样式A
                case "4f31eca8-ff29-404f-99f7-8cc8afe395a5":
                    dict["FormStructA"]  = dict["FormStruct"];
                    dict["PageContentA"] = dict["PageContent"];
                    dict.Remove("FormStruct");
                    dict.Remove("PageContent");
                    break;

                //样式B
                case "c4bbc193-9f77-408c-909c-4073a9da2d01":
                    dict["FormStructB"]  = dict["FormStruct"];
                    dict["PageContentB"] = dict["PageContent"];
                    dict.Remove("FormStruct");
                    dict.Remove("PageContent");
                    break;

                //样式C
                case "7f9b2933-fe36-45b0-9442-d3fb7384d90e":
                    dict["FormStructC"]  = dict["FormStruct"];
                    dict["PageContentC"] = dict["PageContent"];
                    dict.Remove("FormStruct");
                    dict.Remove("PageContent");
                    break;

                //自适应
                default:
                    break;
                }
                try
                {
                    var result = FormManager.Instance.FormUpdate(dict);
                }
                catch
                {
                    return(this.MyJson(-1, "调用失败:请检查入参是否符合规范或缺失必要入参或表单名称是否重复。"));
                }
                if (dict["FormType"].ToString().Trim() != "2")
                {
                    try
                    {
                        StrObjectDict list = JsonAdapter.FromJsonAsDictionary(Struct).toStrObjDict();
                        //清除键值对备份数据
                        var del = FormManager.Instance.DelData(dict);
                        //保存键值对备份数据
                        var data = FormManager.Instance.InsertData(list, dict);
                    }
                    catch (Exception msg)
                    {
                        return(this.MyJson(-1, msg.Message));
                    }
                }
                return(this.MyJson(1, "保存成功!"));
            }
        }