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); }
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); }