Ejemplo n.º 1
0
        private Dictionary <string, object> BuildData(FormDataReq data, string formId, string eventinfoid)
        {
            var dic = new Dictionary <string, object>();

            if (data.FilterModels == null || data.FilterModels.Count() < 1)
            {
                dic.Add("law_party", Getlaw_partyByFormId(formId));
                dic.Add("law_staff", Getlaw_staffByFormId(formId));
                dic.Add("attachment", GetattachmentByFormId(formId));
                return(dic);
            }

            if (data.FilterModels.Contains("law_party"))
            {
                dic.Add("law_party", Getlaw_partyByFormId(formId));
            }
            if (data.FilterModels.Contains("law_staff"))
            {
                dic.Add("law_staff", Getlaw_staffByFormId(formId));
            }
            if (data.FilterModels.Contains("attachment"))
            {
                dic.Add("attachment", GetattachmentByFormId(formId));
            }
            if (data.FilterModels.Contains("casedetail"))
            {
                dic.Add("law_party", Getlaw_partyByFormId(formId));
                dic.Add("attachment", GetattachmentByFormId(formId));
                dic.Add("casetimeline", GetAllFormByEventId(eventinfoid));
            }
            return(dic);
        }
Ejemplo n.º 2
0
        public object FormData(FormDataReq data)
        {
            var res_dictionarycase = QueryDb.FirstOrDefault <res_dictionary>("where DicCode=@0", "CaseType");
            var dicItemscase       = QueryDb.Query <res_dictionaryItems>("SELECT * FROM res_dictionaryitems where DicID=@0", res_dictionarycase.ID).ToDictionary(k => k.ItemCode, v => v.Title);

            if (data.Model.ToUpper() == "case_Info".ToUpper())
            {
                data.Model = "case_Info";
            }
            IService service = ServiceHelper.GetService(data.Model);

            //根据事件id或者id查询数据
            var filter = new FilterGroup();

            if (!string.IsNullOrEmpty(data.FormId))
            {
                filter.rules.Add(new FilterRule("ID", data.FormId, "equal"));
            }
            if (!string.IsNullOrEmpty(data.EventInfoId))
            {
                filter.rules.Add(new FilterRule("EventInfoId", data.EventInfoId, "equal"));
            }
            object atlist = null;

            //案件特殊判断
            if (data.Model.ToUpper() == "case_Info".ToUpper())
            {
                filter.rules.Add(new FilterRule("PreviousformID", "", "notequal"));
                atlist = Getpunishattchment(data.FormId);
            }
            ServiceConfig userServiceConfig = ServiceHelper.GetServiceConfig("user");
            //查询主表数据
            var obj = service.GetListData(filter).OrderByDescending(s => s.Keys.Contains("createTime") ? s["createTime"] : s["CreateDate"]).FirstOrDefault();  //查询主表单

            if (obj == null)
            {
                return(null);            //throw new Exception("未取得关联数据");
            }
            obj.Add("publishtype", publishtypet);
            if (obj.ContainsKey("PunishmentTitle"))
            {
                obj["PunishmentTitle"] = publishTitle;
            }
            else
            {
                obj.Add("PunishmentTitle", publishTitle);
            }
            if (obj["CreateUserID"] != null)
            {
                var user = SysContext.GetOtherDB(userServiceConfig.model.dbName).First <user>($"select * from user where Id='{obj["CreateUserID"]}'");
                if (user != null)
                {
                    obj["CreateUserID"] = user.Name;
                }
            }
            if (data.Model.ToUpper() == "case_Info".ToUpper())
            {
                if (obj.ContainsKey("CaseType"))
                {
                    if (obj["CaseType"] != null)
                    {
                        if (dicItemscase.ContainsKey(obj["CaseType"].ToString()))  // CaseType 显示中文title
                        {
                            obj["CaseType"] = dicItemscase[obj["CaseType"].ToString()];
                        }
                    }
                }
            }
            string formId      = obj["ID"].ToString(); //得到id
            string eventinfoid = null;

            if (obj.ContainsKey("EventInfoId"))
            {
                eventinfoid = obj["EventInfoId"] != null ? obj["EventInfoId"].ToString() : string.Empty;
            }
            if (data.Model.ToLower() == "task_survey")  // 现场勘查 EventType 显示中文title
            {
                var res_dictionary = QueryDb.FirstOrDefault <res_dictionary>("where DicCode=@0", "EventType");
                var dicItems       = QueryDb.Query <res_dictionaryItems>("SELECT * FROM res_dictionaryitems where DicID=@0", res_dictionary.ID).ToDictionary(k => k.ItemCode, v => v.Title);
                var eventType      = obj["EventType"].ToString();
                if (dicItems.ContainsKey(eventType))
                {
                    obj["EventType"] = dicItems[eventType];
                }
            }

            //构建其他需要查询的数据
            var dicData = BuildData(data, formId, eventinfoid);

            obj.Add("closeDate", closeDate);
            dicData.Add("MainForm", obj);
            //添加处罚决定书证据附件
            if (atlist != null)
            {
                if (dicData.ContainsKey("attachment"))
                {
                    var als = dicData["attachment"] as List <attachment>;
                    if (als != null)
                    {
                        als.AddRange(atlist as List <attachment>);
                        dicData["attachment"] = als;
                    }
                    else
                    {
                        dicData["attachment"] = atlist;
                    }
                }
                else
                {
                    dicData.Add("attachment", atlist);
                }
            }
            return(dicData);
        }