| | |
| | | <el-form :model="queryParams" ref="queryParams" size="small" :inline="true"> |
| | | <el-form-item label="委托编号" prop="entrustCode"> |
| | | <el-input v-model="queryParams.entrustCode" clearable placeholder="请输入" size="small" |
| | | @keyup.enter.native="refreshTable()"></el-input> |
| | | @keyup.enter.native="refreshTable()"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="检验状态" prop="insState"> |
| | | <el-select v-model="queryParams.insState" size="small" style="width: 100%" @change="refreshTable()"> |
| | | <el-option v-for="(a, i) in dict.type.inspection_task_state" :key="i" :label="a.label" |
| | | :value="a.value"></el-option> |
| | | :value="a.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | |
| | | </ul> |
| | | <div> |
| | | <el-checkbox v-model="alone" class="view-self-checkbox" |
| | | @change="changeCheckBox"><span>我的任务</span></el-checkbox> |
| | | @change="changeCheckBox"><span>我的任务</span></el-checkbox> |
| | | </div> |
| | | </div> |
| | | <div class="center-title"> |
| | |
| | | </div> |
| | | </div> |
| | | <lims-table :tableData="tableData" :column="column" :page="page" :tableLoading="tableLoading" |
| | | :rowClassName="rowClassName" :height="'calc(100vh - 300px)'" @pagination="pagination" |
| | | key="tableData0"> |
| | | :rowClassName="rowClassName" :height="'calc(100vh - 300px)'" @pagination="pagination" key="tableData0"> |
| | | <div slot="action" slot-scope="scope"> |
| | | <el-button size="small" type="text" @click="handleDataLook(scope.row)">数据查看</el-button> |
| | | <el-button type="text" size="small" |
| | | :disabled="(scope.row.userName == null || scope.row.insState == 3 || scope.row.insState == 5) && checkPermi(['update:product:onPlan'])" |
| | | @click="editInspection(scope.row)">修改检验值</el-button> |
| | | :disabled="(scope.row.userName == null || scope.row.insState == 3 || scope.row.insState == 5) && checkPermi(['update:product:onPlan'])" |
| | | @click="editInspection(scope.row)">修改检验值</el-button> |
| | | <el-button type="text" size="small" :disabled="( |
| | | scope.row.userName == null || |
| | | scope.row.insState == 3 || |
| | | scope.row.insState == 5 || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)) |
| | | )" |
| | | @click="handleInspection(scope.row)">检验</el-button> |
| | | scope.row.userName == null || |
| | | scope.row.insState == 3 || |
| | | scope.row.insState == 5 || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)) |
| | | )" @click="handleInspection(scope.row)">检验</el-button> |
| | | <el-button type="text" size="small" :disabled="( |
| | | scope.row.userName == null || |
| | | scope.row.insState == 5 || |
| | | scope.row.insState == 3 || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)) |
| | | )" |
| | | @click="handleConnect(scope.row)">交接</el-button> |
| | | scope.row.userName == null || |
| | | scope.row.insState == 5 || |
| | | scope.row.insState == 3 || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)) |
| | | )" @click="handleConnect(scope.row)">交接</el-button> |
| | | <el-button type="text" size="small" @click="viewInspectInfo(scope.row)">原始记录</el-button> |
| | | <el-popover placement="bottom" trigger="hover" style="margin-left: 6px"> |
| | | <template #reference> |
| | |
| | | </template> |
| | | <div> |
| | | <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" style="margin-left: 10px" type="text" size="small" @click="download(scope.row)">下载报告</el-button> |
| | | <el-upload ref='upload' |
| | | :action="javaApi + '/insReport/inReport'" |
| | | :before-upload="beforeUpload" |
| | | :data="{id: scope.row.insReportId}" |
| | | :headers="uploadHeader" :on-error="onError" |
| | | :on-success="handleSuccessUp" |
| | | :show-file-list="false" |
| | | style="display: inline;margin: 0 6px" |
| | | accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar'> |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" style="margin-left: 10px" |
| | | type="text" size="small" @click="download(scope.row)">下载报告</el-button> |
| | | <el-upload ref='upload' :action="javaApi + '/insReport/inReport'" :before-upload="beforeUpload" |
| | | :data="{ id: scope.row.insReportId }" :headers="uploadHeader" :on-error="onError" |
| | | :on-success="handleSuccessUp" :show-file-list="false" style="display: inline;margin: 0 6px" |
| | | accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar'> |
| | | <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" size="small" type="text">上传</el-button> |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" size="small" |
| | | type="text">上传</el-button> |
| | | </el-upload> |
| | | <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" @click="handleRestore(scope.row)">还原</el-button> |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" |
| | | @click="handleRestore(scope.row)">还原</el-button> |
| | | <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" @click="handleIssued(scope.row)">查看报告</el-button> |
| | | (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" |
| | | @click="handleIssued(scope.row)">查看报告</el-button> |
| | | </div> |
| | | </el-popover> |
| | | </div> |
| | |
| | | </el-button> |
| | | </div> |
| | | <el-table :data="bindTableData" style="width: 100%" height="70vh" v-loading="bindTableDataLoading" |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border> |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border> |
| | | <el-table-column prop="inspectionItemClass" label="检验项分类" width="150"> |
| | | </el-table-column> |
| | | <el-table-column prop="inspectionItem" label="检验项" width="150"> |
| | |
| | | </el-dialog> |
| | | <el-dialog :visible.sync="bindAddDialogVisible" title="选择绑定" width="600px"> |
| | | <el-table :data="bindAddTableData" style="width: 100%" height="60vh" |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border |
| | | :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border |
| | | @selection-change="handleBindAddSelectionChange"> |
| | | <el-table-column type="selection" width="55"> </el-table-column> |
| | | <el-table-column prop="inspectionItemClass" label="检验项分类" width="150"> |
| | |
| | | <!--查看工时弹框--> |
| | | <viewManHourDia ref="viewManHourDia"></viewManHourDia> |
| | | <!--不合格复测查看弹框--> |
| | | <un-pass-retest-result v-if="retestVisible" :retestInfo="retestInfo" :retestVisible="retestVisible" @closeRetestLook="closeRetestLook"></un-pass-retest-result> |
| | | <un-pass-retest-result v-if="retestVisible" :retestInfo="retestInfo" :retestVisible="retestVisible" |
| | | @closeRetestLook="closeRetestLook"></un-pass-retest-result> |
| | | <!--报告查看--> |
| | | <el-dialog title="报告查看" :visible.sync="issuedVisible" width="80vw" :modal-append-to-body="false" |
| | | :fullscreen="fullscreen"> |
| | | :fullscreen="fullscreen"> |
| | | <div class="full-screen"> |
| | | <i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen = true;" |
| | | v-if="!fullscreen"></i> |
| | | v-if="!fullscreen"></i> |
| | | <img src="@/assets/images/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen = false;"> |
| | | </div> |
| | | <div style="height: 80vh;" v-if="issuedVisible"> |
| | |
| | | </el-dialog> |
| | | <el-dialog title="查看附件" :visible.sync="lookDialogVisible" width="800px" top="5vh" fullscreen> |
| | | <filePreview v-if="lookDialogVisible" :fileUrl="javaApi + '/word/' + currentInfo.tempUrlPdf" :currentFile="{}" |
| | | style="max-height: 90vh;overflow-y: auto;" /> |
| | | style="max-height: 90vh;overflow-y: auto;" /> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | |
| | | selectSampleAndProductByOrderId, |
| | | } from "@/api/business/inspectionTask.js"; |
| | | import { mapGetters } from "vuex"; |
| | | import {getRetestResult} from "@/api/business/rawMaterialOrder"; |
| | | import {upReportUrl} from "@/api/business/insReport"; |
| | | import { getRetestResult } from "@/api/business/rawMaterialOrder"; |
| | | import { upReportUrl } from "@/api/business/insReport"; |
| | | import onlyoffice from "@/components/Onlyoffice/onlyoffice.vue"; |
| | | import filePreview from "@/components/Preview/filePreview.vue"; |
| | | export default { |
| | |
| | | } |
| | | }, |
| | | }, |
| | | { label: "检验人", prop: "checkUserName" }, |
| | | { |
| | | dataType: "action", |
| | | fixed: "right", |
| | |
| | | this.getRetestResultInfo(row); |
| | | }, |
| | | disabled: (row) => { |
| | | return row.insResult!=0 |
| | | return row.insResult != 0 |
| | | }, |
| | | }, |
| | | { |
| | |
| | | }, |
| | | // 下载报告 |
| | | download(row) { |
| | | let url = (row.urlS===null||row.urlS==='')?row.url:row.urlS |
| | | let url = (row.urlS === null || row.urlS === '') ? row.url : row.urlS |
| | | const link = document.createElement('a'); |
| | | link.href = this.javaApi + url; |
| | | link.target = '_blank'; |
| | |
| | | fileName = row.tempUrlPdf |
| | | fileType = "pdf" |
| | | } |
| | | fileName = fileName.replace('/word/','') |
| | | fileName = fileName.replace('/word/', '') |
| | | const userName = this.nickName |
| | | this.option = { |
| | | url: this.javaApi + "/word/" + fileName, |
| | |
| | | }); |
| | | }, |
| | | // 查看不合格复测结果 |
| | | getRetestResultInfo (row) { |
| | | getRetestResult({insProductId: row.insProductId}).then(res => { |
| | | getRetestResultInfo(row) { |
| | | getRetestResult({ insProductId: row.insProductId }).then(res => { |
| | | this.retestVisible = true |
| | | this.retestInfo = res.data |
| | | }) |
| | | }, |
| | | closeRetestLook () { |
| | | closeRetestLook() { |
| | | this.retestVisible = false |
| | | }, |
| | | // 绑定检验项绑定 |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | beforeUpload (file) { |
| | | beforeUpload(file) { |
| | | if (file.size > 1024 * 1024 * 10) { |
| | | this.$message.error('上传文件不超过10M'); |
| | | this.$refs.upload.clearFiles() |
| | |
| | | border-color: #3a7bfa; |
| | | color: #3a7bfa; |
| | | } |
| | | |
| | | .center-options { |
| | | display: flex; |
| | | align-items: center; |