测试问题修改9

This commit is contained in:
zzyuan 2025-07-03 17:45:48 +08:00
parent 42982a594e
commit 78368dbd99
24 changed files with 400 additions and 60 deletions

View File

@ -555,6 +555,7 @@
import { updateAccRechargeSingleApi,checkAccRechargeBatchApi,updateAccRechargeBatchApi } from "@/api/accountCenter/butie";
import { rechargeAccWalletApi,withdrawAccWalletApi } from "@/api/accountCenter/manager";
import { accCardApi } from "@/api/accountCenter/card";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type'],
@ -695,6 +696,9 @@
accInfoPageApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.tableListData.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
accInfoSumPageApi(param).then(response => {
this.tableListData.push(response.data)
});

View File

@ -129,6 +129,7 @@
<script>
import { deptTreeSelect } from '@/api/system/user'
import { accInfoOperationListApi } from "@/api/accountCenter/traderecords";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: [],
@ -271,6 +272,9 @@
accInfoOperationListApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.tableListData.forEach(item=>{
this.$set(item,"phone",decryptWithSM4(item.phone))
})
this.loading = false;
});
},

View File

@ -323,7 +323,7 @@
<script>
import { deptTreeSelect } from '@/api/system/user'
import { accInfoPageApi, accInfoSumPageApi,rechargeAccWalletApi,withdrawAccWalletApi,clearAccWalletApi } from "@/api/accountCenter/manager";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type'],
@ -432,6 +432,9 @@
accInfoPageApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.tableListData.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
accInfoSumPageApi(param).then(response => {
this.tableListData.push(response.data)
});

View File

