From b6a27b9ca71d636a1598751f8114c36a5d7007fe Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期一, 15 四月 2024 16:52:36 +0800 Subject: [PATCH] 修改 --- src/views/warehouse/components/addStock.vue | 91 ++++++++++++++++++++++++++++++++++----------- 1 files changed, 69 insertions(+), 22 deletions(-) diff --git a/src/views/warehouse/components/addStock.vue b/src/views/warehouse/components/addStock.vue index b07eca3..506cfe3 100644 --- a/src/views/warehouse/components/addStock.vue +++ b/src/views/warehouse/components/addStock.vue @@ -10,7 +10,7 @@ <el-row :gutter="20"> <el-col :span="12"> <el-form-item label="库区名称:" prop="reserveName" > - <el-input v-model.trim="dataForm.reserveName"/> + <el-input v-model.trim="dataForm.reserveName" :readonly="isDisabled"/> </el-form-item> </el-col> <el-col :span="12"> @@ -22,7 +22,7 @@ <el-row :gutter="20"> <el-col :span="10"> <el-form-item label="所属省份:" prop="province"> - <el-select v-model="dataForm.province" clearable @change="changeArea('province')" style="width: 100%;"> + <el-select v-model="dataForm.province" clearable @change="changeArea('province')" style="width: 100%;" :disabled="isDisabled"> <el-option v-for="item in provinceList" :key="item.id" @@ -35,7 +35,7 @@ </el-col> <el-col :span="6"> <el-form-item prop="city" class="selector"> - <el-select v-model="dataForm.city" prop="city" clearable @change="changeArea('city')" style="width: 100%;"> + <el-select v-model="dataForm.city" prop="city" clearable @change="changeArea('city')" style="width: 100%;" :disabled="isDisabled"> <el-option v-for="item in cityList" :key="item.id" @@ -48,7 +48,7 @@ </el-col> <el-col :span="6"> <el-form-item prop="area" class="selector"> - <el-select v-model="dataForm.area" clearable filterable @change="changeArea('district')" style="width: 100%;"> + <el-select v-model="dataForm.area" clearable filterable @change="changeArea('district')" style="width: 100%;" :disabled="isDisabled"> <el-option v-for="item in districtList" :key="item.id" @@ -63,31 +63,31 @@ <el-row> <el-col :span="22"> <el-form-item label="库区地址:" prop="reserveAddress" > - <el-input v-model.trim="dataForm.reserveAddress"/> + <el-input v-model.trim="dataForm.reserveAddress" :readonly="isDisabled"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="11"> <el-form-item label="库区总面积:" prop="square" class="numInput"> - <el-input type="number" v-model.number="dataForm.square"><template slot="append">㎡</template></el-input> + <el-input type="number" v-model.number="dataForm.square" :readonly="isDisabled"><template slot="append">㎡</template></el-input> </el-form-item> </el-col> <el-col :span="11"> <el-form-item label="有效仓储面积:" prop="effectiveStorageSquare" class="numInput"> - <el-input type="number" v-model.number="dataForm.effectiveStorageSquare"><template slot="append">㎡</template></el-input> + <el-input type="number" v-model.number="dataForm.effectiveStorageSquare" :readonly="isDisabled"><template slot="append">㎡</template></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="11"> <el-form-item label="核定储量:" prop="approvedReserves" class="numInput"> - <el-input type="number" v-model.number="dataForm.approvedReserves"><template slot="append">箱</template></el-input> + <el-input type="number" v-model.number="dataForm.approvedReserves" :readonly="isDisabled"><template slot="append">箱</template></el-input> </el-form-item> </el-col> <el-col :span="11"> <el-form-item label="核药量:" prop="nuclearDose" class="numInput"> - <el-input type="number" v-model.number="dataForm.nuclearDose"><template slot="append">kg</template></el-input> + <el-input type="number" v-model.number="dataForm.nuclearDose" :readonly="isDisabled"><template slot="append">kg</template></el-input> </el-form-item> </el-col> </el-row> @@ -104,41 +104,41 @@ <td>核定储量(箱)</td> <td>等级</td> <td>核药量</td> - <td>操作</td> + <td v-if="isDisabled == false">操作</td> </tr> <tr v-for="(item,index) in dataForm.storehouseInfos" :key="index"> <td class="w-12"> {{ index + 1 }} </td> <td class="w-20"> - <el-input v-model="item.storehouseName"></el-input> + <el-input v-model="item.storehouseName" :readonly="isDisabled"></el-input> </td> <td> - <el-input type="number" v-model.number="item.square"><template slot="append">㎡</template></el-input> + <el-input type="number" v-model.number="item.square" :readonly="isDisabled"><template slot="append">㎡</template></el-input> </td> <td> - <el-input type="number" v-model.number="item.effectiveStorageSquare"><template slot="append">㎡</template></el-input> + <el-input type="number" v-model.number="item.effectiveStorageSquare" :readonly="isDisabled"><template slot="append">㎡</template></el-input> </td> <td> - <el-input type="number" v-model.number="item.approvedReserves"><template slot="append">箱</template></el-input> + <el-input type="number" v-model.number="item.approvedReserves" :readonly="isDisabled"><template slot="append">箱</template></el-input> </td> <td> - <el-select v-model="item.storehouseLevel" clearable filterable> + <el-select v-model="item.storehouseLevel" clearable filterable :disabled="isDisabled"> <el-option label="1.1" :value="1.1"></el-option> <el-option label="1.3" :value="1.3"></el-option> </el-select> </td> <td> - <el-input type="number" v-model.number="item.nuclearDose"><template slot="append">kg</template></el-input> + <el-input type="number" v-model.number="item.nuclearDose" :readonly="isDisabled"><template slot="append">kg</template></el-input> </td> - <td> + <td v-if="isDisabled == false"> <el-button type="danger" @click="delItem(item,index)">删除</el-button> </td> </tr> - <el-button type="primary" style="margin-top: 20px" @click="addItem()">新增仓库</el-button> + <el-button type="primary" style="margin-top: 20px" @click="addItem()" v-if="isDisabled == false">新增仓库</el-button> </el-form> <br> - <span slot="footer" class="dialog-footer"> + <span slot="footer" class="dialog-footer" v-if="isDisabled == false"> <el-button @click="dialogVisible = false">取 消</el-button> <el-button type="primary" @click="handleSubmit">保 存</el-button> </span> @@ -148,8 +148,9 @@ <script> import {mapGetters} from "vuex"; import {getCityListData, getProvinceListData} from "../../../api/area"; - import {saveReserveInfo, getInfoById, editReserveInfo} from '../../../api/warehouse' + import {saveReserveInfo, getInfoById, editReserveInfo, delStore} from '../../../api/warehouse' import Cookies from 'js-cookie' + import {MessageBox} from "_element-ui@2.14.1@element-ui"; export default { name: "addStock", data() { @@ -186,6 +187,7 @@ approvedReserves:[{ required: true, message: '请填写库区核定储量', trigger: 'blur' }], nuclearDose:[{ required: true, message: '请填写库区核药量', trigger: 'blur' }] }, + isDisabled: false } }, created() { @@ -203,7 +205,8 @@ if(type == 'add'){ this.dataForm.company = Cookies.get('company') this.dialogTitle = '新增库区' - }else{ + this.isDisabled = false + }else if(type == 'edit'){ this.dialogTitle = '编辑库区' getInfoById({id: data.topId}).then((res)=>{ if(res.data.code == 200){ @@ -224,6 +227,29 @@ }).catch((res)=>{ this.$message.warning(res.data.message) }) + this.isDisabled = false + }else{ + this.dialogTitle = '查看库区' + getInfoById({id: data.topId}).then((res)=>{ + if(res.data.code == 200){ + if(res.data.result){ + for(let i in this.dataForm){ + if(this.isKey(i,res.data.result)){ + this.dataForm[i] = res.data.result[i] + } + } + } + this.dataForm['storehouseInfos'] = res.data.result.storehouseInfo.map((i)=>{ + const{reserveId,...data} = i + return data + }) + this.dataForm['company'] = data.enterpriseName + this.dataForm['enterpriseId'] = res.data.result.enterpriseId + } + }).catch((res)=>{ + this.$message.warning(res.data.message) + }) + this.isDisabled = true } this.dialogVisible = true }, @@ -232,7 +258,27 @@ }, delItem(item,index){ - this.dataForm.storehouseInfos.splice(index,1); + MessageBox.confirm('确定删除信息', '确定删除', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(async () => { + const res = await delStore({id: item.id}) + if(res.data.code == 200){ + this.$message({ + type:'success', + message: '删除成功' + }) + this.dataForm.storehouseInfos.splice(index,1); + }else{ + this.$message({ + type:'warning', + message: res.data.message + }) + } + }).catch(() => { + console.log('已取消删除') + }) }, addItem(){ const obj = { @@ -316,6 +362,7 @@ reset(){ this.$refs.dataForm.resetFields() this.$refs.dataForm.clearValidate() + this.$emit('refresh') } } } -- Gitblit v1.9.2