|
|
@@ -18,26 +18,31 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item label="类型">
|
|
|
<el-cascader
|
|
|
- clearable
|
|
|
- @clear="queryGoodsData.genre = 0"
|
|
|
- :options="goodsTypeData"
|
|
|
- @change="changeQueryGoodsType"
|
|
|
- :props="goodsTypeProps"/>
|
|
|
+ clearable
|
|
|
+ :options="goodsTypeData"
|
|
|
+ :props="goodsTypeProps"
|
|
|
+ @clear="queryGoodsData.genre = 0"
|
|
|
+ @change="changeQueryGoodsType"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="特征">
|
|
|
<el-input
|
|
|
- placeholder="请输入特征"
|
|
|
- v-model="queryGoodsData.characteristic"
|
|
|
+ v-model="queryGoodsData.characteristic"
|
|
|
+ placeholder="请输入特征"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="规格">
|
|
|
<el-input
|
|
|
- placeholder="请输入规格"
|
|
|
- v-model="queryGoodsData.specifications"
|
|
|
+ v-model="queryGoodsData.specifications"
|
|
|
+ placeholder="请输入规格"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
- <el-button @click="searchData" type="primary" icon="Search">搜索</el-button>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ icon="Search"
|
|
|
+ @click="searchData"
|
|
|
+ >搜索</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</el-col>
|
|
|
@@ -47,20 +52,20 @@
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-button
|
|
|
- @click="isOpenGoodsAdd = true"
|
|
|
+ @click="isOpenGoodsAdd = true"
|
|
|
>货品新增</el-button>
|
|
|
<el-button
|
|
|
- @click="isOpenCommodityGenre = true"
|
|
|
+ @click="isOpenCommodityGenre = true"
|
|
|
>货品类型</el-button>
|
|
|
<el-button
|
|
|
- @click="inboundDialog = true"
|
|
|
+ @click="inboundDialog = true"
|
|
|
>入库</el-button>
|
|
|
<el-button
|
|
|
- @click="outboundDialog = true"
|
|
|
+ @click="outboundDialog = true"
|
|
|
>出库</el-button>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
- <div style="height: 20px"></div>
|
|
|
+ <div style="height: 20px" />
|
|
|
<el-table
|
|
|
:data="goodsListData"
|
|
|
style="height: 600px"
|
|
|
@@ -75,6 +80,16 @@
|
|
|
label="类型"
|
|
|
align="center"
|
|
|
/>
|
|
|
+ <el-table-column
|
|
|
+ prop="characteristic"
|
|
|
+ label="特性"
|
|
|
+ align="center"
|
|
|
+ />
|
|
|
+ <el-table-column
|
|
|
+ prop="specifications"
|
|
|
+ label="规格"
|
|
|
+ align="center"
|
|
|
+ />
|
|
|
<el-table-column
|
|
|
prop="number"
|
|
|
label="数量"
|
|
|
@@ -126,10 +141,11 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item label="货品类型">
|
|
|
<el-cascader
|
|
|
- v-model="goodsEditData.goodsGenreId"
|
|
|
- :options="goodsTypeData"
|
|
|
- @change="editHandleChange"
|
|
|
- :props="goodsTypeProps"/>
|
|
|
+ v-model="goodsEditData.goodsGenreId"
|
|
|
+ :options="goodsTypeData"
|
|
|
+ :props="goodsTypeProps"
|
|
|
+ @change="editHandleChange"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="特征">
|
|
|
<el-input
|
|
|
@@ -143,7 +159,10 @@
|
|
|
<el-input v-model="goodsEditData.unit" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="数量">
|
|
|
- <el-input v-model.number="goodsEditData.number" type="number"/>
|
|
|
+ <el-input
|
|
|
+ v-model.number="goodsEditData.number"
|
|
|
+ type="number"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
<el-button
|
|
|
@@ -169,14 +188,18 @@
|
|
|
style="max-width: 400px"
|
|
|
size="large"
|
|
|
>
|
|
|
- <el-form-item label="货品名称" prop="name">
|
|
|
- <el-input v-model="goodsAddDate.name"/>
|
|
|
+ <el-form-item
|
|
|
+ label="货品名称"
|
|
|
+ prop="name"
|
|
|
+ >
|
|
|
+ <el-input v-model="goodsAddDate.name" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="货品类型">
|
|
|
<el-cascader
|
|
|
- :options="goodsTypeData"
|
|
|
- @change="handleChange"
|
|
|
- :props="goodsTypeProps"/>
|
|
|
+ :options="goodsTypeData"
|
|
|
+ :props="goodsTypeProps"
|
|
|
+ @change="handleChange"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="特性">
|
|
|
<el-input
|
|
|
@@ -185,23 +208,26 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item label="规格">
|
|
|
<el-input
|
|
|
- v-model="goodsAddDate.specifications"
|
|
|
+ v-model="goodsAddDate.specifications"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="单位">
|
|
|
<el-input v-model="goodsAddDate.unit" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="数量">
|
|
|
- <el-input v-model.number="goodsAddDate.number" type="number"/>
|
|
|
+ <el-input
|
|
|
+ v-model.number="goodsAddDate.number"
|
|
|
+ type="number"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="位置">
|
|
|
<el-input v-model="goodsAddDate.position" />
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
<el-button
|
|
|
- type="primary"
|
|
|
- @click="goodsAddSubmit"
|
|
|
- size="large"
|
|
|
+ type="primary"
|
|
|
+ size="large"
|
|
|
+ @click="goodsAddSubmit"
|
|
|
>提交</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
@@ -220,9 +246,12 @@
|
|
|
@click="isOpenAddGenre = true"
|
|
|
>新增货品类型</el-button>
|
|
|
</el-header>
|
|
|
-<!-- :data="filterTableData"-->
|
|
|
+ <!-- :data="filterTableData"-->
|
|
|
<el-main>
|
|
|
- <el-table :data="goodsTypeData" row-key="ID">
|
|
|
+ <el-table
|
|
|
+ :data="goodsTypeData"
|
|
|
+ row-key="ID"
|
|
|
+ >
|
|
|
<el-table-column
|
|
|
label="ID"
|
|
|
prop="ID"
|
|
|
@@ -263,48 +292,53 @@
|
|
|
<el-form size="large">
|
|
|
<el-form-item>
|
|
|
<el-alert
|
|
|
- show-icon
|
|
|
- title="注意:如果没有选择父级类型那么添加的类型就属于一级货品类型,否则属于二级货品类型"
|
|
|
- type="info"
|
|
|
+ show-icon
|
|
|
+ title="注意:如果没有选择父级类型那么添加的类型就属于一级货品类型,否则属于二级货品类型"
|
|
|
+ type="info"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="父级类型:">
|
|
|
<el-select
|
|
|
- placeholder="请选择父级类型"
|
|
|
- v-model="createGoodsTypeData.parentId"
|
|
|
- clearable
|
|
|
- @clear="createGoodsTypeData.parentId = ''"
|
|
|
+ v-model="createGoodsTypeData.parentId"
|
|
|
+ placeholder="请选择父级类型"
|
|
|
+ clearable
|
|
|
+ @clear="createGoodsTypeData.parentId = ''"
|
|
|
>
|
|
|
<el-option
|
|
|
- v-for="item in goodsTypeData"
|
|
|
- :key="item.ID"
|
|
|
- :label="item.name"
|
|
|
- :value="item.ID"
|
|
|
+ v-for="item in goodsTypeData"
|
|
|
+ :key="item.ID"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.ID"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="类型名称:">
|
|
|
<el-input
|
|
|
- placeholder="请输入货物类型名称"
|
|
|
- v-model="createGoodsTypeData.name"
|
|
|
- clearable
|
|
|
+ v-model="createGoodsTypeData.name"
|
|
|
+ placeholder="请输入货物类型名称"
|
|
|
+ clearable
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="类型备注:">
|
|
|
<el-input
|
|
|
- placeholder="请输入备注"
|
|
|
- v-model="createGoodsTypeData.remarks"
|
|
|
- clearable
|
|
|
+ v-model="createGoodsTypeData.remarks"
|
|
|
+ placeholder="请输入备注"
|
|
|
+ clearable
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
<div class="dialog-footer">
|
|
|
<el-button
|
|
|
- @click="isOpenAddGenre = false"
|
|
|
- size="large">
|
|
|
+ size="large"
|
|
|
+ @click="isOpenAddGenre = false"
|
|
|
+ >
|
|
|
取消
|
|
|
</el-button>
|
|
|
- <el-button type="primary" @click="increaseGoodsType" size="large">
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ size="large"
|
|
|
+ @click="increaseGoodsType"
|
|
|
+ >
|
|
|
确认
|
|
|
</el-button>
|
|
|
</div>
|
|
|
@@ -319,221 +353,257 @@
|
|
|
>
|
|
|
<template #footer>
|
|
|
<el-form size="large">
|
|
|
- <el-form-item label="父级类型:" v-show="updateGoodsTypeData.parentId !== ''">
|
|
|
+ <el-form-item
|
|
|
+ v-show="updateGoodsTypeData.parentId !== ''"
|
|
|
+ label="父级类型:"
|
|
|
+ >
|
|
|
<el-select
|
|
|
- placeholder="请选择父级类型"
|
|
|
- v-model="updateGoodsTypeData.parentId"
|
|
|
+ v-model="updateGoodsTypeData.parentId"
|
|
|
+ placeholder="请选择父级类型"
|
|
|
>
|
|
|
<el-option
|
|
|
- v-for="item in goodsTypeData"
|
|
|
- :key="item.ID"
|
|
|
- :label="item.name"
|
|
|
- :value="item.ID"
|
|
|
+ v-for="item in goodsTypeData"
|
|
|
+ :key="item.ID"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.ID"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="类型名称:">
|
|
|
<el-input
|
|
|
- placeholder="请输入货物类型名称"
|
|
|
- v-model="updateGoodsTypeData.name"
|
|
|
- clearable
|
|
|
+ v-model="updateGoodsTypeData.name"
|
|
|
+ placeholder="请输入货物类型名称"
|
|
|
+ clearable
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="类型备注:">
|
|
|
<el-input
|
|
|
- placeholder="请输入备注"
|
|
|
- v-model="updateGoodsTypeData.remarks"
|
|
|
- clearable
|
|
|
+ v-model="updateGoodsTypeData.remarks"
|
|
|
+ placeholder="请输入备注"
|
|
|
+ clearable
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
<div class="dialog-footer">
|
|
|
<el-button
|
|
|
- @click="isOpenUpdateGenre = false"
|
|
|
- size="large">
|
|
|
+ size="large"
|
|
|
+ @click="isOpenUpdateGenre = false"
|
|
|
+ >
|
|
|
取消
|
|
|
</el-button>
|
|
|
- <el-button type="primary" @click="modifyGoodsType" size="large">
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ size="large"
|
|
|
+ @click="modifyGoodsType"
|
|
|
+ >
|
|
|
确认
|
|
|
</el-button>
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
</el-drawer>
|
|
|
-<!-- 入库-->
|
|
|
+ <!-- 入库-->
|
|
|
<el-drawer
|
|
|
- v-model="inboundDialog"
|
|
|
- title="新建入库单"
|
|
|
- direction="rtl"
|
|
|
- size="50%"
|
|
|
+ v-model="inboundDialog"
|
|
|
+ title="新建入库单"
|
|
|
+ direction="rtl"
|
|
|
+ size="50%"
|
|
|
>
|
|
|
<div>
|
|
|
<el-header
|
|
|
- class="gva-search-box"
|
|
|
- style="height: 30px;line-height: 30px;"
|
|
|
+ class="gva-search-box"
|
|
|
+ style="height: 30px;line-height: 30px;"
|
|
|
>
|
|
|
- <el-button type="primary" @click="addGoods">添加货品</el-button>
|
|
|
- <el-button type="danger" @click="reduceGoods">减少货品</el-button>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ @click="addGoods"
|
|
|
+ >添加货品</el-button>
|
|
|
+ <el-button
|
|
|
+ type="danger"
|
|
|
+ @click="reduceGoods"
|
|
|
+ >减少货品</el-button>
|
|
|
</el-header>
|
|
|
<el-main>
|
|
|
<el-table
|
|
|
- :data="storeData.cargos"
|
|
|
- height="500"
|
|
|
- border
|
|
|
- style="width: 100%;margin-bottom: 20px"
|
|
|
+ :data="storeData.cargos"
|
|
|
+ height="500"
|
|
|
+ border
|
|
|
+ style="width: 100%;margin-bottom: 20px"
|
|
|
>
|
|
|
- <el-table-column label="货品" width="300">
|
|
|
+ <el-table-column
|
|
|
+ label="货品"
|
|
|
+ width="300"
|
|
|
+ >
|
|
|
<template #default="{ row }">
|
|
|
<el-select
|
|
|
- v-model="row.goodsId"
|
|
|
- filterable
|
|
|
- placeholder="选择货品"
|
|
|
+ v-model="row.goodsId"
|
|
|
+ filterable
|
|
|
+ placeholder="选择货品"
|
|
|
>
|
|
|
<el-option
|
|
|
- v-for="item in goodsListData"
|
|
|
- :key="item.ID"
|
|
|
- :label="item.name"
|
|
|
- :value="item.ID"
|
|
|
+ v-for="item in goodsListData"
|
|
|
+ :key="item.ID"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.ID"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
- label="数量"
|
|
|
- width="200"
|
|
|
+ label="数量"
|
|
|
+ width="200"
|
|
|
>
|
|
|
<template #default="{ row }">
|
|
|
<el-input-number
|
|
|
- v-model="row.number"
|
|
|
- :min="1"
|
|
|
+ v-model="row.number"
|
|
|
+ :min="1"
|
|
|
/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="购买价格">
|
|
|
<template #default="{ row }">
|
|
|
- <el-input v-model.number="row.buyingPrice" type="number"/>
|
|
|
+ <el-input
|
|
|
+ v-model.number="row.buyingPrice"
|
|
|
+ type="number"
|
|
|
+ />
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
<el-form inline>
|
|
|
<el-form-item
|
|
|
- label="标题"
|
|
|
- prop="title"
|
|
|
+ label="标题"
|
|
|
+ prop="title"
|
|
|
>
|
|
|
<el-input
|
|
|
- v-model="storeData.title"
|
|
|
- style="width: 200px;"
|
|
|
+ v-model="storeData.title"
|
|
|
+ style="width: 200px;"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item
|
|
|
- label="管理人"
|
|
|
- prop="custodian"
|
|
|
+ label="管理人"
|
|
|
+ prop="custodian"
|
|
|
>
|
|
|
<el-input
|
|
|
- v-model="storeData.custodian"
|
|
|
- style="width: 200px;"
|
|
|
+ v-model="storeData.custodian"
|
|
|
+ style="width: 200px;"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item
|
|
|
- label="备注"
|
|
|
- prop="custodian"
|
|
|
+ label="备注"
|
|
|
+ prop="custodian"
|
|
|
>
|
|
|
<el-input
|
|
|
- v-model="storeData.remarks"
|
|
|
- style="width: 200px;"
|
|
|
+ v-model="storeData.remarks"
|
|
|
+ style="width: 200px;"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
<el-button
|
|
|
- type="primary"
|
|
|
- @click="submitInboundForm"
|
|
|
+ type="primary"
|
|
|
+ @click="submitInboundForm"
|
|
|
>提交入库</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</el-main>
|
|
|
</div>
|
|
|
</el-drawer>
|
|
|
-<!-- 出库-->
|
|
|
- <el-drawer v-model="outboundDialog" size="50%" title="新建出库单">
|
|
|
+ <!-- 出库-->
|
|
|
+ <el-drawer
|
|
|
+ v-model="outboundDialog"
|
|
|
+ size="50%"
|
|
|
+ title="新建出库单"
|
|
|
+ >
|
|
|
<el-header
|
|
|
- class="gva-search-box"
|
|
|
- style="height: 30px;line-height: 30px;"
|
|
|
+ class="gva-search-box"
|
|
|
+ style="height: 30px;line-height: 30px;"
|
|
|
>
|
|
|
- <el-button type="primary" @click="outAddGoods">添加货品</el-button>
|
|
|
- <el-button type="danger" @click="outReduceGoods">减少货品</el-button>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ @click="outAddGoods"
|
|
|
+ >添加货品</el-button>
|
|
|
+ <el-button
|
|
|
+ type="danger"
|
|
|
+ @click="outReduceGoods"
|
|
|
+ >减少货品</el-button>
|
|
|
</el-header>
|
|
|
<el-main>
|
|
|
<el-table
|
|
|
- :data="outboundData.cargos"
|
|
|
- height="500"
|
|
|
- border
|
|
|
- style="width: 100%;margin-bottom: 20px"
|
|
|
+ :data="outboundData.cargos"
|
|
|
+ height="500"
|
|
|
+ border
|
|
|
+ style="width: 100%;margin-bottom: 20px"
|
|
|
>
|
|
|
- <el-table-column label="货品" width="300">
|
|
|
+ <el-table-column
|
|
|
+ label="货品"
|
|
|
+ width="300"
|
|
|
+ >
|
|
|
<template #default="{ row }">
|
|
|
<el-select
|
|
|
- v-model="row.goodsId"
|
|
|
- filterable
|
|
|
- placeholder="选择货品"
|
|
|
+ v-model="row.goodsId"
|
|
|
+ filterable
|
|
|
+ placeholder="选择货品"
|
|
|
>
|
|
|
<el-option
|
|
|
- v-for="item in goodsListData"
|
|
|
- :key="item.ID"
|
|
|
- :label="item.name"
|
|
|
- :value="item.ID"
|
|
|
+ v-for="item in goodsListData"
|
|
|
+ :key="item.ID"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.ID"
|
|
|
/>
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
- label="数量"
|
|
|
- width="200"
|
|
|
+ label="数量"
|
|
|
+ width="200"
|
|
|
>
|
|
|
<template #default="{ row }">
|
|
|
<el-input-number
|
|
|
- v-model="row.number"
|
|
|
- :min="1"
|
|
|
+ v-model="row.number"
|
|
|
+ :min="1"
|
|
|
/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="购买价格">
|
|
|
<template #default="{ row }">
|
|
|
- <el-input v-model.number="row.buyingPrice" type="number"/>
|
|
|
+ <el-input
|
|
|
+ v-model.number="row.buyingPrice"
|
|
|
+ type="number"
|
|
|
+ />
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
<el-form inline>
|
|
|
<el-form-item
|
|
|
- label="标题"
|
|
|
- prop="title"
|
|
|
+ label="标题"
|
|
|
+ prop="title"
|
|
|
>
|
|
|
<el-input
|
|
|
- v-model="outboundData.title"
|
|
|
- style="width: 200px;"
|
|
|
+ v-model="outboundData.title"
|
|
|
+ style="width: 200px;"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item
|
|
|
- label="管理人"
|
|
|
- prop="custodian"
|
|
|
+ label="管理人"
|
|
|
+ prop="custodian"
|
|
|
>
|
|
|
<el-input
|
|
|
- v-model="outboundData.custodian"
|
|
|
- style="width: 200px;"
|
|
|
+ v-model="outboundData.custodian"
|
|
|
+ style="width: 200px;"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item
|
|
|
- label="备注"
|
|
|
- prop="custodian"
|
|
|
+ label="备注"
|
|
|
+ prop="custodian"
|
|
|
>
|
|
|
<el-input
|
|
|
- v-model="outboundData.remarks"
|
|
|
- style="width: 200px;"
|
|
|
+ v-model="outboundData.remarks"
|
|
|
+ style="width: 200px;"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
<el-button
|
|
|
- type="primary"
|
|
|
- @click="submitOutboundForm"
|
|
|
+ type="primary"
|
|
|
+ @click="submitOutboundForm"
|
|
|
>提交出库</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
@@ -546,7 +616,7 @@
|
|
|
<script setup>
|
|
|
import { ref, onMounted, reactive } from 'vue'
|
|
|
import {
|
|
|
- queryGoodsType,deleteGoodsType,
|
|
|
+ queryGoodsType, deleteGoodsType,
|
|
|
createGoodsType,
|
|
|
updateGoodsType,
|
|
|
createGoods,
|
|
|
@@ -593,7 +663,7 @@ const storeData = reactive({
|
|
|
],
|
|
|
remarks: ''
|
|
|
})
|
|
|
-const submitInboundForm = async () => {
|
|
|
+const submitInboundForm = async() => {
|
|
|
if (!validateInboundForm(storeData)) return
|
|
|
await createInboundManifest(storeData).then(res => {
|
|
|
if (res.code === 0) {
|
|
|
@@ -604,11 +674,11 @@ const submitInboundForm = async () => {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
-//出库
|
|
|
+// 出库
|
|
|
const outboundDialog = ref(false)
|
|
|
|
|
|
const outAddGoods = () => {
|
|
|
- outboundData.cargos.push({goodsId: null, number: 1, buyingPrice: 0})
|
|
|
+ outboundData.cargos.push({ goodsId: null, number: 1, buyingPrice: 0 })
|
|
|
}
|
|
|
|
|
|
const outReduceGoods = () => {
|
|
|
@@ -629,7 +699,7 @@ const outboundData = reactive({
|
|
|
remarks: ''
|
|
|
})
|
|
|
|
|
|
-const submitOutboundForm = async () => {
|
|
|
+const submitOutboundForm = async() => {
|
|
|
if (!validateInboundForm(outboundData)) return
|
|
|
await createOutboundManifest(outboundData).then(res => {
|
|
|
if (res.code === 0) {
|
|
|
@@ -668,7 +738,6 @@ const validateInboundForm = (data) => {
|
|
|
ElMessage.warning(`第 ${i + 1} 行数量必须大于0`)
|
|
|
return false
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
|
|
|
return true
|
|
|
@@ -681,16 +750,16 @@ const total = ref(0)
|
|
|
const goodsTypeData = ref([])
|
|
|
// 新增货物类型
|
|
|
const createGoodsTypeData = reactive({
|
|
|
- name: "",
|
|
|
- remarks: "",
|
|
|
- parentId: ""
|
|
|
+ name: '',
|
|
|
+ remarks: '',
|
|
|
+ parentId: ''
|
|
|
})
|
|
|
|
|
|
-const increaseGoodsType = async () => {
|
|
|
- let data = {}
|
|
|
+const increaseGoodsType = async() => {
|
|
|
+ const data = {}
|
|
|
data.name = createGoodsTypeData.name
|
|
|
data.remarks = createGoodsTypeData.remarks
|
|
|
- if(createGoodsTypeData.parentId !== '') {
|
|
|
+ if (createGoodsTypeData.parentId !== '') {
|
|
|
data.parentId = createGoodsTypeData.parentId
|
|
|
}
|
|
|
await createGoodsType(data).then(res => {
|
|
|
@@ -710,9 +779,9 @@ const increaseGoodsType = async () => {
|
|
|
// 编辑货品类型
|
|
|
const updateGoodsTypeData = reactive({
|
|
|
id: 0,
|
|
|
- name: "",
|
|
|
- remarks: "",
|
|
|
- parentId: ""
|
|
|
+ name: '',
|
|
|
+ remarks: '',
|
|
|
+ parentId: ''
|
|
|
})
|
|
|
|
|
|
const openUpdateGenre = (val) => {
|
|
|
@@ -723,12 +792,12 @@ const openUpdateGenre = (val) => {
|
|
|
val.children === null ? updateGoodsTypeData.parentId = val.parentId : updateGoodsTypeData.parentId = ''
|
|
|
}
|
|
|
|
|
|
-const modifyGoodsType = async () => {
|
|
|
- let data = {}
|
|
|
+const modifyGoodsType = async() => {
|
|
|
+ const data = {}
|
|
|
data.id = updateGoodsTypeData.id
|
|
|
data.name = updateGoodsTypeData.name
|
|
|
data.remarks = updateGoodsTypeData.remarks
|
|
|
- if(updateGoodsTypeData.parentId !== '') {
|
|
|
+ if (updateGoodsTypeData.parentId !== '') {
|
|
|
data.parentId = updateGoodsTypeData.parentId
|
|
|
}
|
|
|
await updateGoodsType(data).then(res => {
|
|
|
@@ -742,33 +811,33 @@ const modifyGoodsType = async () => {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
-//删除货物类型
|
|
|
+// 删除货物类型
|
|
|
const omitGoodsType = (val) => {
|
|
|
ElMessageBox.confirm(
|
|
|
- '将永久删除该信息。是否继续?',
|
|
|
- '删除',
|
|
|
- {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning',
|
|
|
- }
|
|
|
+ '将永久删除该信息。是否继续?',
|
|
|
+ '删除',
|
|
|
+ {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning',
|
|
|
+ }
|
|
|
)
|
|
|
- .then(async() => {
|
|
|
- await deleteGoodsType(val.ID).then(res => {
|
|
|
- if (res.code === 0) {
|
|
|
- ElMessage.success('删除成功')
|
|
|
- getData()
|
|
|
- } else {
|
|
|
- ElMessage.error('删除失败')
|
|
|
- }
|
|
|
- })
|
|
|
+ .then(async() => {
|
|
|
+ await deleteGoodsType(val.ID).then(res => {
|
|
|
+ if (res.code === 0) {
|
|
|
+ ElMessage.success('删除成功')
|
|
|
+ getData()
|
|
|
+ } else {
|
|
|
+ ElMessage.error('删除失败')
|
|
|
+ }
|
|
|
})
|
|
|
- .catch(() => {
|
|
|
- ElMessage({
|
|
|
- type: 'info',
|
|
|
- message: '删除已取消',
|
|
|
- })
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ ElMessage({
|
|
|
+ type: 'info',
|
|
|
+ message: '删除已取消',
|
|
|
})
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
// 新增货物类型
|
|
|
@@ -806,13 +875,13 @@ const queryGoodsData = reactive({
|
|
|
pageSize: 10
|
|
|
},
|
|
|
genre: 0,
|
|
|
- name: "",
|
|
|
- characteristic: "",
|
|
|
- specifications: ""
|
|
|
+ name: '',
|
|
|
+ characteristic: '',
|
|
|
+ specifications: ''
|
|
|
})
|
|
|
|
|
|
const changeQueryGoodsType = (val) => {
|
|
|
- queryGoodsData.genre= val[1]
|
|
|
+ queryGoodsData.genre = val[1]
|
|
|
}
|
|
|
|
|
|
// 分页
|
|
|
@@ -826,7 +895,7 @@ const handleCurrentChange = (val) => {
|
|
|
getData()
|
|
|
}
|
|
|
|
|
|
-const searchData = async () => {
|
|
|
+const searchData = async() => {
|
|
|
queryGoodsData.pageInfo.page = 1
|
|
|
queryGoodsData.pageInfo.pageSize = 10
|
|
|
await queryGoodsList(queryGoodsData).then(res => {
|
|
|
@@ -863,16 +932,15 @@ const isOpenAddGenre = ref(false)
|
|
|
|
|
|
const isOpenUpdateGenre = ref(false)
|
|
|
|
|
|
-
|
|
|
// 编辑货品
|
|
|
const isOpenGoodsEdit = ref(false)
|
|
|
const goodsEditData = reactive({
|
|
|
id: 0,
|
|
|
- name: "",
|
|
|
+ name: '',
|
|
|
goodsGenreId: 0,
|
|
|
- characteristic: "",
|
|
|
- specifications: "",
|
|
|
- unit: "",
|
|
|
+ characteristic: '',
|
|
|
+ specifications: '',
|
|
|
+ unit: '',
|
|
|
number: 0
|
|
|
})
|
|
|
const openGoodsEdit = (val) => {
|