烘房报表+追溯

master
zhaoxiaolin 6 months ago
parent 4cb06ad793
commit a778acb5a7

@ -42,3 +42,21 @@ export function delPrepare(prepareId) {
method: 'delete'
});
}
// 产品追溯备料单列表
export function getBomTraceList(query) {
return request({
url: '/mes/prepare/getBomTraceList',
method: 'get',
params: query
});
}
// 产品追溯质检任务列表
export function getCheckTaskTraceList(query) {
return request({
url: '/mes/prepare/getCheckTaskTraceList',
method: 'get',
params: query
});
}

@ -15,3 +15,19 @@ export function getProductTraceList(query) {
params: query
});
}
//查询烘房生产列表
export function getHFProductionList(query) {
return request({
url: '/mes/reportWorks/getHFProductionList',
method: 'get',
params: query
});
}
export function getHFProductionTitle(query) {
return request({
url: '/mes/reportWorks/getHFProductionTitle',
method: 'get',
params: query
});
}

@ -1,5 +1,5 @@
<template>
<div class="app-container home">
<div class="app-container home" v-if="showBpFactory">
<div class="top">
<div class="echartsbox1">
<div class="titlename">各线体当日计划产量</div>
@ -96,10 +96,18 @@ export default {
PieChart3Data: null,
value1: null,
value2: null,
showBpFactory: false
};
},
created() {
this.getLineChartData();
debugger
if(localStorage.getItem("USER_POOL_NAME_CURRENT") == 'ds_999'){
this.showBpFactory = false;
}else{
this.showBpFactory = true;
}
},
mounted() {

@ -0,0 +1,258 @@
<template>
<div class="app-container">
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="98px"
>
<el-form-item label="生产时间" prop="productDateArray">
<el-date-picker
v-model="queryParams.productDateArray"
format="yyyy-MM-dd"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
>
</el-date-picker>
</el-form-item>
<el-form-item label="烘房名称" prop="equName">
<el-input
v-model="queryParams.equName"
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="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
>导出</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table
v-loading="loading"
height="500"
:data="machineProList"
:summary-method="getSummaries"
show-summary
>
<el-table-column label="日期" align="center" prop="ymd" min-width="100"/>
<template v-for="(column, index) in products">
<el-table-column align="center" min-width="100" :prop="column.code" :key="column.code" :label="column.label"/>
</template>
<el-table-column label="总产量" align="center" prop="totalQuantity"
min-width="100"
/>
</el-table>
</div>
</template>
<script>
import {getHFProductionList,getHFProductionTitle} from "@/api/mes/reportWorks";
import moment from "moment";
export default {
name: "HFProduction",
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
machineProList: [],
//
products: [],
shiftList: [],
//
title: "",
//
open: false,
//
queryParams: {
productDateArray: [],
pageNum: 1,
pageSize: 10,
workorderCode: null,
workorderName: null,
parentOrder: null,
orderId: null,
shiftId: null,
orderCode: null,
productId: null,
productCode: null,
prodType: null,
productName: null,
productSpc: null,
productDate: null,
},
//
form: {},
};
},
created() {
this.getDate();
this.getList();
},
methods: {
/**获取默认查询时间段**/
getDate() {
let start = this.Fungetdate(0);
let end = this.Fungetdate(1);
this.queryParams.productDateArray.push(start, end);
},
Fungetdate(num) {
var dd = new Date();
dd.setDate(dd.getDate() + num);
var y = dd.getFullYear();
var m = dd.getMonth() + 1; //
var d = dd.getDate();
return y + "-" + m + "-" + d + " 00:00:00";
},
/** 查询设备小时产量列表 */
getList() {
if (this.queryParams.productDateArray != null) {
this.queryParams.ymArrayStart = moment(
this.queryParams.productDateArray[0]
).format("YYYY-MM-DD HH:mm:ss");
this.queryParams.ymArrayEnd = moment(
this.queryParams.productDateArray[1]
).format("YYYY-MM-DD HH:mm:ss");
}
this.loading = true;
//Table
getHFProductionTitle(this.queryParams).then((response) => {
this.products = [];
this.products = response;
});
//Table
getHFProductionList(this.queryParams).then((response) => {
this.machineProList = response;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
productId: null,
productCode: null,
prodType: null,
productName: null,
productSpc: null,
wetDetailPlanId: null,
productDate: null,
shiftId: null,
ancestors: null,
status: null,
remark: null,
attr1: null,
attr2: null,
attr3: null,
attr4: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
factoryCode: null,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 导出按钮操作 */
handleExport() {
this.download(
"mes/reportWorks/getHFProductionExport",
{
...this.queryParams,
},
`HFProduction_${new Date().getTime()}.xlsx`
);
},
getSummaries(param) {
const { columns, data } = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = "合计";
return;
}
const values = data.map((item) => Number(item[column.property]));
if (!values.every((value) => isNaN(value))) {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index] += "";
if (sums[index] > 1000000) {
sums[index] = "";
}
} else {
sums[index] = ""; //N/A
}
});
return sums;
},
},
};
</script>

