Merge branch 'main' of http://e19510c831.iok.la/admin/zhyc-sheep-ui
This commit is contained in:
commit
279b27fabc
@ -5,9 +5,7 @@ export function listDryMatterCorrection(query) {
|
|||||||
return request({
|
return request({
|
||||||
url: '/dryMatterCorrection/dryMatterCorrection/list',
|
url: '/dryMatterCorrection/dryMatterCorrection/list',
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: {
|
params: query
|
||||||
datetime: query.datetime // 只传递年月参数
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
46
src/api/parityCorrection/parityCorrection.js
Normal file
46
src/api/parityCorrection/parityCorrection.js
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
// import request from '@/utils/request'
|
||||||
|
|
||||||
|
// // 查询胎次校正列表
|
||||||
|
// export function listParityCorrection(query) {
|
||||||
|
// return request({
|
||||||
|
// url: '/parityCorrection/parityCorrection/list',
|
||||||
|
// method: 'get',
|
||||||
|
// params: query
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
|
||||||
|
// // 查询胎次校正详细
|
||||||
|
// export function getParityCorrection(id) {
|
||||||
|
// return request({
|
||||||
|
// url: '/parityCorrection/parityCorrection/' + id,
|
||||||
|
// method: 'get'
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
|
||||||
|
// // 新增胎次校正
|
||||||
|
// export function addParityCorrection(data) {
|
||||||
|
// return request({
|
||||||
|
// url: '/parityCorrection/parityCorrection',
|
||||||
|
// method: 'post',
|
||||||
|
// data: data
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
|
||||||
|
// // 修改胎次校正
|
||||||
|
// export function updateParityCorrection(data) {
|
||||||
|
// return request({
|
||||||
|
// url: '/parityCorrection/parityCorrection',
|
||||||
|
// method: 'put',
|
||||||
|
// data: data
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
|
||||||
|
// // 删除胎次校正
|
||||||
|
// export function delParityCorrection(id) {
|
||||||
|
// return request({
|
||||||
|
// url: '/parityCorrection/parityCorrection/' + id,
|
||||||
|
// method: 'delete'
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
// 可以保留空文件或删除此文件
|
||||||
|
// 因为前端不再需要调用后端API
|
44
src/api/weightCorrection/weightCorrection.js
Normal file
44
src/api/weightCorrection/weightCorrection.js
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 查询称重校正列表
|
||||||
|
export function listWeightCorrection(query) {
|
||||||
|
return request({
|
||||||
|
url: '/weightCorrection/weightCorrection/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询称重校正详细
|
||||||
|
export function getWeightCorrection(id) {
|
||||||
|
return request({
|
||||||
|
url: '/weightCorrection/weightCorrection/' + id,
|
||||||
|
method: 'get'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增称重校正
|
||||||
|
export function addWeightCorrection(data) {
|
||||||
|
return request({
|
||||||
|
url: '/weightCorrection/weightCorrection',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改称重校正
|
||||||
|
export function updateWeightCorrection(data) {
|
||||||
|
return request({
|
||||||
|
url: '/weightCorrection/weightCorrection',
|
||||||
|
method: 'put',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除称重校正
|
||||||
|
export function delWeightCorrection(id) {
|
||||||
|
return request({
|
||||||
|
url: '/weightCorrection/weightCorrection/' + id,
|
||||||
|
method: 'delete'
|
||||||
|
})
|
||||||
|
}
|
@ -4,11 +4,21 @@
|
|||||||
<el-form-item label="年月" prop="datetime">
|
<el-form-item label="年月" prop="datetime">
|
||||||
<el-date-picker clearable
|
<el-date-picker clearable
|
||||||
v-model="queryParams.datetime"
|
v-model="queryParams.datetime"
|
||||||
type="date"
|
type="month"
|
||||||
value-format="YYYY-MM-DD"
|
value-format="YYYY-MM"
|
||||||
placeholder="请选择年月">
|
placeholder="请选择年月">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="厂区" prop="factory">
|
||||||
|
<el-select v-model="queryParams.factory" placeholder="请选择厂区" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in da_ranch"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
||||||
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
|
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
|
||||||
@ -57,23 +67,31 @@
|
|||||||
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
|
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-table v-loading="loading" :data="dryMatterCorrectionList" @selection-change="handleSelectionChange">
|
<!-- 修改表格列宽设置 -->
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table
|
||||||
<el-table-column label="年月" align="center" prop="datetime" width="180">
|
v-loading="loading"
|
||||||
|
:data="dryMatterCorrectionList"
|
||||||
|
@selection-change="handleSelectionChange"
|
||||||
|
style="width: 100%">
|
||||||
|
<el-table-column type="selection" align="center" />
|
||||||
|
<el-table-column label="年月" align="center" prop="datetime">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ parseTime(scope.row.datetime, '{y}-{m}-{d}') }}</span>
|
<span>{{ parseTime(scope.row.datetime, '{y}-{m}') }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="厂区" align="center" prop="factory">
|
||||||
|
<template #default="scope">
|
||||||
|
<dict-tag :options="da_ranch" :value="scope.row.factory"/>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="厂区" align="center" prop="factory" />
|
|
||||||
<el-table-column label="干物质含量" align="center" prop="content" />
|
<el-table-column label="干物质含量" align="center" prop="content" />
|
||||||
<el-table-column label="干物质标准" align="center" prop="standard" />
|
<el-table-column label="干物质标准" align="center" prop="standard" />
|
||||||
<!-- 新增干物质系数列 -->
|
<el-table-column label="干物质系数" align="center" prop="coefficient">
|
||||||
<el-table-column label="干物质系数" align="center">
|
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ calculateCoefficient(scope.row.content, scope.row.standard) }}</span>
|
<span>{{ scope.row.coefficient != null ? scope.row.coefficient.toFixed(4) : '' }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="150">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['dryMatterCorrection:dryMatterCorrection:edit']">修改</el-button>
|
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['dryMatterCorrection:dryMatterCorrection:edit']">修改</el-button>
|
||||||
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['dryMatterCorrection:dryMatterCorrection:remove']">删除</el-button>
|
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['dryMatterCorrection:dryMatterCorrection:remove']">删除</el-button>
|
||||||
@ -91,28 +109,35 @@
|
|||||||
|
|
||||||
<!-- 添加或修改干物质校正对话框 -->
|
<!-- 添加或修改干物质校正对话框 -->
|
||||||
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
|
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
<el-form ref="dryMatterCorrectionRef" :model="form" :rules="rules" label-width="80px">
|
<el-form ref="dryMatterCorrectionRef" :model="form" :rules="rules" label-width="100px">
|
||||||
<el-form-item label="年月" prop="datetime">
|
<el-form-item label="年月" prop="datetime">
|
||||||
<el-date-picker clearable
|
<el-date-picker clearable
|
||||||
v-model="form.datetime"
|
v-model="form.datetime"
|
||||||
type="date"
|
type="month"
|
||||||
value-format="YYYY-MM-DD"
|
value-format="YYYY-MM"
|
||||||
placeholder="请选择年月">
|
placeholder="请选择年月"
|
||||||
|
style="width: 100%">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 新增厂区字段 -->
|
|
||||||
<el-form-item label="厂区" prop="factory">
|
<el-form-item label="厂区" prop="factory">
|
||||||
<el-input v-model="form.factory" placeholder="请输入厂区" />
|
<el-select v-model="form.factory" placeholder="请选择厂区" style="width: 100%">
|
||||||
|
<el-option
|
||||||
|
v-for="dict in da_ranch"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
></el-option>
|
||||||
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="干物质含量" prop="content">
|
<el-form-item label="干物质含量" prop="content">
|
||||||
<el-input v-model="form.content" placeholder="请输入干物质含量" @input="calculateCoefficientInForm" />
|
<el-input v-model="form.content" placeholder="请输入干物质含量" @input="calculateCoefficient" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="干物质标准" prop="standard">
|
<el-form-item label="干物质标准" prop="standard">
|
||||||
<el-input v-model="form.standard" placeholder="请输入干物质标准" @input="calculateCoefficientInForm" />
|
<el-input v-model="form.standard" placeholder="请输入干物质标准" @input="calculateCoefficient" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 显示计算后的干物质系数 -->
|
|
||||||
<el-form-item label="干物质系数">
|
<el-form-item label="干物质系数">
|
||||||
<el-input v-model="form.coefficient" placeholder="自动计算" readonly />
|
<el-input :value="form.coefficient != null ? form.coefficient.toFixed(4) : ''" placeholder="自动计算" readonly>
|
||||||
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
@ -129,6 +154,7 @@
|
|||||||
import { listDryMatterCorrection, getDryMatterCorrection, delDryMatterCorrection, addDryMatterCorrection, updateDryMatterCorrection } from "@/api/dryMatterCorrection/dryMatterCorrection"
|
import { listDryMatterCorrection, getDryMatterCorrection, delDryMatterCorrection, addDryMatterCorrection, updateDryMatterCorrection } from "@/api/dryMatterCorrection/dryMatterCorrection"
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance()
|
const { proxy } = getCurrentInstance()
|
||||||
|
const { da_ranch } = proxy.useDict('da_ranch')
|
||||||
|
|
||||||
const dryMatterCorrectionList = ref([])
|
const dryMatterCorrectionList = ref([])
|
||||||
const open = ref(false)
|
const open = ref(false)
|
||||||
@ -141,33 +167,47 @@ const total = ref(0)
|
|||||||
const title = ref("")
|
const title = ref("")
|
||||||
|
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {},
|
form: {
|
||||||
|
coefficient: null
|
||||||
|
},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
datetime: null,
|
datetime: null,
|
||||||
factory: null,
|
factory: null,
|
||||||
content: null,
|
|
||||||
standard: null
|
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
datetime: [
|
datetime: [{ required: true, message: "年月不能为空", trigger: "blur" }],
|
||||||
{ required: true, message: "年月不能为空", trigger: "blur" }
|
factory: [{ required: true, message: "厂区不能为空", trigger: "blur" }],
|
||||||
],
|
|
||||||
factory: [
|
|
||||||
{ required: true, message: "厂区不能为空", trigger: "blur" }
|
|
||||||
],
|
|
||||||
content: [
|
content: [
|
||||||
{ required: true, message: "干物质含量不能为空", trigger: "blur" }
|
{ required: true, message: "干物质含量不能为空", trigger: "blur" },
|
||||||
|
{ pattern: /^\d+(\.\d+)?$/, message: "请输入有效数字", trigger: "blur" }
|
||||||
],
|
],
|
||||||
standard: [
|
standard: [
|
||||||
{ required: true, message: "干物质标准不能为空", trigger: "blur" }
|
{ required: true, message: "干物质标准不能为空", trigger: "blur" },
|
||||||
|
{ pattern: /^\d+(\.\d+)?$/, message: "请输入有效数字", trigger: "blur" },
|
||||||
|
{ validator: (rule, value, callback) => {
|
||||||
|
if (value == 0) {
|
||||||
|
callback(new Error("干物质标准不能为零"));
|
||||||
|
} else {
|
||||||
|
callback();
|
||||||
|
}
|
||||||
|
}, trigger: "blur" }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
const { queryParams, form, rules } = toRefs(data)
|
const { queryParams, form, rules } = toRefs(data)
|
||||||
|
|
||||||
|
/** 计算干物质系数 */
|
||||||
|
function calculateCoefficient() {
|
||||||
|
if (form.value.content && form.value.standard && form.value.standard != 0) {
|
||||||
|
form.value.coefficient = parseFloat(form.value.content) / parseFloat(form.value.standard);
|
||||||
|
} else {
|
||||||
|
form.value.coefficient = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/** 查询干物质校正列表 */
|
/** 查询干物质校正列表 */
|
||||||
function getList() {
|
function getList() {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
@ -192,7 +232,7 @@ function reset() {
|
|||||||
factory: null,
|
factory: null,
|
||||||
content: null,
|
content: null,
|
||||||
standard: null,
|
standard: null,
|
||||||
coefficient: null // 新增系数字段
|
coefficient: null
|
||||||
}
|
}
|
||||||
proxy.resetForm("dryMatterCorrectionRef")
|
proxy.resetForm("dryMatterCorrectionRef")
|
||||||
}
|
}
|
||||||
@ -229,47 +269,26 @@ function handleUpdate(row) {
|
|||||||
const _id = row.id || ids.value
|
const _id = row.id || ids.value
|
||||||
getDryMatterCorrection(_id).then(response => {
|
getDryMatterCorrection(_id).then(response => {
|
||||||
form.value = response.data
|
form.value = response.data
|
||||||
// 计算修改时的干物质系数
|
// 确保系数已计算
|
||||||
form.value.coefficient = calculateCoefficient(form.value.content, form.value.standard)
|
if (form.value.content && form.value.standard) {
|
||||||
|
form.value.coefficient = form.value.content / form.value.standard;
|
||||||
|
}
|
||||||
|
// 将日期转换为年月格式
|
||||||
|
if (form.value.datetime) {
|
||||||
|
form.value.datetime = proxy.parseTime(form.value.datetime, "{y}-{m}");
|
||||||
|
}
|
||||||
open.value = true
|
open.value = true
|
||||||
title.value = "修改干物质校正"
|
title.value = "修改干物质校正"
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 表单中计算干物质系数 */
|
|
||||||
function calculateCoefficientInForm() {
|
|
||||||
if (form.value.content && form.value.standard) {
|
|
||||||
const content = parseFloat(form.value.content)
|
|
||||||
const standard = parseFloat(form.value.standard)
|
|
||||||
if (!isNaN(content) && !isNaN(standard) && standard !== 0) {
|
|
||||||
form.value.coefficient = (content / standard).toFixed(4)
|
|
||||||
} else {
|
|
||||||
form.value.coefficient = null
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
form.value.coefficient = null
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 表格中计算干物质系数 */
|
|
||||||
function calculateCoefficient(content, standard) {
|
|
||||||
if (content && standard) {
|
|
||||||
const contentVal = parseFloat(content)
|
|
||||||
const standardVal = parseFloat(standard)
|
|
||||||
if (!isNaN(contentVal) && !isNaN(standardVal) && standardVal !== 0) {
|
|
||||||
return (contentVal / standardVal).toFixed(4)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 'N/A'
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 提交按钮 */
|
/** 提交按钮 */
|
||||||
function submitForm() {
|
function submitForm() {
|
||||||
proxy.$refs["dryMatterCorrectionRef"].validate(valid => {
|
proxy.$refs["dryMatterCorrectionRef"].validate(valid => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
// 提交前确保系数已计算
|
// 确保系数已计算
|
||||||
if (!form.value.coefficient) {
|
if (form.value.content && form.value.standard && form.value.standard != 0) {
|
||||||
calculateCoefficientInForm()
|
form.value.coefficient = form.value.content / form.value.standard;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (form.value.id != null) {
|
if (form.value.id != null) {
|
||||||
@ -304,8 +323,44 @@ function handleDelete(row) {
|
|||||||
function handleExport() {
|
function handleExport() {
|
||||||
proxy.download('dryMatterCorrection/dryMatterCorrection/export', {
|
proxy.download('dryMatterCorrection/dryMatterCorrection/export', {
|
||||||
...queryParams.value
|
...queryParams.value
|
||||||
}, `dryMatterCorrection_${new Date().getTime()}.xlsx`)
|
}, `干物质校正数据_${new Date().getTime()}.xlsx`)
|
||||||
}
|
}
|
||||||
|
|
||||||
getList()
|
getList()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
/* 添加表格样式 */
|
||||||
|
.el-table {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-table th {
|
||||||
|
background-color: #f5f7fa;
|
||||||
|
color: #606266;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-table td, .el-table th {
|
||||||
|
padding: 12px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-table .cell {
|
||||||
|
padding: 0 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 调整操作列按钮间距 */
|
||||||
|
.el-button + .el-button {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 调整表单元素宽度 */
|
||||||
|
.el-input, .el-select {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 调整搜索表单布局 */
|
||||||
|
.el-form-item {
|
||||||
|
margin-bottom: 15px;
|
||||||
|
}
|
||||||
|
</style>
|
59
src/views/parityCorrection/parityCorrection/index.vue
Normal file
59
src/views/parityCorrection/parityCorrection/index.vue
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
<el-table
|
||||||
|
v-loading="loading"
|
||||||
|
:data="parityCorrectionList"
|
||||||
|
style="width: 100%"
|
||||||
|
border
|
||||||
|
stripe
|
||||||
|
>
|
||||||
|
<el-table-column
|
||||||
|
label="胎次"
|
||||||
|
align="center"
|
||||||
|
prop="parity"
|
||||||
|
width="120"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
label="系数"
|
||||||
|
align="center"
|
||||||
|
prop="coef"
|
||||||
|
width="120"
|
||||||
|
/>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup name="ParityCorrection">
|
||||||
|
import { ref, onMounted } from 'vue'
|
||||||
|
|
||||||
|
const loading = ref(false)
|
||||||
|
const parityCorrectionList = ref([])
|
||||||
|
|
||||||
|
// 预定义胎次校正数据(1-8胎次)
|
||||||
|
const fixedParityData = [
|
||||||
|
{ id: 1, parity: 1, coef: 1.2 },
|
||||||
|
{ id: 2, parity: 2, coef: 1.0 },
|
||||||
|
{ id: 3, parity: 3, coef: 0.96 },
|
||||||
|
{ id: 4, parity: 4, coef: 0.96 },
|
||||||
|
{ id: 5, parity: 5, coef: 1.0 },
|
||||||
|
{ id: 6, parity: 6, coef: 1.0 },
|
||||||
|
{ id: 7, parity: 7, coef: 1.0 },
|
||||||
|
{ id: 8, parity: 8, coef: 1.0 }
|
||||||
|
]
|
||||||
|
|
||||||
|
// 组件挂载时加载数据
|
||||||
|
onMounted(() => {
|
||||||
|
loading.value = true
|
||||||
|
// 模拟异步加载
|
||||||
|
setTimeout(() => {
|
||||||
|
parityCorrectionList.value = fixedParityData
|
||||||
|
loading.value = false
|
||||||
|
}, 500)
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.app-container {
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
</style>
|
292
src/views/weightCorrection/weightCorrection/index.vue
Normal file
292
src/views/weightCorrection/weightCorrection/index.vue
Normal file
@ -0,0 +1,292 @@
|
|||||||
|
<template>
|
||||||
|
<div class="app-container">
|
||||||
|
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
|
||||||
|
<el-form-item label="日期" prop="datetime">
|
||||||
|
<el-date-picker clearable
|
||||||
|
v-model="queryParams.datetime"
|
||||||
|
type="date"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
|
placeholder="请选择日期">
|
||||||
|
</el-date-picker>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="厂区" prop="factory">
|
||||||
|
<el-select v-model="queryParams.factory" placeholder="请选择厂区" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="dict in da_ranch"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
||||||
|
<el-button icon="Refresh" @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="Plus"
|
||||||
|
@click="handleAdd"
|
||||||
|
v-hasPermi="['weightCorrection:weightCorrection:add']"
|
||||||
|
>新增</el-button>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="1.5">
|
||||||
|
<el-button
|
||||||
|
type="success"
|
||||||
|
plain
|
||||||
|
icon="Edit"
|
||||||
|
:disabled="single"
|
||||||
|
@click="handleUpdate"
|
||||||
|
v-hasPermi="['weightCorrection:weightCorrection:edit']"
|
||||||
|
>修改</el-button>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="1.5">
|
||||||
|
<el-button
|
||||||
|
type="danger"
|
||||||
|
plain
|
||||||
|
icon="Delete"
|
||||||
|
:disabled="multiple"
|
||||||
|
@click="handleDelete"
|
||||||
|
v-hasPermi="['weightCorrection:weightCorrection:remove']"
|
||||||
|
>删除</el-button>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="1.5">
|
||||||
|
<el-button
|
||||||
|
type="warning"
|
||||||
|
plain
|
||||||
|
icon="Download"
|
||||||
|
@click="handleExport"
|
||||||
|
v-hasPermi="['weightCorrection:weightCorrection:export']"
|
||||||
|
>导出</el-button>
|
||||||
|
</el-col>
|
||||||
|
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
<el-table v-loading="loading" :data="weightCorrectionList" @selection-change="handleSelectionChange">
|
||||||
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
|
<el-table-column label="日期" align="center" prop="datetime" width="180">
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ parseTime(scope.row.datetime, '{y}-{m}-{d}') }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="厂区" align="center" prop="factory">
|
||||||
|
<template #default="scope">
|
||||||
|
<dict-tag :options="da_ranch" :value="scope.row.factory"/>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="实际奶量" align="center" prop="actual" />
|
||||||
|
<el-table-column label="系统奶量" align="center" prop="systemMilk" /> <!-- 修改这里 -->
|
||||||
|
<el-table-column label="称重系数" align="center" prop="coefficient">
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ scope.row.coefficient.toFixed(4) }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
|
<template #default="scope">
|
||||||
|
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['weightCorrection:weightCorrection:edit']">修改</el-button>
|
||||||
|
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['weightCorrection:weightCorrection:remove']">删除</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
<pagination
|
||||||
|
v-show="total>0"
|
||||||
|
:total="total"
|
||||||
|
v-model:page="queryParams.pageNum"
|
||||||
|
v-model:limit="queryParams.pageSize"
|
||||||
|
@pagination="getList"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<!-- 添加或修改称重校正对话框 -->
|
||||||
|
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
|
||||||
|
<el-form ref="weightCorrectionRef" :model="form" :rules="rules" label-width="80px">
|
||||||
|
<el-form-item label="日期" prop="datetime">
|
||||||
|
<el-date-picker clearable
|
||||||
|
v-model="form.datetime"
|
||||||
|
type="date"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
|
placeholder="请选择日期">
|
||||||
|
</el-date-picker>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="厂区" prop="factory">
|
||||||
|
<el-select v-model="form.factory" placeholder="请选择厂区">
|
||||||
|
<el-option
|
||||||
|
v-for="dict in da_ranch"
|
||||||
|
:key="dict.value"
|
||||||
|
:label="dict.label"
|
||||||
|
:value="dict.value"
|
||||||
|
></el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="实际奶量" prop="actual">
|
||||||
|
<el-input v-model="form.actual" placeholder="请输入实际奶量" type="number" step="0.01" min="0" />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="系统奶量" prop="systemMilk"> <!-- 修改这里 -->
|
||||||
|
<el-input v-model="form.systemMilk" placeholder="请输入系统奶量" type="number" step="0.01" min="0" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<template #footer>
|
||||||
|
<div class="dialog-footer">
|
||||||
|
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||||
|
<el-button @click="cancel">取 消</el-button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup name="WeightCorrection">
|
||||||
|
import { listWeightCorrection, getWeightCorrection, delWeightCorrection, addWeightCorrection, updateWeightCorrection } from "@/api/weightCorrection/weightCorrection"
|
||||||
|
|
||||||
|
const { proxy } = getCurrentInstance()
|
||||||
|
const { da_ranch } = proxy.useDict('da_ranch')
|
||||||
|
|
||||||
|
const weightCorrectionList = ref([])
|
||||||
|
const open = ref(false)
|
||||||
|
const loading = ref(true)
|
||||||
|
const showSearch = ref(true)
|
||||||
|
const ids = ref([])
|
||||||
|
const single = ref(true)
|
||||||
|
const multiple = ref(true)
|
||||||
|
const total = ref(0)
|
||||||
|
const title = ref("")
|
||||||
|
|
||||||
|
const data = reactive({
|
||||||
|
form: {},
|
||||||
|
queryParams: {
|
||||||
|
pageNum: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
datetime: null,
|
||||||
|
factory: null
|
||||||
|
},
|
||||||
|
rules: {
|
||||||
|
datetime: [{ required: true, message: "日期不能为空", trigger: "blur" }],
|
||||||
|
factory: [{ required: true, message: "厂区不能为空", trigger: "change" }],
|
||||||
|
actual: [
|
||||||
|
{ required: true, message: "实际奶量不能为空", trigger: "blur" },
|
||||||
|
{ type: 'number', min: 0, message: "实际奶量必须大于0", trigger: "blur", transform: value => Number(value) }
|
||||||
|
],
|
||||||
|
systemMilk: [ // 修改这里
|
||||||
|
{ required: true, message: "系统奶量不能为空", trigger: "blur" },
|
||||||
|
{ type: 'number', min: 0, message: "系统奶量必须大于0", trigger: "blur", transform: value => Number(value) }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
const { queryParams, form, rules } = toRefs(data)
|
||||||
|
|
||||||
|
/** 查询称重校正列表 */
|
||||||
|
function getList() {
|
||||||
|
loading.value = true
|
||||||
|
listWeightCorrection(queryParams.value).then(response => {
|
||||||
|
weightCorrectionList.value = response.rows
|
||||||
|
total.value = response.total
|
||||||
|
loading.value = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 取消按钮
|
||||||
|
function cancel() {
|
||||||
|
open.value = false
|
||||||
|
reset()
|
||||||
|
}
|
||||||
|
|
||||||
|
// 表单重置
|
||||||
|
function reset() {
|
||||||
|
form.value = {
|
||||||
|
id: null,
|
||||||
|
datetime: null,
|
||||||
|
factory: null,
|
||||||
|
actual: null,
|
||||||
|
systemMilk: null // 修改这里
|
||||||
|
}
|
||||||
|
proxy.resetForm("weightCorrectionRef")
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 搜索按钮操作 */
|
||||||
|
function handleQuery() {
|
||||||
|
queryParams.value.pageNum = 1
|
||||||
|
getList()
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 重置按钮操作 */
|
||||||
|
function resetQuery() {
|
||||||
|
proxy.resetForm("queryRef")
|
||||||
|
handleQuery()
|
||||||
|
}
|
||||||
|
|
||||||
|
// 多选框选中数据
|
||||||
|
function handleSelectionChange(selection) {
|
||||||
|
ids.value = selection.map(item => item.id)
|
||||||
|
single.value = selection.length != 1
|
||||||
|
multiple.value = !selection.length
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 新增按钮操作 */
|
||||||
|
function handleAdd() {
|
||||||
|
reset()
|
||||||
|
open.value = true
|
||||||
|
title.value = "添加称重校正"
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 修改按钮操作 */
|
||||||
|
function handleUpdate(row) {
|
||||||
|
reset()
|
||||||
|
const _id = row.id || ids.value
|
||||||
|
getWeightCorrection(_id).then(response => {
|
||||||
|
form.value = response.data
|
||||||
|
open.value = true
|
||||||
|
title.value = "修改称重校正"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 提交按钮 */
|
||||||
|
function submitForm() {
|
||||||
|
proxy.$refs["weightCorrectionRef"].validate(valid => {
|
||||||
|
if (valid) {
|
||||||
|
// 确保数值类型正确
|
||||||
|
form.value.actual = parseFloat(form.value.actual)
|
||||||
|
form.value.systemMilk = parseFloat(form.value.systemMilk) // 修改这里
|
||||||
|
|
||||||
|
if (form.value.id != null) {
|
||||||
|
updateWeightCorrection(form.value).then(response => {
|
||||||
|
proxy.$modal.msgSuccess("修改成功")
|
||||||
|
open.value = false
|
||||||
|
getList()
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
addWeightCorrection(form.value).then(response => {
|
||||||
|
proxy.$modal.msgSuccess("新增成功")
|
||||||
|
open.value = false
|
||||||
|
getList()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 删除按钮操作 */
|
||||||
|
function handleDelete(row) {
|
||||||
|
const _ids = row.id || ids.value
|
||||||
|
proxy.$modal.confirm('是否确认删除称重校正编号为"' + _ids + '"的数据项?').then(function() {
|
||||||
|
return delWeightCorrection(_ids)
|
||||||
|
}).then(() => {
|
||||||
|
getList()
|
||||||
|
proxy.$modal.msgSuccess("删除成功")
|
||||||
|
}).catch(() => {})
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 导出按钮操作 */
|
||||||
|
function handleExport() {
|
||||||
|
proxy.download('weightCorrection/weightCorrection/export', {
|
||||||
|
...queryParams.value
|
||||||
|
}, `weightCorrection_${new Date().getTime()}.xlsx`)
|
||||||
|
}
|
||||||
|
|
||||||
|
getList()
|
||||||
|
</script>
|
Loading…
x
Reference in New Issue
Block a user