bug修复
This commit is contained in:
parent
615915a72c
commit
54c4bad8cb
|
|
@ -36,6 +36,33 @@ export function getLeaseList(query) {
|
|||
})
|
||||
}
|
||||
|
||||
// 查询费用推送审核维修列表
|
||||
export function getRepairList(query) {
|
||||
return request({
|
||||
url: '/material/iws_cost_push/getRepairCostsByAgreementId',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询费用推送审核丢失列表
|
||||
export function getLoseList(query) {
|
||||
return request({
|
||||
url: '/material/iws_cost_push/getLoseCostsByAgreementId',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询费用推送审核报废列表
|
||||
export function getScrapList(query) {
|
||||
return request({
|
||||
url: '/material/iws_cost_push/getScrapCostsByAgreementId',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
// 查询费用结算审核列表
|
||||
export function getSltExamInfo(query) {
|
||||
|
|
|
|||
|
|
@ -90,10 +90,16 @@
|
|||
ref="multipleTable"
|
||||
row-key="id"
|
||||
@selection-change="handleSelectionChange"
|
||||
:span-method="objectSpanMethod"
|
||||
border
|
||||
>
|
||||
<el-table-column type="selection" width="55" align="center" :selectable="selectable"/>
|
||||
<el-table-column label="序号" align="center" width="80" type="index"/>
|
||||
<el-table-column label="序号" align="center" width="80" type="index">
|
||||
<template scope="scope">
|
||||
<span style="background-color: #f8f8f9;text-align: center;" v-if="scope.$index==pushReviewList.length-1">合计费用:</span>
|
||||
<span v-else>{{ scope.$index+1 }} </span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="协议号" align="center" prop="agreementCode" show-overflow-tooltip />
|
||||
<el-table-column label="单位名称" align="center" prop="unitName" show-overflow-tooltip />
|
||||
<el-table-column label="工程名称" align="center" prop="projectName" show-overflow-tooltip />
|
||||
|
|
@ -106,28 +112,40 @@
|
|||
</el-table-column>
|
||||
<el-table-column label="租赁费用" align="center" prop="leaseMoney" show-overflow-tooltip >
|
||||
<template slot-scope="scope" >
|
||||
<span class="clickText" v-if="scope.row.leaseMoney" @click="openLease(scope.row)">
|
||||
<span class="clickText" v-if="scope.row.leaseMoney!=null && scope.$index!=pushReviewList.length-1" @click="openLease(scope.row)">
|
||||
{{scope.row.leaseMoney}}
|
||||
</span>
|
||||
<span v-if="scope.row.leaseMoney!=null && scope.$index==pushReviewList.length-1" >
|
||||
{{scope.row.leaseMoney}}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="维修费用" align="center" prop="repairMoney" show-overflow-tooltip >
|
||||
<template slot-scope="scope" >
|
||||
<span class="clickText" v-if="scope.row.repairMoney!=null" @click="openRepair(scope.row)">
|
||||
<span class="clickText" v-if="scope.row.repairMoney!=null && scope.$index!=pushReviewList.length-1" @click="openRepair(scope.row)">
|
||||
{{scope.row.repairMoney}}
|
||||
</span>
|
||||
<span v-if="scope.row.repairMoney!=null && scope.$index==pushReviewList.length-1" >
|
||||
{{scope.row.repairMoney}}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="报废费用" align="center" prop="scrapMoney" show-overflow-tooltip >
|
||||
<template slot-scope="scope" >
|
||||
<span class="clickText" v-if="scope.row.scrapMoney!=null" @click="openScrap(scope.row)">
|
||||
<span class="clickText" v-if="scope.row.scrapMoney!=null && scope.$index!=pushReviewList.length-1" @click="openScrap(scope.row)">
|
||||
{{scope.row.scrapMoney}}
|
||||
</span>
|
||||
<span v-if="scope.row.scrapMoney!=null && scope.$index==pushReviewList.length-1" >
|
||||
{{scope.row.scrapMoney}}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="丢失费用" align="center" prop="lostMoney" show-overflow-tooltip >
|
||||
<template slot-scope="scope" >
|
||||
<span class="clickText" v-if="scope.row.lostMoney!=null" @click="openLose(scope.row)">
|
||||
<span class="clickText" v-if="scope.row.lostMoney!=null && scope.$index!=pushReviewList.length-1" @click="openLose(scope.row)">
|
||||
{{scope.row.lostMoney}}
|
||||
</span>
|
||||
<span v-if="scope.row.lostMoney!=null && scope.$index==pushReviewList.length-1" >
|
||||
{{scope.row.lostMoney}}
|
||||
</span>
|
||||
</template>
|
||||
|
|
@ -145,14 +163,14 @@
|
|||
<span v-if="scope.row.isSettlement==0" style="color: #f56c6c">未结算</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="是否审核" align="center" prop="isReview" show-overflow-tooltip >
|
||||
<el-table-column label="是否审核" align="center" prop="checkStatus" show-overflow-tooltip >
|
||||
<template slot-scope="scope" >
|
||||
<span v-if="scope.row.isReview==1" style="color: #67c23a">已审核</span>
|
||||
<span v-if="scope.row.isReview==0" style="color: #f56c6c">未审核</span>
|
||||
<span v-if="scope.row.checkStatus==1" style="color: #67c23a">已审核</span>
|
||||
<span v-if="scope.row.checkStatus==0" style="color: #f56c6c">未审核</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="tabelFirstBottom">
|
||||
<!-- <div class="tabelFirstBottom">
|
||||
<div class="columnFirstNum">合计费用</div>
|
||||
<div style="display: flex;width:58%">
|
||||
<div class="columnFirst">{{ leaseAll.toFixed(2) }}</div>
|
||||
|
|
@ -162,7 +180,7 @@
|
|||
<div class="columnFirst">{{ moneyAll.toFixed(2) }}</div>
|
||||
<div class="columnFirstRight"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
|
||||
<!-- 租赁费用弹窗-->
|
||||
<el-dialog :title="title" :visible.sync="showLease" width="1200px" append-to-body>
|
||||
|
|
@ -408,7 +426,7 @@ import {
|
|||
getUnitList,
|
||||
getAgreementInfoById,
|
||||
} from '@/api/back/index.js'
|
||||
import {getPushReviewList,getLeaseList } from "@/api/costPush/costPush";
|
||||
import {getPushReviewList,getLeaseList,getRepairList,getLoseList,getScrapList } from "@/api/costPush/costPush";
|
||||
import Treeselect from "@riophae/vue-treeselect";
|
||||
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
||||
export default {
|
||||
|
|
@ -608,7 +626,7 @@ export default {
|
|||
},
|
||||
|
||||
|
||||
/** 查询岗位列表 */
|
||||
/** 查询列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
console.log(this.queryParams.month)
|
||||
|
|
@ -624,6 +642,14 @@ export default {
|
|||
})
|
||||
this.moneyAll = this.leaseAll + this.repairAll + this.scrapAll + this.loseAll;
|
||||
}
|
||||
let obj = {
|
||||
leaseMoney: this.leaseAll,
|
||||
repairMoney: this.repairAll,
|
||||
scrapMoney: this.scrapAll,
|
||||
loseMoney: this.loseAll,
|
||||
money: this.moneyAll,
|
||||
}
|
||||
this.pushReviewList.push(obj)
|
||||
this.loading = false;
|
||||
});
|
||||
|
||||
|
|
@ -716,16 +742,16 @@ export default {
|
|||
this.dialogRepair.typeName = ""
|
||||
this.dialogRepair.modelName = ""
|
||||
this.dialogRepair.id = row.id;
|
||||
// this.getRepairList()
|
||||
this.getRepairList()
|
||||
},
|
||||
//查询维修费用
|
||||
getRepairList() {
|
||||
this.loading = true;
|
||||
// getRepairList(this.dialogRepaire).then((response) => {
|
||||
// this.dialogRepairList = response.rows;
|
||||
// this.dialogRepairTotal = response.total;
|
||||
// this.loading = false;
|
||||
// });
|
||||
getRepairList(this.dialogRepaire).then((response) => {
|
||||
this.dialogRepairList = response.rows;
|
||||
this.dialogRepairTotal = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
handleQueryRepair() {
|
||||
this.getRepairList()
|
||||
|
|
@ -748,16 +774,16 @@ export default {
|
|||
this.dialogScrap.typeName = ""
|
||||
this.dialogScrap.modelName = ""
|
||||
this.dialogScrap.id = row.id;
|
||||
// this.getScrapList()
|
||||
this.getScrapList()
|
||||
},
|
||||
//查询报废费用
|
||||
getScrapList() {
|
||||
this.loading = true;
|
||||
// getScrapList(this.dialogScrap).then((response) => {
|
||||
// this.dialogScrapList = response.rows;
|
||||
// this.dialogScrapTotal = response.total;
|
||||
// this.loading = false;
|
||||
// });
|
||||
getScrapList(this.dialogScrap).then((response) => {
|
||||
this.dialogScrapList = response.rows;
|
||||
this.dialogScrapTotal = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
handleQueryScrap() {
|
||||
this.getScrapList()
|
||||
|
|
@ -780,16 +806,16 @@ export default {
|
|||
this.dialogLose.typeName = ""
|
||||
this.dialogLose.modelName = ""
|
||||
this.dialogLose.id = row.id;
|
||||
// this.getLoseList()
|
||||
this.getLoseList()
|
||||
},
|
||||
//查询丢失费用
|
||||
getLoseList() {
|
||||
this.loading = true;
|
||||
// getLoseList(this.dialogLose).then((response) => {
|
||||
// this.dialogLoseList = response.rows;
|
||||
// this.dialogLoseTotal = response.total;
|
||||
// this.loading = false;
|
||||
// });
|
||||
getLoseList(this.dialogLose).then((response) => {
|
||||
this.dialogLoseList = response.rows;
|
||||
this.dialogLoseTotal = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
handleQueryLose() {
|
||||
this.getLoseList()
|
||||
|
|
@ -805,13 +831,13 @@ export default {
|
|||
},
|
||||
/** 外层导出 */
|
||||
handleExport() {
|
||||
// this.download(
|
||||
// 'material/complex_query/exportOutRecord',
|
||||
// {
|
||||
// ...this.queryParams,
|
||||
// },
|
||||
// `费用推送审核记录_${new Date().getTime()}.xlsx`,
|
||||
// )
|
||||
this.download(
|
||||
'material/iws_cost_push/exportCostPushExamList',
|
||||
{
|
||||
...this.queryParams,
|
||||
},
|
||||
`费用推送审核记录_${new Date().getTime()}.xlsx`,
|
||||
)
|
||||
},
|
||||
|
||||
/** 提交 */
|
||||
|
|
@ -840,7 +866,27 @@ export default {
|
|||
// })
|
||||
})
|
||||
.catch(() => {})
|
||||
}
|
||||
},
|
||||
|
||||
// 合并单元格 rowIndex=行数 columnIndex=列数
|
||||
// 这里是合并table的除表头外的第一行的第二列 + 除表头外的第二行的第二列
|
||||
// 注意列数和行数从 0 开始
|
||||
objectSpanMethod ({ row, column, rowIndex, columnIndex }) {
|
||||
if (rowIndex === this.pushReviewList.length-1 && columnIndex == 1) {
|
||||
let rowspan = 2
|
||||
let colspan = 6
|
||||
return { rowspan, colspan }
|
||||
}
|
||||
// 解决偏移的重要代码
|
||||
// 重点在 else if 判断必须加因为合并单元格数据会出现偏移、
|
||||
// 否则如果是 第二行 的 第二列 那么隐藏原有第二行 的 第二列的数据使他隐藏
|
||||
else if (rowIndex === this.pushReviewList.length-1 && columnIndex < 6) {
|
||||
return {
|
||||
rowspan: 0,
|
||||
colspan: 0
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -154,6 +154,43 @@
|
|||
rows="2"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="委托书" prop="fileFbs" v-if="isFileFbs">
|
||||
<el-upload
|
||||
action="#"
|
||||
:file-list="businessLicenseListTemp"
|
||||
:show-file-list="true"
|
||||
:auto-upload="false"
|
||||
:key="uploadKey"
|
||||
list-type="picture-card"
|
||||
accept=".png, .jpg, .jpeg, .pdf"
|
||||
:on-change="handleChangeBusinessList"
|
||||
:class="{ disabledFbs: uploadDisabled }"
|
||||
:on-preview="picturePreviewFbs"
|
||||
:on-remove="handleRemoveElectricianImgList"
|
||||
>
|
||||
|
||||
<!-- 文件格式下载,图片格式预览 -->
|
||||
<div slot="file" slot-scope="{file}" >
|
||||
<img v-if="isImage(file)" class="el-upload-list__item-thumbnail" :src="file.url" alt="">
|
||||
<div v-else class="picture-card-container">
|
||||
<img class="picture-card" :src="urlTemp" alt="">
|
||||
<p class="file-name">{{ file.name }}</p>
|
||||
</div>
|
||||
<span class="el-upload-list__item-actions">
|
||||
<span v-if="updataIf(file)" class="el-upload-list__item-delete" @click="handleDownload(file)">
|
||||
<i class="el-icon-download"/>
|
||||
</span>
|
||||
<span v-else class="el-upload-list__item-preview" @click="picturePreviewFbs(file)">
|
||||
<i class="el-icon-zoom-in"/>
|
||||
</span>
|
||||
<span class="el-upload-list__item-delete" @click="handleRemoveElectricianImgList(file)">
|
||||
<i class="el-icon-delete"/>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
<i class="el-icon-plus avatar-uploader-icon"></i>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
|
|
@ -232,6 +269,11 @@
|
|||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<!-- 图片查看弹窗 -->
|
||||
<el-dialog :visible.sync="dialogVisible" width="600px" height="600px">
|
||||
<img width="100%" height="500px" :src="dialogImageUrl"/>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
|
@ -253,7 +295,7 @@ import {
|
|||
uploadPurchaseFile,
|
||||
getPurchaseFileList,
|
||||
} from "@/api/purchase/goodsAccept";
|
||||
|
||||
import {downloadFile, downloadFileData} from '@/utils/download'
|
||||
import Treeselect from '@riophae/vue-treeselect'
|
||||
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
|
||||
|
||||
|
|
@ -370,6 +412,13 @@ export default {
|
|||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
fileFbs: [
|
||||
{
|
||||
required: false,//是否分包商(是:合同编号必填)
|
||||
message: '请上传委托书',
|
||||
trigger: 'change'
|
||||
}
|
||||
],
|
||||
// purchaser: [
|
||||
// { required: true, message: "采购员不能为空", trigger: "blur" }
|
||||
// ]
|
||||
|
|
@ -404,9 +453,30 @@ export default {
|
|||
matchedOptions: [], // 匹配的选项
|
||||
keepSelectOpen: false, // 控制下拉框是否保持打开
|
||||
isSearching: false, // 添加搜索状态标记
|
||||
|
||||
//是否是分包商
|
||||
isFileFbs:false,
|
||||
businessLicenseListTemp: [],
|
||||
urlTemp: '',
|
||||
delBusinessFileIdList: [],
|
||||
//图片查看弹窗
|
||||
dialogImageUrl: '',
|
||||
dialogVisible: false,
|
||||
uploadKey: Date.now(),
|
||||
//上传
|
||||
upload: {
|
||||
// 设置上传的请求头部
|
||||
headers: {Authorization: 'Bearer ' + getToken()},
|
||||
// 上传的地址
|
||||
url: process.env.VUE_APP_BASE_API + '/file/upload'
|
||||
},
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
//图片上传1张后,隐藏上传框
|
||||
uploadDisabled() {
|
||||
return this.businessLicenseListTemp.length > 4
|
||||
},
|
||||
pickerOptions() {
|
||||
return {
|
||||
disabledDate(time) {
|
||||
|
|
@ -449,6 +519,13 @@ export default {
|
|||
// } else if (val && val.length == 0) {
|
||||
// this.maForm.unitId = "";
|
||||
// }
|
||||
if(val.typeKey=='fbs'){
|
||||
this.isFileFbs=true;
|
||||
this.rules['fileFbs'][0].required=true;
|
||||
}else{
|
||||
this.isFileFbs=false;
|
||||
this.rules['fileFbs'][0].required=false;
|
||||
}
|
||||
setTimeout(()=>{
|
||||
getListProject({ unitId: this.maForm.unitId }).then((response) => {
|
||||
this.projectList = response.data;
|
||||
|
|
@ -648,6 +725,10 @@ export default {
|
|||
// console.log(this.equipmentList)
|
||||
console.log("maForm", this.maForm);
|
||||
if (this.equipmentList.length > 0) {
|
||||
if(this.businessLicenseListTemp.length > 0){
|
||||
console.log(33333333333333333333333333333333333)
|
||||
this.$refs["maForm"].clearValidate('fileFbs');
|
||||
}
|
||||
this.$refs["maForm"].validate(async (valid) => {
|
||||
if (valid) {
|
||||
for(let i = 0;i<this.equipmentList.length;i++){
|
||||
|
|
@ -831,6 +912,7 @@ export default {
|
|||
}
|
||||
}
|
||||
},
|
||||
|
||||
//图片查看
|
||||
picturePreview(file) {
|
||||
this.dialogImageUrl = file.url;
|
||||
|
|
@ -864,6 +946,132 @@ export default {
|
|||
`新购到货详情_${new Date().getTime()}.xlsx`
|
||||
);
|
||||
},
|
||||
|
||||
//委托书文件
|
||||
handleChangeBusinessList(file, fileList) {
|
||||
const fileListTemp = fileList.filter(item => {
|
||||
return item.uid != file.uid
|
||||
});
|
||||
const parts = file.name.split('.');
|
||||
const extension = parts.pop();
|
||||
if (fileList.length > 5) {
|
||||
this.$message.warning('最多上传5张附件')
|
||||
fileList = fileList.filter(item => {
|
||||
return item.uid != file.uid
|
||||
})
|
||||
} else if (!(extension === 'pdf' || extension === 'png' || extension === 'jpg' || extension === 'jpeg')) {
|
||||
this.$message.warning('文件格式不正确')
|
||||
fileList = fileList.filter(item => {
|
||||
return item.uid != file.uid
|
||||
})
|
||||
} else if (file.size > 1024 * 1024 * 10) {
|
||||
this.$message.warning('文件大小不能超过10Mb')
|
||||
fileList = fileList.filter(item => {
|
||||
return item.uid != file.uid
|
||||
})
|
||||
} else if (file.name.length > 40) {
|
||||
this.$message.warning('文件名长度不能超过40个字符')
|
||||
fileList = fileList.filter(item => {
|
||||
return item.uid != file.uid
|
||||
})
|
||||
} else if (fileListTemp.some(item => item.name === file.name)) {
|
||||
this.$message.warning('文件名重复')
|
||||
fileList = fileList.filter(item => {
|
||||
return item.uid != file.uid
|
||||
})
|
||||
}
|
||||
fileList.forEach(file => {
|
||||
if (extension === 'pdf') {
|
||||
this.urlTemp = require('../../../../../assets/file.png');
|
||||
|
||||
}
|
||||
});
|
||||
this.businessLicenseListTemp = fileList;
|
||||
// // 根据 businessLicenseListTemp 是否有值来控制 fileFbs 的验证
|
||||
// if (this.businessLicenseListTemp.length > 0) {
|
||||
// // this.maForm.fileFbs = fileList.map(item => item.raw); // 假设需要上传文件对象;
|
||||
// // 有值,手动标记验证通过
|
||||
// console.log('222222222222222')
|
||||
// this.$refs.maForm.clearValidate('fileFbs');
|
||||
// } else {
|
||||
// // maForm.fileFbs = false;
|
||||
// console.log('33333333')
|
||||
// // 无值,手动触发验证失败
|
||||
// this.$refs.maForm.validateField('fileFbs');
|
||||
// }
|
||||
|
||||
console.log('4444444444')
|
||||
},
|
||||
|
||||
isImage(file) {
|
||||
this.urlTemp = require('@/assets/file.png');
|
||||
if (this.updataIf(file)) {
|
||||
return false
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
},
|
||||
|
||||
// 判断文件类型,图片预览,文件下载
|
||||
updataIf(e) {
|
||||
if (e.fileName) {
|
||||
const parts = e.fileName.split('.');
|
||||
const extension = parts.pop();
|
||||
if (extension === 'png' || extension === 'jpeg' || extension === 'jpg') {
|
||||
return false
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
} else {
|
||||
const parts = e.name.split('.');
|
||||
const extension = parts.pop();
|
||||
if (extension === 'png' || extension === 'jpeg' || extension === 'jpg') {
|
||||
return false
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
//上传组件-图片查看
|
||||
picturePreviewFbs(file) {
|
||||
this.dialogImageUrl = file.url.replaceAll('#','%23');
|
||||
const parts = file.name.split('.');
|
||||
const extension = parts.pop();
|
||||
if (extension === 'pdf') {
|
||||
const windowName = file.name;
|
||||
window.open(file.url, windowName)
|
||||
} else {
|
||||
this.dialogVisible = true
|
||||
}
|
||||
},
|
||||
|
||||
//上传组件-图片删除
|
||||
handleRemoveElectricianImgList(file, fileList) {
|
||||
let sum = 0
|
||||
this.businessLicenseListTemp.forEach((item, index) => {
|
||||
if (item.uid == file.uid) {
|
||||
sum = index
|
||||
}
|
||||
})
|
||||
this.businessLicenseListTemp.splice(sum, 1)
|
||||
if (file.status == 'success') {
|
||||
this.delBusinessFileIdList.push(file.url);
|
||||
}
|
||||
console.log('delBusinessFileIdList', this.delBusinessFileIdList)
|
||||
},
|
||||
|
||||
handleDownload(file) {
|
||||
console.log(file)
|
||||
if (file.status === 'ready') {
|
||||
downloadFile({fileName: file.name, fileData: file.raw, fileType: 'application/vnd.ms-excel;charset=utf-8'})
|
||||
} else if (file.status === 'success') {
|
||||
|
||||
downloadFileData({fileName: file.name, fileUrl: file.url})
|
||||
// downloadFileData({ fileName: file.name,fileUrl:file.url })
|
||||
}
|
||||
},
|
||||
|
||||
// 高亮文本
|
||||
highlightText(text, keyword) {
|
||||
if (!keyword) return text;
|
||||
|
|
@ -948,7 +1156,21 @@ export default {
|
|||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="scss">
|
||||
<style lang="scss" scoped>
|
||||
//隐藏图片上传框的css
|
||||
::v-deep.disabledFbs {
|
||||
.el-upload--picture-card {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
::v-deep .el-upload-list__item {
|
||||
margin-bottom: 20px;
|
||||
overflow: unset !important;
|
||||
}
|
||||
::v-deep .el-upload-list__item-actions {
|
||||
overflow: unset !important;
|
||||
}
|
||||
|
||||
.popper-select {
|
||||
.el-cascader-panel .el-scrollbar .el-checkbox {
|
||||
display: none;
|
||||
|
|
@ -1029,4 +1251,56 @@ export default {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.el-upload-list__item-thumbnail {
|
||||
height: 145px !important;
|
||||
}
|
||||
|
||||
.picture-card-container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.picture-card {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: cover;
|
||||
justify-content: center;
|
||||
|
||||
// border: 1px solid #ddd;
|
||||
// border-radius: 4px;
|
||||
}
|
||||
|
||||
.file-name {
|
||||
width: 90%;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
position: absolute;
|
||||
bottom: -35px;
|
||||
margin-top: 8px;
|
||||
text-align: center;
|
||||
font-size: 12px;
|
||||
color: #333;
|
||||
z-index: 999999;
|
||||
}
|
||||
|
||||
.file-overlay {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: rgba(0, 0, 0, 0.5);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
font-size: 20px;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -159,11 +159,11 @@
|
|||
</div>
|
||||
<div class="info" style="margin-top: 10px; display: flex; align-items: center;">
|
||||
<div class="item"
|
||||
style="width: 50%;flex-shrink: 0;margin-bottom: 5px;font-size: 14px;">
|
||||
style="width: 60%;flex-shrink: 0;margin-bottom: 5px;font-size: 14px;">
|
||||
<span>领用工程:</span>
|
||||
{{ checkDataInfo.leaseProject }}
|
||||
</div>
|
||||
<div class="item" style="width: 50%;flex-shrink: 0;margin-bottom: 5px;font-size: 14px;">
|
||||
<div class="item" style="width: 40%;flex-shrink: 0;margin-bottom: 5px;font-size: 14px;">
|
||||
<span>使用单位:</span>
|
||||
{{ checkDataInfo.leaseUnit }}
|
||||
</div>
|
||||
|
|
@ -189,7 +189,7 @@
|
|||
<span>检验单位:</span>
|
||||
</div>
|
||||
<div>
|
||||
<canvas id="canvas" width="165" height="165" style="position: absolute; top: 50%; left: 90%; transform: translate(-100%, -50%);"></canvas>
|
||||
<canvas id="canvas" width="165" height="165" style="position: absolute; top: 50%; left: 90%; transform: translate(-100%, -50%); z-index: 9999;"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -517,7 +517,7 @@ export default {
|
|||
|
||||
this.printTableData = res.data.leaseOutVoList;
|
||||
setTimeout(() => {
|
||||
this.chapter('检验专用章', '机具设备分公司')
|
||||
this.chapter('机具检验专用章', '安徽送边电工程有限公司机具(物流)分公司')
|
||||
}, 500);
|
||||
this.openPrint = true;
|
||||
this.title = "出库检验单";
|
||||
|
|
@ -663,16 +663,16 @@ export default {
|
|||
this.create5star(context, width, height, 20, "#f00", 0);
|
||||
|
||||
// 绘制印章名称
|
||||
context.font = "18px 宋体";
|
||||
context.font = "100 13px 宋体";
|
||||
context.textBaseline = "middle"; //设置文本的垂直对齐方式
|
||||
context.textAlign = "center"; //设置文本的水平对对齐方式
|
||||
context.lineWidth = 1;
|
||||
context.strokeStyle = "#ff2f2f";
|
||||
context.lineWidth = 0.7;
|
||||
context.strokeStyle = "#ff2323";
|
||||
context.strokeText(text, width, height + 50);
|
||||
|
||||
// 绘制印章单位
|
||||
context.translate(width, height); // 平移到此位置,
|
||||
context.font = "16px 宋体";
|
||||
context.font = "100 13px 宋体";
|
||||
let count = companyName.length; // 字数
|
||||
let angle = (4 * Math.PI) / (3 * (count - 1)); // 字间角度
|
||||
let chars = companyName.split("");
|
||||
|
|
@ -688,7 +688,7 @@ export default {
|
|||
context.save();
|
||||
context.translate(65, 0); // 平移到此位置,此时字和x轴垂直,公司名称和最外圈的距离
|
||||
context.rotate(Math.PI / 2); // 旋转90度,让字平行于x轴
|
||||
context.strokeStyle = "#ff5050"; // 设置印章单位字体颜色为较浅的红色
|
||||
context.strokeStyle = "#ff2323"; // 设置印章单位字体颜色为较浅的红色
|
||||
context.strokeText(c, 0, 0); // 此点为字的中心点
|
||||
context.restore();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -269,7 +269,7 @@
|
|||
</el-row>
|
||||
<el-form-item label="附件">
|
||||
<el-upload
|
||||
class="upload-demo"
|
||||
|
||||
action="#"
|
||||
:file-list="businessLicenseListTemp"
|
||||
:show-file-list="true"
|
||||
|
|
@ -285,7 +285,7 @@
|
|||
>
|
||||
|
||||
<!-- 文件格式下载,图片格式预览 -->
|
||||
<div slot="file" slot-scope="{file}">
|
||||
<div slot="file" slot-scope="{file}" >
|
||||
<img v-if="isImage(file)" class="el-upload-list__item-thumbnail" :src="file.url" alt="">
|
||||
<div v-else class="picture-card-container">
|
||||
<img class="picture-card" :src="urlTemp" alt="">
|
||||
|
|
@ -303,7 +303,6 @@
|
|||
</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<i class="el-icon-plus avatar-uploader-icon"></i>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
|
|
@ -608,7 +607,7 @@ export default {
|
|||
|
||||
//图片上传1张后,隐藏上传框
|
||||
uploadDisabled() {
|
||||
return this.businessLicenseListTemp.length > 2
|
||||
return this.businessLicenseListTemp.length > 9
|
||||
},
|
||||
},
|
||||
created() {
|
||||
|
|
@ -721,8 +720,8 @@ export default {
|
|||
});
|
||||
const parts = file.name.split('.');
|
||||
const extension = parts.pop();
|
||||
if (fileList.length > 3) {
|
||||
this.$message.warning('最多上传3张附件')
|
||||
if (fileList.length > 10) {
|
||||
this.$message.warning('最多上传10张附件')
|
||||
fileList = fileList.filter(item => {
|
||||
return item.uid != file.uid
|
||||
})
|
||||
|
|
@ -1212,9 +1211,10 @@ export default {
|
|||
}
|
||||
}
|
||||
|
||||
::v-deep .el-upload-list--picture-card {
|
||||
display: flex;
|
||||
}
|
||||
// ::v-deep .el-upload-list--picture-card {
|
||||
// display: flex;
|
||||
// flex-wrap: wrap;
|
||||
// }
|
||||
|
||||
::v-deep .el-upload-list__item {
|
||||
margin-bottom: 20px;
|
||||
|
|
@ -1224,9 +1224,14 @@ export default {
|
|||
::v-deep .el-upload-list__item-actions {
|
||||
overflow: hidden;
|
||||
}
|
||||
.el-upload--picture-card {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.upload-demo {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.el-upload-list__item-thumbnail {
|
||||
|
|
|
|||
|
|
@ -838,7 +838,7 @@ export default {
|
|||
computed: {
|
||||
//图片上传1张后,隐藏上传框
|
||||
uploadDisabled() {
|
||||
return this.fileList.length > 2;
|
||||
return this.fileList.length > 4;
|
||||
},
|
||||
...mapState(["user"]),
|
||||
},
|
||||
|
|
|
|||
Loading…
Reference in New Issue