| <div class="layui-fluid layui-anim febs-anim" id="febs-carriage-rule-add" lay-title="运费模板新增"> | 
|     <div class="layui-row febs-container"> | 
|         <div class="layui-col-md12"> | 
|             <div class="layui-fluid" id="carriage-rule-add"> | 
|                 <form class="layui-form" action="" lay-filter="carriage-rule-add-form"> | 
|                     <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief"> | 
|                         <ul class="layui-tab-title"> | 
|                             <li class="layui-this">运费模板</li> | 
|                         </ul> | 
|                         <div class="layui-tab-content"> | 
|                             <div class="layui-tab-item layui-show"> | 
|                                 <blockquote class="layui-elem-quote blue-border">基本信息</blockquote> | 
|                                 <div class="layui-row layui-col-space10 layui-form-item"> | 
|                                     <div class="layui-col-lg6"> | 
|                                         <label class="layui-form-label febs-form-item-require">标题:</label> | 
|                                         <div class="layui-input-block"> | 
|                                             <input type="text" name="ruleName" lay-verify="required" placeholder="" autocomplete="off" class="layui-input"> | 
|                                         </div> | 
|                                     </div> | 
|                                 </div> | 
|   | 
|                                 <div class="layui-form-item"> | 
|                                     <label class="layui-form-label febs-form-item-require">计价方式:</label> | 
|                                     <div class="layui-input-block"> | 
|                                         <input type="radio" name="valuationType" value="1" title="按件算" checked /> | 
| <!--                                        <input type="radio" name="valuationType" value="2" title="按重量算" />--> | 
|                                     </div> | 
|                                 </div> | 
|   | 
|                                 <blockquote class="layui-elem-quote blue-border">默认规则</blockquote> | 
|                                 <div class="layui-form-item"> | 
|                                     <label class="layui-form-label febs-form-item-require">默认运费:</label> | 
|                                     <div class="layui-input-inline" style="width: 80px"> | 
|                                         <input type="text" name="basicCntDefault" lay-verify="required" autocomplete="off" class="layui-input" > | 
|                                     </div> | 
|                                     <div class="layui-form-mid">件内,</div> | 
|                                     <div class="layui-input-inline" style="width: 80px"> | 
|                                         <input type="text" name="basicPriceDefault" lay-verify="required" autocomplete="off" class="layui-input" > | 
|                                     </div> | 
|                                     <div class="layui-form-mid">元,</div> | 
|                                     <div class="layui-form-mid">每增加</div> | 
|                                     <div class="layui-input-inline" style="width: 80px"> | 
|                                         <input type="text" name="moreCntDefault" lay-verify="required" autocomplete="off" class="layui-input" > | 
|                                     </div> | 
|                                     <div class="layui-form-mid">件,增加运费</div> | 
|                                     <div class="layui-input-inline" style="width: 80px"> | 
|                                         <input type="text" name="morePriceDefault" lay-verify="required" autocomplete="off" class="layui-input" > | 
|                                     </div> | 
|                                     <div class="layui-form-mid">元。</div> | 
|                                 </div> | 
|                                 <div class="layui-form-item multi-rule-table"> | 
|                                     <div class="layui-row layui-col-space10 layui-form-item"> | 
|                                         <blockquote class="layui-elem-quote blue-border">为指定省份设置运费</blockquote> | 
|   | 
|                                         <div class="layui-col-lg6"> | 
|                                             <label class="layui-form-label febs-form-item-require">指定省份:</label> | 
|                                             <div class="layui-input-block"> | 
|                                                 <div id="province-set"></div> | 
|                                             </div> | 
|                                         </div> | 
|                                         <div class="layui-col-lg6"> | 
|                                             <button type="button" class="layui-btn layui-btn-normal layui-btn" id="test3" >添加</button> | 
|                                         </div> | 
|                                     </div> | 
|   | 
|                                     <div class="layui-form-item"> | 
|                                         <div class="layui-input-block"> | 
|                                             <table id="multiRule" lay-filter="multiRule"></table> | 
|                                         </div> | 
|                                     </div> | 
|                                 </div> | 
|                             </div> | 
|                         </div> | 
|                     </div> | 
|                     <div class="layui-form-item febs-hide"> | 
|                         <button class="layui-btn" lay-submit="" lay-filter="carriage-rule-add-form-submit" id="submit">保存</button> | 
|                     </div> | 
|                 </form> | 
|             </div> | 
|         </div> | 
|     </div> | 
| </div> | 
| <style> | 
|     .blue-border { | 
|         border-left-color: #2db7f5; | 
|         font-size: 18px; | 
|     } | 
| </style> | 
| <script type="text/html" id="toolbar"> | 
|     <div class="layui-btn-container"> | 
|         <button class="layui-btn layui-btn-danger layui-btn-sm" type="button" lay-event="delSku">删除</button> | 
|     </div> | 
| </script> | 
| <!-- 表格操作栏 end --> | 
| <script data-th-inline="javascript"> | 
|     layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','dropdown', 'laydate', 'layedit', 'upload', 'element', 'table', 'xmSelect'], function () { | 
|         var $ = layui.jquery, | 
|             febs = layui.febs, | 
|             layer = layui.layer, | 
|             table = layui.table, | 
|             formSelects = layui.formSelects, | 
|             treeSelect = layui.treeSelect, | 
|             form = layui.form, | 
|             laydate = layui.laydate, | 
|             eleTree = layui.eleTree, | 
|             $view = $('#carriage-rule-add'), | 
|             layedit = layui.layedit, | 
|             upload = layui.upload, | 
|             validate = layui.validate, | 
|             element = layui.element; | 
|   | 
|         form.render(); | 
|   | 
|         formSelects.render(); | 
|   | 
|         var provinceSet = xmSelect.render({ | 
|             el: '#province-set', | 
|             toolbar: { | 
|                 show: true, | 
|                 list: [ 'ALL', 'CLEAR', 'REVERSE' ] | 
|             }, | 
|             filterable: true, | 
|             data: [ | 
|                 {name: '北京市',value: 1,selected:false}, | 
|                 {name: '天津市',value: 2,selected:false}, | 
|                 {name: '河北省',value: 3,selected:false}, | 
|                 {name: '山西省',value: 4,selected:false}, | 
|                 {name: '辽宁省',value: 5,selected:false}, | 
|   | 
|                 {name: '吉林省',value: 6,selected:false}, | 
|                 {name: '黑龙江省',value: 7,selected:false}, | 
|                 {name: '上海市',value: 8,selected:false}, | 
|                 {name: '江苏省',value: 9,selected:false}, | 
|                 {name: '浙江省',value: 10,selected:false}, | 
|   | 
|                 {name: '安徽省',value: 11,selected:false}, | 
|                 {name: '福建省',value: 12,selected:false}, | 
|                 {name: '江西省',value: 13,selected:false}, | 
|                 {name: '山东省',value: 14,selected:false}, | 
|                 {name: '河南省',value: 15,selected:false}, | 
|   | 
|                 {name: '湖北省',value: 16,selected:false}, | 
|                 {name: '湖南省',value: 17,selected:false}, | 
|                 {name: '广东省',value: 18,selected:false}, | 
|                 {name: '广西壮族自治区',value: 19,selected:false}, | 
|                 {name: '海南省',value: 20,selected:false}, | 
|   | 
|                 {name: '重庆市',value: 21,selected:false}, | 
|                 {name: '四川省',value: 22,selected:false}, | 
|                 {name: '贵州省',value: 23,selected:false}, | 
|                 {name: '云南省',value: 24,selected:false}, | 
|                 {name: '西藏自治区',value: 25,selected:false}, | 
|   | 
|                 {name: '陕西省',value: 26,selected:false}, | 
|                 {name: '甘肃省',value: 27,selected:false}, | 
|                 {name: '青海省',value: 28,selected:false}, | 
|                 {name: '宁夏回族自治区',value: 29,selected:false}, | 
|                 {name: '内蒙古自治区',value: 30,selected:false}, | 
|   | 
|                 {name: '新疆维吾尔自治区',value: 31,selected:false}, | 
|                 {name: '台湾省',value: 32,selected:false}, | 
|                 {name: '香港特别行政区',value: 33,selected:false}, | 
|                 {name: '澳门特别行政区',value: 34,selected:false}, | 
|             ], | 
|         }) | 
|         let provinceChoiceExist = ""; | 
|         $('#test3').on('click', function (){ | 
|             let provinceChoice = provinceSet.getValue('name'); | 
|             if(provinceChoice == null || provinceChoice == ""){ | 
|                 febs.alert.warn('指定省份不能为空'); | 
|                 return false; | 
|             } | 
|             let provinceChoiceStr = ""; | 
|             for (let i = 0; i < provinceChoice.length; i++) { | 
|                 //判断字符串是否出现过  =-1则没有出现 | 
|                 if(provinceChoiceExist.indexOf(provinceChoice[i]) != -1){ | 
|                     febs.alert.warn('['+provinceChoice[i]+'],指定省份不能重复'); | 
|                     return false; | 
|                 } | 
|                 provinceChoiceStr = provinceChoiceStr + provinceChoice[i]+","; | 
|                 provinceChoiceExist = provinceChoiceExist + provinceChoiceStr; | 
|             } | 
|             let data = {}; | 
|             data.areaAddress = provinceChoiceStr; | 
|             data.basicCnt = 1; | 
|             data.basicPrice = 1; | 
|             data.moreCnt = 1; | 
|             data.morePrice = 1; | 
|             addTableDate(data); | 
|         }); | 
|   | 
|         var ruleData=[]; | 
|         var tableIns = table.render({ | 
|             elem: '#multiRule' | 
|             ,limit:999 | 
|             ,toolbar:"#toolbar" | 
|             ,defaultToolbar:[] | 
|             ,cols: [ | 
|                 [ | 
|                 ,{align: 'center', title: '请选择', colspan: 2} | 
|                 ,{field:'areaAddress', title:'指定省份', width:400, rowspan: 2,align: 'center'} | 
|                 ,{align: 'center', title: '规则( 2 件内,2 元,每 1 增加件,增加运费 1 元。)', colspan: 4} | 
|                 ], | 
|                 [ //表头 | 
|                 {type: 'checkbox', rowspan: 2,align: 'center' } | 
|                 ,{field: 'index', title: '序号', width:100, rowspan: 2,align: 'center'} | 
|                 ,{field: 'basicCnt', title: '件内', width:200,edit:'text'} | 
|                 ,{field: 'basicPrice', title: '运费', width:200,edit:'text'} | 
|                 ,{field: 'moreCnt', title: '每增加', width:200,edit:'text'} | 
|                 ,{field: 'morePrice', title: '增加运费', width:200,edit:'text'} | 
|             ]] | 
|             ,data: [] | 
|         }); | 
|   | 
|         table.on('toolbar(multiRule)', function(obj){ | 
|             var data = obj.data; | 
|             var hasData = table.cache['multiRule']; | 
|             var checkData = table.checkStatus('multiRule').data; | 
|   | 
|             if (checkData.length <= 0) { | 
|                 febs.alert.warn('请选择删除数据'); | 
|                 return; | 
|             } | 
|             if(obj.event === 'delSku'){ | 
|                 for (let i = 0; i < checkData.length; i++) { | 
|                     var delData = checkData[i]; | 
|                     for (let j = 0; j < hasData.length; j++) { | 
|                         if (hasData[j].index == delData.index) { | 
|                             hasData.splice(j, 1); | 
|                             break; | 
|                         } | 
|                     } | 
|                 } | 
|   | 
|                 for (let i = 0; i < hasData.length; i++) { | 
|                     hasData[i].index = i + 1; | 
|                 } | 
|   | 
|                 ruleData=hasData; | 
|                 reloadTable(hasData); | 
|             } | 
|         }); | 
|   | 
|         function addTableDate(data) { | 
|             var hasData = table.cache['multiRule']; | 
|   | 
|             data.index = hasData.length + 1; | 
|             ruleData.push(data); | 
|   | 
|             reloadTable(ruleData); | 
|             return data.index; | 
|         } | 
|   | 
|         function reloadTable(data) { | 
|             table.reload('multiRule', { | 
|                 data : data | 
|             }); | 
|         } | 
|   | 
|         table.on('edit(multiRule)', function(obj){ | 
|             var value = obj.value //得到修改后的值 | 
|                 ,data = obj.data //得到所在行所有键值 | 
|                 ,field = obj.field; //得到字段 | 
|   | 
|             for (let i = 0; i < ruleData.length; i++) { | 
|                 if (ruleData[i].index == data.index) { | 
|                     ruleData[i] = data; | 
|                 } | 
|             } | 
|         }); | 
|   | 
|         form.on('submit(carriage-rule-add-form-submit)', function (data) { | 
|             data.field.adminCarriageRuleAddInfoDtos = ruleData; | 
|             $.ajax({ | 
|                 'url':ctx + 'admin/goods/carriageRuleAdd', | 
|                 'type':'post', | 
|                 'dataType':'json', | 
|                 'headers' : {'Content-Type' : 'application/json;charset=utf-8'}, //接口json格式 | 
|                 'traditional': true,//ajax传递数组必须添加属性 | 
|                 'data':JSON.stringify(data.field), | 
|                 'success':function (data) { | 
|                     if(data.code==200){ | 
|                         layer.closeAll(); | 
|                         febs.alert.success(data.message); | 
|                         $('#febs-carriage-rule').find('#reset').click(); | 
|                     }else{ | 
|                         febs.alert.warn(data.message); | 
|                     } | 
|                 }, | 
|                 'error':function () { | 
|                     febs.alert.warn('服务器繁忙'); | 
|                 } | 
|             }) | 
|             return false; | 
|         }); | 
|     }); | 
| </script> |