Преглед на файлове

Merge remote-tracking branch 'origin/master'

rongxin_prod
yangfuda преди 1 година
родител
ревизия
10cef0f398
променени са 31 файла, в които са добавени 6528 реда и са изтрити 373 реда
  1. +3
    -3
      package-lock.json
  2. +2
    -2
      src/api/sunVillage_info/fixedAssets.js
  3. +33
    -1
      src/api/sunVillage_info/sysCbf.js
  4. Двоични данни
      src/assets/images/sunVillage_info/cbfwsh.png
  5. Двоични данни
      src/assets/images/sunVillage_info/cbfwsq.png
  6. +9
    -0
      src/router/index.js
  7. +7
    -4
      src/views/homesteadSurvey/add.vue
  8. +8
    -5
      src/views/homesteadSurvey/fsssAdd.vue
  9. +72
    -56
      src/views/homesteadSurvey/index.vue
  10. +1
    -1
      src/views/homesteadSurvey/list.vue
  11. +30
    -32
      src/views/homesteadSurvey/list2.vue
  12. +63
    -44
      src/views/homesteadSurvey/list4.vue
  13. +2
    -2
      src/views/homesteadSurvey/nhDetails.vue
  14. +8
    -0
      src/views/homesteadSurvey/nhcyList.vue
  15. +4922
    -0
      src/views/homesteadSurvey/wcnhList.vue
  16. +12
    -5
      src/views/homesteadSurvey/zrzAdd.vue
  17. +7
    -3
      src/views/login.vue
  18. +13
    -7
      src/views/sunVillage_info/index.vue
  19. +55
    -11
      src/views/sunVillage_info/list_cbf.vue
  20. +479
    -123
      src/views/sunVillage_info/list_cbfsq.vue
  21. +637
    -0
      src/views/sunVillage_info/list_cbfsq_view.vue
  22. +24
    -14
      src/views/sunVillage_info/list_cbht.vue
  23. +14
    -14
      src/views/sunVillage_info/list_cbht_detail.vue
  24. +8
    -2
      src/views/sunVillage_info/list_chronicles_process.vue
  25. +16
    -4
      src/views/sunVillage_info/list_contract_signature.vue
  26. +10
    -3
      src/views/sunVillage_info/list_contractor.vue
  27. +14
    -2
      src/views/sunVillage_info/list_contractor_process.vue
  28. +8
    -2
      src/views/sunVillage_info/list_employer_process.vue
  29. +6
    -2
      src/views/sunVillage_info/list_fbfsq.vue
  30. +19
    -19
      src/views/user/accountSetting/userInformation/companyInformation.vue
  31. +46
    -12
      src/views/user/accountSetting/userInformation/userInformation.vue

+ 3
- 3
package-lock.json Целия файл

