diff --git a/.env.development b/.env.development index 1edba8c..3becbe6 100644 --- a/.env.development +++ b/.env.development @@ -5,8 +5,8 @@ VUE_APP_TITLE = 金鸡湖现代服务业品牌管理系统 ENV = 'development' # 金鸡湖现代服务业品牌管理系统/开发环境 -VUE_APP_BASE_API = 'http://192.168.0.110:9040' -# VUE_APP_BASE_API = 'http://39.101.188.84:9040' +# VUE_APP_BASE_API = 'http://192.168.0.108:9040' +VUE_APP_BASE_API = 'http://39.101.188.84:9040' # VUE_APP_BASE_API = 'https://idp.sipac.gov.cn/api' # 路由懒加载 diff --git a/.env.production b/.env.production index b1a6f2b..928897b 100644 --- a/.env.production +++ b/.env.production @@ -6,7 +6,7 @@ ENV = 'production' # 金鸡湖现代服务业品牌管理系统/生产环境 # VUE_APP_BASE_API = '/prod-api' -VUE_APP_BASE_API = 'http://39.101.188.84:9040' +# VUE_APP_BASE_API = 'http://39.101.188.84:9040' # VUE_APP_BASE_API = 'http://192.114.0.197/api' -# VUE_APP_BASE_API = 'https://idp.sipac.gov.cn/api' +VUE_APP_BASE_API = 'https://idp.sipac.gov.cn/api' diff --git a/package.json b/package.json index 0f74c49..8641d9b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ruoyi", - "version": "1.0.202407230921", + "version": "1.0.202407290914", "description": "金鸡湖现代服务业品牌管理系统", "author": "若依", "license": "MIT", @@ -37,6 +37,8 @@ }, "dependencies": { "@riophae/vue-treeselect": "0.4.0", + "@wangeditor/editor": "^5.1.23", + "@wangeditor/editor-for-vue": "^1.0.2", "autofit.js": "^3.1.0", "axios": "0.24.0", "clipboard": "2.0.8", @@ -45,12 +47,13 @@ "element-ui": "2.15.14", "file-saver": "2.0.5", "fuse.js": "6.4.3", - "highlight.js": "9.18.5", + "highlight.js": "10.5.0", "html2canvas": "^1.4.1", "js-beautify": "1.13.0", "js-cookie": "3.0.1", "jsencrypt": "3.0.0-rc.1", "jspdf": "^2.5.1", + "lodash": "^4.17.21", "nprogress": "0.2.0", "quill": "1.3.7", "screenfull": "5.0.2", @@ -62,7 +65,9 @@ "vue-router": "3.4.9", "vuedraggable": "2.24.3", "vuex": "3.6.0", - "xlsx": "^0.18.5" + "xlsx": "^0.18.5", + "xml-js": "1.6.11", + "bpmn-js-token-simulation": "0.10.0" }, "devDependencies": { "@vue/cli-plugin-babel": "4.4.6", @@ -70,6 +75,8 @@ "@vue/cli-service": "4.4.6", "babel-eslint": "10.1.0", "babel-plugin-dynamic-import-node": "2.3.3", + "bpmn-js": "7.5.0", + "bpmn-js-properties-panel": "0.37.2", "chalk": "4.1.0", "compression-webpack-plugin": "5.0.2", "connect": "3.6.6", diff --git a/public/static/企业库数据模板.xlsx b/public/static/企业库数据模板.xlsx new file mode 100644 index 0000000..3aa6219 Binary files /dev/null and b/public/static/企业库数据模板.xlsx differ diff --git a/src/App.vue b/src/App.vue index b1a9742..ad6f99e 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,15 +1,17 @@ + + diff --git a/src/components/ProcessViewer/index.vue b/src/components/ProcessViewer/index.vue new file mode 100644 index 0000000..3bc6594 --- /dev/null +++ b/src/components/ProcessViewer/index.vue @@ -0,0 +1,259 @@ + + + + + diff --git a/src/components/scaleBox/index.vue b/src/components/scaleBox/index.vue new file mode 100644 index 0000000..01573a2 --- /dev/null +++ b/src/components/scaleBox/index.vue @@ -0,0 +1,63 @@ + + + + + \ No newline at end of file diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue index ace9f6f..0d0e678 100644 --- a/src/layout/components/AppMain.vue +++ b/src/layout/components/AppMain.vue @@ -1,5 +1,5 @@ diff --git a/src/views/onlineDeclaration/declarationManagement/index.vue b/src/views/onlineDeclaration/declarationManagement/index.vue index 78897fb..365b437 100644 --- a/src/views/onlineDeclaration/declarationManagement/index.vue +++ b/src/views/onlineDeclaration/declarationManagement/index.vue @@ -65,7 +65,7 @@ > @@ -114,8 +114,8 @@ id="L-pagination" v-show="total>0" :total="total" - :page.sync="queryParams.pageNum" - :limit.sync="queryParams.pageSize" + :page.sync="queryParams.current" + :limit.sync="queryParams.size" @pagination="getList" /> @@ -188,8 +188,8 @@ export default { queryParams: { menuName: undefined, visible: undefined, - ageNum: 1, - pageSize: 20, + current: 1, + size: 10, }, enterpriseId: '', templateDataList: [], @@ -234,8 +234,8 @@ export default { getList() { this.loading = true; listInfo(this.queryParams).then(response => { - this.InfoList = response.rows; - this.total = response.total + this.InfoList = response.data.records; + this.total = response.data.total this.loading = false; }); }, @@ -329,7 +329,7 @@ export default { }, /** 查看表单模版 */ handleTemplate (row) { - this.$router.push({name: 'templateDetail',query: { + this.$router.push({name: 'onlineDeclareDetail',query: { templateId: row.id, pageType: "template", }}) diff --git a/src/views/onlineDeclaration/declareAddContent/index.vue b/src/views/onlineDeclaration/declareAddContent/index.vue index 70a0539..5f6d22c 100644 --- a/src/views/onlineDeclaration/declareAddContent/index.vue +++ b/src/views/onlineDeclaration/declareAddContent/index.vue @@ -13,7 +13,7 @@
申报单位:
-
{{ baseInfo.enterpriseName }}
+
{{ baseInfo.qymc }}
@@ -25,8 +25,20 @@
-
项目分类:
- +
项目大类:
+ +
+
+ +
+
项目中类:
+ +
+
+ +
+
项目小类:
+
@@ -47,31 +59,31 @@ - {{ baseInfo.enterpriseName }} + {{ baseInfo.qymc }} - {{ baseInfo.creditCode }} + {{ baseInfo.tyshxydm }} - {{ baseInfo.contacts }} + {{ baseInfo.fddbrxm }} - {{ baseInfo.contactsNumber }} + {{ baseInfo.fddbrzjhm }} - {{ baseInfo.address }} + {{ baseInfo.jycs }} @@ -1323,7 +1335,7 @@ export default { name: "declareAddContent", // 'sys_show_hide', 'sys_normal_disable', 'bms_product_area', 'bms_declaration_type','bms_template_type', 'bms_declaration_channels', - dicts: ['bms_responsibility_unit', 'bms_level', 'bms_affiliation_type', 'sys_declaration_type', 'jjh_project_type', 'template_industry', 'new_template_type'], + dicts: ['bms_responsibility_unit', 'bms_level', 'bms_affiliation_type', 'sys_declaration_type', 'jjh_project_type', 'template_industry', 'new_template_type',"project_middle_type", "project_small_type", "project_categories"], data() { //验证手机号的规则 var checkMobile = (rule,value,cb) =>{ @@ -1522,10 +1534,11 @@ export default { // console.log('this.templateInfo: ', this.templateInfo); getBasicInfo({enterpriseId: this.$store.state.user.enterpriseId}).then((response) => { this.baseInfo = response.data + console.log(this.baseInfo); + }) + getOpenInterface({templateRecordId: templateRecordId}).then((response) => { + this.openInterfaceInfo = response.data }) - // getOpenInterface({templateRecordId: templateRecordId}).then((response) => { - // this.openInterfaceInfo = response.data - // }) // templateList({ // responsibilityUnit: this.templateInfo.responsibilityUnit, // enterpriseId: this.$store.state.user.enterpriseId, @@ -1554,16 +1567,16 @@ export default { } }, submitForm(type) { - console.log(this.form); + // console.log(this.form); this.$refs["form"].validate(valid => { if (valid) { let params = { declarationId: this.declarationId, - address: this.baseInfo.address, - contacts: this.baseInfo.contacts, - contactsNumber: this.baseInfo.contactsNumber, - creditCode: this.baseInfo.creditCode, - enterpriseName: this.baseInfo.enterpriseName, + // address: this.baseInfo.address, + // contacts: this.baseInfo.contacts, + // contactsNumber: this.baseInfo.contactsNumber, + tyshxydm: this.baseInfo.tyshxydm, + // enterpriseName: this.baseInfo.enterpriseName, // declarationTemplateType: this.openInterfaceInfo.declarationTemplateType, projectName: this.templateInfo.templateName, year: this.templateInfo.createTime, @@ -1636,10 +1649,14 @@ export default { } }) let detailList = [] - detailList.push({amount: this.form.revenueNowYear1,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear1',year: this.openInterfaceInfo.year}) - detailList.push({amount: this.form.taxationNowYear1,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear1',year: this.openInterfaceInfo.year}) - detailList.push({amount: this.form.revenueNowYear,detailId: '',illustrate: '预计营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear',year: Number(this.openInterfaceInfo.year)+1}) - detailList.push({amount: this.form.taxationNowYear,detailId: '',illustrate: '预计税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear',year: Number(this.openInterfaceInfo.year)+1}) + // detailList.push({amount: this.form.revenueNowYear1,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear1',year: this.openInterfaceInfo.year}) + // detailList.push({amount: this.form.taxationNowYear1,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear1',year: this.openInterfaceInfo.year}) + // detailList.push({amount: this.form.revenueNowYear,detailId: '',illustrate: '预计营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear',year: Number(this.openInterfaceInfo.year)+1}) + // detailList.push({amount: this.form.taxationNowYear,detailId: '',illustrate: '预计税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear',year: Number(this.openInterfaceInfo.year)+1}) + detailList.push({amount: this.form.revenueNowYear1,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear1',year: 2021}) + detailList.push({amount: this.form.taxationNowYear1,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear1',year: 2021}) + detailList.push({amount: this.form.revenueNowYear,detailId: '',illustrate: '预计营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear',year: 2022}) + detailList.push({amount: this.form.taxationNowYear,detailId: '',illustrate: '预计税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear',year: 2022}) params.fundingDetailList = detailList // console.log('11', params); addProjectSettlementAward(params).then((response) => { @@ -1663,14 +1680,22 @@ export default { } }) let detailList = [] - detailList.push({amount: this.form.revenueNowYear3,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear3',year: this.openInterfaceInfo.year}) - detailList.push({amount: this.form.taxationNowYear3,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear3',year: this.openInterfaceInfo.year}) - detailList.push({amount: this.form.revenueNowYear2,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear2',year: Number(this.openInterfaceInfo.year)+1}) - detailList.push({amount: this.form.taxationNowYear2,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear2',year: Number(this.openInterfaceInfo.year)+1}) - detailList.push({amount: this.form.revenueNowYear1,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear1',year: Number(this.openInterfaceInfo.year)+2}) - detailList.push({amount: this.form.taxationNowYear1,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear1',year: Number(this.openInterfaceInfo.year)+2}) - detailList.push({amount: this.form.revenueNowYear,detailId: '',illustrate: '预计营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear',year: Number(this.openInterfaceInfo.year)+3}) - detailList.push({amount: this.form.taxationNowYear,detailId: '',illustrate: '预计营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear',year: Number(this.openInterfaceInfo.year)+3}) + // detailList.push({amount: this.form.revenueNowYear3,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear3',year: this.openInterfaceInfo.year}) + // detailList.push({amount: this.form.taxationNowYear3,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear3',year: this.openInterfaceInfo.year}) + // detailList.push({amount: this.form.revenueNowYear2,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear2',year: Number(this.openInterfaceInfo.year)+1}) + // detailList.push({amount: this.form.taxationNowYear2,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear2',year: Number(this.openInterfaceInfo.year)+1}) + // detailList.push({amount: this.form.revenueNowYear1,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear1',year: Number(this.openInterfaceInfo.year)+2}) + // detailList.push({amount: this.form.taxationNowYear1,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear1',year: Number(this.openInterfaceInfo.year)+2}) + // detailList.push({amount: this.form.revenueNowYear,detailId: '',illustrate: '预计营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear',year: Number(this.openInterfaceInfo.year)+3}) + // detailList.push({amount: this.form.taxationNowYear,detailId: '',illustrate: '预计营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear',year: Number(this.openInterfaceInfo.year)+3}) + detailList.push({amount: this.form.revenueNowYear3,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear3',year: 2021}) + detailList.push({amount: this.form.taxationNowYear3,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear3',year: 2021}) + detailList.push({amount: this.form.revenueNowYear2,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear2',year: 2022}) + detailList.push({amount: this.form.taxationNowYear2,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear2',year: 2022}) + detailList.push({amount: this.form.revenueNowYear1,detailId: '',illustrate: '营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear1',year: 2023}) + detailList.push({amount: this.form.taxationNowYear1,detailId: '',illustrate: '税收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear1',year: 2023}) + detailList.push({amount: this.form.revenueNowYear,detailId: '',illustrate: '预计营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'revenueNowYear',year: 2024}) + detailList.push({amount: this.form.taxationNowYear,detailId: '',illustrate: '预计营收', templateRecordId: this.templateRecordId,type: this.templateId,vmodel: 'taxationNowYear',year: 2024}) params.fundingDetailList = detailList // console.log('11', params); addBigStrongAward(params).then((response) => { @@ -2328,6 +2353,7 @@ list-style: none; /* 清除列表项前的标记 */ } .templateInfo { display: flex; + align-items: center; justify-content: flex-start; font-size: 14px; .templateInfo_left { diff --git a/src/views/onlineDeclaration/declareDetailContent/index.vue b/src/views/onlineDeclaration/declareDetailContent/index.vue index e017b17..bbfa308 100644 --- a/src/views/onlineDeclaration/declareDetailContent/index.vue +++ b/src/views/onlineDeclaration/declareDetailContent/index.vue @@ -20,7 +20,7 @@
申报单位:
-
{{ baseInfo.enterpriseName }}
+
{{ baseInfo.qymc }}
@@ -32,10 +32,28 @@
-
项目分类:
+
项目大类:
+
+
+ +
+
项目中类:
+ +
+
+ +
+
项目小类:
+
@@ -75,23 +93,23 @@ > - {{ baseInfo.enterpriseName }} + {{ baseInfo.qymc }} - {{ baseInfo.creditCode }} + {{ baseInfo.tyshxydm }} - {{ baseInfo.contacts }} + {{ baseInfo.fddbrxm }} - {{ baseInfo.contactsNumber }} + {{ baseInfo.fddbrzjhm }} - {{ baseInfo.address }} + {{ baseInfo.jycs }} @@ -3276,10 +3294,13 @@ >
-
{{ item.approvalByName }}
+
{{ item.approvalByName }}
审核意见:{{ item.approvalOpinions }}
+
+ 企业名称:{{ item.enterpriseName }} +
附件
@@ -3428,7 +3449,9 @@ export default { "bms_level", "bms_affiliation_type", "sys_declaration_type", - "jjh_project_type", + "project_middle_type", + "project_small_type", + "project_categories", "template_industry", "new_template_type", ], @@ -3978,11 +4001,11 @@ export default { this.$refs["form"].validate((valid) => { if (valid) { let params = { - address: this.baseInfo.address, - contacts: this.baseInfo.contacts, - contactsNumber: this.baseInfo.contactsNumber, - creditCode: this.baseInfo.creditCode, - enterpriseName: this.baseInfo.enterpriseName, + // address: this.baseInfo.address, + // contacts: this.baseInfo.contacts, + // contactsNumber: this.baseInfo.contactsNumber, + tyshxydm: this.baseInfo.tyshxydm, + // enterpriseName: this.baseInfo.enterpriseName, // declarationTemplateType: this.openInterfaceInfo.declarationTemplateType, // projectName: this.openInterfaceInfo.projectName, // year: this.openInterfaceInfo.year, @@ -4749,27 +4772,47 @@ export default { /* 打印 */ printOutpdf() { - let name = `${this.templateInfo.templateName}_${this.baseInfo.enterpriseName}`; - let domName = this.$refs.pdf; - let _this = this; - - let targetDom = domName; //原本需要截图的div - let clonedNode = targetDom.cloneNode(true); //复制一个 - clonedNode.setAttribute( - "style", - `width: ${targetDom.clientHeight};height: ${targetDom.clientWidth};` - ); - document.body.appendChild(clonedNode); //放到body后面 - - html2canvas(clonedNode, { - allowTaint: true, - taintTest: false, - }).then((canvas) => { - let canvasImg = canvas.toDataURL("image/png"); - _this.downLoadFile(name, canvasImg); - document.body.removeChild(clonedNode); - }); - }, + let name = '' + name = `${this.templateInfo.templateName}_${this.baseInfo.enterpriseName}` + let modalDiv = this.$refs.pdf + let newDiv = modalDiv.cloneNode(true) + newDiv.classList.remove('detail_content'); + newDiv.id = 'reportId' + let newTwoDiv = document.createElement('div'); + newTwoDiv.id = 'detail_content_two' + document.body.appendChild(newTwoDiv) + newTwoDiv.appendChild(newDiv) + let obj = document.getElementById('reportId') + setTimeout(()=>{ + html2canvas(obj).then(function(canvas) { + let contentWidth = canvas.width + let contentHeight = canvas.height + let pageHeight = contentWidth / 592.28 * 841.89 + let leftHeight = contentHeight + let position = 0 + let imgWidth = 595.28 + let imgHeight = 592.28 / contentWidth * contentHeight + let pageData = canvas.toDataURL('image/jpeg', 1.0) + let PDF = new JsPDF('p', 'pt', 'a4') // [592.28 * 841.89] + console.log(pageData); + if (leftHeight < pageHeight) { + PDF.addImage(pageData, 'JPEG', 0, 0, imgWidth, imgHeight) + } else { + // 5 为误差值 + while (leftHeight > 5) { + PDF.addImage(pageData, 'JPEG', 0, position, imgWidth, imgHeight) + leftHeight -= pageHeight + position -= 841.89 + if (leftHeight > 5) { + PDF.addPage() + } + } + } + PDF.save(name + '.pdf') + newTwoDiv.remove() + }) + },200) + } }, }; @@ -4869,6 +4912,7 @@ li { } .templateInfo { display: flex; + align-items: center; justify-content: flex-start; font-size: 14px; .templateInfo_left { @@ -5067,7 +5111,7 @@ li { } .form { - height: calc(100% - 150px); + // height: calc(100% - 150px); background-color: #fff; padding: 15px; .table-content { diff --git a/src/views/onlineDeclaration/enterpriseDirectory/index.vue b/src/views/onlineDeclaration/enterpriseDirectory/index.vue index 3637132..474ef9c 100644 --- a/src/views/onlineDeclaration/enterpriseDirectory/index.vue +++ b/src/views/onlineDeclaration/enterpriseDirectory/index.vue @@ -57,11 +57,16 @@ + + + @@ -98,14 +104,14 @@ size="mini" type="text" style="color: red;" - v-if="scope.row.status == 1" + v-if="scope.row.status == 1 || scope.row.status == 3" @click="handleReplace(scope.row)" >补录 - 编辑 + >编辑 --> - - + + @@ -145,14 +151,23 @@ - + + + - + + + + 限时 + 不限时 + + + + + + + 不需要审批 + 需要审批 + + + + - + import { listTemplate, listBusiness, exportData, addTemplateRecord, putTemplateRecord, listTemplateInfo, getTemplateRecord, uploadFile, allList, supplementation } from "@/api/onlineDeclartion/enterpriseDirectory" import * as XLSX from 'xlsx' - +import { getAllList } from "@/api/system/dict/data"; export default { name: "EnterpriseDirectory", // 'sys_show_hide', 'sys_normal_disable', 'bms_template_type', - dicts: ['bms_responsibility_unit', 'bms_declaration_channels', 'bms_level', 'jjh_project_type'], + dicts: ['bms_responsibility_unit', 'bms_declaration_channels', 'bms_level', 'jjh_project_type', "project_small_type"], data() { let validateTime = (rule, value, callback) => { if (new Date(value[1]) < new Date()) { @@ -329,6 +363,10 @@ export default { open: false, // 是否是补录按钮点击 isReplace: false, + // 申报表单模板是否可用 + isForm: false, + // 是否审批是否禁用 + isApprovalDisabled: false, // 重新渲染表格状态 refreshTable: true, total: 10, @@ -371,8 +409,14 @@ export default { isFrame: [ { required: true, message: "名录维护方式不能为空", trigger: "blur" } ], + isTime: [ + { required: true, message: "是否限时", trigger: "blur" } + ], fileList: [ { required: true, message: "请上传企业名录", trigger: "blur" } + ], + isApproval: [ + { required: true, message: "是否审批", trigger: "blur" } ] }, businessLoading: false, @@ -387,13 +431,36 @@ export default { excelData: [], tabHeader: undefined, unitId: undefined, - projectId: undefined, + projectBigType: undefined, + projectMiddleType: undefined, + projectSmallType: undefined, diaLoading:false, + optionsTwo: [], + propsTwo:{ + lazy:true, + lazyLoad (node, resolve) { + const { level, data, children } = node; + if(children?.length == 0 ) { + getAllList({dictType: data.dict}).then(res=>{ + const nodes = Array.from(res.data).map((item)=>{ + return { + value:item.dictValue, + label:item.dictLabel, + dict:item.remark, + leaf: level >= 2 + } + }) + resolve(nodes) + }) + } + } + }, }; }, mounted() { this.cancalDebounce(); window.addEventListener('resize', this.cancalDebounce); + this.getDataList(); }, destroyed() { window.removeEventListener('resize', this.cancalDebounce); @@ -403,6 +470,17 @@ export default { this.getTemplateList(); }, methods: { + getDataList(){ + getAllList({dictType:"project_categories"}).then(res=>{ + res.data.map(item => { + let obj = {}; + obj.value = item.dictValue; + obj.label = item.dictLabel; + obj.dict = item.remark; + this.optionsTwo.push(obj); + }) + }) + }, // 屏幕尺寸变化 cancalDebounce(){ const element = document.getElementById('app-container'); // 通过元素的 ID 获取元素 @@ -440,6 +518,8 @@ export default { cancel() { this.open = false; this.isReplace = false; + this.isForm = false; + this.isApprovalDisabled = false; this.reset(); }, // 表单重置 @@ -452,6 +532,8 @@ export default { notes: undefined, orderNum: undefined, isFrame: 0, + isTime: 0, + isApproval: 0, }; this.resetForm("form"); }, @@ -469,10 +551,54 @@ export default { this.reset(); this.open = true; this.isReplace = false; + this.isForm = true; + this.isApprovalDisabled = false; this.fileList = []; this.form.isFrame = 0; + this.form.isTime = 0; + this.form.isApproval = 0; this.title = "发布申报任务"; }, + /** 回显Cascader 级联选择器数据 */ + echoCascader(arr){ + getAllList({dictType:"project_categories"}).then(res=>{ + let obj = {}; + let objTwo = {}; + let objThree = {}; + res.data.map(item => { + if(arr[0] == item.dictValue) { + obj.value = item.dictValue; + obj.label = item.dictLabel; + obj.dict = item.remark; + obj.children = []; + getAllList({dictType: item.remark}).then(resTwo=>{ + resTwo.data.map((itemTwo)=>{ + if(arr[1] == itemTwo.dictValue) { + objTwo.value = itemTwo.dictValue; + objTwo.label = itemTwo.dictLabel; + objTwo.dict = itemTwo.remark; + objTwo.children = []; + obj.children.push(objTwo) + getAllList({dictType: itemTwo.remark}).then(resThree => { + resThree.data.map((itemThree)=>{ + if(arr[2] == itemThree.dictValue) { + objThree.value = itemThree.dictValue; + objThree.label = itemThree.dictLabel; + objThree.dict = itemThree.remark; + objThree.leaf = 'leaf'; + objTwo.children.push(objThree) + this.optionsTwo.push(obj); + } + }) + }) + } + }) + }) + + } + }) + }) + }, /** 补录按钮操作 */ handleReplace(row){ this.reset(); @@ -480,9 +606,19 @@ export default { this.form = response.data; this.open = true; this.isReplace = true; + this.isForm = true; + this.isApprovalDisabled = true; this.title = "申报补录"; this.form.responsibilityUnit = this.form.responsibilityUnit + '' - this.form.projectClassify = this.form.projectClassify + '' + let arr = []; + if(response.data.projectBigType && response.data.projectMiddleType && response.data.projectSmallType) { + arr.push(response.data.projectBigType + '') + arr.push(response.data.projectMiddleType + '') + arr.push(response.data.projectSmallType + '') + } + this.echoCascader(arr) + // this.form.projectClassify = this.form.projectClassify + '' + this.form.projectClassify = arr this.form.road = this.form.road + '' if(this.form.fileName) { @@ -494,11 +630,19 @@ export default { } else { this.$set(this.form, 'isFrame', 0) } + if(this.form.startTime && this.form.endTime) { + let arr = [] + arr.push(this.form.startTime, this.form.endTime) + this.$set(this.form, 'reportTime', arr) + this.$set(this.form, 'isTime', 0) + } else { + this.$set(this.form, 'isTime', 1) + } this.form.fileList = this.form.fileName || [] this.fileList = this.form.fileName || [] - let arr = [] - arr.push(this.form.startTime, this.form.endTime) - this.$set(this.form, 'reportTime', arr) + // let arr = [] + // arr.push(this.form.startTime, this.form.endTime) + // this.$set(this.form, 'reportTime', arr) this.templateList = this.templateListLock.filter((item) => { return item.responsibilityUnit == this.form.responsibilityUnit }) @@ -512,6 +656,8 @@ export default { this.form = response.data; this.open = true; this.isReplace = false; + this.isForm = false; + this.isApprovalDisabled = false; this.title = "修改申报任务"; this.form.responsibilityUnit = this.form.responsibilityUnit + '' this.form.projectClassify = this.form.projectClassify + '' @@ -524,11 +670,17 @@ export default { } else { this.$set(this.form, 'isFrame', 0) } + if(this.form.startTime && this.form.endTime) { + let arr = [] + arr.push(this.form.startTime, this.form.endTime) + this.$set(this.form, 'reportTime', arr) + this.$set(this.form, 'isTime', 0) + } else { + this.$set(this.form, 'isTime', 1) + } this.form.fileList = this.form.fileName || [] this.fileList = this.form.fileName || [] - let arr = [] - arr.push(this.form.startTime, this.form.endTime) - this.$set(this.form, 'reportTime', arr) + // console.log(this.form,"form"); this.templateList = this.templateListLock.filter((item) => { @@ -553,6 +705,8 @@ export default { this.$modal.msgSuccess("补录成功"); this.open = false; this.isReplace = false; + this.isForm = false; + this.isApprovalDisabled = false; this.getList(); }) } else if (this.form.id != undefined) { @@ -561,6 +715,8 @@ export default { this.$modal.msgSuccess("修改成功"); this.open = false; this.isReplace = false; + this.isForm = false; + this.isApprovalDisabled = false; this.getList(); }); } else { @@ -569,6 +725,8 @@ export default { this.$modal.msgSuccess("新增成功"); this.open = false; this.isReplace = false; + this.isForm = false; + this.isApprovalDisabled = false; this.getList(); }); } @@ -623,14 +781,14 @@ export default { // 责任单位选择 changeResponsibilityUnit(valid) { this.unitId = valid; - - if(this.projectId) { + if(this.projectBigType && this.projectMiddleType && this.projectSmallType) { + this.isForm = false; // this.templateList = this.templateListLock.filter((item) => { // return item.responsibilityUnit == valid // }) this.templateList = [] this.form.templateId = "" - allList({responsibilityUnit:Number(valid),projectClassify:Number(this.projectId)}).then(res=>{ + allList({responsibilityUnit:Number(valid),projectBigType:this.projectBigType,projectMiddleType:this.projectMiddleType,projectSmallType:this.projectSmallType}).then(res=>{ // console.log(res); this.templateList = res.data || [] }) @@ -640,17 +798,28 @@ export default { }, // 项目分类选择 changeProjectClassify(valId){ - this.projectId = valId - if(this.unitId) { - // this.templateList = this.templateListLock.filter((item) => { - // return item.responsibilityUnit == valId - // }) - this.templateList = [] - this.form.templateId = "" - allList({responsibilityUnit:Number(this.unitId),projectClassify:Number(valId)}).then(res=>{ - // console.log(res); - this.templateList = res.data || [] - }) + if(valId) { + this.projectBigType = valId[0] + this.projectMiddleType = valId[1] + this.projectSmallType = valId[2] + if(this.projectBigType == 11) { + this.isApprovalDisabled = true; + this.form.isApproval = 0; + } else { + this.isApprovalDisabled = false; + } + if(this.unitId) { + this.isForm = false; + // this.templateList = this.templateListLock.filter((item) => { + // return item.responsibilityUnit == valId + // }) + this.templateList = [] + this.form.templateId = "" + allList({responsibilityUnit:Number(this.unitId),projectBigType:this.projectBigType,projectMiddleType:this.projectMiddleType,projectSmallType:this.projectSmallType}).then(res=>{ + // console.log(res); + this.templateList = res.data || [] + }) + } } }, changeTemplate(){ diff --git a/src/views/onlineDeclaration/pendingReview/index.vue b/src/views/onlineDeclaration/pendingReview/index.vue index f1a87a9..544727b 100644 --- a/src/views/onlineDeclaration/pendingReview/index.vue +++ b/src/views/onlineDeclaration/pendingReview/index.vue @@ -164,7 +164,7 @@
审批通过 - 审批驳回 + 审批不通过 退回修改
@@ -308,7 +308,7 @@ export default { }, /** 新增按钮操作 */ handleView(row) { - this.$router.push({name: 'declareDetailContent',query: { + this.$router.push({name: 'onlineDeclareInfo',query: { templateId: row.templateId, templateRecordId: row.templateRecordId, pageType: "detail", diff --git a/src/views/onlineDeclaration/records/index.vue b/src/views/onlineDeclaration/records/index.vue index bca43e6..0a79021 100644 --- a/src/views/onlineDeclaration/records/index.vue +++ b/src/views/onlineDeclaration/records/index.vue @@ -82,12 +82,16 @@ 全部 - 初审 - 复审 - - 终审 - - 终审通过 + 待填报 + 已填报 + 初审中 + 初审驳回 + 初审不通过 + 复审中 + 复审不通过 + 终审中 + 终审不通过 + 评审通过 @@ -174,6 +178,11 @@
+ + + @@ -218,6 +227,7 @@ 初审不通过 复审不通过 + 已填报 终审不通过 初审驳回 @@ -366,7 +376,7 @@ import * as XLSX from 'xlsx' import { Message, Loading } from 'element-ui' export default { name: "Records", - dicts: ['sys_show_hide', 'sys_normal_disable', 'bms_declaration_type', 'bms_responsibility_unit', 'bms_level', 'bms_template_type', 'bms_declaration_channels'], + dicts: ['sys_show_hide', 'sys_normal_disable', 'bms_declaration_type', 'bms_responsibility_unit', 'bms_level', 'bms_template_type', 'bms_declaration_channels', "project_small_type"], data() { return { userType: this.$store.state.user.userType, @@ -463,7 +473,7 @@ export default { this.multipleSelection = val; }, routerGo() { - this.$router.push({ name: 'supplementaryNew' }).catch(()=>{}); + this.$router.push({ name: 'onlineDeclareTInfo' }).catch(()=>{}); }, /** 查询菜单列表 */ getList() { @@ -570,7 +580,7 @@ export default { /** 开始填报按钮操作 */ handleAdd(row){ // console.log(row); - this.$router.push({name: 'declareAddContent',query: { + this.$router.push({name: 'onlineDeclareAdd',query: { templateId: row.templateId, templateRecordId: row.templateRecordId, declarationId: row.id, @@ -579,7 +589,7 @@ export default { }, /** 查看审核详情操作 */ handleDetail(row){ - this.$router.push({name: 'declareDetailContent',query: { + this.$router.push({name: 'onlineDeclareInfo',query: { templateId: row.templateId, // templateRecordId: row.templateRecordId, pageType: "detail", @@ -621,7 +631,7 @@ export default { submitForm: function() { this.$refs["form"].validate(valid => { if (valid) { - this.$router.push({name: 'declareAddContent',query: { + this.$router.push({name: 'onlineDeclareAdd',query: { templateId: this.form.templateId, templateRecordId: this.form.templateRecordId, pageType: "add", @@ -631,7 +641,7 @@ export default { }, /** 编辑按钮 */ handleEdit(row) { - this.$router.push({name: 'declareDetailContent',query: { + this.$router.push({name: 'onlineDeclareInfo',query: { templateId: row.templateId, templateRecordId: row.templateRecordId, pageType: "edit", diff --git a/src/views/onlineDeclaration/template/index.vue b/src/views/onlineDeclaration/template/index.vue index 4c9bce1..70ade6e 100644 --- a/src/views/onlineDeclaration/template/index.vue +++ b/src/views/onlineDeclaration/template/index.vue @@ -1,58 +1,42 @@ - + + + - + @@ -130,19 +132,41 @@ id="L-pagination" v-show="total>0" :total="total" - :page.sync="queryParams.pageNum" - :limit.sync="queryParams.pageSize" + :page.sync="queryParams.current" + :limit.sync="queryParams.size" @pagination="getList" /> + + + + + + + + +
diff --git a/src/views/onlineDeclaration/templateDetail/index.vue b/src/views/onlineDeclaration/templateDetail/index.vue index ed41a84..abdba6d 100644 --- a/src/views/onlineDeclaration/templateDetail/index.vue +++ b/src/views/onlineDeclaration/templateDetail/index.vue @@ -5,7 +5,16 @@ - 项目分类: + 模板名称:{{ info.templateName }} + + + 项目大类: + + + 项目中类: + + + 项目小类: @@ -72,16 +81,36 @@ 截止目前员工人数 + + + + + + + + + + + +
- + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -242,6 +316,15 @@
+
+ + + + + +

【上传材料】

@@ -358,6 +441,9 @@
其他相关情况说明
+
+
{{ item.label }}
+
@@ -143,7 +143,7 @@ - + @@ -163,6 +163,8 @@
发布人:{{ addFrom.createBy }}
发布时间:{{ addFrom.enterTime }}
+
发文单位:{{ addFrom.enterUnit }}
+
政策等级:
@@ -179,14 +181,17 @@ diff --git a/src/views/project/projectInfo/components/tabFour/index.vue b/src/views/project/projectInfo/components/tabFour/index.vue index 158f214..2e4b381 100644 --- a/src/views/project/projectInfo/components/tabFour/index.vue +++ b/src/views/project/projectInfo/components/tabFour/index.vue @@ -279,7 +279,7 @@ export default { type: "warning", }) .then(() => { - delJMemorandum({ id: row.id }).then((res) => { + delJMemorandum(row.id).then((res) => { this.getList(); this.$message({ type: "success", diff --git a/src/views/project/projectInfo/components/tabOne/index.vue b/src/views/project/projectInfo/components/tabOne/index.vue index 9b987de..4e307f1 100644 --- a/src/views/project/projectInfo/components/tabOne/index.vue +++ b/src/views/project/projectInfo/components/tabOne/index.vue @@ -51,6 +51,12 @@ export default { default:()=>{ return {}; } + }, + enterInfo:{ + type:Object, + default:()=>{ + return {} + } } }, watch: { @@ -65,19 +71,20 @@ export default { let obj = {}; obj["key"] = key; - if(key == "是否获得园区其他经营奖励") { - obj["value"] = newInfo[key] == 0 ? '是' : newInfo[key] == 1 ? '否':''; - } else if(key == "申报类型") { - obj["value"] = newInfo[key] == 1 ? '两业融合示范企业' : newInfo[key] == 2 ? '制造业企业设立财务独立核算的制造服务业职能部门' : newInfo[key] == 3 ? "制造业企业剥离服务业务成立独立的法人制造业企业剥离服务业务成立独立的法人" : ""; - } else if(key == "所属类型"){ - obj["value"] = newInfo[key] == 0 ? '市场服务类' : newInfo[key] == 1 ? '公共服务类' : ""; - } else if(key == "所属行业"){ - obj["value"] = newInfo[key] == 1 ? '轻工' : newInfo[key] == 2 ? '纺织' : newInfo[key] == 3 ? '冶金' : newInfo[key] == 4 ? '化工' : newInfo[key] == 5 ? '建材' : newInfo[key] == 6 ? '机械加工' : ""; - } else if(key == "类别"){ - obj["value"] = newInfo[key] == 1 ? '淘汰落后生产工艺装备' : newInfo[key] == 2 ? '退出低端低效生产工艺装备' : ""; - } else { - obj["value"] = newInfo[key] ? newInfo[key] : '暂无' - } + // if(key == "是否获得园区其他经营奖励") { + // obj["value"] = newInfo[key] == 0 ? '是' : newInfo[key] == 1 ? '否':''; + // } else if(key == "申报类型") { + // obj["value"] = newInfo[key] == 1 ? '两业融合示范企业' : newInfo[key] == 2 ? '制造业企业设立财务独立核算的制造服务业职能部门' : newInfo[key] == 3 ? "制造业企业剥离服务业务成立独立的法人制造业企业剥离服务业务成立独立的法人" : ""; + // } else if(key == "所属类型"){ + // obj["value"] = newInfo[key] == 0 ? '市场服务类' : newInfo[key] == 1 ? '公共服务类' : ""; + // } else if(key == "所属行业"){ + // obj["value"] = newInfo[key] == 1 ? '轻工' : newInfo[key] == 2 ? '纺织' : newInfo[key] == 3 ? '冶金' : newInfo[key] == 4 ? '化工' : newInfo[key] == 5 ? '建材' : newInfo[key] == 6 ? '机械加工' : ""; + // } else if(key == "类别"){ + // obj["value"] = newInfo[key] == 1 ? '淘汰落后生产工艺装备' : newInfo[key] == 2 ? '退出低端低效生产工艺装备' : ""; + // } else { + // obj["value"] = newInfo[key] ? newInfo[key] : '暂无' + // } + obj["value"] = newInfo[key] ? newInfo[key] : '暂无' obj["span"] = 1; arr.push(obj) } @@ -121,7 +128,16 @@ export default { } this.$nextTick(()=>{ - this.info = [...arr] + if(this.enterInfo.projectEndTime) { + let time = { + key:"预计完成时间", + value: this.enterInfo.projectEndTime + } + this.info = [...arr,time] + } else { + this.info = [...arr] + } + }) } diff --git a/src/views/project/projectInfo/components/tabTwo/index.vue b/src/views/project/projectInfo/components/tabTwo/index.vue index cbb59bc..a55f573 100644 --- a/src/views/project/projectInfo/components/tabTwo/index.vue +++ b/src/views/project/projectInfo/components/tabTwo/index.vue @@ -1,9 +1,9 @@ @@ -24,6 +141,8 @@ export default { name:"tabTwo", data() { return { + // 判断登陆用户是何身份⌈ 01 : 企业 02 : 政务 ⌋ + userType: this.$store.state.user.userType, } }, props:{ @@ -35,6 +154,20 @@ export default { } }, methods:{ + goEnterprice(creditCode){ + // console.log(creditCode); + if(this.userType == '01') { + this.$router.push({ + name: 'EenterInfo', + query: { userId: this.info.id, creditCode: creditCode } + }) + } else { + this.$router.push({ + name: 'enterpriselibraryInfo', + query: { userId: this.info.id, creditCode: creditCode } + }) + } + }, }, } diff --git a/src/views/project/projectInfo/index.vue b/src/views/project/projectInfo/index.vue index bbb0713..417f98a 100644 --- a/src/views/project/projectInfo/index.vue +++ b/src/views/project/projectInfo/index.vue @@ -3,23 +3,34 @@
-
{{ item.name }}
+
{{ item.name }}
- - - - + + + + +
@@ -34,31 +45,78 @@ diff --git a/vue.config.js b/vue.config.js index a7a80de..405310d 100644 --- a/vue.config.js +++ b/vue.config.js @@ -19,7 +19,7 @@ module.exports = { // 默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上 // 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。 // demo/JinJiHu - publicPath: process.env.NODE_ENV === "production" ? "/demo/JinJiHu" : "/", + publicPath: process.env.NODE_ENV === "production" ? "./" : "/", // 在npm run build 或 yarn build 时 ,生成文件的目录名称(要和baseUrl的生产环境路径一致)(默认dist) outputDir: "dist", // 用于放置生成的静态资源 (js、css、img、fonts) 的;(项目打包之后,静态资源会放在这个文件夹下)