| | |
| | | <template> |
| | | <win-md :title="setting.title" @close="close" :width="'1200px'"> |
| | | <el-row :gutter="20" style="margin-bottom: 20px" type="flex" align="middle"> |
| | | <el-col :span="6">盘点单号:{{ formData.businessFormCode }}</el-col> |
| | | <el-col :span="6">盘点任务:{{ formData.businessTaskCode }}</el-col> |
| | | <el-col :span="6">盘点仓库:{{ formData.warehouseId }}</el-col> |
| | | <el-col :span="3" :offset="3"> |
| | | <my-button name="导出盘点单" site="form" size="medium" type="primary" /> |
| | | </el-col> |
| | | </el-row> |
| | | <el-table v-loading="loading" :data="formData.tableData" height="100%" :stripe="true" class="the-table"> |
| | | <el-table-column prop="goodsTemplateName" label="物品名称"> </el-table-column> |
| | | <el-table-column prop="baseGoodsModelsId" label="型号" align="center"> </el-table-column> |
| | | <el-table-column prop="classification" label="类别"> </el-table-column> |
| | | <el-table-column prop="unit" label="单位" align="center"> </el-table-column> |
| | | <el-table-column prop="kc" label="应有库存" align="center"> </el-table-column> |
| | | <el-table-column prop="price" label="单价" align="center"> </el-table-column> |
| | | <el-table-column prop="inventoryResult" label="金额" align="center"> </el-table-column> |
| | | <el-table-column prop="inventoryCounts" label="实盘数量" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.inventoryCounts"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <el-form v-loading="loading" class="form" ref="ruleForm" :model="formData" :rules="rules"> |
| | | <el-row :gutter="20" style="margin-bottom: 20px" type="flex" align="middle"> |
| | | <el-col :span="6">盘点单号:{{ formData.businessFormCode }}</el-col> |
| | | <el-col :span="6">盘点任务:{{ formData.businessFormName }}</el-col> |
| | | <el-col :span="6">盘点仓库:{{ formData.warehouseName }}</el-col> |
| | | <el-col :span="3" :offset="3"> |
| | | <my-button name="导出盘点单" site="form" size="medium" type="primary" /> |
| | | </el-col> |
| | | </el-row> |
| | | <el-table |
| | | :data="formData.formInventoryGoodsList" |
| | | :rules="rules" |
| | | height="500" |
| | | :stripe="true" |
| | | class="the-table" |
| | | > |
| | | <el-table-column prop="goodsTemplateName" label="物品名称"> </el-table-column> |
| | | <el-table-column prop="baseGoodsModelsName" label="型号" align="center"> </el-table-column> |
| | | <el-table-column prop="baseGoodsModelsId" label="型号id" v-show="false" align="center"> </el-table-column> |
| | | <el-table-column prop="type" label="类别"> </el-table-column> |
| | | <el-table-column prop="unit" label="单位" align="center"> </el-table-column> |
| | | <el-table-column prop="inventoryCount" label="应有库存" align="center"> </el-table-column> |
| | | <el-table-column prop="realNum" label="实盘数量" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-form-item |
| | | style="margin-bottom: 0" |
| | | label-width="0" |
| | | :prop="`formInventoryGoodsList[${scope.$index}].realNum`" |
| | | :rules="rules.realNum" |
| | | > |
| | | <el-input v-model.number="scope.row.realNum" maxlength="8"></el-input> |
| | | </el-form-item> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-form> |
| | | |
| | | <div slot="footer" align="center" class="dialog-footer"> |
| | | <my-button name="暂存" site="form" type="primary" @click="close" /> |
| | | <my-button name="暂存" site="form" type="primary" @click="staging" /> |
| | | <my-button name="完成盘点" site="form" type="success" @click="save" /> |
| | | </div> |
| | | </win-md> |
| | |
| | | <script> |
| | | import winMd from '@/components/win/win-md'; |
| | | import myButton from '@/components/myButton/myButton'; |
| | | import {inventoryDetail, inventoryFinish, inventoryQuery, inventoryTemporaryStorage} from '@/api/stock/inventory'; |
| | | |
| | | export default { |
| | | components: { winMd, myButton }, |
| | | props: { |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | loading: false, |
| | | loading: true, |
| | | btnLoading: false, |
| | | formData: { |
| | | businessFormCode: '2023080812', |
| | | businessTaskCode: '2023年9月盘点单', |
| | | warehouseId: '开封市仓库', |
| | | tableData: [], |
| | | businessFormCode: '', |
| | | businessFormName: '', |
| | | warehouseName: '', |
| | | formInventoryGoodsList: [], |
| | | }, |
| | | rules: { |
| | | realNum: [ |
| | | { required: true, message: '请输入', trigger: 'blur' }, |
| | | { type: 'number', message: '请输入数字值' }, |
| | | ], |
| | | }, |
| | | }; |
| | | }, |
| | | created() { |
| | | for (let i = 0; i < 10; i++) { |
| | | this.formData.tableData.push({ |
| | | goodsTemplateName: '施乐黑色碳粉', |
| | | baseGoodsModelsId: '施乐c2201', |
| | | classification: 'A', |
| | | unit: '套', |
| | | kc: 10, |
| | | price: 20, |
| | | inventoryResult: 200, |
| | | inventoryCounts: 0, |
| | | const info = JSON.parse(this.setting.info); |
| | | if (info.states == 1) { |
| | | // 继续盘点 |
| | | inventoryDetail({ id: this.setting.id }).then((res) => { |
| | | this.loading = false |
| | | this.formData = res; |
| | | this.formData.id = this.setting.id; |
| | | }).catch(()=>{ |
| | | this.loading = false |
| | | }); |
| | | } else { |
| | | inventoryQuery({ id: this.setting.id }).then((res) => { |
| | | this.loading = false |
| | | this.formData = res; |
| | | this.formData.id = this.setting.id; |
| | | }).catch(()=>{ |
| | | this.loading = false |
| | | }); |
| | | } |
| | | }, |
| | |
| | | close() { |
| | | this.$emit('close'); |
| | | }, |
| | | staging() { |
| | | const params = { |
| | | id: this.formData.id, |
| | | inventoryGoodsList: this.formData.formInventoryGoodsList, |
| | | }; |
| | | this.loading = true |
| | | inventoryTemporaryStorage(params).then(() => { |
| | | this.loading = false |
| | | this.$message.success('暂存成功!'); |
| | | this.close(); |
| | | this.$emit('search'); |
| | | }).catch(()=>{ |
| | | this.loading = false |
| | | }); |
| | | }, |
| | | save() { |
| | | |
| | | } |
| | | this.$refs['ruleForm'].validate((valid) => { |
| | | if (valid) { |
| | | const params = { |
| | | ...this.formData, |
| | | inventoryGoodsList: this.formData.formInventoryGoodsList, |
| | | }; |
| | | this.loading = true |
| | | inventoryFinish(params).then(() => { |
| | | this.$message.success('暂存成功!'); |
| | | this.close(); |
| | | this.$emit('search'); |
| | | }).catch(()=>{ |
| | | this.loading = false |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |