| | |
| | | <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"> |
| | |
| | | <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" |
| | |
| | | </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" |
| | |
| | | </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" |
| | |
| | | <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> |
| | |
| | | <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> |
| | |
| | | <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() { |
| | |
| | | approvedReserves:[{ required: true, message: '请填写库区核定储量', trigger: 'blur' }], |
| | | nuclearDose:[{ required: true, message: '请填写库区核药量', trigger: 'blur' }] |
| | | }, |
| | | isDisabled: false |
| | | } |
| | | }, |
| | | created() { |
| | |
| | | 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){ |
| | |
| | | }).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 |
| | | }, |
| | |
| | | }, |
| | | |
| | | 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 = { |
| | |
| | | reset(){ |
| | | this.$refs.dataForm.resetFields() |
| | | this.$refs.dataForm.clearValidate() |
| | | this.$emit('refresh') |
| | | } |
| | | } |
| | | } |