@@ -20888,7 +20888,7 @@
"fastclick": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/fastclick/-/fastclick-1.0.6.tgz",
"integrity": "sha512-cXyDBT4g0uWl/Xe75QspBDAgAWQ0lkPi/zgp6YFEUHj6WV6VIZl7R6TiDZhdOVU3W4ehp/8tG61Jev1jit+ztQ==",
"integrity": "sha1-FhYlsnsaWAZAWTa9qaLBkm0Gvmo=",
"dev": true
},
"fastparse": {
@@ -21041,7 +21041,7 @@
"font-awesome.css": {
"version": "4.7.2",
"resolved": "https://registry.npmjs.org/font-awesome.css/-/font-awesome.css-4.7.2.tgz",
"integrity": "sha512-FIyRbig4PDY15NGzejM3b8OQ/lWvId8PHnE4CnuDtc8/YYs07cvnqLCyfvIJPwJl5SA/Rq+9jAe9W+Fr1pv0DA=="
"integrity": "sha1-B1pCARQo8gJyVO9phgx1ergWyVI="
},
"for-in": {
"version": "1.0.2",
@@ -28866,7 +28866,7 @@
"vue-html5-editor": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/vue-html5-editor/-/vue-html5-editor-1.1.1.tgz",
"integrity": "sha512-Ckmb8djta+XQMUQaxRcCUNBXEzjPF5p6c2nQ5ICcIuR8eYz4b0HAGzXlSDfL3ZxkrVHO2Hx0VrUORLu2Lwem4g==",
"integrity": "sha1-WRAhCoMNjI00eaHx/shHMZKqA7M=",
"dev": true
},
"vue-lazyload": {


+ 2
- 2
src/api/sunVillage_info/fixedAssets.js Целия файл

@@ -791,7 +791,7 @@ export function signProcessArchive(id) {
// 签署合同下载
export function signedContractDownload(id) {
return request({
url: '/service/cbht/sign/download/' + id,
url: '/open/villageAffairs/public/sign/download/' + id,
method: 'get'
});
}
@@ -799,7 +799,7 @@ export function signedContractDownload(id) {
// 签字合同预览
export function viewSignedContract(id) {
return request({
url: '/service/cbht/sign/view/' + id,
url: '/open/villageAffairs/public/sign/view/' + id,
method: 'get'
});
}


+ 33
- 1
src/api/sunVillage_info/sysCbf.js Целия файл

@@ -16,7 +16,13 @@ export function getCbfList(data){
params:data
})
}

// 获取承包方详情
export function getCbfById(id) {
return request({
url: '/service/cbf/get/' + id,
method: 'get'
});
}
//查询承包地块列表
export function getCbdkms(data){
return request({
@@ -90,4 +96,30 @@ export function cbfDataStatistics(){
})
}

// 承包方家庭成员
export function listFamilyMember(params){
return request({
url: '/open/villageAffairs/public/familyMember/list',
method: 'get',
params: params
})
}

// 获取承包合同
export function getContractByCode(params) {
return request({
url: '/open/villageAffairs/public/contract/detail',
method: 'get',
params: params
});
}

// 获取承包地块信息
export function listContractedLand(params) {
return request({
url: '/open/villageAffairs/public/contractedLand/list',
method: 'get',
params: params
});
}


Двоични данни
src/assets/images/sunVillage_info/cbfwsh.png Целия файл

Преди След
Ширина: 366  |  Височина: 185  |  Големина: 19 KiB

Двоични данни
src/assets/images/sunVillage_info/cbfwsq.png Целия файл

Преди След
Ширина: 366  |  Височина: 185  |  Големина: 19 KiB

+ 9
- 0
src/router/index.js Целия файл

@@ -4056,6 +4056,15 @@ export const constantRoutes = [
},
component: (resolve) => require(['@/views/sunVillage_info/list_cbfsq'], resolve)
},
{
path: '/sunVillage_info/list_cbfsq_view',
name: 'sunVillageInfoListCbfsqView',
meta: {
title: '承包方授权',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/list_cbfsq_view'], resolve)
},
{ ////阳光村务(新)-- 合同信息
path: '/sunVillage_info/list_vote_detail',
name: 'sunVillageInfoListVoteDetail',


+ 7
- 4
src/views/homesteadSurvey/add.vue Целия файл

@@ -852,10 +852,13 @@ export default {
if(this.form.id == null){

let surveyItem = JSON.parse(localStorage.getItem("surveyItem"));
this.$set(this.form, 'theGeomJson', JSON.parse( this.form.theGeomJson));
if(this.form.theGeomJson.hasOwnProperty('coordinates')) // 从后台获取的
this.$set(this.form, 'theGeomJson',this.form.theGeomJson.coordinates);
this.$set(this.form, 'theGeomJson', JSON.stringify( this.form.theGeomJson));
if(this.form.theGeomJson instanceof Array){
this.$set(this.form, 'theGeomJson', JSON.stringify( this.form.theGeomJson));
}else if(typeof this.form.theGeomJson === 'string'){
let theGeometry = JSON.parse( this.form.theGeomJson);
if(theGeometry.hasOwnProperty('coordinates')) // 从后台获取的
this.$set(this.form, 'theGeomJson', JSON.stringify(theGeometry.coordinates));
}
this.$set(this.form, 'surveyId', surveyItem.id)
addZjdzd(this.form).then(response => {
let _this =this;


+ 8
- 5
src/views/homesteadSurvey/fsssAdd.vue Целия файл

@@ -44,7 +44,7 @@
</van-row>
</div>
</van-sticky>
<van-form ref = "form">
<van-form ref="form">
<div style="margin:1.6rem auto;background: #ffffff;width: 95%;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16);border-radius:15px;padding-top: 20px;">
<p class="title" style="position:relative;padding-left:10px;line-height:20px;font-size: 16px;margin-left: 3%;margin-bottom: 5px;">附属设施信息</p>
<!--<van-field
@@ -209,10 +209,13 @@ export default {
},
submitzjd(){
this.$refs.form.validate().then(() => {
this.$set(this.form, 'theGeomJson', JSON.parse( this.form.theGeomJson));
if(this.form.theGeomJson.hasOwnProperty('coordinates')) // 从后台获取的
this.$set(this.form, 'theGeomJson',this.form.theGeomJson.coordinates);
this.$set(this.form, 'theGeomJson', JSON.stringify( this.form.theGeomJson));
if(this.form.theGeomJson instanceof Array){
this.$set(this.form, 'theGeomJson', JSON.stringify( this.form.theGeomJson));
}else if(typeof this.form.theGeomJson === 'string'){
let theGeometry = JSON.parse( this.form.theGeomJson);
if(theGeometry.hasOwnProperty('coordinates')) // 从后台获取的
this.$set(this.form, 'theGeomJson', JSON.stringify(theGeometry.coordinates));
}
if(this.form.id == null){
addFsss(this.form).then(response => {
let _this =this


+ 72
- 56
src/views/homesteadSurvey/index.vue Целия файл

@@ -70,7 +70,13 @@
</div>
</div>
<div v-if="active==1" style="height:calc( 100vh - 350px);margin-top: 14%;overflow-y:auto;">
<van-pull-refresh v-model="isLoadingtask" @refresh="onRefreshtask" :immediate-check="false">
<van-list
v-model:loading="loading"
:finished="finished"
finished-text="没有更多了"
:immediate-check="false"
@load="onRefreshtask"
>
<van-cell v-for="(item,index) in totalList" :key="item.id" size="small" @click.native="setCookies(item)" style="border-radius: 16px;
box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:95%;margin:0px auto 20px;height: 110px;">
<template #title>
@@ -93,10 +99,17 @@
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="manager" color="#22b7f2" style="margin-right:5px;"/>{{item.rwzxr}}</p>
</template>
</van-cell>
</van-pull-refresh>
</van-list>

</div>
<div v-if="active==2" style="height:calc( 100vh - 350px);margin-top: 14%;overflow-y:auto;">
<van-pull-refresh v-model="isLoadingtask" @refresh="onRefreshtask">
<van-list
v-model:loading="loading"
:finished="finished"
finished-text="没有更多了"
:immediate-check="false"
@load="onRefreshtask"
>
<van-cell v-for="(item,index) in doneList" :key="item.id" size="small" @click.native="setCookies(item)" style="border-radius: 16px;
box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:95%;margin:0px auto 20px;height: 110px;">
<template #title>
@@ -120,10 +133,16 @@
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="manager" color="#22b7f2" style="margin-right:5px;"/>{{item.rwzxr}}</p>
</template>
</van-cell>
</van-pull-refresh>
</van-list>
</div>
<div v-if="active==3" style="height:calc( 100vh - 350px);margin-top: 14%;overflow-y:auto;">
<van-pull-refresh v-model="isLoadingtask" @refresh="onRefreshtask">
<van-list
v-model:loading="loading"
:finished="finished"
finished-text="没有更多了"
:immediate-check="false"
@load="onRefreshtask"
>
<van-cell v-for="(item,index) in todoList" :key="item.id" size="small" @click.native="setCookies(item)" style="border-radius: 16px;
box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:95%;margin:0px auto 20px;height: 110px;">
<template #title>
@@ -146,7 +165,7 @@
<p style="display: flex;align-items: center;margin-top: 5px;"><van-icon name="manager" color="#22b7f2" style="margin-right:5px;"/>{{item.rwzxr}}</p>
</template>
</van-cell>
</van-pull-refresh>
</van-list>
</div>

</div>
@@ -207,12 +226,10 @@
nickName:"",
text:0,
isLoadingtask:false,
countqb:0,
countyhc:0,
countwhc:0,
countqb:1,
countyhc:1,
countwhc:1,

//宅调人员列表
taskExecutortions:[],
//当前用户级别
businessLevel:1,
// 字典列表json
@@ -220,9 +237,6 @@
};
},
created(){
userList().then(response => {
this.taskExecutortions = response.data
})
if(this.checked){
setTimeout(() => {
let userId = this.$store.state.user.userId;
@@ -304,76 +318,66 @@
}
return '#FA5353'
},
taskExecutorChange(row){
if(row.taskExecutor!=null&&row.taskExecutor!=""&&row.taskExecutor.length>1){
var actions = [];
row.taskExecutor.map(res => {
for(let i = 0;i<this.taskExecutortions.length;i++){
if(res == this.taskExecutortions[i].userName){
actions.push(this.taskExecutortions[i].nickName)
}
}
})
return actions.join(',');
}else{
var actions = [];
Object.keys(this.taskExecutortions).some((key) => {
if (this.taskExecutortions[key].userName == ('' + row.taskExecutor)) {
actions.push(this.taskExecutortions[key].nickName);
return true;
}
})
return actions.join(',');
}
},
onRefreshtask(){
this.isLoadingtask = false;
let _this = this
if(this.active==1){
if(this.active==1 && this.loading ){
let params = {
"rwfbzt":"PUBLISHED",
"params":{deptId:this.$store.state.user.loginDeptId},
"params":this.queryParams.params,
"parentId":this.queryParams.parentId,
"pageNum": this.countyhc+1,
"pageSize":10,
"pageSize":4,
}
listTask(params).then((response) => {
if(response.rows.length>0&&this.doneList.length<response.total){
if(response.rows.length>0&&this.totalList.length<response.total){
response.rows.map(res => {
this.doneList.unshift(res)
this.totalList.push(res)
})
this.countyhc++
this.loading = false;
}else{
this.finished = true;
}
});
}else if(this.active==2){
}else if(this.active==2 && this.loading){
let params = {
"rwwczt": "PUBLISHED",
"rwfbzt":"PUBLISHED",
"params":{deptId:this.$store.state.user.loginDeptId},
"params":this.queryParams.params,
"parentId":this.queryParams.parentId,
"pageNum": this.countwhc+1,
"pageSize":10,
"pageSize":4,
}
listTask(params).then((response) => {
if(response.rows.lenght>0&&this.todoList.length<response.total){
if(response.rows.lenght>0&&this.doneList.length<response.total){
response.rows.map(res => {
this.todoList.unshift(res)
this.doneList.push(res)
})
this.countwhc++
this.loading = false;
}else{
this.finished = true;
}
});
}else{
}else if(this.active==3 && this.loading){
let params = {
"rwwczt": "UNPUBLISHED",
"rwwczt": "UNFINISHED",
"rwfbzt":"PUBLISHED",
"params":{deptId:this.$store.state.user.loginDeptId},
"params":this.queryParams.params,
"parentId":this.queryParams.parentId,
"pageNum": this.countqb+1,
"pageSize":10,
"pageSize":4,
}
listTask(params).then((response) => {
if(response.rows.length>0&&this.totalList.length<response.total){
if(response.rows.length>0&&this.todoList.length<response.total){
response.rows.map(res => {
this.totalList.unshift(res)
this.todoList.push(res)
})
this.countqb++
this.loading = false;
}else{
this.finished = true
}
});
}
@@ -440,6 +444,14 @@
this.queryNum();
},
checkBadge(){
this.finished = false;
this.loading = false;
this.countqb = 1;
this.countyhc = 1;
this.countwhc = 1;
this.totalList = []
this.doneList = [];
this.todoList = [];
this.getList();
this.queryNum();
},
@@ -464,10 +476,14 @@
});
}else{
this.$set(this.switchParams, "rwzxr", null);
if(this.switchParams.parentId == null){
this.$set(this.switchParams, "params", {deptId:100});
}
listTask(this.switchParams).then(response => {
this.done = 0;
this.todo = 0;
this.total = response.total;
console.info(this.total)
response.rows.map(res => {
if(res.rwwczt == "FINISHED"){
this.done+=1
@@ -485,16 +501,16 @@
if(this.active==1) {
this.$set(this.queryParams, "rwfbzt", "PUBLISHED");
this.$set(this.queryParams, "rwwczt", null);
this.$set(this.queryParams, "pageNum", this.countyhc + 1);
this.$set(this.queryParams, "pageSize", 10);
this.$set(this.queryParams, "pageNum", this.countyhc);
this.$set(this.queryParams, "pageSize", 4);
}else if(this.active==2) {
this.$set(this.queryParams, "rwwczt", "FINISHED");
this.$set(this.queryParams, "rwfbzt", "PUBLISHED");
this.$set(this.queryParams, "pageNum", this.countwhc + 1);
this.$set(this.queryParams, "pageNum", this.countwhc);
}else{
this.$set(this.queryParams, "rwwczt", "UNFINISHED");
this.$set(this.queryParams, "rwfbzt", "PUBLISHED");
this.$set(this.queryParams, "pageNum", this.countqb + 1);
this.$set(this.queryParams, "pageNum", this.countqb);
}
listTask(this.queryParams).then(response => {
if(this.active==1) {


+ 1
- 1
src/views/homesteadSurvey/list.vue Целия файл

@@ -800,7 +800,7 @@
this.loading2 = false
}else{
this.loading2 = false
this.loading2 = true
this.finished2 = true
}
});
}else if(this.active==1&&this.loading2){


+ 30
- 32
src/views/homesteadSurvey/list2.vue Целия файл

@@ -56,7 +56,7 @@
</template>
</van-search>
<div style="background:#fff;padding:10px 2.5%;display: flex;justify-content: space-between;">
<van-button type="primary" style="width:110px;height: 20px;font-size: 12px;" round @click="onClickWcnh">增加外村农户</van-button>
<van-button type="primary" style="width:110px;height: 30px;font-size: 12px;" round @click="onClickWcnh">增加外村农户</van-button>
</div>
</van-sticky>

@@ -86,27 +86,8 @@
</template>
</van-cell>
</van-list>
<van-dialog v-model="outsideOpen" title="外村农户" show-cancel-button confirmButtonText="保存" cancelButtonText="关闭" @confirm="outsideSubmitForm" >
<van-row>
<van-col span="24">
<van-field v-model="outsideForm.nhdm" label="外村农户" placeholder="外村农户" input-align="right" required :rules="[{ required: true }]" @click="showWcnh = true"/>
<van-popup v-model="showWcnh" position="bottom">
<van-search placeholder="请输入" v-model="hnncValue" />
<van-picker
show-toolbar
:columns="wcnhnewList"
@confirm="nhChange"
value-key="nhValue"
@cancel="showWcnh = false"
/>
</van-popup>
<br/>
<br/>
</van-col>

</van-row>


<van-dialog v-model="outsideOpen" title="外村农户" show-cancel-button confirmButtonText="保存" cancelButtonText="关闭" @confirm="outsideSubmitForm" @cancel="outsideCancel" >
<wcnhList style="height: 600px;overflow: auto;" ref="wcnh"/>
</van-dialog>
<!-- </van-pull-refresh>-->
</div>
@@ -124,12 +105,14 @@
import { listTown, getTown } from "@/api/homesteadSurvey/town";
import { listVillage} from "@/api/homesteadSurvey/village";
import {deptGetId,} from "@/api/homestead/index";
import wcnhList from "@/views/homesteadSurvey/wcnhList";
import $ from "jquery";
import {Dialog} from "vant";
import {ref} from "vue";
import axios from "axios";
export default {
name: "homesteadList",
components: { wcnhList},
data() {
return {
loading1:false,
@@ -819,9 +802,7 @@
},
/** 新增外村农户按钮操作 */
onClickWcnh(){
this.getWcnhList().then((resp) => {
this.outsideOpen = true;
});
this.outsideOpen = true;
},
getWcnhList() {
return queryHomesteadnhhncyList({
@@ -4940,15 +4921,32 @@
value.indexOf('zrzSx') == -1 ? this.zrzSx = false : this.zrzSx = true;
value.indexOf('fsssSx') == -1 ? this.fsssSx = false : this.fsssSx = true;
},
/** 外村农户关闭事件 */
outsideCancel(){
this.$refs.wcnh.clearSelection();
},
/** 外村农户提交按钮 */
outsideSubmitForm() {
addOutsidenhhncy(this.outsideForm).then(response => {
if(response.code != 200) throw response.msg;
this.$toast("新增成功");
this.outsideOpen = false;
this.getList();
this.outDiglogStatus = true;
}).catch(() => this.outDiglogStatus = true);
let wcnhData = this.$refs.wcnh.wcnhData;
if(wcnhData == null){
this.$toast("请选择外村农户!");
}else {
this.$toast.loading({
message: "数据处理中",
forbidClick: true,
duration: 100000,
});
addOutsidenhhncy(wcnhData).then(response => {
if(response.code != 200) throw response.msg;
this.$toast.clear();
this.$toast("新增成功");
this.$refs.wcnh.clearSelection();
this.outsideOpen = false;
this.getList();
this.outDiglogStatus = true;
}).catch(() => this.outDiglogStatus = true);
}

},
closeSearchBox(){
this.showSearch = false ;


+ 63
- 44
src/views/homesteadSurvey/list4.vue Целия файл

@@ -495,10 +495,10 @@
<van-search
v-model="seachText"
show-action
placeholder="请输入宗地或权利人信息"
placeholder="请输入权利人信息"
>
<template #action>
<van-icon :name="require('../../assets/images/housesteadSurvey/add02.png')" color="rgba(122,201,67,1)" size=".8rem" id="query" style="vertical-align:middle;"/>
<van-icon :name="require('../../assets/images/housesteadSurvey/add02.png')" color="rgba(122,201,67,1)" id="query" style="vertical-align:middle;"/>
</template>
</van-search>
<div class="searchBox" style="display: none;">
@@ -1228,7 +1228,7 @@
import {listSuyqr,updateSuyqr,addSuyqr} from "@/api/homesteadSurvey/suyqr";
import {listZrz,getZrzZjdDmList,getZrz} from "@/api/homesteadSurvey/zrz";
import {listFsss,getFsssZjdDmList,getFsss} from "@/api/homesteadSurvey/fsss";
import {getGeoServerConfigKey} from "@/api/system/config";
import {getGeoServerConfigKey,getConfigKey} from "@/api/system/config";
import { listTown, getTown } from "@/api/homesteadSurvey/town";
import { listVillage} from "@/api/homesteadSurvey/village";
import {deptGetId,} from "@/api/homestead/index";
@@ -1287,6 +1287,11 @@
showhncylist:false,
showhncy:false,
activeBtn:4,
mapGeoServerUrl:"",
mobileSurveykey:'',
mobileSurveyZrzkey:"",
mobileSurveyFssskey:"",
mobileSurveyCjqykey:"",
value:'',
// 宅基地搜索框
zjdvalue:"",
@@ -3018,6 +3023,18 @@
// });
// }
// });
getConfigKey("geoserver.layer.homestead.mobileSurvey").then(response => {
this.mobileSurveykey = response.msg;
});
getConfigKey("geoserver.layer.building").then(response => {
this.mobileSurveyZrzkey = response.msg;
});
getConfigKey("geoserver.layer.annex").then(response => {
this.mobileSurveyFssskey = response.msg;
});
getConfigKey("geoserver.layer.villageBorder").then(response => {
this.mobileSurveyCjqykey = response.msg;
});
//通过数据直接查询方式--------加载较慢 end
getGeoServerConfigKey().then(response => {
this.mapGeoServerUrl = response.msg;
@@ -3025,6 +3042,7 @@
this.GetMapsInit();
}, 300);
});

var that = this;
setTimeout(function () {
var height = $(".searchBar_wrap").outerHeight(true) - $(".searchBar_wrap .van-search").outerHeight(true)
@@ -3109,7 +3127,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homespace_cjqy',
LAYERS: that.mobileSurveyCjqykey,
TILED: true,
cql_filter: cql_filter,
SRID: 3857,
@@ -3285,22 +3303,22 @@
//村边界查询开始 ------------------------------end
//国有数据加载-----------------------------------start

deptGetId(that.surveyItem.deptId).then((res) => {
var cql_filter_guoyou = "ZLDWDM='" + res.data.orgCode + "0000000'";
var guoyouTc = new ol.layer.Image({
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/geoserver/zjd_gydl/wms",
params: {
LAYERS: 'zjd_gydl:DLTB',
TILED: true,
cql_filter: cql_filter_guoyou,
SRID: 3857,
TIMESTAMP: new Date().getTime(),
},
}),
});
map.addLayer(guoyouTc);
});
// deptGetId(that.surveyItem.deptId).then((res) => {
// var cql_filter_guoyou = "ZLDWDM='" + res.data.orgCode + "0000000'";
// var guoyouTc = new ol.layer.Image({
// source: new ol.source.ImageWMS({
// url: that.mapGeoServerUrl + "/wms",
// params: {
// LAYERS: 'zjd_gydl:DLTB',
// TILED: true,
// cql_filter: cql_filter_guoyou,
// SRID: 3857,
// TIMESTAMP: new Date().getTime(),
// },
// }),
// });
// map.addLayer(guoyouTc);
// });
//国有数据加载----------------------------------end
//宅基地图层查询开始 ------------------start
//var cql_filter_all = "dept_id='" + that.$cookies.get("item").deptId + "'";
@@ -3308,7 +3326,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
LAYERS: that.mobileSurveykey,
TILED: true,
cql_filter: cql_filter+" and survey_status = '1'",
SRID: 3857,
@@ -3320,7 +3338,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
LAYERS: that.mobileSurveykey,
TILED: true,
cql_filter: cql_filter+" and survey_status = '2'",
SRID: 3857,
@@ -3332,7 +3350,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
LAYERS: that.mobileSurveykey,
TILED: true,
cql_filter: cql_filter+" and survey_status = '3'",
SRID: 3857,
@@ -3344,7 +3362,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
LAYERS: that.mobileSurveykey,
TILED: true,
cql_filter: cql_filter+" and survey_status = '4'",
SRID: 3857,
@@ -3356,7 +3374,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
LAYERS: that.mobileSurveykey,
TILED: true,
cql_filter: cql_filter+" and survey_status = '5'",
SRID: 3857,
@@ -3370,7 +3388,7 @@
service: "WFS",
version: "1.0.0",
request: "GetFeature",
typename: "nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey",
typename:that.mobileSurveykey,
//featureNS: 'nsgk_hc',//命名空间 URI
cql_filter: cql_filter,
//featurePrefix: 'nationalwater',//工作区名称
@@ -3400,7 +3418,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
LAYERS: that.mobileSurveyZrzkey,
TILED: true,
cql_filter: cql_filter_map,
SRID: 3857,
@@ -3416,7 +3434,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homestead_fsss',
LAYERS: that.mobileSurveyFssskey,
TILED: true,
cql_filter: cql_filter_map,
SRID: 3857,
@@ -3533,7 +3551,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
LAYERS: that.mobileSurveyZrzkey,
TILED: true,
cql_filter: cql_filter,
SRID: 3857,
@@ -3549,7 +3567,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homestead_fsss',
LAYERS: that.mobileSurveyFssskey,
TILED: true,
cql_filter: cql_filter,
SRID: 3857,
@@ -4602,7 +4620,7 @@
service: "WFS",
version: "1.0.0",
request: "GetFeature",
typename: "nsgk_wulanhaote:t_homespace_cjqy",
typename: that.mobileSurveyCjqykey,
//featureNS: 'nsgk_hc',//命名空间 URI
cql_filter: cql_filter,
//featurePrefix: 'nationalwater',//工作区名称
@@ -4624,10 +4642,11 @@
return geojsonmap;
})
.then((data) => {
let resolution = map.getView().getResolutionForExtent(data.bbox,map.getSize());
resolution:resolution + Math.random() * 0.00000001,
map.getView().fit(data.bbox);
map.getView().setResolution(resolution);
let resolution = map.getView().getResolutionForExtent(data.bbox,map.getSize());
resolution:resolution + Math.random() * 0.00000001,
map.getView().fit(data.bbox);
map.getView().setResolution(resolution);

// var datamap = data.bbox;
// var center = ol.extent.getCenter(datamap);
// map.getView().animate({
@@ -4655,7 +4674,7 @@
var wmsSource = new ol.source.TileWMS({
url: that.mapGeoServerUrl+"/wms",
params: {
LAYERS: "nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey",
LAYERS:that.mobileSurveykey,
TILED: true,
SRID: 3857,
serverType: "geoserver",
@@ -4668,7 +4687,7 @@
var ZjdwmsSource = new ol.source.TileWMS({
url: that.mapGeoServerUrl+"/wms",
params: {
LAYERS: "nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey",
LAYERS: that.mobileSurveykey,
TILED: true,
SRID: 3857,
serverType: "geoserver",
@@ -4681,7 +4700,7 @@
var ZrzwmsSource = new ol.source.TileWMS({
url: that.mapGeoServerUrl+"/wms",
params: {
LAYERS: "nsgk_wulanhaote:t_homespace_zrz",
LAYERS: that.mobileSurveyZrzkey,
TILED: true,
SRID: 3857,
serverType: "geoserver",
@@ -4694,7 +4713,7 @@
var FssswmsSource = new ol.source.TileWMS({
url: that.mapGeoServerUrl+"/wms",
params: {
LAYERS: "nsgk_wulanhaote:t_homestead_fsss",
LAYERS: that.mobileSurveyFssskey,
TILED: true,
SRID: 3857,
serverType: "geoserver",
@@ -4879,7 +4898,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
LAYERS: that.mobileSurveyZrzkey,
TILED: true,
cql_filter: cql_filter_map,
SRID: 3857,
@@ -5068,7 +5087,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
LAYERS: that.mobileSurveyZrzkey,
TILED: true,
cql_filter: cql_filter_map,
SRID: 3857,
@@ -5084,7 +5103,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homestead_fsss',
LAYERS: that.mobileSurveyFssskey,
TILED: true,
cql_filter: cql_filter_map,
SRID: 3857,
@@ -5255,7 +5274,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
LAYERS: that.mobileSurveyZrzkey,
TILED: true,
cql_filter: cql_filter_map,
SRID: 3857,
@@ -5271,7 +5290,7 @@
source: new ol.source.ImageWMS({
url: that.mapGeoServerUrl + "/wms",
params: {
LAYERS: 'nsgk_wulanhaote:t_homestead_fsss',
LAYERS: that.mobileSurveyFssskey,
TILED: true,
cql_filter: cql_filter_map,
SRID: 3857,


+ 2
- 2
src/views/homesteadSurvey/nhDetails.vue Целия файл

@@ -1485,7 +1485,7 @@
submitzjd(){
this.$refs.form.validate().then(() => {
if(this.form.id == null){
addNh(this.form).then(response => {
addNhhncy(this.form).then(response => {
let _this =this
this.$toast({
icon: 'success', // 找到自己需要的图标
@@ -1497,7 +1497,7 @@
})
});
}else{
updateNh(this.form).then(response => {
updateNhhncy(this.form).then(response => {
let _this =this
this.$toast({
icon: 'success', // 找到自己需要的图标


+ 8
- 0
src/views/homesteadSurvey/nhcyList.vue Целия файл

@@ -55,6 +55,7 @@
<p style="display: flex;align-items: center;">
<img src="../../assets/images/housesteadSurvey/list03.png" alt="" style="margin-right: 5px;">
<span style="line-height: 1;font-size: 16px;">{{item.xm}}</span>
<span style="line-height: 1;font-size: 16px;margin-left: 70%;">{{formatDict(yhzgxList,item.yhzgx)}}</span>
</p>
<div style="display:flex;line-height:20px;margin-top: 15px;font-size: 14px;color: #999999;">
<p style="flex:1;text-align:left;">证件号码:</p>
@@ -135,6 +136,7 @@ export default {
// 使用权人列表
shyqrData:{},
hnnylist:[],
yhzgxList:[],
permission:false,
guohuData: {
visible: false,
@@ -145,6 +147,9 @@ export default {
};
},
created(){
this.houseGetDicts("family_status").then((response) => {
this.yhzgxList = response.data;
});
this.shyqrData = this.$route.query;
this.permission = localStorage.getItem("executePermission");
this.getList();
@@ -172,6 +177,9 @@ export default {
this.$router.push({name: this.$router.back(-1)});
// }
},
formatDict(dict, value) {
return this.selectDictLabel(dict, value);
},
handleToHuzhu(row) {
const ids = row.id || this.ids;
Dialog.confirm({


+ 4922
- 0
src/views/homesteadSurvey/wcnhList.vue
Файловите разлики са ограничени, защото са твърде много
Целия файл


+ 12
- 5
src/views/homesteadSurvey/zrzAdd.vue Целия файл

@@ -270,10 +270,17 @@ export default {
submitzjd(){
this.$refs.form.validate().then(() => {
if(this.form.id == null){
this.$set(this.form, 'theGeomJson', JSON.parse( this.form.theGeomJson));
if(this.form.theGeomJson.hasOwnProperty('coordinates')) // 从后台获取的
this.$set(this.form, 'theGeomJson',this.form.theGeomJson.coordinates);
this.$set(this.form, 'theGeomJson', JSON.stringify( this.form.theGeomJson));
// this.$set(this.form, 'theGeomJson', JSON.parse( this.form.theGeomJson));
// if(this.form.theGeomJson.hasOwnProperty('coordinates')) // 从后台获取的
// this.$set(this.form, 'theGeomJson',this.form.theGeomJson.coordinates);
// this.$set(this.form, 'theGeomJson', JSON.stringify( this.form.theGeomJson));
if(this.form.theGeomJson instanceof Array){
this.$set(this.form, 'theGeomJson', JSON.stringify( this.form.theGeomJson));
}else if(typeof this.form.theGeomJson === 'string'){
let theGeometry = JSON.parse( this.form.theGeomJson);
if(theGeometry.hasOwnProperty('coordinates')) // 从后台获取的
this.$set(this.form, 'theGeomJson', JSON.stringify(theGeometry.coordinates));
}
addZrz(this.form).then(response => {
let _this =this
this.$toast({
@@ -332,7 +339,7 @@ export default {
onMapDrawFinished(data) {
console.info(data);
this.drawInsert = data;
this.form.theGeomJson = JSON.stringify(this.drawInsert);
this.form.theGeomJson = this.drawInsert;
},
// 当申请地图被重置时
onMapDrawReseted() {


+ 7
- 3
src/views/login.vue Целия файл

@@ -149,7 +149,9 @@ export default {
code:null,
isSmsLogin: false, //是否手机验证码
computeTime: 0,
height:0
height:0,
uuid:'',
uuidPhone:'',
};
},
created() {
@@ -171,13 +173,13 @@ export default {
methods: {
getCode() {
getCodeImg().then((res) => {
this.formData.uuid = res.uuid;
this.uuid = res.uuid;
this.codeUrl = "data:image/gif;base64," + res.img;
});
},
getCodePhone() {
getCodeImg().then((res) => {
this.formData.uuid = res.uuid;
this.uuidPhone = res.uuid;
this.codeUrlPhone = "data:image/gif;base64," + res.img;
});
},
@@ -242,6 +244,7 @@ export default {
}
this.loading = true;
this.formData.code = this.mobileCode;
this.formData.uuid = this.uuidPhone
this.$store
.dispatch("SmsLogin", this.formData)
.then(() => {
@@ -278,6 +281,7 @@ export default {
return false;
}
this.formData.code = this.code;
this.formData.uuid = this.uuid;
this.$store
.dispatch("Login", this.formData)
.then(() => {


+ 13
- 7
src/views/sunVillage_info/index.vue Целия файл

@@ -13,7 +13,10 @@
</van-popup>

</div>
<van-popover v-model="showPopover" trigger="click" :actions="actions" placement="bottom-end" @select="selectChange">
<van-popover v-model="showPopover" trigger="click" placement="bottom-end" @select="selectChange">
<div style="width: 4rem;">
<van-cell :title="item.text" @click="selectChange({index:index})" :border="false" :icon="item.icon" v-for="(item,index) in actions" :key="index" />
</div>
<template #reference>
<div class="exit_btn">
<i class="icon"></i>
@@ -68,12 +71,12 @@
actions: [
{ text: '个人信息', icon: 'manager-o' , index: 0 },
{ text: '修改密码', icon: 'edit' , index: 1 },
{ text: '事项审批', icon: 'manager-o' , index: 2 },
{ text: '宅基地调查', icon: 'manager-o' , index: 3 },
{ text: '确权延包调查', icon: 'manager-o' , index: 4 },
{ text: '农业行政执法', icon: 'manager-o' , index: 5 },
{ text: '生产托管', icon: 'manager-o' , index: 6 },
{ text: '产权交易', icon: 'manager-o' , index: 7 },
{ text: '事项审批', icon: 'todo-list-o' , index: 2 },
{ text: '宅基地调查', icon: 'newspaper-o' , index: 3 },
{ text: '确权延包调查', icon: 'orders-o' , index: 4 },
{ text: '农业行政执法', icon: 'label-o' , index: 5 },
{ text: '生产托管', icon: 'notes-o' , index: 6 },
{ text: '产权交易', icon: 'home-o' , index: 7 },
{ text: '退出登录', icon: 'revoke' , index: 8 },
],
deptIdOptions:[],
@@ -262,6 +265,9 @@
top: 64px;
right: 36px;
}
/deep/ .van-popover__action{
width: 4rem;
}
.exit_btn{
width: 61px;
height: 61px;


+ 55
- 11
src/views/sunVillage_info/list_cbf.vue Целия файл

@@ -22,15 +22,15 @@
<div class="item" @click="goDetail(item.id)">
<div class="info">
<div class="title">
<i class="icon_box" v-if="item.secondSigning==null"></i>
<i class="icon_box1" v-if="item.secondSigning!=null"></i>
<p class="news_title" :style="{'color': item.secondSigning!=null?'#2bc30c':'#eb1616'}">{{item.cbhtbm}}</p>
<p class="tips_mark" :style="{'color': item.secondSigning!=null?'#79bc29':'#f8a83d','background': item.secondSigning!=null?'#e8ffcd':'#ffedcd'}">{{item.signingMode}}</p>
<p class="tips_mark2" v-if="item.signingMode === '线上'" :style="{'background': item.secondSigning!=null?'#2bc30c':'#eb1616'}">{{item.signingStatus}}</p>
<i class="icon_box" v-if="item.signingStatus =='合同筹备' || item.signingStatus =='合同待签' ||item.signingStatus =='单方已签'"></i>
<i class="icon_box1" v-if="item.signingStatus =='签字完成' || item.signingStatus =='合同归档'"></i>
<p class="news_title" >{{item.cbhtbm}}</p>
<p class="tips_mark2" v-if="item.signingMode === '线上'" :style="{'background': formatDict(item)}">{{item.signingStatus}}</p>
<p class="tips_mark" :style="{'background': item.signingMode === '线上'?'#F9BE0C':'#08BE4E'}">{{item.signingMode}}</p>
</div>
<div class="time">
<p style="color:#eb1616;">{{item.cbfmc}}</p>
<p style="color:#eb1616;font-weight: bold;">{{item.htzmjm.toFixed(2)}} 亩</p>
<p>{{item.cbfmc}}</p>
<p>{{item.htzmjm.toFixed(2)}} 亩</p>
</div>
</div>
</div>
@@ -44,13 +44,22 @@
<img src="../../assets/images/sunVillage_info/signature_icon_03.png" alt="" width="35">
<p>预览</p>
</div> -->
<div class="opera_btn" v-if="item.signingMode == '线上' && item.cbfqszt =='2'" @click="contractSign(item)">
<div class="opera_btn" v-if="item.signingMode == '线上' && item.cbfqszt !='2' && item.signingStatus !=='合同筹备'" @click="contractSign(item)">
<img src="../../assets/images/sunVillage_info/signature_icon_02.png" alt="" width="35">
<p>合同网签</p>
</div>
<div class="opera_btn" @click="openPopupGsjg(item.cbfbm)">
<!-- <div class="opera_btn" @click="openPopupGsjg(item.cbfbm)">
<img src="../../assets/images/sunVillage_info/signature_icon_02.png" alt="" width="35">
<p>公示结果签名</p>
</div> -->
<div class="opera_btn" v-if="item.signingMode == '线上' && item.signingStatus !=='合同筹备' && item.signingStatus !=='双方待签'" @click="contractView(item.id)">
<img src="../../assets/images/sunVillage_info/signature_icon_03.png" alt="" width="35">
<p>合同预览</p>
</div>
<div class="opera_btn" v-if="item.signingMode === '线上' && item.signingStatus === '合同归档'"
@click="handleDownload(item.id)">
<img src="../../assets/images/sunVillage_info/download.png" alt="" width="35">
<p>下载合同</p>
</div>
<!-- <div class="opera_btn">
<img src="../../assets/images/sunVillage_info/signature_icon_03.png" alt="" width="35">
@@ -102,7 +111,7 @@
</template>

<script>
import { getCbf, eqbCbfhtwq,getCbhtList, cbhtSecondSign,updateGsjgSign, attachmentQuery, attachmentUpload, attachmentRemove } from "@/api/sunVillage_info/fixedAssets";
import { getCbf, eqbCbfhtwq,getCbhtList,signedContractDownload,viewSignedContract, cbhtSecondSign,updateGsjgSign, attachmentQuery, attachmentUpload, attachmentRemove } from "@/api/sunVillage_info/fixedAssets";
import vueEsign from "vue-esign";
import $ from "jquery";
import Cookies from "js-cookie";
@@ -147,6 +156,9 @@
created() {
this.height = window.screen.height * 1.28 - 20;
this.getCbfInfo();
this.houseGetDicts("signing_status").then((res) => {
this.signingStatusData = res.data;
});
// this.queryParams.cbfbm = JSON.parse(Cookies.get('user')).idcard;
},
methods: {
@@ -251,6 +263,15 @@
this.$notify({ type: 'success', message: '删除成功' });
});
},
formatDict(item){
let colorval = "";
this.signingStatusData.map(function (e){
if(item.signingStatus === e.dictLabel){
colorval = e.remark;
}
})
return colorval;
},
signaImgFun(url) {
this.signatureImg = url;
},
@@ -307,6 +328,29 @@
this.$toast.fail('请签名后再保存签字');
});
},
contractView(id) {
viewSignedContract(id).then(response => {
if (response.code === 200) {
this.noticeUrl = response.data;
this.htqsShow = true;
}
});
},
// 签署合同下载
handleDownload(id) {
this.$dialog.confirm({
message: '是否下载承包合同?',
}).then(() => {
// on confirm
signedContractDownload(id).then(res => {
if (res.code === 200) {
window.location.href = res.data;
}
});
}).catch(() => {
// on cancel
});
},
dataURLtoBlob(dataurl, filename = 'file') {
let arr = dataurl.split(',')
let mime = arr[0].match(/:(.*?);/)[1]
@@ -479,7 +523,7 @@
background: #ffedcd;
border-radius: 8px;
font-size: 24px;
color: #f8a83d;
color: #ffffff;
text-align: center;
line-height: 34px;
flex-shrink: 0;


+ 479
- 123
src/views/sunVillage_info/list_cbfsq.vue Целия файл

@@ -1,7 +1,7 @@
<template>
<div class="home_wrapper">
<div class="header_main" >
承包方授权
{{this.$route.query.shStatus?'承包方审核':'承包方授权'}}
<div class="return_btn" @click="onClickLeft"></div>
</div>
<div class="list_main">
@@ -9,112 +9,214 @@
<img src="../../assets/images/sunVillage_info/list_employer_process_icon_02.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">承包方授权</p>
</div>
<van-field readonly v-model="cbfTypeName" label="承包方类型" placeholder="承包方类型" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfbm" label="承包方代码" placeholder="承包方代码" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfmc" label="承包方名称" placeholder="承包方名称" input-align="right" :border="false" />
<van-field readonly v-model="zjlxName" label="承包方证件类型" placeholder="承包方证件类型" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfzjhm" label="承包方证件号码" placeholder="承包方证件号码" input-align="right" :border="false" />
<van-field readonly v-model="form.lxdh" label="联系电话" placeholder="联系电话" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfcysl" label="承包方成员数量" placeholder="承包方成员数量" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfdcy" label="承包方调查员" placeholder="承包方调查员" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfdcrq" label="承包方调查日期" placeholder="承包方调查日期" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfdcjs" label="承包方调查记事" placeholder="承包方调查记事" input-align="right" :border="false" />
<van-cell title="承包方调查签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.cbfdcqz" width="10%" alt="" v-if="form.cbfdcqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.gsjs" label="公示记事" placeholder="公示记事" input-align="right" :border="false" />
<van-field readonly v-model="form.gsjsr" label="公示记事人" placeholder="公示记事人" input-align="right" :border="false" />
<van-cell title="公示记事人签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.gsjsrqz" width="10%" alt="" v-if="form.gsjsrqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.gsjsrq" label="公示记事日期" placeholder="公示记事日期" input-align="right" :border="false" />
<van-field readonly v-model="form.gsjgyj" label="公示结果意见" placeholder="公示结果意见" input-align="right" :border="false" />
<van-cell title="公示结果签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.gsjgqz" width="10%" alt="" v-if="form.gsjgqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.gsjgqzrq" label="公示结果签字日期" placeholder="公示结果签字日期" input-align="right" :border="false" />
<van-field readonly v-model="form.gsshr" label="公示审核人" placeholder="公示审核人" input-align="right" :border="false" />
<van-field readonly v-model="form.gsshrq" label="公示审核日期" placeholder="公示审核日期" input-align="right" :border="false" />
<van-field readonly v-model="form.gsshyj" label="公示审核意见" placeholder="公示审核意见" input-align="right" :border="false" />
<van-cell title="公示审核签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.gsjgqz" width="10%" alt="" v-if="form.gsjgqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.yzbm" label="邮政编码" placeholder=" 邮政编码" input-align="right" :border="false" />
<van-field readonly v-model="form.fbfdcy" label="发包方调查员" placeholder="发包方调查员" input-align="right" :border="false" />
<van-field readonly v-model="form.fbfdcrq" label="发包方调查日期" placeholder="发包方调查日期" input-align="right" :border="false" />
<van-field readonly v-model="form.fbfdcjs" label="发包方调查记事" placeholder="发包方调查记事" input-align="right" :border="false" />
<van-cell title="发包方调查签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.fbfdcqz" width="10%" alt="" v-if="form.fbfdcqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.shyj" label="审核意见" placeholder="审核意见" input-align="right" :border="false" />
<van-field readonly v-model="form.shrq" label="审核日期" placeholder="审核日期" input-align="right" :border="false" />
<van-cell title="审核人签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.shrqz" width="10%" alt="" v-if="form.shrqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.hcgfsl " label="户持股份(份额)数量" placeholder="户持股份(份额)数量 " input-align="right" :border="false" />
<van-field readonly v-model="form.hcgfzjtqqtdbl " label="户持股份(份额)比例" placeholder="户持股份(份额)比例 " input-align="right" :border="false" />
<van-field readonly v-model="form.hcgfzjtqqtdmj " label="户持股份(份额)面积" placeholder="户持股份(份额)面积" input-align="right" :border="false" />
<van-field readonly v-model="surveyStatusName" label="确权调查状态" placeholder="确权调查状态" input-align="right" :border="false" />
<van-field readonly v-model="form.surveyRemark" label="确权调查备注" placeholder="确权调查备注" input-align="right" :border="false" />
<van-field readonly v-model="isDepositName" label="是否纳入托管" placeholder="是否纳入托管" input-align="right" :border="false" />
<van-field readonly v-model="form.tgmj" label="托管面积(亩)" placeholder="托管面积(亩)" input-align="right" :border="false" />
<div style="margin: 30px auto 0;width: 50%;">
<van-button round block type="primary" v-if="sqbutShow" @click="cbfsq">
授权
</van-button>
<!-- <van-button round block type="primary" v-if="!sqbutShow" >
授权完成
</van-button> -->
</div>
<img class="bottomImg" src="../../assets/images/sunVillage_info/contractor_authorized.png" alt="" v-if="!sqbutShow" />

<van-tabs v-model="active" animated>
<van-tab title="承包方">
<van-field readonly v-model="cbfTypeName" label="承包方类型" placeholder="承包方类型" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfbm" label="承包方代码" placeholder="承包方代码" input-align="right" :border="false" />
<van-cell title="承包方名称" style="color: #646566;">
<div style="color:#000000; ">{{form.cbfmc}}</div>
</van-cell>
<van-field readonly v-model="zjlxName" label="承包方证件类型" placeholder="承包方证件类型" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfzjhm" label="承包方证件号码" placeholder="承包方证件号码" input-align="right" :border="false" />
<van-field readonly v-model="form.lxdh" label="联系电话" placeholder="联系电话" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfcysl" label="承包方成员数量" placeholder="承包方成员数量" input-align="right" :border="false" />
<van-field readonly v-model="form.yzbm" label="邮政编码" placeholder=" 邮政编码" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfdcy" label="承包方调查员" placeholder="承包方调查员" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfdcrq" label="承包方调查日期" placeholder="承包方调查日期" input-align="right" :border="false" />
<van-cell title="承包方调查记事" style="color: #646566;">
<div style="color:#000000; ">{{form.cbfdcjs}}</div>
</van-cell>
<van-cell title="承包方调查签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.cbfdcqz" width="10%" alt="" v-if="form.cbfdcqz" >
</template>
</van-field>
</van-cell>
<van-cell title="公示记事" style="color: #646566;">
<div style="color:#000000; ">{{form.gsjs}}</div>
</van-cell>
<van-field readonly v-model="form.gsjsr" label="公示记事人" placeholder="公示记事人" input-align="right" :border="false" />
<van-cell title="公示记事人签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.gsjsrqz" width="10%" alt="" v-if="form.gsjsrqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.gsjsrq" label="公示记事日期" placeholder="公示记事日期" input-align="right" :border="false" />
<van-cell title="公示结果意见" style="color: #646566;">
<div style="color:#000000; ">{{form.gsjgyj}}</div>
</van-cell>
<van-cell title="公示结果签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.gsjgqz" width="10%" alt="" v-if="form.gsjgqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.gsjgqzrq" label="公示结果签字日期" placeholder="公示结果签字日期" input-align="right" :border="false" />
<van-field readonly v-model="form.gsshr" label="公示审核人" placeholder="公示审核人" input-align="right" :border="false" />
<van-field readonly v-model="form.gsshrq" label="公示审核日期" placeholder="公示审核日期" input-align="right" :border="false" />
<van-cell title="公示审核意见" style="color: #646566;">
<div style="color:#000000; ">{{form.gsshyj}}</div>
</van-cell>
<van-cell title="公示审核签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.gsshqz" width="10%" alt="" v-if="form.gsshqz" >
</template>
</van-field>
</van-cell>
</van-tab>
<van-tab title="家庭成员">
<van-cell v-for="(item, index) in memberList" :key="item.id">
<div class="member_item">
<div class="item_left">
<div class="item_left_tt">
<p class="name">
<img src="../../../static/images/contracted/family_icon_01.png" alt="">
{{ item.cyxm }}
</p>
<p>{{ item.yhzgx }}</p>
<p class="sex">
{{ item. cyxb }}
<img v-if="item.cyxb === '男'" src="../../../static/images/contracted/family_icon_man.png" alt="">
<img v-else-if="item.cyxb === '女'" src="../../../static/images/contracted/family_icon_wman.png" alt="">
</p>
</div>
<p class="id_card">
<img src="../../../static/images/contracted/family_icon_02.png" alt="">
{{ item.cyzjhm }}
</p>
</div>
<p class="item_right">{{ item.sfgyr }}</p>
</div>
</van-cell>
</van-tab>
<van-tab title="承包合同">
<van-field v-model="contractDetail.cbhtbm" label="承包合同代码:" placeholder="请输入承包合同代码" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.ycbhtbm" label="原承包合同代码:" placeholder="请输入原承包合同代码" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.fbfbm" label="发包方代码:" placeholder="请输入发包方代码" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbflx" label="承包方类型:" placeholder="请选择承包方类型" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbfbm" label="承包方代码:" placeholder="请输入承包方代码" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbfmc" label="承包方名称:" placeholder="请输入承包方名称" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbfs" label="承包方式:" placeholder="请选择承包方式" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.qdsj" label="签订时间:" placeholder="请选择签订时间" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbqxq" label="承包起始时间:" placeholder="请选择起始时间" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbqxz" label="承包结束时间:" placeholder="请选择结束时间" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbdkzs" label="承包地块数:" placeholder="请输入承包地块数" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.htzmjm" label="合同面积(亩):" placeholder="请输入合同面积(亩)" :border="false" input-align="right" readonly />
</van-tab>
<van-tab title="承包地块">
<van-cell v-for="(item,index) in landList" :key="item.id">
<div class="land_item" >
<div class="item_tt">
<p>{{ item.dkmc }}</p>
<p>{{ item.dkbm }}</p>
</div>
<div class="item_type">
<p>{{ item.htmjm }}亩</p>
<!-- <p>{{ item.tdlylx }}</p>-->
<p>{{ item.dldj }}</p>
<p>{{ item.tdyt }}</p>
<p>基本农田:{{ item.sfjbnt }}</p>
</div>
<div class="item_direction">
<!-- <p>{{ item.zjrxm }}指界</p>-->
<p>东:{{ item.dkdz }}</p>
<p>西:{{ item. dkxz }}</p>
<p>南:{{ item.dknz }}</p>
<p>北:{{ item.dkbz }}</p>
</div>
</div>
</van-cell>

</van-tab>
</van-tabs>
<!-- <van-field readonly v-model="form.fbfdcy" label="发包方调查员" placeholder="发包方调查员" input-align="right" :border="false" />-->
<!-- <van-field readonly v-model="form.fbfdcrq" label="发包方调查日期" placeholder="发包方调查日期" input-align="right" :border="false" />-->
<!-- <van-cell title="发包方调查记事" style="color: #646566;">-->
<!-- <div style="color:#000000; ">{{form.fbfdcjs}}</div>-->
<!-- </van-cell>-->
<!-- <van-cell title="发包方调查签字" style="color: #646566;">-->
<!-- <van-field style="padding: 0 0;" readonly input-align="right" :border="false" >-->
<!-- <template #label>-->
<!-- <img :src="'/api'+form.fbfdcqz" width="10%" alt="" v-if="form.fbfdcqz" >-->
<!-- </template>-->
<!-- </van-field>-->
<!-- </van-cell>-->
<!-- <van-field readonly v-model="form.shyj" label="审核意见" placeholder="审核意见" input-align="right" :border="false" />-->
<!-- <van-field readonly v-model="form.shrq" label="审核日期" placeholder="审核日期" input-align="right" :border="false" />-->
<!-- <van-cell title="审核人签字" style="color: #646566;">-->
<!-- <van-field style="padding: 0 0;" readonly input-align="right" :border="false" >-->
<!-- <template #label>-->
<!-- <img :src="'/api'+form.shrqz" width="10%" alt="" v-if="form.shrqz" >-->
<!-- </template>-->
<!-- </van-field>-->
<!-- </van-cell>-->
</div>
<div style="margin: 30px auto 0;width: 50%;">
<van-button round block type="primary" v-if="showSignBtn" @click="openEsignPopup">
公示结果签字
</van-button>
<van-button round block type="primary" v-if="showAuthBtn" @click="cbfsq">
授权
</van-button>
</div>
<!-- <img class="bottomImg" v-if="sqbutShow && cbfsqShow" src="../../assets/images/sunVillage_info/cbfwsq.png" alt="" />-->
<!-- <img class="bottomImg" v-if="sqbutShow && cbfshShow" src="../../assets/images/sunVillage_info/cbfwsh.png" alt="" />-->
<img class="bottomImg" src="../../assets/images/sunVillage_info/contractor_authorized.png" alt="" v-if="showAuthPic" />


<van-popup v-model="showEsignPopup" closeable position="right" :style="{ height: '100%' }" >
<van-cell-group style="width: 100%;height:100%;overflow: hidden;padding-top: 10px;padding-bottom: 10px;">
<div class="signature-box" @mousedown="canvasTTdown" @touchstart="canvasTTdown">
<vue-esign
ref="esign"
class="mySign"
:width="500"
:height="height"
:isCrop="signature.isCrop"
:lineWidth="signature.lineWidth"
:lineColor="signature.lineColor"
:bgColor.sync="signature.bgColor"
/>
</div>
<img src="../../assets/images/sunVillage_info/signature_icon_10.png" id="canvasTT" style="position:absolute;top: 50%;left: 50%;transform: translate(-50%,-50%)" alt="">
<div class="signature-footer">
<van-button @click="handleGenerate" type="info" size="small">保存签字</van-button>
<van-button @click="handleReset" class="clearBtn" type="info" plain size="small">清空画板</van-button>
</div>
</van-cell-group>
</van-popup>
</div>
</template>

<script>
import { getCbfList,eqbEmpower} from "@/api/sunVillage_info/sysCbf";
import { getCbfList,getCbfById,eqbEmpower, listFamilyMember, getContractByCode, listContractedLand } from "@/api/sunVillage_info/sysCbf";
import { updateGsjgSign } from "@/api/sunVillage_info/fixedAssets";
import FieldSelect from "@/components/form/FieldSelect";
import vueEsign from "vue-esign";
import Cookies from "js-cookie";
import $ from "jquery";
export default {
name: "certificateList",
components: {FieldSelect},
components: {FieldSelect, vueEsign},
data() {
return {
form:{},
showForm2:false,
showesign:false,
sqbutShow:false,
sysFarmer:JSON.parse(Cookies.get('user')),
sqbutShow:true,
cbfsqShow:false,
cbfshShow:false,
sysFarmer:null,
zjlxName:"",
cbfTypeName:"",
surveyStatusName:"",
isDepositName:"",
height:0,
options: {
cert_type: [],
},
@@ -126,10 +228,46 @@
resultImg: "", // 最终画布生成的base64图片
isCrop: false, // 是否裁剪,在画布设定尺寸基础上裁掉四周空白部分
},
showSignBtn: false, // 是否显示公示结果签字按钮
showAuthBtn: false, // 是否显示授权按钮
showAuthPic: false, // 是否显示授权图片
active: 0, // 控制 van-tabs 的标签
showEsignPopup: false, // 是否显示签字板
height: null,
memberList: [], // 承包方家庭成员信息
contractDetail: {}, // 承包合同信息
landList: [], // 承包地块列表
};
},
created() {
this.getSysCfb();
this.height = window.screen.height * 1.28 - 20;
if(this.$route.query.sqStatus){
getCbfById(this.$route.query.id).then(response => {
this.form = response.data;
if(this.form.accountId != null && this.form.accountId !== ""){
this.sqbutShow = false;
}else{
this.cbfsqShow = true;
this.sqbutShow = true;
}
this.getDictValue();
});

}else if(this.$route.query.shStatus){
getCbfById(this.$route.query.id).then(response => {
this.form = response.data;
if(this.form.gsshqz != null && this.form.gsshqz !== ""){
this.sqbutShow = false;
}else{
this.cbfshShow = true;
this.sqbutShow = true;
}
this.getDictValue();
});
}else{
this.sysFarmer = JSON.parse(Cookies.get('user'));
this.getSysCfb();
}
},
methods: {
InitOptions() {
@@ -140,53 +278,147 @@
},
/*承包方授权*/
cbfsq(){
console.info(3333333333);
eqbEmpower(this.form).then(response => {
if(response.code === 200 ){
this.sqbutShow = false;
// this.sqbutShow = false;
this.$notify({type: 'success', message: '授权成功'});
this.showSignBtn = false;
this.showAuthBtn = false;
this.showAuthPic = true;
}
});
},
getSysCfb(){
getCbfList({deptId:this.sysFarmer.deptId,cbfzjhm:this.sysFarmer.idcard}).then(response => {
this.sqbutShow = true;
let _this = this;
// this.sqbutShow = true;
if(response.rows.length > 0){
this.form = response.rows[0];
if(this.form.accountId != null && this.form.accountId !== ""){
if (!this.form.gsjgqz) {
this.showSignBtn = true;
this.showAuthBtn = false;
this.showAuthPic = false;
} else if (!this.form.accountId) {
this.showSignBtn = false;
this.showAuthBtn = true;
this.showAuthPic = false;
} else {
this.showSignBtn = false;
this.showAuthBtn = false;
this.showAuthPic = true;
}
/* if(this.form.accountId != null && this.form.accountId !== ""){
this.sqbutShow = false;
}else{
this.sqbutShow = true;
} */
this.getDictValue();
this.getFamilyMemberList(this.form.cbfbm);
this.getContractDetail(this.form.cbfbm);
this.getContractedLandList(this.form.cbfbm);
}
});
},
getDictValue(){
let _this = this;
this.getDicts("cert_type").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.cbfzjlx) {
_this.zjlxName = item.dictLabel;
}
this.getDicts("zjlx").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.cbfzjlx) {
_this.zjlxName = item.dictLabel;
}
})
});
this.getDicts("cbf_type").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.cbflx) {
_this.cbfTypeName = item.dictLabel;
}
})
});
this.getDicts("confirmed_survey_status").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.surveyStatus) {
_this.surveyStatusName = item.dictLabel;
}
})
});
this.getDicts("sys_yes_no").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.isDeposit) {
_this.isDepositName = item.dictLabel;
}
})
})
});
this.getDicts("cbf_type").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.cbflx) {
_this.cbfTypeName = item.dictLabel;
}
})
});
this.getDicts("confirmed_survey_status").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.surveyStatus) {
_this.surveyStatusName = item.dictLabel;
}
})
});
this.getDicts("sys_yes_no").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.isDeposit) {
_this.isDepositName = item.dictLabel;
}
})
});
},
getFamilyMemberList(cbfbm) {
listFamilyMember({cbfbm: cbfbm, translate_dict: 1}).then(response => {
this.memberList = response.rows;
});
},
getContractDetail(cbfbm) {
getContractByCode({cbfbm: cbfbm, translate_dict: 1}).then(response => {
this.contractDetail = response.data;
});
},
getContractedLandList(cbfbm) {
listContractedLand({cbfbm: cbfbm, translate_dict: 1}).then(response => {
this.landList = response.rows;
});
},
openEsignPopup() {
if (!this.form.cbfbm) {
this.$toast({
icon: 'fail',
message: '承包方编码不存在',
duration: '1000'
})
return;
}
this.showEsignPopup = true;
this.$nextTick(() => {
this.handleReset();
});
},
canvasTTdown() {
$('#canvasTT').css('display', 'none');
},
handleReset() {
this.$refs.esign.reset();
$('#canvasTT').css('display', 'block')
},
handleGenerate(){
this.$refs.esign
.generate() // 使用生成器调用把签字的图片转换成为base64图片格式
.then((res) => {
this.signature.resultImg = res;
let wj = this.dataURLtoBlob(res);
let param = new FormData(); // 创建form对象
param.append('file', wj); // 通过append向form对象添加数据
param.append('cbfbm', this.form.cbfbm);
updateGsjgSign(param).then(response => {
this.$notify({type: 'success', message: '签字成功'});
this.showEsignPopup = false;
this.getSysCfb();
});
}

});
})
.catch((err) => {
// 画布没有签字时会执行这里提示一下
this.$toast.fail('请签名后再保存签字');
});
},
dataURLtoBlob(dataurl, filename = 'file') {
let arr = dataurl.split(',')
let mime = arr[0].match(/:(.*?);/)[1]
let suffix = mime.split('/')[1]
let bstr = atob(arr[1])
let n = bstr.length
let u8arr = new Uint8Array(n)
while (n--) {
u8arr[n] = bstr.charCodeAt(n)
}
return new File([u8arr], `${filename}.${suffix}`, {
type: mime
})
},
},
}
@@ -400,4 +632,128 @@
width: 50vw;
transform: translate(-50%,10%);
}
.signature-box {
border: 1px dashed #666;
margin: 2px 20px;
height: 100%;
/*canvas{*/
/* height: 100%!important;*/
/*}*/
}
.signature-footer {
transform: rotate(90deg);
width: auto;
position: absolute;
top: 50%;
left: 0PX;

.clearBtn {
margin-left: 15px;
}
}
.member_item{
border-radius: 30px;
background: #fff;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
padding:25px 32px;
margin-bottom: 20px;
display: flex;
align-items: center;
justify-content: space-between;
.item_left{
flex: 1;
.item_left_tt{
display: flex;
justify-content: space-between;
align-items: center;
font-size: 14PX;
.name{
display: flex;
align-items: center;
font-size: 16PX;
img{
width: 5vw;
margin-right: 2vw;
}
}
.sex{
display: flex;
align-items: center;
img{
width: 3vw;
margin-left: 1vw;
}
}
}
.id_card{
display: flex;
align-items: center;
font-size: 14PX;
margin-top: 1vh;
img{
width: 5vw;
margin-right: 2vw;
}
}
}
.item_right{
margin-left: 15vw;
padding: 2PX 15PX;
background: #d0f4e5;
color: #2ecb8a;
border: 1px solid #8be3be;
border-radius: 30PX;
}
}
.land_item{
border-radius: 30px;
background: #fff;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
padding:25px 32px;
margin-bottom: 20px;
font-size: 14PX;
.item_tt{
display: flex;
justify-content: space-between;
align-items: center;
p:first-child{
font-size: 16PX;
color: #333333;
}
p:last-child{
color: #44e4a3;
}
}
.item_type{
display: flex;
justify-content: space-between;
align-items: center;
color:#5f5f5f;
margin-top: 1vh;
p:nth-child(1){
color: #fb9627;
border: 1px solid #fb9627;
padding: 0 10PX;
border-radius: 50PX;
}
span{
color: #ffffff;
background: #fb9627;
border-radius: 100%;
display: inline-block;
width: 15PX;
height: 15PX;
line-height: 15PX;
font-size: 12PX;
margin-right: 5PX;
}
}
.item_direction{
display: flex;
justify-content: space-between;
align-items: center;
color:#5f5f5f;
margin-top: 1vh;
}
}
</style>

+ 637
- 0
src/views/sunVillage_info/list_cbfsq_view.vue Целия файл

@@ -0,0 +1,637 @@
<template>
<div class="home_wrapper">
<div class="header_main" >
{{this.$route.query.shStatus?'承包方审核':'承包方授权'}}
<div class="return_btn" @click="onClickLeft"></div>
</div>
<div class="list_main">
<div class="titBox">
<img src="../../assets/images/sunVillage_info/list_employer_process_icon_02.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">{{this.$route.query.shStatus?'承包方审核':'承包方授权'}}</p>
</div>


<van-tabs v-model="active" animated>
<van-tab title="承包方">
<van-field readonly v-model="cbfTypeName" label="承包方类型" placeholder="承包方类型" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfbm" label="承包方代码" placeholder="承包方代码" input-align="right" :border="false" />
<van-cell title="承包方名称" style="color: #646566;">
<div style="color:#000000; ">{{form.cbfmc}}</div>
</van-cell>
<van-field readonly v-model="zjlxName" label="承包方证件类型" placeholder="承包方证件类型" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfzjhm" label="承包方证件号码" placeholder="承包方证件号码" input-align="right" :border="false" />
<van-field readonly v-model="form.lxdh" label="联系电话" placeholder="联系电话" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfcysl" label="承包方成员数量" placeholder="承包方成员数量" input-align="right" :border="false" />
<van-field readonly v-model="form.yzbm" label="邮政编码" placeholder=" 邮政编码" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfdcy" label="承包方调查员" placeholder="承包方调查员" input-align="right" :border="false" />
<van-field readonly v-model="form.cbfdcrq" label="承包方调查日期" placeholder="承包方调查日期" input-align="right" :border="false" />
<van-cell title="承包方调查记事" style="color: #646566;">
<div style="color:#000000; ">{{form.cbfdcjs}}</div>
</van-cell>
<van-cell title="承包方调查签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.cbfdcqz" width="10%" alt="" v-if="form.cbfdcqz" >
</template>
</van-field>
</van-cell>
<van-cell title="公示记事" style="color: #646566;">
<div style="color:#000000; ">{{form.gsjs}}</div>
</van-cell>
<van-field readonly v-model="form.gsjsr" label="公示记事人" placeholder="公示记事人" input-align="right" :border="false" />
<van-cell title="公示记事人签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.gsjsrqz" width="10%" alt="" v-if="form.gsjsrqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.gsjsrq" label="公示记事日期" placeholder="公示记事日期" input-align="right" :border="false" />
<van-cell title="公示结果意见" style="color: #646566;">
<div style="color:#000000; ">{{form.gsjgyj}}</div>
</van-cell>
<van-cell title="公示结果签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.gsjgqz" width="10%" alt="" v-if="form.gsjgqz" >
</template>
</van-field>
</van-cell>
<van-field readonly v-model="form.gsjgqzrq" label="公示结果签字日期" placeholder="公示结果签字日期" input-align="right" :border="false" />
<van-field readonly v-model="form.gsshr" label="公示审核人" placeholder="公示审核人" input-align="right" :border="false" />
<van-field readonly v-model="form.gsshrq" label="公示审核日期" placeholder="公示审核日期" input-align="right" :border="false" />
<van-cell title="公示审核意见" style="color: #646566;">
<div style="color:#000000; ">{{form.gsshyj}}</div>
</van-cell>
<van-cell title="公示审核签字" style="color: #646566;">
<van-field style="padding: 0 0;" readonly input-align="right" :border="false" >
<template #label>
<img :src="'/api'+form.gsshqz" width="10%" alt="" v-if="form.gsshqz" >
</template>
</van-field>
</van-cell>
</van-tab>
<van-tab title="家庭成员">
<van-cell v-for="(item, index) in memberList" :key="item.id">
<div class="member_item">
<div class="item_left">
<div class="item_left_tt">
<p class="name">
<img src="../../../static/images/contracted/family_icon_01.png" alt="">
{{ item.cyxm }}
</p>
<p>{{ item.yhzgx }}</p>
<p class="sex">
{{ item. cyxb }}
<img v-if="item.cyxb === '男'" src="../../../static/images/contracted/family_icon_man.png" alt="">
<img v-else-if="item.cyxb === '女'" src="../../../static/images/contracted/family_icon_wman.png" alt="">
</p>
</div>
<p class="id_card">
<img src="../../../static/images/contracted/family_icon_02.png" alt="">
{{ item.cyzjhm }}
</p>
</div>
<p class="item_right">{{ item.sfgyr }}</p>
</div>
</van-cell>
</van-tab>
<van-tab title="承包合同">
<van-field v-model="contractDetail.cbhtbm" label="承包合同代码:" placeholder="请输入承包合同代码" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.ycbhtbm" label="原承包合同代码:" placeholder="请输入原承包合同代码" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.fbfbm" label="发包方代码:" placeholder="请输入发包方代码" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbflx" label="承包方类型:" placeholder="请选择承包方类型" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbfbm" label="承包方代码:" placeholder="请输入承包方代码" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbfmc" label="承包方名称:" placeholder="请输入承包方名称" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbfs" label="承包方式:" placeholder="请选择承包方式" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.qdsj" label="签订时间:" placeholder="请选择签订时间" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbqxq" label="承包起始时间:" placeholder="请选择起始时间" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbqxz" label="承包结束时间:" placeholder="请选择结束时间" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.cbdkzs" label="承包地块数:" placeholder="请输入承包地块数" :border="false" input-align="right" readonly />
<van-field v-model="contractDetail.htzmjm" label="合同面积(亩):" placeholder="请输入合同面积(亩)" :border="false" input-align="right" readonly />
</van-tab>
<van-tab title="承包地块">
<van-cell v-for="(item,index) in landList" :key="item.id">
<div class="land_item" >
<div class="item_tt">
<p>{{ item.dkmc }}</p>
<p>{{ item.dkbm }}</p>
</div>
<div class="item_type">
<p>{{ item.htmjm }}亩</p>
<!-- <p>{{ item.tdlylx }}</p>-->
<p>{{ item.dldj }}</p>
<p>{{ item.tdyt }}</p>
<p>基本农田:{{ item.sfjbnt }}</p>
</div>
<div class="item_direction">
<!-- <p>{{ item.zjrxm }}指界</p>-->
<p>东:{{ item.dkdz }}</p>
<p>西:{{ item. dkxz }}</p>
<p>南:{{ item.dknz }}</p>
<p>北:{{ item.dkbz }}</p>
</div>
</div>
</van-cell>

</van-tab>
</van-tabs>
<!-- <van-field readonly v-model="form.fbfdcy" label="发包方调查员" placeholder="发包方调查员" input-align="right" :border="false" />-->
<!-- <van-field readonly v-model="form.fbfdcrq" label="发包方调查日期" placeholder="发包方调查日期" input-align="right" :border="false" />-->
<!-- <van-cell title="发包方调查记事" style="color: #646566;">-->
<!-- <div style="color:#000000; ">{{form.fbfdcjs}}</div>-->
<!-- </van-cell>-->
<!-- <van-cell title="发包方调查签字" style="color: #646566;">-->
<!-- <van-field style="padding: 0 0;" readonly input-align="right" :border="false" >-->
<!-- <template #label>-->
<!-- <img :src="'/api'+form.fbfdcqz" width="10%" alt="" v-if="form.fbfdcqz" >-->
<!-- </template>-->
<!-- </van-field>-->
<!-- </van-cell>-->
<!-- <van-field readonly v-model="form.shyj" label="审核意见" placeholder="审核意见" input-align="right" :border="false" />-->
<!-- <van-field readonly v-model="form.shrq" label="审核日期" placeholder="审核日期" input-align="right" :border="false" />-->
<!-- <van-cell title="审核人签字" style="color: #646566;">-->
<!-- <van-field style="padding: 0 0;" readonly input-align="right" :border="false" >-->
<!-- <template #label>-->
<!-- <img :src="'/api'+form.shrqz" width="10%" alt="" v-if="form.shrqz" >-->
<!-- </template>-->
<!-- </van-field>-->
<!-- </van-cell>-->
</div>
<img class="bottomImg" v-if="sqbutShow && cbfsqShow" src="../../assets/images/sunVillage_info/cbfwsq.png" alt="" />
<img class="bottomImg" v-if="sqbutShow && cbfshShow" src="../../assets/images/sunVillage_info/cbfwsh.png" alt="" />
<img class="bottomImg" src="../../assets/images/sunVillage_info/contractor_authorized.png" alt="" v-if="!sqbutShow" />
</div>
</template>

<script>
import { getCbfList,getCbfById,eqbEmpower, listFamilyMember, getContractByCode, listContractedLand} from "@/api/sunVillage_info/sysCbf";
import FieldSelect from "@/components/form/FieldSelect";
import Cookies from "js-cookie";
import $ from "jquery";
export default {
name: "certificateList",
components: {FieldSelect},
data() {
return {
form:{},
showForm2:false,
showesign:false,
sqbutShow:true,
cbfsqShow:false,
cbfshShow:false,
sysFarmer:null,
zjlxName:"",
cbfTypeName:"",
surveyStatusName:"",
isDepositName:"",
height:0,
options: {
cert_type: [],
},
//电子签名
signature: {
lineWidth: 6, // 画笔的线条粗细
lineColor: "#000000", // 画笔的颜色
bgColor: "", // 画布的背景颜色
resultImg: "", // 最终画布生成的base64图片
isCrop: false, // 是否裁剪,在画布设定尺寸基础上裁掉四周空白部分
},
active: 0, // 控制 van-tabs 的标签
memberList: [], // 承包方家庭成员信息
contractDetail: {}, // 承包合同信息
landList: [], // 承包地块列表
};
},
created() {
if(this.$route.query.sqStatus){
getCbfById(this.$route.query.id).then(response => {
this.form = response.data;
if(this.form.accountId != null && this.form.accountId !== ""){
this.sqbutShow = false;
}else{
this.cbfsqShow = true;
this.sqbutShow = true;
}
this.getDictValue();
this.getFamilyMemberList(this.form.cbfbm);
this.getContractDetail(this.form.cbfbm);
this.getContractedLandList(this.form.cbfbm);
});

}else if(this.$route.query.shStatus){
getCbfById(this.$route.query.id).then(response => {
this.form = response.data;
if(this.form.gsshqz != null && this.form.gsshqz !== ""){
this.sqbutShow = false;
}else{
this.cbfshShow = true;
this.sqbutShow = true;
}
this.getDictValue();
this.getFamilyMemberList(this.form.cbfbm);
this.getContractDetail(this.form.cbfbm);
this.getContractedLandList(this.form.cbfbm);
});
}else{
this.sysFarmer = JSON.parse(Cookies.get('user'));
this.getSysCfb();
}
},
methods: {
InitOptions() {
for(let k in this.options)
{
this.getDicts(k).then((resp) => this.options[k] = resp.data);
}
},
/*承包方授权*/
cbfsq(){
eqbEmpower(this.form).then(response => {
if(response.code === 200 ){
this.sqbutShow = false;
}
});
},
getSysCfb(){
getCbfList({deptId:this.sysFarmer.deptId,cbfzjhm:this.sysFarmer.idcard}).then(response => {
this.sqbutShow = true;
if(response.rows.length > 0){
this.form = response.rows[0];
if(this.form.accountId != null && this.form.accountId !== ""){
this.sqbutShow = false;
}else{
this.sqbutShow = true;
}
this.getDictValue();
this.getFamilyMemberList(this.form.cbfbm);
this.getContractDetail(this.form.cbfbm);
this.getContractedLandList(this.form.cbfbm);
}

});
},
getDictValue(){
let _this = this;
this.getDicts("cert_type").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.cbfzjlx) {
_this.zjlxName = item.dictLabel;
}
})
});
this.getDicts("cbf_type").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.cbflx) {
_this.cbfTypeName = item.dictLabel;
}
})
});
this.getDicts("confirmed_survey_status").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.surveyStatus) {
_this.surveyStatusName = item.dictLabel;
}
})
});
this.getDicts("sys_yes_no").then(response => {
response.data.forEach(function (item) {
if (item.dictValue === _this.form.isDeposit) {
_this.isDepositName = item.dictLabel;
}
})
});
},
getFamilyMemberList(cbfbm) {
listFamilyMember({cbfbm: cbfbm, translate_dict: 1}).then(response => {
this.memberList = response.rows;
});
},
getContractDetail(cbfbm) {
getContractByCode({cbfbm: cbfbm, translate_dict: 1}).then(response => {
this.contractDetail = response.data;
});
},
getContractedLandList(cbfbm) {
listContractedLand({cbfbm: cbfbm, translate_dict: 1}).then(response => {
this.landList = response.rows;
});
},
},
}
</script>

<style scoped lang="scss">
/deep/ .van-button--primary{
background: url("../../assets/images/sunVillage_info/btn_bg.png") no-repeat;
background-size: 100% 100%;
border: none;
}
.van-cell::after {
position: absolute;
box-sizing: border-box;
content: ' ';
pointer-events: none;
right: 0.426667rem;
bottom: 0;
left: 0.426667rem;
border:none;
-webkit-transform: scaleY(.5);
transform: scaleY(.5);
}
.signature-footer {
transform: rotate(90deg);
width: auto;
position: absolute;
top: 50%;
left: 0px;

}
.home_wrapper{
background: #e9e9e9;
min-height: 100vh;
width: 100vw;
.header_main {
height: 116px;
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat;
background-size: 100% 100%;
position: fixed;
top: 0;
left: 0;
width: 100%;
font-size: 36px;
line-height: 116px;
text-align: center;
color: #fff;
position: relative;

.return_btn {
width: 24px;
height: 43.2px;
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat;
background-size: 20px 36px;
position: absolute;
left: 38px;
top: 36px;
}
}
.release_head{
height: 90px;
padding:0 23px;
display: flex;
align-items: center;
font-size: 26px;
color: #929292;
.people{
flex: 1;
display: flex;
align-items: center;
.icon{
width: 24px;
height: 21px;
background: url('../../assets/images/sunVillage_info/details_icon_1.png') no-repeat;
background-size: 100% 100%;
display: block;
margin-right: 8px;
}
}
.time{
flex: 1;
display: flex;
align-items: center;
justify-content:flex-end;
.icon{
width: 25px;
height: 25px;
background: url('../../assets/images/sunVillage_info/details_icon_2.png') no-repeat;
background-size: 100% 100%;
display: block;
margin-right: 8px;
}
}
}
.release_conetnt{
padding:0 22px;
font-size: 32px;
color: #252525;
line-height: 44px;
img{
max-width: 100%;
margin-bottom: 16px;
}
p{
margin-bottom: 16px;
}
}
.list_main{
padding:25px;
background: #ffffff;
width: 94%;
margin: 25px auto 0;
border-radius: 15PX;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
}
.subForm{
padding:25px;
background-image: linear-gradient(#2884ec,#68b2ee);
width: 94%;
margin: 50PX auto 0;
border-radius: 15PX;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
position: relative;
padding-top: 10vw;
img{
position: absolute;
left: 50%;
width: 15vw;
transform: translate(-50%,calc(-50% - 10vw));
border: 5PX solid #e9e9e9;
border-radius: 100%;
}
/deep/ .van-field__label{
/*padding-left: 10PX;*/
width: auto;
display: flex;
align-items: start;
color: #ffffff;
margin-right: 6vw;
}
/deep/ .van-cell{
background-color: transparent;
}
.textarea{
/deep/ .van-field__value{
background-color: #ffffff;
border-radius: 10PX;
}
/deep/ .van-field__control{
padding: 12PX;
color: #666666;
}
}
/deep/ .van-field__value{
background-color: transparent;
border-radius: 10PX;
}
/deep/ .van-field__control{
padding: 0PX;
color: #ffffff;
}
/deep/ .van-cell--required::before{
left: 60PX;
}
}
.subForm2{
padding:25px;
background:#ffffff;
width: 94%;
margin: 50PX auto 0;
border-radius: 15PX;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
position: relative;
padding-top: 10vw;
.topImg{
position: absolute;
left: 50%;
width: 15vw;
transform: translate(-50%,calc(-50% - 10vw));
border: 5PX solid #e9e9e9;
border-radius: 100%;
}
}
.titBox{
display: flex;
align-items: center;
}
.tit{
font-size: 36px;
font-weight: bold;
}
/deep/ .van-cell{
padding-left: 0!important;
padding-right: 0!important;
padding-bottom: 0!important;
}
/deep/ .van-field__label{
/*padding-left: 10PX;*/
width: auto;
display: flex;
align-items: center;
}
/deep/ .van-cell--required::before{
left: 85PX;
}
}
.bottomImg{
position: absolute;
left: 50%;
top: 50%;
width: 50vw;
transform: translate(-50%,10%);
}
.member_item{
border-radius: 30px;
background: #fff;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
padding:25px 32px;
margin-bottom: 20px;
display: flex;
align-items: center;
justify-content: space-between;
.item_left{
flex: 1;
.item_left_tt{
display: flex;
justify-content: space-between;
align-items: center;
font-size: 14PX;
.name{
display: flex;
align-items: center;
font-size: 16PX;
img{
width: 5vw;
margin-right: 2vw;
}
}
.sex{
display: flex;
align-items: center;
img{
width: 3vw;
margin-left: 1vw;
}
}
}
.id_card{
display: flex;
align-items: center;
font-size: 14PX;
margin-top: 1vh;
img{
width: 5vw;
margin-right: 2vw;
}
}
}
.item_right{
margin-left: 15vw;
padding: 2PX 15PX;
background: #d0f4e5;
color: #2ecb8a;
border: 1px solid #8be3be;
border-radius: 30PX;
}
}
.land_item{
border-radius: 30px;
background: #fff;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
padding:25px 32px;
margin-bottom: 20px;
font-size: 14PX;
.item_tt{
display: flex;
justify-content: space-between;
align-items: center;
p:first-child{
font-size: 16PX;
color: #333333;
}
p:last-child{
color: #44e4a3;
}
}
.item_type{
display: flex;
justify-content: space-between;
align-items: center;
color:#5f5f5f;
margin-top: 1vh;
p:nth-child(1){
color: #fb9627;
border: 1px solid #fb9627;
padding: 0 10PX;
border-radius: 50PX;
}
span{
color: #ffffff;
background: #fb9627;
border-radius: 100%;
display: inline-block;
width: 15PX;
height: 15PX;
line-height: 15PX;
font-size: 12PX;
margin-right: 5PX;
}
}
.item_direction{
display: flex;
justify-content: space-between;
align-items: center;
color:#5f5f5f;
margin-top: 1vh;
}
}
</style>

+ 24
- 14
src/views/sunVillage_info/list_cbht.vue Целия файл

@@ -30,18 +30,18 @@
<div class="item" @click="goDetail(item.id)">
<div class="info">
<div class="title">
<i class="icon_box" v-if="item.firstSigning == null"></i>
<i class="icon_box1" v-if="item.firstSigning != null"></i>
<p class="news_title" :style="{'color': item.firstSigning != null ? '#2bc30c' : '#eb1616'}">{{item.cbhtbm}}</p>
<i class="icon_box" v-if="item.signingStatus =='合同筹备' || item.signingStatus =='合同待签' ||item.signingStatus =='单方已签'"></i>
<i class="icon_box1" v-if="item.signingStatus =='签字完成' || item.signingStatus =='合同归档'"></i>
<p class="news_title" >{{item.cbhtbm}}</p>
<p class="tips_mark2" v-if="item.signingMode === '线上'" :style="{'background': formatDict(item)}">{{item.signingStatus}}</p>
<p class="tips_mark"
:style="{'color': item.firstSigning != null ? '#79bc29' : '#f8a83d','background': item.firstSigning != null ? '#e8ffcd' : '#ffedcd'}">
:style="{'background': item.signingMode === '线上'?'#F9BE0C':'#08BE4E'}">
{{item.signingMode}}</p>
<p class="tips_mark2" v-if="item.signingMode === '线上'" :style="{'background': item.firstSigning != null ? '#2bc30c' : '#eb1616'}">{{item.signingStatus}}</p>
</div>
<div class="time">
<p style="color:#eb1616;">{{item.cbfmc}}</p>
<p >{{item.cbfmc}}</p>
<!-- <p>{{item.cbhtmc}}</p>-->
<p style="color:#eb1616;font-weight: bold;">{{item.htzmjm.toFixed(2)}} 亩</p>
<p>{{item.htzmjm.toFixed(2)}} 亩</p>
</div>
</div>
</div>
@@ -84,10 +84,7 @@
</van-list>
</div>
<van-dialog v-model="htqsShow" title="合同签署" confirmButtonText="关闭" @confirm="confirmn">
<!-- <iframe width="100%" height="600px;" :src="noticeUrl"></iframe>-->
<object width="100%" height="600" :data="noticeUrl" type="text/html">
Alternative Content-->
</object>
<iframe width="100%" height="600px;" :src="noticeUrl"></iframe>
</van-dialog>
<!-- 签字弹出层 -->
<van-popup v-model="show" closeable position="right" :style="{ height: '100%' }">
@@ -141,6 +138,7 @@
htqsShow:false,
noticeUrl:"",
fileList: [],
signingStatusData:[],
listLength: '0',
queryParams: {
pageNum: 1,
@@ -172,6 +170,9 @@
if (this.$route.query.type == 'code') {
this.showBtn = false;
}
this.houseGetDicts("signing_status").then((res) => {
this.signingStatusData = res.data;
});
this.height = window.screen.height * 1.28 - 20;
},
methods: {
@@ -181,7 +182,7 @@
getList() {
this.loading = true;
let wcStatus = this.$route.query.wcStatus;
if(wcStatus){
if(wcStatus === 'true'){
this.$set(this.queryParams, 'signingStatus',"3");
}else{
this.$set(this.queryParams, 'signingStatus',null);
@@ -200,6 +201,15 @@

});
},
formatDict(item){
let colorval = "";
this.signingStatusData.map(function (e){
if(item.signingStatus === e.dictLabel){
colorval = e.remark;
}
})
return colorval;
},
goDetail(id) {
this.$router.push({
path: '/sunVillage_info/list_cbht_detail',
@@ -340,7 +350,7 @@
// 签署合同下载
handleDownload(id) {
this.$dialog.confirm({
message: '是否确认下载签署合同?',
message: '是否下载承包合同?',
}).then(() => {
// on confirm
signedContractDownload(id).then(res => {
@@ -533,7 +543,7 @@
background: #ffedcd;
border-radius: 8px;
font-size: 24px;
color: #f8a83d;
color: #ffffff;
text-align: center;
line-height: 34px;
flex-shrink: 0;


+ 14
- 14
src/views/sunVillage_info/list_cbht_detail.vue Целия файл

@@ -5,7 +5,7 @@
<div class="return_btn" @click="onClickLeft"></div>
</div>
<div class="list_main">
<van-divider>承包合同合同信息</van-divider>
<van-divider>承包合同信息</van-divider>
<van-field v-model="form.cbhtbm" label="承包合同编码" placeholder="承包合同编码" input-align="right" :border="false"/>
<van-field v-model="form.ycbhtbm" label="原承包合同编码" placeholder="原承包合同编码" input-align="right" :border="false"/>
<van-field v-model="form.cbflx" label="承包方类型" placeholder="承包方类型" input-align="right" :border="false"/>
@@ -23,19 +23,19 @@
<van-field v-model="form.signingStatus" label="签订状态" placeholder="签订状态" input-align="right" :border="false"/>
<!-- <van-field v-model="form.contractRemark" label="合同备注" placeholder="合同备注" input-align="right" :border="false"/>-->

<van-divider>甲方信息</van-divider>
<van-field v-model="form.firstIsSign" label="甲方已签" placeholder="甲方已签" input-align="right" :border="false"/>
<van-field v-model="form.firstPartyAt" label="甲方签字日期" placeholder="甲方签字日期" input-align="right" :border="false"/>
<van-field label="甲方签字" input-align="right" :border="false" />
<img :src="'/api'+form.firstSigning" width="100%" alt="" v-if="form.firstSigning" />
<van-field label="村级公章" input-align="right" :border="false" />
<img :src="'/api'+form.firstSeal" width="100%" alt="" v-if="form.firstSeal" />
<van-divider>乙方信息</van-divider>
<van-field v-model="form.secondIsSign" label="乙方已签" placeholder="乙方已签" input-align="right" :border="false" />
<van-field v-model="form.secondPartyAt" label="乙方签字日期" placeholder="乙方签字日期" input-align="right" :border="false" />
<van-field label="乙方签字" input-align="right" :border="false" />
<img :src="'/api'+form.secondSigning" width="100%" alt="" v-if="form.secondSigning">
<!-- <van-divider>甲方信息</van-divider>-->
<!-- <van-field v-model="form.firstIsSign" label="甲方已签" placeholder="甲方已签" input-align="right" :border="false"/>-->
<!-- <van-field v-model="form.firstPartyAt" label="甲方签字日期" placeholder="甲方签字日期" input-align="right" :border="false"/>-->
<!-- <van-field label="甲方签字" input-align="right" :border="false" />-->
<!-- <img :src="'/api'+form.firstSigning" width="100%" alt="" v-if="form.firstSigning" />-->
<!-- <van-field label="村级公章" input-align="right" :border="false" />-->
<!-- <img :src="'/api'+form.firstSeal" width="100%" alt="" v-if="form.firstSeal" />-->
<!-- <van-divider>乙方信息</van-divider>-->
<!-- <van-field v-model="form.secondIsSign" label="乙方已签" placeholder="乙方已签" input-align="right" :border="false" />-->
<!-- <van-field v-model="form.secondPartyAt" label="乙方签字日期" placeholder="乙方签字日期" input-align="right" :border="false" />-->
<!-- <van-field label="乙方签字" input-align="right" :border="false" />-->
<!-- <img :src="'/api'+form.secondSigning" width="100%" alt="" v-if="form.secondSigning">-->
</div>
</div>
</template>


+ 8
- 2
src/views/sunVillage_info/list_chronicles_process.vue Целия файл

@@ -37,7 +37,9 @@

<div class="subForm2" v-if="showJsxx">
<img class="topImg" src="../../assets/images/sunVillage_info/list_employer_process_icon_03.png" alt="">
<van-field readonly v-model="form.gsjs" label="记事内容" placeholder="记事内容" input-align="right" :border="false" />
<van-cell title="记事内容" style="color: #646566;">
<div style="color:#000000; ">{{form.gsjs}}</div>
</van-cell>
<van-cell title="记事人" style="border: none;color: #646566;" >
<van-field readonly style="padding: 0 0;height: 30px;" label="记事人" input-align="right" :border="false" >
<template #label>
@@ -146,7 +148,11 @@
$('#canvasTT').css('display', 'none');
},
onSign(){
this.showesign = true;
if(this.form.gsjs != null && this.form.gsjs !== ""){
this.showesign = true;
}else{
this.$toast.fail('请填写记事内容!');
}
},
// 清空画板
handleReset() {


+ 16
- 4
src/views/sunVillage_info/list_contract_signature.vue Целия файл

@@ -59,7 +59,7 @@
<div class="titBox">
<img src="../../assets/images/sunVillage_info/list_contract_signature_icon_03.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">承包合同</p>
<p class="tt_num" @click="$router.push({name:'sunVillageInfoListCbht',query:{wcStatus:false}})">进入合同 ></p>
<p class="tt_num" @click="$router.push({name:'sunVillageInfoListCbht',query:{wcStatus:'false'}})">进入合同 ></p>
</div>
<div class="list_main_content">
<div class="list_main_block">
@@ -91,11 +91,23 @@
<div class="list_main_block_icon">
<img src="../../assets/images/sunVillage_info/list_contract_signature_icon_08.png" style="width:12PX;height:12PX;"/>
</div>
<p>已完成</p>
<p>签字完成</p>
<p style="background-color: #0CF708;color: #30bf2c;">{{form.signCompletedRatio}}</p>
</div>
<p class="list_main_block_num"><span>{{form.signCompletedCount}}</span>份</p>
<p class="list_main_block_btn" v-if="form.signCompletedCount > 0" @click="">批量归档 ></p>
</div>

<div class="list_main_block">
<div class="list_main_block_tt">
<div class="list_main_block_icon">
<img src="../../assets/images/sunVillage_info/list_contract_signature_icon_08.png" style="width:12PX;height:12PX;"/>
</div>
<p>归档完成</p>
<p style="background-color: #d2f1d1;color: #30bf2c;">{{form.htywcfsbfb}}</p>
</div>
<p class="list_main_block_num"><span>{{form.htywcfs}}</span>份</p>
<p class="list_main_block_btn" @click="$router.push({name:'sunVillageInfoListCbht',query:{wcStatus:true}})">进入查看 ></p>
<p class="list_main_block_btn" @click="$router.push({name:'sunVillageInfoListCbht',query:{wcStatus:'true'}})">进入查看 ></p>
</div>
</div>
</div>
@@ -147,7 +159,7 @@
});
batchEqbContractSignProcess(val).then(response => {
this.$toast.clear();
this.$toast.success('转入待签完成');
this.$toast.success(response.data);
let _this = this;
setTimeout(function(){
_this.getData();


+ 10
- 3
src/views/sunVillage_info/list_contractor.vue Целия файл

@@ -1,7 +1,7 @@
<template>
<div class="home_wrapper">
<div class="header_main">
承包方审核
{{ this.$route.query.sqStatus?'承包方授权':'承包方审核'}}
<div class="return_btn" @click="onClickLeft"></div>
</div>
<div class="search_info">
@@ -19,7 +19,7 @@
@load="onRefreshContractor"
>
<van-swipe-cell v-for="(item,index) in cbfList" :key="'cbf'+index">
<div class="item" @click="$router.push({path:'/sunVillage_info/list_contractor_single_process',query:{item:item,status:false}})">
<div class="item" @click="detailsClick(item)">
<div class="info">
<div class="title">
<i class="icon_box"></i>
@@ -34,7 +34,7 @@
<img :src="'/api'+item.gsshqz" width="100%" alt="" v-if="item.gsshqz" >
</div>
</div>
<template #right>
<template #right v-if="!$route.query.sqStatus">
<div class="operation">
<div class="opera_btn" @click="$router.push({path:'/sunVillage_info/list_contractor_single_process',query:{item:item,status:true}})">
<img src="../../assets/images/sunVillage_info/contractor_icon_07.png" alt="" width="25">
@@ -93,6 +93,13 @@
}
});
},
detailsClick(item){
if(this.$route.query.sqStatus){
this.$router.push({path:'/sunVillage_info/list_cbfsq_view',query:{id:item.id,sqStatus:true}})
}else{
this.$router.push({path:'/sunVillage_info/list_cbfsq_view',query:{id:item.id,shStatus:true}})
}
},
onRefreshContractor(){
if(this.loading){
let params = {


+ 14
- 2
src/views/sunVillage_info/list_contractor_process.vue Целия файл

@@ -33,7 +33,9 @@
<img src="../../assets/images/sunVillage_info/list_employer_process_icon_02.png" style="width:22PX;height:22PX;margin-right: 10px;"/>
<p class="tit">信息核对</p>
</div>
<van-field readonly v-model="form.gsjs" label="记事内容" placeholder="记事内容" input-align="right" :border="false" />
<van-cell title="记事内容" style="color: #646566;">
<div style="color:#000000; ">{{form.gsjs}}</div>
</van-cell>
<van-cell title="记事人" style="border: none;color: #646566;" >
<van-field readonly style="padding: 0 0;height: 30px;" label="记事人" input-align="right" :border="false" >
<template #label>
@@ -174,7 +176,17 @@
$('#canvasTT').css('display', 'none');
},
onSign(){
this.showesign = true;
if(this.form.gsjsrqz == null || this.form.gsjsrqz === ""){
this.$toast.fail('请先完成承包方记事!');
}else{
if(this.form.gsshyj != null && this.form.gsshyj !== ""){
this.showesign = true;
}else{
this.$toast.fail('请填写审核意见!');
}

}

},
// 清空画板
handleReset() {


+ 8
- 2
src/views/sunVillage_info/list_employer_process.vue Целия файл

@@ -14,7 +14,9 @@
<van-field readonly v-model="form.fbffzrxm" label="负责人" placeholder="负责人" input-align="right" :border="false" />
<van-field readonly v-model="form.fzrzjlx" label="证件类型" placeholder="证件类型" input-align="right" :border="false" />
<van-field readonly v-model="form.fzrzjhm" label="证件号码" placeholder="证件号码" input-align="right" :border="false" />
<van-field readonly v-model="form.fbfdcjs" label="调查记事" placeholder="调查记事" input-align="right" :border="false" />
<van-cell title="调查记事" style="color: #646566;">
<div style="color:#000000; ">{{form.fbfdcjs}}</div>
</van-cell>
<van-field readonly v-model="form.fbfdcy" label="调查员" placeholder="调查员" input-align="right" :border="false" />
<van-field readonly v-model="form.fbfdcrq" label="调查日期" placeholder="调查日期" input-align="right" :border="false" />
<van-cell title="调查签名" style="color: #646566;">
@@ -138,7 +140,11 @@
$('#canvasTT').css('display', 'none');
},
onSign(){
this.showesign = true;
if(this.form.shyj != null && this.form.shyj !== ""){
this.showesign = true;
}else{
this.$toast.fail('请填写审核意见!');
}
},
// 清空画板
handleReset() {


+ 6
- 2
src/views/sunVillage_info/list_fbfsq.vue Целия файл

@@ -10,7 +10,9 @@
<p class="tit">发包方授权</p>
</div>
<van-field v-model="form.fbfbm" label="发包方代码" placeholder="发包方代码" input-align="right" :border="false" />
<van-field v-model="form.fbfmc" label="发包方名称" placeholder="发包方名称" input-align="right" :border="false" />
<van-cell title="发包方名称" style="color: #646566;">
<div style="color:#000000; ">{{form.fbfmc}}</div>
</van-cell>
<van-field v-model="form.fbffzrxm" label="负责人名称" placeholder="负责人名称" input-align="right" :border="false" />
<van-field v-model="form.fzrzjlx" label="证件类型" placeholder="证件类型" input-align="right" :border="false" />
<van-field v-model="form.fzrzjhm" label="证件号码" placeholder="证件号码" input-align="right" :border="false" />
@@ -21,7 +23,9 @@
<van-field v-model="form.yzbm" label="邮政编码" placeholder=" 邮政编码" input-align="right" :border="false" />
<van-field v-model="form.fbfdcy" label="发包方调查员" placeholder="发包方调查员" input-align="right" :border="false" />
<van-field v-model="form.fbfdcrq" label="发包方调查日期" placeholder="发包方调查日期" input-align="right" :border="false" />
<van-field v-model="form.fbfdcjs" label="发包方调查记事" placeholder="发包方调查记事" input-align="right" :border="false" />
<van-cell title="发包方调查记事" style="color: #646566;">
<div style="color:#000000; ">{{form.fbfdcjs}}</div>
</van-cell>
<van-field readonly label="发包方调查签字" input-align="right" :border="false" />
<img :src="'/api'+form.fbfdcqz" width="100%" alt="" v-if="form.fbfdcqz" />
<van-field v-model="form.shyj" label="审核意见" placeholder="审核意见" input-align="right" :border="false" />


+ 19
- 19
src/views/user/accountSetting/userInformation/companyInformation.vue Целия файл

@@ -9,9 +9,9 @@
/>
<van-form @submit="submitForm">
<van-field v-model="tel" readonly type="tel" label="手机号" placeholder="请输入手机号" required :rules="[{ required:true }]" >
<template #extra >
<p style="color: #007e72" onclick="window.location='phoneInformation'">修改手机号</p>
</template>
<!-- <template #extra >-->
<!-- <p style="color: #007e72" onclick="window.location='phoneInformation'">修改手机号</p>-->
<!-- </template>-->
</van-field>
<!-- <van-field value="15314031621" label="密码" placeholder="请输入密码" required :rules="[{ required:true }]"/>-->
<van-field v-model="userForm.companyName" label="公司名称" placeholder="请输入公司名称" required :rules="[{ required:true }]"/>
@@ -262,14 +262,14 @@ export default {
methods: {
searchBankAddress(){
let data = {
sheng:this.form.sheng,
shi:this.form.shi,
bankType:this.form.bankType,
bankDeposit:this.form.bankDeposit,
sheng:this.userForm.sheng,
shi:this.userForm.shi,
bankType:this.userForm.bankType,
bankDeposit:this.userForm.bankDeposit,
}
depositList(data).then(response => {
if (response.rows.length<1){
if (this.form.sheng==''||this.form.shi==''){
if (this.userForm.sheng==''||this.userForm.shi==''){
this.$toast({
icon: 'fail', // 找到自己需要的图标
message: '请选择省市',
@@ -277,7 +277,7 @@ export default {
})
return;
}
if (this.form.bankDeposit==''){
if (this.userForm.bankDeposit==''){
this.$toast({
icon: 'fail', // 找到自己需要的图标
message: '请输入关键词',
@@ -423,14 +423,14 @@ export default {
file:file.content
}
base64Upload(params1).then((r1) => {
this.form.companyLicense = r1.fileName;
this.userForm.companyLicense = r1.fileName;
})
},
deleteFileYYZZ(elIndex){
return (file, name) => {
let fileIndex = name.index
this.fileListYYZZ[elIndex].splice(fileIndex, 1)
this.form.companyLicense = '';
this.userForm.companyLicense = '';
}
},
submitForm(){
@@ -469,27 +469,27 @@ export default {
},
onConfirmBankType(value){
this.showBankType = false;
this.form.bankAddress = '';
this.form.payeePaymentLines = '';
this.userForm.bankAddress = '';
this.userForm.payeePaymentLines = '';
this.bankType = value.dictLabel;
this.form.bankType = value.dictValue;
this.userForm.bankType = value.dictValue;
},
onConfirmSheng(value){
console.log(value)
this.showSheng = false;
this.form.sheng = value[0];
this.form.shi = value[1];
this.userForm.sheng = value[0];
this.userForm.shi = value[1];
this.sheng = value.join('/');
},
onConfirmBankAddress(value){
console.log(value)
this.form.bankAddress = value.bankDeposit;
this.form.payeePaymentLines = value.payeePaymentLines;
this.userForm.bankAddress = value.bankDeposit;
this.userForm.payeePaymentLines = value.payeePaymentLines;
this.showBankAddress = false;
},
onConfirmAccountType(value){
console.log(value)
this.form.accountType = value.dictValue;
this.userForm.accountType = value.dictValue;
this.accountType = value.dictLabel;
this.showAccountType = false;
},


+ 46
- 12
src/views/user/accountSetting/userInformation/userInformation.vue Целия файл

@@ -9,9 +9,9 @@
/>
<van-form @submit="submitForm">
<van-field v-model="tel" readonly type="tel" label="手机号" placeholder="请输入手机号" readonly required :rules="[{ required:true }]" >
<template #extra >
<p style="color: #007e72" onclick="window.location='phoneInformation'">修改手机号</p>
</template>
<!-- <template #extra >-->
<!-- <p style="color: #007e72" onclick="window.location='phoneInformation'">修改手机号</p>-->
<!-- </template>-->
</van-field>
<van-field v-model="userForm.realname" label="姓名" placeholder="请输入姓名" required :rules="[{ required:true }]"/>
<van-field v-model="userForm.idCardNum" label="身份证号" placeholder="请输入身份证号" required :rules="[{ required:true }]"/>
@@ -128,7 +128,7 @@
import { getInfo } from "@/api/login/index";
import {getMember, base64Attach, userUpdate, showUserImg, deleteUserImg, options} from "@/api/user/index";
import {Dialog} from "vant";
import {base64Upload} from "@/api/register";
import {base64Upload, depositList, realtimeBackList} from "@/api/register";
export default {
name: "userInformation",
data() {
@@ -183,6 +183,40 @@ export default {
this.getInfo();
},
methods: {
searchBankAddress(){
let data = {
sheng:this.userForm.sheng,
shi:this.userForm.shi,
bankType:this.userForm.bankType,
bankDeposit:this.userForm.bankDeposit,
}
depositList(data).then(response => {
if (response.rows.length<1){
if (this.userForm.sheng==''||this.userForm.shi==''){
this.$toast({
icon: 'fail', // 找到自己需要的图标
message: '请选择省市',
duration:"1000",
})
return;
}
if (this.userForm.bankDeposit==''){
this.$toast({
icon: 'fail', // 找到自己需要的图标
message: '请输入关键词',
duration:"1000",
})
return;
}
realtimeBackList(data).then(response2 => {
console.log(response2)
this.bankAddressOption = response2.data;
});
}else{
this.bankAddressOption = response.rows;
}
});
},
getInfo(){
getInfo().then(response => {
getMember(response.user.userId).then(response => {
@@ -296,27 +330,27 @@ export default {
},
onConfirmBankType(value){
this.showBankType = false;
this.form.bankAddress = '';
this.form.payeePaymentLines = '';
this.userForm.bankAddress = '';
this.userForm.payeePaymentLines = '';
this.bankType = value.dictLabel;
this.form.bankType = value.dictValue;
this.userForm.bankType = value.dictValue;
},
onConfirmSheng(value){
console.log(value)
this.showSheng = false;
this.form.sheng = value[0];
this.form.shi = value[1];
this.userForm.sheng = value[0];
this.userForm.shi = value[1];
this.sheng = value.join('/');
},
onConfirmBankAddress(value){
console.log(value)
this.form.bankAddress = value.bankDeposit;
this.form.payeePaymentLines = value.payeePaymentLines;
this.userForm.bankAddress = value.bankDeposit;
this.userForm.payeePaymentLines = value.payeePaymentLines;
this.showBankAddress = false;
},
onConfirmAccountType(value){
console.log(value)
this.form.accountType = value.dictValue;
this.userForm.accountType = value.dictValue;
this.accountType = value.dictLabel;
this.showAccountType = false;
},


Зареждане…
Отказ
Запис