修改邮费模板管理

This commit is contained in:
Anyon 2022-04-15 16:03:05 +08:00
parent 78ac3cb4d5
commit bac193165f
3 changed files with 90 additions and 68 deletions

View File

@ -7,6 +7,7 @@ use app\data\model\BasePostageTemplate;
use app\data\service\ExpressService; use app\data\service\ExpressService;
use think\admin\Controller; use think\admin\Controller;
use think\admin\extend\CodeExtend; use think\admin\extend\CodeExtend;
use think\admin\helper\QueryHelper;
/** /**
* 邮费模板管理 * 邮费模板管理
@ -25,10 +26,13 @@ class Template extends Controller
*/ */
public function index() public function index()
{ {
$this->title = '快递邮费模板'; $this->type = input('get.type', 'index');
$query = BasePostageTemplate::mQuery(); BasePostageTemplate::mQuery()->layTable(function () {
$query->like('code,name')->equal('status')->dateBetween('create_at'); $this->title = '快递邮费模板';
$query->where(['deleted' => 0])->order('sort desc,id desc')->page(); }, function (QueryHelper $query) {
$query->where(['deleted' => 0, 'status' => intval($this->type === 'index')]);
$query->like('code,name')->equal('status')->dateBetween('create_at');
});
} }
/** /**
@ -56,7 +60,7 @@ class Template extends Controller
public function add() public function add()
{ {
$this->title = '添加配送邮费模板'; $this->title = '添加配送邮费模板';
BasePostageTemplate::mForm('form', 'code'); BasePostageTemplate::mForm('form');
} }
/** /**
@ -66,7 +70,7 @@ class Template extends Controller
public function edit() public function edit()
{ {
$this->title = '编辑配送邮费模板'; $this->title = '编辑配送邮费模板';
BasePostageTemplate::mForm('form', 'code'); BasePostageTemplate::mForm('form');
} }
/** /**
@ -103,7 +107,7 @@ class Template extends Controller
BasePostageTemplate::mSave($this->_vali([ BasePostageTemplate::mSave($this->_vali([
'status.in:0,1' => '状态值范围异常!', 'status.in:0,1' => '状态值范围异常!',
'status.require' => '状态值不能为空!', 'status.require' => '状态值不能为空!',
]), 'code'); ]));
} }
/** /**
@ -112,6 +116,6 @@ class Template extends Controller
*/ */
public function remove() public function remove()
{ {
BasePostageTemplate::mDelete('code'); BasePostageTemplate::mDelete();
} }
} }

View File

@ -2,17 +2,15 @@
{block name="content"} {block name="content"}
<div id="TruckForm"> <div id="TruckForm">
<form action="{:sysuri()}" autocomplete="off" class='layui-form layui-card' data-auto="true" method="post" onsubmit="return false;"> <form action="{:sysuri()}" class='layui-form layui-card shadow' data-auto="true" method="post">
<div class="layui-card-body padding-40"> <div class="layui-card-body padding-40 padding-bottom-10">
<label class="layui-form-item block relative"> <label class="layui-form-item block relative">
<span class="color-green font-w7">邮费模板名称</span> <span class="help-label"><b>邮费模板名称</b>Name</span>
<span class="color-desc margin-left-5">Name</span>
<input class="layui-input" name="name" placeholder="请输入邮费模板名称" required value='{$vo.name|default=""}'> <input class="layui-input" name="name" placeholder="请输入邮费模板名称" required value='{$vo.name|default=""}'>
<p class="color-desc"><b>必填</b>,邮费模板名称用于区分邮费模板规则,仅在后台选择邮费模板时使用。</p> <span class="color-desc"><b>必填</b>,邮费模板名称用于区分邮费模板规则,仅在后台选择邮费模板时使用。</span>
</label> </label>
<div class="layui-form-item"> <div class="layui-form-item label-required-prev">
<span class="color-green font-w7 label-required-prev">配送区域计费规则</span> <span class="help-label"><b>配送区域计费规则</b>Region</span>
<span class="color-desc margin-left-5">Region</span>
<table class="layui-table"> <table class="layui-table">
<thead> <thead>
<tr> <tr>
@ -76,12 +74,15 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<label class="layui-form-item layui-hide"> <label class="layui-form-item layui-hide">
<textarea class="layui-textarea layui-bg-gray" name="normal">{{defs.rule}}</textarea> <textarea class="layui-textarea layui-bg-gray" name="normal">{{defs.rule}}</textarea>
<textarea class="layui-textarea layui-bg-gray" name="content">{{GetRuleData()}}</textarea> <textarea class="layui-textarea layui-bg-gray" name="content">{{GetRuleData()}}</textarea>
</label> </label>
<div class="hr-line-dashed margin-top-30"></div> <div class="hr-line-dashed margin-top-30"></div>
{notempty name='vo.code'}<input name="code" type="hidden" value="{$vo.code}">{/notempty} {notempty name='vo.code'}<input name="code" type="hidden" value="{$vo.code}">{/notempty}
<div class="layui-form-item text-center"> <div class="layui-form-item text-center">
<button class="layui-btn" type='submit'>保存数据</button> <button class="layui-btn" type='submit'>保存数据</button>
</div> </div>

