From 575c1b7cd5501708cdfdec965fcdb687dc5cc0fb Mon Sep 17 00:00:00 2001 From: zhaoxiao Date: Mon, 6 Sep 2021 17:44:13 +0800 Subject: [PATCH] =?UTF-8?q?[update]=20=E6=94=B6=E5=85=A5=E5=90=88=E5=90=8C?= =?UTF-8?q?=E3=80=81=E6=96=87=E4=BB=B6=E4=B8=8A=E4=BC=A0=E9=99=90=E5=88=B6?= =?UTF-8?q?=E3=80=81=E6=96=87=E4=BB=B6=E9=A2=84=E8=A7=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/jero/JUpload.vue | 34 ++++++-- .../revenueContract/RevenueContractList.vue | 6 +- .../modules/RevenueContractDetail.vue | 2 +- .../modules/RevenueContractModule.vue | 2 +- .../WorkingGroupMemberUnitMaintenance.vue | 81 ++++++++++++++----- .../modules/WorkingGroupProjectModule.vue | 2 + 6 files changed, 97 insertions(+), 30 deletions(-) diff --git a/src/components/jero/JUpload.vue b/src/components/jero/JUpload.vue index fb80d32..186818b 100644 --- a/src/components/jero/JUpload.vue +++ b/src/components/jero/JUpload.vue @@ -53,6 +53,7 @@ export default { fileList: [], newFileList: [], uploadGoOn: true, + fileTypes: this.fileType } }, props: { @@ -256,15 +257,37 @@ export default { }, beforeUpload(file) { this.uploadGoOn = true - let fileType = file.type - if (this.fileType === FILE_TYPE_IMG) { - if (fileType.indexOf('image') < 0) { - this.$message.warning('请上传图片') + file.uploadGoOn = true + const fileSize = file.size // 上传的文件大小 + const fileType = file.type // 上传的文件类型 + if (fileSize > 1024 * 1024 * 50) { + this.$message.warning('文件大小限制为50M') + this.uploadGoOn = false + file.uploadGoOn = false + return false + } + // 不等于全部类型可以上传的时候,对上传的文件进行判断 + if (this.fileType !== FILE_TYPE_ALL) { + // filter(tt => fileType.indexOf(tt) > -1) 判断用户传的文件类型,和要求传的文件类型是否一致 + // 当上传的图片格式为jpg时,在此组件中,会返回类型为 image/jpeg ElememntUI设计如此 所以需要把用户传下来的jpg强制改成jpeg + this.fileTypes = this.fileTypes.replace('jpg', 'jpeg') + const arr = this.fileTypes.split(',').filter(tt => fileType.indexOf(tt) > -1) + if (arr.length === 0) { + this.$message.warning(this.fileTypeErrorMessage || `请上传${this.fileTypes}文件`) this.uploadGoOn = false + file.uploadGoOn = false return false } } - //TODO 扩展功能验证文件大小 + if (this.fileTypes === FILE_TYPE_IMG) { + if (fileType.indexOf('image') < 0) { + this.$message.warning('请上传图片') + this.uploadGoOn = false + file.uploadGoOn = false + return false + } + } + // TODO 扩展功能验证文件大小 return true }, handleChange(info) { @@ -322,6 +345,7 @@ export default { console.log(file) }, handlePreview(file) { + console.log(file) if (file && file.url) { const fileFullUrl = `${window._CONFIG['domianWebSocketURL']}/sys/common/download/${file.response.result.id}?token=${Vue.ls.get(ACCESS_TOKEN)}&fullfilename=${file.name}` let url = `${window._CONFIG['onlinePreviewDomainURL']}?url=${encodeURIComponent(Base64.encode(fileFullUrl))}` diff --git a/src/views/contractManagement/revenueContract/RevenueContractList.vue b/src/views/contractManagement/revenueContract/RevenueContractList.vue index 41f9609..dbadfdb 100644 --- a/src/views/contractManagement/revenueContract/RevenueContractList.vue +++ b/src/views/contractManagement/revenueContract/RevenueContractList.vue @@ -167,12 +167,12 @@ export default { }, { title: '签订单位', align: 'center', - dataIndex: 'signedCompany', + dataIndex: 'signedCompanyTemporaryName', width: 250 }, { title: '签订联系人', align: 'center', - dataIndex: 'signedContactsName', + dataIndex: 'signedContactsTemporaryName', width: 250 }, { title: '合同总金额', @@ -182,7 +182,7 @@ export default { }, { title: '状态', align: 'center', - dataIndex: 'status', + dataIndex: 'status_dictText', width: 250 }, { title: '创建时间', diff --git a/src/views/contractManagement/revenueContract/modules/RevenueContractDetail.vue b/src/views/contractManagement/revenueContract/modules/RevenueContractDetail.vue index 9f2016a..1dded6c 100644 --- a/src/views/contractManagement/revenueContract/modules/RevenueContractDetail.vue +++ b/src/views/contractManagement/revenueContract/modules/RevenueContractDetail.vue @@ -213,7 +213,7 @@ export default { fieldName: 'amountReceived', title: '未收金额' }, { - fieldName: 'accountStatus', + fieldName: 'accountStatus_dictText', title: '赊账状态' } ], diff --git a/src/views/contractManagement/revenueContract/modules/RevenueContractModule.vue b/src/views/contractManagement/revenueContract/modules/RevenueContractModule.vue index 3d66508..ef80973 100644 --- a/src/views/contractManagement/revenueContract/modules/RevenueContractModule.vue +++ b/src/views/contractManagement/revenueContract/modules/RevenueContractModule.vue @@ -49,7 +49,7 @@ + dictCode="yn"/> diff --git a/src/views/projectManagement/WorkingGroupMemberUnitMaintenance.vue b/src/views/projectManagement/WorkingGroupMemberUnitMaintenance.vue index 5ba9e2b..cbdd063 100644 --- a/src/views/projectManagement/WorkingGroupMemberUnitMaintenance.vue +++ b/src/views/projectManagement/WorkingGroupMemberUnitMaintenance.vue @@ -6,15 +6,16 @@
工作组信息
- +
{{ item.title }}:
-
- {{ workingGroupDetail[item.fieldName] }} +
+ {{ workingGroupDetail[item.fieldName].fileName }}
{{ workingGroupDetail[item.fieldName] }}
@@ -61,7 +62,8 @@
添加成员 - + 导入 导出 @@ -74,18 +76,18 @@
+ ref="table" + size="middle" + bordered + rowKey="id" + :columns="columns" + :scroll="{x: 1500}" + :dataSource="dataSource" + :pagination="ipagination" + :loading="loading" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + @change="handleTableChange" + class="j-table-force-nowrap"> @@ -128,6 +131,10 @@ import StatusSlot from '../../components/tools/StatusSlot' import ProjectDetailModal from '../../components/ProjectDetailModal' import WorkingGroupMemberUnitModule from './modules/WorkingGroupMemberUnitModule' import WorkingGroupMemberSetChargeNotice from './modules/WorkingGroupMemberSetChargeNotice' +import { getFileInfo } from '../../api/api' +import Vue from 'vue' +import { ACCESS_TOKEN } from '../../store/mutation-types' +const Base64 = require('js-base64').Base64 export default { name: 'WorkingGroupMemberUnitMaintenance', @@ -150,6 +157,7 @@ export default { disableMixinCreated: true, workingGroupProject: '', workingGroupProjectId: '', + spinning: false, detailTitleList: [ { title: '工作组项目名称', @@ -174,7 +182,7 @@ export default { fieldName: 'chargeNoticeNoA' }, { title: '收费通知A', - fieldName: 'chargeNoticeAId' + fieldName: 'chargeNoticeA' }, { title: '本年应收款B', fieldName: 'yearChargeB' @@ -183,7 +191,7 @@ export default { fieldName: 'chargeNoticeNoB' }, { title: '收费通知B', - fieldName: 'chargeNoticeBId' + fieldName: 'chargeNoticeB' } ], labelCol: { @@ -285,6 +293,7 @@ export default { * 初始化工作组信息 */ initWorkGruopData() { + this.spinning = true this.workingGroupProject = this.$route.query.workingGroupProject this.workingGroupProjectId = this.$route.query.workingGroupProjectId this.filters.workingGroupId = this.workingGroupProjectId @@ -295,6 +304,21 @@ export default { } getWorkingGroupById(param).then(res => { this.workingGroupDetail = res.result + // this.workingGroupDetail.chargeNoticeA = {} + // this.workingGroupDetail.chargeNoticeB = {} + this.getFile() + }).finally(() => { + this.spinning = false + }) + }, + async getFile() { + await getFileInfo({ id: this.workingGroupDetail.chargeNoticeAId }).then(res => { + this.workingGroupDetail.chargeNoticeA = res.result + this.$forceUpdate() + }) + await getFileInfo({ id: this.workingGroupDetail.chargeNoticeBId }).then(res => { + this.workingGroupDetail.chargeNoticeB = res.result + this.$forceUpdate() }) }, handleAdd: function () { @@ -368,6 +392,19 @@ export default { this.$message.warn(res.message) } }) + }, + /** + * 文件预览 + * @param file + */ + previewFile(file) { + console.log(file) + if (file && file.url) { + const fileFullUrl = `${window._CONFIG['domianWebSocketURL']}/sys/common/download/${file.id}?token=${Vue.ls.get(ACCESS_TOKEN)}&fullfilename=${file.fileName}` + let url = `${window._CONFIG['onlinePreviewDomainURL']}?url=${encodeURIComponent(Base64.encode(fileFullUrl))}` + // let url = `${window._CONFIG['onlinePreviewDomainURL']}?url=${encodeURIComponent(fileFullUrl)}` + window.open(url) + } } } } @@ -407,6 +444,10 @@ export default { word-break: break-all; color: #2F3133; } + + &-filename { + cursor: pointer; + } } } diff --git a/src/views/projectManagement/modules/WorkingGroupProjectModule.vue b/src/views/projectManagement/modules/WorkingGroupProjectModule.vue index 6efd7e8..5731fa9 100644 --- a/src/views/projectManagement/modules/WorkingGroupProjectModule.vue +++ b/src/views/projectManagement/modules/WorkingGroupProjectModule.vue @@ -96,6 +96,7 @@ :multiple="false" :return-id="true" bizPath="payment" + :number="1" v-decorator="['chargeNoticeAId']" :trigger-change="true"> @@ -132,6 +133,7 @@ :multiple="false" :return-id="true" bizPath="payment" + :number="1" v-decorator="['chargeNoticeBId']" :trigger-change="true">