| | |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row v-if="type == 'edit'"> |
| | | <el-row v-if="type === 'edit'"> |
| | | <el-col :span="12"> |
| | | <el-form-item label="保底库存" prop="lowerLimit"> |
| | | <el-input placeholder="请输入" v-model.number="formData.lowerLimit"></el-input> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-table v-if="type != 'edit'" :data="formData.models" :stripe="true"> |
| | | <el-table v-else :data="formData.models" :stripe="true"> |
| | | <el-table-column prop="baseGoodsModelsId" label="规格型号" align="center"> |
| | | <template slot-scope="scope"> |
| | | {{ getGoodsModelsName(scope.row.baseGoodsModelsId) }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="lowerLimit" label="保底库存" align="center"> |
| | | <template slot-scope="scope"> |
| | | <template slot-scope="{row,$index}"> |
| | | <el-form-item |
| | | v-if="scope.row.lowerLimit || scope.row.upperLimit" |
| | | label-width="0" |
| | | :prop="`models[${scope.$index}].lowerLimit`" |
| | | :rules="rules.lowerLimit" |
| | | :prop="`models.${$index}.lowerLimit`" |
| | | :rules="[ |
| | | {validator: checkCounts,type: 1, lowerLimit: row.lowerLimit,upperLimit: row.upperLimit, trigger: ['blur', 'change']} |
| | | ]" |
| | | > |
| | | <el-input v-model.number="scope.row.lowerLimit"></el-input> |
| | | <el-input v-model.number="row.lowerLimit"></el-input> |
| | | </el-form-item> |
| | | <el-input v-else v-model.number="scope.row.lowerLimit" style="margin-bottom: 18px;"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="upperLimit" label="封顶库存" align="center"> |
| | | <template slot-scope="scope"> |
| | | <template slot-scope="{row,$index}"> |
| | | <el-form-item |
| | | v-if="scope.row.lowerLimit || scope.row.upperLimit" |
| | | label-width="0" |
| | | :prop="`models[${scope.$index}].upperLimit`" |
| | | :rules="rules.upperLimit" |
| | | :prop="`models.${$index}.upperLimit`" |
| | | :rules="[ |
| | | {validator: checkCounts,type: 2, lowerLimit: row.lowerLimit,upperLimit: row.upperLimit, trigger: ['blur', 'change']} |
| | | ]" |
| | | > |
| | | <el-input v-model.number="scope.row.upperLimit"></el-input> |
| | | <el-input v-model.number="row.upperLimit"></el-input> |
| | | </el-form-item> |
| | | <el-input v-else v-model.number="scope.row.upperLimit" style="margin-bottom: 18px;"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | checkCounts: (rule, value, callback) => { |
| | | let val = rule.type === 1 ? rule.lowerLimit : rule.upperLimit |
| | | if (!val) { |
| | | return callback(new Error(rule.type === 1 ? '请输入保底数量' : '请输入封顶数量')); |
| | | } |
| | | if (!Number.isInteger(val)) { |
| | | return callback(new Error('请输入数字值')); |
| | | } |
| | | if (val < 1) { |
| | | return callback(new Error('数字值必须大于0')); |
| | | } |
| | | if (rule.lowerLimit && rule.upperLimit && rule.lowerLimit >= rule.upperLimit) { |
| | | return callback(new Error(rule.type === 1 ? '保底库存必须小于封顶库存' : '封顶库存必须大于保底库存')); |
| | | } |
| | | callback(); |
| | | }, |
| | | loading: true, |
| | | type: '', |
| | | warehouses: [], // 入库仓库列表 |
| | |
| | | if (this.setting.id) { |
| | | this.type = 'edit'; |
| | | const detail = await warningConfigGetById({id: this.setting.id}); |
| | | this.formData = Object.assign({}, detail); |
| | | // 分类反显 |
| | | let res = await queryGoodsModelInfo({baseGoodsModelsId: this.formData.baseGoodsModelsId}); |
| | | this.formData.baseCategoryId = res[0].categoryId; |
| | | this.formData.baseCategoryIds = findParentIds(this.categoryOptions, this.formData.baseCategoryId); |
| | | let res = await queryGoodsModelInfo({baseGoodsModelsId: detail.baseGoodsModelsId}); |
| | | detail.baseCategoryId = res[0].categoryId |
| | | // 物品名称反显 |
| | | this.getgoodsTemplate(this.formData.baseCategoryId); |
| | | this.getgoodsTemplate(detail.baseCategoryId); |
| | | // 规格型号反显 |
| | | this.getgoodsModel(this.formData.baseGoodsTemplateId); |
| | | this.formData.modelsIds = [this.formData.baseGoodsModelsId]; |
| | | this.getgoodsModel(detail.baseGoodsTemplateId); |
| | | this.formData = Object.assign({}, detail); |
| | | this.formData.modelsIds = [detail.baseGoodsModelsId]; |
| | | this.getWarehouseList(); |
| | | } |
| | | this.loading = false |