选择工单加分页

This commit is contained in:
2025-11-29 14:43:51 +08:00
parent 99656465e2
commit 4390305035
9 changed files with 586 additions and 240 deletions

BIN
dist.zip

Binary file not shown.

View File

@@ -202,6 +202,8 @@ export default {
open: false, open: false,
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1,
pageSize: 10,
workorderCode: null, workorderCode: null,
workorderName: null, workorderName: null,
workorderType: null, workorderType: null,
@@ -237,17 +239,43 @@ export default {
//2024 12 19 需求五 //2024 12 19 需求五
// console.log("response.rows 新增 炉号和班组两个字段 ⬇️"); // console.log("response.rows 新增 炉号和班组两个字段 ⬇️");
// console.log(response.rows); // console.log(response.rows);
this.total = response.total;
this.workorderList = response.rows; this.workorderList = response.rows;
this.loading = false; this.loading = false;
}); });
}, },
/** 搜索按钮操作 */ /** 搜索按钮操作 */
handleQuery() { handleQuery() {
this.queryParams.pageNum = 1;
this.getList(); this.getList();
}, },
/** 重置按钮操作 */ /** 重置按钮操作 */
resetQuery() { resetQuery() {
this.queryParams = {
pageNum: 1,
pageSize: 10,
workorderCode: null,
workorderName: null,
workorderType: null,
orderSource: null,
sourceCode: null,
productId: null,
productCode: null,
productName: null,
productSpc: null,
unitOfMeasure: null,
quantity: null,
quantityProduced: null,
quantityChanged: null,
quantityScheduled: null,
clientId: null,
clientCode: null,
clientName: null,
requestDate: null,
parentId: null,
ancestors: null,
status: "CONFIRMED",
};
this.resetForm("queryForm"); this.resetForm("queryForm");
this.handleQuery(); this.handleQuery();
}, },

View File

@@ -136,6 +136,7 @@
/> --> /> -->
<el-table-column label="生产工单" align="center" prop="workorderCode" /> <el-table-column label="生产工单" align="center" prop="workorderCode" />
<el-table-column label="炉号" align="center" prop="machineryNo" /> <el-table-column label="炉号" align="center" prop="machineryNo" />
<el-table-column label="成品规格" align="center" prop="productSpc" />
<el-table-column label="客户编号" align="center" prop="clientCode" /> <el-table-column label="客户编号" align="center" prop="clientCode" />
<el-table-column label="客户名称" align="center" prop="clientName" /> <el-table-column label="客户名称" align="center" prop="clientName" />
<el-table-column label="领料日期" align="center" prop="issueDate" width="180"> <el-table-column label="领料日期" align="center" prop="issueDate" width="180">

View File

@@ -49,6 +49,16 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="单据状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择单据状态" clearable>
<el-option
v-for="dict in dict.type.mes_order_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="入库日期" prop="recptDate"> <el-form-item label="入库日期" prop="recptDate">
<el-date-picker <el-date-picker
v-model="dateRange" v-model="dateRange"

View File