@ -111,7 +111,7 @@ import { getMachineProductionTitle, getMachineProductionList, getProShifts,} fro
import moment from "moment";
export default {
name: "Prepare",
name: "MachineProduction",
data() {
return {
//

@ -90,9 +90,9 @@
<el-table v-loading="loading" :data="traceList" @selection-change="handleSelectionChange" height="500px">
<!-- 序号 -->
<el-table-column type="index" width="50" align="center" :index="indexMethod" label="序号" fixed/>
<el-table-column label="产品编码" width="110" align="center" prop="productCode" :formatter="productCodeFormate" fixed/>
<el-table-column label="产品名称" width="200" align="center" prop="productDescZh" :show-overflow-tooltip="true" fixed/>
<el-table-column type="index" width="50" align="center" :index="indexMethod" label="序号"/>
<el-table-column label="产品编码" width="110" align="center" prop="productCode" :formatter="productCodeFormate"/>
<el-table-column label="产品名称" width="200" align="center" prop="productDescZh" :show-overflow-tooltip="true"/>
<el-table-column label="产品英文名称" width="150" align="center" prop="productDescEn" :show-overflow-tooltip="true" v-if="!showColumn"/>
<el-table-column label="最大批次数量" width="120" align="center" prop="batchMax" v-if="!showColumn"/>
<el-table-column label="卡板装载量" width="110" align="center" prop="palletNum" />
@ -100,13 +100,46 @@
<el-table-column label="品类" width="140" align="center" prop="productGroupName" v-if="!showColumn"/>
<el-table-column label="子母单比例" width="100" align="center" prop="unity" v-if="!showColumn"/>
<el-table-column label="检验标准" width="110" align="center" prop="standarNo"/>
<el-table-column label="箱型" width="50" align="center" prop="boxType" v-if="!showColumn"/>
<!--<el-table-column label="箱型" width="50" align="center" prop="boxType" v-if="!showColumn"/>-->
<el-table-column label="垛型" width="50" align="center" prop="packType" v-if="!showColumn"/>
<el-table-column label="CPK品类" width="140" align="center" prop="cpkTypeName" v-if="!showColumn"/>
<el-table-column label="产线分配" width="400" align="left" prop="lineNames" v-if="!showColumn"/>
<el-table-column label="检验周期" align="center" prop="warehouseCycle" v-if="showColumn"/>
<el-table-column label="区位" width="140" align="center" prop="waNames" v-if="showColumn"/>
<el-table-column label="最近7次上载MES时间" width="600" align="left" prop="onLineTimes" :show-overflow-tooltip="true"/>
<el-table-column v-if="!showColumn"
label="操作"
align="center"
width="240"
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-s-order"
@click="handleViewBom(scope.row)"
>领料单</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-s-help"
@click="handleViewCheckTask(scope.row,'checkTypeSC')"
>首检</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-s-help"
@click="handleViewCheckTask(scope.row,'checkTypeSCXJ')"
>巡检</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-s-help"
@click="handleViewCheckTask(scope.row,'checkTypeCP')"
>成品检</el-button>
</template>
</el-table-column>
</el-table>
<pagination
@ -116,16 +149,23 @@
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!--bom明细弹窗-->
<ItemBomDetail ref="itemBomDetail"/>
<!--检验任务明细弹窗-->
<ItemCheckTaskDetail ref="itemCheckTaskDetail"/>
</div>
</template>
<script>
import { getProductTraceList} from "@/api/mes/reportWorks";
import ItemBomDetail from "./itemBomDetail.vue";
import ItemCheckTaskDetail from "./itemCheckTaskDetail.vue";
import moment from "moment/moment";
export default {
name: "ProductTrace",
dicts: ["check_type","qms_category"],
components: {},
components: {ItemBomDetail,ItemCheckTaskDetail},
data() {
return {
showColumn:false,
@ -278,7 +318,17 @@ import moment from "moment/moment";
if (cellValue != null) {
return cellValue.slice(7, 18); //
}
}
},
//
handleViewBom(row){
this.$refs.itemBomDetail.showFlag = true;
this.$refs.itemBomDetail.view(row,this.queryParams);
},
//
handleViewCheckTask(row,checkType){
this.$refs.itemCheckTaskDetail.showFlag = true;
this.$refs.itemCheckTaskDetail.view(row,this.queryParams,checkType);
},
}
};
</script>

@ -0,0 +1,176 @@
<template>
<div>
<el-dialog title="Bom项目详情"
v-if="showFlag"
:visible.sync="showFlag"
:modal= false
width="800px"
>
<el-row :gutter="20">
<el-col :span="24" :xs="24">
<el-table v-loading="loading" :data="itemList" ref="myTable">
<!-- 序号 -->
<el-table-column label="序号" type="index" align="left" :index="indexMethod"/>
<el-table-column label="物料编码" align="left" prop="productCode" width="120" :formatter="productCodeFormate"/>
<el-table-column label="物料名称" align="left" prop="productName" width="150" :show-overflow-tooltip="true"/>
<el-table-column label="数量" align="left" prop="quantity" width="100"/>
<el-table-column label="单位" align="left" prop="unit" width="100"/>
<el-table-column label="项目编号" align="left" prop="attr1" width="100"/>
<el-table-column label="反冲物料" align="left" prop="recoil" />
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</el-col>
</el-row>
<div slot="footer" class="dialog-footer">
<el-button @click="cancelForm" > </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {getBomTraceList} from "@/api/mes/prepare";
export default {
name: "itemBomDetail",
data() {
return {
disabled: false,
viewStatus : '0',
showFlag: false,
dyloading: false,
//
selectedRows: {},
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
// BOM
itemList: null,
qcCheckTaskDetails: [],
classInfoList: [],
//
bomCode: undefined,
defaultProps: {
id: "id",
label: "label"
},
//
queryParams: {
pageNum: 1,
pageSize: 10,
belongTo:''
//,userCode: '',
//userName : ''
},
data:{},
form:{
checkResult: 'Y',
startOA: '0',
},
//
valueOpen: false,
picValueOpen: false,
//id
recordId:'',
weight: null,
//belongTo
belongTo:''
};
},
created() {
},
methods: {
//
indexMethod(index) {
return index + 1;
},
//
productCodeFormate(row, column, cellValue) {
if (cellValue != null) {
return cellValue.slice(7, 18); //
}
},
view(rowdata,queryParams0){
this.data=rowdata;
this.queryParams.ymArrayStart = queryParams0.ymArrayStart;
this.queryParams.ymArrayEnd = queryParams0.ymArrayEnd;
this.queryParams.productCode = this.data.productCode;
this.viewStatus = "1";
this.queryParams.pageNum = 1;
this.queryParams.pageSize = 10;
this.getList();
},
/** 查询表格列表*/
getList() {
this.loading = true;
getBomTraceList(this.queryParams).then(response => {
this.itemList = response.rows;
this.total = response.total;
this.loading = false;
}
);
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
reset() {
this.form = {
checkResult: null,
startOA: null,
materialType: null,
materialFrom: null,
remarkCode: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
projectType: null,
};
this.resetForm("form");
this.form.checkResult = 'Y';
this.form.startOA = '0';
this.aqlNoOkVal = 0;
this.sampleCode = null;
this.checkLevel= null;
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
getAllRowData() {
const rowArray = this.$refs.myTable.data;
this.rowData = rowArray.map(obj => {
const found = this.defectList.find(subObj => subObj.defectCode === obj.defectCode);
if (found) {
return { ...obj, defectSubclass: found.defectSubclass };
} else {
return obj;
}
});
},
//
cancelForm() {
this.showFlag = false;
this.reset();
},
}
};
</script>

@ -0,0 +1,189 @@
<template>
<div>
<el-dialog title="检验任务详情"
v-if="showFlag"
:visible.sync="showFlag"
:modal= false
width="1000px"
>
<el-row :gutter="20">
<el-col :span="24" :xs="24">
<el-table v-loading="loading" :data="itemList" ref="myTable">
<!-- 序号 -->
<el-table-column label="序号" type="index" align="left" :index="indexMethod"/>
<el-table-column label="任务编码" align="left" prop="checkNo" width="120"/>
<el-table-column label="检验类别" align="left" prop="checkType" width="90"/>
<el-table-column label="检验订单" align="left" prop="orderNo" width="100" :formatter="orderCodeFormate"/>
<el-table-column label="检验批次" align="left" prop="incomeBatchNo" width="220" :show-overflow-tooltip="true"/>
<el-table-column label="检验位置" align="left" prop="checkLoc" width="80"/>
<el-table-column label="检验状态" align="left" prop="checkStatus" width="80">
<template slot-scope="scope">
<dict-tag :options="dict.type.check_status" :value="scope.row.checkStatus"/>
</template>
</el-table-column>
<el-table-column label="检验人编码" align="left" prop="checkManCode" width="90"/>
<el-table-column label="检验人姓名" align="left" prop="checkManName" width="90"/>
<el-table-column label="检验时间" align="left" prop="checkTime" width="100">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.checkTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
</template>
</el-table-column>
<el-table-column label="检验结果" align="left" prop="checkResult" width="80">
<template slot-scope="scope">
<dict-tag :options="dict.type.check_result" :value="scope.row.checkResult"/>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</el-col>
</el-row>
<div slot="footer" class="dialog-footer">
<el-button @click="cancelForm" > </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {getCheckTaskTraceList} from "@/api/mes/prepare";
export default {
name: "itemCheckTaskDetail",
dicts: ["check_status","check_result"],
data() {
return {
disabled: false,
viewStatus : '0',
showFlag: false,
dyloading: false,
//
selectedRows: {},
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
// BOM
itemList: null,
qcCheckTaskDetails: [],
classInfoList: [],
//
bomCode: undefined,
defaultProps: {
id: "id",
label: "label"
},
//
queryParams: {
pageNum: 1,
pageSize: 10
},
data:{},
form:{
checkResult: 'Y',
startOA: '0',
},
//
valueOpen: false,
picValueOpen: false,
//id
recordId:'',
weight: null,
//belongTo
belongTo:''
};
},
created() {
},
methods: {
//
indexMethod(index) {
return index + 1;
},
//
productCodeFormate(row, column, cellValue) {
if (cellValue != null) {
return cellValue.slice(7, 18); //
}
},
//
orderCodeFormate(row, column, cellValue) {
if (cellValue != null) {
return cellValue.slice(3, 18); //
}
},
view(rowdata,queryParams0,checkType){
this.data=rowdata;
this.queryParams.checkTimeStart = queryParams0.ymArrayStart;
this.queryParams.checkTimeEnd = queryParams0.ymArrayEnd;
this.queryParams.materialCode = this.data.productCode;
this.queryParams.checkType = checkType;
this.viewStatus = "1";
this.queryParams.pageNum = 1;
this.queryParams.pageSize = 10;
this.getList();
},
/** 查询表格列表*/
getList() {
this.loading = true;
getCheckTaskTraceList(this.queryParams).then(response => {
this.itemList = response.rows;
this.total = response.total;
this.loading = false;
}
);
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
reset() {
this.form = {
checkResult: null,
startOA: null,
materialType: null,
materialFrom: null,
remarkCode: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
projectType: null,
};
this.resetForm("form");
this.form.checkResult = 'Y';
this.form.startOA = '0';
this.aqlNoOkVal = 0;
this.sampleCode = null;
this.checkLevel= null;
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
cancelForm() {
this.showFlag = false;
this.reset();
},
resetForm(formName) {
this.$refs[formName].resetFields();
}
}
};
</script>

@ -105,10 +105,10 @@
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :ref="tableIndex" :data="reportWorkList"
@selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" />
<el-table-column type="index" width="90" align="center" :index="indexMethod" label="序号" />
<el-table-column label="工单编码" align="center" prop="workorderCode" width="130">
<template slot-scope="scope">
<el-button type="text" @click="handleReportHz(scope.row)">{{ scope.row.workorderCode }}</el-button>
@ -893,6 +893,11 @@ export default {
this.getWarehouseList();
},
methods: {
//
indexMethod(index) {
return index + 1;
},
getWorkcenterList() {
getWorkcenterList().then((data) => {
this.options1 = data;

@ -173,8 +173,9 @@
<!--测量值弹窗-->
<el-dialog title="测量值" :visible.sync="valueOpen" width="600px" append-to-body>
<el-form :model="dynamicValidateForm" v-loading="dyloading" ref="dynamicValidateForm" label-width="100px" class="demo-dynamic">
<!--
<div v-if="this.upperDiff != null || this.downDiff !=null">
<el-form-item label="接受质量限" prop="checkLevel" v-if="this.typeCode == 'material' || this.typeCode == 'product'">
<el-form-item label="检测水平" prop="checkLevel" v-if="this.typeCode == 'material' || this.typeCode == 'product'">
<el-select placeholder="请选择检测水平类型" clearable
@change="setSampleLevel" v-model="dynamicValidateForm.checkLevel"
>
@ -199,7 +200,7 @@
/>
</el-select>
</el-form-item>
</div>
</div>-->
<el-form-item
v-for="(domain, index) in dynamicValidateForm.domains"
@ -608,28 +609,28 @@ export default {
var auto
let values = this.dynamicValidateForm.domains;
var actualValues = values.map(item => item.value);
if(this.typeCode=='material' || this.typeCode =='product'){//
//(使)
getAutoJudge(this.quality,
this.dynamicValidateForm.checkLevel,
this.dynamicValidateForm.sampleAql,
actualValues,
_this.downDiff,
_this.upperDiff
).then(response => {
autoStatus = response.data.status;
this.commitActualValueFun(this.recordId, actualValues,autoStatus,
this.checkLevel,
this.sampleAql,
response.data.sampleCode,
response.data.sampleQuality
);
});
// if(this.typeCode=='material' || this.typeCode =='product'){//
// //(使)
// getAutoJudge(this.quality,
// this.dynamicValidateForm.checkLevel,
// this.dynamicValidateForm.sampleAql,
// actualValues,
// _this.downDiff,
// _this.upperDiff
// ).then(response => {
// autoStatus = response.data.status;
// this.commitActualValueFun(this.recordId, actualValues,autoStatus,
// this.checkLevel,
// this.sampleAql,
// response.data.sampleCode,
// response.data.sampleQuality
// );
// });
//
}else{//
// //
// }else{//
this.commitActualValueFun(this.recordId, actualValues,autoStatus,null,null,null,null);
}
// }
} else {
console.log('error submit!!');
return false;
@ -725,6 +726,7 @@ export default {
this.picValueOpen = true;
this.recordId = row.recordId;
const files = row.fileUrls;
this.fileList = [];
files.map(item => (
this.fileList.push({
uid: i++,

@ -320,7 +320,7 @@
<el-col :span="8">
<el-form-item label="生产数量" prop="quality">
<el-input type="number" v-model="form.quality" placeholder="请输入生产数量" disabled/>
<el-input type="number" v-model="form.quality" placeholder="请输入生产数量"/>
</el-form-item>
</el-col>
</el-row>

@ -430,6 +430,7 @@
></el-option>
</el-select>
</el-form-item>
<!--
<el-form-item label="箱型" prop="mtart">
<el-select
v-model="form.boxType"
@ -444,21 +445,21 @@
:value="box.boxType"
></el-option>
</el-select>
</el-form-item>
</el-form-item>-->
<el-row>
<el-col :span="8">
<el-form-item label="长" prop="length" label-width="50px">
<el-input type="number" v-model="form.length" placeholder="请输入长" :readonly="true" />
<el-input type="number" v-model="form.length" placeholder="请输入长"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="宽" prop="width" label-width="50px">
<el-input type="number" v-model="form.width" placeholder="请输入宽" :readonly="true" />
<el-input type="number" v-model="form.width" placeholder="请输入宽"/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="高" prop="height" label-width="50px">
<el-input type="number" v-model="form.height" placeholder="请输入高" :readonly="true" />
<el-input type="number" v-model="form.height" placeholder="请输入高"/>
</el-form-item>
</el-col>
</el-row>
@ -688,9 +689,6 @@ import {
updateProductAttached,
addProductAttached,
} from "@/api/wms/product";
import {
listMesBox
} from "@/api/mes/mesBox"
import { syncProductSAP } from "@/api/technology/proroute";
export default {
@ -895,23 +893,6 @@ export default {
this.reset();
this.open = true;
this.title = "添加产品信息";
// MesBox
let param ={
"pageNum":1,
"pageSize":"50"
}
listMesBox(param).then((response) => {
// boxType boxTypes
this.boxTypes = response.rows.map((item) => ({
boxType: item.boxType, // boxType
length:item.length,
width:item.width,
height:item.height,
}));
}).catch((error) => {
console.error("请求 MesBox 数据失败:", error); //
});
},
/** 修改按钮操作 */
handleUpdate(row) {

@ -36,13 +36,10 @@ module.exports = {
// detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: {
// target: `http://192.168.202.20:8080`,
// target: `http://localhost:8080`,
// target: `http://172.18.80.215:8080`,
target: `http://localhost:8080`,
// target: `http://192.168.3.93:8080`,
// target: `http://192.168.3.158:8080`,
// target: `http://10.11.176.97:8080`,
target: `http://192.168.202.34:30000/prod-api`,
// target: `http://192.168.202.20:9000/prod-api`,
//target: `http://192.168.202.34:30000`,
changeOrigin: true,
pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: ''

Loading…
Cancel
Save