Browse Source

wip:编辑规则

wangshan 1 year ago
parent
commit
1a541350bb

+ 32 - 37
CMPlatform/web/templates/com/modal.html

@@ -146,30 +146,30 @@
 
                             <!--规则2 -->
                             <div class="editexactRule-form exact-rule-2" style="display: none">
-                            <div class="form-group" >
-                                <label class="col-sm-4 control-label"><span style="color:red;">* </span>关键词分组:</label>
-                                <div class="col-sm-8">
-                                    <select class="form-control groupSelect" name="groupSelect">
-                                    </select>
+                                <div class="form-group" >
+                                    <label class="col-sm-4 control-label"><span style="color:red;">* </span>关键词分组:</label>
+                                    <div class="col-sm-8">
+                                        <select class="form-control groupSelect" name="groupSelect">
+                                        </select>
+                                    </div>
                                 </div>
-                            </div>
-                            <div class="form-group">
-                                <label class="col-sm-4 control-label"><span style="color:red;">* </span>出现次数>=</label>
-                                <div class="col-sm-8">
-                                    <input  type='number' min='0'  class="form-control" name="count" placeholder="请输入次数">
+                                <div class="form-group">
+                                    <label class="col-sm-4 control-label"><span style="color:red;">* </span>出现次数>=</label>
+                                    <div class="col-sm-8">
+                                        <input  type='number' min='0'  class="form-control" name="count" placeholder="请输入次数">
+                                    </div>
                                 </div>
-                            </div>
-                            <div class="form-group">
-                                <label class="col-sm-4 control-label"><span style="color:red;">* </span>匹配方式</label>
-                                <div class="col-sm-8">
-                                    <select class="form-control selectpicker" multiple name="matchWay">
-<!--                                        <option value="title" selected>标题</option>-->
-<!--                                        <option value="content">正文</option>-->
-                                    </select>
+                                <div class="form-group">
+                                    <label class="col-sm-4 control-label"><span style="color:red;">* </span>匹配方式</label>
+                                    <div class="col-sm-8">
+                                        <select class="form-control selectpicker" multiple name="matchWay">
+    <!--                                        <option value="title" selected>标题</option>-->
+    <!--                                        <option value="content">正文</option>-->
+                                        </select>
+                                    </div>
                                 </div>
                             </div>
                         </div>
-                        </div>
                     </div>
          <div style="text-align: center" id="editExactRuleButton">
              <a onclick="editExactRule()" style="margin: 0 auto">+新增</a>
@@ -475,11 +475,7 @@
 
 <script>
     var exactRuleBool = false
-    var matchWay = {
-        "title":"标题",
-        "content":"正文"
-    }
-    var ruleHtml = "<div class=\"insertexactRule-form  exact-rule-2 exact-rule-class\" >" +
+    var ruleHtml = "<div class=\"insertexactRule-form  exact-rule-1 exact-rule-class #a#  #0#\" >" +
         "<div class=\"form-group\" >" +
         "<label class=\"col-sm-4 control-label\"><span style=\"color:red;\">* </span>关键词分组:</label>" +
         "<div class=\"col-sm-8\">" +
@@ -509,23 +505,22 @@
         "</div>" +
         "</div>"
     //弹窗内容编辑及新增
-    function ruleHtmlFunc(num,groupList) {//num 动作0:首次;1:新增
+    function ruleHtmlFunc(className,mark,rule) {//count
+        if (ruleGroupList.length===0){
+            showGroupListData()
+        }
+        var count = 0;
         var phrasesHtml = '';
-        var numberHtml = '';
         var matchWayHtml = '';
-        for (var i=0;i< groupList.length;i++){
-            console.info(groupList[i])
-            phrasesHtml += "<option value='"+groupList[i]["name"]+"'>"+groupList[i]["name"]+"</option>"
-        }
-        if (num>0){
-
+        for (var i=0;i< ruleGroupList.length;i++){
+            phrasesHtml += "<option value='"+ruleGroupList[i]["name"]+"'>"+ruleGroupList[i]["name"]+"</option>"
         }
-        for (let key in matchWay) {
-            console.log(`${key}: ${matchWay[key]}`);
-            matchWayHtml +="<option value='"+key+"'>"+matchWay[key]+"</option>"
+        for (let key in matchWayMap) {
+            console.log(`${key}: ${matchWayMap[key]}`);
+            matchWayHtml +="<option value='"+key+"'>"+matchWayMap[key]+"</option>"
         }
-        var ph = ruleHtml.replaceAll("#1#",phrasesHtml).replaceAll("#2#",numberHtml).replaceAll("#3#",matchWayHtml)
-        $("#insertexactRule").append(ph)
+        var ph = ruleHtml.replaceAll("#a#",className).replaceAll("#0#",mark).replaceAll("#1#",phrasesHtml).replaceAll("#2#",count).replaceAll("#3#",matchWayHtml)
+        $(rule).append(ph)
         // 初始化 selectpicker 插件
         $('.selectpicker').selectpicker('refresh');
     }

+ 46 - 51
CMPlatform/web/templates/private/cuser_rule_edit.html

@@ -48,6 +48,9 @@
     .insertexactRule-form {
         padding: 10px 10px 0px 10px;
     }
+    #editExactRuleButton a {
+        cursor: pointer;
+    }
 </style>
 <div class="content-wrapper">
     <section class="content-header">
@@ -2830,7 +2833,7 @@
         })
     }
     //分组管理