@@ -3,65 +3,163 @@
组件描述产品入库 组件描述产品入库
--> -->
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px"> <el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="100px"
>
<!-- 2024 12 19 需求六 --> <!-- 2024 12 19 需求六 -->
<el-form-item label="产品编码" prop="itemCode"> <el-form-item label="产品编码" prop="itemCode">
<el-input v-model="queryParams.itemCode" placeholder="请输入产品编码" clearable @keyup.enter.native="handleQuery" /> <el-input
v-model="queryParams.itemCode"
placeholder="请输入产品编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="入库单编号" prop="recptCode"> <el-form-item label="入库单编号" prop="recptCode">
<el-input v-model="queryParams.recptCode" placeholder="请输入入库单编号" clearable @keyup.enter.native="handleQuery" /> <el-input
v-model="queryParams.recptCode"
placeholder="请输入入库单编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="入库单名称" prop="recptName"> <el-form-item label="入库单名称" prop="recptName">
<el-input v-model="queryParams.recptName" placeholder="请输入入库单名称" clearable @keyup.enter.native="handleQuery" /> <el-input
v-model="queryParams.recptName"
placeholder="请输入入库单名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="生产工单" prop="workorderCode"> <el-form-item label="生产工单" prop="workorderCode">
<el-input v-model="queryParams.workorderCode" placeholder="请输入生产工单编码" clearable <el-input
@keyup.enter.native="handleQuery" /> v-model="queryParams.workorderCode"
placeholder="请输入生产工单编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="仓库" prop="warehouseName"> <el-form-item label="仓库" prop="warehouseName">
<el-input v-model="queryParams.warehouseName" placeholder="请输入仓库名称" clearable <el-input
@keyup.enter.native="handleQuery" /> v-model="queryParams.warehouseName"
placeholder="请输入仓库名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="单据状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择单据状态" clearable>
<el-option
v-for="dict in dict.type.mes_order_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="入库日期"> <el-form-item label="入库日期">
<el-date-picker v-model="dateRange" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" <el-date-picker
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker> v-model="dateRange"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button 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-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" <el-button
v-hasPermi="['mes:wm:productrecpt:add']">新增</el-button> type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['mes:wm:productrecpt:add']"
>新增</el-button
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate" <el-button
v-hasPermi="['mes:wm:productrecpt:edit']">修改</el-button> type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['mes:wm:productrecpt:edit']"
>修改</el-button
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete" <el-button
v-hasPermi="['mes:wm:productrecpt:remove']">删除</el-button> type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['mes:wm:productrecpt:remove']"
>删除</el-button
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" <el-button
v-hasPermi="['mes:wm:productrecpt:export']">导出</el-button> type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['mes:wm:productrecpt:export']"
>导出</el-button
>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="productrecptList" @selection-change="handleSelectionChange"> <el-table
v-loading="loading"
:data="productrecptList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="入库单编号" width="130px" align="center" prop="recptCode"> <el-table-column label="入库单编号" width="130px" align="center" prop="recptCode">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" @click="handleView(scope.row)" v-hasPermi="['mes:wm:productrecpt:query']">{{ <el-button
scope.row.recptCode }}</el-button> type="text"
@click="handleView(scope.row)"
v-hasPermi="['mes:wm:productrecpt:query']"
>{{ scope.row.recptCode }}</el-button
>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="入库单名称" width="150px" align="center" prop="recptName" :show-overflow-tooltip="true" /> <el-table-column
<el-table-column label="生产工单编码" width="150px" align="center" prop="workorderCode" /> label="入库单名称"
width="150px"
align="center"
prop="recptName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="生产工单编码"
width="150px"
align="center"
prop="workorderCode"
/>
<el-table-column label="产品编码" align="center" prop="itemCode" /> <el-table-column label="产品编码" align="center" prop="itemCode" />
<el-table-column label="产品名称" align="center" prop="itemName" /> <el-table-column label="产品名称" align="center" prop="itemName" />
<el-table-column label="班组" align="center" prop="teamName" /> <el-table-column label="班组" align="center" prop="teamName" />
@@ -69,9 +167,7 @@
<el-table-column label="炉号" align="center" prop="machineryNo" /> <el-table-column label="炉号" align="center" prop="machineryNo" />
<el-table-column label="合计重量" align="center" prop="sumQuantity"> <el-table-column label="合计重量" align="center" prop="sumQuantity">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ <span>{{ scope.row.sumQuantity ? scope.row.sumQuantity + "KG" : "—" }}</span>
scope.row.sumQuantity ? scope.row.sumQuantity + "KG" : "—"
}}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="入库日期" align="center" prop="recptDate" width="120"> <el-table-column label="入库日期" align="center" prop="recptDate" width="120">
@@ -86,24 +182,64 @@
</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">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-video-play" v-if="scope.row.status == 'PREPARE'" <el-button
@click="handleExecute(scope.row)" v-hasPermi="['mes:wm:productrecpt:edit']">执行入库</el-button> size="mini"
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" type="text"
v-if="scope.row.status == 'PREPARE'" v-hasPermi="['mes:wm:productrecpt:edit']">修改</el-button> icon="el-icon-video-play"
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" v-if="scope.row.status == 'PREPARE'"
v-if="scope.row.status == 'PREPARE'" v-hasPermi="['mes:wm:productrecpt:remove']">删除</el-button> @click="handleExecute(scope.row)"
v-hasPermi="['mes:wm:productrecpt:edit']"
>执行入库</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-if="scope.row.status == 'PREPARE'"
v-hasPermi="['mes:wm:productrecpt:edit']"
>修改</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-if="scope.row.status == 'PREPARE'"
v-hasPermi="['mes:wm:productrecpt:remove']"
>删除</el-button
>
<!-- 需求八 单据撤销 --> <!-- 需求八 单据撤销 -->
<!-- 标记 此处的按钮鉴权 待优化 --> <!-- 标记 此处的按钮鉴权 待优化 -->
<el-button size="mini" type="text" icon="el-icon-refresh-left" v-if="scope.row.status == 'FINISHED'" <el-button
@click="handleWithdrawn(scope.row)" v-hasPermi="['mes:wm:productrecpt:edit']">撤销</el-button> size="mini"
<el-button size="mini" type="text" icon="el-icon-view" v-if="scope.row.status == 'CANCEL'" type="text"
@click="handleLookWithdrawn(scope.row)" v-hasPermi="['mes:wm:productrecpt:edit']">查看撤销原因</el-button> icon="el-icon-refresh-left"
v-if="scope.row.status == 'FINISHED'"
@click="handleWithdrawn(scope.row)"
v-hasPermi="['mes:wm:productrecpt:edit']"
>撤销</el-button
>
<el-button
size="mini"
type="text"
icon="el-icon-view"
v-if="scope.row.status == 'CANCEL'"
@click="handleLookWithdrawn(scope.row)"
v-hasPermi="['mes:wm:productrecpt:edit']"
>查看撤销原因</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" <pagination
@pagination="getList" /> v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改产品入库录对话框 --> <!-- 添加或修改产品入库录对话框 -->
<el-dialog :title="title" :visible.sync="open" width="960px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="960px" append-to-body>
@@ -116,8 +252,13 @@
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label-width="80"> <el-form-item label-width="80">
<el-switch v-model="autoGenFlag" active-color="#13ce66" active-text="自动生成" <el-switch
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view' && form.status == 'PREPARE'"> v-model="autoGenFlag"
active-color="#13ce66"
active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)"
v-if="optType != 'view' && form.status == 'PREPARE'"
>
</el-switch> </el-switch>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -130,10 +271,21 @@
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="生产工单" prop="workorderCode"> <el-form-item label="生产工单" prop="workorderCode">
<el-input v-model="form.workorderCode" placeholder="请选择生产工单" readonly> <el-input
<el-button slot="append" icon="el-icon-search" @click="handleWorkorderSelect"></el-button> v-model="form.workorderCode"
placeholder="请选择生产工单"
readonly
>
<el-button
slot="append"
icon="el-icon-search"
@click="handleWorkorderSelect"
></el-button>
</el-input> </el-input>
<WorkorderSelect ref="woSelect" @onSelected="onWorkorderSelected"></WorkorderSelect> <WorkorderSelect
ref="woSelect"
@onSelected="onWorkorderSelected"
></WorkorderSelect>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
@@ -143,7 +295,13 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="生产日期"> <el-form-item label="生产日期">
<el-date-picker clearable readonly v-model="form.produceDate" type="date" value-format="yyyy-MM-dd"> <el-date-picker
clearable
readonly
v-model="form.produceDate"
type="date"
value-format="yyyy-MM-dd"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -168,16 +326,25 @@
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="入库日期" prop="recptDate"> <el-form-item label="入库日期" prop="recptDate">
<el-date-picker clearable v-model="form.recptDate" type="date" value-format="yyyy-MM-dd" <el-date-picker
placeholder="请选择入库日期"> clearable
v-model="form.recptDate"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择入库日期"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- 2024 12 13 需求一 --> <!-- 2024 12 13 需求一 -->
<el-col :span="8"> <el-col :span="8">
<el-form-item label="入库仓库" prop="warehouseId"> <el-form-item label="入库仓库" prop="warehouseId">
<el-cascader v-model="warehouseInfo" :options="warehouseOptions" :props="warehouseProps" <el-cascader
@change="handleWarehouseChanged"> v-model="warehouseInfo"
:options="warehouseOptions"
:props="warehouseProps"
@change="handleWarehouseChanged"
>
</el-cascader> </el-cascader>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -199,25 +366,52 @@
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
<el-divider v-if="form.recptId != null" content-position="center">物料信息</el-divider> <el-divider v-if="form.recptId != null" content-position="center"
>物料信息</el-divider
>
<el-card shadow="always" v-if="form.recptId != null" class="box-card"> <el-card shadow="always" v-if="form.recptId != null" class="box-card">
<Productrecptline :recptId="form.recptId" :optType="optType" :workorderId="form.workorderId" <Productrecptline
:itemId="form.itemId" :item="item" :warehouseInfo="warehouseInfo" :upFlag="upFlag" :recptId="form.recptId"
@changeUpFlag="changeUpFlag"></Productrecptline> :optType="optType"
:workorderId="form.workorderId"
:itemId="form.itemId"
:item="item"
:warehouseInfo="warehouseInfo"
:upFlag="upFlag"
@changeUpFlag="changeUpFlag"
></Productrecptline>
</el-card> </el-card>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="cancel" v-if="optType == 'view' || form.status != 'PREPARE'">返回</el-button> <el-button
<el-button type="primary" @click="submitForm" v-if="form.status == 'PREPARE' && optType != 'view'"> type="primary"
</el-button> @click="cancel"
v-if="optType == 'view' || form.status != 'PREPARE'"
>返回</el-button
>
<el-button
type="primary"
@click="submitForm"
v-if="form.status == 'PREPARE' && optType != 'view'"
> </el-button
>
<el-button @click="cancel"> </el-button> <el-button @click="cancel"> </el-button>
</div> </div>
</el-dialog> </el-dialog>
<!-- 需求八 单据撤销 对话框 --> <!-- 需求八 单据撤销 对话框 -->
<el-dialog title="单据撤销" :visible.sync="WithdrawnFlag" width="30%"> <el-dialog title="单据撤销" :visible.sync="WithdrawnFlag" width="30%">
<el-form ref="WithdrawnForm" :model="WithdrawnForm" :rules="WithdrawnRules" label-width="120px"> <el-form
ref="WithdrawnForm"
:model="WithdrawnForm"
:rules="WithdrawnRules"
label-width="120px"
>
<el-form-item label="撤销原因:" prop="cancelRemark"> <el-form-item label="撤销原因:" prop="cancelRemark">
<el-input type="textarea" v-model="WithdrawnForm.cancelRemark" placeholder="请输入备注"></el-input> <el-input
type="textarea"
v-model="WithdrawnForm.cancelRemark"
placeholder="请输入备注"
></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
@@ -239,22 +433,26 @@
<!-- 撤销错误 对话框 提示 需求八 --> <!-- 撤销错误 对话框 提示 需求八 -->
<el-dialog title="提示" :visible.sync="WithdrawnErrorFlag" width="45%"> <el-dialog title="提示" :visible.sync="WithdrawnErrorFlag" width="45%">
<div> <div>
<p style="margin-top: 0px;">当前单据部分产品物料已出库相关单据</p> <p style="margin-top: 0px">当前单据部分产品物料已出库相关单据</p>
<p v-for="(value, name, index) in WithdrawnErrorObj" :key="index"> <p v-for="(value, name, index) in WithdrawnErrorObj" :key="index">
<span>{{ WithdrawnErrorObjMap[name].CNName }}</span> <span>{{ WithdrawnErrorObjMap[name].CNName }}</span>
<router-link :to="{ <router-link
path: WithdrawnErrorObjMap[name].path, :to="{
query: { Parameters: item }, path: WithdrawnErrorObjMap[name].path,
}" v-for="(item, ind) in value" :key="ind"> query: { Parameters: item },
<span style=" }"
color: #02a7f1; v-for="(item, ind) in value"
border-bottom: 1px solid #02a7f1; :key="ind"
margin-right: 8px; >
" :id="value.length - 1 == ind ? '' : 'WithdrawnErrorObj'" @click="WithdrawnErrorFlag = false">{{ item <span
}}</span> style="color: #02a7f1; border-bottom: 1px solid #02a7f1; margin-right: 8px"
:id="value.length - 1 == ind ? '' : 'WithdrawnErrorObj'"
@click="WithdrawnErrorFlag = false"
>{{ item }}</span
>
</router-link> </router-link>
</p> </p>
<p style="margin-bottom: 0px;">请溯源后撤销该单据</p> <p style="margin-bottom: 0px">请溯源后撤销该单据</p>
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
@@ -268,7 +466,7 @@ import {
addProductrecpt, addProductrecpt,
updateProductrecpt, updateProductrecpt,
execute, execute,
cancelFn cancelFn,
} from "@/api/mes/wm/productrecpt"; } from "@/api/mes/wm/productrecpt";
import { getMdItem } from "@/api/mes/md/mdItem"; import { getMdItem } from "@/api/mes/md/mdItem";
import WorkorderSelect from "@/components/workorderSelect/single.vue"; import WorkorderSelect from "@/components/workorderSelect/single.vue";
@@ -354,15 +552,9 @@ export default {
form: {}, form: {},
// 表单校验 // 表单校验
rules: { rules: {
recptCode: [ recptCode: [{ required: true, message: "入库单编号不能为空", trigger: "blur" }],
{ required: true, message: "入库单编号不能为空", trigger: "blur" }, recptDate: [{ required: true, message: "请选择入库日期", trigger: "blur" }],
], workorderCode: [{ required: true, message: "请选择生产工单", trigger: "blur" }],
recptDate: [
{ required: true, message: "请选择入库日期", trigger: "blur" },
],
workorderCode: [
{ required: true, message: "请选择生产工单", trigger: "blur" },
],
}, },
item: {}, item: {},
// 单据撤销 对话框 开关 // 单据撤销 对话框 开关
@@ -370,13 +562,11 @@ export default {
// 单据撤销 对话框 表单参数 // 单据撤销 对话框 表单参数
WithdrawnForm: { WithdrawnForm: {
recptId: null, recptId: null,
cancelRemark: null cancelRemark: null,
}, },
// 撤销单 表单校验 // 撤销单 表单校验
WithdrawnRules: { WithdrawnRules: {
cancelRemark: [ cancelRemark: [{ required: true, message: "撤销原因不能为空", trigger: "blur" }],
{ required: true, message: "撤销原因不能为空", trigger: "blur" }
]
}, },
// 查看撤销原因 以及 开关 // 查看撤销原因 以及 开关
LookWithdrawnFlag: false, LookWithdrawnFlag: false,
@@ -414,13 +604,13 @@ export default {
/** 查询产品入库录列表 */ /** 查询产品入库录列表 */
getList() { getList() {
this.loading = true; this.loading = true;
listProductrecpt( listProductrecpt(this.addDateRange(this.queryParams, this.dateRange)).then(
this.addDateRange(this.queryParams, this.dateRange) (response) => {
).then((response) => { this.productrecptList = response.rows;
this.productrecptList = response.rows; this.total = response.total;
this.total = response.total; this.loading = false;
this.loading = false; }
}); );
}, },
getWarehouseList() { getWarehouseList() {
getTreeList().then((response) => { getTreeList().then((response) => {
@@ -523,10 +713,7 @@ export default {
this.reset(); this.reset();
const recptId = row.recptId || this.ids; const recptId = row.recptId || this.ids;
localStorage.setItem( localStorage.setItem("productrecpt-handleUpdate-recptId", JSON.stringify(recptId));
"productrecpt-handleUpdate-recptId",
JSON.stringify(recptId)
);
getProductrecpt(recptId).then((response) => { getProductrecpt(recptId).then((response) => {
console.log("打印目标-回显入库仓库➡️", response.data); console.log("打印目标-回显入库仓库➡️", response.data);
this.warehouseInfo = [ this.warehouseInfo = [
@@ -553,7 +740,7 @@ export default {
this.getList(); this.getList();
this.$modal.msgSuccess("入库成功"); this.$modal.msgSuccess("入库成功");
}) })
.catch(() => { }); .catch(() => {});
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
@@ -587,7 +774,7 @@ export default {
this.getList(); this.getList();
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");
}) })
.catch(() => { }); .catch(() => {});
}, },
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
@@ -647,10 +834,7 @@ export default {
// 效果待确认 重要标记 2024 12 13 需求二 点击“查看” // 效果待确认 重要标记 2024 12 13 需求二 点击“查看”
this.reset(); this.reset();
const recptIds = row.recptId; const recptIds = row.recptId;
localStorage.setItem( localStorage.setItem("productrecpt-handleUpdate-recptId", JSON.stringify(recptIds));
"productrecpt-handleUpdate-recptId",
JSON.stringify(recptIds)
);
getProductrecpt(recptIds).then((response) => { getProductrecpt(recptIds).then((response) => {
console.log("打印目标-回显入库仓库➡️", response.data); console.log("打印目标-回显入库仓库➡️", response.data);
this.warehouseInfo = [ this.warehouseInfo = [
@@ -687,27 +871,29 @@ export default {
}, },
// 撤销原因 提交 // 撤销原因 提交
handleWithdrawnSubmit(formName) { handleWithdrawnSubmit(formName) {
this.$refs['WithdrawnForm'].validate((valid) => { this.$refs["WithdrawnForm"].validate((valid) => {
if (valid) { if (valid) {
cancelFn(this.WithdrawnForm).then((res) => { cancelFn(this.WithdrawnForm)
console.log(res); .then((res) => {
if (res.code == 200) { console.log(res);
this.$modal.msgSuccess(res.msg); if (res.code == 200) {
} this.$modal.msgSuccess(res.msg);
}).catch((res) => { }
console.log(res.data); })
// 错误提示 对象 (内容) .catch((res) => {
this.WithdrawnErrorObj = res.data; console.log(res.data);
// 打开错误提示 对话框 // 错误提示 对象 (内容)
this.WithdrawnErrorFlag = true; this.WithdrawnErrorObj = res.data;
// 打开错误提示 对话框
}).finally(() => { this.WithdrawnErrorFlag = true;
this.WithdrawnFlag = false; })
this.$refs['WithdrawnForm'].resetFields(); .finally(() => {
this.getList(); this.WithdrawnFlag = false;
}); this.$refs["WithdrawnForm"].resetFields();
this.getList();
});
} else { } else {
console.log('error submit!!'); console.log("error submit!!");
return false; return false;
} }
}); });

View File

@@ -33,6 +33,16 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="单据状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择单据状态" clearable>
<el-option
v-for="dict in dict.type.mes_order_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="退料日期" prop="recptDate"> <el-form-item label="退料日期" prop="recptDate">
<el-date-picker <el-date-picker
v-model="dateRange" v-model="dateRange"

View File

@@ -41,6 +41,16 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="单据状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择单据状态" clearable>
<el-option
v-for="dict in dict.type.mes_order_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="日期" prop="recptDate"> <el-form-item label="日期" prop="recptDate">
<el-date-picker <el-date-picker
v-model="dateRange" v-model="dateRange"
@@ -418,7 +428,7 @@ export default {
rtDate: null, rtDate: null,
status: null, status: null,
}, },
dateRange: [], dateRange: [],
// 表单参数 // 表单参数
form: {}, form: {},
// 表单校验 // 表单校验
@@ -457,11 +467,13 @@ export default {
/** 查询供应商退货列表 */ /** 查询供应商退货列表 */
getList() { getList() {
this.loading = true; this.loading = true;
listRtvendor(this.addDateRange(this.queryParams, this.dateRange)).then((response) => { listRtvendor(this.addDateRange(this.queryParams, this.dateRange)).then(
this.rtvendorList = response.rows; (response) => {
this.total = response.total; this.rtvendorList = response.rows;
this.loading = false; this.total = response.total;
}); this.loading = false;
}
);
}, },
// 取消按钮 // 取消按钮
cancel() { cancel() {
@@ -487,7 +499,7 @@ export default {
updateBy: null, updateBy: null,
updateTime: null, updateTime: null,
}; };
this.dateRange = []; this.dateRange = [];
this.resetForm("form"); this.resetForm("form");
}, },
/** 搜索按钮操作 */ /** 搜索按钮操作 */

View File

@@ -1,6 +1,13 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px"> <el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="100px"
>
<el-form-item label="转移单编号" prop="transferCode"> <el-form-item label="转移单编号" prop="transferCode">
<el-input <el-input
v-model="queryParams.transferCode" v-model="queryParams.transferCode"
@@ -18,7 +25,11 @@
/> />
</el-form-item> </el-form-item>
<el-form-item label="转移单类型" prop="transferType"> <el-form-item label="转移单类型" prop="transferType">
<el-select v-model="queryParams.transferType" placeholder="请选择转移单类型" clearable> <el-select
v-model="queryParams.transferType"
placeholder="请选择转移单类型"
clearable
>
<el-option <el-option
v-for="dict in dict.type.mes_transfer_type" v-for="dict in dict.type.mes_transfer_type"
:key="dict.value" :key="dict.value"
@@ -43,7 +54,17 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item label="转移日期" prop="recptDate"> <el-form-item label="单据状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择单据状态" clearable>
<el-option
v-for="dict in dict.type.mes_order_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="转移日期" prop="recptDate">
<el-date-picker <el-date-picker
v-model="dateRange" v-model="dateRange"
style="width: 240px" style="width: 240px"
@@ -55,7 +76,9 @@
></el-date-picker> ></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button 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-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -69,7 +92,8 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['mes:wm:transfer:add']" v-hasPermi="['mes:wm:transfer:add']"
>新增</el-button> >新增</el-button
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@@ -80,7 +104,8 @@
:disabled="single" :disabled="single"
@click="handleUpdate" @click="handleUpdate"
v-hasPermi="['mes:wm:transfer:edit']" v-hasPermi="['mes:wm:transfer:edit']"
>修改</el-button> >修改</el-button
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
@@ -91,38 +116,47 @@
:disabled="multiple" :disabled="multiple"
@click="handleDelete" @click="handleDelete"
v-hasPermi="['mes:wm:transfer:remove']" v-hasPermi="['mes:wm:transfer:remove']"
>删除</el-button> >删除</el-button
>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="transferList" @selection-change="handleSelectionChange"> <el-table
v-loading="loading"
:data="transferList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="转移单编号" align="center" prop="transferCode" > <el-table-column label="转移单编号" align="center" prop="transferCode">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
type="text" type="text"
@click="handleView(scope.row)" @click="handleView(scope.row)"
v-hasPermi="['mes:wm:transfer:query']" v-hasPermi="['mes:wm:transfer:query']"
>{{scope.row.transferCode}}</el-button> >{{ scope.row.transferCode }}</el-button
>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="转移单名称" align="center" prop="transferName" /> <el-table-column label="转移单名称" align="center" prop="transferName" />
<el-table-column label="转移单类型" align="center" prop="transferType"> <el-table-column label="转移单类型" align="center" prop="transferType">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.mes_transfer_type" :value="scope.row.transferType"/> <dict-tag
:options="dict.type.mes_transfer_type"
:value="scope.row.transferType"
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="移出仓库" align="center" prop="fromWarehouseName" /> <el-table-column label="移出仓库" align="center" prop="fromWarehouseName" />
<el-table-column label="移入仓库" align="center" prop="toWarehouseName" /> <el-table-column label="移入仓库" align="center" prop="toWarehouseName" />
<el-table-column label="转移日期" align="center" prop="transferDate" width="180"> <el-table-column label="转移日期" align="center" prop="transferDate" width="180">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.transferDate, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.transferDate, "{y}-{m}-{d}") }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="单据状态" align="center" prop="status"> <el-table-column label="单据状态" align="center" prop="status">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.mes_order_status" :value="scope.row.status"/> <dict-tag :options="dict.type.mes_order_status" :value="scope.row.status" />
</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">
@@ -131,26 +165,29 @@
size="mini" size="mini"
type="text" type="text"
icon="el-icon-video-play" icon="el-icon-video-play"
v-if="(scope.row.status =='PREPARE' && scope.row.transferType == 'INNER')" v-if="scope.row.status == 'PREPARE' && scope.row.transferType == 'INNER'"
@click="handleExecute(scope.row)" @click="handleExecute(scope.row)"
v-hasPermi="['mes:wm:transfer:edit']" v-hasPermi="['mes:wm:transfer:edit']"
>执行转移</el-button> >执行转移</el-button
>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-video-play" icon="el-icon-video-play"
v-if="(scope.row.status =='PREPARE' && scope.row.transferType == 'OUTER')" v-if="scope.row.status == 'PREPARE' && scope.row.transferType == 'OUTER'"
@click="handleTransOut(scope.row)" @click="handleTransOut(scope.row)"
v-hasPermi="['mes:wm:transfer:edit']" v-hasPermi="['mes:wm:transfer:edit']"
>执行移出</el-button> >执行移出</el-button
>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-video-play" icon="el-icon-video-play"
v-if="(scope.row.status =='CONFIRMED' && scope.row.transferType == 'OUTER')" v-if="scope.row.status == 'CONFIRMED' && scope.row.transferType == 'OUTER'"
@click="handleExecute(scope.row)" @click="handleExecute(scope.row)"
v-hasPermi="['mes:wm:transfer:edit']" v-hasPermi="['mes:wm:transfer:edit']"
>执行移入</el-button> >执行移入</el-button
>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
@@ -158,7 +195,8 @@
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-if="scope.row.status == 'PREPARE'" v-if="scope.row.status == 'PREPARE'"
v-hasPermi="['mes:wm:transfer:edit']" v-hasPermi="['mes:wm:transfer:edit']"
>修改</el-button> >修改</el-button
>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
@@ -166,13 +204,14 @@
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-if="scope.row.status == 'PREPARE'" v-if="scope.row.status == 'PREPARE'"
v-hasPermi="['mes:wm:transfer:remove']" v-hasPermi="['mes:wm:transfer:remove']"
>删除</el-button> >删除</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination <pagination
v-show="total>0" v-show="total > 0"
:total="total" :total="total"
:page.sync="queryParams.pageNum" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@@ -189,11 +228,14 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label-width="80"> <el-form-item label-width="80">
<el-switch v-model="autoGenFlag" <el-switch
active-color="#13ce66" v-model="autoGenFlag"
active-text="自动生成" active-color="#13ce66"
@change="handleAutoGenChange(autoGenFlag)" v-if="optType != 'view' && form.status =='PREPARE'"> active-text="自动生成"
@change="handleAutoGenChange(autoGenFlag)"
v-if="optType != 'view' && form.status == 'PREPARE'"
>
</el-switch> </el-switch>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -211,7 +253,8 @@
v-for="dict in dict.type.mes_transfer_type" v-for="dict in dict.type.mes_transfer_type"
:key="dict.value" :key="dict.value"
:label="dict.value" :label="dict.value"
>{{dict.label}}</el-radio> >{{ dict.label }}</el-radio
>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -241,7 +284,11 @@
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="移出仓库" prop="fromWarehouseId"> <el-form-item label="移出仓库" prop="fromWarehouseId">
<el-select v-model="form.fromWarehouseId" placeholder="请选择移出仓库" clearable> <el-select
v-model="form.fromWarehouseId"
placeholder="请选择移出仓库"
clearable
>
<el-option <el-option
v-for="dict in warehouseList" v-for="dict in warehouseList"
:key="dict.warehosueId" :key="dict.warehosueId"
@@ -253,7 +300,11 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="移入仓库" prop="toWarehouseId"> <el-form-item label="移入仓库" prop="toWarehouseId">
<el-select v-model="form.toWarehouseId" placeholder="请选择移入仓库" clearable> <el-select
v-model="form.toWarehouseId"
placeholder="请选择移入仓库"
clearable
>
<el-option <el-option
v-for="dict in warehouseList" v-for="dict in warehouseList"
:key="dict.warehosueId" :key="dict.warehosueId"
@@ -265,11 +316,13 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="转移日期" prop="transferDate"> <el-form-item label="转移日期" prop="transferDate">
<el-date-picker clearable <el-date-picker
clearable
v-model="form.transferDate" v-model="form.transferDate"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="请选择转移日期"> placeholder="请选择转移日期"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -281,15 +334,32 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
<el-divider v-if="form.transferId !=null" content-position="center">物料信息</el-divider> <el-divider v-if="form.transferId != null" content-position="center"
<el-card shadow="always" v-if="form.transferId !=null" class="box-card"> >物料信息</el-divider
<Transferline ref=line :transferId="form.transferId" :fromWarehouseId="form.fromWarehouseId" :toWarehouseId="form.toWarehouseId" :optType="optType"></Transferline> >
</el-card> <el-card shadow="always" v-if="form.transferId != null" class="box-card">
<Transferline
ref="line"
:transferId="form.transferId"
:fromWarehouseId="form.fromWarehouseId"
:toWarehouseId="form.toWarehouseId"
:optType="optType"
></Transferline>
</el-card>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="cancel" v-if="optType =='view' || form.status !='PREPARE' ">返回</el-button> <el-button
<el-button type="primary" @click="submitForm" v-if="form.status =='PREPARE' && optType !='view' "> </el-button> type="primary"
@click="cancel"
v-if="optType == 'view' || form.status != 'PREPARE'"
>返回</el-button
>
<el-button
type="primary"
@click="submitForm"
v-if="form.status == 'PREPARE' && optType != 'view'"
> </el-button
>
<el-button @click="cancel"> </el-button> <el-button @click="cancel"> </el-button>
</div> </div>
</el-dialog> </el-dialog>
@@ -297,18 +367,25 @@
</template> </template>
<script> <script>
import { listTransfer, getTransfer, delTransfer, addTransfer, updateTransfer, execute} from "@/api/mes/wm/transfer"; import {
import {listWarehouse} from "@/api/mes/wm/warehouse"; listTransfer,
import {genCode} from "@/api/system/autocode/rule"; getTransfer,
delTransfer,
addTransfer,
updateTransfer,
execute,
} from "@/api/mes/wm/transfer";
import { listWarehouse } from "@/api/mes/wm/warehouse";
import { genCode } from "@/api/system/autocode/rule";
import Transferline from "./line.vue"; import Transferline from "./line.vue";
export default { export default {
name: "Transfer", name: "Transfer",
components: {Transferline}, components: { Transferline },
dicts: ['mes_transfer_type','mes_order_status'], dicts: ["mes_transfer_type", "mes_order_status"],
data() { data() {
return { return {
//自动生成编码 //自动生成编码
autoGenFlag:false, autoGenFlag: false,
optType: undefined, optType: undefined,
// 遮罩层 // 遮罩层
loading: true, loading: true,
@@ -333,31 +410,39 @@ export default {
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
transferCode: null, transferName: null, transferType: null, destination: null, carrier: null, bookingNote: null, fromWarehouseId: null, fromWarehouseCode: null, fromWarehouseName: null, toWarehouseId: null, toWarehouseCode: null, toWarehouseName: null, transferDate: null, status: null, }, transferCode: null,
transferName: null,
transferType: null,
destination: null,
carrier: null,
bookingNote: null,
fromWarehouseId: null,
fromWarehouseCode: null,
fromWarehouseName: null,
toWarehouseId: null,
toWarehouseCode: null,
toWarehouseName: null,
transferDate: null,
status: null,
},
// 表单参数 // 表单参数
form: {}, form: {},
dateRange: [], dateRange: [],
// 表单校验 // 表单校验
rules: { rules: {
transferCode: [ transferCode: [
{ required: true, message: "转移单编号不能为空", trigger: "blur" } { required: true, message: "转移单编号不能为空", trigger: "blur" },
], ],
transferName: [ transferName: [
{ required: true, message: "转移单名称不能为空", trigger: "blur" } { required: true, message: "转移单名称不能为空", trigger: "blur" },
], ],
transferType: [ transferType: [
{ required: true, message: "转移单类型不能为空", trigger: "blur" } { required: true, message: "转移单类型不能为空", trigger: "blur" },
], ],
transferDate: [ transferDate: [{ required: true, message: "请选择转移时间", trigger: "blur" }],
{ required: true, message: "请选择转移时间", trigger: "blur" } fromWarehouseId: [{ required: true, message: "请选择转出仓库", trigger: "blur" }],
], toWarehouseId: [{ required: true, message: "请选择转入仓库", trigger: "blur" }],
fromWarehouseId: [ },
{ required: true, message: "请选择转出仓库", trigger: "blur" }
],
toWarehouseId: [
{ required: true, message: "请选择转入仓库", trigger: "blur" }
]
}
}; };
}, },
created() { created() {
@@ -368,15 +453,17 @@ export default {
/** 查询转移单列表 */ /** 查询转移单列表 */
getList() { getList() {
this.loading = true; this.loading = true;
listTransfer(this.addDateRange(this.queryParams, this.dateRange)).then(response => { listTransfer(this.addDateRange(this.queryParams, this.dateRange)).then(
this.transferList = response.rows; (response) => {
this.total = response.total; this.transferList = response.rows;
this.loading = false; this.total = response.total;
}); this.loading = false;
}
);
}, },
//获取仓库信息 //获取仓库信息
getWarehouseList(){ getWarehouseList() {
listWarehouse().then(response => { listWarehouse().then((response) => {
this.warehouseList = response.rows; this.warehouseList = response.rows;
}); });
}, },
@@ -411,7 +498,7 @@ export default {
createBy: null, createBy: null,
createTime: null, createTime: null,
updateBy: null, updateBy: null,
updateTime: null updateTime: null,
}; };
this.autoGenFlag = false; this.autoGenFlag = false;
this.resetForm("form"); this.resetForm("form");
@@ -429,9 +516,9 @@ export default {
}, },
// 多选框选中数据 // 多选框选中数据
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map(item => item.transferId) this.ids = selection.map((item) => item.transferId);
this.single = selection.length!==1 this.single = selection.length !== 1;
this.multiple = !selection.length this.multiple = !selection.length;
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
handleAdd() { handleAdd() {
@@ -441,10 +528,10 @@ export default {
this.optType = "add"; this.optType = "add";
}, },
// 查询明细按钮操作 // 查询明细按钮操作
handleView(row){ handleView(row) {
this.reset(); this.reset();
const transferId = row.transferId const transferId = row.transferId;
getTransfer(transferId).then(response => { getTransfer(transferId).then((response) => {
this.form = response.data; this.form = response.data;
this.open = true; this.open = true;
this.title = "查看转移单信息"; this.title = "查看转移单信息";
@@ -454,8 +541,8 @@ export default {
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate(row) { handleUpdate(row) {
this.reset(); this.reset();
const transferId = row.transferId || this.ids const transferId = row.transferId || this.ids;
getTransfer(transferId).then(response => { getTransfer(transferId).then((response) => {
this.form = response.data; this.form = response.data;
this.open = true; this.open = true;
this.title = "修改转移单"; this.title = "修改转移单";
@@ -464,17 +551,17 @@ export default {
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
this.$refs["form"].validate(valid => { this.$refs["form"].validate((valid) => {
if (valid) { if (valid) {
debugger; debugger;
if (this.form.transferId != null) { if (this.form.transferId != null) {
updateTransfer(this.form).then(response => { updateTransfer(this.form).then((response) => {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.open = false; this.open = false;
this.getList(); this.getList();
}); });
} else { } else {
addTransfer(this.form).then(response => { addTransfer(this.form).then((response) => {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.open = false; this.open = false;
this.getList(); this.getList();
@@ -483,54 +570,66 @@ export default {
} }
}); });
}, },
handleTransOut(row){ handleTransOut(row) {
const transferId = row.transferId const transferId = row.transferId;
getTransfer(transferId).then(response => { getTransfer(transferId).then((response) => {
this.form = response.data; this.form = response.data;
this.form.status = 'CONFIRMED'; this.form.status = "CONFIRMED";
updateTransfer(this.form).then(response => { updateTransfer(this.form).then((response) => {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.open = false; this.open = false;
this.getList(); this.getList();
}); });
}); });
}, },
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {
const transferIds = row.transferId || this.ids; const transferIds = row.transferId || this.ids;
this.$modal.confirm('是否确认删除转移单编号为"' + transferIds + '"的数据项?').then(function() { this.$modal
return delTransfer(transferIds); .confirm('是否确认删除转移单编号为"' + transferIds + '"的数据项?')
}).then(() => { .then(function () {
this.getList(); return delTransfer(transferIds);
this.$modal.msgSuccess("删除成功"); })
}).catch(() => {}); .then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
})
.catch(() => {});
}, },
//执行转移 //执行转移
handleExecute(row){ handleExecute(row) {
const transferIds = row.transferId || this.ids; const transferIds = row.transferId || this.ids;
this.$modal.confirm('确认执行转移?').then(function() { this.$modal
return execute(transferIds)//执行转移 .confirm("确认执行转移?")
}).then(() => { .then(function () {
this.getList(); return execute(transferIds); //执行转移
this.$modal.msgSuccess("转移成功"); })
}).catch(() => {}); .then(() => {
this.getList();
this.$modal.msgSuccess("转移成功");
})
.catch(() => {});
}, },
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
this.download('mes/wm/transfer/export', { this.download(
...this.queryParams "mes/wm/transfer/export",
}, `transfer_${new Date().getTime()}.xlsx`) {
...this.queryParams,
},
`transfer_${new Date().getTime()}.xlsx`
);
}, },
//自动生成编码 //自动生成编码
handleAutoGenChange(autoGenFlag){ handleAutoGenChange(autoGenFlag) {
if(autoGenFlag){ if (autoGenFlag) {
genCode('TRANSFER_CODE').then(response =>{ genCode("TRANSFER_CODE").then((response) => {
this.form.transferCode = response; this.form.transferCode = response;
}); });
}else{ } else {
this.form.transferCode = null; this.form.transferCode = null;
} }
} },
} },
}; };
</script> </script>

View File

@@ -41,8 +41,8 @@ module.exports = {
proxy: { proxy: {
// detail: https://cli.vuejs.org/config/#devserver-proxy // detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: { [process.env.VUE_APP_BASE_API]: {
// target: `http://172.16.10.97:8002`, // target: `https://www.sdhuixinjituan.com:8001/prod-api/`,
target: `http://172.16.10.97:8002`, target: `http://172.16.10.13:8002/`,
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {