From f93f7b4ea3b2be58863593290cc4302050c2c6f6 Mon Sep 17 00:00:00 2001 From: 18650502300 <18650502300@163.com> Date: Fri, 11 Oct 2024 17:36:25 +0800 Subject: [PATCH] =?UTF-8?q?=E9=85=8D=E9=80=81=E5=B7=A5=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/rl/accessory.js | 13 + src/api/rl/deliveryOrder.js | 44 +++ src/api/rl/deliveryOrderOper.js | 44 +++ src/api/rl/detail.js | 44 +++ src/api/rl/model.js | 44 +++ src/api/rl/orderOper.js | 44 +++ src/views/system/accessory/index.vue | 39 +- src/views/system/deliveryOrder/index.vue | 357 +++++++++++++++++++ src/views/system/deliveryOrderOper/index.vue | 338 ++++++++++++++++++ src/views/system/detail/index.vue | 319 +++++++++++++++++ src/views/system/model/index.vue | 114 +++--- src/views/system/orderOper/index.vue | 317 ++++++++++++++++ src/views/system/partner/index.vue | 20 +- src/views/system/rule/index.vue | 50 +-- 14 files changed, 1662 insertions(+), 125 deletions(-) create mode 100644 src/api/rl/deliveryOrder.js create mode 100644 src/api/rl/deliveryOrderOper.js create mode 100644 src/api/rl/detail.js create mode 100644 src/api/rl/model.js create mode 100644 src/api/rl/orderOper.js create mode 100644 src/views/system/deliveryOrder/index.vue create mode 100644 src/views/system/deliveryOrderOper/index.vue create mode 100644 src/views/system/detail/index.vue create mode 100644 src/views/system/orderOper/index.vue diff --git a/src/api/rl/accessory.js b/src/api/rl/accessory.js index b91fc01..78bb9b5 100644 --- a/src/api/rl/accessory.js +++ b/src/api/rl/accessory.js @@ -17,6 +17,19 @@ export function getAccessory(accessoryId) { }) } +// 配件状态修改 +export function changeAccessoryStatus(accessoryId, status) { + const data = { + accessoryId, + status + } + return request({ + url: '/system/accessory/changeStatus', + method: 'put', + data: data + }) +} + // 新增配件 export function addAccessory(data) { return request({ diff --git a/src/api/rl/deliveryOrder.js b/src/api/rl/deliveryOrder.js new file mode 100644 index 0000000..2d9b474 --- /dev/null +++ b/src/api/rl/deliveryOrder.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询配送工单列表 +export function listDeliveryOrder(query) { + return request({ + url: '/system/deliveryOrder/list', + method: 'get', + params: query + }) +} + +// 查询配送工单详细 +export function getDeliveryOrder(deliveryId) { + return request({ + url: '/system/deliveryOrder/' + deliveryId, + method: 'get' + }) +} + +// 新增配送工单 +export function addDeliveryOrder(data) { + return request({ + url: '/system/deliveryOrder', + method: 'post', + data: data + }) +} + +// 修改配送工单 +export function updateDeliveryOrder(data) { + return request({ + url: '/system/deliveryOrder', + method: 'put', + data: data + }) +} + +// 删除配送工单 +export function delDeliveryOrder(deliveryId) { + return request({ + url: '/system/deliveryOrder/' + deliveryId, + method: 'delete' + }) +} diff --git a/src/api/rl/deliveryOrderOper.js b/src/api/rl/deliveryOrderOper.js new file mode 100644 index 0000000..02f5b10 --- /dev/null +++ b/src/api/rl/deliveryOrderOper.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询配送单履历列表 +export function listDeliveryOrderOper(query) { + return request({ + url: '/system/deliveryOrderOper/list', + method: 'get', + params: query + }) +} + +// 查询配送单履历详细 +export function getDeliveryOrderOper(operId) { + return request({ + url: '/system/deliveryOrderOper/' + operId, + method: 'get' + }) +} + +// 新增配送单履历 +export function addDeliveryOrderOper(data) { + return request({ + url: '/system/deliveryOrderOper', + method: 'post', + data: data + }) +} + +// 修改配送单履历 +export function updateDeliveryOrderOper(data) { + return request({ + url: '/system/deliveryOrderOper', + method: 'put', + data: data + }) +} + +// 删除配送单履历 +export function delDeliveryOrderOper(operId) { + return request({ + url: '/system/deliveryOrderOper/' + operId, + method: 'delete' + }) +} diff --git a/src/api/rl/detail.js b/src/api/rl/detail.js new file mode 100644 index 0000000..0a45ae4 --- /dev/null +++ b/src/api/rl/detail.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询分账明细列表 +export function listDetail(query) { + return request({ + url: '/system/detail/list', + method: 'get', + params: query + }) +} + +// 查询分账明细详细 +export function getDetail(id) { + return request({ + url: '/system/detail/' + id, + method: 'get' + }) +} + +// 新增分账明细 +export function addDetail(data) { + return request({ + url: '/system/detail', + method: 'post', + data: data + }) +} + +// 修改分账明细 +export function updateDetail(data) { + return request({ + url: '/system/detail', + method: 'put', + data: data + }) +} + +// 删除分账明细 +export function delDetail(id) { + return request({ + url: '/system/detail/' + id, + method: 'delete' + }) +} diff --git a/src/api/rl/model.js b/src/api/rl/model.js new file mode 100644 index 0000000..acae5fa --- /dev/null +++ b/src/api/rl/model.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询车辆型号列表 +export function listModel(query) { + return request({ + url: '/system/model/list', + method: 'get', + params: query + }) +} + +// 查询车辆型号详细 +export function getModel(modelId) { + return request({ + url: '/system/model/' + modelId, + method: 'get' + }) +} + +// 新增车辆型号 +export function addModel(data) { + return request({ + url: '/system/model', + method: 'post', + data: data + }) +} + +// 修改车辆型号 +export function updateModel(data) { + return request({ + url: '/system/model', + method: 'put', + data: data + }) +} + +// 删除车辆型号 +export function delModel(modelId) { + return request({ + url: '/system/model/' + modelId, + method: 'delete' + }) +} diff --git a/src/api/rl/orderOper.js b/src/api/rl/orderOper.js new file mode 100644 index 0000000..70ebac0 --- /dev/null +++ b/src/api/rl/orderOper.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询操作操作履历列表 +export function listOrderOper(query) { + return request({ + url: '/system/orderOper/list', + method: 'get', + params: query + }) +} + +// 查询操作操作履历详细 +export function getOrderOper(operId) { + return request({ + url: '/system/orderOper/' + operId, + method: 'get' + }) +} + +// 新增操作操作履历 +export function addOrderOper(data) { + return request({ + url: '/system/orderOper', + method: 'post', + data: data + }) +} + +// 修改操作操作履历 +export function updateOrderOper(data) { + return request({ + url: '/system/orderOper', + method: 'put', + data: data + }) +} + +// 删除操作操作履历 +export function delOrderOper(operId) { + return request({ + url: '/system/orderOper/' + operId, + method: 'delete' + }) +} diff --git a/src/views/system/accessory/index.vue b/src/views/system/accessory/index.vue index db55c0f..36fd93c 100644 --- a/src/views/system/accessory/index.vue +++ b/src/views/system/accessory/index.vue @@ -9,10 +9,10 @@ @keyup.enter.native="handleQuery" /> </el-form-item> - <el-form-item label="车型id" prop="modelId"> + <el-form-item label="车型" prop="modelId"> <el-input v-model="queryParams.modelId" - placeholder="请输入车型id" + placeholder="请输入车型" clearable @keyup.enter.native="handleQuery" /> @@ -73,8 +73,18 @@ <el-table-column type="selection" width="55" align="center" /> <el-table-column label="id" align="center" prop="accessoryId" /> <el-table-column label="配件名称" align="center" prop="name" /> - <el-table-column label="车型id" align="center" prop="modelId" /> - <el-table-column label="状态:" align="center" prop="status" /> + <el-table-column label="车型" align="center" prop="model" /> +<!-- <el-table-column label="状态" align="center" prop="status" />--> + <el-table-column label="状态" align="center" width="100"> + <template slot-scope="scope"> + <el-switch + v-model="scope.row.status" + active-value="1" + inactive-value="0" + @change="handleStatusChange(scope.row)" + ></el-switch> + </template> + </el-table-column> <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope"> <el-button @@ -122,7 +132,15 @@ </template> <script> -import { listAccessory, getAccessory, delAccessory, addAccessory, updateAccessory } from "@/api/rl/accessory"; + import { + listAccessory, + getAccessory, + delAccessory, + addAccessory, + updateAccessory, + changeAccessoryStatus + } from "@/api/rl/accessory"; +import {changeRoleStatus} from "@/api/system/role"; export default { name: "Accessory", @@ -165,6 +183,17 @@ export default { this.getList(); }, methods: { + // 配件状态修改 + handleStatusChange(row) { + let text = row.status === "0" ? "启用" : "停用"; + this.$modal.confirm('确认要"' + text + '""' + row.name + '"配件吗?').then(function() { + return changeAccessoryStatus(row.accessoryId, row.status); + }).then(() => { + this.$modal.msgSuccess(text + "成功"); + }).catch(function() { + row.status = row.status === "0" ? "1" : "0"; + }); + }, /** 查询配件列表 */ getList() { this.loading = true; diff --git a/src/views/system/deliveryOrder/index.vue b/src/views/system/deliveryOrder/index.vue new file mode 100644 index 0000000..0a944dc --- /dev/null +++ b/src/views/system/deliveryOrder/index.vue @@ -0,0 +1,357 @@ +<template> + <div class="app-container"> + <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> + <el-form-item label="关联的订单号" prop="orderNo"> + <el-input + v-model="queryParams.orderNo" + placeholder="请输入关联的订单号" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="代理商" prop="agentId"> + <el-input + v-model="queryParams.agentId" + placeholder="请输入代理商" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="配送员" prop="deliverymanId"> + <el-input + v-model="queryParams.deliverymanId" + placeholder="请输入配送员" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="配送员类型" prop="deliverymanType"> + <el-select v-model="queryParams.deliverymanType" placeholder="请选择配送员类型" clearable> + <el-option + v-for="dict in dict.type.rl_deliveryman_type" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> + </el-select> + </el-form-item> + <el-form-item label="配送员名称" prop="deliveryman"> + <el-input + v-model="queryParams.deliveryman" + placeholder="请输入配送员名称" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="配送员电话" prop="deliverymanPhone"> + <el-input + v-model="queryParams.deliverymanPhone" + placeholder="请输入配送员电话" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="状态" prop="status"> + <el-select v-model="queryParams.status" placeholder="请选择状态" clearable> + <el-option + v-for="dict in dict.type.rl_delivery_status" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> + </el-select> + </el-form-item> + <el-form-item> + <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> + </el-form-item> + </el-form> + + <el-row :gutter="10" class="mb8"> + <el-col :span="1.5"> + <el-button + type="primary" + plain + icon="el-icon-plus" + size="mini" + @click="handleAdd" + v-hasPermi="['system:deliveryOrder:add']" + >新增</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="success" + plain + icon="el-icon-edit" + size="mini" + :disabled="single" + @click="handleUpdate" + v-hasPermi="['system:deliveryOrder:edit']" + >修改</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="danger" + plain + icon="el-icon-delete" + size="mini" + :disabled="multiple" + @click="handleDelete" + v-hasPermi="['system:deliveryOrder:remove']" + >删除</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="warning" + plain + icon="el-icon-download" + size="mini" + @click="handleExport" + v-hasPermi="['system:deliveryOrder:export']" + >导出</el-button> + </el-col> + <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> + </el-row> + + <el-table v-loading="loading" :data="deliveryOrderList" @selection-change="handleSelectionChange"> + <el-table-column type="selection" width="55" align="center" /> + <el-table-column label="配送工单id" align="center" prop="deliveryId" /> + <el-table-column label="关联的订单号" align="center" prop="orderNo" /> + <el-table-column label="代理商" align="center" prop="agentId" /> + <el-table-column label="配送员" align="center" prop="deliverymanId" /> + <el-table-column label="配送员类型" align="center" prop="deliverymanType"> + <template slot-scope="scope"> + <dict-tag :options="dict.type.rl_deliveryman_type" :value="scope.row.deliverymanType"/> + </template> + </el-table-column> + <el-table-column label="配送员名称" align="center" prop="deliveryman" /> + <el-table-column label="配送员电话" align="center" prop="deliverymanPhone" /> + <el-table-column label="状态" align="center" prop="status"> + <template slot-scope="scope"> + <dict-tag :options="dict.type.rl_delivery_status" :value="scope.row.status"/> + </template> + </el-table-column> + <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> + <template slot-scope="scope"> + <el-button + size="mini" + type="text" + icon="el-icon-edit" + @click="handleUpdate(scope.row)" + v-hasPermi="['system:deliveryOrder:edit']" + >修改</el-button> + <el-button + size="mini" + type="text" + icon="el-icon-delete" + @click="handleDelete(scope.row)" + v-hasPermi="['system:deliveryOrder:remove']" + >删除</el-button> + </template> + </el-table-column> + </el-table> + + <pagination + v-show="total>0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> + + <!-- 添加或修改配送工单对话框 --> + <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> + <el-form ref="form" :model="form" :rules="rules" label-width="80px"> + <el-form-item label="关联的订单号" prop="orderNo"> + <el-input v-model="form.orderNo" placeholder="请输入关联的订单号" /> + </el-form-item> + <el-form-item label="代理商" prop="agentId"> + <el-input v-model="form.agentId" placeholder="请输入代理商" /> + </el-form-item> + <el-form-item label="配送员" prop="deliverymanId"> + <el-input v-model="form.deliverymanId" placeholder="请输入配送员" /> + </el-form-item> + <el-form-item label="配送员类型" prop="deliverymanType"> + <el-select v-model="form.deliverymanType" placeholder="请选择配送员类型"> + <el-option + v-for="dict in dict.type.rl_deliveryman_type" + :key="dict.value" + :label="dict.label" + :value="dict.value" + ></el-option> + </el-select> + </el-form-item> + <el-form-item label="配送员名称" prop="deliveryman"> + <el-input v-model="form.deliveryman" placeholder="请输入配送员名称" /> + </el-form-item> + <el-form-item label="配送员电话" prop="deliverymanPhone"> + <el-input v-model="form.deliverymanPhone" placeholder="请输入配送员电话" /> + </el-form-item> + <el-form-item label="状态" prop="status"> + <el-select v-model="form.status" placeholder="请选择状态"> + <el-option + v-for="dict in dict.type.rl_delivery_status" + :key="dict.value" + :label="dict.label" + :value="dict.value" + ></el-option> + </el-select> + </el-form-item> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button type="primary" @click="submitForm">确 定</el-button> + <el-button @click="cancel">取 消</el-button> + </div> + </el-dialog> + </div> +</template> + +<script> +import { listDeliveryOrder, getDeliveryOrder, delDeliveryOrder, addDeliveryOrder, updateDeliveryOrder } from "@/api/rl/deliveryOrder"; + +export default { + name: "DeliveryOrder", + dicts: ['rl_deliveryman_type', 'rl_delivery_status'], + data() { + return { + // 遮罩层 + loading: true, + // 选中数组 + ids: [], + // 非单个禁用 + single: true, + // 非多个禁用 + multiple: true, + // 显示搜索条件 + showSearch: true, + // 总条数 + total: 0, + // 配送工单表格数据 + deliveryOrderList: [], + // 弹出层标题 + title: "", + // 是否显示弹出层 + open: false, + // 查询参数 + queryParams: { + pageNum: 1, + pageSize: 10, + orderNo: null, + agentId: null, + deliverymanId: null, + deliverymanType: null, + deliveryman: null, + deliverymanPhone: null, + status: null, + }, + // 表单参数 + form: {}, + // 表单校验 + rules: { + } + }; + }, + created() { + this.getList(); + }, + methods: { + /** 查询配送工单列表 */ + getList() { + this.loading = true; + listDeliveryOrder(this.queryParams).then(response => { + this.deliveryOrderList = response.rows; + this.total = response.total; + this.loading = false; + }); + }, + // 取消按钮 + cancel() { + this.open = false; + this.reset(); + }, + // 表单重置 + reset() { + this.form = { + deliveryId: null, + orderNo: null, + agentId: null, + deliverymanId: null, + deliverymanType: null, + deliveryman: null, + deliverymanPhone: null, + status: null, + createTime: null + }; + this.resetForm("form"); + }, + /** 搜索按钮操作 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 重置按钮操作 */ + resetQuery() { + this.resetForm("queryForm"); + this.handleQuery(); + }, + // 多选框选中数据 + handleSelectionChange(selection) { + this.ids = selection.map(item => item.deliveryId) + this.single = selection.length!==1 + this.multiple = !selection.length + }, + /** 新增按钮操作 */ + handleAdd() { + this.reset(); + this.open = true; + this.title = "添加配送工单"; + }, + /** 修改按钮操作 */ + handleUpdate(row) { + this.reset(); + const deliveryId = row.deliveryId || this.ids + getDeliveryOrder(deliveryId).then(response => { + this.form = response.data; + this.open = true; + this.title = "修改配送工单"; + }); + }, + /** 提交按钮 */ + submitForm() { + this.$refs["form"].validate(valid => { + if (valid) { + if (this.form.deliveryId != null) { + updateDeliveryOrder(this.form).then(response => { + this.$modal.msgSuccess("修改成功"); + this.open = false; + this.getList(); + }); + } else { + addDeliveryOrder(this.form).then(response => { + this.$modal.msgSuccess("新增成功"); + this.open = false; + this.getList(); + }); + } + } + }); + }, + /** 删除按钮操作 */ + handleDelete(row) { + const deliveryIds = row.deliveryId || this.ids; + this.$modal.confirm('是否确认删除配送工单编号为"' + deliveryIds + '"的数据项?').then(function() { + return delDeliveryOrder(deliveryIds); + }).then(() => { + this.getList(); + this.$modal.msgSuccess("删除成功"); + }).catch(() => {}); + }, + /** 导出按钮操作 */ + handleExport() { + this.download('system/deliveryOrder/export', { + ...this.queryParams + }, `deliveryOrder_${new Date().getTime()}.xlsx`) + } + } +}; +</script> diff --git a/src/views/system/deliveryOrderOper/index.vue b/src/views/system/deliveryOrderOper/index.vue new file mode 100644 index 0000000..20a7df5 --- /dev/null +++ b/src/views/system/deliveryOrderOper/index.vue @@ -0,0 +1,338 @@ +<template> + <div class="app-container"> + <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> + <el-form-item label="配送工单id" prop="deliveryId"> + <el-input + v-model="queryParams.deliveryId" + placeholder="请输入配送工单id" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="配送类型" prop="type"> + <el-select v-model="queryParams.type" placeholder="请选择配送类型" clearable> + <el-option + v-for="dict in dict.type.rl_delivery_type" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> + </el-select> + </el-form-item> + <el-form-item label="操作人" prop="operUserid"> + <el-input + v-model="queryParams.operUserid" + placeholder="请输入操作人" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="操作人电话" prop="operPhone"> + <el-input + v-model="queryParams.operPhone" + placeholder="请输入操作人电话" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="操作人名称" prop="operName"> + <el-input + v-model="queryParams.operName" + placeholder="请输入操作人名称" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="操作时间" prop="operTime"> + <el-date-picker clearable + v-model="queryParams.operTime" + type="date" + value-format="yyyy-MM-dd" + placeholder="请选择操作时间"> + </el-date-picker> + </el-form-item> + <el-form-item> + <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> + </el-form-item> + </el-form> + + <el-row :gutter="10" class="mb8"> + <el-col :span="1.5"> + <el-button + type="primary" + plain + icon="el-icon-plus" + size="mini" + @click="handleAdd" + v-hasPermi="['system:deliveryOrderOper:add']" + >新增</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="success" + plain + icon="el-icon-edit" + size="mini" + :disabled="single" + @click="handleUpdate" + v-hasPermi="['system:deliveryOrderOper:edit']" + >修改</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="danger" + plain + icon="el-icon-delete" + size="mini" + :disabled="multiple" + @click="handleDelete" + v-hasPermi="['system:deliveryOrderOper:remove']" + >删除</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="warning" + plain + icon="el-icon-download" + size="mini" + @click="handleExport" + v-hasPermi="['system:deliveryOrderOper:export']" + >导出</el-button> + </el-col> + <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> + </el-row> + + <el-table v-loading="loading" :data="deliveryOrderOperList" @selection-change="handleSelectionChange"> + <el-table-column type="selection" width="55" align="center" /> + <el-table-column label="操作id" align="center" prop="operId" /> + <el-table-column label="配送工单id" align="center" prop="deliveryId" /> + <el-table-column label="配送类型" align="center" prop="type"> + <template slot-scope="scope"> + <dict-tag :options="dict.type.rl_delivery_type" :value="scope.row.type"/> + </template> + </el-table-column> + <el-table-column label="操作人" align="center" prop="operUserid" /> + <el-table-column label="操作人电话" align="center" prop="operPhone" /> + <el-table-column label="操作人名称" align="center" prop="operName" /> + <el-table-column label="操作时间" align="center" prop="operTime" width="180"> + <template slot-scope="scope"> + <span>{{ parseTime(scope.row.operTime, '{y}-{m}-{d}') }}</span> + </template> + </el-table-column> + <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> + <template slot-scope="scope"> + <el-button + size="mini" + type="text" + icon="el-icon-edit" + @click="handleUpdate(scope.row)" + v-hasPermi="['system:deliveryOrderOper:edit']" + >修改</el-button> + <el-button + size="mini" + type="text" + icon="el-icon-delete" + @click="handleDelete(scope.row)" + v-hasPermi="['system:deliveryOrderOper:remove']" + >删除</el-button> + </template> + </el-table-column> + </el-table> + + <pagination + v-show="total>0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> + + <!-- 添加或修改配送单履历对话框 --> + <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> + <el-form ref="form" :model="form" :rules="rules" label-width="80px"> + <el-form-item label="配送工单id" prop="deliveryId"> + <el-input v-model="form.deliveryId" placeholder="请输入配送工单id" /> + </el-form-item> + <el-form-item label="配送类型" prop="type"> + <el-select v-model="form.type" placeholder="请选择配送类型"> + <el-option + v-for="dict in dict.type.rl_delivery_type" + :key="dict.value" + :label="dict.label" + :value="dict.value" + ></el-option> + </el-select> + </el-form-item> + <el-form-item label="操作人" prop="operUserid"> + <el-input v-model="form.operUserid" placeholder="请输入操作人" /> + </el-form-item> + <el-form-item label="操作人电话" prop="operPhone"> + <el-input v-model="form.operPhone" placeholder="请输入操作人电话" /> + </el-form-item> + <el-form-item label="操作人名称" prop="operName"> + <el-input v-model="form.operName" placeholder="请输入操作人名称" /> + </el-form-item> + <el-form-item label="操作时间" prop="operTime"> + <el-date-picker clearable + v-model="form.operTime" + type="date" + value-format="yyyy-MM-dd" + placeholder="请选择操作时间"> + </el-date-picker> + </el-form-item> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button type="primary" @click="submitForm">确 定</el-button> + <el-button @click="cancel">取 消</el-button> + </div> + </el-dialog> + </div> +</template> + +<script> +import { listDeliveryOrderOper, getDeliveryOrderOper, delDeliveryOrderOper, addDeliveryOrderOper, updateDeliveryOrderOper } from "@/api/rl/deliveryOrderOper"; + +export default { + name: "DeliveryOrderOper", + dicts: ['rl_delivery_type'], + data() { + return { + // 遮罩层 + loading: true, + // 选中数组 + ids: [], + // 非单个禁用 + single: true, + // 非多个禁用 + multiple: true, + // 显示搜索条件 + showSearch: true, + // 总条数 + total: 0, + // 配送单履历表格数据 + deliveryOrderOperList: [], + // 弹出层标题 + title: "", + // 是否显示弹出层 + open: false, + // 查询参数 + queryParams: { + pageNum: 1, + pageSize: 10, + deliveryId: null, + type: null, + operUserid: null, + operPhone: null, + operName: null, + operTime: null + }, + // 表单参数 + form: {}, + // 表单校验 + rules: { + } + }; + }, + created() { + this.getList(); + }, + methods: { + /** 查询配送单履历列表 */ + getList() { + this.loading = true; + listDeliveryOrderOper(this.queryParams).then(response => { + this.deliveryOrderOperList = response.rows; + this.total = response.total; + this.loading = false; + }); + }, + // 取消按钮 + cancel() { + this.open = false; + this.reset(); + }, + // 表单重置 + reset() { + this.form = { + operId: null, + deliveryId: null, + type: null, + operUserid: null, + operPhone: null, + operName: null, + operTime: null + }; + this.resetForm("form"); + }, + /** 搜索按钮操作 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 重置按钮操作 */ + resetQuery() { + this.resetForm("queryForm"); + this.handleQuery(); + }, + // 多选框选中数据 + handleSelectionChange(selection) { + this.ids = selection.map(item => item.operId) + this.single = selection.length!==1 + this.multiple = !selection.length + }, + /** 新增按钮操作 */ + handleAdd() { + this.reset(); + this.open = true; + this.title = "添加配送单履历"; + }, + /** 修改按钮操作 */ + handleUpdate(row) { + this.reset(); + const operId = row.operId || this.ids + getDeliveryOrderOper(operId).then(response => { + this.form = response.data; + this.open = true; + this.title = "修改配送单履历"; + }); + }, + /** 提交按钮 */ + submitForm() { + this.$refs["form"].validate(valid => { + if (valid) { + if (this.form.operId != null) { + updateDeliveryOrderOper(this.form).then(response => { + this.$modal.msgSuccess("修改成功"); + this.open = false; + this.getList(); + }); + } else { + addDeliveryOrderOper(this.form).then(response => { + this.$modal.msgSuccess("新增成功"); + this.open = false; + this.getList(); + }); + } + } + }); + }, + /** 删除按钮操作 */ + handleDelete(row) { + const operIds = row.operId || this.ids; + this.$modal.confirm('是否确认删除配送单履历编号为"' + operIds + '"的数据项?').then(function() { + return delDeliveryOrderOper(operIds); + }).then(() => { + this.getList(); + this.$modal.msgSuccess("删除成功"); + }).catch(() => {}); + }, + /** 导出按钮操作 */ + handleExport() { + this.download('system/deliveryOrderOper/export', { + ...this.queryParams + }, `deliveryOrderOper_${new Date().getTime()}.xlsx`) + } + } +}; +</script> diff --git a/src/views/system/detail/index.vue b/src/views/system/detail/index.vue new file mode 100644 index 0000000..9091021 --- /dev/null +++ b/src/views/system/detail/index.vue @@ -0,0 +1,319 @@ +<template> + <div class="app-container"> + <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> + <el-form-item label="代理商" prop="agentId"> + <el-input + v-model="queryParams.agentId" + placeholder="请输入代理商" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="合伙人" prop="partnerId"> + <el-input + v-model="queryParams.partnerId" + placeholder="请输入合伙人" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="订单号" prop="orderNo"> + <el-input + v-model="queryParams.orderNo" + placeholder="请输入订单号" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="订单总金额" prop="totalAmount"> + <el-input + v-model="queryParams.totalAmount" + placeholder="请输入订单总金额" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="分账金额" prop="dividendAmount"> + <el-input + v-model="queryParams.dividendAmount" + placeholder="请输入分账金额" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="分红比例" prop="dividendProportion"> + <el-input + v-model="queryParams.dividendProportion" + placeholder="请输入分红比例" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item> + <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> + </el-form-item> + </el-form> + + <el-row :gutter="10" class="mb8"> + <el-col :span="1.5"> + <el-button + type="primary" + plain + icon="el-icon-plus" + size="mini" + @click="handleAdd" + v-hasPermi="['system:detail:add']" + >新增</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="success" + plain + icon="el-icon-edit" + size="mini" + :disabled="single" + @click="handleUpdate" + v-hasPermi="['system:detail:edit']" + >修改</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="danger" + plain + icon="el-icon-delete" + size="mini" + :disabled="multiple" + @click="handleDelete" + v-hasPermi="['system:detail:remove']" + >删除</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="warning" + plain + icon="el-icon-download" + size="mini" + @click="handleExport" + v-hasPermi="['system:detail:export']" + >导出</el-button> + </el-col> + <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> + </el-row> + + <el-table v-loading="loading" :data="detailList" @selection-change="handleSelectionChange"> + <el-table-column type="selection" width="55" align="center" /> + <el-table-column label="主键" align="center" prop="id" /> + <el-table-column label="代理商" align="center" prop="agentId" /> + <el-table-column label="合伙人" align="center" prop="partnerId" /> + <el-table-column label="订单号" align="center" prop="orderNo" /> + <el-table-column label="订单总金额" align="center" prop="totalAmount" /> + <el-table-column label="分账金额" align="center" prop="dividendAmount" /> + <el-table-column label="分红比例" align="center" prop="dividendProportion" /> + <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> + <template slot-scope="scope"> + <el-button + size="mini" + type="text" + icon="el-icon-edit" + @click="handleUpdate(scope.row)" + v-hasPermi="['system:detail:edit']" + >修改</el-button> + <el-button + size="mini" + type="text" + icon="el-icon-delete" + @click="handleDelete(scope.row)" + v-hasPermi="['system:detail:remove']" + >删除</el-button> + </template> + </el-table-column> + </el-table> + + <pagination + v-show="total>0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> + + <!-- 添加或修改分账明细对话框 --> + <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> + <el-form ref="form" :model="form" :rules="rules" label-width="80px"> + <el-form-item label="代理商" prop="agentId"> + <el-input v-model="form.agentId" placeholder="请输入代理商" /> + </el-form-item> + <el-form-item label="合伙人" prop="partnerId"> + <el-input v-model="form.partnerId" placeholder="请输入合伙人" /> + </el-form-item> + <el-form-item label="订单号" prop="orderNo"> + <el-input v-model="form.orderNo" placeholder="请输入订单号" /> + </el-form-item> + <el-form-item label="订单总金额" prop="totalAmount"> + <el-input v-model="form.totalAmount" placeholder="请输入订单总金额" /> + </el-form-item> + <el-form-item label="分账金额" prop="dividendAmount"> + <el-input v-model="form.dividendAmount" placeholder="请输入分账金额" /> + </el-form-item> + <el-form-item label="分红比例" prop="dividendProportion"> + <el-input v-model="form.dividendProportion" placeholder="请输入分红比例" /> + </el-form-item> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button type="primary" @click="submitForm">确 定</el-button> + <el-button @click="cancel">取 消</el-button> + </div> + </el-dialog> + </div> +</template> + +<script> +import { listDetail, getDetail, delDetail, addDetail, updateDetail } from "@/api/rl/detail"; + +export default { + name: "Detail", + data() { + return { + // 遮罩层 + loading: true, + // 选中数组 + ids: [], + // 非单个禁用 + single: true, + // 非多个禁用 + multiple: true, + // 显示搜索条件 + showSearch: true, + // 总条数 + total: 0, + // 分账明细表格数据 + detailList: [], + // 弹出层标题 + title: "", + // 是否显示弹出层 + open: false, + // 查询参数 + queryParams: { + pageNum: 1, + pageSize: 10, + agentId: null, + partnerId: null, + orderNo: null, + totalAmount: null, + dividendAmount: null, + dividendProportion: null, + }, + // 表单参数 + form: {}, + // 表单校验 + rules: { + orderNo: [ + { required: true, message: "订单号不能为空", trigger: "blur" } + ], + } + }; + }, + created() { + this.getList(); + }, + methods: { + /** 查询分账明细列表 */ + getList() { + this.loading = true; + listDetail(this.queryParams).then(response => { + this.detailList = response.rows; + this.total = response.total; + this.loading = false; + }); + }, + // 取消按钮 + cancel() { + this.open = false; + this.reset(); + }, + // 表单重置 + reset() { + this.form = { + id: null, + agentId: null, + partnerId: null, + orderNo: null, + totalAmount: null, + dividendAmount: null, + dividendProportion: null, + createTime: null + }; + this.resetForm("form"); + }, + /** 搜索按钮操作 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 重置按钮操作 */ + resetQuery() { + this.resetForm("queryForm"); + this.handleQuery(); + }, + // 多选框选中数据 + handleSelectionChange(selection) { + this.ids = selection.map(item => item.id) + this.single = selection.length!==1 + this.multiple = !selection.length + }, + /** 新增按钮操作 */ + handleAdd() { + this.reset(); + this.open = true; + this.title = "添加分账明细"; + }, + /** 修改按钮操作 */ + handleUpdate(row) { + this.reset(); + const id = row.id || this.ids + getDetail(id).then(response => { + this.form = response.data; + this.open = true; + this.title = "修改分账明细"; + }); + }, + /** 提交按钮 */ + submitForm() { + this.$refs["form"].validate(valid => { + if (valid) { + if (this.form.id != null) { + updateDetail(this.form).then(response => { + this.$modal.msgSuccess("修改成功"); + this.open = false; + this.getList(); + }); + } else { + addDetail(this.form).then(response => { + this.$modal.msgSuccess("新增成功"); + this.open = false; + this.getList(); + }); + } + } + }); + }, + /** 删除按钮操作 */ + handleDelete(row) { + const ids = row.id || this.ids; + this.$modal.confirm('是否确认删除分账明细编号为"' + ids + '"的数据项?').then(function() { + return delDetail(ids); + }).then(() => { + this.getList(); + this.$modal.msgSuccess("删除成功"); + }).catch(() => {}); + }, + /** 导出按钮操作 */ + handleExport() { + this.download('system/detail/export', { + ...this.queryParams + }, `detail_${new Date().getTime()}.xlsx`) + } + } +}; +</script> diff --git a/src/views/system/model/index.vue b/src/views/system/model/index.vue index 04ad0b7..b8aa088 100644 --- a/src/views/system/model/index.vue +++ b/src/views/system/model/index.vue @@ -9,6 +9,14 @@ @keyup.enter.native="handleQuery" /> </el-form-item> + <el-form-item label="代理商" prop="agentId"> + <el-input + v-model="queryParams.agentId" + placeholder="请输入代理商" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> <el-form-item> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> @@ -63,18 +71,18 @@ <el-table v-loading="loading" :data="modelList" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" align="center" /> + <el-table-column label="代理商" align="center" prop="agnetName" /> <el-table-column label="车型" align="center" prop="model" /> - <el-table-column label="满电电压(V)" align="center" prop="fullVoltage" /> - <el-table-column label="亏电电压(V)" align="center" prop="lowVoltage" /> - <el-table-column label="满电续航(km)" align="center" prop="fullEndurance" /> - <el-table-column label="骑行低电量提醒(%)" align="center" prop="lowBatteryReminder" /> - <el-table-column label="已投放车辆" align="center" prop="deviceNum" /> - <el-table-column label="创建时间" align="center" prop="createTime" width="180"> + <el-table-column label="满电电压" align="center" prop="fullVoltage" /> + <el-table-column label="亏电电压" align="center" prop="lowVoltage" /> + <el-table-column label="满电续航" align="center" prop="fullEndurance" /> + <el-table-column label="押金" align="center" prop="deposit" /> + <el-table-column label="图片" align="center" prop="picture" width="100"> <template slot-scope="scope"> - <span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span> + <image-preview :src="scope.row.picture" :width="50" :height="50"/> </template> </el-table-column> - <el-table-column label="备注" align="center" prop="remark" /> + <el-table-column label="描述" align="center" prop="description" /> <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope"> <el-button @@ -106,20 +114,35 @@ <!-- 添加或修改车辆型号对话框 --> <el-dialog :title="title" :visible.sync="open" width="700px" append-to-body> <el-form ref="form" :model="form" :rules="rules" label-width="80px"> + <el-form-item label="代理商" prop="agentId"> + <el-input v-model="form.agentId" placeholder="请输入代理商" /> + </el-form-item> <el-form-item label="车型" prop="model"> <el-input v-model="form.model" placeholder="请输入车型" /> </el-form-item> - <el-form-item label="满电电压(V)" label-width="90" prop="fullVoltage"> - <el-input style="width: 85%" v-model="form.fullVoltage" placeholder="请输入满电电压" /> + <el-form-item label="满电电压" prop="fullVoltage"> + <el-input v-model="form.fullVoltage" placeholder="请输入满电电压" /> </el-form-item> - <el-form-item label="亏电电压(V)" label-width="90" prop="lowVoltage"> - <el-input style="width: 85%" v-model="form.lowVoltage" placeholder="请输入亏电电压" /> + <el-form-item label="亏电电压" prop="lowVoltage"> + <el-input v-model="form.lowVoltage" placeholder="请输入亏电电压" /> </el-form-item> - <el-form-item label="满电续航(KM)" label-width="90" prop="fullEndurance"> - <el-input style="width: 80%" v-model="form.fullEndurance" placeholder="请输入满电续航" /> + <el-form-item label="满电续航" prop="fullEndurance"> + <el-input v-model="form.fullEndurance" placeholder="请输入满电续航" /> </el-form-item> - <el-form-item label="骑行低电量提醒(%)" label-width="120" prop="lowBatteryReminder"> - <el-input style="width: 78%" v-model="form.lowBatteryReminder" placeholder="请输入骑行低电量提醒" /> + <el-form-item label="备注" prop="remark"> + <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" /> + </el-form-item> + <el-form-item label="简介" prop="intro"> + <el-input v-model="form.intro" type="textarea" placeholder="请输入内容" /> + </el-form-item> + <el-form-item label="押金" prop="deposit"> + <el-input v-model="form.deposit" placeholder="请输入押金" /> + </el-form-item> + <el-form-item label="图片" prop="picture"> + <el-input v-model="form.picture" placeholder="请输入图片" /> + </el-form-item> + <el-form-item label="描述" prop="description"> + <el-input v-model="form.description" type="textarea" placeholder="请输入内容" /> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> @@ -131,23 +154,16 @@ </template> <script> -import { listModel, getModel, delModel, addModel, updateModel } from "@/api/system/model"; -import Treeselect from "@riophae/vue-treeselect"; -import "@riophae/vue-treeselect/dist/vue-treeselect.css"; -import { deptTreeSelect } from '@/api/system/user' +import { listModel, getModel, delModel, addModel, updateModel } from "@/api/rl/model"; export default { name: "Model", - components: { Treeselect }, data() { return { // 遮罩层 loading: true, // 选中数组 ids: [], - // 品牌商树选项 - deptOptions: [], - userName: undefined, // 非单个禁用 single: true, // 非多个禁用 @@ -167,41 +183,24 @@ export default { pageNum: 1, pageSize: 10, model: null, - brand: null, + fullVoltage: null, + lowVoltage: null, + fullEndurance: null, + agentId: null, + intro: null, + deposit: null, + picture: null, + description: null }, // 表单参数 form: {}, // 表单校验 rules: { - model: [ - { required: true, message: "车型不能为空", trigger: "blur" } - ], - fullVoltage: [ - { required: true, message: "满电电压不能为空", trigger: "blur" }, - { pattern: /^\d+(\.\d{1,2})?$/, message: '请输入最多两位小数的浮点数', trigger: 'blur' } - - ], - lowVoltage: [ - { required: true, message: "亏电电压不能为空", trigger: "blur" }, - { pattern: /^\d+(\.\d{1,2})?$/, message: '请输入最多两位小数的浮点数', trigger: 'blur' } - - ], - fullEndurance: [ - { required: true, message: "满电续航不能为空", trigger: "blur" }, - { pattern: /^\d+$/, message: '满电续航必须为正整数', trigger: 'blur' } - ], - lowBatteryReminder: [ - { required: true, message: "骑行低电量提醒不能为空", trigger: "blur" }, - { pattern: /^\d+$/, message: '骑行低电量提醒必须为正整数', trigger: 'blur' } - ] } }; }, created() { this.getList(); - // this.getBrandList(); - console.log("当前用户信息:",this.$store.state.user.name) - this.userName = this.$store.state.user.name; }, methods: { /** 查询车辆型号列表 */ @@ -222,19 +221,20 @@ export default { reset() { this.form = { modelId: null, - hardwareVersionId: null, model: null, - brand: null, fullVoltage: null, - parentId: undefined, lowVoltage: null, fullEndurance: null, - lowBatteryReminder: null, createBy: null, createTime: null, updateBy: null, updateTime: null, - remark: null + remark: null, + agentId: null, + intro: null, + deposit: null, + picture: null, + description: null }; this.resetForm("form"); }, @@ -254,12 +254,6 @@ export default { this.single = selection.length!==1 this.multiple = !selection.length }, - /** 查询品牌商下拉树结构 */ - getDeptTree() { - deptTreeSelect().then(response => { - this.deptOptions = response.data; - }); - }, /** 新增按钮操作 */ handleAdd() { this.reset(); diff --git a/src/views/system/orderOper/index.vue b/src/views/system/orderOper/index.vue new file mode 100644 index 0000000..afdd939 --- /dev/null +++ b/src/views/system/orderOper/index.vue @@ -0,0 +1,317 @@ +<template> + <div class="app-container"> + <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> + <el-form-item label="订单号" prop="orderNo"> + <el-input + v-model="queryParams.orderNo" + placeholder="请输入订单号" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="订单金额" prop="amountChange"> + <el-input + v-model="queryParams.amountChange" + placeholder="请输入订单金额" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="订单状态" prop="statusChange"> + <el-input + v-model="queryParams.statusChange" + placeholder="请输入订单状态" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="操作人" prop="operUserId"> + <el-input + v-model="queryParams.operUserId" + placeholder="请输入操作人" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item label="手机号" prop="operPhone"> + <el-input + v-model="queryParams.operPhone" + placeholder="请输入手机号" + clearable + @keyup.enter.native="handleQuery" + /> + </el-form-item> + <el-form-item> + <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> + </el-form-item> + </el-form> + + <el-row :gutter="10" class="mb8"> + <el-col :span="1.5"> + <el-button + type="primary" + plain + icon="el-icon-plus" + size="mini" + @click="handleAdd" + v-hasPermi="['system:orderOper:add']" + >新增</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="success" + plain + icon="el-icon-edit" + size="mini" + :disabled="single" + @click="handleUpdate" + v-hasPermi="['system:orderOper:edit']" + >修改</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="danger" + plain + icon="el-icon-delete" + size="mini" + :disabled="multiple" + @click="handleDelete" + v-hasPermi="['system:orderOper:remove']" + >删除</el-button> + </el-col> + <el-col :span="1.5"> + <el-button + type="warning" + plain + icon="el-icon-download" + size="mini" + @click="handleExport" + v-hasPermi="['system:orderOper:export']" + >导出</el-button> + </el-col> + <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> + </el-row> + + <el-table v-loading="loading" :data="orderOperList" @selection-change="handleSelectionChange"> + <el-table-column type="selection" width="55" align="center" /> + <el-table-column label="操作id" align="center" prop="operId" /> + <el-table-column label="订单号" align="center" prop="orderNo" /> + <el-table-column label="操作类型" align="center" prop="operType" /> + <el-table-column label="详情" align="center" prop="details" /> + <el-table-column label="订单金额" align="center" prop="amountChange" /> + <el-table-column label="订单状态" align="center" prop="statusChange" /> + <el-table-column label="操作人" align="center" prop="operUserId" /> + <el-table-column label="手机号" align="center" prop="operPhone" /> + <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> + <template slot-scope="scope"> + <el-button + size="mini" + type="text" + icon="el-icon-edit" + @click="handleUpdate(scope.row)" + v-hasPermi="['system:orderOper:edit']" + >修改</el-button> + <el-button + size="mini" + type="text" + icon="el-icon-delete" + @click="handleDelete(scope.row)" + v-hasPermi="['system:orderOper:remove']" + >删除</el-button> + </template> + </el-table-column> + </el-table> + + <pagination + v-show="total>0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> + + <!-- 添加或修改操作操作履历对话框 --> + <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> + <el-form ref="form" :model="form" :rules="rules" label-width="80px"> + <el-form-item label="订单号" prop="orderNo"> + <el-input v-model="form.orderNo" placeholder="请输入订单号" /> + </el-form-item> + <el-form-item label="详情" prop="details"> + <el-input v-model="form.details" type="textarea" placeholder="请输入内容" /> + </el-form-item> + <el-form-item label="订单金额" prop="amountChange"> + <el-input v-model="form.amountChange" placeholder="请输入订单金额" /> + </el-form-item> + <el-form-item label="订单状态" prop="statusChange"> + <el-input v-model="form.statusChange" placeholder="请输入订单状态" /> + </el-form-item> + <el-form-item label="操作人" prop="operUserId"> + <el-input v-model="form.operUserId" placeholder="请输入操作人" /> + </el-form-item> + <el-form-item label="手机号" prop="operPhone"> + <el-input v-model="form.operPhone" placeholder="请输入手机号" /> + </el-form-item> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button type="primary" @click="submitForm">确 定</el-button> + <el-button @click="cancel">取 消</el-button> + </div> + </el-dialog> + </div> +</template> + +<script> +import { listOrderOper, getOrderOper, delOrderOper, addOrderOper, updateOrderOper } from "@/api/rl/orderOper"; + +export default { + name: "OrderOper", + data() { + return { + // 遮罩层 + loading: true, + // 选中数组 + ids: [], + // 非单个禁用 + single: true, + // 非多个禁用 + multiple: true, + // 显示搜索条件 + showSearch: true, + // 总条数 + total: 0, + // 操作操作履历表格数据 + orderOperList: [], + // 弹出层标题 + title: "", + // 是否显示弹出层 + open: false, + // 查询参数 + queryParams: { + pageNum: 1, + pageSize: 10, + orderNo: null, + operType: null, + details: null, + amountChange: null, + statusChange: null, + operUserId: null, + operPhone: null + }, + // 表单参数 + form: {}, + // 表单校验 + rules: { + orderNo: [ + { required: true, message: "订单号不能为空", trigger: "blur" } + ], + operType: [ + { required: true, message: "操作类型不能为空", trigger: "change" } + ], + } + }; + }, + created() { + this.getList(); + }, + methods: { + /** 查询操作操作履历列表 */ + getList() { + this.loading = true; + listOrderOper(this.queryParams).then(response => { + this.orderOperList = response.rows; + this.total = response.total; + this.loading = false; + }); + }, + // 取消按钮 + cancel() { + this.open = false; + this.reset(); + }, + // 表单重置 + reset() { + this.form = { + operId: null, + orderNo: null, + operType: null, + details: null, + amountChange: null, + statusChange: null, + operUserId: null, + createTime: null, + operPhone: null + }; + this.resetForm("form"); + }, + /** 搜索按钮操作 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 重置按钮操作 */ + resetQuery() { + this.resetForm("queryForm"); + this.handleQuery(); + }, + // 多选框选中数据 + handleSelectionChange(selection) { + this.ids = selection.map(item => item.operId) + this.single = selection.length!==1 + this.multiple = !selection.length + }, + /** 新增按钮操作 */ + handleAdd() { + this.reset(); + this.open = true; + this.title = "添加操作操作履历"; + }, + /** 修改按钮操作 */ + handleUpdate(row) { + this.reset(); + const operId = row.operId || this.ids + getOrderOper(operId).then(response => { + this.form = response.data; + this.open = true; + this.title = "修改操作操作履历"; + }); + }, + /** 提交按钮 */ + submitForm() { + this.$refs["form"].validate(valid => { + if (valid) { + if (this.form.operId != null) { + updateOrderOper(this.form).then(response => { + this.$modal.msgSuccess("修改成功"); + this.open = false; + this.getList(); + }); + } else { + addOrderOper(this.form).then(response => { + this.$modal.msgSuccess("新增成功"); + this.open = false; + this.getList(); + }); + } + } + }); + }, + /** 删除按钮操作 */ + handleDelete(row) { + const operIds = row.operId || this.ids; + this.$modal.confirm('是否确认删除操作操作履历编号为"' + operIds + '"的数据项?').then(function() { + return delOrderOper(operIds); + }).then(() => { + this.getList(); + this.$modal.msgSuccess("删除成功"); + }).catch(() => {}); + }, + /** 导出按钮操作 */ + handleExport() { + this.download('system/orderOper/export', { + ...this.queryParams + }, `orderOper_${new Date().getTime()}.xlsx`) + } + } +}; +</script> diff --git a/src/views/system/partner/index.vue b/src/views/system/partner/index.vue index 8a6de70..9c3f008 100644 --- a/src/views/system/partner/index.vue +++ b/src/views/system/partner/index.vue @@ -94,6 +94,7 @@ <el-table v-loading="loading" :data="userList" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="50" align="center" /> <el-table-column label="合伙人名称" align="center" prop="userName" :show-overflow-tooltip="true" /> + <el-table-column label="代理城市" align="center" prop="cityName" /> <el-table-column label="类型" align="center" prop="userType"> <template slot-scope="scope"> <dict-tag :options="dict.type.rl_user_type" :value="scope.row.userType"/> @@ -188,13 +189,13 @@ </el-form-item> </el-col> <el-col :span="12"> - <el-form-item label="运营区" prop="areaId"> - <el-select v-model="form.areaId" placeholder="请选择运营区"> + <el-form-item label="代理城市" prop="areaId"> + <el-select v-model="form.cityId" placeholder="请选择代理城市"> <el-option - v-for="item in areaOptions" - :key="item.areaId" - :label="item.areaName" - :value="item.areaId" + v-for="item in cityOptions" + :key="item.cityId" + :label="item.cityName" + :value="item.cityId" ></el-option> </el-select> </el-form-item> @@ -327,13 +328,6 @@ export default { }, // 表单校验 rules: { - // userName: [ - // { required: true, message: "用户名称不能为空", trigger: "blur" }, - // { min: 2, max: 20, message: '用户名称长度必须介于 2 和 20 之间', trigger: 'blur' } - // ], - areaId: [ - { required: true, message: "请选择运营区", trigger: "blur" } - ], dividendProportion: [ { required: true, message: "分账比例不能为空", trigger: "blur" }, { pattern: /^\d+$/, message: '分账比例必须为正整数', trigger: 'blur' } diff --git a/src/views/system/rule/index.vue b/src/views/system/rule/index.vue index 6a2a2f0..c67bf0a 100644 --- a/src/views/system/rule/index.vue +++ b/src/views/system/rule/index.vue @@ -1,14 +1,6 @@ <template> <div class="app-container"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> - <el-form-item label="数量" prop="num"> - <el-input - v-model="queryParams.num" - placeholder="请输入数量" - clearable - @keyup.enter.native="handleQuery" - /> - </el-form-item> <el-form-item label="租赁单位" prop="rentalUnit"> <el-select v-model="queryParams.rentalUnit" placeholder="请选择租赁单位" clearable> <el-option @@ -19,46 +11,14 @@ /> </el-select> </el-form-item> - <el-form-item label="售价" prop="price"> + <el-form-item label="说明" prop="explain"> <el-input - v-model="queryParams.price" - placeholder="请输入售价" + v-model="queryParams.explain" + placeholder="请输入说明" clearable @keyup.enter.native="handleQuery" /> </el-form-item> - <el-form-item label="超出数量" prop="outNum"> - <el-input - v-model="queryParams.outNum" - placeholder="请输入超出数量" - clearable - @keyup.enter.native="handleQuery" - /> - </el-form-item> - <el-form-item label="超出单位" prop="outUnit"> - <el-input - v-model="queryParams.outUnit" - placeholder="请输入超出单位" - clearable - @keyup.enter.native="handleQuery" - /> - </el-form-item> - <el-form-item label="超出价格" prop="outPrice"> - <el-input - v-model="queryParams.outPrice" - placeholder="请输入超出价格" - clearable - @keyup.enter.native="handleQuery" - /> - </el-form-item> -<!-- <el-form-item label="是否删除:1-删除" prop="isDeleted">--> -<!-- <el-input--> -<!-- v-model="queryParams.isDeleted"--> -<!-- placeholder="请输入是否删除:1-删除"--> -<!-- clearable--> -<!-- @keyup.enter.native="handleQuery"--> -<!-- />--> -<!-- </el-form-item>--> <el-form-item> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> @@ -114,7 +74,6 @@ <el-table v-loading="loading" :data="ruleList" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" align="center" /> <el-table-column label="id" align="center" prop="ruleId" /> - <el-table-column label="数量" align="center" prop="num" /> <el-table-column label="租赁单位" align="center" prop="rentalUnit"> <template slot-scope="scope"> <dict-tag :options="dict.type.rl_rental_unit" :value="scope.row.rentalUnit"/> @@ -158,9 +117,6 @@ <!-- 添加或修改收费模板对话框 --> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-form ref="form" :model="form" :rules="rules" label-width="80px"> - <el-form-item label="数量" prop="num"> - <el-input v-model="form.num" placeholder="请输入数量" /> - </el-form-item> <el-form-item label="租赁单位" prop="rentalUnit"> <el-select v-model="form.rentalUnit" placeholder="请选择租赁单位"> <el-option