智慧后厨接口对接问题修改

This commit is contained in:
zzyuan 2025-06-19 17:53:35 +08:00
parent 3bd3157795
commit 04be56dbdf
10 changed files with 190 additions and 157 deletions

View File

@ -0,0 +1,30 @@
import request from '@/utils/request'
// 查询厨房后场设备传感器记录列表
export function getKitchenDeviceSensorRecordListApi(data) {
return request({
url: '/smart-canteen/kitchen_device_sensor_record/list',
method: 'post',
data: data,
params:{
pageNum:data.pageNum,
pageSize:data.pageSize
}
})
}
// 查询留样柜操作记录列表
export function getKitchenSampleCabinetRecordListApi(data) {
return request({
url: '/smart-canteen/kitchen_sample_cabinet_record/list',
method: 'post',
data: data,
params:{
pageNum:data.pageNum,
pageSize:data.pageSize
}
})
}

View File

@ -24,4 +24,16 @@ export function getKitchenWasteCountApi(data) {
pageSize:data.pageSize
}
})
}
}
// 查询厨房废弃物处置列表
export function getKitchenWasteDealApi(data) {
return request({
url: '/smart-canteen/kitchen_waste_deal/list',
method: 'post',
data: data,
params:{
pageNum:data.pageNum,
pageSize:data.pageSize
}
})
}

View File

@ -8,8 +8,8 @@
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="关键字" prop="searchValue">
<el-input v-model="queryParams.searchValue" placeholder="请输入设备名称,编号" maxlength="20" clearable style="width: 240px"/>
<el-form-item label="关键字" prop="keyWord">
<el-input v-model="queryParams.keyWord" placeholder="请输入设备名称,编号" maxlength="20" clearable style="width: 240px"/>
</el-form-item>
<el-form-item label="设备状态" prop="deviceNetworkState">
<el-select v-model="queryParams.deviceNetworkState" style="width: 240px" clearable>
@ -237,6 +237,7 @@ export default {
this.loading = true;
let param = {
"deviceType":this.activeName,
"keyWord":this.queryParams.keyWord,
"deviceNetworkState":this.queryParams.deviceNetworkState,
"pageNum": this.queryParams.pageNum,
"pageSize": this.queryParams.pageSize,
@ -292,10 +293,9 @@ export default {
});
},
/** 删除按钮操作 */
handleDelete(row) {
const dictIds = row.dictId || this.ids;
handleDelete(row) {
this.$modal.confirm('是否确认删除数据项?').then(function() {
// return delType(dictIds);
return delKitchenDeviceApi({deviceId:row.deviceId});
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");

View File

@ -1,8 +1,8 @@
<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="searchValue">
<el-input v-model="queryParams.searchValue" placeholder="请输入设备名称,编号" maxlength="20" clearable style="width: 240px"/>
<el-form-item label="关键字" prop="keyWord">
<el-input v-model="queryParams.keyWord" placeholder="请输入设备名称,编号" maxlength="20" clearable style="width: 240px"/>
</el-form-item>
<el-form-item label="设备类型" prop="deviceType">
<el-select v-model="queryParams.deviceType" style="width: 100%;" placeholder="请选择设备类型">
@ -87,29 +87,14 @@ export default {
total: 0,
//
tableListData: [],
deviceTypeList: [],
//
title: "",
//
open: false,
deviceTypeList: [],
//
queryParams: {
pageNum: 1,
pageSize: 10,
deviceType: undefined,
searchValue: undefined
},
//
form: {},
//
rules: {
// canteenName: [
// { required: true, message: "", trigger: "blur" }
// ],
// dictType: [
// { required: true, message: "", trigger: "blur" }
// ]
}
keyWord: undefined
},
};
},
created() {
@ -147,63 +132,7 @@ export default {
this.total = Number(response.total);
this.loading = false;
});
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "新增";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
// const dictId = row.dictId || this.ids
// getType(dictId).then(response => {
// this.form = response.data;
this.open = true;
this.title = "修改";
// });
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {};
this.resetForm("form");
},
/** 提交按钮 */
submitForm: function() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.dictId != undefined) {
// updateType(this.form).then(response => {
// this.$modal.msgSuccess("");
// this.open = false;
// this.getList();
// });
} else {
// addType(this.form).then(response => {
// this.$modal.msgSuccess("");
// this.open = false;
// this.getList();
// });
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const dictIds = row.dictId || this.ids;
this.$modal.confirm('是否确认删除数据项?').then(function() {
// return delType(dictIds);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
}
}
};
</script>

