fuwencai пре 1 година
родитељ
комит
7ac5180a34

+ 10 - 10
CMPlatform/web/templates/com/modal.html

@@ -168,9 +168,9 @@
                             <span >编辑精准筛选规则</span>
                         </div>
                         <div id="editexactRule">
-
+                            <input style="display: none" id="editexactRuleId">
                             <!--规则1 -->
-                            <div class="insertexactRule-form exact-rule-1">
+                            <div class="editexactRule-form exact-rule-1">
                                 <div class="form-group" >
                                     <label class="col-sm-4 control-label"><span style="color:red;">* </span>关键词分组:</label>
                                     <div class="col-sm-8">
@@ -181,13 +181,13 @@
                                 <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' type="number" min='0' class="form-control" name="" placeholder="请输入次数">
+                                        <input  type='number' type="number" min='0' class="form-control" name="count" placeholder="请输入次数">
                                     </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="dataTypeSelect3">
+                                        <select class="form-control selectpicker" multiple name="matchWay">
                                             <option value="title" selected>标题</option>
                                             <option value="content">正文</option>
                                         </select>
@@ -195,8 +195,8 @@
                                 </div>
                             </div>
 
-                            <!--规则1 -->
-                            <div class="insertexactRule-form exact-rule-2" style="display: none">
+                            <!--规则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">
@@ -207,13 +207,13 @@
                             <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="" placeholder="请输入次数">
+                                    <input  type='number' min='0'  class="form-control" name="count" placeholder="请输入次数">
                                 </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="dataTypeSelect3">
+                                    <select class="form-control selectpicker" multiple name="matchWay">
                                         <option value="title" selected>标题</option>
                                         <option value="content">正文</option>
                                     </select>
@@ -223,13 +223,13 @@
                         </div>
                     </div>
          <div style="text-align: center" id="editExactRuleButton">
-             <a onclick="addExactRule()" style="margin: 0 auto">+新增</a>
+             <a onclick="editExactRule()" style="margin: 0 auto">+新增</a>
          </div>
 
                 </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-default" data-dismiss="modal" onclick="formReset1()">取消</button>
-                   <button type="button" class="btn btn-primary" onclick="edit_exactRule_save()">确定</button>
+                   <button id="edit_exactRule_save" type="button" class="btn btn-primary" onclick="edit_exactRule_save()">确定</button>
                </div>
             </div>
         </div>

+ 76 - 35
CMPlatform/web/templates/private/cuser_rule_edit.html

@@ -1745,7 +1745,6 @@
         dataMap["s_globalnotkey"] = $('#g_notkey').val();
         dataMap["s_globalclearkey"] = $('#s_globalclearkey').val();
         dataMap["s_exactRule"] = exactRuleArrToStr()
-        debugger
         if (dataMap["s_customer"] == "" || dataMap["s_name"] == "" || dataMap["s_salesperson"] == "" || dataMap["s_serverperson"] == "") {
             alert("请填写必须字段!")
             return
@@ -2831,7 +2830,7 @@
 
         $("#modal-add-exactRule").modal("show");
     }
-    // 精准筛选规则-新增按钮
+    // 精准筛选规则-新增页面 +新增按钮
     function addExactRule(){
         $("#insertexactRule .exact-rule-2").addClass("insertexactRule-form")
         $("#insertexactRule .exact-rule-2").show()
@@ -2840,7 +2839,6 @@
     }
     // 精准筛选规则-新增精准匹配规则保存按钮点击事件
     function add_exactRule_save(){
-        debugger
         // 获取值
         let ruleArr = []
        let formList =  $("#insertexactRule .insertexactRule-form")
@@ -2851,6 +2849,7 @@
             let tmp = '#insertexactRule .exact-rule-'+(i+1)+' select[name=matchWay]'
             let matchWay = $(tmp).val();
             if (groupName==""||matchWay.length==0||count==""){
+                // todo
                 showMsg("必填项缺失")
                 return
             }
@@ -2981,12 +2980,33 @@
         })
 
     }
