|
@@ -1,111 +1,90 @@
|
|
|
<template>
|
|
|
<div class="base">
|
|
|
- <div class="content">
|
|
|
- <div class="words">
|
|
|
- <h1>渐进、交互式文档生成</h1>
|
|
|
- <p>
|
|
|
- 覆盖房地产、土地和各类资产评估报告自动生成。<br>
|
|
|
- 支持测算表生成和下载,亦可以应用于文档。<br>
|
|
|
- 用户仅需提交必要评估物数据和测算数据,由平台自动生成商业级评估报告。
|
|
|
- </p>
|
|
|
- </div>
|
|
|
- <div class="option">
|
|
|
- <div class="create-btn">
|
|
|
- <button class="cssbuttons-io-button" @click="goto('house/parent')">
|
|
|
- 房地产
|
|
|
- <div class="icon">
|
|
|
- <svg
|
|
|
- height="24"
|
|
|
- width="24"
|
|
|
- viewBox="0 0 24 24"
|
|
|
- xmlns="http://www.w3.org/2000/svg"
|
|
|
- >
|
|
|
- <path d="M0 0h24v24H0z" fill="none"></path>
|
|
|
- <path
|
|
|
- d="M16.172 11l-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"
|
|
|
- fill="currentColor"
|
|
|
- ></path>
|
|
|
- </svg>
|
|
|
- </div>
|
|
|
- </button>
|
|
|
- <button class="cssbuttons-io-button" @click="goto('assets/parent')">
|
|
|
- 资产
|
|
|
- <div class="icon">
|
|
|
- <svg
|
|
|
- height="24"
|
|
|
- width="24"
|
|
|
- viewBox="0 0 24 24"
|
|
|
- xmlns="http://www.w3.org/2000/svg"
|
|
|
- >
|
|
|
- <path d="M0 0h24v24H0z" fill="none"></path>
|
|
|
- <path
|
|
|
- d="M16.172 11l-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"
|
|
|
- fill="currentColor"
|
|
|
- ></path>
|
|
|
- </svg>
|
|
|
- </div>
|
|
|
- </button>
|
|
|
- <button class="cssbuttons-io-button" @click="goto('planning')">
|
|
|
- 土地
|
|
|
- <div class="icon">
|
|
|
- <svg
|
|
|
- height="24"
|
|
|
- width="24"
|
|
|
- viewBox="0 0 24 24"
|
|
|
- xmlns="http://www.w3.org/2000/svg"
|
|
|
- >
|
|
|
- <path d="M0 0h24v24H0z" fill="none"></path>
|
|
|
- <path
|
|
|
- d="M16.172 11l-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"
|
|
|
- fill="currentColor"
|
|
|
- ></path>
|
|
|
- </svg>
|
|
|
- </div>
|
|
|
- </button>
|
|
|
+ <div class="content">
|
|
|
+ <div class="words">
|
|
|
+ <h1>渐进、交互式文档生成</h1>
|
|
|
+ <p>
|
|
|
+ 覆盖房地产、土地和各类资产评估报告自动生成。<br>
|
|
|
+ 支持测算表生成和下载,亦可以应用于文档。<br>
|
|
|
+ 用户仅需提交必要评估物数据和测算数据,由平台自动生成商业级评估报告。
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ <div class="option">
|
|
|
+ <div class="create-btn">
|
|
|
+ <button class="cssbuttons-io-button" @click="goto('house/parent')">
|
|
|
+ 房地产
|
|
|
+ <div class="icon">
|
|
|
+ <svg height="24" width="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
|
|
+ <path d="M0 0h24v24H0z" fill="none"></path>
|
|
|
+ <path d="M16.172 11l-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"
|
|
|
+ fill="currentColor"></path>
|
|
|
+ </svg>
|
|
|
+ </div>
|
|
|
+ </button>
|
|
|
+ <button class="cssbuttons-io-button" @click="goto('assets/parent')">
|
|
|
+ 资产
|
|
|
+ <div class="icon">
|
|
|
+ <svg height="24" width="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
|
|
+ <path d="M0 0h24v24H0z" fill="none"></path>
|
|
|
+ <path d="M16.172 11l-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"
|
|
|
+ fill="currentColor"></path>
|
|
|
+ </svg>
|
|
|
+ </div>
|
|
|
+ </button>
|
|
|
+ <button class="cssbuttons-io-button" @click="goto('planning')">
|
|
|
+ 土地
|
|
|
+ <div class="icon">
|
|
|
+ <svg height="24" width="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
|
|
+ <path d="M0 0h24v24H0z" fill="none"></path>
|
|
|
+ <path d="M16.172 11l-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"
|
|
|
+ fill="currentColor"></path>
|
|
|
+ </svg>
|
|
|
+ </div>
|
|
|
+ </button>
|
|
|
+ </div>
|
|
|
+ <div class="example-list">
|
|
|
+ <el-card class="report-item no-border" shadow="never" v-for="(doc, id) in page">
|
|
|
+ <div class="report-icon">
|
|
|
+ <img :src="docLog(doc.docType)" style="width: 52px; height: 52px;" />
|
|
|
+ </div>
|
|
|
+ <div class="report-text">
|
|
|
+ <div>
|
|
|
+ <span class="report-text-type">{{ doc.businessType + doc.businessCate + '【' + doc.docNo + '】' }}</span>
|
|
|
+ <span> 一 </span>
|
|
|
+ <span class="report-text-name">{{ doc.docName }}</span>
|
|
|
</div>
|
|
|
- <div class="example-list">
|
|
|
- <el-card class="report-item no-border" shadow="never" v-for="(doc,id) in page">
|
|
|
- <div class="report-icon">
|
|
|
- <img :src="docLog(doc.docType)" style="width: 52px; height: 52px;"/>
|
|
|
- </div>
|
|
|
- <div class="report-text">
|
|
|
- <div>
|
|
|
- <span class="report-text-type">{{doc.businessType+doc.businessCate+'【'+doc.docNo+'】'}}</span>
|
|
|
- <span> 一 </span>
|
|
|
- <span class="report-text-name">{{ doc.docName }}</span>
|
|
|
- </div>
|
|
|
- <div style="padding-top: 5px;">
|
|
|
- <span>
|
|
|
- <el-icon>
|
|
|
- <Avatar />
|
|
|
- </el-icon>
|
|
|
- {{ doc.consignor }}</span>
|
|
|
- <span>
|
|
|
- <el-tag style="margin-left: 5px;">
|
|
|
- {{ doc.businessType }}
|
|
|
- </el-tag>
|
|
|
- <el-tag style="margin-left: 5px;" type="success">
|
|
|
- {{ doc.businessCate }}
|
|
|
- </el-tag>
|
|
|
- </span>
|
|
|
- <span style="float: right; color:darkgrey">
|
|
|
- {{ doc.updateTime }}
|
|
|
- </span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="report-button">
|
|
|
+ <div style="padding-top: 5px;">
|
|
|
+ <span>
|
|
|
<el-icon>
|
|
|
- <Download />
|
|
|
+ <Avatar />
|
|
|
</el-icon>
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
+ {{ doc.consignor }}</span>
|
|
|
+ <span>
|
|
|
+ <el-tag style="margin-left: 5px;">
|
|
|
+ {{ doc.businessType }}
|
|
|
+ </el-tag>
|
|
|
+ <el-tag style="margin-left: 5px;" type="success">
|
|
|
+ {{ doc.businessCate }}
|
|
|
+ </el-tag>
|
|
|
+ </span>
|
|
|
+ <span style="float: right; color:darkgrey">
|
|
|
+ {{ doc.updateTime }}
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- <div class="pagination">
|
|
|
- <el-pagination background layout="prev, pager, next" style="--el-color-primary: #ff6154"
|
|
|
- :page-count="listQuery.pages" v-model:current-page="listQuery.current" @current-change="getDocuments" />
|
|
|
+ <div class="report-button">
|
|
|
+ <el-icon>
|
|
|
+ <Download />
|
|
|
+ </el-icon>
|
|
|
</div>
|
|
|
+ </el-card>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
+ <div class="pagination">
|
|
|
+ <el-pagination background layout="prev, pager, next" style="--el-color-primary: #ff6154"
|
|
|
+ :page-count="listQuery.pages" v-model:current-page="listQuery.current" @current-change="getDocuments" />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -122,12 +101,12 @@ import folderLog from '../../assets/icons/folder.png'
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
- page:[],
|
|
|
- listQuery:{
|
|
|
- current: 1,
|
|
|
- size: 10,
|
|
|
- pages:null,
|
|
|
- total:null
|
|
|
+ page: [],
|
|
|
+ listQuery: {
|
|
|
+ current: 1,
|
|
|
+ size: 10,
|
|
|
+ pages: null,
|
|
|
+ total: null
|
|
|
}
|
|
|
}
|
|
|
},
|
|
@@ -138,40 +117,57 @@ export default {
|
|
|
...mapStores(useUserStore),
|
|
|
},
|
|
|
created() {
|
|
|
- // 如果路由上带了token,说明是从oa刚跳转过来,需要进行登录
|
|
|
- if (this.$route.query.token) {
|
|
|
- loginByOAInfo(this.$route.query.token).then(res => {
|
|
|
- setToken(res.data.tokenValue);
|
|
|
- this.userStore.setUserInfo(res.data);
|
|
|
- })
|
|
|
- }
|
|
|
- // 登录成功,重新跳转到主页
|
|
|
- this.$router.push(`/home/index`)
|
|
|
+ this.login();
|
|
|
this.getDocuments();
|
|
|
},
|
|
|
methods: {
|
|
|
goto(path) {
|
|
|
this.$router.push(`/home/${path}`)
|
|
|
},
|
|
|
+ login() {
|
|
|
+ // 如果路由上带了token,说明是从oa刚跳转过来,需要进行登录
|
|
|
+ // 解析url获取token
|
|
|
+ var url = window.location.href; //获取当前url
|
|
|
+ var dz_url = url.split('#')[0]; //获取#之前的字符串
|
|
|
+ var cs = url.split('?')[1]; //获取?之后的参数字符串
|
|
|
+ // 判断参数是否为空
|
|
|
+ if (cs) {
|
|
|
+ var cs_arr = cs.split('&'); //参数字符串分割为数组
|
|
|
+ var params = {};
|
|
|
+ for (var i = 0; i < cs_arr.length; i++) { //遍历数组,拿到json对象
|
|
|
+ params[cs_arr[i].split('=')[0]] = cs_arr[i].split('=')[1]
|
|
|
+ }
|
|
|
+
|
|
|
+ let token = params.token;
|
|
|
+ if (token) {
|
|
|
+ loginByOAInfo(token).then(res => {
|
|
|
+ setToken(res.data.tokenValue);
|
|
|
+ this.userStore.setUserInfo(res.data);
|
|
|
+ // 登录成功,重新跳转到主页
|
|
|
+ this.$router.push(`/home/index`)
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- getDocuments(){
|
|
|
- documentProduction.page(this.listQuery).then(res=>{
|
|
|
- if (res.code === 200){
|
|
|
- this.page = res.data.records;
|
|
|
- this.listQuery.pages = res.data.pages;
|
|
|
+ },
|
|
|
+ getDocuments() {
|
|
|
+ documentProduction.page(this.listQuery).then(res => {
|
|
|
+ if (res.code === 200) {
|
|
|
+ this.page = res.data.records;
|
|
|
+ this.listQuery.pages = res.data.pages;
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
- docLog(docType){
|
|
|
- switch(docType){
|
|
|
+ docLog(docType) {
|
|
|
+ switch (docType) {
|
|
|
case 'CALCULATE_TABLE':
|
|
|
return excelLog;
|
|
|
case 'FOLDER':
|
|
|
- return folderLog;
|
|
|
- default :
|
|
|
- return wordLog;
|
|
|
+ return folderLog;
|
|
|
+ default:
|
|
|
+ return wordLog;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -185,9 +181,9 @@ export default {
|
|
|
}
|
|
|
|
|
|
/* .content { */
|
|
|
- /* margin-left: 160px; */
|
|
|
- /* margin-right: 160px; */
|
|
|
- /* padding: 50px 20px 20px 20px; */
|
|
|
+/* margin-left: 160px; */
|
|
|
+/* margin-right: 160px; */
|
|
|
+/* padding: 50px 20px 20px 20px; */
|
|
|
/* } */
|
|
|
|
|
|
.words {
|
|
@@ -281,7 +277,8 @@ p {
|
|
|
border: none;
|
|
|
border-radius: 0.6em;
|
|
|
}
|
|
|
-.pagination{
|
|
|
+
|
|
|
+.pagination {
|
|
|
margin-top: 10px;
|
|
|
margin-left: 160px;
|
|
|
width: 58.5%;
|