!86 8.31完善首页筛选以及系统日志页面

Merge pull request !86 from yezhenman
This commit is contained in:
赵世界 2022-08-31 10:18:01 +00:00 committed by Gitee
commit 74717100bf
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
18 changed files with 270 additions and 71 deletions

View File

@ -1 +1 @@
#nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border:2px solid transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loss[data-v-091c644d]{position:relative}.table[data-v-091c644d]{margin-top:40px;position:relative}.btn[data-v-091c644d]{float:right}[data-v-091c644d] .cell{display:flex;align-items:center}.commodityimg[data-v-091c644d]{width:59px;height:59px;background:hsla(0,0%,89%,.39);opacity:1;display:block;margin-right:12px}.Img[data-v-091c644d]{width:100%;height:100%}.confirmbtn[data-v-091c644d]{width:114px;height:44px;border-radius:3px;margin-top:21px;margin-bottom:8px}.import-right[data-v-091c644d]{margin-top:30px}.import-right a[data-v-091c644d]{text-decoration:none;color:#000}[data-v-091c644d] .btn11{padding:0;width:14px;height:14px}[data-v-091c644d] .btn11 img{width:100%;height:100%}.page[data-v-091c644d]{margin-top:20px} #nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border:2px solid transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loss[data-v-60f77afd]{position:relative}.table[data-v-60f77afd]{margin-top:40px;position:relative}.btn[data-v-60f77afd]{float:right}[data-v-60f77afd] .cell{display:flex;align-items:center}.commodityimg[data-v-60f77afd]{width:59px;height:59px;background:hsla(0,0%,89%,.39);opacity:1;display:block;margin-right:12px}.Img[data-v-60f77afd]{width:100%;height:100%}.confirmbtn[data-v-60f77afd]{width:114px;height:44px;border-radius:3px;margin-top:21px;margin-bottom:8px}.import-right[data-v-60f77afd]{margin-top:30px}.import-right a[data-v-60f77afd]{text-decoration:none;color:#000}[data-v-60f77afd] .btn11{padding:0;width:14px;height:14px}[data-v-60f77afd] .btn11 img{width:100%;height:100%}.page[data-v-60f77afd]{margin-top:20px}

View File

@ -1 +1 @@
#nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border:2px solid transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.block{margin-top:30px} #nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border:2px solid transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.block[data-v-425fd889]{margin-top:30px}[data-v-425fd889] .el-card__body{padding:0}

View File