-    var groupList = new Array()
+    var ruleGroupList = new Array()
     // 精准筛选规则-新增按钮点击方法
     function addExactRuleShow(){
         // 判断是否设置关键词
@@ -2849,7 +2852,7 @@
         // 清空数据
         $("#modal-add-exactRule select[name='groupSelect']").empty()
         $("#modal-add-exactRule input[name='count']").val('')
-        matchWayShow("#insertexactRule")
+        // matchWayShow("#insertexactRule")
         $("#insertexactRule  select[name=matchWay]").val("").trigger("change")
         $("#insertexactRule  select[name=matchWay]").selectpicker('val', 'title');
         //初始化
@@ -2857,25 +2860,7 @@
         $("#addExactRuleButton").show();
         // 新增精准筛选规则弹框
        // 请求分组列表接口获取数据
-        $.ajax({
-            url: "/service/cuser/groupList",
-            type: "post",
-            data: {"id": dataMap.id},
-            async: false,
-            success: function (r) {
-                if (r.data) {
-                    groupList=r.data;
-                    ruleHtmlFunc(0,r.data)
-                    // for (var i in r.data) {
-                    //     var groupOption = document.createElement('option');
-                    //     groupOption.innerText =r.data[i].name
-                    //     groupOption.value = r.data[i].name
-                    //     $("#modal-add-exactRule select[name='groupSelect']").append(groupOption)
-                    // }
-                }
-            }
-        })
-
+        ruleHtmlFunc("insert-class","","#insertexactRule")
         $("#modal-add-exactRule").modal("show");
     }
     // 精准筛选规则-新增页面 +新增按钮
@@ -2884,7 +2869,7 @@
         // $("#insertexactRule .exact-rule-2").show()
         // $("#addExactRuleButton").hide()
         // $(".insertexactRule-form").selectpicker("refresh");
-        ruleHtmlFunc(0,groupList)
+        ruleHtmlFunc("insert-class","","#insertexactRule")
         if ($('.exact-rule-class').length > 3){
             $("#addExactRuleButton").hide()
         }
@@ -2989,8 +2974,8 @@
     }
 
     const matchWayMap = {
-        "title":"标题",
-        "content":"全文"
+        "title":"标题匹配",
+        "content":"全文匹配"
     }
     // 规则数组转换列表字符串
     function exactRuleDataFormat(contentArr ){
@@ -3032,7 +3017,7 @@
         })
 
     }
-    function showGroupListData(mId){
+    function showGroupListData(){
         $.ajax({
             url: "/service/cuser/groupList",
             type: "post",
@@ -3040,20 +3025,16 @@
             async: false,
             success: function (r) {
                 if (r.data) {
-                    for (var i in r.data) {
-                        var groupOption = document.createElement('option');
-                        groupOption.innerText =r.data[i].name
-                        groupOption.value = r.data[i].name
-                        let s = mId+" select[name='groupSelect']"
-                        $(s).append(groupOption)
-                    }
+                    ruleGroupList=r.data;
                 }
             }})
     }
     // 编辑点击事件
     function editExacRuleClick(index){
-        showGroupListData("#modal-edit-exactRule") // 铺分组下拉列表数据
-        matchWayShow("#editexactRule")
+        $("#editexactRule").html("");
+        $("#editExactRuleButton").show();
+        // showGroupListData("#modal-edit-exactRule") // 铺分组下拉列表数据
+        // matchWayShow("#editexactRule")
         $("#editexactRuleId").text(index) // 隐藏选中的数组行号
         // 铺数据
         let contentArr = exactRuleTableArr[index]
@@ -3073,25 +3054,35 @@
                 keyArr.push(keyGroupCount)
             }
         }
