|
@@ -1,41 +1,63 @@
|
|
|
<template>
|
|
<template>
|
|
|
<div>
|
|
<div>
|
|
|
<layout>
|
|
<layout>
|
|
|
- <!-- <h1 style="margin: 0%;margin-bottom: 6px;">入库</h1> -->
|
|
|
|
|
<el-row :gutter="24" style="margin-bottom: 6px;">
|
|
<el-row :gutter="24" style="margin-bottom: 6px;">
|
|
|
- <el-input v-model="add_searchInfo" placeholder="请扫描订单编号或输入生产款号模糊查询" @input="handleInput"
|
|
|
|
|
- @keyup.enter="add_onSubmit" id="searchInput" style="width: 340px;height: 50px;margin-left: 10px;">
|
|
|
|
|
|
|
+ <el-input v-model="records_searchInfo" placeholder="请扫描订单编号或输入生产款号模糊查询" @input="records_handleInput"
|
|
|
|
|
+ @keyup.enter="records_onSubmit" id="searchInput" style="width: 340px;height: 50px;margin-left: 10px;">
|
|
|
</el-input>
|
|
</el-input>
|
|
|
<el-button type="primary" @click="Reporting_onSubmit" style="height: 50px;font-size: 20px;">选择出库</el-button>
|
|
<el-button type="primary" @click="Reporting_onSubmit" style="height: 50px;font-size: 20px;">选择出库</el-button>
|
|
|
- <el-button type="primary" icon="reading" @click="details_onSubmit" style="height: 50px;font-size: 20px;">出库记录</el-button>
|
|
|
|
|
|
|
+ <el-button type="danger" @click="deldetail_delclick" style="width: 80px;height: 50px;" v-if="del_details=== true" :disabled="details_Selection === '' " class="bt" >删除</el-button>
|
|
|
</el-row>
|
|
</el-row>
|
|
|
<layout>
|
|
<layout>
|
|
|
|
|
|
|
|
<layout-content >
|
|
<layout-content >
|
|
|
<div class="gva-table-box">
|
|
<div class="gva-table-box">
|
|
|
- <el-table ref="multipleTable" style="width: 100%;height: 64vh" tooltip-effect="dark"
|
|
|
|
|
- :row-style="{ height: '40px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
|
|
- :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
|
|
- :data="restableData" border row-key="ID" size="small"
|
|
|
|
|
- :cell-class-name="tableDataCellClass"
|
|
|
|
|
- highlight-current-row="true" @row-dblclick="updateCompanyFunc"
|
|
|
|
|
- @row-click="tableRowClick" :show-overflow-tooltip="true"
|
|
|
|
|
- @selection-change="handleSelectionChange">
|
|
|
|
|
- <!-- <el-table-column type="selection" width="80" /> -->
|
|
|
|
|
- <el-table-column align="left" label="关联编号" prop="关联编号" width="90" />
|
|
|
|
|
- <el-table-column align="left" label="订单编号" prop="订单编号" width="105" />
|
|
|
|
|
- <el-table-column align="left" label="客户编号" prop="客户编号" width="80"/>
|
|
|
|
|
- <el-table-column align="left" label="生产款号" prop="生产款号" width="170"/>
|
|
|
|
|
- <el-table-column align="left" label="物料名称" prop="物料名称" width="105" />
|
|
|
|
|
- <el-table-column align="left" label="物料编码" prop="物料编码" width="105" />
|
|
|
|
|
- <el-table-column align="left" label="颜色" prop="颜色" width="80" />
|
|
|
|
|
- <el-table-column align="left" label="款式" prop="款式" width="170"/>
|
|
|
|
|
- <el-table-column align="left" label="订单数量" prop="订单数量" width="110"/>
|
|
|
|
|
- <el-table-column align="left" label="接单日期" prop="接单日期" width="160"/>
|
|
|
|
|
- <el-table-column align="left" label="落货日期" prop="落货日期" width="160"/>
|
|
|
|
|
- <el-table-column align="left" label="制单人" prop="创建人员" width="90"/>
|
|
|
|
|
- <el-table-column align="left" label="制单日期" prop="创建时间" width="160"/>
|
|
|
|
|
- </el-table>
|
|
|
|
|
|
|
+ <el-tabs v-model="activeName" @tab-click="handleClick">
|
|
|
|
|
+ <el-tab-pane label="出库记录" @click="showTable('出库记录')" name="first">
|
|
|
|
|
+ <el-table ref="multipleTable"
|
|
|
|
|
+ :row-style="{ height: '30px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
|
|
+ :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
|
|
+ :show-overflow-tooltip="true" highlight-current-row="true"
|
|
|
|
|
+ @row-click="tableclick" @row-dblclick="ysupdateCompanyFunc"
|
|
|
|
|
+ @selection-change="detailSelectionChange" style="width: 100%;height: 65vh" border
|
|
|
|
|
+ :summary-method="getSummaries" tooltip-effect="dark" :data="chukutableData" row-key="ID" >
|
|
|
|
|
+ <el-table-column align="center" type="selection" width="40"/>
|
|
|
|
|
+ <el-table-column align="left" label="单号" prop="订单编号" width="110"/>
|
|
|
|
|
+ <el-table-column align="left" label="批次号" prop="订单编号" width="110"/>
|
|
|
|
|
+ <el-table-column align="left" label="订单编号" prop="订单编号" width="110"/>
|
|
|
|
|
+ <el-table-column align="left" label="生产款号" prop="生产款号" width="140"/>
|
|
|
|
|
+ <el-table-column align="left" label="物料名称" prop="物料名称" width="140"/>
|
|
|
|
|
+ <el-table-column align="left" label="计划用料" prop="计划用料" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="定额用料" prop="定额用料" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="计划门幅" prop="计划门幅" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="定额门幅" prop="定额门幅" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="库存数量" prop="库存数量" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="面料结余" prop="面料结余" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="出库数量" prop="出库数量" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="投料单位" prop="投料单位" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="出库人员" prop="出库人员" width="120"/>
|
|
|
|
|
+ <el-table-column align="left" label="出库时间" prop="出库时间" width="160"/>
|
|
|
|
|
+ <el-table-column align="left" label="款式" prop="款式" width="140"/>
|
|
|
|
|
+ <el-table-column align="left" label="客户" prop="客户编号" width="80"/>
|
|
|
|
|
+ </el-table>
|
|
|
|
|
+ </el-tab-pane>
|
|
|
|
|
+
|
|
|
|
|
+ <el-tab-pane label="退还记录" @click="showTable('退还记录')" name="second">
|
|
|
|
|
+ <el-table ref="multipleTable"
|
|
|
|
|
+ :row-style="{ height: '30px' }":header-cell-style="{ padding: '0px' }"
|
|
|
|
|
+ :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
|
|
+ highlight-current-row="true" :show-overflow-tooltip="true"
|
|
|
|
|
+ :cell-class-name="gysatusCellClass" :row-class-name="rowClassStyle2"
|
|
|
|
|
+ @row-click="clickybupdate2" @row-dblclick="thupdateCompanyFunc"
|
|
|
|
|
+ style="width: 100%;height: 70vh" border tooltip-effect="dark" :data="thtableData" row-key="ID">
|
|
|
|
|
+ <el-table-column align="left" sortable label="订单编号" prop="订单编号" width="140"/>
|
|
|
|
|
+ <el-table-column align="left" sortable label="款号" prop="款号" width="180"/>
|
|
|
|
|
+ <el-table-column align="left" sortable label="数量" prop="数量" width="105"/>
|
|
|
|
|
+ <el-table-column align="left" sortable label="退还时间" prop="退还时间" width="160"/>
|
|
|
|
|
+ <el-table-column align="left" sortable label="退还机台" prop="退还机台" width="160"/>
|
|
|
|
|
+ </el-table>
|
|
|
|
|
+ </el-tab-pane>
|
|
|
|
|
+ </el-tabs>
|
|
|
<div class="dialog-footer" style="text-align: left;margin-right: 60px;">
|
|
<div class="dialog-footer" style="text-align: left;margin-right: 60px;">
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
@@ -44,169 +66,163 @@
|
|
|
</layout>
|
|
</layout>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
- <!-- 选择入库弹窗 -->
|
|
|
|
|
|
|
+ <!-- 选择出库弹窗 -->
|
|
|
<el-dialog v-model="res_bomdialogFormVisible" :before-close="res_bomcloseDialog" width="100%" style="height: 100%;margin: 0%;padding: 0px 10px 0px 10px;" destroy-on-close>
|
|
<el-dialog v-model="res_bomdialogFormVisible" :before-close="res_bomcloseDialog" width="100%" style="height: 100%;margin: 0%;padding: 0px 10px 0px 10px;" destroy-on-close>
|
|
|
<div class="dialog-footer" style="margin: 0px;">
|
|
<div class="dialog-footer" style="margin: 0px;">
|
|
|
- <!-- <el-input v-model="add_lysearchInfo" placeholder="请扫描订单编号进行操作"
|
|
|
|
|
- @keyup.enter="add_lyonSubmit" id="ly_searchInput" style="width: 340px;height: 50px;margin-left: 10px;">
|
|
|
|
|
- </el-input> -->
|
|
|
|
|
<el-button type="primary" @click="res_bomcloseDialog" style="width: 100px;height: 50px;margin-left: 10px;">关 闭</el-button>
|
|
<el-button type="primary" @click="res_bomcloseDialog" style="width: 100px;height: 50px;margin-left: 10px;">关 闭</el-button>
|
|
|
<el-button type="primary" @click="res_bomenterDialog" style="width: 100px;height: 50px;">一键出库</el-button>
|
|
<el-button type="primary" @click="res_bomenterDialog" style="width: 100px;height: 50px;">一键出库</el-button>
|
|
|
</div>
|
|
</div>
|
|
|
- <el-divider><span class="print-title" style="font-size: 18px;">面料出库信息</span></el-divider>
|
|
|
|
|
- <!-- <div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px;">
|
|
|
|
|
- <p style="font-size: 18px;margin-right: 20px;">出库单号: <el-input v-model="danhao" style="width: 200px;" disabled/></p>
|
|
|
|
|
- <p style="font-size: 18px;margin-right: 20px;">出库日期:<el-input v-model="riqi" style="width: 200px;" disabled/></p>
|
|
|
|
|
- </div> -->
|
|
|
|
|
-
|
|
|
|
|
- <el-descriptions class="margin-top" :column="2" :size="size" border>
|
|
|
|
|
- <el-descriptions-item label="出库单号">{{danhao}}</el-descriptions-item>
|
|
|
|
|
- <el-descriptions-item label="出库日期">{{riqi}}</el-descriptions-item>
|
|
|
|
|
- </el-descriptions>
|
|
|
|
|
-
|
|
|
|
|
- <el-descriptions class="margin-top" :column="4" :size="size" border>
|
|
|
|
|
- <el-descriptions-item label="订单编号" class="ddh">{{ ddhformData['ddh'] }}</el-descriptions-item>
|
|
|
|
|
- <el-descriptions-item label="客户">{{ ddhformData['kh'] }}</el-descriptions-item>
|
|
|
|
|
- <el-descriptions-item label="生产款号">{{ ddhformData['sckh'] }}</el-descriptions-item>
|
|
|
|
|
- <el-descriptions-item label="款式">{{ ddhformData['ks'] }}</el-descriptions-item>
|
|
|
|
|
- </el-descriptions>
|
|
|
|
|
- <br>
|
|
|
|
|
- <div>
|
|
|
|
|
- <el-table
|
|
|
|
|
- ref="paichengRef"
|
|
|
|
|
- :show-overflow-tooltip="true"
|
|
|
|
|
- highlight-current-row="true"
|
|
|
|
|
- :row-style="{ height: ' 40px' }"
|
|
|
|
|
- :header-cell-style="{ padding: '0px' }"
|
|
|
|
|
- :cell-style="{ padding: '10px 0px 10px 0px' }"
|
|
|
|
|
- :header-row-style="{ height: '0px' }"
|
|
|
|
|
- style="width: 100%; height: 40vh"
|
|
|
|
|
- border
|
|
|
|
|
- tooltip-effect="dark"
|
|
|
|
|
- :data="resbomtableData"
|
|
|
|
|
- row-key="ID"
|
|
|
|
|
- :cell-class-name="scfjfpxsCellClass">
|
|
|
|
|
- <template v-for="(item, idx) in resbom_tableColumns" :key="idx">
|
|
|
|
|
- <el-table-column :label="item.label" :width="item.width">
|
|
|
|
|
- <template #default="{ row, column, $index }">
|
|
|
|
|
- <!-- 判断该列是否需要输入框 -->
|
|
|
|
|
- <div v-if="['出库数量'].includes(item.prop)">
|
|
|
|
|
- <el-input
|
|
|
|
|
- v-model="row[item.prop]"
|
|
|
|
|
- :clearable="false"
|
|
|
|
|
- style="height: 30px;"
|
|
|
|
|
- :id="`input${idx}${$index}`"
|
|
|
|
|
- @keyup="resbom_handleKeyDown($event, idx, $index, item.prop)"
|
|
|
|
|
- @input="handleInput2($event, row, item.prop)"
|
|
|
|
|
- />
|
|
|
|
|
- </div>
|
|
|
|
|
- <div v-else>
|
|
|
|
|
- {{ row[item.prop] }}
|
|
|
|
|
- </div>
|
|
|
|
|
- </template>
|
|
|
|
|
- </el-table-column>
|
|
|
|
|
- </template>
|
|
|
|
|
- </el-table>
|
|
|
|
|
- <br>
|
|
|
|
|
- <br>
|
|
|
|
|
- <div style="display: flex; justify-content: space-around; align-items: center; margin-bottom: 10px;">
|
|
|
|
|
- <p style="font-size: 18px;">出库人员:
|
|
|
|
|
- <el-input v-model="chukuren" style="width: 200px;" disabled/>
|
|
|
|
|
- </p>
|
|
|
|
|
- <p style="font-size: 18px;">领用人员:
|
|
|
|
|
- <el-input v-model="linguser" style="width: 200px;" />
|
|
|
|
|
- </p>
|
|
|
|
|
|
|
+
|
|
|
|
|
+ <el-divider><span class="print-title" style="font-size: 18px;">面料出库明细</span></el-divider>
|
|
|
|
|
+
|
|
|
|
|
+ <div style="display: flex; gap: 20px; align-items: center;">
|
|
|
|
|
+ <!-- 左部分 -->
|
|
|
|
|
+ <div>
|
|
|
|
|
+ <el-input v-model="add_searchInfo" placeholder="请扫描订单编号或输入生产款号模糊查询" @input="handleInput"
|
|
|
|
|
+ @keyup.enter="add_onSubmit" id="searchInput" style="width: 340px;height: 30px;margin-left: 10px;">
|
|
|
|
|
+ </el-input>
|
|
|
|
|
+ <el-table ref="multipleTable" style="width: 100%;height: 47vh" tooltip-effect="dark"
|
|
|
|
|
+ :row-style="{ height: '40px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
|
|
+ :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
|
|
+ :data="restableData" border row-key="ID" size="small"
|
|
|
|
|
+ :cell-class-name="tableDataCellClass"
|
|
|
|
|
+ highlight-current-row="true" @row-dblclick="updateCompanyFunc"
|
|
|
|
|
+ @row-click="tableRowClick" :show-overflow-tooltip="true"
|
|
|
|
|
+ @selection-change="handleSelectionChange">
|
|
|
|
|
+ <!-- <el-table-column type="selection" width="80" /> -->
|
|
|
|
|
+ <el-table-column align="left" label="关联编号" prop="关联编号" width="90" />
|
|
|
|
|
+ <el-table-column align="left" label="物料名称" prop="物料名称" width="110" />
|
|
|
|
|
+ <el-table-column align="left" label="颜色" prop="颜色" width="80" />
|
|
|
|
|
+ </el-table>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 右部分 -->
|
|
|
|
|
+ <div>
|
|
|
|
|
+ <el-descriptions class="margin-top" :column="5" :size="size" border>
|
|
|
|
|
+ <el-descriptions-item label="订单编号">{{ ddhformData['ddh'] }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="客户">{{ ddhformData['kh'] }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="生产款号">{{ ddhformData['sckh'] }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="款式">{{ ddhformData['ks'] }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="物料编号">{{ mianliaotabData.物料编号 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="物料名称">{{ mianliaotabData.物料名称 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="关联号">{{ mianliaotabData.关联号 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="批次号">{{ mianliaotabData.批次号 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="计划用料">{{ mianliaotabData.计划用料 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="计划门幅">{{ mianliaotabData.计划门幅 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="定额用料">{{ mianliaotabData.定额用料 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="定额门幅">{{ mianliaotabData.定额门幅 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="入仓总数量">{{ mianliaotabData.入仓总数量 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="库存数量">{{ mianliaotabData.库存数量 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="领用数量">{{ mianliaotabData.领用数量 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="关联订单">{{ mianliaotabData.关联订单 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="颜色">{{ mianliaotabData.颜色 }}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="单位">{{ mianliaotabData.单位 }}</el-descriptions-item>
|
|
|
|
|
+
|
|
|
|
|
+ <el-descriptions-item label="出库数量">
|
|
|
|
|
+ <el-input v-model="mianliaotabData.出库数量" placeholder="" style="margin: 0; width: 100px;"/>
|
|
|
|
|
+ </el-descriptions-item>
|
|
|
|
|
+
|
|
|
|
|
+ <el-descriptions-item label="实际门幅">
|
|
|
|
|
+ <el-input v-model="mianliaotabData.实际门幅" placeholder="" style="margin: 0; width: 100px ;"/>
|
|
|
|
|
+ </el-descriptions-item>
|
|
|
|
|
+
|
|
|
|
|
+ </el-descriptions>
|
|
|
|
|
+
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <el-button type="primary" @click="dj_Dialog" style="width: 100px;height: 50px;">添加</el-button>
|
|
|
|
|
+ </div>
|
|
|
|
|
+
|
|
|
|
|
+ <el-divider><span class="print-title" style="font-size: 18px;">面料出库详情</span></el-divider>
|
|
|
|
|
+ <el-descriptions class="margin-top" :column="3" :size="size" border>
|
|
|
|
|
+ <el-descriptions-item label="出库单号">{{danhao}}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="出库日期">{{riqi}}</el-descriptions-item>
|
|
|
|
|
+ <el-descriptions-item label="出库人员">{{chukuren}}</el-descriptions-item>
|
|
|
|
|
+ </el-descriptions>
|
|
|
|
|
+ <br>
|
|
|
|
|
+ <div>
|
|
|
|
|
+ <el-table ref="multipleTable" style="width: 100%;height: 20vh" tooltip-effect="dark"
|
|
|
|
|
+ :row-style="{ height: '40px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
|
|
+ :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
|
|
+ :data="danjutableData" border row-key="ID" size="small"
|
|
|
|
|
+ :cell-class-name="tableDataCellClass"
|
|
|
|
|
+ highlight-current-row="true" :show-overflow-tooltip="true">
|
|
|
|
|
+ <!-- <el-table-column type="selection" width="80" /> -->
|
|
|
|
|
+ <el-table-column align="left" label="物料编号" prop="物料编号" width="160" />
|
|
|
|
|
+ <el-table-column align="left" label="物料名称" prop="物料名称" width="115" />
|
|
|
|
|
+ <el-table-column align="left" label="计划用料" prop="计划用料" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="计划门幅" prop="计划门幅" width="90" />
|
|
|
|
|
+ <el-table-column align="left" label="定额用料" prop="定额用料" width="90" />
|
|
|
|
|
+ <el-table-column align="left" label="定额门幅" prop="定额门幅" width="90" />
|
|
|
|
|
+ <el-table-column align="left" label="实际门幅" prop="实际门幅" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="出库数量" prop="出库数量" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="入仓总数量" prop="入仓总数量" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="库存数量" prop="库存数量" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="领用数量" prop="领用数量" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="批次号" prop="批次号" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="关联号" prop="关联号" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="颜色" prop="颜色" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="关联订单" prop="关联订单" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="单位" prop="单位" width="60"/>
|
|
|
|
|
+ <el-table-column fixed="right" label="操作" width="120">
|
|
|
|
|
+ <template #default="{ row, $index }">
|
|
|
|
|
+ <el-button @click="deleteRow($index)" type="text" size="small">
|
|
|
|
|
+ 移除
|
|
|
|
|
+ </el-button>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ </el-table>
|
|
|
|
|
+ <br>
|
|
|
|
|
+ <br>
|
|
|
|
|
+ <!-- <div style="display: flex; align-items: center;">
|
|
|
|
|
+ <p style="font-size: 18px;">出库人员:
|
|
|
|
|
+ <el-input v-model="chukuren" style="width: 200px;;" disabled/>
|
|
|
|
|
+ </p>
|
|
|
|
|
+ </div> -->
|
|
|
|
|
+
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
|
|
|
|
|
- <!--单号记录 -->
|
|
|
|
|
- <el-dialog v-model="pickingaddvisible" :before-close="()=> pickingaddvisible = false" style="width: 100%; margin: 0% auto; height: 100%;" :title="'出库、入库、退还记录'" destroy-on-close>
|
|
|
|
|
|
|
+
|
|
|
|
|
+ <!--单号详情记录 -->
|
|
|
|
|
+ <el-dialog v-model="details_pickingaddvisible" :before-close="()=> details_pickingaddvisible = false" style="width: 100%; margin: 0% auto; height: 100%;" :title="单据详情"
|
|
|
|
|
+ destroy-on-close>
|
|
|
<div class="dialog-footer" style="bottom: 10px; right: 10px; width: 100%;">
|
|
<div class="dialog-footer" style="bottom: 10px; right: 10px; width: 100%;">
|
|
|
- <el-button type="primary" @click="ckth_closeDialog" style="width: 80px;height: 40px;display: inline-block;">关 闭</el-button>
|
|
|
|
|
- <h3 style="color: red;display: inline-block;margin-left: 20px;">双击表格行查看入库单明细</h3>
|
|
|
|
|
|
|
+ <el-button type="primary" @click="details_ckth_closeDialog" style="width: 80px;height: 40px;">关 闭</el-button>
|
|
|
|
|
+
|
|
|
</div>
|
|
</div>
|
|
|
<br>
|
|
<br>
|
|
|
<div>
|
|
<div>
|
|
|
- <el-tabs v-model="activeName" @tab-click="handleClick">
|
|
|
|
|
- <el-tab-pane label="出库记录" @click="showTable('出库记录')" name="first">
|
|
|
|
|
- <el-table ref="multipleTable"
|
|
|
|
|
- :row-style="{ height: '30px' }"
|
|
|
|
|
- :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
|
|
- :header-cell-style="{ padding: '0px' }"
|
|
|
|
|
- :show-overflow-tooltip="true"
|
|
|
|
|
- highlight-current-row="true"
|
|
|
|
|
- @row-click="tableclick"
|
|
|
|
|
- @row-dblclick="chukuupdateCompanyFunc"
|
|
|
|
|
- style="width: 100%;height: 36vh" border
|
|
|
|
|
- :summary-method="getSummaries" tooltip-effect="dark" :data="cktableData" row-key="ID" >
|
|
|
|
|
- <el-table-column align="left" sortable label="出库单号" prop="单号" width="140"/>
|
|
|
|
|
- <el-table-column align="left" sortable label="订单编号" prop="订单编号" width="140"/>
|
|
|
|
|
- <el-table-column align="left" sortable label="款号" prop="款号" width="180"/>
|
|
|
|
|
- <el-table-column align="left" sortable label="数量" prop="数量" width="105"/>
|
|
|
|
|
- <el-table-column align="left" sortable label="出库人员" prop="出库人员" width="160"/>
|
|
|
|
|
- <el-table-column align="left" sortable label="出库时间" prop="出库时间" width="160"/>
|
|
|
|
|
- </el-table>
|
|
|
|
|
- </el-tab-pane>
|
|
|
|
|
-
|
|
|
|
|
- <el-tab-pane label="退还记录" name="second">
|
|
|
|
|
<el-table ref="multipleTable"
|
|
<el-table ref="multipleTable"
|
|
|
- :row-style="{ height: '30px' }":header-cell-style="{ padding: '0px' }"
|
|
|
|
|
|
|
+ :row-style="{ height: '30px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
:cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
:cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
- highlight-current-row="true" :show-overflow-tooltip="true"
|
|
|
|
|
- :cell-class-name="gysatusCellClass" :row-class-name="rowClassStyle2"
|
|
|
|
|
- @row-click="clickybupdate2" @row-dblclick="thupdateCompanyFunc"
|
|
|
|
|
- style="width: 100%;height: 36vh" border tooltip-effect="dark" :data="thtableData" row-key="ID">
|
|
|
|
|
- <el-table-column align="left" sortable label="订单编号" prop="订单编号" width="140"/>
|
|
|
|
|
- <el-table-column align="left" sortable label="款号" prop="款号" width="180"/>
|
|
|
|
|
- <el-table-column align="left" sortable label="数量" prop="数量" width="105"/>
|
|
|
|
|
- <el-table-column align="left" sortable label="退还时间" prop="退还时间" width="160"/>
|
|
|
|
|
- <el-table-column align="left" sortable label="退还机台" prop="退还机台" width="160"/>
|
|
|
|
|
|
|
+ :show-overflow-tooltip="true" highlight-current-row="true"
|
|
|
|
|
+ @row-click="tableclick" @row-dblclick="ysupdateCompanyFunc"
|
|
|
|
|
+ @selection-change="detailSelectionChange" style="width: 100%;height: 65vh" border
|
|
|
|
|
+ :summary-method="getSummaries" tooltip-effect="dark" :data="ruku_detailstableData" row-key="ID" >
|
|
|
|
|
+ <el-table-column align="center" type="selection" width="40"/>
|
|
|
|
|
+ <el-table-column align="left" label="订单编号" prop="订单编号" width="110"/>
|
|
|
|
|
+ <el-table-column align="left" label="生产款号" prop="生产款号" width="140"/>
|
|
|
|
|
+ <el-table-column align="left" label="物料名称" prop="物料名称" width="140"/>
|
|
|
|
|
+ <el-table-column align="left" label="计划用料" prop="计划用料" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="定额用料" prop="定额用料" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="计划门幅" prop="计划门幅" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="定额门幅" prop="定额门幅" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="裁床实际用料" prop="裁床实际用料" width="110"/>
|
|
|
|
|
+ <el-table-column align="left" label="裁床领用面料" prop="裁床领用面料" width="110"/>
|
|
|
|
|
+ <el-table-column align="left" label="裁床退还数量" prop="裁床退还数量" width="110"/>
|
|
|
|
|
+ <el-table-column align="left" label="库存总量" prop="出库总量" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="面料结余" prop="面料结余" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="出库数量" prop="出库数量" width="100"/>
|
|
|
|
|
+ <el-table-column align="left" label="投料单位" prop="投料单位" width="90"/>
|
|
|
|
|
+ <el-table-column align="left" label="出库人员" prop="出库人员" width="120"/>
|
|
|
|
|
+ <el-table-column align="left" label="出库时间" prop="出库时间" width="160"/>
|
|
|
|
|
+ <el-table-column align="left" label="款式" prop="款式" width="140"/>
|
|
|
|
|
+ <el-table-column align="left" label="客户" prop="客户编号" width="80"/>
|
|
|
</el-table>
|
|
</el-table>
|
|
|
- </el-tab-pane>
|
|
|
|
|
-
|
|
|
|
|
- </el-tabs>
|
|
|
|
|
</div>
|
|
</div>
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
-
|
|
|
|
|
- <!--单号详情记录 -->
|
|
|
|
|
- <el-dialog v-model="details_pickingaddvisible" :before-close="()=> details_pickingaddvisible = false" style="width: 100%; margin: 0% auto; height: 100%;" :title="单据详情"
|
|
|
|
|
- destroy-on-close>
|
|
|
|
|
- <div class="dialog-footer" style="bottom: 10px; right: 10px; width: 100%;">
|
|
|
|
|
- <el-button type="primary" @click="details_ckth_closeDialog" style="width: 80px;height: 40px;">关 闭</el-button>
|
|
|
|
|
- <el-button type="danger" @click="deldetail_delclick" style="width: 80px;height: 40px;" v-if="del_details=== true" :disabled="details_Selection === '' " class="bt" >删除</el-button>
|
|
|
|
|
- </div>
|
|
|
|
|
- <br>
|
|
|
|
|
- <div>
|
|
|
|
|
- <el-table ref="multipleTable"
|
|
|
|
|
- :row-style="{ height: '30px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
|
|
- :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
|
|
- :show-overflow-tooltip="true" highlight-current-row="true"
|
|
|
|
|
- @row-click="tableclick" @row-dblclick="ysupdateCompanyFunc"
|
|
|
|
|
- @selection-change="detailSelectionChange" style="width: 100%;height: 65vh" border
|
|
|
|
|
- :summary-method="getSummaries" tooltip-effect="dark" :data="chuku_detailstableData" row-key="ID" >
|
|
|
|
|
- <el-table-column align="center" type="selection" width="40"/>
|
|
|
|
|
- <el-table-column align="left" label="订单编号" prop="订单编号" width="110"/>
|
|
|
|
|
- <el-table-column align="left" label="生产款号" prop="生产款号" width="140"/>
|
|
|
|
|
- <el-table-column align="left" label="物料名称" prop="物料名称" width="140"/>
|
|
|
|
|
- <el-table-column align="left" label="计划用料" prop="计划用料" width="100"/>
|
|
|
|
|
- <el-table-column align="left" label="定额用料" prop="定额用料" width="100"/>
|
|
|
|
|
- <el-table-column align="left" label="计划门幅" prop="计划门幅" width="100"/>
|
|
|
|
|
- <el-table-column align="left" label="定额门幅" prop="定额门幅" width="100"/>
|
|
|
|
|
- <el-table-column align="left" label="裁床实际用料" prop="裁床实际用料" width="110"/>
|
|
|
|
|
- <el-table-column align="left" label="裁床领用面料" prop="裁床领用面料" width="110"/>
|
|
|
|
|
- <el-table-column align="left" label="裁床退还数量" prop="裁床退还数量" width="110"/>
|
|
|
|
|
- <el-table-column align="left" label="库存总量" prop="库存总量" width="100"/>
|
|
|
|
|
- <el-table-column align="left" label="面料结余" prop="面料结余" width="100"/>
|
|
|
|
|
- <el-table-column align="left" label="入库数量" prop="入库数量" width="100"/>
|
|
|
|
|
- <el-table-column align="left" label="投料单位" prop="投料单位" width="90"/>
|
|
|
|
|
- <el-table-column align="left" label="入库人员" prop="入库人员" width="120"/>
|
|
|
|
|
- <el-table-column align="left" label="入库时间" prop="入库时间" width="160"/>
|
|
|
|
|
- <el-table-column align="left" label="款式" prop="款式" width="140"/>
|
|
|
|
|
- <el-table-column align="left" label="客户" prop="客户编号" width="80"/>
|
|
|
|
|
- </el-table>
|
|
|
|
|
- </div>
|
|
|
|
|
- </el-dialog>
|
|
|
|
|
|
|
|
|
|
</template>
|
|
</template>
|
|
|
<script>
|
|
<script>
|
|
@@ -230,6 +246,7 @@
|
|
|
import { Layout, LayoutSider, LayoutContent } from '@arco-design/web-vue';
|
|
import { Layout, LayoutSider, LayoutContent } from '@arco-design/web-vue';
|
|
|
import {ref, reactive} from 'vue'
|
|
import {ref, reactive} from 'vue'
|
|
|
import {getSpotList,getSpotTab,getInputDetail,
|
|
import {getSpotList,getSpotTab,getInputDetail,
|
|
|
|
|
+ inputStash,
|
|
|
InputOrderSearch,outReport,orderBomList,FabricDetail,gitReceiptNumber,FabricDetaillist,FabricDetaildel} from '@/api/mes/job'
|
|
InputOrderSearch,outReport,orderBomList,FabricDetail,gitReceiptNumber,FabricDetaillist,FabricDetaildel} from '@/api/mes/job'
|
|
|
import { ElMessage, ElMessageBox,ElUpload, ElButton } from 'element-plus';
|
|
import { ElMessage, ElMessageBox,ElUpload, ElButton } from 'element-plus';
|
|
|
import { useUserStore } from '@/pinia/modules/user'
|
|
import { useUserStore } from '@/pinia/modules/user'
|
|
@@ -265,8 +282,8 @@
|
|
|
const danhao = ref('')
|
|
const danhao = ref('')
|
|
|
const riqi = ref('')
|
|
const riqi = ref('')
|
|
|
const chukuren = ref('')
|
|
const chukuren = ref('')
|
|
|
- const linguser = ref('')
|
|
|
|
|
const add_searchInfo = ref('')//搜索
|
|
const add_searchInfo = ref('')//搜索
|
|
|
|
|
+ const records_searchInfo = ref('')//历史记录搜索
|
|
|
const add_lysearchInfo = ref('')//搜索
|
|
const add_lysearchInfo = ref('')//搜索
|
|
|
const restableData = reactive([])//表格
|
|
const restableData = reactive([])//表格
|
|
|
const _orderid = ref('')//订单子编号
|
|
const _orderid = ref('')//订单子编号
|
|
@@ -289,7 +306,7 @@
|
|
|
const gitReceiptNumberdata = await gitReceiptNumber({number:'RK'});
|
|
const gitReceiptNumberdata = await gitReceiptNumber({number:'RK'});
|
|
|
danhao.value = gitReceiptNumberdata.data.number
|
|
danhao.value = gitReceiptNumberdata.data.number
|
|
|
chukuren.value = userStore.userInfo.nickName
|
|
chukuren.value = userStore.userInfo.nickName
|
|
|
- riqi.value = currentDates
|
|
|
|
|
|
|
+ riqi.value = currentDates
|
|
|
}else{
|
|
}else{
|
|
|
restableData.splice(0,orderSearchdata.length,...orderSearchdata.data);
|
|
restableData.splice(0,orderSearchdata.length,...orderSearchdata.data);
|
|
|
}
|
|
}
|
|
@@ -315,28 +332,100 @@
|
|
|
danhao.value = gitReceiptNumberdata.data.number
|
|
danhao.value = gitReceiptNumberdata.data.number
|
|
|
chukuren.value = userStore.userInfo.nickName
|
|
chukuren.value = userStore.userInfo.nickName
|
|
|
riqi.value = currentDates
|
|
riqi.value = currentDates
|
|
|
- Reporting_onSubmit()
|
|
|
|
|
|
|
+ Reporting_onSubmit()
|
|
|
}else{
|
|
}else{
|
|
|
restableData.splice(0,orderSearchdata.length,...orderSearchdata.data);
|
|
restableData.splice(0,orderSearchdata.length,...orderSearchdata.data);
|
|
|
}
|
|
}
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
|
+ const mianliaotabData = ref({
|
|
|
|
|
+ 物料编号: '',
|
|
|
|
|
+ 物料名称: '',
|
|
|
|
|
+ 关联号: '',
|
|
|
|
|
+ 批次号: '',
|
|
|
|
|
+ 计划用料: '',
|
|
|
|
|
+ 计划门幅: '',
|
|
|
|
|
+ 定额用料: '',
|
|
|
|
|
+ 定额门幅: '',
|
|
|
|
|
+ 出库数量: '',
|
|
|
|
|
+ 入仓总数量: '',
|
|
|
|
|
+ 库存数量: '',
|
|
|
|
|
+ 领用数量: '',
|
|
|
|
|
+ 关联订单: '',
|
|
|
|
|
+ 颜色: '',
|
|
|
|
|
+ 单位: ''
|
|
|
|
|
+ });
|
|
|
//表格行点击
|
|
//表格行点击
|
|
|
- const tableRowClick = async (row)=>{
|
|
|
|
|
- add_searchInfo.value = row.订单编号
|
|
|
|
|
- _orderid.value = row.订单编号
|
|
|
|
|
- _kh.value = row.生产款号
|
|
|
|
|
-
|
|
|
|
|
- ddhformData.glbh = row['关联编号']
|
|
|
|
|
- ddhformData.ddh = row['订单编号']
|
|
|
|
|
- ddhformData.kh = row['客户编号']
|
|
|
|
|
- ddhformData.sckh = row['生产款号']
|
|
|
|
|
- ddhformData.wlbh = row['物料编码']
|
|
|
|
|
- ddhformData.ks = row['款式']
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ const tableRowClick = async (row) => {
|
|
|
|
|
+ add_searchInfo.value = row.订单编号;
|
|
|
|
|
+ _orderid.value = row.订单编号;
|
|
|
|
|
+ _kh.value = row.生产款号;
|
|
|
|
|
+
|
|
|
|
|
+ ddhformData.glbh = row['关联编号'];
|
|
|
|
|
+ ddhformData.ddh = row['订单编号'];
|
|
|
|
|
+ ddhformData.kh = row['客户编号'];
|
|
|
|
|
+ ddhformData.sckh = row['生产款号'];
|
|
|
|
|
+ ddhformData.wlbh = row['物料编码'];
|
|
|
|
|
+ ddhformData.ks = row['款式'];
|
|
|
|
|
|
|
|
|
|
+ console.log(row.value);
|
|
|
|
|
+ console.log(row.关联编号);
|
|
|
|
|
+ console.log(row.订单编号);
|
|
|
|
|
+ console.log(row.物料编码);
|
|
|
|
|
+
|
|
|
|
|
+ // 获取详情数据
|
|
|
|
|
+ const Detailres = await getInputDetail({
|
|
|
|
|
+ 关联编号: row.关联编号,
|
|
|
|
|
+ 订单编号: row.订单编号,
|
|
|
|
|
+ 物料编码: row.物料编码
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ console.log(Detailres);
|
|
|
|
|
+
|
|
|
|
|
+ // 将 Detailres.data 中的数据赋值给 mianliaotabData
|
|
|
|
|
+ if (Detailres.code === 0 && Detailres.data) {
|
|
|
|
|
+ mianliaotabData.value = {
|
|
|
|
|
+ 物料编号: Detailres.data.物料编号,
|
|
|
|
|
+ 物料名称: Detailres.data.物料名称,
|
|
|
|
|
+ 关联号: Detailres.data.关联号,
|
|
|
|
|
+ 批次号: Detailres.data.批次号,
|
|
|
|
|
+ 计划用料: Detailres.data.计划用料,
|
|
|
|
|
+ 计划门幅: Detailres.data.BOM_计划门幅,
|
|
|
|
|
+ 定额用料: Detailres.data.定额用料,
|
|
|
|
|
+ 定额门幅: Detailres.data.BOM_定额门幅,
|
|
|
|
|
+ 出库数量: Detailres.data.出库数量,
|
|
|
|
|
+ 入仓总数量: Detailres.data.入仓总量,
|
|
|
|
|
+ 库存数量: Detailres.data.库存数量,
|
|
|
|
|
+ 领用数量: Detailres.data.领用数量,
|
|
|
|
|
+ 关联订单: Detailres.data.关联订单,
|
|
|
|
|
+ 颜色: Detailres.data.BOM_颜色,
|
|
|
|
|
+ 单位: Detailres.data.单位,
|
|
|
|
|
+ 实际门幅:Detailres.data.实际门幅
|
|
|
|
|
+ };
|
|
|
|
|
+ } else {
|
|
|
|
|
+ console.error('获取详情数据失败:', Detailres.msg);
|
|
|
|
|
+ }
|
|
|
|
|
+ };
|
|
|
|
|
+ const danjutableData = ref([]); // 使用 ref 定义响应式数组
|
|
|
|
|
+
|
|
|
|
|
+ //添加按钮
|
|
|
|
|
+ const dj_Dialog = () => {
|
|
|
|
|
+ if (mianliaotabData.value) {
|
|
|
|
|
+ // 使用 .value 访问 danjutableData 的实际值
|
|
|
|
|
+ danjutableData.value.push({ ...mianliaotabData.value });
|
|
|
|
|
+ } else {
|
|
|
|
|
+ console.error('mianliaotabData 为空,无法添加到 danjutableData');
|
|
|
|
|
+ }
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
|
|
+ //操作移除按钮
|
|
|
|
|
+ const deleteRow = (index) => {
|
|
|
|
|
+ //当前点击索引值
|
|
|
|
|
+ console.log(index)
|
|
|
|
|
+ //移除当前行
|
|
|
|
|
+ danjutableData.value.splice(index, 1);
|
|
|
|
|
+ }
|
|
|
//查询
|
|
//查询
|
|
|
const add_lyonSubmit = async ()=>{
|
|
const add_lyonSubmit = async ()=>{
|
|
|
const orderSearchdata = await InputOrderSearch({search:add_lysearchInfo.value});
|
|
const orderSearchdata = await InputOrderSearch({search:add_lysearchInfo.value});
|
|
@@ -361,7 +450,7 @@
|
|
|
}
|
|
}
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
- //选择入库弹窗
|
|
|
|
|
|
|
+ //选择出库弹窗
|
|
|
const res_bomdialogFormVisible = ref(false)
|
|
const res_bomdialogFormVisible = ref(false)
|
|
|
const resbomtableData = ref([]);
|
|
const resbomtableData = ref([]);
|
|
|
const ddhformData = reactive({
|
|
const ddhformData = reactive({
|
|
@@ -373,40 +462,42 @@
|
|
|
wlbh:'',
|
|
wlbh:'',
|
|
|
});
|
|
});
|
|
|
const resbom_tableColumns = ref(
|
|
const resbom_tableColumns = ref(
|
|
|
- [ { label: '物料编号', prop: '物料编号', width: '160' },
|
|
|
|
|
- { label: '物料名称', prop: '物料名称', width: '100' },
|
|
|
|
|
- { label: '计划用料', prop: '计划用料', width: '90' },
|
|
|
|
|
- { label: '计划门幅', prop: 'BOM_计划门幅', width: '90' },
|
|
|
|
|
- { label: '定额用料', prop: '定额用料', width: '90' },
|
|
|
|
|
- { label: '定额门幅', prop: 'BOM_定额门幅', width: '90' },
|
|
|
|
|
- { label: '实际门幅', prop: '实际门幅', width: '100' },
|
|
|
|
|
- { label: '出库数量', prop: '出库数量', width: '90' },
|
|
|
|
|
- { label: '入仓总数量', prop: '入仓总量', width: '100' },
|
|
|
|
|
- { label: '库存数量', prop: '库存数量', width: '90' },
|
|
|
|
|
- { label: '出库总数量', prop: '领用数量', width: '100' },
|
|
|
|
|
- { label: '批次号', prop: '批次号', width: '80' },
|
|
|
|
|
- { label: '关联号', prop: '关联号', width: '80' },
|
|
|
|
|
- { label: '颜色', prop: 'BOM_颜色', width: '100' },
|
|
|
|
|
- { label: '关联订单', prop: '关联订单', width: '160' },
|
|
|
|
|
- { label: '单位', prop: '单位', width: '90' },
|
|
|
|
|
|
|
+ [
|
|
|
|
|
+ { label: '物料编号', prop: '物料编号', width: '160' },
|
|
|
|
|
+ { label: '物料名称', prop: '物料名称', width: '100' },
|
|
|
|
|
+ { label: '计划用料', prop: '计划用料', width: '90' },
|
|
|
|
|
+ { label: '计划门幅', prop: 'BOM_计划门幅', width: '90' },
|
|
|
|
|
+ { label: '定额用料', prop: '定额用料', width: '90' },
|
|
|
|
|
+ { label: '定额门幅', prop: 'BOM_定额门幅', width: '90' },
|
|
|
|
|
+ { label: '实际门幅', prop: '实际门幅', width: '100' },
|
|
|
|
|
+ { label: '出库数量', prop: '出库数量', width: '90' },
|
|
|
|
|
+ { label: '入仓总数量', prop: '入仓总量', width: '100' },
|
|
|
|
|
+ { label: '库存数量', prop: '库存数量', width: '90' },
|
|
|
|
|
+ { label: '领用数量', prop: '领用数量', width: '100' },
|
|
|
|
|
+ { label: '批次号', prop: '批次号', width: '80' },
|
|
|
|
|
+ { label: '关联号', prop: '关联号', width: '80' },
|
|
|
|
|
+ { label: '颜色', prop: 'BOM_颜色', width: '100' },
|
|
|
|
|
+ { label: '关联订单', prop: '关联订单', width: '160' },
|
|
|
|
|
+ { label: '单位', prop: '单位', width: '90' },
|
|
|
]
|
|
]
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
//选择出库
|
|
//选择出库
|
|
|
const Reporting_onSubmit = async ()=>{
|
|
const Reporting_onSubmit = async ()=>{
|
|
|
- if(_orderid.value === '' || _orderid.value === null){
|
|
|
|
|
- ElMessage({type: 'warning',message: '请扫描订单后,再操作此功能'})
|
|
|
|
|
- }else{
|
|
|
|
|
- add_lysearchInfo.value = add_searchInfo.value
|
|
|
|
|
|
|
+ // if(_orderid.value === '' || _orderid.value === null){
|
|
|
|
|
+ // ElMessage({type: 'warning',message: '请扫描订单后,再操作此功能'})
|
|
|
|
|
+ // }else{
|
|
|
|
|
+ //打开选择出库弹窗
|
|
|
res_bomdialogFormVisible.value = true
|
|
res_bomdialogFormVisible.value = true
|
|
|
- const gitReceiptNumberdata = await gitReceiptNumber({number:'CK'});
|
|
|
|
|
|
|
+ //获取单据编号接口
|
|
|
|
|
+ const gitReceiptNumberdata = await gitReceiptNumber({number:'RK'});
|
|
|
danhao.value = gitReceiptNumberdata.data.number
|
|
danhao.value = gitReceiptNumberdata.data.number
|
|
|
chukuren.value = userStore.userInfo.nickName
|
|
chukuren.value = userStore.userInfo.nickName
|
|
|
riqi.value = currentDates
|
|
riqi.value = currentDates
|
|
|
_TestCoefficient();
|
|
_TestCoefficient();
|
|
|
- }
|
|
|
|
|
|
|
+ // }
|
|
|
}
|
|
}
|
|
|
- //调用接口【获取入库面料信息】
|
|
|
|
|
|
|
+ //调用接口【获取出库面料信息】
|
|
|
const _TestCoefficient = async () => {
|
|
const _TestCoefficient = async () => {
|
|
|
try {
|
|
try {
|
|
|
const Detailres = await getInputDetail({
|
|
const Detailres = await getInputDetail({
|
|
@@ -445,7 +536,7 @@
|
|
|
if (x >= 0 && x <=6) {
|
|
if (x >= 0 && x <=6) {
|
|
|
move = x + 1
|
|
move = x + 1
|
|
|
}
|
|
}
|
|
|
- document.getElementById(`input${move}${y}`).focus();
|
|
|
|
|
|
|
+ document.getElementById(`input${move}${y}`).focus();
|
|
|
break;
|
|
break;
|
|
|
case 37: // 向右箭头
|
|
case 37: // 向右箭头
|
|
|
if (x = 0 && x <=6) {
|
|
if (x = 0 && x <=6) {
|
|
@@ -458,133 +549,126 @@
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
const scfjfpxsCellClass = ({row, column, rowIndex, columnIndex}) =>{
|
|
const scfjfpxsCellClass = ({row, column, rowIndex, columnIndex}) =>{
|
|
|
- if (column.label === '出库数量') {
|
|
|
|
|
|
|
+ if (column.label === '出库数量' ||column.label === '实际门幅') {
|
|
|
return 'background-plan-usage-low';
|
|
return 'background-plan-usage-low';
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 确定
|
|
// 确定
|
|
|
const res_bomenterDialog = async () => {
|
|
const res_bomenterDialog = async () => {
|
|
|
- console.log(resbomtableData);
|
|
|
|
|
- if(linguser.value === '' || linguser.value === null){
|
|
|
|
|
- ElMessage({type: 'warning',message: '请输入领用人员'})
|
|
|
|
|
- return
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- if(resbomtableData.value[0]['出库数量'] === ''|| resbomtableData.value[0]['出库数量'] === undefined){
|
|
|
|
|
- ElMessage({type: 'warning',message: '出库数量不能为空'})
|
|
|
|
|
- return
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ console.log(danjutableData);
|
|
|
|
|
+ if(danjutableData.value[0]['出库数量'] === ''|| danjutableData.value[0]['出库数量'] === undefined){
|
|
|
|
|
+ ElMessage({type: 'warning',message: '出库数量不能为空'})
|
|
|
|
|
+ return
|
|
|
|
|
+ }
|
|
|
// 直接构造一个对象,不用 JSON 格式的索引
|
|
// 直接构造一个对象,不用 JSON 格式的索引
|
|
|
const formattedData = {
|
|
const formattedData = {
|
|
|
order_id: ddhformData.ddh,
|
|
order_id: ddhformData.ddh,
|
|
|
款号: ddhformData.sckh,
|
|
款号: ddhformData.sckh,
|
|
|
- 物料编码: resbomtableData.value[0]['物料编号'],
|
|
|
|
|
- 物料名称: resbomtableData.value[0]['物料名称'],
|
|
|
|
|
- number: resbomtableData.value[0]['出库数量'],
|
|
|
|
|
|
|
+ 物料编码: danjutableData.value[0]['物料编号'],
|
|
|
|
|
+ 物料名称: danjutableData.value[0]['物料名称'],
|
|
|
|
|
+ number: danjutableData.value[0]['出库数量'],
|
|
|
name: "出库",
|
|
name: "出库",
|
|
|
sys_id: userStore.userInfo.nickName,
|
|
sys_id: userStore.userInfo.nickName,
|
|
|
receipt_number: danhao.value,
|
|
receipt_number: danhao.value,
|
|
|
客户编号: ddhformData.kh,
|
|
客户编号: ddhformData.kh,
|
|
|
款式: ddhformData.ks,
|
|
款式: ddhformData.ks,
|
|
|
rq: currentDate,
|
|
rq: currentDate,
|
|
|
- 批次号: resbomtableData.value[0]['批次号'],
|
|
|
|
|
- 关联编号: resbomtableData.value[0]['关联号'],
|
|
|
|
|
- 实际门幅: resbomtableData.value[0]['实际门幅'],
|
|
|
|
|
|
|
+ 批次号: danjutableData.value[0]['批次号'],
|
|
|
|
|
+ 关联编号: danjutableData.value[0]['关联号'],
|
|
|
|
|
+ 实际门幅: danjutableData.value[0]['实际门幅'],
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
console.log(formattedData);
|
|
console.log(formattedData);
|
|
|
|
|
|
|
|
// 异步调用输入数据的接口
|
|
// 异步调用输入数据的接口
|
|
|
- const add_outReport = await outReport(formattedData);
|
|
|
|
|
|
|
+ const add_outReport = await inputStash(formattedData);
|
|
|
|
|
|
|
|
// 根据返回的 code 进行提示
|
|
// 根据返回的 code 进行提示
|
|
|
if (add_outReport.code === 0) {
|
|
if (add_outReport.code === 0) {
|
|
|
res_bomdialogFormVisible.value = false;
|
|
res_bomdialogFormVisible.value = false;
|
|
|
ElMessage({ type: 'success', message: '出库成功' });
|
|
ElMessage({ type: 'success', message: '出库成功' });
|
|
|
|
|
+ danjutableData.value.splice(0, danjutableData.value.length);
|
|
|
} else {
|
|
} else {
|
|
|
ElMessage({ type: 'error', message: '出库失败' });
|
|
ElMessage({ type: 'error', message: '出库失败' });
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
// 取消
|
|
// 取消
|
|
|
const res_bomcloseDialog = () => {
|
|
const res_bomcloseDialog = () => {
|
|
|
- _orderid.value = '';
|
|
|
|
|
- add_searchInfo.value = '';
|
|
|
|
|
- restableData.splice(0, restableData.length);
|
|
|
|
|
- res_bomdialogFormVisible.value = false;
|
|
|
|
|
- //自动获取光标
|
|
|
|
|
- getMachineMacdata();
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
- // 输入框只能输入数字和小数点
|
|
|
|
|
|
|
+ _orderid.value = '';
|
|
|
|
|
+ add_searchInfo.value = '';
|
|
|
|
|
+ restableData.splice(0, restableData.length);
|
|
|
|
|
+ res_bomdialogFormVisible.value = false;
|
|
|
|
|
+ //自动获取光标
|
|
|
|
|
+ getMachineMacdata();
|
|
|
|
|
+ }
|
|
|
|
|
+ // 输入框只能输入数字和小数点
|
|
|
const handleInput2 = (value, row, prop) => {
|
|
const handleInput2 = (value, row, prop) => {
|
|
|
- if(prop != "物料名称" && prop != "备注" ){
|
|
|
|
|
- // 使用正则表达式过滤非数字和小数点的字符
|
|
|
|
|
- let filteredValue = value.replace(/[^\d.]/g, '');
|
|
|
|
|
-
|
|
|
|
|
- // 不允许以 . 开头
|
|
|
|
|
- if (filteredValue.startsWith('.')) {
|
|
|
|
|
- filteredValue = filteredValue.slice(1); // 去掉开头的 .
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- // 确保只有一个小数点
|
|
|
|
|
- const parts = filteredValue.split('.');
|
|
|
|
|
- if (parts.length > 2) {
|
|
|
|
|
- // 如果超过一个小数点,只保留第一个
|
|
|
|
|
- row[prop] = `${parts[0]}.${parts.slice(1).join('')}`;
|
|
|
|
|
- } else {
|
|
|
|
|
- // 否则直接赋值
|
|
|
|
|
- row[prop] = filteredValue;
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
-};
|
|
|
|
|
|
|
+ if(prop != "物料名称" && prop != "备注" ){
|
|
|
|
|
+ // 使用正则表达式过滤非数字和小数点的字符
|
|
|
|
|
+ let filteredValue = value.replace(/[^\d.]/g, '');
|
|
|
|
|
+
|
|
|
|
|
+ // 不允许以 . 开头
|
|
|
|
|
+ if (filteredValue.startsWith('.')) {
|
|
|
|
|
+ filteredValue = filteredValue.slice(1); // 去掉开头的 .
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 确保只有一个小数点
|
|
|
|
|
+ const parts = filteredValue.split('.');
|
|
|
|
|
+ if (parts.length > 2) {
|
|
|
|
|
+ // 如果超过一个小数点,只保留第一个
|
|
|
|
|
+ row[prop] = `${parts[0]}.${parts.slice(1).join('')}`;
|
|
|
|
|
+ } else {
|
|
|
|
|
+ // 否则直接赋值
|
|
|
|
|
+ row[prop] = filteredValue;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ };
|
|
|
|
|
|
|
|
|
|
|
|
|
//=============出库退还记录==================
|
|
//=============出库退还记录==================
|
|
|
- const cktableData = reactive([])
|
|
|
|
|
|
|
+
|
|
|
const thtableData = reactive([])
|
|
const thtableData = reactive([])
|
|
|
|
|
+ const chukutableData = reactive([])
|
|
|
|
|
|
|
|
- const pickingaddvisible = ref(false)//弹窗
|
|
|
|
|
- const add_prinkformData = reactive({});
|
|
|
|
|
- //详情记录
|
|
|
|
|
- const details_onSubmit = async ()=>{
|
|
|
|
|
- cktableData.splice(0,cktableData.length);
|
|
|
|
|
|
|
+ const records_onSubmit = async ()=>{
|
|
|
thtableData.splice(0,thtableData.length);
|
|
thtableData.splice(0,thtableData.length);
|
|
|
- pickingaddvisible.value = true
|
|
|
|
|
- const FabricDetaillist = await FabricDetail({order:_orderid.value});
|
|
|
|
|
- console.log(FabricDetaillist)
|
|
|
|
|
- cktableData.splice(0,FabricDetaillist.length,...FabricDetaillist.data['出库记录']);
|
|
|
|
|
- thtableData.splice(0,FabricDetaillist.length,...FabricDetaillist.data['退还记录']);
|
|
|
|
|
- }
|
|
|
|
|
- //领料取消
|
|
|
|
|
- const ckth_closeDialog = async ()=>{
|
|
|
|
|
- pickingaddvisible.value = false
|
|
|
|
|
- //自动聚焦光标input
|
|
|
|
|
- getMachineMacdata();
|
|
|
|
|
|
|
+ chukutableData.splice(0,chukutableData.length);
|
|
|
|
|
+ if(records_searchInfo.value === ''){
|
|
|
|
|
+ ElMessage({type: 'warning',message: '请先输入要查询的订单编号或款号'})
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ const FabricDetaillists = await FabricDetaillist({order:records_searchInfo.value});
|
|
|
|
|
+ console.log(FabricDetaillists)
|
|
|
|
|
+ chukutableData.splice(0,FabricDetaillists.length,...FabricDetaillists.data['出库记录']);
|
|
|
|
|
+ thtableData.splice(0,FabricDetaillists.length,...FabricDetaillists.data['退还记录']);
|
|
|
}
|
|
}
|
|
|
- const dh = ref('')
|
|
|
|
|
- const type = ref('')
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
const details_pickingaddvisible = ref(false)
|
|
const details_pickingaddvisible = ref(false)
|
|
|
|
|
+ const ruku_detailstableData = reactive([])
|
|
|
const chuku_detailstableData = reactive([])
|
|
const chuku_detailstableData = reactive([])
|
|
|
const th_detailstableData = reactive([])
|
|
const th_detailstableData = reactive([])
|
|
|
-
|
|
|
|
|
- const chukuupdateCompanyFunc = async (row)=>{
|
|
|
|
|
- dh.value = row.单号
|
|
|
|
|
- type.value = 'ck'
|
|
|
|
|
- details_pickingaddvisible.value = true
|
|
|
|
|
- chuku_detailstableData.splice(0,chuku_detailstableData.length);
|
|
|
|
|
- const FabricDetaillistdata = await FabricDetaillist({order:row.单号,search:''});
|
|
|
|
|
- chuku_detailstableData.splice(0,FabricDetaillistdata.length,...FabricDetaillistdata.data['出库记录']);
|
|
|
|
|
- console.log(FabricDetaillistdata)
|
|
|
|
|
-}
|
|
|
|
|
|
|
+ const rukuupdateCompanyFunc = async (row)=>{
|
|
|
|
|
+ details_pickingaddvisible.value = true
|
|
|
|
|
+ ruku_detailstableData.splice(0,ruku_detailstableData.length);
|
|
|
|
|
+ const FabricDetaillistdata = await FabricDetaillist({order:row.订单编号});
|
|
|
|
|
+ ruku_detailstableData.splice(0,FabricDetaillistdata.length,...FabricDetaillistdata.data['出库记录']);
|
|
|
|
|
+ console.log(FabricDetaillistdata)
|
|
|
|
|
+ }
|
|
|
const thupdateCompanyFunc = async (row)=>{
|
|
const thupdateCompanyFunc = async (row)=>{
|
|
|
dh.value = row.单号
|
|
dh.value = row.单号
|
|
|
type.value = 'th'
|
|
type.value = 'th'
|
|
|
details_pickingaddvisible.value = true
|
|
details_pickingaddvisible.value = true
|
|
|
console.log(row)
|
|
console.log(row)
|
|
|
- const FabricDetaillistdata = await FabricDetaillist({order:row.单号,search:''});
|
|
|
|
|
|
|
+ const FabricDetaillistdata = await FabricDetaillist({order:row.单号,search:'退还'});
|
|
|
console.log(FabricDetaillistdata)
|
|
console.log(FabricDetaillistdata)
|
|
|
}
|
|
}
|
|
|
//详情页取消
|
|
//详情页取消
|
|
@@ -629,8 +713,9 @@
|
|
|
return; // 如果删除失败,直接返回
|
|
return; // 如果删除失败,直接返回
|
|
|
}
|
|
}
|
|
|
// 重新获取BOM列表数据
|
|
// 重新获取BOM列表数据
|
|
|
- const FabricDetaillistdata = await FabricDetaillist({order:dh.value,search:''});
|
|
|
|
|
- chuku_detailstableData.splice(0,FabricDetaillistdata.length,...FabricDetaillistdata.data['入库记录']);
|
|
|
|
|
|
|
+ chukutableData.splice(0,ruku_detailstableData.length);
|
|
|
|
|
+ const FabricDetaillists = await FabricDetaillist({order:records_searchInfo.value});
|
|
|
|
|
+ chukutableData.splice(0,FabricDetaillists.length,...FabricDetaillists.data['出库记录']);
|
|
|
} catch (error) {
|
|
} catch (error) {
|
|
|
// 用户点击“取消”或弹框关闭
|
|
// 用户点击“取消”或弹框关闭
|
|
|
console.log('用户取消删除操作');
|
|
console.log('用户取消删除操作');
|
|
@@ -759,5 +844,12 @@
|
|
|
::v-deep(.el-descriptions__table tbody tr .el-descriptions__content){
|
|
::v-deep(.el-descriptions__table tbody tr .el-descriptions__content){
|
|
|
width: 120px;
|
|
width: 120px;
|
|
|
}
|
|
}
|
|
|
|
|
+ :deep(.el-descriptions__content) {
|
|
|
|
|
+ width: 120px !important;
|
|
|
|
|
+ min-width: 120px !important;
|
|
|
|
|
+ max-width: 120px !important;
|
|
|
|
|
+ overflow: hidden !important;
|
|
|
|
|
+ text-overflow: ellipsis !important;
|
|
|
|
|
+ }
|
|
|
</style>
|
|
</style>
|
|
|
|
|
|