From 875c11dc736016278e2d1fd1026ebec0bed28b80 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期二, 28 十二月 2021 11:07:05 +0800 Subject: [PATCH] 法律依据,多条单页面维护 --- zhengcaioa/zhengcaioa/Views/SysCode/Indexlaw.cshtml | 2 zhengcaioa/IServices/ISysCodeService.cs | 4 zhengcaioa/DTO/SysCodeDTO.cs | 10 + zhengcaioa/zhengcaioa/Views/SysCode/Editlaw.cshtml | 241 +++++++++++++++++++++++++--------- zhengcaioa/zhengcaioa/Controllers/SysCodeController.cs | 35 ++++ zhengcaioa/Services/SysCodeService.cs | 127 ++++++++++++++++++ 6 files changed, 350 insertions(+), 69 deletions(-) diff --git a/zhengcaioa/DTO/SysCodeDTO.cs b/zhengcaioa/DTO/SysCodeDTO.cs index dc0260e..4081f89 100644 --- a/zhengcaioa/DTO/SysCodeDTO.cs +++ b/zhengcaioa/DTO/SysCodeDTO.cs @@ -234,6 +234,16 @@ public string Classify1 { get; set; } public string Classify1Name { set; get; } + public string Classify2 { get; set; } + + public string[] Classify2s { get; set; } + public string[] Commentss { get; set; } + public string[] Contentss { get; set; } + public int[] Sorts { get; set; } + + public string[] CodeSns { get; set; } + + } #endregion diff --git a/zhengcaioa/IServices/ISysCodeService.cs b/zhengcaioa/IServices/ISysCodeService.cs index ec13b54..e3474a6 100644 --- a/zhengcaioa/IServices/ISysCodeService.cs +++ b/zhengcaioa/IServices/ISysCodeService.cs @@ -66,9 +66,11 @@ SysCodeDtlEntity GetSysCodeDtlInfo(string key_id, string CodeTable, string CodeField, string WentiId = ""); - + List<SysCodeDtlEntity> GetSysCodeDtlInfoss(string Classify1, string CodeTable, string CodeField, string WentiId = ""); ResultEntity SaveSysCodeDtl(SysCodeDtlEntity Entity); + ResultEntity SaveSysCodeDtls(SysCodeDtlEntity Entity); + } } diff --git a/zhengcaioa/Services/SysCodeService.cs b/zhengcaioa/Services/SysCodeService.cs index 26a81e3..52c1396 100644 --- a/zhengcaioa/Services/SysCodeService.cs +++ b/zhengcaioa/Services/SysCodeService.cs @@ -506,6 +506,68 @@ return alldtl; } + public List<SysCodeDtlEntity> GetSysCodeDtlInfoss(string Classify1, string CodeTable, string CodeField, string WentiId = "") + { + + + List<SysCodeDtlEntity> sysCodeDtlEntities = new List<SysCodeDtlEntity>(); + var models = _context.SysCodeDtls.Where(x => x.Classify1 == Classify1).OrderBy(x=>x.CodeSn).ToList(); ; + + + if (models != null&& models.Count>0) + { + foreach (var model in models) + { + var alldtl = new SysCodeDtlEntity(); + alldtl.Id = model.Id; + alldtl.CodeId = model.CodeId; + alldtl.CodeSn = model.CodeSn; + alldtl.Comments = model.Comments; + alldtl.Contents = model.Contents; + alldtl.Sort = model.Sort; + alldtl.RecStatus = model.RecStatus; + alldtl.Creater = model.Creater; + alldtl.Createtime = model.Createtime; + alldtl.Modifier = model.Modifier; + alldtl.Modifytime = model.Modifytime; + alldtl.Classify1 = model.Classify1; + alldtl.Classify2 = model.Classify2; + alldtl.CreatetimeStr = model.Createtime.ToString(); + alldtl.RecStatusName = model.RecStatus.ToString().Equals("A") ? "鍚敤" : "鍋滅敤"; + sysCodeDtlEntities.Add(alldtl); + } + + + } + else + { + var alldtl = new SysCodeDtlEntity(); + var syscode = _context.SysCodes.Where(x => x.RecStatus == "A" && x.CodeTable == CodeTable && x.CodeField == CodeField).FirstOrDefault(); + if (syscode != null) + { + alldtl.Contents = WentiId; + alldtl.CodeId = syscode.Id; + } + + + alldtl.Classify1 = Classify1; + sysCodeDtlEntities.Add(alldtl); + } + + + + + + + + + + + + + return sysCodeDtlEntities; + } + public ResultEntity SaveSysCodeDtl(SysCodeDtlEntity Entity) { var resultEntity = new ResultEntity(); @@ -586,5 +648,70 @@ return resultEntity; } + + + public ResultEntity SaveSysCodeDtls(SysCodeDtlEntity Entity) + { + var resultEntity = new ResultEntity(); + + + //浜嬪姟 + resultEntity.Result = true; + try + { + + + var sysCodeDtls = _context.SysCodeDtls.Where(x => x.RecStatus == "A" && x.CodeId == Entity.CodeId && x.Classify1 == Entity.Classify1).ToList(); + if (sysCodeDtls != null && sysCodeDtls.Count > 0) + { + foreach (var sysCodeDtl in sysCodeDtls) + { + _context.SysCodeDtls.Remove(sysCodeDtl); + } + } + + var CodeSns = Entity.CodeSns; + if (CodeSns != null && CodeSns.Length > 0) + { + for (int i = 0; i < CodeSns.Length; i++) + { + if (!string.IsNullOrEmpty(Entity.CodeSns[i]) || !string.IsNullOrEmpty(Entity.Commentss[i]) ) + { + _context.SysCodeDtls.Add(new SysCodeDtl() + { + Id = Guid.NewGuid().ToString(), + CodeSn = Entity.CodeSns[i], + RoleId = "", + CodeId = Entity.CodeId, + Comments = Entity.Commentss[i], + Contents = Entity.Contentss[i], + Sort = Entity.Sorts[i], + RecStatus = "A", + Creater = Entity.Modifier, + Createtime = Entity.Modifytime, + Modifier = Entity.Modifier, + Modifytime = Entity.Modifytime, + Classify1 = Entity.Classify1, + Classify2 = Entity.Classify2s[i], + }); + } + } + } + + + + + _context.SaveChanges(); + + } + catch (Exception ex) + { + resultEntity.Message = "淇℃伅淇濆瓨澶辫触锛岃鑱旂郴绠$悊浜哄憳銆�" + ex.Message; ; + resultEntity.Result = false; + + } + + return resultEntity; + } } } diff --git a/zhengcaioa/zhengcaioa/Controllers/SysCodeController.cs b/zhengcaioa/zhengcaioa/Controllers/SysCodeController.cs index ec2426d..07d97cb 100644 --- a/zhengcaioa/zhengcaioa/Controllers/SysCodeController.cs +++ b/zhengcaioa/zhengcaioa/Controllers/SysCodeController.cs @@ -708,7 +708,7 @@ - public IActionResult Editlaw(string id) + public IActionResult Editlaw(string Classify1="") { var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); ViewData["curentuser"] = curentuser; @@ -716,17 +716,44 @@ SysCodeDtlEntity sysCodeDtlEntity = new SysCodeDtlEntity(); - - sysCodeDtlEntity = _sysCodeService.GetSysCodeDtlInfo(id, "t_complaint_items", "law"); - + var sysCodeDtlEntities = _sysCodeService.GetSysCodeDtlInfoss(Classify1, "t_complaint_items", "law"); + sysCodeDtlEntity.Classify1 = Classify1; + sysCodeDtlEntity.CodeId = sysCodeDtlEntities[0].CodeId; ViewData.Model = sysCodeDtlEntity; ViewBag.falv = _liaotianService.GetSYScode("expert_test_topicjiexi", "falv"); ViewBag.question = _liaotianService.GetSYScode("t_challenge_items", "question"); + ViewBag.sysCodeDtlEntities = sysCodeDtlEntities; return View(); } + + /// <summary> + /// 淇濆瓨 + /// </summary> + /// <param name="data">宀椾綅瀹炰綋绫诲璞�</param> + /// <returns></returns> + [HttpPost] + + public string Savequestiontypes(SysCodeDtlEntity data) + { + var curentuser = JsonConvert.DeserializeObject<PltUser>(HttpContext.Session.GetString("User")); + ViewData["curentuser"] = curentuser; + data.RecStatus = "A"; + if (String.IsNullOrEmpty(data.Id)) + { + data.Creater = curentuser.Id; + data.Createtime = DateTime.Now; + } + data.Modifier = curentuser.Id; + data.Modifytime = DateTime.Now; + + ResultEntity resultEntity = _sysCodeService.SaveSysCodeDtls(data); + + return JsonConvert.SerializeObject(resultEntity); + } + } } diff --git a/zhengcaioa/zhengcaioa/Views/SysCode/Editlaw.cshtml b/zhengcaioa/zhengcaioa/Views/SysCode/Editlaw.cshtml index 3006bb0..862c0ef 100644 --- a/zhengcaioa/zhengcaioa/Views/SysCode/Editlaw.cshtml +++ b/zhengcaioa/zhengcaioa/Views/SysCode/Editlaw.cshtml @@ -8,7 +8,7 @@ List<SysCodeDtl> question = ViewData["question"] as List<SysCodeDtl>; //娉曞緥 - + List<SysCodeDtlEntity> sysCodeDtlEntities = ViewData["sysCodeDtlEntities"] as List<SysCodeDtlEntity>; //娉曞緥 @@ -130,69 +130,97 @@ } } </select> - </div> - </div> - - - - - - <div class="clearfix layer-area" style="padding-bottom:15px;"> - <label class="text-right col-sm-1 col-md-1 control-label">缂栫爜</label> - <div class="col-sm-2 col-md-2" style="width:5%;"> - <input class="form-control" label="缂栫爜" id="CodeSn" name="CodeSn" labtype="txt" addvisible="true" editvisible="true" reg="" maxlength="50" ismust="true" type="text" value="@Model.CodeSn"> - - <input type="hidden" name="Id" value="@Model.Id" /> <input type="hidden" name="CodeId" value="@Model.CodeId" /> </div> </div> - <div class="clearfix layer-area" style="padding-bottom:15px;"> - <label class="text-right col-sm-1 col-md-1 control-label">娉曞緥鍚嶇О</label> - <div class="col-sm-10 col-md-10"> - @*<input class="form-control" label="娉曞緥鍚嶇О" id="Comments" name="Comments" labtype="txt" addvisible="true" editvisible="true" reg="" maxlength="100" ismust="true" type="text" value="@Model.Comments">*@ - <select id="Comments" class="form-control" name="Comments" data-placeholder="閫夋嫨 搴忓垪 ..."> - <option value="" hassubinfo="true">璇烽�夋嫨</option> - @foreach (var item in falv) - { - @if (!item.CodeSn.Equals(Model.Comments)) + <div id="addlist_2"> + @for (int i = 0; i < sysCodeDtlEntities.Count; i++) + { + <div class="fatiaomeirong"> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">缂栫爜</label> + <div class="col-sm-2 col-md-2" style="width:5%;"> + <input class="form-control" label="缂栫爜" name="CodeSns" labtype="txt" addvisible="true" editvisible="true" reg="" maxlength="50" ismust="true" type="text" value="@sysCodeDtlEntities[i].CodeSn"> + + <input type="hidden" name="Id" value="@Model.Id" /> + + + </div> + + @if (i == 0) { - <option value="@item.CodeSn" hassubinfo="true"> - @item.Comments - </option> - } - else - { - <option value="@item.CodeSn" hassubinfo="true" selected="selected"> - @item.Comments - </option> + <div class="col-sm-1 col-md-1" style="width:80px;"> + <button type="button" class="addBtn" onclick="addBtn(this)" data-type="2" style="width:32px">+</button> + <button type="button" class="delBtn" onclick="delBtn(this)" data-type="2" style="width:32px">-</button> + </div> } - } - } - </select> - </div> + + </div> + + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">娉曞緥鍚嶇О</label> + <div class="col-sm-10 col-md-10"> + @*<input class="form-control" label="娉曞緥鍚嶇О" id="Comments" name="Comments" labtype="txt" addvisible="true" editvisible="true" reg="" maxlength="100" ismust="true" type="text" value="@Model.Comments">*@ + + <select class="form-control" name="Commentss" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in falv) + { + @if (!item.CodeSn.Equals(sysCodeDtlEntities[i].Comments)) + { + <option value="@item.CodeSn" hassubinfo="true"> + @item.Comments + </option> + } + else + { + <option value="@item.CodeSn" hassubinfo="true" selected="selected"> + @item.Comments + </option> + } + + } + } + </select> + </div> + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">娉曟潯</label> + <div class="col-sm-2 col-md-2"> + <input class="form-control" label="娉曟潯" name="Classify2s" labtype="txt" addvisible="true" editvisible="true" maxlength="50" reg="" ismust="flase" type="text" value="@sysCodeDtlEntities[i].Classify2"> + + </div> + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">鍐呭</label> + <div class="col-sm-10 col-md-10"> + @*<input class="form-control" label="鍐呭" id="Contents" name="Contents" labtype="txt" addvisible="true" editvisible="true" reg="" maxlength="300" ismust="true" type="text" value="@Model.Contents">*@ + + <textarea class="form-control bt" name="Contentss" title="鍐呭" isempty="" maxlength="300" length="long" style="resize:none;overflow-y:hidden; min-height:60px;" onpropertychange="this.style.height=this.scrollHeight + 'px'" oninput="this.style.height=this.scrollHeight + 'px'">@sysCodeDtlEntities[i].Contents</textarea> + </div> + + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;display:none;"> + <label class="text-right col-sm-1 col-md-1 control-label">鎺掑簭</label> + <div class="col-sm-2 col-md-2" style="width:5%;"> + <input class="form-control" label="鎺掑簭" name="Sorts" labtype="txt" addvisible="true" editvisible="true" maxlength="100" reg="" ismust="flase" type="text" value="@sysCodeDtlEntities[i].Sort" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + + </div> + </div> + } </div> - <div class="clearfix layer-area" style="padding-bottom:15px;display:none;"> - <label class="text-right col-sm-1 col-md-1 control-label">鎺掑簭</label> - <div class="col-sm-2 col-md-2" style="width:5%;"> - <input class="form-control" label="鎺掑簭" id="Sort" name="Sort" labtype="txt" addvisible="true" editvisible="true" maxlength="100" reg="" ismust="flase" type="text" value="@Model.Sort" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> - </div> - </div> - <div class="clearfix layer-area" style="padding-bottom:15px;"> - <label class="text-right col-sm-1 col-md-1 control-label">鍐呭</label> - <div class="col-sm-10 col-md-10"> - @*<input class="form-control" label="鍐呭" id="Contents" name="Contents" labtype="txt" addvisible="true" editvisible="true" reg="" maxlength="300" ismust="true" type="text" value="@Model.Contents">*@ - <textarea class="form-control bt" id="Contents" name="Contents" title="鍐呭" isempty="" maxlength="450" length="long" style="resize:none;overflow-y:hidden; min-height:60px;" onpropertychange="this.style.height=this.scrollHeight + 'px'" oninput="this.style.height=this.scrollHeight + 'px'">@Model.Contents</textarea> - </div> - </div> + </div> @@ -213,7 +241,7 @@ - </div> + </div> @@ -226,9 +254,9 @@ <div class="wrapper wrapper-content" style="margin-top:0px"></div> <div class="ibox-content" id="top" style="z-index:100; position:fixed; height:50px; width:100%;bottom:0; text-align: right; padding-top:8px "> <div class="" style="float:right;" data-bootstro-width="500px" data-bootstro-content="鍔熻兘鎸夐挳锛氣�滀繚瀛樷�濓紝鈥滃垹闄も��"> - <a class="btn btn-success" href="javascript:void(0)" onclick="delPosition();" style="margin-left:4px; border-radius:4px;"> + @*<a class="btn btn-success" href="javascript:void(0)" onclick="delPosition();" style="margin-left:4px; border-radius:4px;"> <i class="glyphicon glyphicon-remove"></i> <span class="bold">鍒犻櫎</span> - </a> + </a>*@ <a class="btn btn-success" href="javascript:void(0)" onclick="savePosition();" style="margin-left:4px; border-radius:4px;"> <i class="glyphicon glyphicon-ok"></i> <span class="bold">鎻愪氦</span> @@ -248,9 +276,14 @@ var hh = document.body.clientHeight - $('.ibox-title').height() - $("#top").height() * 2; $("#div_content").height(hh); - var Contents = document.getElementById("Contents"); + - Contents.style.height = Contents.scrollHeight + 'px'; + var Contentss = document.getElementsByName("Contentss"); + for (var a = 0; a < Contentss.length; a++) { + + Contentss[a].style.height = Contentss[a].scrollHeight + 'px'; + } + toastr.options = { "closeButton": true, @@ -326,16 +359,16 @@ - if ($.trim($("#CodeSn").val()) == '') { - toastr.warning("缂栫爜涓嶈兘涓虹┖"); - return; - } + //if ($.trim($("#CodeSn").val()) == '') { + // toastr.warning("缂栫爜涓嶈兘涓虹┖"); + // return; + //} - if ($.trim($("#Comments").val()) == '') { - toastr.warning("娉曞緥鍚嶇О涓嶈兘涓虹┖"); - return; - } + //if ($.trim($("#Comments").val()) == '') { + // toastr.warning("娉曞緥鍚嶇О涓嶈兘涓虹┖"); + // return; + //} if ($.trim($("#Classify1").val()) == '') { toastr.warning("璐ㄧ枒浜嬮」涓嶈兘涓虹┖"); @@ -347,7 +380,7 @@ // var data = { id: $("#Id").val(), DocType: $("#DocType").val(), DocDept: $("#DocDept").val(), PublishTime: $("#PublishTime").val(), DocNo: $("#DocNo").val(), DocTitle: $("#DocTitle").val(), DocContent: ueue, DocZtc: $("#DocZtc").val(), Printtimes: $("#Printtimes").val(), DocCsdw: $("#DocCsdw").val(), PrintStatus: $("#PrintStatus").val()} $.ajax({ type: "POST", - url: "/SysCode/Savequestiontype", + url: "/SysCode/Savequestiontypes", dataType: "json", global: false, data: $('form').serializeArray(), @@ -397,6 +430,88 @@ } + function addBtn(obj) { + var oTr = document.createElement('div'); + var num = $(obj).data().type; + console.log(num) + if (num == 2) { + $('#addlist_2').append(oTr); + $(oTr).html(` <div class="fatiaomeirong" > + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">缂栫爜</label> + <div class="col-sm-2 col-md-2" style="width:5%;"> + <input class="form-control" label="缂栫爜" name="CodeSns" labtype="txt" addvisible="true" editvisible="true" reg="" maxlength="50" ismust="true" type="text" value=""> + + <input type="hidden" name="Id" value="" /> + + + </div> + + + + + </div> + + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">娉曞緥鍚嶇О</label> + <div class="col-sm-10 col-md-10"> + + <select class="form-control" name="Commentss" data-placeholder="閫夋嫨 搴忓垪 ..."> + <option value="" hassubinfo="true">璇烽�夋嫨</option> + @foreach (var item in falv) + { + + <option value="@item.CodeSn" hassubinfo="true"> + @item.Comments + </option> + + + } + + </select> + </div> + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">娉曟潯</label> + <div class="col-sm-2 col-md-2"> + <input class="form-control" label="娉曟潯" name="Classify2s" labtype="txt" addvisible="true" editvisible="true" maxlength="50" reg="" ismust="flase" type="text" value=""> + + </div> + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;"> + <label class="text-right col-sm-1 col-md-1 control-label">鍐呭</label> + <div class="col-sm-10 col-md-10"> + + <textarea class="form-control bt" name="Contentss" title="鍐呭" isempty="" maxlength="300" length="long" style="resize:none;overflow-y:hidden; min-height:60px;" onpropertychange="this.style.height=this.scrollHeight + 'px'" oninput="this.style.height=this.scrollHeight + 'px'"></textarea> + </div> + + </div> + <div class="clearfix layer-area" style="padding-bottom:15px;display:none;"> + <label class="text-right col-sm-1 col-md-1 control-label">鎺掑簭</label> + <div class="col-sm-2 col-md-2" style="width:5%;"> + <input class="form-control" label="鎺掑簭" name="Sorts" labtype="txt" addvisible="true" editvisible="true" maxlength="100" reg="" ismust="flase" type="text" value="1" oninput="if(value.length>8)value=value.slice(0,18)" onkeyup="value=value.toString().match(/^\d+(?:\.\d{0,2})?/)"> + + </div> + + </div> + </div> + +`); + } + } + + function delBtn(obj) { + var num = $(obj).data().type; + console.log(num) + + if (num == 2) { + if ($('#addlist_2').find('.fatiaomeirong').length > 1) { + $('#addlist_2').find('.fatiaomeirong:last').remove(); + } + + } + } + </script> </body> </html> \ No newline at end of file diff --git a/zhengcaioa/zhengcaioa/Views/SysCode/Indexlaw.cshtml b/zhengcaioa/zhengcaioa/Views/SysCode/Indexlaw.cshtml index babd592..fe12535 100644 --- a/zhengcaioa/zhengcaioa/Views/SysCode/Indexlaw.cshtml +++ b/zhengcaioa/zhengcaioa/Views/SysCode/Indexlaw.cshtml @@ -15,7 +15,7 @@ { label: '缂栫爜', name: 'CodeSn', labtype: 'txt', hidden: false, width: 50, formatter: function (cellvalue, options, rowObject) { - return "<a onclick=\"OpenWindow('" + rowObject.Comments + "','98%','100%', '/SysCode/Editlaw?id=" + rowObject.Id + "')\" >" + cellvalue + "</a>"; + return "<a onclick=\"OpenWindow('" + rowObject.Comments + "','98%','100%', '/SysCode/Editlaw?Classify1=" + rowObject.Classify1 + "')\" >" + cellvalue + "</a>"; } }, { -- Gitblit v1.9.1