-        if((keyArr.length===0)||(keyArr.length>2)){// 因为现在是写死的俩 后续有时间再优化
-            showTip("数据有误")
-        }
+        // if((keyArr.length===0)||(keyArr.length>2)){// 因为现在是写死的俩 后续有时间再优化
+        //     showTip("数据有误")
+        // }
         //
-        if(keyArr.length==2){
-            $("#editexactRule .exact-rule-2").addClass("editexactRule-form")
-            $("#editexactRule .exact-rule-2").show() // 展示表单2
-            $("#editExactRuleButton").hide() // 隐藏新增按钮
-        }
+        // if(keyArr.length===2){
+        //     $("#editexactRule .exact-rule-2").addClass("editexactRule-form")
+        //     $("#editexactRule .exact-rule-2").show() // 展示表单2
+        //     $("#editExactRuleButton").hide() // 隐藏新增按钮
+        // }
         // 铺数据
+        // for (let i = 0; i < keyArr.length; i++) {
+        //     $('#editexactRule .exact-rule-'+(i+1)+' select[name=groupSelect]').selectpicker('val',tmpDict[keyArr[i]].group)
+        //     $('#editexactRule .exact-rule-'+(i+1)+' select[name=matchWay]').val("").trigger("change")
+        //     let matchWayArr = Array.from(tmpDict[keyArr[i]].match_way)
+        //     $('#editexactRule .exact-rule-'+(i+1)+' select[name=matchWay]').selectpicker('val',matchWayArr);
+        //     $('#editexactRule .exact-rule-'+(i+1)+' input[name=count]').val(tmpDict[keyArr[i]].count)
+        // }
+        //
         for (let i = 0; i < keyArr.length; i++) {
-            $('#editexactRule .exact-rule-'+(i+1)+' select[name=groupSelect]').selectpicker('val',tmpDict[keyArr[i]].group)
-            $('#editexactRule .exact-rule-'+(i+1)+' select[name=matchWay]').val("").trigger("change")
-            let matchWayArr = Array.from(tmpDict[keyArr[i]].match_way)
-            $('#editexactRule .exact-rule-'+(i+1)+' select[name=matchWay]').selectpicker('val',matchWayArr);
-            $('#editexactRule .exact-rule-'+(i+1)+' input[name=count]').val(tmpDict[keyArr[i]].count)
+            var keyGroup = tmpDict[keyArr[i]].group;
+            var count = tmpDict[keyArr[i]].count;
+            var matchWay = tmpDict[keyArr[i]].match_way;
+            ruleHtmlFunc("edit-class",keyArr[i],"#editexactRule");
+            $('#editexactRule .'+keyArr[i]+' select[name=groupSelect]').selectpicker('val',keyGroup);
+            $('#editexactRule .'+keyArr[i]+' input[name=count]').val(count);
+            let matchWayArr = Array.from(matchWay);
+            $('#editexactRule .'+keyArr[i]+' select[name=matchWay]').val("").trigger("change").selectpicker('val',matchWayArr);
         }
         $("#modal-edit-exactRule").modal("show");
-
     }
     // 编辑保存
     function edit_exactRule_save(){
@@ -3128,10 +3119,14 @@
     }
     // 精准筛选规则-编辑页面 +新增按钮
     function editExactRule(){
-        $("#editexactRule .exact-rule-2").addClass("editexactRule-form")
-        $("#editexactRule .exact-rule-2").show()
-        $("#editExactRuleButton").hide() // 隐藏新增按钮
+        // $("#editexactRule .exact-rule-2").addClass("editexactRule-form")
+        // $("#editexactRule .exact-rule-2").show()
+        // $("#editExactRuleButton").hide() // 隐藏新增按钮
         // $(".insertexactRule-form").selectpicker("refresh");
+        ruleHtmlFunc("edit-class","","#editexactRule")
+        if ($('.edit-class').length > 3){
+            $("#editExactRuleButton").hide();
+        }
     }
     //  判断是否设置匹配方式
     function hasMatchWay() {