View File

@ -2,24 +2,22 @@
<div class="app-container">
<div style="width: 100%;">
<el-tabs v-model="activeName" type="card" @tab-click="handleTabClick">
<el-tab-pane label="环境报警记录" name="1"></el-tab-pane>
<el-tab-pane label="门禁报警记录" name="2"></el-tab-pane>
<el-tab-pane label="监控报警记录" name="3"></el-tab-pane>
<el-tab-pane label="环境报警记录" name="5"></el-tab-pane>
<el-tab-pane label="门禁报警记录" name="1"></el-tab-pane>
<el-tab-pane label="监控报警记录" name="6"></el-tab-pane>
</el-tabs>
</div>
</div>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="关键字" prop="searchValue">
<el-input v-model="queryParams.searchValue" placeholder="请输入设备名称,编号" maxlength="20" clearable style="width: 240px"/>
</el-form-item>
<el-form-item label="设备类型" prop="saveStatus">
<el-select v-model="queryParams.saveStatus" style="width: 240px" clearable>
<!-- <el-select v-model="queryParams.saveStatus" style="width: 240px" clearable>
<el-option label="未入柜" value="0"></el-option>
<el-option label="在柜" value="1"></el-option>
<el-option label="离柜" value="2"></el-option>
<el-option label="超时自动离柜 " value="3"></el-option>
</el-select>
</el-select> -->
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
@ -65,7 +63,7 @@
</template>
<script>
import { getPageCanteenApi } from "@/api/base/canteen";
import { getKitchenDeviceSensorRecordListApi } from "@/api/kitchen/environment";
export default {
name: "",
@ -86,6 +84,7 @@ export default {
total: 0,
//
tableListData: [],
activeName:'5',
//
title: "",
//
@ -131,12 +130,13 @@ export default {
/** 查询列表 */
getList() {
this.loading = true;
let param = {
"current": this.queryParams.pageNum,
"size": this.queryParams.pageSize,
let param = {
"deviceCategory": this.activeName,
"pageNum": this.queryParams.pageNum,
"pageSize": this.queryParams.pageSize,
}
getPageCanteenApi(param).then(response => {
this.tableListData = response.records;
getKitchenSampleCabinetRecordListApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.loading = false;
});

View File

@ -4,14 +4,14 @@
<el-form-item label="关键字" prop="searchValue">
<el-input v-model="queryParams.searchValue" placeholder="请输入设备名称,编号" maxlength="20" clearable style="width: 240px"/>
</el-form-item>
<el-form-item label="检测结果" prop="type">
<el-select v-model="queryParams.type" style="width: 240px" clearable>
<el-option label="正常" value="0"></el-option>
<el-option label="湿度过高" value="1"></el-option>
<el-option label="湿度过低" value="2"></el-option>
<el-option label="温度过高" value="3"></el-option>
<el-option label="温度过低" value="4"></el-option>
<el-option label="烟雾浓度过高" value="5"></el-option>
<el-form-item label="检测结果" prop="envSensorResultTypeList">
<el-select v-model="queryParams.envSensorResultTypeList" multiple="true" style="width: 240px" clearable>
<el-option label="正常" value="1"></el-option>
<el-option label="温度过高" value="2"></el-option>
<el-option label="温度过低" value="3"></el-option>
<el-option label="湿度过高" value="4"></el-option>
<el-option label="湿度过低" value="5"></el-option>
<el-option label="烟雾浓度过高" value="6"></el-option>
</el-select>
</el-form-item>
<el-form-item>
@ -39,8 +39,8 @@
<span>{{(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1}}</span>
</template>
</el-table-column>
<el-table-column label="设备编号" align="center" prop="devicesNum" :show-overflow-tooltip="true"/>
<el-table-column label="设备名称" align="center" prop="devicesName" :show-overflow-tooltip="true"/>
<el-table-column label="设备编号" align="center" prop="deviceNo" :show-overflow-tooltip="true"/>
<el-table-column label="设备名称" align="center" prop="deviceName" :show-overflow-tooltip="true"/>
<el-table-column label="检测食堂" align="center" prop="canteenName" :show-overflow-tooltip="true"/>
<el-table-column label="检测结果" align="center" prop="" :show-overflow-tooltip="true"/>
<el-table-column label="检测时间" align="center" prop="recordTime" :show-overflow-tooltip="true"/>
@ -71,7 +71,7 @@
</template>
<script>
import { getStaffIllegalListApi } from "@/api/kitchen/staff";
import { getKitchenDeviceSensorRecordListApi } from "@/api/kitchen/environment";
export default {
name: "",
@ -136,10 +136,11 @@ export default {
getList() {
this.loading = true;
let param = {
"searchValue": this.queryParams.searchValue,
"pageNum": this.queryParams.pageNum,
"pageSize": this.queryParams.pageSize,
}
getStaffIllegalListApi(param).then(response => {
getKitchenDeviceSensorRecordListApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.loading = false;

View File

@ -6,21 +6,40 @@
<el-tab-pane label="昨日菜品留样" name="2"></el-tab-pane>
<el-tab-pane label="留样历史记录" name="3"></el-tab-pane>
</el-tabs>
</div>
</div>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="关键字" prop="searchValue">
<el-input v-model="queryParams.searchValue" placeholder="请输入菜品名称,编号" maxlength="20" clearable style="width: 240px"/>
</el-form-item>
<el-form-item label="所属食堂" prop="canteenId">
<el-select v-model="queryParams.canteenId" placeholder="请选择所属食堂" style="width: 240px;" @change="handleCanteenChange">
<el-option v-for="item in canteenOptions"
:key="item.canteenId"
:label="item.canteenName"
:value="item.canteenId"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="所属档口" prop="stallId">
<el-input v-model="queryParams.stallId" placeholder="请输入所属档口" maxlength="20" clearable style="width: 240px"/>
</el-form-item>
<el-form-item label="违规状态" prop="faceStatus">
<el-select v-model="queryParams.faceStatus" style="width: 240px" clearable>
<el-option label="正常" value="0"></el-option>
<el-option label="重量未达标" value="1"></el-option>
<el-option label="时长未达标" value="2"></el-option>
<el-select v-model="queryParams.stallId" placeholder="请选择所属档口" style="width: 240px" >
<el-option v-for="item in stallOptions"
:key="item.stallId"
:label="item.stallName"
:value="item.stallId"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="重量状态" prop="weightStandard">
<el-select v-model="queryParams.weightStandard" style="width: 240px" clearable>
<el-option label="重量已达标" value="1"></el-option>
<el-option label="重量未达标" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="时长状态" prop="durationStandard">
<el-select v-model="queryParams.durationStandard" style="width: 240px" clearable>
<el-option label="留样时长已达标" value="1"></el-option>
<el-option label="留样时长未达标" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="存放状态" prop="saveStatus">
@ -65,7 +84,7 @@
<el-table-column label="入柜时间" align="center" prop="enterCabinetTime" :show-overflow-tooltip="true" />
<el-table-column label="离柜时间" align="center" prop="leaveCabinetTime" :show-overflow-tooltip="true" />
<el-table-column label="存放状态" align="center" prop="saveStatusName" :show-overflow-tooltip="true" />
<el-table-column label="违规状态" align="center" prop="illegalStatusName" :show-overflow-tooltip="true" />
<el-table-column label="违规状态" align="center" prop="illegalStatusName" :show-overflow-tooltip="true" width="200"/>
</el-table>
<pagination
v-show="total>0"
@ -92,8 +111,8 @@
</template>
<script>
import { getKitchenSampleRecordListApi } from "@/api/kitchen/foodSafety";
import { systemAreaTreeApi,getCanteenByAreaApi,getStallByCanteenApi } from "@/api/base/stall";
import { getKitchenSampleRecordListApi } from "@/api/kitchen/foodSafety";
export default {
name: "",
dicts: [],
@ -117,6 +136,8 @@ export default {
title: "",
//
open: false,
canteenOptions:[],//-
stallOptions:[],//-
//
queryParams: {
pageNum: 1,
@ -141,9 +162,27 @@ export default {
};
},
created() {
this.getCanteenList();
this.getList();
},
methods: {
methods: {
getCanteenList( ){
let param= {canteenType: 1}
getCanteenByAreaApi(param).then((response) => {
this.canteenOptions=response.rows||[]
this.stallOptions = []
this.$set(this.queryParams,"stallId",null)
});
},
handleCanteenChange(e){
let param= {
canteenId:e
}
getStallByCanteenApi(param).then((response) => {
this.stallOptions=response.rows||[]
this.$set(this.queryParams,"stallId",null)
});
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;

View File

@ -24,10 +24,10 @@
<span>{{(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1}}</span>
</template>
</el-table-column>
<el-table-column label="餐次" align="center" prop="canteenNum" :show-overflow-tooltip="true" />
<el-table-column label="餐次" align="center" prop="" :show-overflow-tooltip="true" />
<el-table-column label="所属食堂" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="餐盘照片" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="时间" align="center" prop="canteenName" :show-overflow-tooltip="true" width="180" />
<el-table-column label="餐盘照片" align="center" prop="" :show-overflow-tooltip="true" />
<el-table-column label="时间" align="center" prop="" :show-overflow-tooltip="true" width="180" />
</el-table>
<pagination
v-show="total>0"
@ -50,7 +50,7 @@
</template>
<script>
import { getPageCanteenApi } from "@/api/base/canteen";
import { getKitchenWasteListApi } from "@/api/kitchen/wasteManage";
export default {
name: "",
@ -96,7 +96,7 @@ export default {
};
},
created() {
// this.getList();
this.getList();
},
methods: {
/** 搜索按钮操作 */
@ -113,11 +113,12 @@ export default {
getList() {
this.loading = true;
let param = {
"current": this.queryParams.pageNum,
"size": this.queryParams.pageSize,
"mealTimeType": this.queryParams.mealTimeType,
"pageNum": this.queryParams.pageNum,
"pageSize": this.queryParams.pageSize,
}
getPageCanteenApi(param).then(response => {
this.tableListData = response.records;
getKitchenWasteListApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.loading = false;
});

View File

@ -24,16 +24,27 @@
<span>{{(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1}}</span>
</template>
</el-table-column>
<el-table-column label="餐次" align="center" prop="canteenNum" :show-overflow-tooltip="true" />
<el-table-column label="餐次" align="center" prop="" :show-overflow-tooltip="true" />
<el-table-column label="所属食堂" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="废弃物名称" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="重量(Kg)" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="处理人" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="处置方式" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="售卖金额(元)" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="处置照片" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="处置日期" align="center" prop="canteenName" :show-overflow-tooltip="true" width="150"/>
<el-table-column label="创建时间" align="center" prop="canteenName" :show-overflow-tooltip="true" width="150"/>
<el-table-column label="废弃物名称" align="center" prop="garbageName" :show-overflow-tooltip="true" />
<el-table-column label="重量(Kg)" align="center" prop="weight" :show-overflow-tooltip="true" />
<el-table-column label="处理人" align="center" prop="" :show-overflow-tooltip="true" />
<el-table-column label="处置方式" align="center" prop="dealType" :show-overflow-tooltip="true">
<template slot-scope="scope">
<span v-if="scope.row.dealType==1">丢弃</span>
<span v-if="scope.row.dealType==2">下一餐使用</span>
<span v-if="scope.row.dealType==3">集中售卖</span>
</template>
</el-table-column>
<el-table-column label="售卖金额(元)" align="center" prop="saleAmount" :show-overflow-tooltip="true" />
<el-table-column label="处置照片" align="center" prop="scenePicture" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<img :src="scope.row.scenePicture" v-if="scope.row.scenePicture" alt="" style="width: 80px;height: 40px;" @click="openImg(scope.row)">
<span v-else></span>
</template>
</el-table-column>
<el-table-column label="处置日期" align="center" prop="" :show-overflow-tooltip="true" width="150"/>
<el-table-column label="创建时间" align="center" prop="" :show-overflow-tooltip="true" width="150"/>
</el-table>
<pagination
v-show="total>0"
@ -42,7 +53,9 @@
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<el-dialog :visible.sync="dialogVisible" width="700px">
<img style="width: 100%;height: 100%;" :src="dialogImageUrl" alt="">
</el-dialog>
<!-- 添加或修改参数配置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
@ -56,7 +69,7 @@
</template>
<script>
import { getPageCanteenApi } from "@/api/base/canteen";
import { getKitchenWasteDealApi } from "@/api/kitchen/wasteManage";
export default {
name: "",
@ -98,11 +111,13 @@ export default {
// dictType: [
// { required: true, message: "", trigger: "blur" }
// ]
}
},
dialogVisible:false,//
dialogImageUrl:"",//
};
},
created() {
// this.getList();
this.getList();
},
methods: {
/** 搜索按钮操作 */
@ -119,11 +134,12 @@ export default {
getList() {
this.loading = true;
let param = {
"current": this.queryParams.pageNum,
"size": this.queryParams.pageSize,
"mealTimeType": this.queryParams.mealTimeType,
"pageNum": this.queryParams.pageNum,
"pageSize": this.queryParams.pageSize,
}
getPageCanteenApi(param).then(response => {
this.tableListData = response.records;
getKitchenWasteDealApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.loading = false;
});
@ -184,6 +200,10 @@ export default {
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
openImg(row) {
this.dialogImageUrl = row.scenePicture;
this.dialogVisible = true;
},
}
};
</script>

View File

@ -24,10 +24,10 @@
<span>{{(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1}}</span>
</template>
</el-table-column>
<el-table-column label="餐次" align="center" prop="canteenNum" :show-overflow-tooltip="true" />
<el-table-column label="餐次" align="center" prop="" :show-overflow-tooltip="true" />
<el-table-column label="所属食堂" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="浪费次数" align="center" prop="canteenName" :show-overflow-tooltip="true" />
<el-table-column label="时间" align="center" prop="canteenName" :show-overflow-tooltip="true" width="180" />
<el-table-column label="浪费次数" align="center" prop="" :show-overflow-tooltip="true" />
<el-table-column label="时间" align="center" prop="" :show-overflow-tooltip="true" width="180" />
</el-table>
<pagination
v-show="total>0"
@ -50,7 +50,7 @@
</template>
<script>
import { getPageCanteenApi } from "@/api/base/canteen";
import { getKitchenWasteCountApi } from "@/api/kitchen/wasteManage";
export default {
name: "",
@ -96,7 +96,7 @@ export default {
};
},
created() {
// this.getList();
this.getList();
},
methods: {
/** 搜索按钮操作 */
@ -113,11 +113,12 @@ export default {
getList() {
this.loading = true;
let param = {
"current": this.queryParams.pageNum,
"size": this.queryParams.pageSize,
"mealTimeType": this.queryParams.mealTimeType,
"pageNum": this.queryParams.pageNum,
"pageSize": this.queryParams.pageSize,
}
getPageCanteenApi(param).then(response => {
this.tableListData = response.records;
getKitchenWasteCountApi(param).then(response => {
this.tableListData = response.rows;
this.total = Number(response.total);
this.loading = false;
});