| | |
| | | <template> |
| | | <template> |
| | | <div class="add-container" :loading="loading"> |
| | | <Card v-loading="loading"> |
| | | <div class="header-title" style="width: 100%;"> |
| | |
| | | { required: true, message: '请选择检测项', trigger: 'change' } |
| | | ] |
| | | }, |
| | | queryForm: {} |
| | | queryForm: {}, |
| | | loadedItemId: '', // 当前已加载记录关联的检测项id,用于keep-alive重新进入时判断是否变化 |
| | | loadedReportId: '', // 当前已加载记录的id,用于keep-alive重新进入时判断是否变化 |
| | | } |
| | | }, |
| | | |
| | |
| | | this.form.commitPersonId = JSON.parse(sessionStorage.getItem('userInfo')).userId |
| | | this.form.developDate = new Date().toISOString().split('T')[0]; |
| | | |
| | | // this.form.itemId = this.$route.query.itemId |
| | | if (this.$route.query.itemId) { |
| | | getDetail(this.$route.query.itemId).then(res => { |
| | | if (res) { |
| | | let item = { |
| | | teamName: res.projectTeamVO.teamName, |
| | | teamId: res.teamId, |
| | | remark: res.remark, |
| | | |
| | | itemName: res.itemName, |
| | | itemCode: res.itemCode, |
| | | createBy: res.createBy, |
| | | createTime: res.createTime |
| | | } |
| | | this.form.itemId = this.$route.query.itemId |
| | | this.form.teamId = this.$route.query.teamId |
| | | |
| | | this.tableData = [{ ...item }] |
| | | } |
| | | }) |
| | | } |
| | | if (this.$route.query.id) { |
| | | this.getDetail() |
| | | } |
| | | this.loadRouteData(); |
| | | }, |
| | | activated() { |
| | | // 页面被 keep-alive 缓存,再次打开其他记录时重新加载,避免显示上一次的旧数据 |
| | | this.loadRouteData(); |
| | | }, |
| | | computed: { |
| | | ...mapState(["tagList", "isFold"]), |
| | | }, |
| | | |
| | | methods: { |
| | | loadRouteData() { |
| | | const routeItemId = this.$route.query.itemId || ''; |
| | | const routeId = this.$route.query.id || ''; |
| | | if (routeItemId === this.loadedItemId && routeId === this.loadedReportId) { |
| | | return; |
| | | } |
| | | this.loadedItemId = routeItemId; |
| | | this.loadedReportId = routeId; |
| | | // 重置开发人、日期等默认信息 |
| | | this.form.developPerson = JSON.parse(sessionStorage.getItem('userInfo')).nickName; |
| | | this.form.developPersonName = JSON.parse(sessionStorage.getItem('userInfo')).nickName; |
| | | this.form.commitPersonId = JSON.parse(sessionStorage.getItem('userInfo')).userId |
| | | this.form.developDate = new Date().toISOString().split('T')[0]; |
| | | // 重置表单与文件,防止显示上一次记录的数据 |
| | | this.form.itemId = ''; |
| | | this.form.teamId = ''; |
| | | this.tableData = []; |
| | | this.fileList = []; |
| | | this.form.qaReportFiles = []; |
| | | |
| | | // 此段逻辑从 mounted() 中抽出,路由参数变化时重新加载 |
| | | if (this.$route.query.itemId) { |
| | | getDetail(this.$route.query.itemId).then(res => { |
| | | if (res) { |
| | | let item = { |
| | | teamName: res.projectTeamVO.teamName, |
| | | teamId: res.teamId, |
| | | remark: res.remark, |
| | | |
| | | itemName: res.itemName, |
| | | itemCode: res.itemCode, |
| | | createBy: res.createBy, |
| | | createTime: res.createTime |
| | | } |
| | | this.form.itemId = this.$route.query.itemId |
| | | this.form.teamId = this.$route.query.teamId |
| | | |
| | | this.tableData = [{ ...item }] |
| | | } |
| | | }) |
| | | } |
| | | if (this.$route.query.id) { |
| | | this.getDetail() |
| | | } |
| | | }, |
| | | getDetail() { |
| | | getDetailInfo({ id: this.$route.query.id }).then(res => { |
| | | if (res) { |