View File

@ -1,4 +1,4 @@
{extend name="../../admin/view/main"} {extend name="../../admin/view/table"}
{block name="button"} {block name="button"}
<!--{if auth("add")}--> <!--{if auth("add")}-->
@ -12,59 +12,76 @@
{block name="content"} {block name="content"}
<div class="layui-tab layui-tab-card think-bg-white"> <div class="layui-tab layui-tab-card think-bg-white">
<ul class="layui-tab-title">
{foreach ['index'=>'费用模板','recycle'=>'回 收 站'] as $k=>$v}
{if isset($type) and $type eq $k}
<li class="layui-this" data-open="{:url('index')}?type={$k}">{$v}</li>
{else}
<li data-open="{:url('index')}?type={$k}">{$v}</li>
{/if}{/foreach}
</ul>
<div class="layui-tab-content"> <div class="layui-tab-content">
{include file='base/postage/template/index_search'} {include file='base/postage/template/index_search'}
<table class="layui-table" lay-skin="line"> <table id="DataTable" data-url="{:sysuri()}" data-target-search="form.form-search"></table>
{notempty name='list'}
<thead>
<tr>
<th class='list-table-check-td think-checkbox'>
<label><input data-auto-none data-check-target='.list-check-box' type='checkbox'></label>
</th>
<th class='list-table-sort-td'>
<button class="layui-btn layui-btn-xs" data-reload type="button"> </button>
</th>
<th class='text-left nowrap'>模板编号</th>
<th class='text-left nowrap'>模板名称</th>
<th class='text-left nowrap'>使用状态</th>
<th class="text-left">创建时间</th>
<th></th>
</tr>
</thead>
{/notempty}
<tbody>
{foreach $list as $key=>$vo}
<tr data-dbclick>
<td class='list-table-check-td think-checkbox'>
<label><input class="list-check-box" type='checkbox' value='{$vo.id}'></label>
</td>
<td class='list-table-sort-td'>
<label><input class="list-sort-input" data-action-blur="{:sysuri()}" data-loading="false" data-value="id#{$vo.id};action#sort;sort#{value}" value="{$vo.sort}"></label>
</td>
<td class='text-left nowrap'>{$vo.code|default=''}</td>
<td class='text-left nowrap'>{$vo.name|default=''}</td>
<td class="text-left nowrap">{if $vo.status eq 0}<span class="color-red">已禁用</span>{elseif $vo.status eq 1}<span class="color-green">已激活</span>{/if}</td>
<td class='text-left nowrap'>{$vo.create_at|format_datetime}</td>
<td class='text-left nowrap'>
<!--{if auth("edit")}-->
<a class="layui-btn layui-btn-sm" data-dbclick data-open='{:url("edit")}?code={$vo.code}' data-title="编辑快递公司"> </a>
<!--{/if}-->
<!--{if auth("state") and $vo.status eq 1}-->
<a class="layui-btn layui-btn-warm layui-btn-sm" data-action="{:url('state')}" data-value="code#{$vo.code};status#0"> </a>
<!--{elseif auth("state") and $vo.status eq 0}-->
<a class="layui-btn layui-btn-warm layui-btn-sm" data-action="{:url('state')}" data-value="code#{$vo.code};status#1"> </a>
<!--{/if}-->
<!--{if auth("remove")}-->
<a class="layui-btn layui-btn-danger layui-btn-sm" data-action="{:url('remove')}" data-confirm="确定要删除数据吗?" data-value="code#{$vo.code}"> </a>
<!--{/if}-->
</td>
</tr>
{/foreach}
</tbody>
</table>
{empty name='list'}<span class="notdata">没有记录哦</span>{else}{$pagehtml|raw|default=''}{/empty}
</div> </div>
</div> </div>
{/block}
{block name='script'}
<script>
$(function () {
$('#DataTable').layTable({
even: true, height: 'full',
sort: {field: 'sort desc,id', type: 'desc'},
where: {type: '{$type|default="index"}'},
cols: [[
{checkbox: true},
{field: 'sort', title: '排序权重', width: 100, align: 'center', sort: true, templet: '#SortInputTpl'},
{field: 'code', title: '模板编号', align: "left", minWidth: 100},
{field: 'name', title: '模板名称', align: "left", minWidth: 100},
{field: 'status', title: '使用状态', align: 'center', minWidth: 110, templet: '#StatusSwitchTpl'},
{field: 'create_at', title: '添加时间', align: 'center', minWidth: 170},
{toolbar: '#toolbar', title: '操作面板', align: 'center', fixed: 'right'}
]]
});
// 数据状态切换操作
layui.form.on('switch(StatusSwitch)', function (obj, data) {
data = {id: obj.value, status: obj.elem.checked > 0 ? 1 : 0};
$.form.load("{:url('state')}", data, 'post', function (ret) {
if (ret.code < 1) $.msg.error(ret.info, 3, function () {
$('#DataTable').trigger('reload');
}); else {
$('#DataTable').trigger('reload');
}
return false;
}, false);
});
});
</script>
<!-- 排序权重模板 -->
<script type="text/html" id="SortInputTpl">
<input type="number" min="0" data-blur-number="0" data-action-blur="{:sysuri()}" data-value="id#{{d.id}};action#sort;sort#{value}" data-loading="false" value="{{d.sort}}" class="layui-input text-center">
</script>
<!-- 状态切换模板 -->
<script type="text/html" id="StatusSwitchTpl">
<!--{if auth("state")}-->
<input type="checkbox" value="{{d.id}}" lay-skin="switch" lay-text="已激活|已禁用" lay-filter="StatusSwitch" {{d.status>0?'checked':''}}>
<!--{else}-->
{{d.status ? '<b class="color-red">已激活</b>' : '<b class="color-green">已禁用</b>'}}
<!--{/if}-->
</script>
<!-- 操作面板模板 -->
<script type="text/html" id="toolbar">
<!--{if auth("edit") and isset($type) and $type eq 'index'}-->
<a class="layui-btn layui-btn-sm" data-open="{:url('edit')}?id={{d.id}}"> </a>
<!--{/if}-->
<!--{if auth("remove") and isset($type) and $type neq 'index'}-->
<a class="layui-btn layui-btn-sm layui-btn-danger" data-action="{:url('remove')}" data-value="id#{{d.id}}" data-confirm="确定要删除该用户吗?"> </a>
<!--{/if}-->
</script>
{/block} {/block}