|
|
|
@ -143,15 +143,515 @@
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
<!-- 添加或修改报价对话框 -->
|
|
|
|
|
<el-dialog :visible.sync="open" width="1050px" v-el-drag-dialog append-to-body>
|
|
|
|
|
<el-dialog :visible.sync="open" width="1050px" append-to-body>
|
|
|
|
|
<template slot="title">
|
|
|
|
|
报价单信息<span style="color:red;margin-left:25px">(注:此报价单数据,型号规格电压等如需下单或签订合同引用,请再次自行核对,责任自负)</span>
|
|
|
|
|
</template>
|
|
|
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
|
|
|
|
|
<!--<el-divider content-position="center">报价信息</el-divider>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="报价单号" prop="quotCode">
|
|
|
|
|
<el-input v-model="form.quotCode" placeholder="系统自动生成" :disabled="true"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="业务员" prop="quotSalesmanName">
|
|
|
|
|
<el-input v-model="form.quotSalesmanName" :disabled="true"/>
|
|
|
|
|
<el-input v-model="form.quotSalesmanBm" v-if="false"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="所属部门" prop="quotSalesmanDeptName">
|
|
|
|
|
<el-input v-model="form.quotSalesmanDeptName" :disabled="true"/>
|
|
|
|
|
<el-input v-model="form.quotSalesmanDeptId" v-if="false"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="16">
|
|
|
|
|
<el-form-item label="客户" prop="quotCustomerName">
|
|
|
|
|
<el-input v-model="form.quotCustomerBm" v-if="false"/>
|
|
|
|
|
<el-input v-model="form.quotCustomerName" placeholder="请输入客户" :disabled="true">
|
|
|
|
|
<el-button slot="append" icon="el-icon-search" @click="openCustomer" v-if="this.form.quotApprovalStatus == '0' || this.form.quotApprovalStatus == null"></el-button>
|
|
|
|
|
</el-input>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="联系电话" prop="quotPhone">
|
|
|
|
|
<el-input v-model="form.quotPhone" placeholder="请输入联系电话" :disabled="this.form.quotApprovalStatus != '0' && this.form.quotApprovalStatus != null"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="询价日期" prop="quotInquiryDate">
|
|
|
|
|
<div class="el-p" style="width:100%">
|
|
|
|
|
<el-date-picker
|
|
|
|
|
style="width:100%"
|
|
|
|
|
v-model="form.quotInquiryDate"
|
|
|
|
|
type="datetime"
|
|
|
|
|
placeholder="系统自动生成"
|
|
|
|
|
:disabled="true">
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</div>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="16">
|
|
|
|
|
<el-form-item label="地址" prop="quotAddress">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotAddress" placeholder="请输入地址" :disabled="this.form.quotApprovalStatus != '0' && this.form.quotApprovalStatus != null"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="报价日期" prop="quotQuotationDate">
|
|
|
|
|
<div class="el-p" style="width:100%">
|
|
|
|
|
<el-date-picker
|
|
|
|
|
style="width:100%"
|
|
|
|
|
v-model="form.quotQuotationDate"
|
|
|
|
|
type="datetime"
|
|
|
|
|
placeholder="报价组填写"
|
|
|
|
|
:disabled="true">
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</div>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="16">
|
|
|
|
|
<el-form-item label="项目名称" prop="quotProject">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotProject" placeholder="请输入项目名称" :disabled="this.form.quotApprovalStatus != '0' && this.form.quotApprovalStatus != null"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-form-item label="报价要求" prop="quotQuotationRequire">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotQuotationRequire" placeholder="请输入报价要求" :disabled="this.form.quotApprovalStatus != '0' && this.form.quotApprovalStatus != null"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8" v-if="this.form.quotApprovalStatus != '0' && this.form.quotApprovalStatus != null">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-form-item label="反馈说明" prop="quotFeedbackExplanation">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotFeedbackExplanation" placeholder="报价组填写"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8" v-if="this.form.quotApprovalStatus != '0' && this.form.quotApprovalStatus != null">
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="总数量" prop="quotQuantity">
|
|
|
|
|
<el-input v-model="form.quotQuantity"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="总价" prop="quotTotalPrice">
|
|
|
|
|
<el-input v-model="form.quotTotalPrice"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
|
|
|
|
|
<el-divider content-position="center">产品信息</el-divider>
|
|
|
|
|
<el-row :gutter="10" class="mb8">
|
|
|
|
|
<el-col :span="1.5">
|
|
|
|
|
<el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAddQuotMaterial" v-if="this.form.quotApprovalStatus == '0' || this.form.quotApprovalStatus == null">添加</el-button>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="1.5">
|
|
|
|
|
<el-button type="danger" icon="el-icon-delete" size="mini" @click="handleDeleteQuotMaterial" v-if="this.form.quotApprovalStatus == '0' || this.form.quotApprovalStatus == null">删除</el-button>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="1.5">
|
|
|
|
|
<el-button type="info" plain icon="el-icon-upload2" size="mini" @click="handleImport" v-if="this.form.quotApprovalStatus == '0' || this.form.quotApprovalStatus == null">导入</el-button>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-table :data="quotMaterialList" show-summary :summary-method="getSummaries" :row-class-name="rowQuotMaterialIndex" @selection-change="handleQuotMaterialSelectionChange" ref="quotMaterial">
|
|
|
|
|
<el-table-column type="selection" width="80" align="center" />
|
|
|
|
|
<el-table-column label="序号" align="center" prop="index" width="50"/>
|
|
|
|
|
<el-table-column label="型号" prop="matXingh">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-input v-model="scope.row.matXingh" placeholder="请输入型号" />
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="规格" prop="matGuig">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-input v-model="scope.row.matGuig" placeholder="请输入规格" />
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="电压" prop="matDiany">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-input v-model="scope.row.matDiany" placeholder="请输入电压" />
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="单位" prop="matDanw">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-input v-model="scope.row.matDanw" placeholder="请输入单位" />
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column label="数量" prop="matSl">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-input v-model="scope.row.matSl" placeholder="请输入数量" />
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
</el-table>
|
|
|
|
|
|
|
|
|
|
<el-divider content-position="center">询价附件</el-divider>
|
|
|
|
|
<div v-hasPermi="['quot:quot:quotXjFile']">
|
|
|
|
|
<el-upload class="upload-demo"
|
|
|
|
|
ref="upload"
|
|
|
|
|
name="quotFile"
|
|
|
|
|
:action="uploadUrl"
|
|
|
|
|
:headers="headers"
|
|
|
|
|
:data="{ relation_id: this.form.quotId,file_type: 'quotXjFile' }"
|
|
|
|
|
:on-success="handleAvatarSuccess"
|
|
|
|
|
:show-file-list="false"
|
|
|
|
|
:limit="1"
|
|
|
|
|
v-if="this.form.quotApprovalStatus == '0'">
|
|
|
|
|
<el-button size="small" type="primary">上传文件</el-button>
|
|
|
|
|
</el-upload>
|
|
|
|
|
</div>
|
|
|
|
|
<el-table class="down" :data="quotXjFileList" border stripe style="width: 100%;margin-top: 20px;" height="300px">
|
|
|
|
|
<el-table-column prop="fileName" label="文件名称" ></el-table-column>
|
|
|
|
|
<el-table-column prop="fileSize" label="文件大小" width="150px">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span v-if="scope.row.fileSize / 1024 / 1024 < 1">{{(scope.row.fileSize / 1024).toFixed(2) + 'KB'}}</span>
|
|
|
|
|
<span v-else>{{(scope.row.fileSize / 1024 / 1024).toFixed(2) + 'MB'}}</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column prop="fileTime" label="上传时间" width="200px"></el-table-column>
|
|
|
|
|
<el-table-column width="150px" label="操作">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-button :key="Math.random()" size="small" type="text">
|
|
|
|
|
<a @click="downloadFile(scope.row.fileUrl)">下载</a>
|
|
|
|
|
</el-button>
|
|
|
|
|
<el-button :key="Math.random()" size="small" type="text" v-if="form.quotApprovalStatus == '0'">
|
|
|
|
|
<a @click="deleteFile(scope.row.fileId)">删除</a>
|
|
|
|
|
</el-button>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
</el-table>
|
|
|
|
|
|
|
|
|
|
<el-divider content-position="center">技术协助</el-divider>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="标准" prop="quotJsxzStandard">
|
|
|
|
|
<el-select v-model="form.quotJsxzStandard" :disabled="this.form.quotJsxzApprovalStatus != '0'">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.quot_jsxz_standard"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="技术协助状态" prop="quotJsxzApprovalStatus">
|
|
|
|
|
<el-select v-model="form.quotJsxzApprovalStatus" :disabled="true">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.quot_jsxz_approval_status"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="是否盖技术章" prop="quotJsxzChapter">
|
|
|
|
|
<el-select v-model="form.quotJsxzChapter" :disabled="this.form.quotJsxzApprovalStatus != '0'">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.quot_jsxz_chapter"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="技术确认单号" prop="quotJsxzConfirmCode">
|
|
|
|
|
<el-link :underline="false" type="primary" @click="showJsqrDialog">{{form.quotJsxzConfirmCode}}</el-link>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="分组" prop="quotJsxzGroup">
|
|
|
|
|
<el-select v-model="form.quotJsxzGroup" multiple style="width: 100%" :disabled="this.form.quotJsxzApprovalStatus != '0'">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.quot_jsxz_group"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value">
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-form-item label="技术要求" prop="quotJsxzTechnicalRequirement">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotJsxzTechnicalRequirement" placeholder="请输入技术要求" :disabled="this.form.quotJsxzApprovalStatus != '0'"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-divider content-position="center">技术规范要求(询价附件)</el-divider>
|
|
|
|
|
<div v-hasPermi="['quot:quot:quotJsgfFile']">
|
|
|
|
|
<el-upload class="upload-demo"
|
|
|
|
|
ref="upload"
|
|
|
|
|
name="quotFile"
|
|
|
|
|
:action="uploadUrl"
|
|
|
|
|
:headers="headers"
|
|
|
|
|
:data="{ relation_id: this.form.quotId,file_type: 'quotJsgfFile' }"
|
|
|
|
|
:on-success="handleAvatarSuccess"
|
|
|
|
|
:show-file-list="false"
|
|
|
|
|
:limit="1"
|
|
|
|
|
v-if="this.form.quotJsxzApprovalStatus == '0'">
|
|
|
|
|
<el-button size="small" type="primary">上传文件</el-button>
|
|
|
|
|
</el-upload>
|
|
|
|
|
</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-table class="down" :data="quotJsgfFileList" border stripe style="width: 100%;" height="150px">
|
|
|
|
|
<el-table-column prop="fileName" label="文件名称" width="450px"></el-table-column>
|
|
|
|
|
<el-table-column prop="fileSize" label="文件大小" width="100px">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span v-if="scope.row.fileSize / 1024 / 1024 < 1">{{(scope.row.fileSize / 1024).toFixed(2) + 'KB'}}</span>
|
|
|
|
|
<span v-else>{{(scope.row.fileSize / 1024 / 1024).toFixed(2) + 'MB'}}</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column prop="fileTime" label="上传时间"></el-table-column>
|
|
|
|
|
<el-table-column width="150px" label="操作">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-button :key="Math.random()" size="small" type="text">
|
|
|
|
|
<a @click="downloadFile(scope.row.fileUrl)">下载</a>
|
|
|
|
|
</el-button>
|
|
|
|
|
<el-button :key="Math.random()" size="small" type="text" v-if="form.quotJsxzApprovalStatus == '0'">
|
|
|
|
|
<a @click="deleteFile(scope.row.fileId)">删除</a>
|
|
|
|
|
</el-button>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
</el-table>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<div v-if="showTl">
|
|
|
|
|
<el-divider content-position="center">特缆协助</el-divider>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="特缆协助状态" prop="quotJsqrTlApprovalStatus">
|
|
|
|
|
<el-select v-model="form.quotJsqrTlApprovalStatus" :disabled="true">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.quot_jsxz_approval_status"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="16">
|
|
|
|
|
<el-form-item label="特缆反馈附件">
|
|
|
|
|
<el-button size="mini" type="primary" @click="handleAddFile('quotJsqrTl')">上传文件 ({{this.quotJsqrTlFileNum}})</el-button>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-form-item label="特缆协助说明" prop="quotJsqrTlRemark">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotJsqrTlRemark" placeholder="技术部填写" :disabled="true"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="showDy">
|
|
|
|
|
<el-divider content-position="center">低压协助</el-divider>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="低压协助状态" prop="quotJsqrDyApprovalStatus">
|
|
|
|
|
<el-select v-model="form.quotJsqrDyApprovalStatus" :disabled="true">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.quot_jsxz_approval_status"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="16">
|
|
|
|
|
<el-form-item label="低压反馈附件">
|
|
|
|
|
<el-button size="mini" type="primary" @click="handleAddFile('quotJsqrDy')">上传文件 ({{this.quotJsqrDyFileNum}})</el-button>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-form-item label="低压协助说明" prop="quotJsqrDyRemark">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotJsqrDyRemark" placeholder="技术部填写" :disabled="true"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="showZy">
|
|
|
|
|
<el-divider content-position="center">中压协助</el-divider>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="中压协助状态" prop="quotJsqrZyApprovalStatus">
|
|
|
|
|
<el-select v-model="form.quotJsqrZyApprovalStatus" :disabled="true">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.quot_jsxz_approval_status"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="16">
|
|
|
|
|
<el-form-item label="中压反馈附件">
|
|
|
|
|
<el-button size="mini" type="primary" @click="handleAddFile('quotJsqrZy')">上传文件 ({{this.quotJsqrZyFileNum}})</el-button>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-form-item label="中压协助说明" prop="quotJsqrZyRemark">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotJsqrZyRemark" placeholder="技术部填写" :disabled="true"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="showQt">
|
|
|
|
|
<el-divider content-position="center">其他协助</el-divider>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="其他协助状态" prop="quotJsqrQtApprovalStatus">
|
|
|
|
|
<el-select v-model="form.quotJsqrQtApprovalStatus" :disabled="true">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.quot_jsxz_approval_status"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="16">
|
|
|
|
|
<el-form-item label="其他反馈附件">
|
|
|
|
|
<el-button size="mini" type="primary" @click="handleAddFile('quotJsqrQt')">上传文件 ({{this.quotJsqrQtFileNum}})</el-button>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-form-item label="其他协助说明" prop="quotJsqrQtRemark">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotJsqrQtRemark" placeholder="技术部填写" :disabled="true"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<el-divider content-position="center">核价协助</el-divider>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="10">
|
|
|
|
|
<el-form-item label="核价单号" prop="quotHjCode">
|
|
|
|
|
<el-link :underline="false" type="primary" @click="showHjDialog">{{form.quotHjCode}}</el-link>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-form-item label="核价日期" prop="quotHjPricingDate">
|
|
|
|
|
<div class="el-p" style="width:100%">
|
|
|
|
|
<el-date-picker
|
|
|
|
|
style="width:100%"
|
|
|
|
|
v-model="form.quotHjPricingDate"
|
|
|
|
|
type="datetime"
|
|
|
|
|
:disabled="true">
|
|
|
|
|
</el-date-picker>
|
|
|
|
|
</div>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<el-form-item label="核价确认状态" prop="quotHjApprovalStatus">
|
|
|
|
|
<el-select v-model="form.quotHjApprovalStatus" :disabled="true">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="dict in dict.type.quot_hj_approval_status"
|
|
|
|
|
:key="dict.value"
|
|
|
|
|
:label="dict.label"
|
|
|
|
|
:value="dict.value"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-form-item label="备注" prop="quotHjRemark">
|
|
|
|
|
<el-input type="textarea" autosize v-model="form.quotHjRemark" :disabled="true"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-divider content-position="center">核价附件</el-divider>
|
|
|
|
|
<el-table class="down" :data="quotHjFileList" border stripe style="width: 100%;" height="150px">
|
|
|
|
|
<el-table-column prop="fileName" label="文件名称" width="450px"></el-table-column>
|
|
|
|
|
<el-table-column prop="fileSize" label="文件大小" width="100px">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span v-if="scope.row.fileSize / 1024 / 1024 < 1">{{(scope.row.fileSize / 1024).toFixed(2) + 'KB'}}</span>
|
|
|
|
|
<span v-else>{{(scope.row.fileSize / 1024 / 1024).toFixed(2) + 'MB'}}</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column prop="fileTime" label="上传时间"></el-table-column>
|
|
|
|
|
<el-table-column width="150px" label="操作">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-button :key="Math.random()" size="small" type="text">
|
|
|
|
|
<a @click="downloadFile(scope.row.fileUrl)">下载</a>
|
|
|
|
|
</el-button>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
</el-table>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
|
|
|
|
|
<el-divider content-position="center">反馈附件</el-divider>
|
|
|
|
|
<div v-hasPermi="['quot:quot:quotFkFile']">
|
|
|
|
|
<el-upload class="upload-demo"
|
|
|
|
|
ref="upload"
|
|
|
|
|
name="quotFile"
|
|
|
|
|
:action="uploadUrl"
|
|
|
|
|
:headers="headers"
|
|
|
|
|
:data="{ relation_id: this.form.quotId,file_type: 'quotFkFile' }"
|
|
|
|
|
:on-success="handleAvatarSuccess"
|
|
|
|
|
:show-file-list="false"
|
|
|
|
|
:limit="1"
|
|
|
|
|
v-if="this.form.quotApprovalStatus == '1'">
|
|
|
|
|
<el-button size="small" type="primary">上传文件</el-button>
|
|
|
|
|
</el-upload>
|
|
|
|
|
</div>
|
|
|
|
|
<el-table class="down" :data="quotFkFileList" border stripe style="width: 100%;margin-top: 20px;" height="300px">
|
|
|
|
|
<el-table-column prop="fileName" label="文件名称"></el-table-column>
|
|
|
|
|
<el-table-column prop="fileSize" label="文件大小" width="150px">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span v-if="scope.row.fileSize / 1024 / 1024 < 1">{{(scope.row.fileSize / 1024).toFixed(2) + 'KB'}}</span>
|
|
|
|
|
<span v-else>{{(scope.row.fileSize / 1024 / 1024).toFixed(2) + 'MB'}}</span>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column prop="fileTime" label="上传时间" width="200px"></el-table-column>
|
|
|
|
|
<el-table-column width="150px" label="操作">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<el-button size="small" type="text">
|
|
|
|
|
<a @click="downloadFile(scope.row.fileUrl)">下载</a>
|
|
|
|
|
</el-button>
|
|
|
|
|
<el-button size="small" type="text" @click="deleteFile(scope.row.fileId)" v-if="form.quotApprovalStatus == '1'">删除</el-button>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
</el-table>-->
|
|
|
|
|
<el-tabs v-model="activeName" tab-position="left" style="margin-left: 15px; margin-right: 15px;height: 480px;">
|
|
|
|
|
<el-tab-pane label="报价信息" name="quotInfo">
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-col :span="10">
|
|
|
|
|
<el-form-item label="报价单号" prop="quotCode">
|
|
|
|
|
<el-input v-model="form.quotCode" placeholder="系统自动生成" :disabled="true"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
@ -162,7 +662,7 @@
|
|
|
|
|
<el-input v-model="form.quotSalesmanBm" v-if="false"/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="8">
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
<el-form-item label="所属部门" prop="quotSalesmanDeptName">
|
|
|
|
|
<el-input v-model="form.quotSalesmanDeptName" :disabled="true"/>
|
|
|
|
|
<el-input v-model="form.quotSalesmanDeptId" v-if="false"/>
|
|
|
|
@ -411,11 +911,7 @@
|
|
|
|
|
<el-button size="small" type="primary">上传文件</el-button>
|
|
|
|
|
</el-upload>
|
|
|
|
|
</div>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter="8">
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-table class="down" :data="quotJsgfFileList" border stripe style="width: 100%;" height="150px">
|
|
|
|
|
<el-table class="down" :data="quotJsgfFileList" border stripe style="width: 100%;margin-top: 10px;" height="150px">
|
|
|
|
|
<el-table-column prop="fileName" label="文件名称" width="450px"></el-table-column>
|
|
|
|
|
<el-table-column prop="fileSize" label="文件大小" width="100px">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
@ -435,6 +931,7 @@
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
</el-table>
|
|
|
|
|
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<div v-if="showTl">
|
|
|
|
@ -631,7 +1128,7 @@
|
|
|
|
|
<el-button size="small" type="primary">上传文件</el-button>
|
|
|
|
|
</el-upload>
|
|
|
|
|
</div>
|
|
|
|
|
<el-table class="down" :data="quotFkFileList" border stripe style="width: 100%;margin-top: 20px;" height="300px">
|
|
|
|
|
<el-table class="down" :data="quotFkFileList" border stripe style="width: 100%;margin-top: 10px;" height="300px">
|
|
|
|
|
<el-table-column prop="fileName" label="文件名称"></el-table-column>
|
|
|
|
|
<el-table-column prop="fileSize" label="文件大小" width="150px">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
@ -736,21 +1233,21 @@
|
|
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
<style>
|
|
|
|
|
/* 弹窗设置 */
|
|
|
|
|
/** 弹窗设置 */
|
|
|
|
|
.el-dialog__body {
|
|
|
|
|
padding: 10px 10px;
|
|
|
|
|
color: #606266;
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
word-break: break-all;
|
|
|
|
|
overflow-y: auto; /* 自动显示垂直滚动条 */
|
|
|
|
|
overflow-y: auto; /** 自动显示垂直滚动条 */
|
|
|
|
|
height: 500px;
|
|
|
|
|
max-height: 580px; /* 设置最大高度,根据需要调整 */
|
|
|
|
|
}
|
|
|
|
|
/*Tab页设置*/
|
|
|
|
|
.el-tabs__content {
|
|
|
|
|
height: 100%;
|
|
|
|
|
overflow-y: auto;
|
|
|
|
|
max-height: 580px; /** 设置最大高度,根据需要调整 */
|
|
|
|
|
}
|
|
|
|
|
/*Tab页设置 */
|
|
|
|
|
.el-tabs__content {
|
|
|
|
|
height: 100%;
|
|
|
|
|
overflow-y: auto;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* 日期控件宽度设置 */
|
|
|
|
|
:deep(.el-p .el-input__wrapper){
|
|
|
|
@ -781,7 +1278,6 @@ import hjDialog from '@/views/priceVerification/priceVerification/hjInfo.vue';
|
|
|
|
|
/** 弹窗放大、拖拽 */
|
|
|
|
|
import elDragDialog from "@/directive/dialog/dragDialog";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
name: "Quot",
|
|
|
|
|
directives: {
|
|
|
|
|