@ -1 +1 @@
<!DOCTYPE html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>erp</title><link href="css/chunk-01b147f1.cec86515.css" rel="prefetch"><link href="css/chunk-046929c6.0080a3bb.css" rel="prefetch"><link href="css/chunk-0ab08886.0080a3bb.css" rel="prefetch"><link href="css/chunk-19797d59.4a709612.css" rel="prefetch"><link href="css/chunk-1c56d4e4.a81ac70a.css" rel="prefetch"><link href="css/chunk-2a2235b7.1a0ea8f6.css" rel="prefetch"><link href="css/chunk-3bcfd210.9c27e2c9.css" rel="prefetch"><link href="css/chunk-4546fe72.3bcd502b.css" rel="prefetch"><link href="css/chunk-5e1711e0.d4b94e52.css" rel="prefetch"><link href="css/chunk-7c135f6b.b66e0a3d.css" rel="prefetch"><link href="css/chunk-af147af4.34fd631a.css" rel="prefetch"><link href="js/chunk-01b147f1.411ddf4a.js" rel="prefetch"><link href="js/chunk-046929c6.45cea179.js" rel="prefetch"><link href="js/chunk-0ab08886.47a1307b.js" rel="prefetch"><link href="js/chunk-19797d59.521ebbb8.js" rel="prefetch"><link href="js/chunk-1c56d4e4.ceee754d.js" rel="prefetch"><link href="js/chunk-2a2235b7.b4b58aba.js" rel="prefetch"><link href="js/chunk-3bcfd210.374395ff.js" rel="prefetch"><link href="js/chunk-4546fe72.955bc949.js" rel="prefetch"><link href="js/chunk-5e1711e0.4eafce54.js" rel="prefetch"><link href="js/chunk-7c135f6b.7b5f30c1.js" rel="prefetch"><link href="js/chunk-af147af4.2c39028d.js" rel="prefetch"><link href="css/app.62fa08a2.css" rel="preload" as="style"><link href="css/chunk-vendors.a6a7f90c.css" rel="preload" as="style"><link href="js/app.b18c812e.js" rel="preload" as="script"><link href="js/chunk-vendors.dc4080e5.js" rel="preload" as="script"><link href="css/chunk-vendors.a6a7f90c.css" rel="stylesheet"><link href="css/app.62fa08a2.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but erp doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="js/chunk-vendors.dc4080e5.js"></script><script src="js/app.b18c812e.js"></script></body></html> <!DOCTYPE html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>erp</title><link href="css/chunk-01b147f1.cec86515.css" rel="prefetch"><link href="css/chunk-0ab08886.0080a3bb.css" rel="prefetch"><link href="css/chunk-19797d59.4a709612.css" rel="prefetch"><link href="css/chunk-1c56d4e4.a81ac70a.css" rel="prefetch"><link href="css/chunk-2a2235b7.1a0ea8f6.css" rel="prefetch"><link href="css/chunk-33e29a08.9142830e.css" rel="prefetch"><link href="css/chunk-3bcfd210.9c27e2c9.css" rel="prefetch"><link href="css/chunk-4546fe72.3bcd502b.css" rel="prefetch"><link href="css/chunk-5e1711e0.d4b94e52.css" rel="prefetch"><link href="css/chunk-7c135f6b.b66e0a3d.css" rel="prefetch"><link href="css/chunk-f365c476.a2321795.css" rel="prefetch"><link href="js/chunk-01b147f1.411ddf4a.js" rel="prefetch"><link href="js/chunk-0ab08886.47a1307b.js" rel="prefetch"><link href="js/chunk-19797d59.521ebbb8.js" rel="prefetch"><link href="js/chunk-1c56d4e4.ceee754d.js" rel="prefetch"><link href="js/chunk-2a2235b7.b4b58aba.js" rel="prefetch"><link href="js/chunk-33e29a08.03cb9098.js" rel="prefetch"><link href="js/chunk-3bcfd210.374395ff.js" rel="prefetch"><link href="js/chunk-4546fe72.955bc949.js" rel="prefetch"><link href="js/chunk-5e1711e0.4eafce54.js" rel="prefetch"><link href="js/chunk-7c135f6b.7b5f30c1.js" rel="prefetch"><link href="js/chunk-f365c476.68b0060c.js" rel="prefetch"><link href="css/app.62fa08a2.css" rel="preload" as="style"><link href="css/chunk-vendors.a6a7f90c.css" rel="preload" as="style"><link href="js/app.10562a88.js" rel="preload" as="script"><link href="js/chunk-vendors.dc4080e5.js" rel="preload" as="script"><link href="css/chunk-vendors.a6a7f90c.css" rel="stylesheet"><link href="css/app.62fa08a2.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but erp doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="js/chunk-vendors.dc4080e5.js"></script><script src="js/app.10562a88.js"></script></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -79,7 +79,7 @@ export function Brand_goods_types(params) {
return http({ return http({
url: "/api/goods_brands", url: "/api/goods_brands",
method: "get", method: "get",
params, params
}); });
} }
// 商品品牌列表删除 // 商品品牌列表删除

View File