@ -89,6 +89,7 @@
<script>
import { deptTreeSelect } from '@/api/system/user'
import { accInfoWalletHistoryApi } from "@/api/accountCenter/traderecords";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type'],
@ -216,6 +217,9 @@
accInfoWalletHistoryApi(param).then(response => {
this.tableListData2 = response.rows;
this.total2 = Number(response.total);
this.tableListData2.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
// if(this.tableListData2.length>0){
// this.tableListData2.push(response.data.sumVO)
// }

View File

@ -110,9 +110,9 @@
</template>
<script>
import { deptTreeSelect } from '@/api/system/user'
import { repealSubsidyRechargeApi,batchRepealSubsidyRechargeApi } from "@/api/accountCenter/butie";
import { deptTreeSelect } from '@/api/system/user'
import { accInfoWalletHistoryApi } from "@/api/accountCenter/traderecords";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type'],
@ -234,6 +234,9 @@
accInfoWalletHistoryApi(param).then(response => {
this.tableListData1 = response.rows;
this.total1 = Number(response.total);
this.tableListData1.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
// if(this.tableListData1.length>0){
// this.tableListData1.push(response.data.sumVO)
// }

View File

@ -388,6 +388,7 @@
import { deptTreeSelect } from '@/api/system/user'
import { accSubsidyRechargePageApi,repealSubsidyRechargeApi,batchRepealSubsidyRechargeApi,accSubsidyClearPageApi,accSubsidyRepealPageApi,accSubsidyHandReceivePageApi,accSubsidyHandReceiveBatchGrantApi,batchAccSubsidyRepealApi } from "@/api/accountCenter/butie";
import { accInfoWalletHistoryApi } from "@/api/accountCenter/traderecords";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type'],
@ -590,6 +591,9 @@ export default {
accInfoWalletHistoryApi(param).then(response => {
this.tableListData1 = response.rows;
this.total1 = Number(response.total);
this.tableListData1.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
// if(this.tableListData1.length>0){
// this.tableListData1.push(response.data.sumVO)
// }

View File

@ -81,6 +81,7 @@
<script>
import { deptTreeSelect } from '@/api/system/user'
import { orderHistoryListApi } from "@/api/accountCenter/traderecords";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type'],
@ -209,6 +210,9 @@
orderHistoryListApi(param).then(response => {
this.tableListData2 = response.rows;
this.total2 = Number(response.total);
this.tableListData2.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
// if(this.tableListData2.length>0){
// this.tableListData2.push(response.data.sumVO)
// }

View File

@ -529,7 +529,7 @@
import { deptTreeSelect } from '@/api/system/user'
import { accInfoPageApi, accInfoSumPageApi } from "@/api/accountCenter/manager";
import { updateAccRechargeSingleApi,checkAccRechargeBatchApi,updateAccRechargeBatchApi,clearAccRechargeSingleApi,checkClearAccRechargeBatchApi,clearAccRechargeBatchApi } from "@/api/accountCenter/butie";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type'],
@ -656,6 +656,9 @@
accInfoPageApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.tableListData.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
this.loading = false;
});
},

View File

@ -387,6 +387,7 @@
<script>
import { deptTreeSelect } from '@/api/system/user'
import { accSubsidyRechargePageApi,repealSubsidyRechargeApi,batchRepealSubsidyRechargeApi,accSubsidyClearPageApi,accSubsidyRepealPageApi,accSubsidyHandReceivePageApi,accSubsidyHandReceiveBatchGrantApi,batchAccSubsidyRepealApi } from "@/api/accountCenter/butie";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type'],
@ -591,6 +592,9 @@
accSubsidyRechargePageApi(param).then(response => {
this.tableListData1 = response.rows;
this.total1 = Number(response.total);
this.tableListData1.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
// if(this.tableListData1.length>0){
// this.tableListData1.push(response.data.sumVO)
// }
@ -650,6 +654,9 @@
accSubsidyClearPageApi(param).then(response => {
this.tableListData2 = response.rows;
this.total2 = Number(response.total);
this.tableListData2.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
// if(this.tableListData2.length>0){
// this.tableListData2.push(response.data.sumVO)
// }
@ -674,6 +681,9 @@
accSubsidyRepealPageApi(param).then(response => {
this.tableListData3 = response.data.pageVO.records;
this.total3 = Number(response.data.pageVO.total);
this.tableListData3.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
if(this.tableListData3.length>0){
this.tableListData3.push(response.data.sumVO)
}
@ -698,6 +708,9 @@
accSubsidyHandReceivePageApi(param).then(response => {
this.tableListData4 = response.data.resultPage.records;
this.total4 = Number(response.data.resultPage.total);
this.tableListData4.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
if(this.tableListData4.length>0){
this.tableListData4.push(response.data.totalLine)
}

View File

@ -390,7 +390,8 @@
submitForm: function() {
this.$refs["baseForm"].validate(valid => {//
if (valid) {
if(this.rangeTime.length==0){
console.log(this.rangeTime)
if(this.rangeTime){
this.baseForm.bizStartTime=this.rangeTime[0]
this.baseForm.bizEndTime=this.rangeTime[1]
}else{

View File

@ -631,12 +631,16 @@ export default {
},
/** 提交按钮 */
submitForm: function() {
console.log(this.baseForm)
console.log(this.rangeTime)
console.log(this.baseForm)
this.$refs["baseForm"].validate(valid => {//
if (valid) {
this.baseForm.bizStartTime=this.rangeTime[0]
this.baseForm.bizEndTime=this.rangeTime[1]
if(this.rangeTime){
this.baseForm.bizStartTime=this.rangeTime[0]
this.baseForm.bizEndTime=this.rangeTime[1]
}else{
this.baseForm.bizStartTime=""
this.baseForm.bizEndTime=""
}
this.baseForm.basicStallMealtimeList = this.mealtimeList
let param = this.baseForm
if (this.stallId != "") {

View File

@ -216,7 +216,7 @@ export default {
computed: {
//1
uploadDisabled() {
return this.checkUrlList.length > 1
return this.checkUrlList.length > 0
},
},
methods: {

View File

@ -140,7 +140,7 @@ export default {
queryParams: {
pageNum: 1,
pageSize: 10,
itemDescription: undefined,
itemDescription: "",
},
//
form: {},
@ -169,6 +169,11 @@ export default {
},
/** 重置按钮操作 */
resetQuery() {
this.queryParams = {
pageNum: 1,
pageSize: 10,
itemDescription: "",
}
this.resetForm("queryForm");
this.handleQuery();
},

View File

@ -145,7 +145,7 @@
<script>
import { getCanteenByAreaApi } from "@/api/base/stall";
import { getPlaintByPageApi,replyComplaintApi } from "@/api/base/mobile";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: [],
@ -278,6 +278,9 @@
getPlaintByPageApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.tableListData.forEach(item=>{
this.$set(item,"contactTel",decryptWithSM4(item.contactTel))
})
this.loading = false;
});
},

View File

@ -18,7 +18,7 @@
<el-input v-model="queryParams.custSearchInfo" placeholder="请输入用户姓名,编号,手机号" maxlength="20" clearable style="width: 220px"/>
</el-form-item>
<el-form-item label="订单号">
<el-input v-model.number="queryParams.orderId" placeholder="请输入订单号" maxlength="20" clearable style="width: 220px"/>
<el-input v-model.number="queryParams.orderId" placeholder="请输入订单号" maxlength="20" clearable style="width: 220px" @input="(v)=>(queryParams.orderId=v.replace(/[^\d]/g,''))"/>
</el-form-item>
<!-- <el-form-item label="交易号">
<el-input v-model="queryParams.tradeNo" placeholder="请输入交易号" maxlength="20" clearable style="width: 220px"/>
@ -514,7 +514,7 @@
import { deptTreeSelect } from '@/api/system/user'
import { systemAreaTreeApi,getCanteenByAreaApi,getStallByCanteenApi } from "@/api/base/stall";
import { orderPageListApi,refundOrderPartApi,refundOrderApi,writeOffOrderApi,syncOrderPayStateApi,getEvaluaOrderDetailApi } from "@/api/order/offline";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type','sm_order_type','sm_order_status','sm_order_pay_type'],
@ -709,6 +709,9 @@
}
orderPageListApi(param).then(response => {
this.tableListData = response.rows;
this.tableListData.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
this.total = Number(response.total);
this.loading = false;
});

View File

@ -18,7 +18,7 @@
<el-input v-model="queryParams.custSearchInfo" placeholder="请输入用户姓名,编号,手机号" maxlength="20" clearable style="width: 220px"/>
</el-form-item>
<el-form-item label="订单号">
<el-input v-model.number="queryParams.orderId" placeholder="请输入订单号" maxlength="20" clearable style="width: 220px"/>
<el-input v-model.number="queryParams.orderId" placeholder="请输入订单号" maxlength="20" clearable style="width: 220px" @input="(v)=>(queryParams.orderId=v.replace(/[^\d]/g,''))"/>
</el-form-item>
<el-form-item label="菜品名称">
<el-input v-model="queryParams.goodsSearchInfo" placeholder="请输入菜品名称" maxlength="20" clearable style="width: 220px"/>
@ -482,9 +482,8 @@
<script>
import { deptTreeSelect } from '@/api/system/user'
import { systemAreaTreeApi,getCanteenByAreaApi,getStallByCanteenApi } from "@/api/base/stall";
import { orderPageListApi,refundOrderPartApi,refundOrderApi,writeOffOrderApi,syncOrderPayStateApi,getEvaluaOrderDetailApi } from "@/api/order/reserve";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type','sm_order_type','sm_order_status','sm_order_pay_type'],
@ -679,6 +678,9 @@ export default {
}
orderPageListApi(param).then(response => {
this.tableListData = response.rows;
this.tableListData.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
this.total = Number(response.total);
this.loading = false;
});

View File

@ -48,7 +48,7 @@
<el-input v-model="queryParams.custSearchInfo" placeholder="请输入用户姓名,编号,手机号" maxlength="20" clearable style="width: 220px"/>
</el-form-item>
<el-form-item label="订单号">
<el-input v-model="queryParams.orderId" placeholder="请输入订单号" maxlength="20" clearable style="width: 220px"/>
<el-input v-model="queryParams.orderId" placeholder="请输入订单号" maxlength="20" clearable style="width: 220px" @input="(v)=>(queryParams.orderId=v.replace(/[^\d]/g,''))"/>
</el-form-item>
<!-- <el-form-item label="商品名称">
<el-input v-model="queryParams.goodsSearchInfo" placeholder="请输入商品名称" maxlength="20" clearable style="width: 220px"/>
@ -369,6 +369,7 @@
import { deptTreeSelect } from '@/api/system/user'
import { systemAreaTreeApi } from "@/api/base/stall";
import { getSupermarketByAreaApi,orderPageListApi,refundOrderPartApi,refundOrderApi,writeOffOrderApi,syncOrderPayStateApi } from "@/api/superStore/superOrder";
import { decryptWithSM4,encryptWithSM4 } from '@/utils/sm';
export default {
name: "",
dicts: ['sys_user_type','sm_order_type','sm_order_status','sm_order_pay_type'],
@ -533,6 +534,9 @@
orderPageListApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.tableListData.forEach(item=>{
this.$set(item,"phoneNumber",decryptWithSM4(item.phoneNumber))
})
this.loading = false;
});
},

View File

@ -9,7 +9,7 @@
<span class="item-label">健康证临期提醒设置:</span>
<el-input
v-model.number="staff_health_cert_left_day_reminder" style="width: 200px;margin-left: 50px;"
auto-complete="off" placeholder="30" maxlength="9"
auto-complete="off" placeholder="30" maxlength="9" @input="(v)=>(staff_health_cert_left_day_reminder=v.replace(/[^\d]/g,''))"
></el-input>
<span class="item-unit"></span>
</div>
@ -29,7 +29,7 @@
<span class="item-label">晨检视频存储时长设置:</span>
<el-input
v-model.number="staff_morning_check_video_save_day" style="width: 200px;margin-left: 50px;"
auto-complete="off" maxlength="9" placeholder="30"
auto-complete="off" maxlength="9" placeholder="30" @input="(v)=>(staff_morning_check_video_save_day=v.replace(/[^\d]/g,''))"
></el-input>
<span class="item-unit"></span>
</div>
@ -42,7 +42,7 @@
<span class="item-label">人员违规环境报警记录保存时长:</span>
<el-input
v-model.number="staff_illegal_warning_record_save_day" style="width: 200px;margin-left: 50px;"
auto-complete="off" maxlength="9"
auto-complete="off" maxlength="9" @input="(v)=>(staff_illegal_warning_record_save_day=v.replace(/[^\d]/g,''))"
placeholder="365"
></el-input>
<span class="item-unit"></span>

View File

@ -22,7 +22,7 @@
<span class="item-label">人脸识别相似度:</span>
<el-input
v-model.number="camera_face_recognition_similarity" style="width: 200px;margin-left: 50px;"
auto-complete="off" maxlength="9"
auto-complete="off" maxlength="9" @input="(v)=>(camera_face_recognition_similarity=v.replace(/[^\d]/g,''))"
placeholder="70"
></el-input>
<span class="item-unit">%</span>
@ -60,7 +60,7 @@
<el-table-column label="抓拍频率" align="center" prop="frequency" :show-overflow-tooltip="true">
<template slot-scope="scope">
<el-input v-model.number="scope.row.frequency" style="width: 60%;" maxlength="9"
auto-complete="off" placeholder="60"></el-input><span class="item-unit"></span>
auto-complete="off" placeholder="60" @input="(v)=>(scope.row.frequency=v.replace(/[^\d]/g,''))"></el-input><span class="item-unit"></span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="300" class-name="small-padding fixed-width">

View File

@ -10,7 +10,7 @@
<span class="item-label">环境监控统计频率:</span>
<el-input
v-model.number="env_monitor_statis_frequency" style="width: 200px;margin-left: 50px;"
auto-complete="off" maxlength="9"
auto-complete="off" maxlength="9" @input="(v)=>(env_monitor_statis_frequency=v.replace(/[^\d]/g,''))"
placeholder="60"
></el-input>
<span class="item-unit"></span>
@ -29,7 +29,7 @@
<span>高于</span>
<el-input
v-model.number="item.measureMaxValue" style="width: 200px;margin-left: 20px;"
auto-complete="off" maxlength="9"
auto-complete="off" maxlength="9" @input="(v)=>(item.measureMaxValue=v.replace(/[^\d]/g,''))"
placeholder="22"
></el-input>
<span class="item-unit">{{item.measureUnit}}</span>
@ -39,7 +39,7 @@
<span>低于</span>
<el-input
v-model.number="item.measureMinValue" style="width: 200px;margin-left: 20px;"
auto-complete="off" maxlength="9"
auto-complete="off" maxlength="9" @input="(v)=>(item.measureMinValue=v.replace(/[^\d]/g,''))"
placeholder="16"
></el-input>
<span class="item-unit">{{item.measureUnit}}</span>

View File

@ -152,6 +152,22 @@
设备参数
</div>
</el-col>
<el-col :span="12">
<el-form-item label="设备Ip:" prop="ip">
<el-input v-model="form.ip"
placeholder="请输入设备Ip"
maxlength="30"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="设备通道号:" prop="channel">
<el-input v-model="form.channel"
placeholder="请输入设备通道号"
maxlength="30"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
@ -209,13 +225,25 @@ export default {
],
canteenId: [
{ required: true, message: "所属食堂不能为空", trigger: "change" }
],
deviceNo: [
{ required: true, message: "设备编号不能为空", trigger: "blur" }
],
// canteenName: [
// { required: true, message: "", trigger: "blur" }
// ],
// dictType: [
// { required: true, message: "", trigger: "blur" }
// ]
deviceName: [
{ required: true, message: "设备名称不能为空", trigger: "blur" }
],
deviceSn: [
{ required: true, message: "设备SN码不能为空", trigger: "blur" }
],
subPlace: [
{ required: true, message: "设备位置不能为空", trigger: "change" }
],
ip: [
{ required: true, message: "设备Ip不能为空", trigger: "blur" }
],
channel: [
{ required: true, message: "设备通道号不能为空", trigger: "blur" }
]
}
};
},
@ -343,7 +371,7 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
this.$modal.confirm('是否确认删除数据项?').then(function() {
return delKitchenDeviceApi({deviceId:row.deviceId});
return delKitchenDeviceApi({deviceIds:[row.deviceId]});
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");

View File

@ -156,9 +156,9 @@ export default {
//
queryParams: {
pageNum: 1,
pageSize: 10,
canteenName: undefined,
areaNameStr: undefined,
pageSize: 10,
areaId: undefined,
canteenId: undefined,
},
activeName:"1",
@ -196,7 +196,7 @@ export default {
}
getCanteenByAreaApi(param).then((response) => {
this.canteenOptions=response.rows||[]
this.queryParams.canteenId=null
this.$set(this.queryParams,"canteenId",null)
});
},
/** 搜索按钮操作 */
@ -206,6 +206,7 @@ export default {
},
/** 重置按钮操作 */
resetQuery() {
this.canteenOptions= []
this.resetForm("queryForm");
this.handleQuery();
},
@ -216,12 +217,11 @@ export default {
/** 查询列表 */
getList() {
this.loading = true;
let param = {
"deviceType":this.activeName,
"keyWord":this.queryParams.keyWord,
"deviceNetworkState":this.queryParams.deviceNetworkState,
let param = {
"pageNum": this.queryParams.pageNum,
"pageSize": this.queryParams.pageSize,
"areaId": this.queryParams.areaId,
"canteenId": this.queryParams.canteenId,
}
getKitchenSubPlaceListApi(param).then(response => {
this.tableListData = response.rows;

View File

@ -100,6 +100,12 @@
</el-table-column>
<el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdateAuth(scope.row)"
>权限</el-button>
<el-button
size="mini"
type="text"
@ -370,11 +376,11 @@
<el-button type="primary" @click="submitForm" :disabled="loadingBtn"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</el-dialog>
<!-- 查看权限 -->
<el-dialog :title="title" :visible.sync="open2" width="900px" append-to-body>
<div style="width: 100%;height: 300px;overflow-y: auto;">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-form ref="form" :model="form" :rules="rules" label-width="130px">
<el-row>
<el-col :span="24">
<div style="font-size: 18px;font-weight: bold;border-left: 4px solid #1890FF;padding-left: 4px;margin-bottom: 20px;">
@ -421,7 +427,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="留样称权限:" prop="simpleCabinetStatus2">
<el-switch v-model="simpleCabinetStatus2"
<el-switch v-model="simpleCabinetStatus2" disabled
active-text="开启" inactive-text="关闭"
:active-value="1" :inactive-value="2">
</el-switch>
@ -429,7 +435,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="智能出入库秤权限:" prop="simpleCabinetStatus3">
<el-switch v-model="simpleCabinetStatus3"
<el-switch v-model="simpleCabinetStatus3" disabled
active-text="开启" inactive-text="关闭"
:active-value="1" :inactive-value="2">
</el-switch>
@ -443,6 +449,98 @@
<el-button @click="open2=false"> </el-button>
</div>
</el-dialog>
<!-- 分配权限 -->
<el-dialog :title="title" :visible.sync="open3" width="900px" append-to-body>
<div style="width: 100%;height: 300px;overflow-y: auto;">
<el-form ref="form" :model="form" :rules="rules" label-width="130px">
<el-row>
<el-col :span="24">
<div style="font-size: 18px;font-weight: bold;border-left: 4px solid #1890FF;padding-left: 4px;margin-bottom: 20px;">
出入权限
</div>
</el-col>
</el-row>
<el-row :span="24" v-for="(item,index) in accessAuthorityList" :key="index">
<el-col :span="8">
<el-form-item label="关联门禁设备:" prop="deviceId">
<el-select v-model="item.deviceId" style="width: 100%;" placeholder="请选择关联门禁设备" @change="chosenDevice">
<el-option
v-for="items in devicesOptions"
:disabled="items.disabled"
:key="items.deviceId"
:label="items.deviceName"
:value="items.deviceId"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="设备位置:" prop="location">
<el-input v-model="item.location"
placeholder="设备位置"
maxlength="30" disabled
/>
</el-form-item>
</el-col>
<el-col :span="8" style="display: flex;align-items: center;height: 40px;padding-left: 20px;">
<el-button
type="primary"
plain
size="mini" v-if="index==accessAuthorityList.length-1"
@click="addDevice"
>新增</el-button>
<el-button
type="info"
plain
size="mini" v-if="accessAuthorityList.length>1"
@click="delDevice(index)"
>删除</el-button>
<el-button
type="info"
plain
size="mini" v-if="accessAuthorityList.length==1"
@click="clearDevice(index)"
>清空</el-button>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div style="font-size: 18px;font-weight: bold;border-left: 4px solid #1890FF;padding-left: 4px;margin-bottom: 20px;">
留样柜权限
</div>
</el-col>
<el-col :span="12">
<el-form-item label="留样柜权限:" prop="simpleCabinetStatus">
<el-switch v-model="simpleCabinetStatus"
active-text="开启" inactive-text="关闭"
:active-value="1" :inactive-value="2">
</el-switch>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="留样称权限:" prop="simpleCabinetStatus2">
<el-switch v-model="simpleCabinetStatus2"
active-text="开启" inactive-text="关闭"
:active-value="1" :inactive-value="2">
</el-switch>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="智能出入库秤权限:" prop="simpleCabinetStatus3">
<el-switch v-model="simpleCabinetStatus3"
active-text="开启" inactive-text="关闭"
:active-value="1" :inactive-value="2">
</el-switch>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFormAuth" :disabled="loadingBtn"> </el-button>
<el-button @click="open3=false"> </el-button>
</div>
</el-dialog>
<el-dialog :visible.sync="dialogVisible" width="700px">
<img style="width: 100%;height: 100%;" :src="dialogImageUrl" alt="">
@ -488,6 +586,7 @@ export default {
//
open: false,
open2: false,
open3: false,
//
queryParams: {
pageNum: 1,
@ -722,11 +821,53 @@ export default {
})
}
}
console.log(this.accessAuthorityList)
this.open = true;
this.title = "修改";
});
},
handleUpdateAuth(row){
this.reset();
getStaffInfoApi(row.staffId).then(response => {
this.form = response.data;
if(this.form.accessAuthorityList&&this.form.accessAuthorityList.length>0){
console.log(this.form.accessAuthorityList)
let index = this.form.accessAuthorityList.findIndex(v=>v.deviceType==3)
if(index==-1){
this.form.accessAuthorityList.forEach(item=>{
if(item.deviceType==7){
this.simpleCabinetStatus = Number(item.privilegeValue)
}
if(item.deviceType==21){
this.simpleCabinetStatus2 = Number(item.privilegeValue)
}
if(item.deviceType==51){
this.simpleCabinetStatus3 = Number(item.privilegeValue)
}
})
this.simpleCabinetStatus = Number(this.form.accessAuthorityList[0].privilegeValue)
}else{
this.accessAuthorityList = []
this.form.accessAuthorityList.forEach(item=>{
if(item.deviceType==3){
this.accessAuthorityList.push(item)
this.$forceUpdate()
}
if(item.deviceType==7){
this.simpleCabinetStatus = Number(item.privilegeValue)
}
if(item.deviceType==21){
this.simpleCabinetStatus2 = Number(item.privilegeValue)
}
if(item.deviceType==51){
this.simpleCabinetStatus3 = Number(item.privilegeValue)
}
})
}
}
this.open3 = true;
this.title = "分配权限";
});
},
//
cancel() {
this.open = false;
@ -795,7 +936,10 @@ export default {
deviceId:"",
location:""
})
}
this.setDisabled()
}else{
this.$modal.msgError("已达到设备上限");
}
},
//
delDevice(index){
@ -890,6 +1034,49 @@ export default {
}
});
},
submitFormAuth(){
let arr = [
{
deviceId:"",
deviceName:"",
deviceType:7,
privilegeValue:this.simpleCabinetStatus,
location:""
},
{
deviceId:"",
deviceName:"",
deviceType:21,
privilegeValue:this.simpleCabinetStatus2,
location:""
},
{
deviceId:"",
deviceName:"",
deviceType:51,
privilegeValue:this.simpleCabinetStatus3,
location:""
}
]
let arr2 = this.accessAuthorityList.concat(arr)
this.form.accessAuthorityList=[]
arr2.forEach(item=>{
if(item.deviceType&&item.deviceType!=""){
this.form.accessAuthorityList.push(item)
}
})
console.log(this.accessAuthorityList)
console.log(this.form)
let param = {
...this.form
}
editKitchenStaffApi(param).then(response => {
this.$modal.msgSuccess("修改成功");
this.open3 = false;
this.getList();
});
},
/** 删除按钮操作 */
handleDelete(row) {
this.$modal.confirm('是否确认删除数据项?').then(function() {

View File

@ -10,6 +10,20 @@
<el-option label="夜宵" value="5"></el-option>
</el-select>
</el-form-item>
<el-form-item label="日期">
<el-date-picker
v-model="dateRange"
type="datetimerange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
format="yyyy-MM-dd HH:mm:ss" style="width: 400px"
:default-time="['00:00:00', '23:59:59']"
:picker-options="pickerOptions" >
</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>
@ -45,17 +59,7 @@
: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>
<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>
@ -88,6 +92,34 @@ export default {
canteenName: undefined,
areaNameStr: undefined,
},
dateRange:[],
pickerOptions: {
shortcuts: [{
text: '最近一周',
onClick(picker) {
const start = new Date();
const end = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 6);
picker.$emit('pick', [start, end]);
}
},{
text: '最近一个月',
onClick(picker) {
const start = new Date();
const end = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit('pick', [start, end]);
}
},{
text: '最近三个月',
onClick(picker) {
const start = new Date();
const end = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 91);
picker.$emit('pick', [start, end]);
}
}]
},
};
},
created() {
@ -101,6 +133,7 @@ export default {
},
/** 重置按钮操作 */
resetQuery() {
this.dateRange=[]
this.resetForm("queryForm");
this.handleQuery();
},
@ -112,12 +145,40 @@ export default {
"pageNum": this.queryParams.pageNum,
"pageSize": this.queryParams.pageSize,
}
if(this.dateRange.length>0){
param.startDateTime = this.formatDateTime(this.dateRange[0])
param.endDateTime = this.formatDateTime(this.dateRange[1])
}else{
param.startDateTime = ""
param.endDateTime = ""
}
getKitchenWasteCountApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.loading = false;
});
}
},
//
formatDate(date) {
// YYYY-MM-DD
date = new Date(date)
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0'); // 0
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
},
//
formatDateTime(date) {
// YYYY-MM-DD
date = new Date(date)
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0'); // 0
const day = String(date.getDate()).padStart(2, '0');
const hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours()
const minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()
const seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}
}
};
</script>