商超管理

This commit is contained in:
zzyuan 2025-05-26 17:15:58 +08:00
parent ff33eff54b
commit ea56ac8592
3 changed files with 32 additions and 108 deletions

View File

@ -1,21 +1,9 @@
import request from '@/utils/request'
// 系统区域权限树
export function systemAreaTreeApi(data) {
return request({
url: '/smart-canteen/api/v2/alloc/area/system-auth/tree',
method: 'post',
headers: {
"merchant-id":"378915229716713472",
},
data: data
})
}
import request from '@/utils/request'
// 单位列表-分页
export function drpUnitPageListApi(data) {
return request({
url: '/smart-canteen/supermarket_unit/list',
url: '/smart-canteen/supply_product_unit/list',
method: 'get',
headers: {
"merchant-id":"378915229716713472",
@ -27,7 +15,7 @@ export function drpUnitPageListApi(data) {
// 单位列表-新增
export function addDrpUnitApi(data) {
return request({
url: '/smart-canteen/supermarket_unit',
url: '/smart-canteen/supply_product_unit',
method: 'post',
headers: {
"merchant-id":"378915229716713472",
@ -39,7 +27,7 @@ export function addDrpUnitApi(data) {
// 单位列表-编辑
export function editDrpUnitApi(data) {
return request({
url: '/smart-canteen/supermarket_unit/edit',
url: '/smart-canteen/supply_product_unit/edit',
method: 'post',
headers: {
"merchant-id":"378915229716713472",
@ -51,7 +39,7 @@ export function editDrpUnitApi(data) {
// 单位列表-删除
export function removeDrpUnitApi(unitId) {
return request({
url: '/smart-canteen/supermarket_unit/del/'+unitId,
url: '/smart-canteen/supply_product_unit/del/'+unitId,
method: 'post',
headers: {
"merchant-id":"378915229716713472",

View File

@ -95,7 +95,7 @@
<el-dialog :title="title+'-超市'" :visible.sync="open" width="1200px" append-to-body>
<el-tabs v-model="activeName" @tab-click="handleTabClick">
<!-- 基础设置 -->
<el-tab-pane label="基础设置" name="baseSetting" style="height: 600px;overflow-y: auto;">
<el-tab-pane label="基础设置" name="baseSetting" style="height: 550px;overflow-y: auto;">
<el-form ref="baseForm" :model="baseForm" :rules="baseFormRules" label-width="140px">
<el-row>
<el-col :span="12">
@ -115,10 +115,7 @@
clearable @change="handleTreeChange2" >
</el-cascader>
</el-form-item>
</el-col>
</el-row>
<el-row>
</el-col>
<el-col :span="12">
<el-form-item label="超市仓库" prop="warehouseId">
<el-select v-model="baseForm.warehouseId" placeholder="请选择超市仓库" clearable style="width: 100%;">
@ -131,18 +128,10 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系人" prop="userId">
<el-select v-model="baseForm.userId" placeholder="请选择联系人" style="width: 100%;" clearable @change="chosenUser">
<el-option v-for="item in userOptions"
:key="item.userId"
:label="item.nickName"
:value="item.userId"
></el-option>
</el-select>
<el-form-item label="联系人" prop="userName">
<el-input v-model="baseForm.userName" placeholder="请输入联系人" maxlength="30" clearable/>
</el-form-item>
</el-col>
</el-row>
<el-row>
</el-col>
<el-col :span="12">
<el-form-item label="联系电话" prop="mobile">
<el-input v-model="baseForm.mobile" placeholder="请输入联系电话" maxlength="11" clearable
@ -153,11 +142,8 @@
<el-form-item label="超市地址" prop="address">
<el-input v-model="baseForm.address" placeholder="请输入超市地址" maxlength="30" clearable/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
</el-col>
<!-- <el-col :span="12">
<el-form-item label="用户类别" prop="userType">
<el-select v-model="baseForm.userType" style="width: 100%" clearable>
<el-option
@ -174,10 +160,7 @@
<el-input v-model="baseForm.deliveryCost" placeholder="请输入配送费" maxlength="30" clearable
@input="(v)=>(baseForm.deliveryCost=v.replace(/[^\d]/g,''))"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
</el-col> -->
<el-col :span="12">
<el-form-item label="线上超市模式" prop="appSaleMode">
<el-select v-model="baseForm.appSaleMode" style="width: 100%" clearable>
@ -191,9 +174,7 @@
<el-input v-model="baseForm.minDeliveryTime" placeholder="请输入配最少配送时间" maxlength="30" clearable
@input="(v)=>(baseForm.minDeliveryTime=v.replace(/[^\d]/g,''))"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
</el-col>
<el-col :span="12">
<el-form-item label="选择时间间隔(分钟)" prop="selectTimeInterval">
<el-select v-model="baseForm.selectTimeInterval" style="width: 100%" clearable>
@ -209,9 +190,7 @@
<el-input v-model="baseForm.refundLimitTime" placeholder="请输入可退单时间(分钟)" maxlength="30" clearable
@input="(v)=>(baseForm.refundLimitTime=v.replace(/[^\d]/g,''))"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
</el-col>
<el-col :span="12">
<el-form-item label="流水号前缀" prop="mealCode">
<el-input v-model="baseForm.mealCode" placeholder="请输入流水号前缀" maxlength="30" clearable
@ -225,9 +204,7 @@
<el-option label="配送" value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
</el-col>
<el-col :span="12">
<el-form-item label="是否关联出入库" prop="ifRelateDrp">
<el-switch
@ -238,14 +215,9 @@
:inactive-value="2">
</el-switch>
</el-form-item>
</el-col>
</el-row>
<el-row>
</el-col>
<el-col :span="12">
<el-form-item label="图片">
<el-form-item label="超市图片">
<el-upload
:http-request="
(obj) => imgUpLoad(obj, 'fileUrl')
@ -271,7 +243,7 @@
</el-form>
</el-tab-pane>
<!-- 营业设置 -->
<!-- <el-tab-pane label="营业设置" name="paySetting" style="height: 600px;overflow-y: auto;">
<!-- <el-tab-pane label="营业设置" name="paySetting" style="height: 550px;overflow-y: auto;">
<div style="width: 100%;height: 400px;display: flex;align-items: center;justify-content: center;">暂无数据</div>
</el-tab-pane> -->
</el-tabs>

View File

@ -1,16 +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="areaId">
<el-cascader v-model="queryParams.areaId"
:options="treeAreaOptions" :filterable="true" style="width: 100%;" :show-all-levels="false"
:props="{
emitPath: false,// falseid
checkStrictly: false,//
value:'id',label:'label'
}" clearable collapse-tags>
</el-cascader>
</el-form-item>
<el-form-item label="单位名称" prop="unitName">
<el-input
v-model="queryParams.unitName"
@ -19,8 +9,7 @@
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
</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>
@ -46,16 +35,16 @@
<span>{{(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1}}</span>
</template>
</el-table-column>
<el-table-column label="所属区域" align="center" key="areaName" prop="areaName" :show-overflow-tooltip="true" />
<el-table-column label="计量单位名称" align="center" key="unitName" prop="unitName" :show-overflow-tooltip="true" />
<!-- <el-table-column label="所属区域" align="center" key="areaName" prop="areaName" :show-overflow-tooltip="true" /> -->
<el-table-column label="计量单位名称" align="center" key="unitName" prop="unitName" :show-overflow-tooltip="true" />
<el-table-column label="单位换算(g)" align="center" key="rate" prop="rate" :show-overflow-tooltip="true" />
<el-table-column label="计量类型" align="center" key="weighType" prop="weighType" :show-overflow-tooltip="true">
<template slot-scope="scope">
<span v-if="scope.row.weighType==1">按份</span>
<span v-if="scope.row.weighType==2">称重</span>
</template>
</el-table-column>
<el-table-column label="单位换算(g)" align="center" key="rate" prop="rate" :show-overflow-tooltip="true" />
<el-table-column label="操作" align="center" width="180" class-name="small-padding fixed-width">
<el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
@ -82,16 +71,6 @@
<!-- 添加或修改参数配置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="110px">
<el-form-item label="所属区域" prop="areaId">
<el-cascader v-model="form.areaId"
:options="treeAreaOptions" :filterable="true" style="width: 100%;" :show-all-levels="false"
:props="{
emitPath: false,// falseid
checkStrictly: false,//
value:'id',label:'label'
}" clearable>
</el-cascader>
</el-form-item>
<el-form-item label="计量单位名称" prop="unitName">
<el-input v-model="form.unitName" placeholder="请输入计量单位名称" maxlength="10" />
</el-form-item>
@ -102,11 +81,7 @@
<el-radio-group v-model="form.weighType">
<el-radio :label="1">按份</el-radio>
<el-radio :label="2">称重</el-radio>
</el-radio-group>
<!-- <el-select v-model="form.weighType" placeholder="请选择计量类型" style="width: 100%" @change="getDrpUnitList">
<el-option label="按份" value="1" />
<el-option label="称重" value="2" />
</el-select> -->
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -117,8 +92,7 @@
</div>
</template>
<script>
import { systemAreaTreeApi } from "@/api/base/area";
<script>
import { drpUnitPageListApi,addDrpUnitApi, editDrpUnitApi, removeDrpUnitApi } from "@/api/superStore/superUitId";
export default {
name: "",
@ -148,12 +122,10 @@
queryParams: {
pageNum: 1,
pageSize: 10,
unitName: undefined,
areaId: undefined
unitName: undefined,
},
//
form: {
areaId:null,
form: {
unitName:"",
rate:"0",
weighType: 1,
@ -172,16 +144,10 @@
}
};
},
created() {
this.getAreaTreeData();
created() {
this.getList();
},
methods: {
getAreaTreeData() {
systemAreaTreeApi({}).then((response) => {
this.treeAreaOptions = response.data;
});
},
methods: {
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
@ -198,8 +164,7 @@
let param = {
"pageNum": this.queryParams.pageNum,
"pageSize": this.queryParams.pageSize,
"unitName": this.queryParams.unitName,
"areaId": this.queryParams.areaId
"unitName": this.queryParams.unitName
}
drpUnitPageListApi(param).then(response => {
this.tableListData = response.rows;
@ -216,8 +181,7 @@
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
this.form = Object.assign({}, row)
this.$set(this.form,"areaId",row.areaId)
this.form = Object.assign({}, row)
this.$set(this.form,"unitName",row.unitName)
this.$set(this.form,"rate",row.rate)
this.$set(this.form,"weighType",Number(row.weighType))