添加网站文件
This commit is contained in:
240
application/admin/view/freight/add.html
Normal file
240
application/admin/view/freight/add.html
Normal file
@@ -0,0 +1,240 @@
|
||||
{layout name="layout2" /}
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-ad_position" id="layuiadmin-form-category" style="padding: 20px 30px 0 0;">
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">模板名称</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="name" lay-verify="required" placeholder="请输入模板名称" autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">计费方式</label>
|
||||
<div class="layui-input-block" id="charge_way">
|
||||
<input type="radio" class="type" name="charge_way" value="1" title="按重量" checked>
|
||||
<input type="radio" class="type" name="charge_way" value="2" title="按体积">
|
||||
<input type="radio" class="type" name="charge_way" value="3" title="按件数">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">备注</label>
|
||||
<div class="layui-input-inline">
|
||||
<textarea name="remark" placeholder="备注信息" class="layui-textarea"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">配送区域</label>
|
||||
<div class="layui-input-block">
|
||||
<table class="layui-table">
|
||||
<colgroup>
|
||||
<col width="25%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
<col width="20%">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>可配送区域</th>
|
||||
<th class="th_first_unit">首件 (个)</th>
|
||||
<th class="th_first_money">运费 (元)</th>
|
||||
<th class="th_continue_unit">续件 (个)</th>
|
||||
<th class="th_continue_money">续费 (元)</th>
|
||||
|
||||
<th class="able-operat">操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody >
|
||||
<!--全国-->
|
||||
<tr class='area_all'>
|
||||
<td><span class='all_area_name'>全国</span></td>
|
||||
<input type='hidden' class='region' name='region[]' value='all'>
|
||||
<td><input type='number' name='first_unit[]' lay-verify='required' autocomplete='off' class='layui-input '></td>
|
||||
<td><input type='number' name='first_money[]' lay-verify='required' autocomplete='off' class='layui-input '></td>
|
||||
<td><input type='number' name='continue_unit[]' lay-verify='required' autocomplete='off' class='layui-input '></td>
|
||||
<td><input type='number' name='continue_money[]' lay-verify='required' autocomplete='off' class='layui-input '></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr class="area_tbody"></tr>
|
||||
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"></label>
|
||||
<div class="layui-input-inline">
|
||||
<button type="button" id="btn-area" class="layui-btn layui-btn-sm layui-btn-normal layuiadmin-btn-select_area" >添加运费规则</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="add-freight-submit" id="add-freight-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
var araeDataIds = '';
|
||||
var araeDataNmae = '';
|
||||
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'form','jquery','like','transfer'], function() {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, transfer = layui.transfer
|
||||
, like = layui.like;
|
||||
|
||||
window.callTree = function (data) {
|
||||
|
||||
for (var i =0;i< data.length; i++){
|
||||
araeDataNmae += data[i]['context']+',';
|
||||
araeDataIds += data[i]['nodeId'] + ',';
|
||||
}
|
||||
|
||||
araeDataNmae = araeDataNmae.substring(0,araeDataNmae.length-1);
|
||||
araeDataIds = araeDataIds.substring(0,araeDataIds.length-1);
|
||||
|
||||
};
|
||||
|
||||
$(document).on('click', '#btn-area', function () {
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '配送区域'
|
||||
,content: '{:url("freight/area")}'
|
||||
,area: ['90%', '90%']
|
||||
,btn: ['确定','返回']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submitID = 'area-freight-submit'
|
||||
,submit = layero.find('iframe').contents().find('#'+ submitID);
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit('+ submitID +')', function(data){
|
||||
|
||||
if (araeDataIds == ''){
|
||||
layer.msg('请选择地区');
|
||||
return ;
|
||||
}
|
||||
addArea(araeDataNmae);
|
||||
$('input.region:last').val(araeDataIds);
|
||||
araeDataNmae = '';
|
||||
araeDataIds = '';
|
||||
layer.close(index);
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
form.on('submit(add-freight-submit)', function (data) {
|
||||
var field = data.field;
|
||||
like.ajax({
|
||||
url: '{:url("freight/add")}'
|
||||
, data: field
|
||||
, type: 'post'
|
||||
, success: function (res) {
|
||||
if (res.code == 1) {
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
},function () {
|
||||
});
|
||||
}
|
||||
},
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
function addArea(data) {
|
||||
var add = ".area_tr";
|
||||
var id = $('tr.area_tr:last').attr('data-id');
|
||||
if (id === undefined){
|
||||
id = 1;
|
||||
add = ".area_tbody";
|
||||
}else{
|
||||
add = add+id;
|
||||
}
|
||||
var v = parseInt(id) + 1;
|
||||
var str = "<tr class='area_tr area_tr"+v+"' data-id='" + v + "'>" +
|
||||
"<td><span class=' area_name area_name"+v+" '>"+data+"</span></td>" +
|
||||
"<input type='hidden' class='region region"+v+" ' name='region["+v+"]' value=''>" +
|
||||
"<td><input type='number' name='first_unit["+v+"]' lay-verify='required' autocomplete='off' class='layui-input '></td>" +
|
||||
"<td><input type='number' name='first_money["+v+"]' lay-verify='required' autocomplete='off' class='layui-input '></td>" +
|
||||
"<td><input type='number' name='continue_unit["+v+"]' lay-verify='required' autocomplete='off' class='layui-input '></td>" +
|
||||
"<td><input type='number' name='continue_money["+v+"]' lay-verify='required' autocomplete='off' class='layui-input '></td>" +
|
||||
"<td style='text-align:center'>" +
|
||||
"<button class='layui-btn layui-btn-sm layui-btn-normal' type='button' onclick='editArea(" + v + ")'>" +
|
||||
"<i class='layui-icon layui-icon-edit'></i>" +
|
||||
"</button>" +
|
||||
"<button class='layui-btn layui-btn-sm layui-btn-danger' type='button' onclick='delArea(" + v + ")'>" +
|
||||
"<i class='layui-icon layui-icon-delete'></i>" +
|
||||
"</button>" +
|
||||
"</td>" +
|
||||
"</tr>";
|
||||
|
||||
$(add).after(str);
|
||||
}
|
||||
|
||||
function delArea(value) {
|
||||
$(".area_tr" + value).remove();
|
||||
}
|
||||
|
||||
|
||||
//编辑模板行
|
||||
function editArea(value) {
|
||||
|
||||
var regionSelected = '.region'+value;//选择编辑的行
|
||||
var selectIds = $(regionSelected).val();//选中行的地区id
|
||||
|
||||
layer.open({
|
||||
type: 2
|
||||
, title: '配送区域'
|
||||
, content: '{:url("freight/areaEdit")}'
|
||||
, area: ['90%', '90%']
|
||||
, btn: ['确定', '返回']
|
||||
, success: function (layero,index) {
|
||||
var iframe = window['layui-layer-iframe' + index];
|
||||
iframe.editSelected(selectIds);
|
||||
}
|
||||
, yes: function (index, layero) {
|
||||
var iframeWindow = window['layui-layer-iframe' + index]
|
||||
, submitID = 'area-freight-submit'
|
||||
, submit = layero.find('iframe').contents().find('#' + submitID);
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
|
||||
if (araeDataIds == '') {
|
||||
layer.msg('请选择地区');
|
||||
return;
|
||||
}
|
||||
$(".area_name" + value).text(araeDataNmae);
|
||||
$(".region" + value).val(araeDataIds);
|
||||
araeDataNmae = '';
|
||||
araeDataIds = '';
|
||||
layer.close(index);
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
339
application/admin/view/freight/area.html
Normal file
339
application/admin/view/freight/area.html
Normal file
@@ -0,0 +1,339 @@
|
||||
{layout name="layout2" /}
|
||||
<link rel="stylesheet" href="/static/plug/dtree/dtree.css" media="all">
|
||||
<link rel="stylesheet" href="/static/plug/dtree/font/dtreefont.css" media="all">
|
||||
|
||||
<div class="layui-row " style="margin-top: 10px;background: #f2f2f2">
|
||||
<div class="layui-col-md5">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header">选择地区</div>
|
||||
<div class="layui-card-body">
|
||||
<div style="height: 280px;overflow: auto;">
|
||||
<ul id="cskTree1" class="dtree" data-id="0"></ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md2">
|
||||
<div style="height: 280px;text-align: center">
|
||||
<button class="layui-btn layui-btn-sm layui-btn-normal" style="margin-top: 180px;" id="csk_btn">选择</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md5">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header">已选地区</div>
|
||||
<div class="layui-card-body">
|
||||
<div style="height: 280px;overflow: auto;">
|
||||
<ul id="cskTree2" class="dtree" data-id="-1"></ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="area-freight-submit" id="area-freight-submit" value="确认">
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" src="/static/plug/dtree/areaData.js"></script>
|
||||
<script type="text/javascript" src="/static/plug/dtree/dtree.js"></script>
|
||||
<script src="/static/common/js/area.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index', //主入口模块
|
||||
dtree: '../../../dtree'
|
||||
}).use(['index', 'form', 'jquery', 'like','dtree'], function () {
|
||||
var $ = layui.$
|
||||
, jquery = layui.jquery
|
||||
, like = layui.like
|
||||
, dtree = layui.dtree;
|
||||
|
||||
|
||||
var source = areaDatas;
|
||||
|
||||
dtree.render({
|
||||
elem: "#cskTree1",
|
||||
data:areaDatas,
|
||||
checkbar:true,
|
||||
initLevel: 1,
|
||||
skin: "laySimple",
|
||||
load:true
|
||||
});
|
||||
|
||||
var checkedData = [];//选中的数据;
|
||||
var delData = [];//删除的数据
|
||||
|
||||
var dtreeDiv = dtree.render({
|
||||
elem: "#cskTree2",
|
||||
data: [],
|
||||
checkbar:true,
|
||||
response:{treeId:"nodeId",title:"context"},
|
||||
dataFormat:"list",
|
||||
skin: "laySimple",
|
||||
none: "暂无",
|
||||
toolbar:true,
|
||||
toolbarShow:["delete"],
|
||||
toolbarWay:"fixed", // "contextmenu":右键菜单(默认),"fixed":"固定在节点后","follow":"跟随节点动态呈现"
|
||||
toolbarStyle: {title: "选中"},
|
||||
toolbarFun: {
|
||||
delTreeNode: function(treeNode, $div){
|
||||
delData.push(treeNode);
|
||||
dtreeDiv.changeTreeNodeDel(true); // 删除成功
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
//框1中选中的数据 在框2中显示
|
||||
$("#csk_btn").click(function(){
|
||||
var param = dtree.getCheckbarNodesParam("cskTree1"); // 获取选中数据
|
||||
if(param.length == 0) {
|
||||
layer.msg("请至少选择一个");
|
||||
}
|
||||
checkedData = param;
|
||||
delData = [];
|
||||
dtree.reload("cskTree2",{data:param});
|
||||
});
|
||||
|
||||
$("#area-freight-submit").click(function(){
|
||||
dtreeDiv.setDisabledAllNodes('cskTree2');
|
||||
var data = dtreeDiv.getAllDisabledNodesParam('cskTree2');
|
||||
var needDel = [];//需要删除的数据
|
||||
//1,遍历删除的地区id;1级不处理,2级,3级处理
|
||||
for (var x = 0; x < delData.length; x++){
|
||||
|
||||
if (delData[x]['level'] == 2){
|
||||
var sameLevel = [];
|
||||
var partner = 0;
|
||||
//删除上一级,同2级中,数量只有一个时,不删除上级
|
||||
for (var i = 0; i < data.length; i++){
|
||||
if (data[i]['level'] == 2){
|
||||
sameLevel.push(data[i]);
|
||||
}
|
||||
if (data[i]['nodeId'] == delData[x]['parentId']){
|
||||
partner = i;
|
||||
}
|
||||
}
|
||||
|
||||
if (sameLevel.length > 1){
|
||||
needDel.push(data[partner]['nodeId']);
|
||||
}
|
||||
}
|
||||
|
||||
if (delData[x]['level'] == 3){
|
||||
for (var a = 0;a < data.length; a++){
|
||||
if (data[a]['nodeId'] == delData[x]['parentId']){
|
||||
for (var b = 0;b < data.length; b++){
|
||||
if (data[b]['nodeId'] == data[a]['parentId']){
|
||||
needDel.push(data[b]['nodeId']);
|
||||
}
|
||||
}
|
||||
needDel.push(data[a]['nodeId']);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
for (var f =0; f < delData.length;){
|
||||
if (delData[f]['level'] == 1){
|
||||
delData.splice(f,1);
|
||||
} else {
|
||||
f++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var result = [];
|
||||
for (var d = 0; d < data.length; d++){
|
||||
if(needDel.indexOf(data[d]['nodeId']) == -1) {
|
||||
result.push(data[d]);
|
||||
}
|
||||
}
|
||||
|
||||
var lastData = [];
|
||||
var firstDataIds = [];
|
||||
var secondDataIds = [];
|
||||
|
||||
for (var e = 0; e < result.length; e++){
|
||||
if (result[e]['level'] == 1){
|
||||
var sourceFirst = getFirstChildBySource(source,result[e]['nodeId']);//完整数据中一级的子级(二,三级)
|
||||
var resultFirst = getChild(result,result[e]['nodeId']);//选中的数据中一级的子级数量
|
||||
|
||||
if (sourceFirst.length == resultFirst.length){
|
||||
lastData.push(result[e]);
|
||||
firstDataIds.push(result[e]['nodeId']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//检查非全选时,二级是否全选
|
||||
for (var m =0; m < result.length; m++){
|
||||
|
||||
if((result[m]['level'] == 2) && (firstDataIds.indexOf(result[m]['parentId']) == -1)){
|
||||
|
||||
var sourceSecond = getSecondChildBySource(source,result[m]['nodeId']);
|
||||
var resultSecond = getFirstChild(result,result[m]['nodeId']);
|
||||
|
||||
if (sourceSecond.length == resultSecond.length){
|
||||
lastData.push(result[m]);
|
||||
secondDataIds.push(result[m]['nodeId']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//检查非全选时,三级是否全选
|
||||
for (var n =0; n < result.length; n++){
|
||||
|
||||
if((result[n]['level'] == 3) && (secondDataIds.indexOf(result[n]['parentId']) == -1)){
|
||||
//三级的上级(二级id)的上级是否在firstData中
|
||||
var thirdLeader = getSecondLeader(source,result[n]['nodeId']);
|
||||
|
||||
if (firstDataIds.indexOf(thirdLeader) == -1){
|
||||
lastData.push(result[n]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
parent.window.callTree && parent.window.callTree(lastData);return;
|
||||
|
||||
});
|
||||
|
||||
|
||||
//获取3级的上级
|
||||
function getSecondLeader(data,id) {
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
var firstChildren = data[i]['children'];
|
||||
for (var x =0; x < firstChildren.length; x++){
|
||||
var secondChildren = firstChildren[x]['children'];
|
||||
for (var y = 0; y < secondChildren.length; y++){
|
||||
if (secondChildren[y]['id'] == id){
|
||||
return data[i]['id'];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
//获取一级下的子级(二级,三级)
|
||||
function getFirstChildBySource(data,pid) {
|
||||
var child = [];
|
||||
for (var i = 0; i < data.length; i++){
|
||||
if (data[i]['id'] == pid){
|
||||
var firstChildren = data[i]['children'];
|
||||
for (var x =0; x < firstChildren.length; x++){
|
||||
child.push(firstChildren[x]);
|
||||
var secondChildren = firstChildren[x]['children'];
|
||||
for (var y = 0; y < secondChildren.length; y++){
|
||||
child.push(secondChildren[y]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return child;
|
||||
}
|
||||
|
||||
//获取二级下的子级(三级)
|
||||
function getSecondChildBySource(data,pid) {
|
||||
var child = [];
|
||||
for (var i = 0; i < data.length; i++){
|
||||
var firstChildren = data[i]['children'];
|
||||
|
||||
|
||||
|
||||
for (var x =0; x < firstChildren.length; x++){
|
||||
if(firstChildren[x]['id'] == pid){
|
||||
var secondChildren = firstChildren[x]['children'];
|
||||
for (var y = 0; y < secondChildren.length; y++){
|
||||
child.push(secondChildren[y]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return child;
|
||||
}
|
||||
|
||||
function getChild(data,pid) {
|
||||
var child = [];
|
||||
for (var i = 0; i < data.length; i++){
|
||||
if (data[i]['parentId'] == pid){
|
||||
child.push(data[i]);
|
||||
for (var a = 0; a < data.length; a++){
|
||||
if (data[a]['parentId'] == data[i]['nodeId']){
|
||||
child.push(data[a]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return child;
|
||||
}
|
||||
|
||||
function getFirstChild(data,pid) {
|
||||
var firstChild = [];
|
||||
for (var i = 0; i < data.length; i++){
|
||||
if (data[i]['parentId'] == pid){
|
||||
firstChild.push(data[i]);
|
||||
}
|
||||
}
|
||||
return firstChild;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
var data = array_column(areas,'id');
|
||||
|
||||
//获取父类id
|
||||
function getParentIds(ids) {
|
||||
var call_ids=[];
|
||||
for(var i in ids){
|
||||
if(data[ids[i]]['parent_id']!=0){
|
||||
ids.push(data[ids[i]]['parent_id']);
|
||||
call_ids.push(data[ids[i]]['parent_id']);
|
||||
}
|
||||
}
|
||||
if(call_ids.length!=0){
|
||||
ids=ids.concat(getParentIds(call_ids));
|
||||
}
|
||||
return ids;
|
||||
}
|
||||
|
||||
//获取子类id
|
||||
function getChildrenIds(ids){
|
||||
var call_ids=[];
|
||||
for(var i in ids){
|
||||
if(data[ids[i]]['level']==3){
|
||||
continue;
|
||||
}
|
||||
for(var j in data){
|
||||
if(ids[i] == data[j]['parent_id']){
|
||||
ids.push(data[j]['id']);
|
||||
call_ids.push(data[j]['id']);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(call_ids.length!=0){
|
||||
ids=ids.concat(getChildrenIds(call_ids));
|
||||
}
|
||||
return ids;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取相关id
|
||||
* @param ids
|
||||
*/
|
||||
function getAboutIds(ids){
|
||||
result = getChildrenIds(ids);
|
||||
result = result.concat(getParentIds(ids));
|
||||
return array_unique(result);
|
||||
}
|
||||
|
||||
|
||||
// console.log(getAboutIds(['360000','445100','440105']));
|
||||
});
|
||||
|
||||
</script>
|
||||
351
application/admin/view/freight/area_edit.html
Normal file
351
application/admin/view/freight/area_edit.html
Normal file
@@ -0,0 +1,351 @@
|
||||
{layout name="layout2" /}
|
||||
<link rel="stylesheet" href="/static/plug/dtree/dtree.css" media="all">
|
||||
<link rel="stylesheet" href="/static/plug/dtree/font/dtreefont.css" media="all">
|
||||
|
||||
<div class="layui-row " style="margin-top: 10px;background: #f2f2f2">
|
||||
<div class="layui-col-md5">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header">选择地区</div>
|
||||
<div class="layui-card-body">
|
||||
<div style="height: 280px;overflow: auto;">
|
||||
<ul id="cskTree1" class="dtree" data-id="0"></ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md2">
|
||||
<div style="height: 280px;text-align: center">
|
||||
<button class="layui-btn layui-btn-sm layui-btn-normal" style="margin-top: 180px;" id="csk_btn">选择</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-col-md5">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-header">已选地区</div>
|
||||
<div class="layui-card-body">
|
||||
<div style="height: 280px;overflow: auto;">
|
||||
<ul id="cskTree2" class="dtree" data-id="-1"></ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="area-freight-submit" id="area-freight-submit" value="确认">
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" src="/static/plug/dtree/areaData.js"></script>
|
||||
<script type="text/javascript" src="/static/plug/dtree/dtree.js"></script>
|
||||
<script src="/static/common/js/area.js"></script>
|
||||
<script>
|
||||
var selectedIds = '';//编辑的id
|
||||
var regionIds = [];//格式化后的需要编辑的id
|
||||
function editSelected(data) {
|
||||
selectedIds = data;
|
||||
regionIds = selectedIds.split(",");
|
||||
}
|
||||
|
||||
var data = array_column(areas,'id');
|
||||
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index', //主入口模块
|
||||
dtree: '../../../dtree'
|
||||
}).use(['index', 'form', 'jquery', 'like','dtree'], function () {
|
||||
var $ = layui.$
|
||||
, jquery = layui.jquery
|
||||
, like = layui.like
|
||||
, dtree = layui.dtree;
|
||||
|
||||
var source = areaDatas;//树状结构的完整数据(用于渲染树形结构插件)
|
||||
//组装选中地区id几其相关地区id
|
||||
selectedIds += ',' + getAboutIds(regionIds);
|
||||
|
||||
//渲染数据框1的地区选中
|
||||
dtree.render({
|
||||
elem: "#cskTree1",
|
||||
data:areaDatas,
|
||||
checkbar:true,
|
||||
initLevel: 1,
|
||||
skin: "laySimple",
|
||||
checkbarType:"all",
|
||||
load:true,
|
||||
done: function(res, $ul, first){
|
||||
dtree.chooseDataInit("cskTree1",selectedIds); // 初始化选中
|
||||
|
||||
//把需要编辑的选中的数据在数据框2中选中
|
||||
var editParam = dtree.getCheckbarNodesParam("cskTree1"); // 获取选中数据
|
||||
checkedData = editParam;
|
||||
delData = [];
|
||||
dtree.reload("cskTree2",{data:editParam});
|
||||
}
|
||||
});
|
||||
|
||||
var checkedData = [];//选中的数据;
|
||||
var delData = [];//删除的数据
|
||||
//渲染地区数据框2的数据
|
||||
var dtreeDiv = dtree.render({
|
||||
elem: "#cskTree2",
|
||||
data: [],
|
||||
checkbar:true,
|
||||
response:{treeId:"nodeId",title:"context"},
|
||||
dataFormat:"list",
|
||||
skin: "laySimple",
|
||||
none: "暂无",
|
||||
toolbar:true,
|
||||
toolbarShow:["delete"],
|
||||
toolbarWay:"fixed", // "contextmenu":右键菜单(默认),"fixed":"固定在节点后","follow":"跟随节点动态呈现"
|
||||
toolbarStyle: {title: "选中"},
|
||||
toolbarFun: {
|
||||
delTreeNode: function(treeNode, $div){
|
||||
delData.push(treeNode);
|
||||
dtreeDiv.changeTreeNodeDel(true); // 删除成功
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
//框1中选择的数据 在框2中显示
|
||||
$("#csk_btn").click(function(){
|
||||
var param = dtree.getCheckbarNodesParam("cskTree1"); // 获取选中数据
|
||||
if(param.length == 0) {
|
||||
layer.msg("请至少选择一个");
|
||||
}
|
||||
checkedData = param;
|
||||
delData = [];
|
||||
dtree.reload("cskTree2",{data:param});
|
||||
});
|
||||
|
||||
//点击确认时,把编辑过的框2的数据返回到地区编辑页
|
||||
$("#area-freight-submit").click(function(){
|
||||
dtreeDiv.setDisabledAllNodes('cskTree2');
|
||||
var data = dtreeDiv.getAllDisabledNodesParam('cskTree2');
|
||||
var needDel = [];//需要删除的数据
|
||||
//1,遍历删除的地区id;1级不处理,2级,3级处理
|
||||
for (var x = 0; x < delData.length; x++){
|
||||
|
||||
if (delData[x]['level'] == 2){
|
||||
var sameLevel = [];
|
||||
var partner = 0;
|
||||
//删除上一级,同2级中,数量只有一个时,不删除上级
|
||||
for (var i = 0; i < data.length; i++){
|
||||
if (data[i]['level'] == 2){
|
||||
sameLevel.push(data[i]);
|
||||
}
|
||||
if (data[i]['nodeId'] == delData[x]['parentId']){
|
||||
partner = i;
|
||||
}
|
||||
}
|
||||
|
||||
if (sameLevel.length > 1){
|
||||
needDel.push(data[partner]['nodeId']);
|
||||
}
|
||||
}
|
||||
|
||||
if (delData[x]['level'] == 3){
|
||||
for (var a = 0;a < data.length; a++){
|
||||
if (data[a]['nodeId'] == delData[x]['parentId']){
|
||||
for (var b = 0;b < data.length; b++){
|
||||
if (data[b]['nodeId'] == data[a]['parentId']){
|
||||
needDel.push(data[b]['nodeId']);
|
||||
}
|
||||
}
|
||||
needDel.push(data[a]['nodeId']);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
for (var f =0; f < delData.length;){
|
||||
if (delData[f]['level'] == 1){
|
||||
delData.splice(f,1);
|
||||
} else {
|
||||
f++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var result = [];
|
||||
for (var d = 0; d < data.length; d++){
|
||||
if(needDel.indexOf(data[d]['nodeId']) == -1) {
|
||||
result.push(data[d]);
|
||||
}
|
||||
}
|
||||
|
||||
var lastData = [];
|
||||
var firstDataIds = [];
|
||||
var secondDataIds = [];
|
||||
|
||||
for (var e = 0; e < result.length; e++){
|
||||
if (result[e]['level'] == 1){
|
||||
var sourceFirst = getFirstChildBySource(source,result[e]['nodeId']);//完整数据中一级的子级(二,三级)
|
||||
var resultFirst = getChild(result,result[e]['nodeId']);//选中的数据中一级的子级数量
|
||||
|
||||
if (sourceFirst.length == resultFirst.length){
|
||||
lastData.push(result[e]);
|
||||
firstDataIds.push(result[e]['nodeId']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//检查非全选时,二级是否全选
|
||||
for (var m =0; m < result.length; m++){
|
||||
|
||||
if((result[m]['level'] == 2) && (firstDataIds.indexOf(result[m]['parentId']) == -1)){
|
||||
|
||||
var sourceSecond = getSecondChildBySource(source,result[m]['nodeId']);
|
||||
var resultSecond = getFirstChild(result,result[m]['nodeId']);
|
||||
|
||||
if (sourceSecond.length == resultSecond.length){
|
||||
lastData.push(result[m]);
|
||||
secondDataIds.push(result[m]['nodeId']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//检查非全选时,三级是否全选
|
||||
for (var n =0; n < result.length; n++){
|
||||
|
||||
if((result[n]['level'] == 3) && (secondDataIds.indexOf(result[n]['parentId']) == -1)){
|
||||
//三级的上级(二级id)的上级是否在firstData中
|
||||
var thirdLeader = getSecondLeader(source,result[n]['nodeId']);
|
||||
|
||||
if (firstDataIds.indexOf(thirdLeader) == -1){
|
||||
lastData.push(result[n]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
parent.window.callTree && parent.window.callTree(lastData);
|
||||
|
||||
});
|
||||
|
||||
|
||||
//获取3级的上级
|
||||
function getSecondLeader(data,id) {
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
var firstChildren = data[i]['children'];
|
||||
for (var x =0; x < firstChildren.length; x++){
|
||||
var secondChildren = firstChildren[x]['children'];
|
||||
for (var y = 0; y < secondChildren.length; y++){
|
||||
if (secondChildren[y]['id'] == id){
|
||||
return data[i]['id'];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
//获取一级下的子级(二级,三级)
|
||||
function getFirstChildBySource(data,pid) {
|
||||
var child = [];
|
||||
for (var i = 0; i < data.length; i++){
|
||||
if (data[i]['id'] == pid){
|
||||
var firstChildren = data[i]['children'];
|
||||
for (var x =0; x < firstChildren.length; x++){
|
||||
child.push(firstChildren[x]);
|
||||
var secondChildren = firstChildren[x]['children'];
|
||||
for (var y = 0; y < secondChildren.length; y++){
|
||||
child.push(secondChildren[y]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return child;
|
||||
}
|
||||
|
||||
//获取二级下的子级(三级)
|
||||
function getSecondChildBySource(data,pid) {
|
||||
var child = [];
|
||||
for (var i = 0; i < data.length; i++){
|
||||
var firstChildren = data[i]['children'];
|
||||
for (var x =0; x < firstChildren.length; x++){
|
||||
if(firstChildren[x]['id'] == pid){
|
||||
var secondChildren = firstChildren[x]['children'];
|
||||
for (var y = 0; y < secondChildren.length; y++){
|
||||
child.push(secondChildren[y]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return child;
|
||||
}
|
||||
|
||||
//获取下级
|
||||
function getChild(data,pid) {
|
||||
var child = [];
|
||||
for (var i = 0; i < data.length; i++){
|
||||
if (data[i]['parentId'] == pid){
|
||||
child.push(data[i]);
|
||||
for (var a = 0; a < data.length; a++){
|
||||
if (data[a]['parentId'] == data[i]['nodeId']){
|
||||
child.push(data[a]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return child;
|
||||
}
|
||||
|
||||
//第一个下级
|
||||
function getFirstChild(data,pid) {
|
||||
var firstChild = [];
|
||||
for (var i = 0; i < data.length; i++){
|
||||
if (data[i]['parentId'] == pid){
|
||||
firstChild.push(data[i]);
|
||||
}
|
||||
}
|
||||
return firstChild;
|
||||
}
|
||||
|
||||
|
||||
//获取父类id
|
||||
function getParentIds(ids) {
|
||||
var call_ids=[];
|
||||
for(var i in ids){
|
||||
if(data[ids[i]]['parent_id']!=0){
|
||||
ids.push(data[ids[i]]['parent_id']);
|
||||
call_ids.push(data[ids[i]]['parent_id']);
|
||||
}
|
||||
}
|
||||
if(call_ids.length!=0){
|
||||
ids=ids.concat(getParentIds(call_ids));
|
||||
}
|
||||
return ids;
|
||||
}
|
||||
|
||||
|
||||
//获取子类id
|
||||
function getChildrenIds(ids){
|
||||
var call_ids=[];
|
||||
for(var i in ids){
|
||||
if(data[ids[i]]['level']==3){
|
||||
continue;
|
||||
}
|
||||
for(var j in data){
|
||||
if(ids[i] == data[j]['parent_id']){
|
||||
ids.push(data[j]['id']);
|
||||
call_ids.push(data[j]['id']);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(call_ids.length!=0){
|
||||
ids=ids.concat(getChildrenIds(call_ids));
|
||||
}
|
||||
return ids;
|
||||
}
|
||||
|
||||
//获取有关的地区id
|
||||
function getAboutIds(ids){
|
||||
result = getChildrenIds(ids);
|
||||
result = result.concat(getParentIds(ids));
|
||||
return array_unique(result);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
63
application/admin/view/freight/config.html
Normal file
63
application/admin/view/freight/config.html
Normal file
@@ -0,0 +1,63 @@
|
||||
<style>
|
||||
.label-width{
|
||||
width: 120px;
|
||||
}
|
||||
</style>
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-config" id="layuiadmin-form-config" style="padding: 20px 30px 0 0;">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label label-width">物流查询方式:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="radio" name="way" lay-filter="kd100" value="kd100" title="快递100" {if condition="$config.way eq 'kd100'"} checked {/if}>
|
||||
<input type="radio" name="way" lay-filter="kdniao" value="kdniao" title="快递鸟" {if condition="$config.way eq 'kdniao'"} checked {/if}>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--快递100-->
|
||||
<div class="layui-form-item " id="kd100_appkey" {if condition="$config.way eq 'kdniao'"} style="display: none"{/if}>
|
||||
<label class="layui-form-label label-width">授权KEY:</label>
|
||||
<div class="layui-input-inline" >
|
||||
<input type="text" name="kd100_appkey" value="{$config.kd100_appkey | default =''}" lay-vertype="tips" placeholder="请输入APPKEY" autocomplete="off" class="layui-input">
|
||||
<div class=" layui-form-mid layui-word-aux" >快递100分配的授权KEY</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item kd100" id="kd100_customer" {if condition="$config.way eq 'kdniao'"} style="display: none"{/if}>
|
||||
<label class="layui-form-label label-width">CUSTOMER:</label>
|
||||
<div class="layui-input-inline" >
|
||||
<input type="text" name="kd100_customer" value="{$config.kd100_customer | default =''}" lay-vertype="tips" placeholder="请输入CUSTOMER" autocomplete="off" class="layui-input">
|
||||
<div class=" layui-form-mid layui-word-aux">快递100分配的customer</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!--快递鸟-->
|
||||
<div class="layui-form-item kdniao" id="kdniao_type" {if condition="$config.way eq 'kd100'"} style="display: none"{/if}>
|
||||
<label class="layui-form-label label-width">快递鸟套餐:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="radio" name="kdniao_type" lay-filter="free" value="free" title="免费" {if condition="$config.kdniao_type eq 'free'"} checked {/if}>
|
||||
<input type="radio" name="kdniao_type" lay-filter="pay" value="pay" title="付费" {if condition="$config.kdniao_type eq 'pay'"} checked {/if}>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item kdniao" id="kdniao_appkey" {if condition="$config.way eq 'kd100'"} style="display: none"{/if}>
|
||||
<label class="layui-form-label label-width">APPKEY:</label>
|
||||
<div class="layui-input-inline" >
|
||||
<input type="text" name="kdniao_appkey" value="{$config.kdniao_appkey | default =''}" lay-vertype="tips" placeholder="请输入APPKEY" autocomplete="off" class="layui-input">
|
||||
<div class=" layui-form-mid layui-word-aux" >快递鸟分配的电商加密私钥</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item kdniao" id="kdniao_ebussinessid" {if condition="$config.way eq 'kd100'"} style="display: none"{/if}>
|
||||
<label class="layui-form-label label-width">EBussinessID:</label>
|
||||
<div class="layui-input-inline" >
|
||||
<input type="text" name="kdniao_ebussinessid" value="{$config.kdniao_ebussinessid | default =''}" lay-vertype="tips" placeholder="请输入CUSTOMER" autocomplete="off" class="layui-input">
|
||||
<div class=" layui-form-mid layui-word-aux" >快递鸟分配的电商ID</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item " style="padding-left: 10%">
|
||||
<input type="button" class="layui-btn layui-btn-sm layui-btn-normal" lay-submit lay-filter="query-submit" id="query-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
120
application/admin/view/freight/detail.html
Normal file
120
application/admin/view/freight/detail.html
Normal file
@@ -0,0 +1,120 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.div-flex {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: left;
|
||||
}
|
||||
|
||||
.layui-form-label {
|
||||
width: 100px;
|
||||
}
|
||||
|
||||
.width-160 {
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
.layui-table th {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.table-margin {
|
||||
margin-left: 50px;
|
||||
margin-right: 50px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.image {
|
||||
height: 80px;
|
||||
width: 80px;
|
||||
}
|
||||
|
||||
.mt50 {
|
||||
margin-left: 50px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-ad_position" id="layuiadmin-form-category" style="padding: 20px 30px 100px 0;">
|
||||
|
||||
<div class="layui-form-item div-flex">
|
||||
<label class="layui-form-label ">模板名称:</label>
|
||||
<div class="width-160">{$detail.name}</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item div-flex">
|
||||
<label class="layui-form-label">计费方式</label>
|
||||
<div class="width-160">{$detail.charge_way_text}</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">备注</label>
|
||||
<div class="layui-input-inline">
|
||||
<textarea name="remark" placeholder="备注信息" class="layui-textarea">{$detail.remark}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">配送区域</label>
|
||||
<div class="layui-input-block">
|
||||
<table class="layui-table">
|
||||
<colgroup>
|
||||
<col width="30%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>可配送区域</th>
|
||||
<th class="th_first_unit">首件 (个)</th>
|
||||
<th class="th_first_money">运费 (元)</th>
|
||||
<th class="th_continue_unit">续件 (个)</th>
|
||||
<th class="th_continue_money">续费 (元)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody >
|
||||
{foreach $detail.configs as $k => $item}
|
||||
<tr>
|
||||
<th style="text-align: left">{$item.region_name}</th>
|
||||
<th>{$item.first_unit}</th>
|
||||
<th>{$item.first_money}</th>
|
||||
<th>{$item.continue_unit}</th>
|
||||
<th>{$item.continue_money}</th>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item" >
|
||||
<div class="layui-input-block ">
|
||||
<button type="button" class="layui-btn layui-btn-primary " id="back">返回</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'form','jquery','like','transfer'], function() {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, transfer = layui.transfer
|
||||
, like = layui.like;
|
||||
|
||||
$('#back').click(function () {
|
||||
var index=parent.layer.getFrameIndex(window.name); //获取当前窗口的name
|
||||
parent.layer.close(index);
|
||||
parent.layui.table.reload('freight-lists');
|
||||
return true;
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
229
application/admin/view/freight/edit.html
Normal file
229
application/admin/view/freight/edit.html
Normal file
@@ -0,0 +1,229 @@
|
||||
{layout name="layout2" /}
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-ad_position" id="layuiadmin-form-category" style="padding: 20px 30px 0 0;">
|
||||
|
||||
<input type="hidden" name="id" value="{$detail.id}">
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">模板名称</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="name" lay-verify="required" value="{$detail.name}" placeholder="请输入模板名称"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">计费方式</label>
|
||||
<div class="layui-input-block" id="charge_way">
|
||||
<input type="radio" class="type" name="charge_way" value="1" title="按重量" {if
|
||||
condition="$detail.charge_way eq 1" }checked{/if}>
|
||||
<input type="radio" class="type" name="charge_way" value="2" title="按体积" {if
|
||||
condition="$detail.charge_way eq 2" }checked{/if}>
|
||||
<input type="radio" class="type" name="charge_way" value="3" title="按件数" {if
|
||||
condition="$detail.charge_way eq 3" }checked{/if}>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">备注</label>
|
||||
<div class="layui-input-inline">
|
||||
<textarea name="remark" placeholder="备注信息" class="layui-textarea">{$detail.remark}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">配送区域</label>
|
||||
<div class="layui-input-block">
|
||||
<table class="layui-table">
|
||||
<colgroup>
|
||||
<col width="25%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
<col width="15%">
|
||||
<col width="20%">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>可配送区域</th>
|
||||
<th class="th_first_unit">首件 (个)</th>
|
||||
<th class="th_first_money">运费 (元)</th>
|
||||
<th class="th_continue_unit">续件 (个)</th>
|
||||
<th class="th_continue_money">续费 (元)</th>
|
||||
<th >操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{foreach $detail.configs as $k => $item}
|
||||
<tr class='area_tr area_tr{$k}' data-id="{$k}">
|
||||
<input type='hidden' class='region region{$k}' name='region[]' value="{$item.region}">
|
||||
<td class='area_name area_name{$k}' style="text-align: left">
|
||||
{$item.region_name}
|
||||
</td>
|
||||
<td><input type='number' name='first_unit[]' lay-verify='required' value="{$item.first_unit}" autocomplete='off' class='layui-input'></td>
|
||||
<td><input type='number' name='first_money[]' lay-verify='required' value="{$item.first_money}" autocomplete='off' class='layui-input'></td>
|
||||
<td><input type='number' name='continue_unit[]' lay-verify='required' value="{$item.continue_unit}" autocomplete='off' class='layui-input'></td>
|
||||
<td><input type='number' name='continue_money[]' lay-verify='required' value="{$item.continue_money}" autocomplete='off' class='layui-input'></td>
|
||||
|
||||
{if condition =" $item.region neq 'all' "}
|
||||
<td style="text-align: center">
|
||||
<button class='layui-btn layui-btn-sm layui-btn-normal' type='button' onclick='editArea("{$k}")'>
|
||||
<i class="layui-icon layui-icon-edit"></i>
|
||||
</button>
|
||||
<button class='layui-btn layui-btn-sm layui-btn-danger' type='button' onclick='delArea("{$k}")'>
|
||||
<i class="layui-icon layui-icon-delete"></i>
|
||||
</button>
|
||||
</td>
|
||||
{/if}
|
||||
</tr>
|
||||
{/foreach}
|
||||
<tr class="area_tbody"></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"></label>
|
||||
<div class="layui-input-inline">
|
||||
<button type="button" id="btn-area" class="layui-btn layui-btn-sm layui-btn-normal layuiadmin-btn-select_area">
|
||||
添加运费规则
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="edit-freight-submit" id="edit-freight-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
var araeDataIds = '';//选中的地区id
|
||||
var araeDataNmae = '';//选中的地区名字
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'form', 'jquery', 'like', 'transfer'], function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, transfer = layui.transfer
|
||||
, like = layui.like;
|
||||
|
||||
|
||||
window.callTree = function (data) {
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
araeDataNmae += data[i]['context'] + ',';
|
||||
araeDataIds += data[i]['nodeId'] + ',';
|
||||
}
|
||||
araeDataNmae = araeDataNmae.substring(0, araeDataNmae.length - 1);
|
||||
araeDataIds = araeDataIds.substring(0, araeDataIds.length - 1);
|
||||
};
|
||||
//添加地区(选择地区页面)
|
||||
$(document).on('click', '#btn-area', function () {
|
||||
layer.open({
|
||||
type: 2
|
||||
, title: '配送区域'
|
||||
, content: '{:url("freight/area")}'
|
||||
, area: ['90%', '90%']
|
||||
, btn: ['确定', '返回']
|
||||
, yes: function (index, layero) {
|
||||
var iframeWindow = window['layui-layer-iframe' + index]
|
||||
, submitID = 'area-freight-submit'
|
||||
, submit = layero.find('iframe').contents().find('#' + submitID);
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
|
||||
if (araeDataIds == '') {
|
||||
layer.msg('请选择地区');
|
||||
return;
|
||||
}
|
||||
addArea(araeDataNmae);
|
||||
$('input.region:last').val(araeDataIds);
|
||||
araeDataNmae = '';
|
||||
araeDataIds = '';
|
||||
layer.close(index);
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
//增加模板行
|
||||
function addArea(data) {
|
||||
var add = ".area_tr";
|
||||
var id = $('tr.area_tr:last').attr('data-id');
|
||||
if (id === undefined) {
|
||||
id = 1;
|
||||
add = ".area_tbody";
|
||||
} else {
|
||||
add = add + id;
|
||||
}
|
||||
var v = parseInt(id) + 1;
|
||||
|
||||
var str = "<tr class='area_tr area_tr"+v+"' data-id='" + v + "'>" +
|
||||
"<td><span class=' area_name area_name"+v+" '>"+data+"</span></td>" +
|
||||
"<input type='hidden' class='region region"+v+" ' name='region["+v+"]' value=''>" +
|
||||
"<td><input type='number' name='first_unit["+v+"]' lay-verify='required' autocomplete='off' class='layui-input'></td>" +
|
||||
"<td><input type='number' name='first_money["+v+"]' lay-verify='required' autocomplete='off' class='layui-input'></td>" +
|
||||
"<td><input type='number' name='continue_unit["+v+"]' lay-verify='required' autocomplete='off' class='layui-input'></td>" +
|
||||
"<td><input type='number' name='continue_money["+v+"]' lay-verify='required' autocomplete='off' class='layui-input'></td>" +
|
||||
"<td style='text-align:center'>" +
|
||||
"<button class='layui-btn layui-btn-sm layui-btn-normal' type='button' onclick='editArea(" + v + ")'>" +
|
||||
"<i class='layui-icon layui-icon-edit'></i>" +
|
||||
"</button>" +
|
||||
"<button class='layui-btn layui-btn-sm layui-btn-danger' type='button' onclick='delArea(" + v + ")'>" +
|
||||
"<i class='layui-icon layui-icon-delete'></i>" +
|
||||
"</button>" +
|
||||
"</td>" +
|
||||
"</tr>";
|
||||
$(add).after(str);
|
||||
}
|
||||
|
||||
//删除模板行
|
||||
function delArea(value) {
|
||||
$(".area_tr" + value).remove();
|
||||
}
|
||||
|
||||
//编辑模板行
|
||||
function editArea(value) {
|
||||
|
||||
var regionSelected = '.region'+value;//选择编辑的行
|
||||
var selectIds = $(regionSelected).val();//选中行的地区id
|
||||
|
||||
layer.open({
|
||||
type: 2
|
||||
, title: '配送区域'
|
||||
, content: '{:url("freight/areaEdit")}'
|
||||
, area: ['90%', '90%']
|
||||
, btn: ['确定', '返回']
|
||||
, success: function (layero,index) {
|
||||
var iframe = window['layui-layer-iframe' + index];
|
||||
iframe.editSelected(selectIds);
|
||||
}
|
||||
, yes: function (index, layero) {
|
||||
var iframeWindow = window['layui-layer-iframe' + index]
|
||||
, submitID = 'area-freight-submit'
|
||||
, submit = layero.find('iframe').contents().find('#' + submitID);
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
|
||||
if (araeDataIds == '') {
|
||||
layer.msg('请选择地区');
|
||||
return;
|
||||
}
|
||||
$(".area_name" + value).text(araeDataNmae);
|
||||
$(".region" + value).val(araeDataIds);
|
||||
araeDataNmae = '';
|
||||
araeDataIds = '';
|
||||
layer.close(index);
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
</script>
|
||||
42
application/admin/view/freight/express.html
Normal file
42
application/admin/view/freight/express.html
Normal file
@@ -0,0 +1,42 @@
|
||||
<style>
|
||||
.layui-table-cell {
|
||||
height: auto;
|
||||
}
|
||||
</style>
|
||||
<div class="layui-fluid">
|
||||
|
||||
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">快递名称</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="express_name" id="express_name" autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-express {$view_theme_color}" lay-submit lay-filter="express-search">
|
||||
查询
|
||||
</button>
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-express layui-btn-primary " lay-submit
|
||||
lay-filter="express-clear-search">重置
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="padding-bottom: 10px;">
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-express {$view_theme_color}" data-type="add">新增快递公司</button>
|
||||
</div>
|
||||
|
||||
<table id="express-lists" lay-filter="express-lists"></table>
|
||||
|
||||
<script type="text/html" id="express-operation">
|
||||
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="edit">编辑</a>
|
||||
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del">删除</a>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="icon">
|
||||
<img src="{{d.icon}}" style="height:80px;width: 80px" class="image-show">
|
||||
</script>
|
||||
|
||||
</div>
|
||||
466
application/admin/view/freight/index.html
Normal file
466
application/admin/view/freight/index.html
Normal file
@@ -0,0 +1,466 @@
|
||||
{layout name="layout1" /}
|
||||
|
||||
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-collapse like-layui-collapse" lay-accordion="" style="border:1px dashed #c4c4c4">
|
||||
<div class="layui-colla-item">
|
||||
<h2 class="layui-colla-title like-layui-colla-title" style="background-color: #fff">操作提示</h2>
|
||||
<div class="layui-colla-content layui-show">
|
||||
<p>*设置快递配送的运费模板。</p>
|
||||
<p>*需要开启快递发货的配送方式,运费模板才能生效。</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-tab layui-tab-card" lay-filter="tab-all">
|
||||
<ul class="layui-tab-title">
|
||||
<li data-type='freight' class="layui-this">运费模板</li>
|
||||
<li data-type='express'>快递公司</li>
|
||||
<li data-type='express'>查询配置</li>
|
||||
</ul>
|
||||
<div class="layui-tab-content">
|
||||
|
||||
<!--运费模板列表-->
|
||||
<div class="layui-tab-item layui-show ">
|
||||
{include file="freight/lists"/}
|
||||
</div>
|
||||
|
||||
<!--物流公司列表-->
|
||||
<div class="layui-tab-item">
|
||||
{include file="freight/express"/}
|
||||
</div>
|
||||
|
||||
<!--查询配置-->
|
||||
<div class="layui-tab-item">
|
||||
{include file="freight/config"/}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<script>
|
||||
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'element', 'like', 'table'], function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, table = layui.table
|
||||
, element = layui.element
|
||||
, like = layui.like;
|
||||
|
||||
//图片放大
|
||||
$(document).on('click', '.image-show', function () {
|
||||
var src = $(this).attr('src');
|
||||
like.showImg(src,600);
|
||||
});
|
||||
|
||||
|
||||
getLists('freight');
|
||||
|
||||
//切换列表
|
||||
element.on('tab(tab-all)', function (data) {
|
||||
form.render('select');
|
||||
var type = $(this).attr('data-type');
|
||||
getLists(type);
|
||||
});
|
||||
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(express-search)', function (data) {
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('express-lists', {
|
||||
where: field
|
||||
});
|
||||
});
|
||||
|
||||
form.on('submit(freight-search)', function (data) {
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('freight-lists', {
|
||||
where: field
|
||||
});
|
||||
});
|
||||
|
||||
//清空查询
|
||||
form.on('submit(express-clear-search)', function () {
|
||||
$('#express_name').val('');
|
||||
//刷新列表
|
||||
table.reload('express-lists', {
|
||||
where: []
|
||||
});
|
||||
});
|
||||
|
||||
form.on('submit(freight-clear-search)', function () {
|
||||
$('#name').val('');
|
||||
$('#charge_way').val('');
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('freight-lists', {
|
||||
where: []
|
||||
});
|
||||
});
|
||||
|
||||
function getLists(type) {
|
||||
|
||||
if (type == 'freight') {
|
||||
table.render({
|
||||
elem: '#freight-lists'
|
||||
, url: '{:url("freight/lists")}'
|
||||
, cols: [[
|
||||
{field: 'id', width: 60, title: 'ID', sort: true}
|
||||
, {field: 'name', title: '模板名称'}
|
||||
, {field: 'charge_way_text', title: '计费方式'}
|
||||
, {field: 'remark', title: '备注'}
|
||||
, {field: 'create_time', title: '创建时间'}
|
||||
, {fixed: 'right', title: '操作',width:160, align: 'center', fixed: 'right', toolbar: '#freight-operation'}
|
||||
]]
|
||||
, page: true
|
||||
, text: {none: '暂无数据!'}
|
||||
, parseData: function (res) {
|
||||
return {
|
||||
"code": res.code,
|
||||
"msg": res.msg,
|
||||
"count": res.data.count,
|
||||
"data": res.data.lists, //解析数据列表
|
||||
};
|
||||
}
|
||||
,done: function(res, curr, count){
|
||||
// 解决操作栏因为内容过多换行问题
|
||||
$(".layui-table-main tr").each(function (index, val) {
|
||||
$($(".layui-table-fixed-l .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
$($(".layui-table-fixed-r .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (type == 'express') {
|
||||
table.render({
|
||||
elem: '#express-lists'
|
||||
, url: '{:url("express/lists")}'
|
||||
, cols: [[
|
||||
{field: 'name', title: '快递公司',align:'center'}
|
||||
, {field: 'icon', width: 150,title: '快递图标',templet:'#icon',align:'center'}
|
||||
, {field: 'website', title: '公司网址',align:'center'}
|
||||
, {field: 'code', title: '快递编码',align:'center'}
|
||||
, {field: 'code100', title: '快递100编码',align:'center'}
|
||||
, {field: 'codebird', title: '快递鸟编码',align:'center'}
|
||||
, {field: 'sort', title: '排序', align: 'center',sort: true, width: 100}
|
||||
, {title: '操作', width: 160, align: 'center', fixed: 'right', toolbar: '#express-operation'}
|
||||
]]
|
||||
, page: true
|
||||
, text: {none: '暂无数据!'}
|
||||
, parseData: function (res) { //将原始数据解析成 table 组件所规定的数据
|
||||
return {
|
||||
"code": res.code,
|
||||
"msg": res.msg,
|
||||
"count": res.data.count, //解析数据长度
|
||||
"data": res.data.lists, //解析数据列表
|
||||
};
|
||||
}
|
||||
,done: function(res, curr, count){
|
||||
// 解决操作栏因为内容过多换行问题
|
||||
$(".layui-table-main tr").each(function (index, val) {
|
||||
$($(".layui-table-fixed-l .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
$($(".layui-table-fixed-r .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//新增运费模板
|
||||
var active = {
|
||||
add: function(){
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '添加运费模板'
|
||||
,content: '{:url("freight/add")}'
|
||||
,area: ['90%','90%']
|
||||
,btn: ['确定', '取消']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submitID = 'add-freight-submit'
|
||||
,submit = layero.find('iframe').contents().find('#'+ submitID);
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit('+ submitID +')', function(data){
|
||||
var field = data.field;
|
||||
like.ajax({
|
||||
url:'{:url("freight/add")}',
|
||||
data:field,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('freight-lists'); //数据刷新
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
submit.trigger('click');
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
$('.layui-btn.layuiadmin-btn-freight').on('click', function(){
|
||||
var type = $(this).data('type');
|
||||
active[type] ? active[type].call(this) : '';
|
||||
});
|
||||
|
||||
//运费模板监听工具条
|
||||
table.on('tool(freight-lists)', function (obj) {
|
||||
var id = obj.data.id;
|
||||
//详情
|
||||
if(obj.event === 'detail-freight'){
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '详情'
|
||||
,content: '{:url("freight/detail")}?id='+id
|
||||
,area: ['90%', '90%']
|
||||
,yes: function(index, layero){
|
||||
table.reload('freight-lists'); //再执行关闭
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
//编辑
|
||||
if(obj.event === 'edit-freight'){
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '编辑'
|
||||
,btn: ['确定', '取消']
|
||||
,content: '{:url("freight/edit")}?id='+id
|
||||
,area: ['90%', '90%']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submitID = 'edit-freight-submit'
|
||||
,submit = layero.find('iframe').contents().find('#'+ submitID);
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit('+ submitID +')', function(data){
|
||||
var field = data.field;
|
||||
like.ajax({
|
||||
url:'{:url("freight/edit")}',
|
||||
data:field,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('freight-lists'); //数据刷新
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
submit.trigger('click');
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
//删除运费模板
|
||||
if(obj.event === 'del-freight'){
|
||||
layer.confirm('删除后运费模板将消失,确认删除运费模板吗?', {
|
||||
btn: ['确认','取消'] //按钮
|
||||
}, function(){
|
||||
like.ajax({
|
||||
url: '{:url("freight/del")}'
|
||||
, data: {'id': id}
|
||||
, type: 'post'
|
||||
, success: function (res) {
|
||||
if (res.code == 1) {
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
},function () {
|
||||
table.reload('freight-lists');
|
||||
});
|
||||
}
|
||||
},
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// =========================================快递公司==================================================
|
||||
//新增快递公司
|
||||
var express_active = {
|
||||
add: function(){
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '新增快递公司'
|
||||
,content: '{:url("express/add")}'
|
||||
,area: ['90%', '90%']
|
||||
,btn: ['确定', '取消']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submitID = 'express-submit'
|
||||
,submit = layero.find('iframe').contents().find("#express-submit");
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(express-submit)', function(data){
|
||||
var field = data.field;
|
||||
like.ajax({
|
||||
url:'{:url("express/add")}',
|
||||
data:field,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('express-lists'); //数据刷新
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
submit.trigger('click');
|
||||
},
|
||||
|
||||
})
|
||||
}
|
||||
};
|
||||
|
||||
$('.layui-btn.layuiadmin-btn-express').on('click', function(){
|
||||
var type = $(this).data('type');
|
||||
express_active[type] ? express_active[type].call(this) : '';
|
||||
});
|
||||
|
||||
|
||||
//快递公司列表操作
|
||||
table.on('tool(express-lists)', function(obj){
|
||||
if(obj.event === 'del'){
|
||||
var id = obj.data.id;
|
||||
layer.confirm('确定删除此快递公司?', function(index){
|
||||
like.ajax({
|
||||
url:'{:url("express/del")}',
|
||||
data:{delData:id},
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
if(res.code == 1)
|
||||
{
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('express-lists'); //数据刷新
|
||||
obj.del();
|
||||
}
|
||||
}
|
||||
});
|
||||
layer.close(index);
|
||||
});
|
||||
}else if(obj.event === 'edit'){
|
||||
var id = obj.data.id;
|
||||
layer.open({
|
||||
type: 2
|
||||
,title: '编辑快递公司信息'
|
||||
,content: '{:url("express/edit")}?id='+id
|
||||
,area: ['90%', '90%']
|
||||
,btn: ['确定', '取消']
|
||||
,yes: function(index, layero){
|
||||
var iframeWindow = window['layui-layer-iframe'+ index]
|
||||
,submit = layero.find('iframe').contents().find('#express-submit-edit');
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(express-submit-edit)', function(data){
|
||||
var field = data.field;
|
||||
like.ajax({
|
||||
url:'{:url("express/edit")}',
|
||||
data:field,
|
||||
type:"post",
|
||||
success:function(res)
|
||||
{
|
||||
console.log(res);
|
||||
if(res.code == 1)
|
||||
{
|
||||
console.log(1);
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index); //关闭弹层
|
||||
table.reload('express-lists'); //数据刷新
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// ========================================查询配置==================================================
|
||||
form.on('radio(kd100)', function(data){
|
||||
if(data.value =='kd100'){
|
||||
$('#kd100_appkey').show();
|
||||
$('#kd100_customer').show();
|
||||
$('#kdniao_appkey').hide();
|
||||
$('#kdniao_ebussinessid').hide();
|
||||
$('#kdniao_type').hide();
|
||||
}
|
||||
});
|
||||
|
||||
form.on('radio(kdniao)', function(data){
|
||||
if(data.value =='kdniao'){
|
||||
$('#kd100_appkey').hide();
|
||||
$('#kd100_customer').hide();
|
||||
$('#kdniao_appkey').show();
|
||||
$('#kdniao_ebussinessid').show();
|
||||
$('#kdniao_type').show();
|
||||
}
|
||||
});
|
||||
|
||||
form.on('submit(query-submit)',function (data) {
|
||||
like.ajax({
|
||||
url: '{:url("express/setExpress")}'
|
||||
,data: data.field
|
||||
,type: 'post'
|
||||
,success: function(res){
|
||||
layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
,icon: 1
|
||||
,time: 1500
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
46
application/admin/view/freight/lists.html
Normal file
46
application/admin/view/freight/lists.html
Normal file
@@ -0,0 +1,46 @@
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">模板名称</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="name" id="name" autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">计费方式</label>
|
||||
<div class="layui-input-block">
|
||||
<select name="charge_way" id="charge_way">
|
||||
<option value="">全部</option>
|
||||
{foreach $charge_way_lists as $k => $val}
|
||||
<option value="{$k}">{$val}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-freight {$view_theme_color}" lay-submit lay-filter="freight-search">
|
||||
查询
|
||||
</button>
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-express layui-btn-primary " lay-submit
|
||||
lay-filter="freight-clear-search">重置
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div style="padding-bottom: 10px;">
|
||||
<button class="layui-btn layuiadmin-btn-freight {$view_theme_color} layui-btn-sm" data-type="add">添加运费模板</button>
|
||||
</div>
|
||||
|
||||
<table id="freight-lists" lay-filter="freight-lists"></table>
|
||||
|
||||
<script type="text/html" id="freight-operation">
|
||||
<a class="layui-btn layui-btn-warm {$view_theme_color} layui-btn-sm" lay-event="edit-freight">编辑</a>
|
||||
<a class="layui-btn layui-btn-danger layui-btn-sm" lay-event="del-freight">删除</a>
|
||||
</script>
|
||||
|
||||
</div>
|
||||
70
application/admin/view/freight/set.html
Normal file
70
application/admin/view/freight/set.html
Normal file
@@ -0,0 +1,70 @@
|
||||
{layout name="layout1" /}
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-collapse like-layui-collapse" lay-accordion="" style="border:1px dashed #c4c4c4">
|
||||
<div class="layui-colla-item">
|
||||
<h2 class="layui-colla-title like-layui-colla-title" style="background-color: #fff">操作提示</h2>
|
||||
<div class="layui-colla-content layui-show">
|
||||
*设置店铺的配送方式
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item div-flex" style="margin-top: 20px">
|
||||
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 50px;">
|
||||
<legend>配送方式</legend>
|
||||
</fieldset>
|
||||
</div>
|
||||
<div class="layui-card-body" pad15>
|
||||
<div class="layui-form" lay-filter="">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">快递发货</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="checkbox" name="type" lay-skin="switch" lay-text="开启|关闭" {if condition="$type eq 1"}checked{/if}>
|
||||
</div>
|
||||
<div class="layui-form-mid">开启快递发货后,买家下单可以选择快递送货上门。</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-block">
|
||||
<button class="layui-btn {$view_theme_color}" lay-submit lay-filter="set">确认</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
|
||||
|
||||
layui.config({
|
||||
version:"{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'table', 'like'], function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, like = layui.like;
|
||||
|
||||
form.on('submit(set)', function (data) {
|
||||
like.ajax({
|
||||
url: '{:url("freight/set")}'
|
||||
, data: data.field
|
||||
, type: 'post'
|
||||
, success: function (res) {
|
||||
if (res.code == 1) {
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
},function () {
|
||||
location.reload();
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
Reference in New Issue
Block a user