Commit 740a261f by zhangbin

gx

parent 3e5eb55b
{
"editor.suggest.snippetsPreventQuickSuggestions": false
}
\ No newline at end of file
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
"axios": "^0.24.0", "axios": "^0.24.0",
"core-js": "^3.6.4", "core-js": "^3.6.4",
"crypto-js": "^4.1.1", "crypto-js": "^4.1.1",
"default-passive-events": "^2.0.0",
"docxtemplater": "^3.31.3", "docxtemplater": "^3.31.3",
"echarts": "^4.8.0", "echarts": "^4.8.0",
"element-ui": "^2.15.6", "element-ui": "^2.15.6",
...@@ -5339,6 +5340,11 @@ ...@@ -5339,6 +5340,11 @@
"node": ">= 8" "node": ">= 8"
} }
}, },
"node_modules/default-passive-events": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/default-passive-events/-/default-passive-events-2.0.0.tgz",
"integrity": "sha512-eMtt76GpDVngZQ3ocgvRcNCklUMwID1PaNbCNxfpDXuiOXttSh0HzBbda1HU9SIUsDc02vb7g9+3I5tlqe/qMQ=="
},
"node_modules/defaults": { "node_modules/defaults": {
"version": "1.0.3", "version": "1.0.3",
"resolved": "https://registry.npmmirror.com/defaults/-/defaults-1.0.3.tgz", "resolved": "https://registry.npmmirror.com/defaults/-/defaults-1.0.3.tgz",
...@@ -19606,6 +19612,11 @@ ...@@ -19606,6 +19612,11 @@
} }
} }
}, },
"default-passive-events": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/default-passive-events/-/default-passive-events-2.0.0.tgz",
"integrity": "sha512-eMtt76GpDVngZQ3ocgvRcNCklUMwID1PaNbCNxfpDXuiOXttSh0HzBbda1HU9SIUsDc02vb7g9+3I5tlqe/qMQ=="
},
"defaults": { "defaults": {
"version": "1.0.3", "version": "1.0.3",
"resolved": "https://registry.npmmirror.com/defaults/-/defaults-1.0.3.tgz", "resolved": "https://registry.npmmirror.com/defaults/-/defaults-1.0.3.tgz",
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
"axios": "^0.24.0", "axios": "^0.24.0",
"core-js": "^3.6.4", "core-js": "^3.6.4",
"crypto-js": "^4.1.1", "crypto-js": "^4.1.1",
"default-passive-events": "^2.0.0",
"docxtemplater": "^3.31.3", "docxtemplater": "^3.31.3",
"echarts": "^4.8.0", "echarts": "^4.8.0",
"element-ui": "^2.15.6", "element-ui": "^2.15.6",
......
...@@ -2,11 +2,6 @@ import { ...@@ -2,11 +2,6 @@ import {
api, api,
formatParams formatParams
} from "@/utils/axios"; } from "@/utils/axios";
import {
api1,
formatParams1,
config
} from '@/utils/request'
/** /**
* 购房契税补贴住建局审核申请列表 * 购房契税补贴住建局审核申请列表
...@@ -52,8 +47,8 @@ export function mattersGet(params) { ...@@ -52,8 +47,8 @@ export function mattersGet(params) {
* 修改状态 * 修改状态
*/ */
export function mattersUpdateState(params) { export function mattersUpdateState(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talent/mattersUpdateState` url: `/admin-api/talent/mattersUpdateState`
})) }))
} }
...@@ -62,8 +57,8 @@ export function mattersUpdateState(params) { ...@@ -62,8 +57,8 @@ export function mattersUpdateState(params) {
* @returns <promise> * @returns <promise>
*/ */
export function mattersGuideList(params) { export function mattersGuideList(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talent/mattersGuideList` url: `/admin-api/talent/mattersGuideList`
})) }))
} }
...@@ -71,8 +66,8 @@ export function mattersGuideList(params) { ...@@ -71,8 +66,8 @@ export function mattersGuideList(params) {
* 人才事项部门列表 * 人才事项部门列表
*/ */
export function mattersDepartmentList(params) { export function mattersDepartmentList(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talent/mattersDepartmentList` url: `/admin-api/talent/mattersDepartmentList`
})) }))
} }
...@@ -81,8 +76,8 @@ export function mattersDepartmentList(params) { ...@@ -81,8 +76,8 @@ export function mattersDepartmentList(params) {
* @returns * @returns
*/ */
export function mattersGuideGet(params) { export function mattersGuideGet(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talent/mattersGuideGet` url: `/admin-api/talent/mattersGuideGet`
})) }))
} }
...@@ -91,8 +86,8 @@ export function mattersGuideGet(params) { ...@@ -91,8 +86,8 @@ export function mattersGuideGet(params) {
* @returns <promise> * @returns <promise>
*/ */
export function mattersGuideAdd(params) { export function mattersGuideAdd(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talent/mattersGuideAdd` url: `/admin-api/talent/mattersGuideAdd`
})) }))
} }
...@@ -102,8 +97,8 @@ export function mattersGuideAdd(params) { ...@@ -102,8 +97,8 @@ export function mattersGuideAdd(params) {
* @returns * @returns
*/ */
export function mattersGuideUpdate(params) { export function mattersGuideUpdate(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talent/mattersGuideUpdate` url: `/admin-api/talent/mattersGuideUpdate`
})) }))
} }
...@@ -112,8 +107,8 @@ export function mattersGuideUpdate(params) { ...@@ -112,8 +107,8 @@ export function mattersGuideUpdate(params) {
* @returns <promise> * @returns <promise>
*/ */
export function mattersGuideDelete(params) { export function mattersGuideDelete(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talent/mattersGuideDelete` url: `/admin-api/talent/mattersGuideDelete`
})) }))
} }
...@@ -143,8 +138,8 @@ export function mattersHousingUpdate(params) { ...@@ -143,8 +138,8 @@ export function mattersHousingUpdate(params) {
* 记录 * 记录
*/ */
export function mattersGetReason(params) { export function mattersGetReason(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talent/mattersGetReason` url: `/admin-api/talent/mattersGetReason`
})) }))
} }
...@@ -178,3 +173,12 @@ export function dtSubsidy(params) { ...@@ -178,3 +173,12 @@ export function dtSubsidy(params) {
url: `/admin-api/deedTax/dtSubsidy` url: `/admin-api/deedTax/dtSubsidy`
})) }))
} }
/**
* 查询附件
*/
export function queryAttacheFile(params) {
return api(Object.assign(formatParams('GET', params), {
url: `/admin-api/housing/queryAttacheFile`
}))
}
\ No newline at end of file
...@@ -2,11 +2,11 @@ import { ...@@ -2,11 +2,11 @@ import {
api, api,
formatParams formatParams
} from "@/utils/axios"; } from "@/utils/axios";
import { // import {
api1, // api1,
formatParams1, // formatParams1,
config // config
} from '@/utils/request' // } from '@/utils/request'
/** /**
* 购房契税补贴住建局审核申请列表 * 购房契税补贴住建局审核申请列表
...@@ -43,8 +43,8 @@ export function mattersHouseReviewerList(params) { ...@@ -43,8 +43,8 @@ export function mattersHouseReviewerList(params) {
* 购房补贴4个初审部门通过 * 购房补贴4个初审部门通过
*/ */
export function mattersHouseReviewerPass(params) { export function mattersHouseReviewerPass(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talentMatters/mattersHouseReviewerPass` url: `/admin-api/house/mattersHouseReviewerPass`
})) }))
} }
...@@ -52,8 +52,8 @@ export function mattersHouseReviewerPass(params) { ...@@ -52,8 +52,8 @@ export function mattersHouseReviewerPass(params) {
* 购房补贴4个初审部门拒绝 * 购房补贴4个初审部门拒绝
*/ */
export function mattersHouseReviewerReject(params) { export function mattersHouseReviewerReject(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talentMatters/mattersHouseReviewerReject` url: `/admin-api/house/mattersHouseReviewerReject`
})) }))
} }
...@@ -62,8 +62,8 @@ export function mattersHouseReviewerReject(params) { ...@@ -62,8 +62,8 @@ export function mattersHouseReviewerReject(params) {
* 购房补贴4个初审部门操作记录 * 购房补贴4个初审部门操作记录
*/ */
export function mattersHouseRevieweReason(params) { export function mattersHouseRevieweReason(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talentMatters/mattersHouseReviewerReason` url: `/admin-api/house/mattersHouseReviewerReason`
})) }))
} }
...@@ -71,8 +71,8 @@ export function mattersHouseRevieweReason(params) { ...@@ -71,8 +71,8 @@ export function mattersHouseRevieweReason(params) {
* 购房补贴住建局操作记录 * 购房补贴住建局操作记录
*/ */
export function mattersHouseReason(params) { export function mattersHouseReason(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talentMatters/mattersHouseReason` url: `/admin-api/house/mattersHouseReason`
})) }))
} }
...@@ -80,8 +80,8 @@ export function mattersHouseReason(params) { ...@@ -80,8 +80,8 @@ export function mattersHouseReason(params) {
* 购房补贴申请员工列表 * 购房补贴申请员工列表
*/ */
export function mattersHouseStaffList(params) { export function mattersHouseStaffList(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talentMatters/mattersHouseStaffList` url: `/admin-api/house/mattersHouseStaffList`
})) }))
} }
...@@ -89,8 +89,8 @@ export function mattersHouseStaffList(params) { ...@@ -89,8 +89,8 @@ export function mattersHouseStaffList(params) {
* 购房补贴住建局拒绝 * 购房补贴住建局拒绝
*/ */
export function mattersHouseReject(params) { export function mattersHouseReject(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talentMatters/mattersHouseReject` url: `/admin-api/house/mattersHouseReject`
})) }))
} }
...@@ -98,7 +98,16 @@ export function mattersHouseReject(params) { ...@@ -98,7 +98,16 @@ export function mattersHouseReject(params) {
* 购房补贴住建局通过 * 购房补贴住建局通过
*/ */
export function mattersHousePass(params) { export function mattersHousePass(params) {
return api1(Object.assign(formatParams1('POST', params), { return api(Object.assign(formatParams('POST', params), {
url: `${config.proxy}talentMatters/mattersHousePass` url: `/admin-api/house/mattersHousePass`
}))
}
/**
* 查询附件
*/
export function queryAttacheFile(params) {
return api(Object.assign(formatParams('GET', params), {
url: `/admin-api/house/queryAttacheFile`
})) }))
} }
\ No newline at end of file
import { api1, formatParams1, config } from '@/utils/request' import { api1, formatParams1, config } from '@/utils/request'
import {
api,
formatParams
} from "@/utils/axios";
import { getToken } from '@/utils/auth' import { getToken } from '@/utils/auth'
/** /**
...@@ -56,9 +60,24 @@ export function uploadFile(params) { ...@@ -56,9 +60,24 @@ export function uploadFile(params) {
} }
let formData = new FormData(); let formData = new FormData();
formData.append('file', params); formData.append('file', params);
return api1(Object.assign(formatParams1('POST', formData, header), { return api(Object.assign(formatParams('POST', formData, header), {
url: `${config.proxy}file/uploadWordFile` url: `/admin-api/file/uploadWordFile`
// url: `${config.proxy}file/deedTaxWorldUpload` }))
}
/**
* 上传人才政策文件
*/
export function uploadTalentFile(params) {
console.log('params---',params);
let header = {
'Content-Type': 'multipart/form-data'
}
let formData = new FormData();
formData.append('file', params);
return api(Object.assign(formatParams('POST', formData, header), {
url: `/admin-api/file/uploadTalentFile`
})) }))
} }
......
...@@ -4,6 +4,7 @@ import router from './router' ...@@ -4,6 +4,7 @@ import router from './router'
import ElementUI from 'element-ui' import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css' import 'element-ui/lib/theme-chalk/index.css'
import { getToken } from "./utils/auth"; import { getToken } from "./utils/auth";
import 'default-passive-events'
Vue.use(ElementUI) Vue.use(ElementUI)
Vue.config.productionTip = false Vue.config.productionTip = false
......
import axios from "axios"; import axios from "axios";
import { baseUrl } from "@/config"; import {
import { getToken } from "@/utils/auth"; Message
} from "element-ui";
import {
baseUrl
} from "@/config";
import {
getToken
} from "@/utils/auth";
import router from "@/router"; import router from "@/router";
const api = axios.create({ const api = axios.create({
baseURL: `${baseUrl}`, baseURL: `${baseUrl}`,
...@@ -13,7 +20,10 @@ api.interceptors.request.use( ...@@ -13,7 +20,10 @@ api.interceptors.request.use(
if (config.data) config.data.appId = appId; if (config.data) config.data.appId = appId;
return config; return config;
}, },
(error) => ({ status: 0, msg: error.message }) (error) => ({
status: 0,
msg: error.message
})
); );
// 请求返回 // 请求返回
api.interceptors.response.use( api.interceptors.response.use(
...@@ -40,7 +50,7 @@ api.interceptors.response.use( ...@@ -40,7 +50,7 @@ api.interceptors.response.use(
error.response.data.status == 500 error.response.data.status == 500
) { ) {
window.localStorage.clear(); window.localStorage.clear();
router.push("/login"); router.replace("/login");
} }
return Promise.resolve(returnData); return Promise.resolve(returnData);
} }
...@@ -57,6 +67,10 @@ const checkCode = (res) => { ...@@ -57,6 +67,10 @@ const checkCode = (res) => {
msg: res.data.message, msg: res.data.message,
}; };
return returnData; return returnData;
} else if (res.data.code == 401) {
Message.error('登录已失效,请重新登录')
window.localStorage.clear();
router.replace('/login')
} else { } else {
//统一处理错误 //统一处理错误
const returnData = { const returnData = {
...@@ -90,7 +104,7 @@ const formatParams = (method = "GET", params, type) => { ...@@ -90,7 +104,7 @@ const formatParams = (method = "GET", params, type) => {
} }
let headers = { let headers = {
"Content-Type": contentType, "Content-Type": contentType,
"Authorization": getToken() ? ( 'Bearer ' + getToken()) : "", "Authorization": getToken() ? ('Bearer ' + getToken()) : "",
}; };
// appId设置 // appId设置
// 如果接口需要序列化 type == 'qs' // 如果接口需要序列化 type == 'qs'
...@@ -144,4 +158,8 @@ const formatParams = (method = "GET", params, type) => { ...@@ -144,4 +158,8 @@ const formatParams = (method = "GET", params, type) => {
} }
}; };
export { api, formatParams, baseUrl }; export {
\ No newline at end of file api,
formatParams,
baseUrl
};
\ No newline at end of file
...@@ -571,8 +571,9 @@ export default { ...@@ -571,8 +571,9 @@ export default {
} else { } else {
// 生产环境 // 生产环境
// http跨域 ---> https // http跨域 ---> https
let a = url.substr(0, 4) + 's' + url.substr(4) // let a = url.substr(0, 4) + 's' + url.substr(4)
window.location.href = a // window.location.href = a
window.location.href = url
} }
}, },
view(row) { view(row) {
......
...@@ -14,8 +14,7 @@ ...@@ -14,8 +14,7 @@
(this.searchForm.departmentCode == '10000032' && (this.searchForm.departmentCode == '10000032' &&
this.realEstateArea != '句容市') this.realEstateArea != '句容市')
"> ">
<el-select v-model="searchForm.checkArealEstateArea" placeholder="请选择不动产坐落辖市区" @change="onSubmit" <el-select v-model="searchForm.checkArealEstateArea" placeholder="请选择不动产坐落辖市区" @change="onSubmit" size="medium">
size="medium">
<el-option v-for="item in areaList" :key="item.id" :label="item.label" :value="item.id"> <el-option v-for="item in areaList" :key="item.id" :label="item.label" :value="item.id">
</el-option> </el-option>
</el-select> </el-select>
...@@ -262,8 +261,8 @@ ...@@ -262,8 +261,8 @@
<el-form label-width="120px" :model="params"> <el-form label-width="120px" :model="params">
<el-row> <el-row>
<el-form-item label="改派部门"> <el-form-item label="改派部门">
<el-cascader v-model="params.checkArea" placeholder="请选择部门" :options="checkAreaList" <el-cascader v-model="params.checkArea" placeholder="请选择部门" :options="checkAreaList" :show-all-levels="false"
:show-all-levels="false" @change="handleChange"> @change="handleChange">
</el-cascader> </el-cascader>
</el-form-item> </el-form-item>
</el-row> </el-row>
...@@ -602,7 +601,7 @@ export default { ...@@ -602,7 +601,7 @@ export default {
}; };
queryListDeedTaxFromInitDepartment(parmas).then((res) => { queryListDeedTaxFromInitDepartment(parmas).then((res) => {
this.loading = false; this.loading = false;
console.log(res.data) // console.log(res.data)
if (res.success) { if (res.success) {
this.pagination.total = res.data.total; this.pagination.total = res.data.total;
if (res.data.total) { if (res.data.total) {
...@@ -688,7 +687,7 @@ export default { ...@@ -688,7 +687,7 @@ export default {
record(row) { record(row) {
// console.log(row); // console.log(row);
queryDeedTaxRecord({ code: row.code }).then((res) => { queryDeedTaxRecord({ code: row.code }).then((res) => {
console.log(res.data); // console.log(res.data);
let reason = []; let reason = [];
res.data.map((item) => { res.data.map((item) => {
if (item) { if (item) {
...@@ -864,7 +863,7 @@ export default { ...@@ -864,7 +863,7 @@ export default {
}); });
console.log("out----", out); console.log("out----", out);
uploadWordFile( uploadWordFile(
new File([out], "deed-text" + new Date().valueOf(), { new File([out], "deed-text" + new Date().valueOf() + ".docx", {
type: out.type, type: out.type,
}) })
).then((res) => { ).then((res) => {
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
@Jump="jumpPage"> @Jump="jumpPage">
<el-table-column slot="housingType" label="事项类型" align="center"> <el-table-column slot="housingType" label="事项类型" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag>{{scope.row.housingType == 2 ? '住房' : scope.row.housingType == 3 ? '商办' : '-'}}</el-tag> <el-tag>{{ scope.row.housingType == 2 ? '住房' : scope.row.housingType == 3 ? '商办' : '-' }}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column width="120" label="状态" align="center"> <el-table-column width="120" label="状态" align="center">
...@@ -53,6 +53,10 @@ ...@@ -53,6 +53,10 @@
scope.row.housingState === 3 && scope.row.housingState === 3 &&
searchForm.departmentCode === '10000031' searchForm.departmentCode === '10000031'
" type="success" size="mini" round @click="dispatch(scope.row)">发放补贴</el-button> " type="success" size="mini" round @click="dispatch(scope.row)">发放补贴</el-button>
<el-button v-if="
scope.row.attachedFileMark === true &&
searchForm.departmentCode === '10000031'
" type="info" size="mini" round @click="viewUrl(scope.row)">查看附件</el-button>
</template> </template>
</el-table-column> </el-table-column>
</table-template> </table-template>
...@@ -74,7 +78,8 @@ ...@@ -74,7 +78,8 @@
</div> </div>
<div class="cell"> <div class="cell">
<p class="label">市契税系统</p> <p class="label">市契税系统</p>
<p class="value">{{ viewDetail.tradeStatus === 0 ? '未支付' : viewDetail.tradeStatus === 1 ? '已支付' : viewDetail.tradeStatus === 2 ? '不予发放' : '未审核' }}</p> <p class="value">{{ viewDetail.tradeStatus === 0 ? '未支付' : viewDetail.tradeStatus === 1 ? '已支付' :
viewDetail.tradeStatus === 2 ? '不予发放' : '未审核' }}</p>
</div> </div>
<!-- 新增功能end --> <!-- 新增功能end -->
<div class="cell"> <div class="cell">
...@@ -150,11 +155,12 @@ ...@@ -150,11 +155,12 @@
</el-image> </el-image>
</p> </p>
</div> </div>
<div class="cell"> <div class="cell" v-if="viewDetail.idCardPicture && viewDetail.idCardPicture.length > 0">
<p class="label">身份证照片</p> <p class="label">身份证照片</p>
<p class="value"> <p class="value">
<el-image style="width: 100px; height: 100px" :src="viewDetail.idCardPicture" :z-index="7777777" <el-image v-for="(item, index) in viewDetail.idCardPicture" :key="index"
:preview-src-list="[viewDetail.idCardPicture]"> style="width: 100px; height: 100px; margin-right: 10px" :src="item.picture" :z-index="7777777"
:preview-src-list="[item.picture]">
</el-image> </el-image>
</p> </p>
</div> </div>
...@@ -209,6 +215,31 @@ ...@@ -209,6 +215,31 @@
<p v-if="record.length === 0">暂无记录~</p> <p v-if="record.length === 0">暂无记录~</p>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog title="查看附件" :visible.sync="showUrl" width="500px" :close-on-press-escape="false">
<div style="margin: 0 0 0 10px;font-weight: 700;">图片附件:</div>
<div class="content" style="display:flex;flex-wrap:wrap;" v-if="pictureUrlList.length > 0">
<div v-for="(item, index) in pictureUrlList" :key="index">
<el-image style="width: 95px; height: 95px; margin: 10px;" :src="item.file"
:preview-src-list="[item.file]"></el-image>
</div>
</div>
<div class="content" style="display:flex;justify-content: center;" v-if="pictureUrlList.length == 0">
<el-empty :image-size="50"></el-empty>
</div>
<div style="margin: 0 0 0 10px;font-weight: 700;">文件附件:</div>
<div class="content" style="display:flex;flex-direction:column;flex-wrap:wrap;" v-if="fileUrlList.length > 0">
<div v-for="(item, index) in fileUrlList" :key="index"
style="margin: 10px 10px 0 10px; display:flex; align-items:center; justify-content: space-between;">
<p class="label" style="margin: 0;text-align:center;">{{ item.fileExplain }}</p>
<el-button size="mini" type="primary" @click="
download(item.file)
" class="down-text">下载附件</el-button>
</div>
</div>
<div class="content" style="display:flex;justify-content: center;" v-if="fileUrlList.length == 0">
<el-empty :image-size="50"></el-empty>
</div>
</el-dialog>
</div> </div>
</template> </template>
...@@ -222,13 +253,17 @@ import { ...@@ -222,13 +253,17 @@ import {
mattersHousingUpdate, mattersHousingUpdate,
mattersHousingGet, mattersHousingGet,
mattersHousingReason, mattersHousingReason,
mattersGetReason mattersGetReason,
queryAttacheFile
} from "@/api/policy"; } from "@/api/policy";
export default { export default {
components: { TableTemplate }, components: { TableTemplate },
data() { data() {
return { return {
showUrl: false,
pictureUrlList: [],
fileUrlList: [],
userName: "", userName: "",
searchForm: { searchForm: {
name: "", name: "",
...@@ -379,6 +414,36 @@ export default { ...@@ -379,6 +414,36 @@ export default {
} }
}, },
methods: { methods: {
download(url) {
console.log(url)
let fileType = url.split(".")[url.split('.').length - 1]
if (fileType == 'pdf' || fileType == 'PDF') {
window.open(url)
} else {
window.location.href = url
}
},
viewUrl(row) {
console.log(row)
queryAttacheFile({ code: row.code }).then((res) => {
console.log(res)
if (res.success) {
this.pictureUrlList = res.data.filter((item) => {
let fileType = item.fileExplain.split(".")[item.fileExplain.split('.').length - 1]
return fileType == 'jpg' || fileType == 'jpeg' || fileType == 'png'
})
this.fileUrlList = res.data.filter((item) => {
let fileType = item.fileExplain.split(".")[item.fileExplain.split('.').length - 1]
return fileType != 'jpg' && fileType != 'jpeg' && fileType != 'png'
})
console.log(this.pictureUrlList)
console.log(this.fileUrlList)
this.showUrl = true
} else {
this.$message.error(res.msg || '查询失败');
}
})
},
init() { init() {
this.tableData = []; this.tableData = [];
this.loading = true; this.loading = true;
...@@ -462,9 +527,11 @@ export default { ...@@ -462,9 +527,11 @@ export default {
this.viewDetail.phone = setTel(this.viewDetail.phone) this.viewDetail.phone = setTel(this.viewDetail.phone)
this.viewDetail.idCard = setCertNo(this.viewDetail.idCard) this.viewDetail.idCard = setCertNo(this.viewDetail.idCard)
} }
this.viewDetail.idCardPicture = res.data.pictureList.find(item => { this.viewDetail.idCardPicture = res.data.pictureList.filter(item => {
return item.pictureType === 1; return (
}).picture; item.pictureType === 1
)
});
this.viewDetail.bankPicture = res.data.pictureList.filter((item) => { this.viewDetail.bankPicture = res.data.pictureList.filter((item) => {
return ( return (
item.pictureType === 8 item.pictureType === 8
......
<template> <template>
<div class="policy"> <div class="policy">
<div class="search-wrapper"> <div class="search-wrapper">
<el-form <el-form :inline="true" :model="searchForm" class="search_form" style="text-align: left">
:inline="true"
:model="searchForm"
class="search_form"
style="text-align: left"
>
<el-form-item label="姓名"> <el-form-item label="姓名">
<el-input <el-input v-model="searchForm.name" placeholder="请输入姓名" @keyup.enter.native="onSubmit"></el-input>
v-model="searchForm.name"
placeholder="请输入姓名"
@keyup.enter.native="onSubmit"
></el-input>
</el-form-item> </el-form-item>
<el-form-item label="手机号码"> <el-form-item label="手机号码">
<el-input <el-input v-model="searchForm.phone" placeholder="请输入手机号码" @keyup.enter.native="onSubmit"></el-input>
v-model="searchForm.phone"
placeholder="请输入手机号码"
@keyup.enter.native="onSubmit"
></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" @click="onSubmit">查询</el-button> <el-button type="primary" @click="onSubmit">查询</el-button>
...@@ -27,52 +14,28 @@ ...@@ -27,52 +14,28 @@
<br /> <br />
<el-form-item label="状态" style="margin-top: 10px"> <el-form-item label="状态" style="margin-top: 10px">
<el-radio-group v-model="searchForm.state" @change="onSubmit"> <el-radio-group v-model="searchForm.state" @change="onSubmit">
<el-radio <el-radio :label="item.state" v-for="item in stateList" :key="item.state">{{ item.stateName }}</el-radio>
:label="item.state"
v-for="item in stateList"
:key="item.state"
>{{ item.stateName }}</el-radio
>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
<div class="table-wrapper"> <div class="table-wrapper">
<table-template <table-template :tableData="tableData" :tableColumns="tableColumns" :loading="loading" :pagination="pagination"
:tableData="tableData" @Jump="jumpPage">
:tableColumns="tableColumns"
:loading="loading"
:pagination="pagination"
@Jump="jumpPage"
>
<el-table-column slot="housingType" label="事项类型" align="center"> <el-table-column slot="housingType" label="事项类型" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag>{{scope.row.housingType == 2 ? '住房' : scope.row.housingType == 3 ? '商办' : '-'}}</el-tag> <el-tag>{{ scope.row.housingType == 2 ? '住房' : scope.row.housingType == 3 ? '商办' : '-' }}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column width="120" key="stateName" prop="stateName" label="状态" align="center">
width="120"
key="stateName"
prop="stateName"
label="状态"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag :type="scope.row.type">{{ scope.row.stateName }}</el-tag> <el-tag :type="scope.row.type">{{ scope.row.stateName }}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column fixed="right" label="操作" width="380" align="left"> <el-table-column fixed="right" label="操作" width="380" align="left">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="primary" size="mini" round @click="view(scope.row)" <el-button type="primary" size="mini" round @click="view(scope.row)">查看</el-button>
>查看</el-button <el-button type="primary" size="mini" round @click="record(scope.row)">记录</el-button>
>
<el-button
type="primary"
size="mini"
round
@click="record(scope.row)"
>记录</el-button
>
<!-- 待复审的单子有通过拒绝--> <!-- 待复审的单子有通过拒绝-->
<!-- <template v-if="scope.row.state === 1"> <!-- <template v-if="scope.row.state === 1">
<el-button <el-button
...@@ -91,13 +54,7 @@ ...@@ -91,13 +54,7 @@
> >
</template> --> </template> -->
<template v-if="scope.row.state === 6"> <template v-if="scope.row.state === 6">
<el-button <el-button type="success" size="mini" round @click="passData(scope.row)">资料通过</el-button>
type="success"
size="mini"
round
@click="passData(scope.row)"
>资料通过</el-button
>
</template> </template>
<!-- <template v-if="scope.row.state === 2"> <!-- <template v-if="scope.row.state === 2">
<el-button <el-button
...@@ -119,12 +76,7 @@ ...@@ -119,12 +76,7 @@
</el-table-column> </el-table-column>
</table-template> </table-template>
</div> </div>
<el-dialog <el-dialog title="申报详情" :visible.sync="viewShow" width="800px" :close-on-press-escape="false">
title="申报详情"
:visible.sync="viewShow"
width="800px"
:close-on-press-escape="false"
>
<div class="content"> <div class="content">
<!-- 新增start --> <!-- 新增start -->
<el-table :data="totalList" style="width: 100%"> <el-table :data="totalList" style="width: 100%">
...@@ -141,7 +93,8 @@ ...@@ -141,7 +93,8 @@
</div> </div>
<div class="cell"> <div class="cell">
<p class="label">市契税系统</p> <p class="label">市契税系统</p>
<p class="value">{{ viewDetail.tradeStatus === 0 ? '未支付' : viewDetail.tradeStatus === 1 ? '已支付' : viewDetail.tradeStatus === 2 ? '不予发放' : '未审核' }}</p> <p class="value">{{ viewDetail.tradeStatus === 0 ? '未支付' : viewDetail.tradeStatus === 1 ? '已支付' :
viewDetail.tradeStatus === 2 ? '不予发放' : '未审核' }}</p>
</div> </div>
<!-- 新增end --> <!-- 新增end -->
<div class="cell"> <div class="cell">
...@@ -217,53 +170,37 @@ ...@@ -217,53 +170,37 @@
</el-image> </el-image>
</p> </p>
</div> </div>
<div class="cell"> <div class="cell" v-if="viewDetail.idCardPicture && viewDetail.idCardPicture.length > 0">
<p class="label">身份证照片</p> <p class="label">身份证照片</p>
<p class="value"> <p class="value">
<el-image <el-image v-for="(item, index) in viewDetail.idCardPicture" :key="index"
style="width: 100px; height: 100px" style="width: 100px; height: 100px; margin-right: 10px" :src="item.picture" :z-index="7777777"
:src="viewDetail.idCardPicture" :preview-src-list="[item.picture]">
:z-index="7777777"
:preview-src-list="[viewDetail.idCardPicture]"
>
</el-image> </el-image>
</p> </p>
</div> </div>
<div class="cell"> <div class="cell">
<p class="label">商品房买卖合同3张</p> <p class="label">商品房买卖合同3张</p>
<p class="value"> <p class="value">
<el-image <el-image v-for="(item, index) in viewDetail.contract" :key="index"
v-for="(item, index) in viewDetail.contract" style="width: 100px; height: 100px; margin-right: 10px" :src="item.picture" :z-index="7777777"
:key="index" :preview-src-list="[item.picture]">
style="width: 100px; height: 100px; margin-right: 10px"
:src="item.picture"
:z-index="7777777"
:preview-src-list="[item.picture]"
>
</el-image> </el-image>
</p> </p>
</div> </div>
<div class="cell"> <div class="cell">
<p class="label">不动产权证书</p> <p class="label">不动产权证书</p>
<p class="value"> <p class="value">
<el-image <el-image style="width: 100px; height: 100px" :src="viewDetail.certificate" :z-index="7777777"
style="width: 100px; height: 100px" :preview-src-list="[viewDetail.certificate]">
:src="viewDetail.certificate"
:z-index="7777777"
:preview-src-list="[viewDetail.certificate]"
>
</el-image> </el-image>
</p> </p>
</div> </div>
<div class="cell"> <div class="cell">
<p class="label">契税完税凭证</p> <p class="label">契税完税凭证</p>
<p class="value"> <p class="value">
<el-image <el-image style="width: 100px; height: 100px" :src="viewDetail.voucher" :z-index="7777777"
style="width: 100px; height: 100px" :preview-src-list="[viewDetail.voucher]">
:src="viewDetail.voucher"
:z-index="7777777"
:preview-src-list="[viewDetail.voucher]"
>
</el-image> </el-image>
</p> </p>
</div> </div>
...@@ -278,12 +215,7 @@ ...@@ -278,12 +215,7 @@
</div> </div>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog <el-dialog title="操作记录" :visible.sync="recordShow" width="800px" :close-on-press-escape="false">
title="操作记录"
:visible.sync="recordShow"
width="800px"
:close-on-press-escape="false"
>
<div class="content"> <div class="content">
<div class="cell" v-for="item in recordList" :key="item.createTime"> <div class="cell" v-for="item in recordList" :key="item.createTime">
<p class="label" style="margin-right: 20px"> <p class="label" style="margin-right: 20px">
...@@ -303,7 +235,7 @@ ...@@ -303,7 +235,7 @@
<script> <script>
import TableTemplate from "@/components/Table"; import TableTemplate from "@/components/Table";
import { changeList,setName,setTel,setCertNo } from "@/utils"; import { changeList, setName, setTel, setCertNo } from "@/utils";
// import { get } from "@/api/talents"; // import { get } from "@/api/talents";
import { import {
mattersHousingList, mattersHousingList,
...@@ -565,9 +497,11 @@ export default { ...@@ -565,9 +497,11 @@ export default {
this.viewDetail.phone = setTel(this.viewDetail.phone) this.viewDetail.phone = setTel(this.viewDetail.phone)
this.viewDetail.idCard = setCertNo(this.viewDetail.idCard) this.viewDetail.idCard = setCertNo(this.viewDetail.idCard)
} }
this.viewDetail.idCardPicture = res.data.pictureList.find(item => { this.viewDetail.idCardPicture = res.data.pictureList.filter(item => {
return item.pictureType === 1; return (
}).picture; item.pictureType === 1
)
});
this.viewDetail.bankPicture = res.data.pictureList.filter((item) => { this.viewDetail.bankPicture = res.data.pictureList.filter((item) => {
return ( return (
item.pictureType === 8 item.pictureType === 8
......
...@@ -33,7 +33,7 @@ ...@@ -33,7 +33,7 @@
<el-tag :type="scope.row.type">{{ scope.row.stateName }}</el-tag> <el-tag :type="scope.row.type">{{ scope.row.stateName }}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column fixed="right" label="操作" width="380" align="left"> <el-table-column fixed="right" label="操作" width="420" align="left">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="primary" size="mini" round @click="view(scope.row)">查看</el-button> <el-button type="primary" size="mini" round @click="view(scope.row)">查看</el-button>
<el-button type="primary" size="mini" round @click="record(scope.row)">记录</el-button> <el-button type="primary" size="mini" round @click="record(scope.row)">记录</el-button>
...@@ -46,6 +46,9 @@ ...@@ -46,6 +46,9 @@
<el-button type="success" size="mini" round @click="passFinal(scope.row)">终审通过</el-button> <el-button type="success" size="mini" round @click="passFinal(scope.row)">终审通过</el-button>
<el-button type="danger" size="mini" round @click="deny(scope.row)" m>终审拒绝</el-button> <el-button type="danger" size="mini" round @click="deny(scope.row)" m>终审拒绝</el-button>
</template> </template>
<template v-if="scope.row.attachedFileMark === true">
<el-button type="info" size="mini" round @click="viewUrl(scope.row)">查看附件</el-button>
</template>
</template> </template>
</el-table-column> </el-table-column>
</table-template> </table-template>
...@@ -183,9 +186,8 @@ ...@@ -183,9 +186,8 @@
<p class="label">个人申请表</p> <p class="label">个人申请表</p>
<p class="value"> <p class="value">
<template v-for="(i, index) in item.pictureVoS"> <template v-for="(i, index) in item.pictureVoS">
<el-image v-if="i.pictureType == 3" :key="index" <el-image v-if="i.pictureType == 3" :key="index" style="width: 100px; height: 100px; margin-right: 10px"
style="width: 100px; height: 100px; margin-right: 10px" :src="i.picture" :z-index="7777777" :src="i.picture" :z-index="7777777" :preview-src-list="[i.picture]">
:preview-src-list="[i.picture]">
</el-image> </el-image>
</template> </template>
</p> </p>
...@@ -194,9 +196,8 @@ ...@@ -194,9 +196,8 @@
<p class="label">身份证照片</p> <p class="label">身份证照片</p>
<p class="value"> <p class="value">
<template v-for="(i, index) in item.pictureVoS"> <template v-for="(i, index) in item.pictureVoS">
<el-image v-if="i.pictureType == 4" :key="index" <el-image v-if="i.pictureType == 4" :key="index" style="width: 100px; height: 100px; margin-right: 10px"
style="width: 100px; height: 100px; margin-right: 10px" :src="i.picture" :z-index="7777777" :src="i.picture" :z-index="7777777" :preview-src-list="[i.picture]">
:preview-src-list="[i.picture]">
</el-image> </el-image>
</template> </template>
</p> </p>
...@@ -205,9 +206,8 @@ ...@@ -205,9 +206,8 @@
<p class="label">个人银行卡照</p> <p class="label">个人银行卡照</p>
<p class="value"> <p class="value">
<template v-for="(i, index) in item.pictureVoS"> <template v-for="(i, index) in item.pictureVoS">
<el-image v-if="i.pictureType == 5" :key="index" <el-image v-if="i.pictureType == 5" :key="index" style="width: 100px; height: 100px; margin-right: 10px"
style="width: 100px; height: 100px; margin-right: 10px" :src="i.picture" :z-index="7777777" :src="i.picture" :z-index="7777777" :preview-src-list="[i.picture]">
:preview-src-list="[i.picture]">
</el-image> </el-image>
</template> </template>
</p> </p>
...@@ -216,9 +216,8 @@ ...@@ -216,9 +216,8 @@
<p class="label">商品买卖合同</p> <p class="label">商品买卖合同</p>
<p class="value"> <p class="value">
<template v-for="(i, index) in item.pictureVoS"> <template v-for="(i, index) in item.pictureVoS">
<el-image v-if="i.pictureType == 6" :key="index" <el-image v-if="i.pictureType == 6" :key="index" style="width: 100px; height: 100px; margin-right: 10px"
style="width: 100px; height: 100px; margin-right: 10px" :src="i.picture" :z-index="7777777" :src="i.picture" :z-index="7777777" :preview-src-list="[i.picture]">
:preview-src-list="[i.picture]">
</el-image> </el-image>
</template> </template>
</p> </p>
...@@ -227,9 +226,8 @@ ...@@ -227,9 +226,8 @@
<p class="label">不动产权证书</p> <p class="label">不动产权证书</p>
<p class="value"> <p class="value">
<template v-for="(i, index) in item.pictureVoS"> <template v-for="(i, index) in item.pictureVoS">
<el-image v-if="i.pictureType == 7" :key="index" <el-image v-if="i.pictureType == 7" :key="index" style="width: 100px; height: 100px; margin-right: 10px"
style="width: 100px; height: 100px; margin-right: 10px" :src="i.picture" :z-index="7777777" :src="i.picture" :z-index="7777777" :preview-src-list="[i.picture]">
:preview-src-list="[i.picture]">
</el-image> </el-image>
</template> </template>
</p> </p>
...@@ -238,9 +236,8 @@ ...@@ -238,9 +236,8 @@
<p class="label">契税完税凭证</p> <p class="label">契税完税凭证</p>
<p class="value"> <p class="value">
<template v-for="(i, index) in item.pictureVoS"> <template v-for="(i, index) in item.pictureVoS">
<el-image v-if="i.pictureType == 8" :key="index" <el-image v-if="i.pictureType == 8" :key="index" style="width: 100px; height: 100px; margin-right: 10px"
style="width: 100px; height: 100px; margin-right: 10px" :src="i.picture" :z-index="7777777" :src="i.picture" :z-index="7777777" :preview-src-list="[i.picture]">
:preview-src-list="[i.picture]">
</el-image> </el-image>
</template> </template>
</p> </p>
...@@ -249,9 +246,8 @@ ...@@ -249,9 +246,8 @@
<p class="label">劳动或聘用合同</p> <p class="label">劳动或聘用合同</p>
<p class="value"> <p class="value">
<template v-for="(i, index) in item.pictureVoS"> <template v-for="(i, index) in item.pictureVoS">
<el-image v-if="i.pictureType == 9" :key="index" <el-image v-if="i.pictureType == 9" :key="index" style="width: 100px; height: 100px; margin-right: 10px"
style="width: 100px; height: 100px; margin-right: 10px" :src="i.picture" :z-index="7777777" :src="i.picture" :z-index="7777777" :preview-src-list="[i.picture]">
:preview-src-list="[i.picture]">
</el-image> </el-image>
</template> </template>
</p> </p>
...@@ -298,6 +294,29 @@ ...@@ -298,6 +294,29 @@
<el-button @click="affirm" type="primary">确认</el-button> <el-button @click="affirm" type="primary">确认</el-button>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog title="查看附件" :visible.sync="showUrl" width="500px" :close-on-press-escape="false">
<div style="margin: 0 0 0 10px;font-weight: 700;">图片附件:</div>
<div class="content" style="display:flex;flex-wrap:wrap;" v-if="pictureUrlList.length > 0">
<div v-for="(item,index) in pictureUrlList" :key="index">
<el-image style="width: 95px; height: 95px; margin: 10px;" :src="item.file" :preview-src-list="[item.file]"></el-image>
</div>
</div>
<div class="content" style="display:flex;justify-content: center;" v-if="pictureUrlList.length == 0">
<el-empty :image-size="50"></el-empty>
</div>
<div style="margin: 0 0 0 10px;font-weight: 700;">文件附件:</div>
<div class="content" style="display:flex;flex-direction:column;flex-wrap:wrap;" v-if="fileUrlList.length > 0">
<div v-for="(item,index) in fileUrlList" :key="index" style="margin: 10px 10px 0 10px; display:flex; align-items:center; justify-content: space-between;">
<p class="label" style="margin: 0;text-align:center;">{{item.fileExplain}}</p>
<el-button size="mini" type="primary" @click="
download(item.file)
" class="down-text">下载附件</el-button>
</div>
</div>
<div class="content" style="display:flex;justify-content: center;" v-if="fileUrlList.length == 0">
<el-empty :image-size="50"></el-empty>
</div>
</el-dialog>
</div> </div>
</template> </template>
...@@ -312,12 +331,16 @@ import { ...@@ -312,12 +331,16 @@ import {
mattersHouseStaffList, mattersHouseStaffList,
mattersHouseReject, mattersHouseReject,
mattersHousePass, mattersHousePass,
queryAttacheFile
} from "@/api/purchase"; } from "@/api/purchase";
export default { export default {
components: { TableTemplate }, components: { TableTemplate },
data() { data() {
return { return {
showUrl: false,
pictureUrlList: [],
fileUrlList: [],
options: [ options: [
{ {
value: "", value: "",
...@@ -538,6 +561,36 @@ export default { ...@@ -538,6 +561,36 @@ export default {
} }
}, },
methods: { methods: {
download(url) {
console.log(url)
let fileType = url.split(".")[url.split('.').length - 1]
if(fileType == 'pdf' || fileType == 'PDF') {
window.open(url)
} else {
window.location.href = url
}
},
viewUrl(row) {
console.log(row)
queryAttacheFile({ code: row.houseCode }).then((res) => {
console.log(res)
if (res.success) {
this.pictureUrlList = res.data.filter((item) => {
let fileType = item.fileExplain.split(".")[item.fileExplain.split('.').length - 1]
return fileType == 'jpg' || fileType == 'jpeg' || fileType == 'png'
})
this.fileUrlList = res.data.filter((item) => {
let fileType = item.fileExplain.split(".")[item.fileExplain.split('.').length - 1]
return fileType != 'jpg' && fileType != 'jpeg' && fileType != 'png'
})
console.log(this.pictureUrlList)
console.log(this.fileUrlList)
this.showUrl = true
} else {
this.$message.error(res.msg || '查询失败');
}
})
},
init() { init() {
this.tableData = [] this.tableData = []
this.loading = true; this.loading = true;
...@@ -648,7 +701,7 @@ export default { ...@@ -648,7 +701,7 @@ export default {
let getReason = res.data; let getReason = res.data;
// 查询四个部门的记录 mattersHouseRevieweReason // 查询四个部门的记录 mattersHouseRevieweReason
mattersHouseRevieweReason(params).then((res) => { mattersHouseRevieweReason(params).then((res) => {
console.log(res.data); // console.log(res.data);
let housingReason = res.data; let housingReason = res.data;
let reason = housingReason.concat(getReason); let reason = housingReason.concat(getReason);
this.recordList = reason.map((item) => { this.recordList = reason.map((item) => {
......
...@@ -3152,6 +3152,11 @@ ...@@ -3152,6 +3152,11 @@
dependencies: dependencies:
"execa" "^3.3.0" "execa" "^3.3.0"
"default-passive-events@^2.0.0":
"integrity" "sha512-eMtt76GpDVngZQ3ocgvRcNCklUMwID1PaNbCNxfpDXuiOXttSh0HzBbda1HU9SIUsDc02vb7g9+3I5tlqe/qMQ=="
"resolved" "https://registry.npmmirror.com/default-passive-events/-/default-passive-events-2.0.0.tgz"
"version" "2.0.0"
"defaults@^1.0.3": "defaults@^1.0.3":
"integrity" "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==" "integrity" "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA=="
"resolved" "https://registry.npmmirror.com/defaults/-/defaults-1.0.3.tgz" "resolved" "https://registry.npmmirror.com/defaults/-/defaults-1.0.3.tgz"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment