| | |
| | | v-for="item in descriptionOptions" |
| | | :key="item.guid" |
| | | :label="item.description" |
| | | :value="item.guid" |
| | | :value="item.description" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | accept="image/*" |
| | | > |
| | | <el-button type="primary" id="uploadBtnId" style="display: none"></el-button> |
| | | <el-icon> |
| | | <el-icon v-show="fileList.length != 3"> |
| | | <Plus /> |
| | | </el-icon> |
| | | </el-upload> |
| | |
| | | </ArbitraryPhoto> |
| | | </el-dialog> |
| | | <el-dialog |
| | | title="台账图片" |
| | | width="80%" |
| | | v-model="ledgerPicDialog" |
| | | :before-close="beforeLedgerPicDialogclose" |
| | |
| | | </CompDevicePhono> |
| | | </el-dialog> |
| | | <el-dialog v-model="previewDialogVisible"> |
| | | <img w-full :src="previewDialogImageUrl" alt="预览" class="preview-pic"/> |
| | | <img w-full :src="previewDialogImageUrl" alt="预览" class="preview-pic" /> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | |
| | | |
| | | import { $fysp } from '@/api/index.js'; |
| | | import fileUtil from '@/utils/fileUtils.js'; |
| | | import { useCloned } from '@vueuse/core'; |
| | | import { get, useCloned } from '@vueuse/core'; |
| | | import { ElMessage } from 'element-plus'; |
| | | import deviceApi from '@/api/fysp/deviceApi'; |
| | | export default { |
| | |
| | | watch: { |
| | | fileList: { |
| | | handler(newFileList, oldFileList) { |
| | | console.log('newFileList', newFileList); |
| | | // 图片校验 |
| | | this.pictureValidate(); |
| | | }, |
| | |
| | | computed: { |
| | | descriptionOptions() { |
| | | const descriptions = []; |
| | | |
| | | this.problemTypeList.forEach((item) => { |
| | | if (item.typename == this.proType) { |
| | | descriptions.push(item); |
| | | } |
| | | }); |
| | | |
| | | return descriptions; |
| | | }, |
| | | problemTypeOptions() { |
| | |
| | | }, []); |
| | | }, |
| | | adviseOptions() { |
| | | var array = this.suggestions.filter((item) => item.adProblemtypeguid == this.currProTypeGuid); |
| | | console.log('adName', array); |
| | | |
| | | var problemGuid = this.currProTypeGuid || this.problem.guid; |
| | | var array = this.suggestions.filter((item) => item.adProblemtypeguid == problemGuid); |
| | | return array; |
| | | } |
| | | }, |
| | |
| | | // 将一个js对象中所有di,wi,pi开头的属性全部改成去掉这些前缀并且重新变为驼峰式命名 |
| | | const newObj = {}; |
| | | for (const key in obj) { |
| | | if (obj.hasOwnProperty(key)) { |
| | | let newKey = key; |
| | | let newKey = key; |
| | | if (key.startsWith('di')) { |
| | | newKey = key.substring(2); |
| | | } else if (key.startsWith('wi')) { |
| | |
| | | } |
| | | newKey = newKey.charAt(0).toLowerCase() + newKey.slice(1); |
| | | newObj[newKey] = obj[key]; |
| | | } |
| | | } |
| | | return newObj; |
| | | }, |
| | |
| | | this.saveStatus(newDevice, statusItem); |
| | | newDevice.dlLocation = statusItem.dlLocation; |
| | | newDevice.topTypeId = topTypeId; |
| | | console.log('newDevice.topTypeId', newDevice.topTypeId); |
| | | console.log('newDevice', newDevice); |
| | | |
| | | this.deviceImgObjList.push(newDevice); |
| | | } |
| | |
| | | }, |
| | | initOptions() { |
| | | if (this.problem == undefined || this.problem == null) { |
| | | this.problem = {}; |
| | | this.deepCopyProblem = {}; |
| | | } else { |
| | | this.deepCopyProblem = useCloned(this.problem).cloned.value; |
| | |
| | | // 问题建议 |
| | | problemApi.getSuggestion().then((res) => { |
| | | this.suggestions = res.data; |
| | | // 填充当前问题建议 |
| | | this.deepCopyProblem.advise = this.suggestions.filter( |
| | | (item) => item.adProblemtypeguid == this.deepCopyProblem.guid |
| | | )[0].adName; |
| | | }); |
| | | |
| | | // 问题位置 |
| | |
| | | this.oldFileList.filter((item) => item.url != file.url); |
| | | } |
| | | }, |
| | | handleLedgerPicPhono() { |
| | | handleLedgerPicPhono(data) { |
| | | this.beforeLedgerPicDialogclose(); |
| | | let isExist = false; |
| | | for (const item of data) { |
| | |
| | | isExist = false; |
| | | } |
| | | }, |
| | | beforeLedgerPicDialogclose() { |
| | | this.ledgerPicDialog = false; |
| | | }, |
| | | findProTypeByGuid(guid) { |
| | | let result; |
| | | this.problemTypeList.forEach((item) => { |
| | |
| | | return result; |
| | | }, |
| | | changeProblemname() { |
| | | if (this.proRemark == null || this.proRemark == '') { |
| | | if (!this.proRemark || this.proRemark == null || this.proRemark == '') { |
| | | this.deepCopyProblem.problemname = this.deepCopyProblem.description; |
| | | } else { |
| | | this.deepCopyProblem.problemname = |
| | |
| | | this.deepCopyProblem.description = ''; |
| | | this.deepCopyProblem.advise = ''; |
| | | }, |
| | | findProByProDesName(name) { |
| | | let result |
| | | this.problemTypeList.forEach(item=>{ |
| | | if (item.description == name) { |
| | | result = item; |
| | | } |
| | | }) |
| | | return result |
| | | }, |
| | | onProDesChange(value) { |
| | | let currPro = this.findProTypeByGuid(value); |
| | | let currPro = this.findProByProDesName(value) |
| | | this.deepCopyProblem.advise = ''; |
| | | this.currProTypeGuid = value; |
| | | this.deepCopyProblem.description = currPro.description; |
| | | this.currProTypeGuid = currPro.guid; |
| | | // this.deepCopyProblem.description = currPro.description; |
| | | this.changeProblemname(); |
| | | this.deepCopyProblem.advise = ''; |
| | | |
| | | this.deepCopyProblem.advise = this.adviseOptions[0].adName; |
| | | var adName = this.adviseOptions.length == 0 ? '' : this.adviseOptions[0].adName; |
| | | this.deepCopyProblem.advise = adName; |
| | | }, |
| | | onProLocationChange(value) { |
| | | this.posList.forEach((item) => { |
| | |
| | | } |
| | | exclude = false; |
| | | // picUrls.push(item) |
| | | } else { |
| | | } |
| | | }); |
| | | if (this.type == 1) { |
| | |
| | | const deepCopySubTask = useCloned(this.subtask).cloned.value; |
| | | const that = this; |
| | | fileUtil.getImageFiles(picUrls, function (files) { |
| | | console.log('deepCopySubTask', deepCopySubTask); |
| | | deepCopyPro.insGuid = deepCopySubTask.insGuid; |
| | | delete deepCopyPro['advise']; |
| | | delete deepCopyPro['description']; |
| | |
| | | } |
| | | isExist = false; |
| | | } |
| | | }, |
| | | handleLedgerPicPhono(data) { |
| | | let isExist = false; |
| | | for (const item of data) { |
| | | for (const already of this.fileList) { |
| | | if (item.url == already.url) { |
| | | isExist = true; |
| | | } |
| | | } |
| | | if (!isExist) { |
| | | this.fileList.push({ |
| | | url: item.url, |
| | | name: '1' |
| | | }); |
| | | } |
| | | isExist = false; |
| | | } |
| | | |
| | | this.beforeAnyPhotoDialogclose(); |
| | | }, |
| | | chosePicFromAnyPic() { |
| | | this.anyPhotoDialog = true; |
| | |
| | | .row { |
| | | width: 100%; |
| | | } |
| | | |
| | | ::v-deep .el-dialog { |
| | | --el-dialog-margin-top: 2vh; |
| | | height: 98vh; |
| | | } |
| | | ::v-deep .el-dialog__body { |
| | | width: 95%; |
| | | height: 100%; |
| | | } |
| | | ::v-deep .el-upload-list--picture-card .el-upload-list__item-thumbnail { |
| | | object-fit: cover !important; |
| | |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | ::v-deep .el-upload--picture-card { |
| | | border: 0 !important; |
| | | } |
| | | </style> |