+    function showGroupListData(mId){
+        $.ajax({
+            url: "/service/cuser/groupList",
+            type: "post",
+            data: {"id": dataMap.id},
+            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)
+                    }
+                }
+            }})
+    }
     // 编辑点击事件
     function editExacRuleClick(index){
+        showGroupListData("#modal-edit-exactRule") // 铺分组下拉列表数据
+        $("#editexactRuleId").text(index) // 隐藏选中的数组行号
+        // 铺数据
         let contentArr = exactRuleTableArr[index]
         // keyArr 定义数组 维持最后有序
         let keyArr = []
-        // 合并 标题正文 如果
+        // 合并 标题正文
         let tmpDict = {}
         for (let i = 0; i < contentArr.length; i++) {
             let keyGroupCount = contentArr[i].group+"_"+ contentArr[i].count
@@ -3000,44 +3020,65 @@
                 keyArr.push(keyGroupCount)
             }
         }
-        if(keyArr.length===0){
+        if((keyArr.length===0)||(keyArr.length>2)){// 因为现在是写死的俩 后续有时间再优化
             showTip("数据有误")
         }
-
-        if(keyArr.length==2) { // 铺俩
-            $("#").val(tmpDict[keyArr[0]].count)
-        }
-
-            let str = ""
-        for (let tmpDictKey in keyArr) {
-            str += "关键词分组:"+tmpDict[keyArr[tmpDictKey]].group+",出现次数>="+tmpDict[keyArr[tmpDictKey]].count+",匹配方式:"+Array.from(tmpDict[keyArr[tmpDictKey]].match_way).join(",")+";"
+        //
+        if(keyArr.length==2){
+            $("#editexactRule .exact-rule-2").addClass("editexactRule-form")
+            $("#editexactRule .exact-rule-2").show() // 展示表单2
+            $("#editExactRuleButton").hide() // 隐藏新增按钮
         }
         // 铺数据
-        $.ajax({
-            url: "/service/cuser/groupList",
-            type: "post",
-            data: {"id": dataMap.id},
-            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
-                        groupOption.selected = true
-                        if (selectElement.options[i].value === selectedValue) {
-                            selectElement.options[i].selected = true;
-                        $("#modal-edit-exactRule select[name='groupSelect']").append(groupOption)
-                    }
-                }
-            }
-        }})
-
+        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)
+        }
         $("#modal-edit-exactRule").modal("show");
 
     }
-    function edit_exactRule_save(index){
-        debugger
+    // 编辑保存
+    function edit_exactRule_save(){
+       let index =  $("#editexactRuleId").text()
+        // 获取数
+        let ruleArr = []
+        let formList =  $("#editexactRule .editexactRule-form")
+        for (let i = 0; i < formList.length; i++) {
+            let groupName = formList[i].querySelector('[name=groupSelect]').value
+            let count = formList[i].querySelector('[name=count]').value
+            // 这是因为现在新增的表单是写死的两个
+            let tmp = '#editexactRule .exact-rule-'+(i+1)+' select[name=matchWay]'
+            let matchWay = $(tmp).val();
+            if (groupName==""||matchWay.length==0||count==""){
+                // todo
+                showMsg("必填项缺失")
+                return
+            }
+            for (let j = 0; j < matchWay.length; j++) {
+                let rule =      {
+                    "group":groupName,"match_way":matchWay[j],"count":count
+                }
+                ruleArr.push(rule)
+            }
+        }
+        // 保存到exactRuleTableArr 临时数组
+        exactRuleTableArr[index] = ruleArr
+        $('#exactRuleTable').dataTable().fnClearTable();
+        $('#exactRuleTable').dataTable().fnAddData(exactRuleTableArr);
+        if (exactRuleTableArr.length == 0) {
+            $('#exactRuleTable').dataTable().fnClearTable();
+        }
+        $("#modal-edit-exactRule").modal("hide");
+    }
+    // 精准筛选规则-编辑页面 +新增按钮
+    function editExactRule(){
+        $("#editexactRule .exact-rule-2").addClass("editexactRule-form")
+        $("#editexactRule .exact-rule-2").show()
+        $("#editExactRuleButton").hide() // 隐藏新增按钮
+        // $(".insertexactRule-form").selectpicker("refresh");
     }
     // 判断是否设置关键词