using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.ViewFeatures; using Newtonsoft.Json; using System.Net.Http; using System.Runtime; using System.Runtime.Serialization; using test; using WebApplication1.Models; namespace WebApplication1.Controllers { [ApiController] [Route("[controller]/[action]")] public class TwentySystemController : ControllerBase { private readonly HttpClient httpClient; private string ip, port; public TwentySystemController(IHttpClientFactory httpClientFactory, IConfiguration configuration) { ip = configuration.GetSection("Configs:SystemIp").Value; port = configuration.GetSection("Configs:Port").Value; httpClient = httpClientFactory.CreateClient(); httpClient.BaseAddress = new Uri($"http://{ip}:{port}"); httpClient.DefaultRequestHeaders.Add("Accept", "application/json"); httpClient.DefaultRequestHeaders.Add("User-Agent", "HttpClientFactory-Sample"); httpClient.DefaultRequestHeaders.ConnectionClose = true; } [HttpGet] public async Task> GetJZXX(string dwbm, string bmsah) { try { MDossier dossier = new MDossier(dwbm, $"{ip}:{port}"); var data = await dossier.GetJZXX(dwbm, bmsah); return new Result() { IsSucceed = true, Message = "操作成功", result = data }; } catch (Exception ex) { return new Result() { IsSucceed = false, Message = "操作失败" + ex.Message }; } } [HttpGet] public async Task>> GetCaseInfo(string? casename, string? bmsah, string? dwbm, DateTime? starttime, DateTime? endtime, int page, int size) { await Task.Delay(10); var param = new { ksslrq = starttime?.ToString("yyyy-MM-dd") ?? DateTime.Now.AddDays(-100).ToString("yyyy-MM-dd"), jsslrq = endtime?.ToString("yyyy-MM-dd") ?? DateTime.Now.ToString("yyyy-MM-dd"), bmsah = bmsah, zzzt = "", ajlbbms = new string[] { "2801", "2802", "2803", "1602", "2001", "2002", "2003", "2004", "2005", "2006", "2007", "2009", "2010", "2011", "2012", "2013", "2015", "2016", "2017", "2018", "2019", "2020", "2021", "2022", "2023", "2024", "2025", "2026", "2027", "2029", "2031", "2032", "2033", "2034", "2035", "2036", "2037", "2039", "2040", "2041", "2042", "2043", "2044", "2048", "2049", "2050", "2051", "2052", "2053", "2054", "2055", "2056", "2058", "2059", "2062", "2077", "2078", "1603", "1604", "1608", "1611", "1614", "1619", "1621", "1622", "1625", "1626", "1630", "1631", "1632", "1633", "1634", "1635", "1636", "1637", "1638", "1650", "1801", "1802", "1803", "1805", "1806", "1807", "1808", "1809", "1810", "1812", "1813", "1901", "1902", "1903", "1904", "1905", "1906", "1907", "1908", "1909", "1910", "1911", "1912", "1913", "1914", "1915", "1916", "1917", "1918", "1919", "0701", "0702", "0703", "0704", "0705", "0706", "0707", "0708", "0709", "0710", "0711", "0712", "0713", "0714", "0715", "0716", "0717", "0718", "0719", "0720", "0721", "0722", "0723", "0724", "0725", "0726", "0727", "1701", "1702", "1703", "1704", "1705", "1706", "1708", "1709", "1710", "1711", "1712", "1713", " 1714", "1715", "1716", "1718", "1719", "1720", "1722", "1723", "1724", "1725", "1726", "1727", "1728", "1729", "1730", "1731", "1732", "1733", "1734", "1736", "1737", "1738", "1740", "1741", "1742", "1743", "1744", "1745", "1747", "1748", "1749", "1750", "1752", "1753", "1754", "1756", "1757", "1758", "1759", "1760", "1761", "1762", "1768", "1769", "1770", "1771", "1772", "1773", "1774", "1775", "1778", "1779", "1780", "1781", "1782", "1784", "1785", "1786", "1787", "1788", "1789", "1790", "1791", "1792", "2701", "2702", "2703", "2704", "2705", "2706", "2707", "2708", "2710", "2711", "2712", "2713", "2714", "2715", "2716", "2717", "2718", "2719", "2721", "2722", "2723", "2724", "2726", "2727", "2728", "2729", "2730", "2731", "2732", "2733", "2734", "2735", "2736", "2737", "0801", "0802", "0803", "0804", "0805", "0806", "0808", "0809", "0810", "0811", "0812", "0813", "0814", "0815", "0816", "0817", "0818", "0819", "0820", "0821", "0822", "0823", "0824", "0825", "0826", "0827", "0828", "1401", "1402", "1403", "1404", "1405", "1406", "1408", "1409", "1410", "1411", "1412", "1413", "1414", "1415", "1101", "1102", "1103", "1104", "1105", "1107", "1108", "1109", "1111", "1112", "1302", "1303", "1304", "1305", "2202", "2203", "2204", "2205", "2207", "2209", "2301", "2302", "2303", "2401", "2402", "2101", "2102", "2103", "2104", "2105", "2106", "2107", "2108", "2109", "2110", "2111", "2112", "2113", "2114", "2115", "2116", "2117", "2118", "2119", "2120", "2122", "2123", "2124", "2130", "2501", "2502", "2509", "2601", "2602", "2603", "2604", "0301", "3001", "3002" }, ajmc = casename, sfsy = "", sfbd = "", dwbms = new string[] { dwbm }, page = page.ToString(), size = size.ToString() }; httpClient.DefaultRequestHeaders.Add("X-IDENTITY", "eyJkbGJtIjoi5rGk6Lev5bmzIiwicnlibSI6IjQxMDUwMzAwNzQiLCJkd2JtIjoiNDEwNTAzIiwiZHdtYyI6IuWMl+WFs+WMuumZoiIsInJ5bWMiOiLmsaTot6/lubMifQ=="); var request = await httpClient.PostAsJsonAsync("/dzjzzz-service/api/dzjzzz/dzjzzzYxJzjbxx/getDzzjzList", param); var data = await request.EnsureSuccessStatusCode().Content.ReadAsStringAsync(); var result = data.ConvertToAnonymousType(new { code = default(string), success = default(bool), message = default(string), data = new { pageNum = default(int), pageSize = default(int), total = default(int), pages = default(int), list = new[] { default(JZInfo) } } }); if (result.success == true) { if (result.data == null) { return new Result>() { IsSucceed = true, Message = result.message ?? "查询成功" }; } else { var res = new Result>() { IsSucceed = true, Message = "操作成功", result = new Paging() { pageNum = result?.data?.pageNum, pageSize = result?.data?.pageSize, total = result?.data?.total, pages = result?.data?.pages, List = result?.data?.list?.ToList() } }; return res; } } else { return new Result>() { IsSucceed = false, Message = result.message ?? "查询失败" }; } } public static string? dttjMapdata; /// /// 案件协同添加 /// /// 部门受案号 /// 单位编码 /// [HttpGet] public async Task> CaseAdd(string bmsah, string dwbm) { // 测试参数 // string bmsah = "安北检未捕受[2023]410503000012号"; // string dwbm = "410503"; List list = new List(); try { List untis = new List(); // 接口地址 127.0.0.1:8080 var list_da = new List(); //案件信息 var list_dad = new List(); //案件信息案卡 var list_xxk = new List(); //案件信息案卡选项卡信息 var list_akdad = new List(); //添加数据到案件信息案卡 var infolist = new List(); var detail = new List(); string dqjdbh = string.Empty; string dqjdmc = string.Empty; // 案件信息参数 var lcJson = new { bmsah = bmsah // 部门受案号 }; // 案件信息接口 //var lcUrl = HttpHelper.Post("http://ajmx-service/api/caseCommon/getCaseBaseInfoAndSendLog", lcJson); var request = await httpClient.PostAsJsonAsync("/ajmx-service/api/caseCommon/getCaseBaseInfoAndSendLog", lcJson); var lcUrl = await request.EnsureSuccessStatusCode().Content.ReadAsStringAsync(); var lcModel = JsonConvert.DeserializeObject>(lcUrl); if (lcModel.code == "0" && lcModel.success == true) { dqjdmc = lcModel.Data.dqjdmc; dqjdbh = lcModel.Data.dqjdbh; } var uniquedata = infolist.Where(q => q.case_bmsah == bmsah).ToList(); if (uniquedata.Count == 0) { // 获取模型编码接口参数 var mxbmparm = new { dwbm = dwbm, // 单位编码 mxbm = lcModel.Data.ajmxbm // 案件模型编码 }; // 案件模型接口 //var mxbmstr = HttpHelper.Post("http://" + ajUrl + "/ajmx-service/api/model/getModelBaseInfo", mxbmparm); var requestmxbmstr = await httpClient.PostAsJsonAsync("/ajmx-service/api/model/getModelBaseInfo", mxbmparm); var mxbmstr = await requestmxbmstr.EnsureSuccessStatusCode().Content.ReadAsStringAsync(); var mxbm = JsonConvert.DeserializeObject>>(mxbmstr); if (mxbm.code == "0" && mxbm.success == true) { foreach (var mxbmDto in mxbm.Data) { var mxbmsjmxbm = mxbmDto.sjmxbm; // 案卡树信息参数 var akparm = new { mxbm = mxbm.Data[0].mxbm, // 模型编码 rootData = bmsah // 部门受案号 }; // 案卡树信息接口 var requestmxbmstra = await httpClient.PostAsJsonAsync("/ajmx-service/api/caseForm/getRunningTreetData", akparm); var akstr = await requestmxbmstra.EnsureSuccessStatusCode().Content.ReadAsStringAsync(); var akdata = JsonConvert.DeserializeObject>>(akstr); if (akdata.code == "0" && akdata.success == true) { foreach (var ak in akdata.Data) { if (ak.stbmList == null || ak.stbmList.Count == 0) { if (ak.children != null && ak.children.Count > 0) { foreach (var children in ak.children) { // 案件案卡信息参数 var xxk = new { zbZjMap = new { bmsah = bmsah }, dwbm = dwbm, sjmxbm = mxbmsjmxbm, stbmjh = children.stbmList, xtbs = children.bdbs, dttjMap = dttjMapdata, zjMap = children.zjjh }; #region 获取嫌疑人编号 // 获取嫌疑人编号 var xyrbm = ""; try { xyrbm = children.zjjh.ZRRBM; } catch (Exception ex) { xyrbm = ""; } #endregion // 案件案卡信息接口 //var xxkstr = HttpHelper.Post("http://" + ajUrl + "/ajmx-service/api/caseForm/getAkFormData", xxk); var requestmxbmstrb = await httpClient.PostAsJsonAsync("/ajmx-service/api/caseForm/getAkFormData", xxk); var xxkstr = await requestmxbmstrb.EnsureSuccessStatusCode().Content.ReadAsStringAsync(); var my_obj = JsonConvert.DeserializeObject>>(xxkstr); if (my_obj.code == "0" && my_obj.success == true) { string case_yszm = string.Empty; string case_yszm_code = string.Empty; for (var i = 0; i < my_obj.Data[0].zdsj.Count; i++) { if (my_obj.Data[0].zdsj[i].zdmc == "YSAY") // 移送案由代码 { case_yszm = my_obj.Data[0].zdsj[i].bgqzdwbz; // 移诉罪名名称 case_yszm_code = my_obj.Data[0].zdsj[i].bgqzdbmz; // 移诉罪名编码 list.Add(new { yszmmc = case_yszm, yszmbm = case_yszm_code // 在线标识 }); break; } } } } } } } } } } } //ret.IsSucceed = true; //return Json(ret); } catch (Exception ex) { //ret.IsSucceed = false; //ret.Message = "添加失败请联系技术人员!"; //return Json(ret); } return list; } } public class Paging { public int? pageNum { get; set; } public int? pageSize { get; set; } public int? total { get; set; } public int? pages { get; set; } public IEnumerable? List { get; set; } } public class Result { /// /// 成功/失败 /// [DataMember] public bool IsSucceed { get; set; } /// /// 消息 /// [DataMember] public string Message { get; set; } /// /// 消息 /// [DataMember] public dynamic result { get; set; } } public class Result : Result { /// /// 扩展数据 /// [DataMember] public new T result { get; set; } } public class JZInfo { public string? jzbh { get; set; } public string? ajmc { get; set; } public string? bmsah { get; set; } public string? cbdwbm { get; set; } public string? rybm { get; set; } public string? rymc { get; set; } public int? cs { get; set; } public int? ys { get; set; } public DateTime? cjsj { get; set; } public DateTime? cjrq { get; set; } public string? zzr { get; set; } public string? zzrbm { get; set; } public string? zzzt { get; set; } public string? jzms { get; set; } public string? jzxh { get; set; } public string? nfbd { get; set; } public string? jzsd { get; set; } public string? ajlbbm { get; set; } public string? ajlbmc { get; set; } public DateTime? slrq { get; set; } public string? jzocrzt { get; set; } public string? id { get; set; } public string? yjzmc { get; set; } public string? sfck { get; set; } public string? sfkcz { get; set; } public string? qlzt { get; set; } } }