'123'
This commit is contained in:
parent
78d08bcf9d
commit
47c7500dc0
|
@ -133,7 +133,7 @@ public class QuotController extends BaseController
|
||||||
* @return
|
* @return
|
||||||
* @throws Exception
|
* @throws Exception
|
||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasAnyPermi('quot:quot:list,jsqr:jsqr:list')")
|
@PreAuthorize("@ss.hasAnyPermi('quot:quot:list,jsqr:jsqr:list,priceVerification:priceVerification:list')")
|
||||||
@Log(title = "上传报价附件", businessType = BusinessType.INSERT)
|
@Log(title = "上传报价附件", businessType = BusinessType.INSERT)
|
||||||
@PostMapping("/quotFile")
|
@PostMapping("/quotFile")
|
||||||
public AjaxResult quotFile(@RequestParam("quotFile") MultipartFile file,@RequestParam("relation_id") String relation_id,@RequestParam("file_type") String file_type) throws Exception
|
public AjaxResult quotFile(@RequestParam("quotFile") MultipartFile file,@RequestParam("relation_id") String relation_id,@RequestParam("file_type") String file_type) throws Exception
|
||||||
|
@ -169,7 +169,7 @@ public class QuotController extends BaseController
|
||||||
/**
|
/**
|
||||||
* 查询附件列表
|
* 查询附件列表
|
||||||
*/
|
*/
|
||||||
@PreAuthorize("@ss.hasAnyPermi('quot:quot:list,jsqr:jsqr:list')")
|
@PreAuthorize("@ss.hasAnyPermi('quot:quot:list,jsqr:jsqr:list,priceVerification:priceVerification:list')")
|
||||||
@GetMapping("/quotFileList")
|
@GetMapping("/quotFileList")
|
||||||
public TableDataInfo quotFileList(QuotFile quotFile)
|
public TableDataInfo quotFileList(QuotFile quotFile)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package com.ruoyi.technicalConfirm.service.impl;
|
package com.ruoyi.technicalConfirm.service.impl;
|
||||||
|
|
||||||
|
import com.ruoyi.common.annotation.DataScope;
|
||||||
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.utils.DateUtils;
|
||||||
import com.ruoyi.technicalConfirm.domain.QuotJsqr;
|
import com.ruoyi.technicalConfirm.domain.QuotJsqr;
|
||||||
import com.ruoyi.technicalConfirm.mapper.QuotJsqrMapper;
|
import com.ruoyi.technicalConfirm.mapper.QuotJsqrMapper;
|
||||||
|
@ -41,6 +42,7 @@ public class QuotJsqrServiceImpl implements IQuotJsqrService
|
||||||
* @return 报价单-技术确认单
|
* @return 报价单-技术确认单
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
@DataScope(deptAlias = "d", userAlias = "u")
|
||||||
public List<QuotJsqr> selectQuotJsqrList(QuotJsqr quotJsqr)
|
public List<QuotJsqr> selectQuotJsqrList(QuotJsqr quotJsqr)
|
||||||
{
|
{
|
||||||
return quotJsqrMapper.selectQuotJsqrList(quotJsqr);
|
return quotJsqrMapper.selectQuotJsqrList(quotJsqr);
|
||||||
|
|
|
@ -44,6 +44,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<where>
|
<where>
|
||||||
<if test="quotHjCode != null and quotHjCode != ''"> and quot_hj_code like concat('%', #{quotHjCode}, '%')</if>
|
<if test="quotHjCode != null and quotHjCode != ''"> and quot_hj_code like concat('%', #{quotHjCode}, '%')</if>
|
||||||
<if test="params.beginQuotHjPricingDate != null and params.beginQuotHjPricingDate != '' and params.endQuotHjPricingDate != null and params.endQuotHjPricingDate != ''"> and quot_hj_pricing_date between #{params.beginQuotHjPricingDate} and #{params.endQuotHjPricingDate}</if>
|
<if test="params.beginQuotHjPricingDate != null and params.beginQuotHjPricingDate != '' and params.endQuotHjPricingDate != null and params.endQuotHjPricingDate != ''"> and quot_hj_pricing_date between #{params.beginQuotHjPricingDate} and #{params.endQuotHjPricingDate}</if>
|
||||||
|
<!-- 数据范围过滤 -->
|
||||||
|
<!--${params.dataScope}-->
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
|
@ -111,6 +111,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<if test="quotJsqrCode != null and quotJsqrCode != ''"> and quot_jsqr_code like concat('%', #{quotJsqrCode}, '%')</if>
|
<if test="quotJsqrCode != null and quotJsqrCode != ''"> and quot_jsqr_code like concat('%', #{quotJsqrCode}, '%')</if>
|
||||||
<if test="quotJsxzApprovalStatus != null and quotJsxzApprovalStatus != ''"> and q.quot_jsxz_approval_status = #{quotJsxzApprovalStatus}</if>
|
<if test="quotJsxzApprovalStatus != null and quotJsxzApprovalStatus != ''"> and q.quot_jsxz_approval_status = #{quotJsxzApprovalStatus}</if>
|
||||||
<if test="quotCode != null and quotCode != ''"> and q.quot_code like concat('%', #{quotCode}, '%')</if>
|
<if test="quotCode != null and quotCode != ''"> and q.quot_code like concat('%', #{quotCode}, '%')</if>
|
||||||
|
<!-- 数据范围过滤 -->
|
||||||
|
<!--${params.dataScope}-->
|
||||||
</where>
|
</where>
|
||||||
order by a.update_time desc
|
order by a.update_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
|
@ -1,112 +1,112 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
|
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
|
||||||
<el-row :gutter="8">
|
<el-row :gutter="8">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="核价单号" prop="quotHjCode">
|
<el-form-item label="核价单号" prop="quotHjCode">
|
||||||
<el-input v-model="form.quotHjCode" :disabled="true"/>
|
<el-input v-model="form.quotHjCode" :disabled="true"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="报价单号" prop="quotCode">
|
<el-form-item label="报价单号" prop="quotCode">
|
||||||
<el-input v-model="form.quotCode" :disabled="true"/>
|
<el-input v-model="form.quotCode" :disabled="true"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="8">
|
<el-row :gutter="8">
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="核价日期" prop="quotHjPricingDate">
|
<el-form-item label="核价日期" prop="quotHjPricingDate">
|
||||||
<div class="el-p" style="width:100%">
|
<div class="el-p" style="width:100%">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
style="width:100%"
|
style="width:100%"
|
||||||
v-model="form.quotHjPricingDate"
|
v-model="form.quotHjPricingDate"
|
||||||
type="datetime"
|
type="datetime"
|
||||||
placeholder="系统自动生成"
|
placeholder="系统自动生成"
|
||||||
:disabled="true">
|
:disabled="true">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="核价类型" prop="quotHjPricingType">
|
<el-form-item label="核价类型" prop="quotHjPricingType">
|
||||||
<el-select v-model="form.quotHjPricingType" style="width: 100%;" :disabled="true">
|
<el-select v-model="form.quotHjPricingType" style="width: 100%;" :disabled="true">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="dict in dict.type.quot_pricing_type"
|
v-for="dict in dict.type.quot_pricing_type"
|
||||||
:key="dict.value"
|
:key="dict.value"
|
||||||
:label="dict.label"
|
:label="dict.label"
|
||||||
:value="dict.value"
|
:value="dict.value"
|
||||||
></el-option>
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="业务员" prop="quotSalesmanName">
|
<el-form-item label="业务员" prop="quotSalesmanName">
|
||||||
<el-input v-model="form.quotSalesmanName" :disabled="true"/>
|
<el-input v-model="form.quotSalesmanName" :disabled="true"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="8">
|
<el-row :gutter="8">
|
||||||
<el-col :span="16">
|
<el-col :span="16">
|
||||||
<el-form-item label="客户" prop="quotCustomerName">
|
<el-form-item label="客户" prop="quotCustomerName">
|
||||||
<el-input v-model="form.quotCustomerName" :disabled="true"/>
|
<el-input v-model="form.quotCustomerName" :disabled="true"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="16">
|
<el-col :span="16">
|
||||||
<el-form-item label="项目名称" prop="quotProject">
|
<el-form-item label="项目名称" prop="quotProject">
|
||||||
<el-input type="textarea" autosize v-model="form.quotProject" :disabled="true"/>
|
<el-input type="textarea" autosize v-model="form.quotProject" :disabled="true"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="8">
|
<el-row :gutter="8">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item label="备注" prop="quotHjRemark">
|
<el-form-item label="备注" prop="quotHjRemark">
|
||||||
<el-input type="textarea" autosize v-model="form.quotHjRemark" placeholder="请输入备注" />
|
<el-input type="textarea" autosize v-model="form.quotHjRemark" placeholder="请输入备注" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="8">
|
<el-row :gutter="8">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item label="核价附件">
|
<el-form-item label="核价附件">
|
||||||
<el-upload class="upload-demo"
|
<el-upload class="upload-demo"
|
||||||
ref="upload"
|
ref="upload"
|
||||||
name="quotFile"
|
name="quotFile"
|
||||||
:action="uploadUrl"
|
:action="uploadUrl"
|
||||||
:headers="headers"
|
:headers="headers"
|
||||||
:data="{ relation_id: this.form.quotHjId,file_type: 'quotHjFile' }"
|
:data="{ relation_id: this.form.quotHjId,file_type: 'quotHjFile' }"
|
||||||
:on-success="handleAvatarSuccess"
|
:on-success="handleAvatarSuccess"
|
||||||
:show-file-list="false"
|
:show-file-list="false"
|
||||||
:limit="1"
|
:limit="1"
|
||||||
v-if="this.form.quotHjApprovalStatus == '1'">
|
v-if="this.form.quotHjApprovalStatus == '1'">
|
||||||
<el-button size="small" type="primary">上传文件</el-button>
|
<el-button size="small" type="primary">上传文件</el-button>
|
||||||
</el-upload>
|
</el-upload>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="8">
|
<el-row :gutter="8">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-table class="down" :data="quotHjFileList" border stripe style="width: 100%;" height="150px">
|
<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="fileName" label="文件名称" width="450px"></el-table-column>
|
||||||
<el-table-column prop="fileSize" label="文件大小" width="100px">
|
<el-table-column prop="fileSize" label="文件大小" width="100px">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="scope.row.fileSize / 1024 / 1024 < 1">{{(scope.row.fileSize / 1024).toFixed(2) + 'KB'}}</span>
|
<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>
|
<span v-else>{{(scope.row.fileSize / 1024 / 1024).toFixed(2) + 'MB'}}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="fileTime" label="上传时间"></el-table-column>
|
<el-table-column prop="fileTime" label="上传时间"></el-table-column>
|
||||||
<el-table-column width="150px" label="操作">
|
<el-table-column width="150px" label="操作">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button :key="Math.random()" size="small" type="text">
|
<el-button :key="Math.random()" size="small" type="text">
|
||||||
<a @click="downloadFile(scope.row.fileUrl)">下载</a>
|
<a @click="downloadFile(scope.row.fileUrl)">下载</a>
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button :key="Math.random()" size="small" type="text" v-if="form.quotHjApprovalStatus == '1'">
|
<el-button :key="Math.random()" size="small" type="text" v-if="form.quotHjApprovalStatus == '1'">
|
||||||
<a @click="deleteFile(scope.row.fileId)">删除</a>
|
<a @click="deleteFile(scope.row.fileId)">删除</a>
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div v-if="this._props.isSelfProp">
|
<div v-if="this._props.isSelfProp">
|
||||||
<div slot="footer" class="dialog-footer" v-if="this.form.quotHjApprovalStatus==1">
|
<div slot="footer" class="dialog-footer" v-if="this.form.quotHjApprovalStatus==1">
|
||||||
<span v-hasPermi="['priceVerification:priceVerification:commit']"><el-button type="primary" @click="commitHj">提交报价</el-button></span>
|
<span v-hasPermi="['priceVerification:priceVerification:commit']"><el-button type="primary" @click="commitHj">提交报价</el-button></span>
|
||||||
|
@ -122,8 +122,7 @@
|
||||||
}
|
}
|
||||||
<!-- 弹窗底部内容样式 -->
|
<!-- 弹窗底部内容样式 -->
|
||||||
.dialog-footer {
|
.dialog-footer {
|
||||||
padding: 20px;
|
padding: 10px 20px 20px;
|
||||||
padding-top: 10px;
|
|
||||||
text-align: right;
|
text-align: right;
|
||||||
-webkit-box-sizing: border-box;
|
-webkit-box-sizing: border-box;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="120px">
|
||||||
<el-form-item label="核价单号" prop="quotHjCode">
|
<el-form-item label="核价单号" prop="quotHjCode">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="queryParams.quotHjCode"
|
v-model="queryParams.quotHjCode"
|
||||||
|
@ -86,10 +86,6 @@
|
||||||
height: 550px;
|
height: 550px;
|
||||||
max-height: 580px; /* 设置最大高度,根据需要调整 */
|
max-height: 580px; /* 设置最大高度,根据需要调整 */
|
||||||
}
|
}
|
||||||
<!-- 日期空间宽度设置 -->
|
|
||||||
:deep(.el-p .el-input__wrapper){
|
|
||||||
width: 100% !important;
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import { listPriceVerification } from "@/api/priceVerification/priceVerification";
|
import { listPriceVerification } from "@/api/priceVerification/priceVerification";
|
||||||
|
@ -174,7 +170,7 @@ export default {
|
||||||
},
|
},
|
||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
handleUpdate(row) {
|
handleUpdate(row) {
|
||||||
const quotHjId = row.quotJsqrId || this.ids
|
const quotHjId = row.quotHjId || this.ids
|
||||||
this.open = true;
|
this.open = true;
|
||||||
this.title = "报价单-核价单";
|
this.title = "报价单-核价单";
|
||||||
this.quotHjIdProp = quotHjId;//传参设置
|
this.quotHjIdProp = quotHjId;//传参设置
|
||||||
|
|
|
@ -667,8 +667,7 @@
|
||||||
<style>
|
<style>
|
||||||
<!-- 弹窗底部内容样式 -->
|
<!-- 弹窗底部内容样式 -->
|
||||||
.dialog-footer {
|
.dialog-footer {
|
||||||
padding: 20px;
|
padding: 10px 20px 20px;
|
||||||
padding-top: 10px;
|
|
||||||
text-align: right;
|
text-align: right;
|
||||||
-webkit-box-sizing: border-box;
|
-webkit-box-sizing: border-box;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
|
|
Loading…
Reference in New Issue