@ -4,19 +4,37 @@
<el-card class="box-card"> <el-card class="box-card">
<div class="goods" style="margin: 20px"> <div class="goods" style="margin: 20px">
<el-form ref="form" :inline="true" :model="form"> <el-form ref="form" :inline="true" :model="form">
<el-form-item label="查询类别:"> <el-form-item label="模块:" style="margin-right: 40px">
<el-select v-model="form.targetField" placeholder="全部"> <el-select v-model="form.module" clearable >
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in mouduleOptions" :key="item.value" :label="item.label" :value="item.value">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="操作用户"> <el-form-item label="操作:" style="margin-right: 40px">
<el-select v-model="form.userId" placeholder="输入操作用户"> <el-select v-model="form.action" clearable>
<el-option v-for="item in options1" :key="item.id" :label="item.name" :value="item.id"> <el-option v-for="item in actionOptions" :key="item.value" :label="item.label" :value="item.value">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="操作时间:"> <el-form-item label="目标类型:" style="margin-right: 40px">
<el-select v-model="form.target_type" clearable>
<el-option v-for="item in target_ypeOptions" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="类别:" style="margin-right: 40px">
<el-select v-model="form.targetField" clearable>
<el-option v-for="item in target_fieldOptions" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="操作人:" style="margin-right: 40px">
<el-select v-model="form.userId" placeholder="输入操作人" clearable>
<el-option v-for="item in userOptions" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="时间:">
<el-date-picker v-model="value1" type="datetimerange" range-separator="-" start-placeholder="" <el-date-picker v-model="value1" type="datetimerange" range-separator="-" start-placeholder=""
end-placeholder="止" value-format="yyyy-MM-dd HH:mm:ss"> end-placeholder="止" value-format="yyyy-MM-dd HH:mm:ss">
</el-date-picker> </el-date-picker>
@ -30,13 +48,40 @@
<!-- 表格 --> <!-- 表格 -->
<el-card style="margin-top: 30px" class="box-card"> <el-card style="margin-top: 30px" class="box-card">
<el-table :data="tableData" style="width: 100%"> <el-table :data="tableData" border style="width: 100%">
<el-table-column prop="id" label="序号"> </el-table-column> <el-table-column prop="id" label="序号" width="75"> </el-table-column>
<el-table-column prop="created_at" label="时间"> </el-table-column> <el-table-column prop="module" label="模块" width="70"> </el-table-column>
<el-table-column prop="target_field" label="类别"> </el-table-column> <el-table-column prop="action" label="操作" width="70"> </el-table-column>
<el-table-column prop="before_update" label="操作前"> </el-table-column> <el-table-column prop="target_type" label="目标类型" width="100"> </el-table-column>
<el-table-column prop="after_update" label="操作后"> </el-table-column> <el-table-column prop="target_id" label="目标ID" width="70"> </el-table-column>
<el-table-column prop="user.name" label="操作人"> </el-table-column> <el-table-column prop="target_field" label="类别" width="100"> </el-table-column>
<el-table-column label="操作前">
<template slot-scope="scope">
<div style="height:45px">
{{scope.row.before_update}}
</div>
</template>
</el-table-column>
<el-table-column label="操作后">
<template slot-scope="scope">
<div style="height:45px">
{{scope.row.after_update}}
</div>
</template>
</el-table-column>
<el-table-column label="信息" width="300">
<template slot-scope="scope">
<div style="overflow-x: hidden;white-space: nowrap;">
{{scope.row.message}}
</div>
</template>
</el-table-column>
<el-table-column prop="user.name" label="操作人" width="120"></el-table-column>
<el-table-column label="操作时间" width="100">
<template slot-scope="scope">
<p>{{scope.row.created_at}}</p>
</template>
</el-table-column>
</el-table> </el-table>
</el-card> </el-card>
@ -56,7 +101,35 @@
export default { export default {
data() { data() {
return { return {
options: [ target_fieldOptions: [
{
value: "add",
label: "创建",
},
{
value: "status",
label: "状态",
},
{
value: "name",
label: "名称",
},
{
value: "title",
label: "标题",
},
{
value: "import",
label: "导入",
},
{
value: "export",
label: "导出",
},
{
value: "set",
label: "设置",
},
{ {
value: "cost", value: "cost",
label: "成本", label: "成本",
@ -70,18 +143,151 @@
label: "库存盘点", label: "库存盘点",
}, },
{ {
value: "status", value: "reserve",
label: "状态", label: "预留量",
}, },
{ {
value: "set", value: "timingInventory",
label: "设置", label: "7点盘点",
}, },
], // {
options1: [], // value: "pdd.ktt.goods.query.list",
label: "快团团下载绑定商品",
},
{
value: "arrived_today_num",
label: "今日到货",
},
{
value: "loss_num",
label: "损耗",
},
{
value: "pdd.pop.auth.token.create",
label: "快团团授权",
},
{
value: "reference_price",
label: "参考价格",
},
{
value: "update",
label: "更新",
},
{
value: "pdd.ktt.goods.incr.quantity",
label: "快团团库存同步",
},
{
value: "pdd.ktt.order.list",
label: "快团团下载订单",
},
{
value: "pdd.ktt.increment.order.query",
label: "快团团增量下载订单",
},
], //
mouduleOptions:[
{
value: "menu",
label: "菜单",
},
{
value: "goods",
label: "商品",
},
{
value: "file",
label: "文件",
},
{
value: "permission",
label: "权限",
},
{
value: "role",
label: "角色",
},
{
value: "user",
label: "用户",
},
{
value: "plat",
label: "平台",
},
],//
actionOptions:[
{
value: "POST",
label: "新增",
},
{
value: "PATCH",
label: "更新",
},
{
value: "DELETE",
label: "删除",
},
{
value: "GET",
label: "查看",
},
],//
target_ypeOptions:[
{
value: "upload",
label: "上传",
},
{
value: "goods_sku",
label: "商品规格",
},
{
value: "goods_brand",
label: "商品品牌",
},
{
value: "goods_type",
label: "种类",
},
{
value: "menu",
label: "菜单",
},
{
value: "role",
label: "角色",
},
{
value: "permission",
label: "权限",
},
{
value: "user",
label: "用户",
},
{
value: "kuaituantuan",
label: "快团团",
},
{
value: "miaoxuan",
label: "秒选",
},
{
value: "goods",
label: "商品",
},
],//
userOptions: [], //
form: { form: {
targetField: "", module:'',// goods-(),'menu' => '',file-,permission-,role-,user-,plat-
userId: "", action:'',// POST-,PATCH-,DELETE-,'GET' => '',
target_type:'',// upload-,goods_sku,goods_brand-,goods_type-,menu-,permission-,role-,user-,kuaituantuan-,miaoxuan-,'goods' => '',
targetField: "",//
userId: "",//id()
}, },
value1: "", // value1: "", //
@ -107,42 +313,26 @@
// //
getUser() { getUser() {
userList().then((res) => { userList().then((res) => {
this.options1 = res.data.data; this.userOptions = res.data.data;
}); });
}, },
// //
query() { query() {
let queryData = { let queryData = {
userId: this.form.userId,
target_field: this.form.targetField,
page: this.current_page, page: this.current_page,
per_page: this.per_page, per_page: this.per_page,
moudule: this.moudule, module: this.form.module,
target_id: this.$route.query.id, action:this.form.action,
startTime: this.value1[0], target_type:this.form.target_type,
endTime: this.value1[1], target_id: this.$route.query.id?this.$route.query.id:'',
target_field: this.form.targetField?this.form.targetField:'',
user_id: this.form.userId,
start_time: this.value1[0]?this.value1[0]:'',
end_time: this.value1[1]?this.value1[1]:'',
}; };
// recordList(queryData).then((res) => {
const newObj = filterParams(queryData);
function filterParams(obj) {
const _newPar = {};
for (const key in obj) {
// 0
if (
(obj[key] === 0 || obj[key]) &&
obj[key].toString().replace(/(^\s*)|(\s*$)/g, "") !== ""
) {
//
_newPar[key] = obj[key];
}
}
//
return _newPar;
}
recordList(newObj).then((res) => {
this.tableData = res.data.data; this.tableData = res.data.data;
this.Paginationdata = res.data.meta; this.Paginationdata = res.data.meta;
}); });
@ -167,8 +357,11 @@
}; };
</script> </script>
<style> <style scoped>
.block { .block {
margin-top: 30px; margin-top: 30px;
} }
::v-deep .el-card__body {
padding: 0;
}
</style> </style>

View File

@ -869,14 +869,20 @@
// //
getgoodsType() { getgoodsType() {
goods_types().then((res) => { let param = {
per_page:99999
}
goods_types(param).then((res) => {
this.cate = res.data.data; this.cate = res.data.data;
}); });
}, },
// //
getbrandType() { getbrandType() {
Brand_goods_types().then((res) => { let parsm = {
per_page:99999
}
Brand_goods_types(parsm).then((res) => {
this.brand = res.data.data; this.brand = res.data.data;
}); });
}, },