| @@ -12,7 +12,7 @@ module.exports = { | |||
| proxyTable: { | |||
| "/api": { | |||
| // 请求的目标主机 | |||
| // target: 'http://116.255.223.226:8082/nsgk_test/', // 公网测试环境 | |||
| //target: 'http://218.59.175.44:8082/nsgk_test/', // 公网测试环境 | |||
| // target: `http://192.168.0.116:8091/nsgk_api/`, // 内网测试环境 | |||
| target: 'http://localhost:8080/', | |||
| //target: 'http://192.168.0.106:8080/', | |||
| @@ -70,3 +70,11 @@ export function depositList(query) { | |||
| }) | |||
| } | |||
| export function farmerLogin(data) { | |||
| return request({ | |||
| url: '/register/farmerLogin', | |||
| method: 'post', | |||
| data: data, | |||
| }) | |||
| } | |||
| @@ -0,0 +1 @@ | |||
| [] | |||
| @@ -0,0 +1 @@ | |||
| [] | |||
| @@ -187,6 +187,11 @@ const whiteList = [ | |||
| '/plotPremisesMobile/index',//闲置资源 | |||
| '/sunVillage_info/login_farmer', //村民登录 | |||
| '/sunVillage_info/index_farmer', //村民主页 | |||
| '/sunVillage_info/financeOpen', //村民主页 | |||
| //承包地确权 | |||
| '/contracted/login',//登录 | |||
| '/contracted/index',//首页 | |||
| @@ -5927,6 +5927,33 @@ export const constantRoutes = [ | |||
| }, | |||
| component: (resolve) => require(['@/views/contracted/user/passWord'], resolve) | |||
| }, | |||
| { // 阳光村务(一村一码)-- 村民登录 | |||
| path: '/sunVillage_info/login_farmer', | |||
| name: 'sunVillageInfoFarmerLogin', | |||
| meta: { | |||
| title: '村民验证登录', | |||
| hidden: true, | |||
| }, | |||
| component: (resolve) => require(['@/views/sunVillage_info/login_farmer'], resolve) | |||
| }, | |||
| { // 阳光村务(一村一码)-- 村民主页 | |||
| path: '/sunVillage_info/index_farmer', | |||
| name: 'sunVillageInfoFarmerIndex', | |||
| meta: { | |||
| title: '阳光村务', | |||
| hidden: true, | |||
| }, | |||
| component: (resolve) => require(['@/views/sunVillage_info/index_farmer'], resolve) | |||
| }, | |||
| { ////阳光村务(一村一码)-- 财务公开榜 | |||
| path: '/sunVillage_info/financeOpen', | |||
| name: 'sunVillageInfoFinanceOpen', | |||
| meta: { | |||
| title: '财务公开榜', | |||
| hidden: true, | |||
| }, | |||
| component: (resolve) => require(['@/views/sunVillage_info/financeOpen'], resolve) | |||
| }, | |||
| ]; | |||
| @@ -0,0 +1,289 @@ | |||
| <template> | |||
| <div class="home_wrapper"> | |||
| <div class="header_main"> | |||
| 财务公开 | |||
| <div class="return_btn" @click="back"></div> | |||
| <div class="filter-btn" @click="filterList"></div> | |||
| </div> | |||
| <p class="top_head_title">{{openName}}</p> | |||
| <div class="center_box"> | |||
| <van-row class="table-header"> | |||
| <van-col class="col-item" :span="10">具体事由</van-col> | |||
| <van-col class="col-item" :span="7">收入金额</van-col> | |||
| <van-col class="col-item" :span="7">支出金额</van-col> | |||
| </van-row> | |||
| <van-cell-group class="table-body" v-for="(item,index) in dataList" :key="index"> | |||
| <van-row class="row-item"> | |||
| <van-col class="col-item summary-part" :span="10">{{item.voucherSummary}}</van-col> | |||
| <van-col class="col-item amount-part" :span="7"><template v-if="item.jieAmount">¥{{item.jieAmount}}</template></van-col> | |||
| <van-col class="col-item amount-part" :span="7"><template v-if="item.daiAmount">¥{{item.daiAmount}}</template></van-col> | |||
| </van-row> | |||
| </van-cell-group> | |||
| <van-row class="table-foot"> | |||
| <van-col class="col-item summary-part" :span="10">本月合计:</van-col> | |||
| <van-col class="col-item amount-part" :span="7">¥{{applicationSummary.jie}}</van-col> | |||
| <van-col class="col-item amount-part" :span="7">¥{{applicationSummary.dai}}</van-col> | |||
| </van-row> | |||
| <div class="clear"></div> | |||
| </div> | |||
| <van-popup v-model="dateVisible" position="bottom"> | |||
| <van-datetime-picker | |||
| ref="picker" | |||
| v-model="currentDate" | |||
| type="year-month" | |||
| title="请选择账期" | |||
| :min-date="minDate" | |||
| :max-date="maxDate" | |||
| @confirm="onConfirm" | |||
| /> | |||
| </van-popup> | |||
| </div> | |||
| </template> | |||
| <script> | |||
| import {bookInfo, financialAmountPublicMonthList} from "@/api/sunVillage_info/fixedAssets"; | |||
| import Cookies from "js-cookie"; | |||
| import {date, date_format, strtotime} from "@/utils"; | |||
| export default { | |||
| name: "certificateList", | |||
| data() { | |||
| return { | |||
| dataList:[], | |||
| applicationSummary: {}, | |||
| loading: false, | |||
| queryParams: { | |||
| yearMonth: date_format('yyyy-MM'), | |||
| bookId: '', | |||
| deptId: '', | |||
| all: false | |||
| }, | |||
| deptName: '', | |||
| dateVisible: false, | |||
| minDate: null, | |||
| maxDate: null, | |||
| currentDate: new Date(), | |||
| }; | |||
| }, | |||
| created() { | |||
| this.queryParams.bookId = Cookies.get('bookId'); | |||
| this.queryParams.deptId = Cookies.get('deptId'); | |||
| this.deptName = Cookies.get('deptName'); | |||
| bookInfo(this.queryParams.bookId).then((res) => { | |||
| if(res.data.startDay) | |||
| this.minDate = strtotime(res.data.startDay, 'yyyy-MM'); | |||
| if(res.data.currentDay) | |||
| this.maxDate = strtotime(res.data.currentDay, 'yyyy-MM'); | |||
| if(res.data.currentDay) | |||
| { | |||
| this.currentDate = strtotime(res.data.currentDay, 'yyyy-MM'); | |||
| this.queryParams.yearMonth = res.data.currentDay; | |||
| } | |||
| this.getList(); | |||
| }); | |||
| }, | |||
| methods: { | |||
| getList(){ | |||
| this.$toast.loading({ | |||
| forbidClick: true, | |||
| duration: 0, | |||
| }); | |||
| this.loading = true; | |||
| financialAmountPublicMonthList(this.queryParams).then(response => { | |||
| this.dataList = response.rows; | |||
| this.applicationSummary = response.summary; | |||
| }).finally(() => { | |||
| this.$toast.clear(); | |||
| this.loading = false; | |||
| }); | |||
| }, | |||
| back() { | |||
| this.$router.back(); | |||
| }, | |||
| filterList() { | |||
| this.dateVisible = true; | |||
| }, | |||
| onConfirm(data) { | |||
| this.dateVisible = false; | |||
| this.queryParams.yearMonth = date_format(data, 'yyyy-MM'); | |||
| this.getList(); | |||
| }, | |||
| }, | |||
| computed: { | |||
| openName() { | |||
| return date(this.queryParams.yearMonth, 'yyyy-MM', 'yyyy年MM月') + '财务公开'; | |||
| }, | |||
| } | |||
| } | |||
| </script> | |||
| <style scoped lang="scss"> | |||
| .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; | |||
| } | |||
| .filter-btn{ | |||
| width: 56.4px; | |||
| height: 40.8px; | |||
| background: url('../../assets/images/sunVillage_info/icon-s-filter.png') center center no-repeat; | |||
| background-size: 47px 34px; | |||
| position: absolute; | |||
| right: 38px; | |||
| top: 36px; | |||
| } | |||
| } | |||
| } | |||
| .top_head_title{ | |||
| font-size: 16PX; | |||
| text-align: center; | |||
| padding: 15PX 0; | |||
| } | |||
| .center_box{ | |||
| padding: 0 2% 0.2rem; | |||
| } | |||
| .table-header { | |||
| background-color: #2facfe; | |||
| position: relative; | |||
| display: -webkit-box; | |||
| display: -webkit-flex; | |||
| display: flex; | |||
| box-sizing: border-box; | |||
| width: 100%; | |||
| padding: 0.2rem 0.1rem; | |||
| overflow: hidden; | |||
| color: #323233; | |||
| line-height: 0.36rem; | |||
| font-weight: bold; | |||
| .col-item { | |||
| position: relative; | |||
| box-sizing: border-box; | |||
| padding: 0.2rem 0.1rem; | |||
| overflow: hidden; | |||
| color: #ffffff; | |||
| font-size: 0.36rem; | |||
| line-height: 0.36rem; | |||
| text-align: center; | |||
| } | |||
| } | |||
| .table-body { | |||
| .row-item { | |||
| position: relative; | |||
| display: -webkit-box; | |||
| display: -webkit-flex; | |||
| display: flex; | |||
| box-sizing: border-box; | |||
| width: 100%; | |||
| padding: 0.2rem 0.1rem; | |||
| overflow: hidden; | |||
| color: #323233; | |||
| font-size: 14px; | |||
| line-height: 0.32rem; | |||
| background-color: #fff; | |||
| .col-item { | |||
| position: relative; | |||
| box-sizing: border-box; | |||
| padding: 0.2rem 0.1rem; | |||
| overflow: hidden; | |||
| color: #323233; | |||
| font-size: 14px; | |||
| line-height: 24px; | |||
| background-color: #fff; | |||
| display: -webkit-box; | |||
| display: -webkit-flex; | |||
| display: flex; | |||
| align-items: center; | |||
| &:nth-child(1) { | |||
| border-right: 0.005rem solid #DDDDDD; | |||
| } | |||
| &:nth-child(3) { | |||
| border-left: 0.005rem solid #DDDDDD; | |||
| } | |||
| } | |||
| .summary-part { | |||
| font-size: 0.33rem; | |||
| } | |||
| .amount-part { | |||
| justify-content: end; | |||
| text-align: right; | |||
| font-size: 0.36rem; | |||
| } | |||
| } | |||
| } | |||
| .table-foot { | |||
| position: relative; | |||
| display: -webkit-box; | |||
| display: -webkit-flex; | |||
| display: flex; | |||
| box-sizing: border-box; | |||
| width: 100%; | |||
| padding: 0.2rem 0.1rem; | |||
| overflow: hidden; | |||
| color: #FF0000; | |||
| font-size: 14px; | |||
| line-height: 0.32rem; | |||
| background-color: rgba(47,172,254,0.2); | |||
| font-weight: bold; | |||
| .col-item { | |||
| position: relative; | |||
| box-sizing: border-box; | |||
| padding: 0.2rem 0.1rem; | |||
| overflow: hidden; | |||
| font-size: 0.32rem; | |||
| line-height: 0.32rem; | |||
| &:nth-child(1) { | |||
| border-right: 0.005rem solid #EEEEEE; | |||
| } | |||
| &:nth-child(3) { | |||
| border-left: 0.005rem solid #EEEEEE; | |||
| } | |||
| } | |||
| .summary-part { | |||
| font-size: 0.33rem; | |||
| text-align: center; | |||
| } | |||
| .amount-part { | |||
| text-align: right; | |||
| font-size: 0.36rem; | |||
| } | |||
| } | |||
| </style> | |||
| @@ -42,16 +42,20 @@ | |||
| responseData: null, | |||
| remainingSeconds: 3, // 剩余秒数,初始值为3秒 | |||
| formData:null, | |||
| redirectPath: '/sunVillage_info/index_code_rights', | |||
| redirectName: null, | |||
| redirectQuery: null, | |||
| }; | |||
| }, | |||
| created() { | |||
| this.loadRedirectInfo(); | |||
| this.responseData = this.$route.query.responseData; | |||
| // 判断是否已认证 | |||
| if (this.responseData.isFacial === 'Y') { | |||
| const countdownInterval = setInterval(() => { | |||
| if (this.remainingSeconds === 0) { | |||
| clearInterval(countdownInterval); // 清除计时器 | |||
| this.$router.push({ path: '/sunVillage_info/index_code_rights' }); | |||
| this.redirect(); | |||
| } else { | |||
| this.remainingSeconds--; | |||
| } | |||
| @@ -97,7 +101,7 @@ | |||
| message: '人脸验证成功', | |||
| duration: "1000" | |||
| }); | |||
| this.$router.push({path: '/sunVillage_info/index_code_rights'}) | |||
| this.redirect(); | |||
| } | |||
| }) | |||
| }, | |||
| @@ -110,6 +114,25 @@ | |||
| this.formData.append("file", file.file); | |||
| this.$toast.clear(); | |||
| }, | |||
| loadRedirectInfo() { | |||
| if(this.$route.query.redirectPath) | |||
| this.redirectPath = this.$route.query.redirectPath; | |||
| if(this.$route.query.redirectName) | |||
| this.redirectName = this.$route.query.redirectName; | |||
| if(this.$route.query.redirectQuery) | |||
| this.redirectQuery = this.$route.query.redirectQuery; | |||
| console.log('redirect info: ', this.redirectPath, this.redirectName, this.redirectQuery); | |||
| }, | |||
| redirect() { | |||
| let parms = {}; | |||
| if(this.redirectPath) | |||
| parms.path = this.redirectPath; | |||
| else if(this.redirectName) | |||
| parms.name = this.redirectName; | |||
| if(this.redirectQuery) | |||
| parms.query = this.redirectQuery; | |||
| this.$router.push(parms); | |||
| }, | |||
| }, | |||
| }; | |||
| </script> | |||
| @@ -0,0 +1,297 @@ | |||
| <template> | |||
| <div class="home_wrapper"> | |||
| <div class="head_main"> | |||
| <div class="location"> | |||
| <div class="address"><i class="icon"></i>{{deptName}}</div> | |||
| <div class="address">{{bookName}}</div> | |||
| </div> | |||
| <div class="exit_btn" @click="goOut"> | |||
| <p>{{userName}}</p> | |||
| <i class="icon"></i> | |||
| </div> | |||
| </div> | |||
| <div class="index_info"> | |||
| <div class="title"></div> | |||
| <div class="nav_box" style="margin-top: 3vh;" v-for="(item,idx) in menusList" :key="idx"> | |||
| <p class="nav_tit">{{item.modleName}}</p> | |||
| <div class="nav_list"> | |||
| <router-link | |||
| v-for="(childrenItem,childrenIdx) in item.menus" | |||
| :key="childrenItem.id" | |||
| :to="{name:childrenItem.menuUrl,query:{type:'code',typeX:childrenItem.urlPara}}" | |||
| class="nav_item" | |||
| :style="`background:url(${require('@/assets/images/sunVillage_info/' + childrenItem.menuIcon)}) no-repeat center top;background-size: 50%;`" | |||
| > | |||
| {{childrenItem.menuName}} | |||
| </router-link> | |||
| </div> | |||
| </div> | |||
| </div> | |||
| <div class="footer"> | |||
| {{configValue == ""?'技术支持:北京农燊高科信息技术有限公司':configValue}} | |||
| </div> | |||
| </div> | |||
| </template> | |||
| <script> | |||
| import {bookInfo, nologinMenus} from "@/api/sunVillage_info/fixedAssets"; | |||
| import Cookies from "js-cookie"; | |||
| import {sysConfig} from "@/api/homesteadSurvey"; | |||
| export default { | |||
| name: "certificateList", | |||
| data() { | |||
| return { | |||
| wdqlList:[], | |||
| qqbzList:[], | |||
| deptIdOptions:[], | |||
| villageVisbile:false, | |||
| showBookList:false, | |||
| deptName:'', | |||
| //选中的值 | |||
| villageValue: "", | |||
| //省市区区级list | |||
| hcAreaInfoOption: [], | |||
| hcAreaInfoFieldName: { | |||
| text: "label", | |||
| value: "value", | |||
| children: "children", | |||
| }, | |||
| bookName:'', | |||
| queryParams: { | |||
| pageNum: 1, | |||
| pageSize: 100, | |||
| }, | |||
| //账套列表 | |||
| bookVisbile:false, | |||
| bookList:[], | |||
| bookId:"", | |||
| deptId:"", | |||
| book:"", | |||
| userName:"", | |||
| menusList:[], | |||
| configValue:'' | |||
| }; | |||
| }, | |||
| created() { | |||
| this.deptId = Cookies.get('deptId') | |||
| this.bookId = Cookies.get('bookId') | |||
| if(this.bookId) | |||
| { | |||
| bookInfo(this.bookId).then((res) => { | |||
| if (res.code == 200) { | |||
| this.deptName = res.data.deptName; | |||
| this.bookName = res.data.bookName; | |||
| } | |||
| }); | |||
| } | |||
| const user = Cookies.get('user'); | |||
| if(user){ | |||
| this.userName = JSON.parse(user).memberName | |||
| } | |||
| let query = { | |||
| identityType:2 | |||
| } | |||
| nologinMenus(query).then((res) => { | |||
| if (res.code == 200) { | |||
| this.menusList = res.data; | |||
| } | |||
| }); | |||
| let params={ | |||
| configKey: "system.company.name"} | |||
| sysConfig(params).then((res) => { | |||
| if (res.code == 200) { | |||
| this.configValue = res.rows[0].configValue; | |||
| } | |||
| }); | |||
| }, | |||
| methods: { | |||
| goOut(){ | |||
| // Cookies.remove("memberName"); | |||
| // Cookies.remove("idcard"); | |||
| Cookies.remove("user"); | |||
| this.$router.push({name:'sunVillageInfoFarmerLogin',query:{deptId:this.deptId,bookId:this.bookId}}) | |||
| } | |||
| }, | |||
| } | |||
| </script> | |||
| <style scoped lang="scss"> | |||
| .fixed_btn{ | |||
| position: fixed; | |||
| right: 0; | |||
| width: 115PX; | |||
| bottom: 15%; | |||
| border-top-left-radius: 115PX; | |||
| border-bottom-left-radius: 115PX; | |||
| box-shadow: 0px 2px 5px #ccc; | |||
| } | |||
| .home_wrapper{ | |||
| background: #f1f2f2; | |||
| width: 100vw; | |||
| min-height: 100vh; | |||
| .head_main{ | |||
| height: 340px; | |||
| background: url('../../assets/images/sunVillage_info/index_head_green.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| position: relative; | |||
| .location{ | |||
| height: 42px; | |||
| line-height: 42px; | |||
| position: absolute; | |||
| left: 38px; | |||
| top: 72px; | |||
| display: flex; | |||
| .address{ | |||
| padding:0 18px; | |||
| background:rgba(132,131,147,0.75); | |||
| border-radius: 42px; | |||
| font-size: 28px; | |||
| color: #ffffff; | |||
| margin-right: 12px; | |||
| display: flex; | |||
| align-items:center; | |||
| .icon{ | |||
| display: block; | |||
| width: 20px; | |||
| height: 26px; | |||
| background: url('../../assets/images/sunVillage_info/index_icon_1_green.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| margin-right: 10px; | |||
| } | |||
| } | |||
| .user{ | |||
| .icon{ | |||
| width: 32px; | |||
| height: 32px; | |||
| background: url('../../assets/images/sunVillage_info/user_icon.png') no-repeat!important; | |||
| background-size: 100% 100%; | |||
| } | |||
| } | |||
| } | |||
| .exit_btn{ | |||
| border-radius: 50%; | |||
| display: flex; | |||
| align-items: center; | |||
| justify-content: center; | |||
| position: absolute; | |||
| top: 64px; | |||
| right: 36px; | |||
| p{ | |||
| background: #3f3d56; | |||
| color: #ffffff; | |||
| padding: 3PX 15PX; | |||
| position: relative; | |||
| right: -6PX; | |||
| border-top-left-radius: 20PX; | |||
| border-bottom-left-radius: 20PX; | |||
| box-shadow: -3PX 2PX 4PX rgba(0,0,0,0.3); | |||
| } | |||
| .icon{ | |||
| width: 61px; | |||
| height: 61px; | |||
| background: url('../../assets/images/sunVillage_info/login_head_h_rights.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| box-shadow: -3PX 2PX 4PX rgba(0,0,0,0.3); | |||
| border-radius: 100%; | |||
| } | |||
| } | |||
| } | |||
| .index_info{ | |||
| padding-top: 4.1vh; | |||
| .title{ | |||
| width: 521px; | |||
| height: 52px; | |||
| background: url('../../assets/images/sunVillage_info/index_title2_rights.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| margin:0 auto; | |||
| } | |||
| .nav_box{ | |||
| margin: 0 auto; | |||
| width: calc(100% - 60px); | |||
| background: #ffffff; | |||
| padding: 30px 30px 40px; | |||
| border-radius: 15PX; | |||
| box-shadow: 0px 2px 10px #cccccc; | |||
| .nav_tit{ | |||
| font-size: 35px; | |||
| margin-bottom: 15PX; | |||
| font-weight: bold; | |||
| } | |||
| .nav_list{ | |||
| display: flex; | |||
| flex-flow: wrap; | |||
| /*justify-content: space-between;*/ | |||
| .nav_item{ | |||
| font-size: 24px; | |||
| color: #333333; | |||
| text-align: center; | |||
| display: flex; | |||
| align-items: center; | |||
| justify-content: center; | |||
| padding-top: 45PX; | |||
| width: 25%; | |||
| &:nth-child(3){ | |||
| margin-right: 0; | |||
| } | |||
| &:nth-child(4n+1){ | |||
| margin-top: 15PX; | |||
| } | |||
| &:nth-child(5n+1){ | |||
| margin-top: 15PX; | |||
| } | |||
| &:nth-child(6n+1){ | |||
| margin-top: 15PX; | |||
| } | |||
| &:nth-child(1){ | |||
| margin-top: 0PX; | |||
| } | |||
| &.n_1{ | |||
| background: url('../../assets/images/sunVillage_info/index_block_1_rights.png') no-repeat center top; | |||
| background-size: 34.5PX; | |||
| } | |||
| &.n_2{ | |||
| background: url('../../assets/images/sunVillage_info/index_block_2_rights.png') no-repeat center top; | |||
| background-size: 34.5PX; | |||
| } | |||
| &.n_3 { | |||
| background: url('../../assets/images/sunVillage_info/index_block_3_rights.png') no-repeat center top; | |||
| background-size: 34.5PX; | |||
| } | |||
| &.n_4 { | |||
| background: url('../../assets/images/sunVillage_info/index_block_4_rights.png') no-repeat center top; | |||
| background-size: 34.5PX; | |||
| } | |||
| &.n_5 { | |||
| background: url('../../assets/images/sunVillage_info/index_block_5.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| } | |||
| &.n_6 { | |||
| background: url('../../assets/images/sunVillage_info/index_block_06.png') no-repeat center top; | |||
| background-size: 34.5PX; | |||
| } | |||
| &.n_66 { | |||
| background: url('../../assets/images/sunVillage_info/tcIcon.png') no-repeat center top; | |||
| background-size: 44.5PX; | |||
| } | |||
| &.n_77 { | |||
| background: url('../../assets/images/sunVillage_info/index_block_77.png') no-repeat center top; | |||
| background-size: 34.5PX; | |||
| } | |||
| } | |||
| } | |||
| } | |||
| } | |||
| .footer{ | |||
| margin-top: 15PX; | |||
| bottom: 5.5vh; | |||
| width: 100%; | |||
| font-size: 22px; | |||
| color: #3f3d56; | |||
| text-align: center; | |||
| } | |||
| } | |||
| </style> | |||
| @@ -6,7 +6,7 @@ | |||
| > | |||
| 投诉建议 | |||
| <div class="return_btn" @click="onClickLeft"></div> | |||
| <div class="add_btn" @click="goAdd" v-show="showBtn"></div> | |||
| <div class="add_btn" @click="goAdd" v-show="showBtn || isVisitor"></div> | |||
| </div> | |||
| <van-list | |||
| v-model="loading" | |||
| @@ -60,7 +60,8 @@ | |||
| show: true, | |||
| fileList:[], | |||
| showBtn:true, | |||
| queryParams:{} | |||
| queryParams:{}, | |||
| isVisitor: false, | |||
| }; | |||
| }, | |||
| created() { | |||
| @@ -80,6 +81,7 @@ | |||
| translate_dict:1, | |||
| } | |||
| }else{ | |||
| this.isVisitor = true; | |||
| this.showBtn = false; | |||
| this.queryParams = { | |||
| deptId:Cookies.get('deptId'), | |||
| @@ -0,0 +1,296 @@ | |||
| <template> | |||
| <div class="home_wrapper"> | |||
| <div class="return_btn" @click="onClickLeft"></div> | |||
| <div class="focus_head"> | |||
| </div> | |||
| <div class="focus_info"> | |||
| <div class="icon"></div> | |||
| <div class="title"></div> | |||
| </div> | |||
| <van-form @submit="handleLogin"> | |||
| <div class="login_from"> | |||
| <div class="flex_block"> | |||
| <div class="flex_input_main"> | |||
| <div class="icon_wrap user"></div> | |||
| <div class="input_wrap"> | |||
| <input type="text" v-model="formData.name" class="ipt" placeholder="姓名"/> | |||
| </div> | |||
| </div> | |||
| </div> | |||
| <div class="flex_block"> | |||
| <div class="flex_input_main"> | |||
| <div class="icon_wrap password"></div> | |||
| <div class="input_wrap"> | |||
| <input type="text" v-model="formData.idcard" class="ipt" placeholder="身份证号码"/> | |||
| </div> | |||
| </div> | |||
| </div> | |||
| <van-checkbox v-model="formData.rememberMe">记住我的信息</van-checkbox> | |||
| </div> | |||
| <div class="login_btn"> | |||
| <van-button | |||
| class="btn" | |||
| round | |||
| block | |||
| type="info" | |||
| native-type="submit" | |||
| color="linear-gradient(to right, #2ec8c4, #30c271)" | |||
| :loading="loading" | |||
| >验证</van-button> | |||
| </div> | |||
| </van-form> | |||
| </div> | |||
| </template> | |||
| <script> | |||
| import { getCodeImg, getSmsCode } from "@/api/login"; | |||
| import { checkFarmer, allowFaceVerify } from "@/api/sunVillage_info/fixedAssets"; | |||
| import { getFamilyMemberList } from "@/api/sunVillage_info/homestead/familyMember"; | |||
| import Cookies from "js-cookie"; | |||
| import { encrypt, decrypt } from "../../utils/jsencrypt"; | |||
| //引用wx sdk | |||
| import wx from "weixin-js-sdk"; | |||
| import {farmerLogin} from "@/api/register"; | |||
| export default { | |||
| name: "loginFarmer", | |||
| data() { | |||
| return { | |||
| formData: { | |||
| name: '', | |||
| idcard: '', | |||
| rememberMe: false, | |||
| }, | |||
| loading: false, | |||
| codeUrl: "", //验证码 | |||
| isSmsLogin: false, //是否手机验证码 | |||
| computeTime: 0, | |||
| height:0, | |||
| show:true | |||
| }; | |||
| }, | |||
| created() { | |||
| this.height = document.body.clientHeight | |||
| this.getCookie(); | |||
| }, | |||
| methods: { | |||
| getCookie() { | |||
| const memberName = Cookies.get("memberName"); | |||
| const idcard = Cookies.get("idcard"); | |||
| const rememberMe = Cookies.get("rememberInformation"); | |||
| if(memberName !== undefined) | |||
| this.formData.name = memberName; | |||
| if(idcard !== undefined) | |||
| this.formData.idcard = idcard; | |||
| if(rememberMe !== undefined) | |||
| this.formData.rememberMe = Boolean(rememberMe); | |||
| }, | |||
| remember() { | |||
| if (this.formData.rememberMe) { | |||
| Cookies.set("memberName", this.formData.name, { expires: 30 }); | |||
| Cookies.set("idcard", this.formData.idcard, { expires: 30 }); | |||
| Cookies.set("rememberInformation", this.formData.rememberMe, { expires: 30 }); | |||
| } else { | |||
| Cookies.remove("username"); | |||
| Cookies.remove("password"); | |||
| Cookies.remove("rememberInformation"); | |||
| } | |||
| }, | |||
| validate() { | |||
| if (this.formData.name == "") { | |||
| this.$dialog.alert({ | |||
| message: '姓名不能为空', | |||
| }); | |||
| return false; | |||
| } else if (this.formData.idcard == "") { | |||
| this.$dialog.alert({ | |||
| message: '身份证不能为空', | |||
| }); | |||
| return false; | |||
| } | |||
| return true; | |||
| }, | |||
| handleLogin(values) { | |||
| this.remember(); | |||
| if(!this.validate()) | |||
| return; | |||
| farmerLogin(this.formData).then(response => { | |||
| const farmer = response.data; | |||
| let seconds = 3600; | |||
| let expires = new Date(new Date() * 1 + seconds * 1000); | |||
| Cookies.set("bookName", farmer.bookName, { | |||
| expires: 30, | |||
| }); | |||
| Cookies.set("deptName", farmer.deptName, { | |||
| expires: 30, | |||
| }); | |||
| Cookies.set("bookId", farmer.bookId, { | |||
| expires: 30, | |||
| }); | |||
| Cookies.set("deptId", farmer.deptId, { | |||
| expires: 30, | |||
| }); | |||
| const farmerCode = farmer.hzFarmerCode; | |||
| Cookies.set("farmerCode",farmerCode, { expires: 30 }); | |||
| Cookies.set("user", farmer, { expires: expires }); | |||
| allowFaceVerify().then(resp => { | |||
| if(resp.data === 'true' || 1) | |||
| { | |||
| this.$router.push({ | |||
| path: '/sunVillage_info/identity_check', | |||
| query: { | |||
| responseData: response.data, | |||
| redirectPath: '/sunVillage_info/index_farmer', | |||
| }}); | |||
| } | |||
| else | |||
| this.$router.push({path:'/sunVillage_info/index_farmer'}); | |||
| }); | |||
| }); | |||
| }, | |||
| }, | |||
| }; | |||
| </script> | |||
| <style scoped lang="scss"> | |||
| /deep/ .van-checkbox__label{ | |||
| color: #ffffff; | |||
| } | |||
| /deep/ .van-checkbox{ | |||
| justify-content: right; | |||
| } | |||
| .home_wrapper{ | |||
| background: #f1f2f2; | |||
| width: 100vw; | |||
| min-height: 100vh; | |||
| .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; | |||
| } | |||
| .focus_head{ | |||
| height: 450px; | |||
| background: url('../../assets/images/sunVillage_info/login_head_code_green.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| } | |||
| .focus_info{ | |||
| margin-top: -74px; | |||
| .icon{ | |||
| background: url('../../assets/images/sunVillage_info/login_head_t.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| width: 145px; | |||
| height: 148px; | |||
| margin:0 auto; | |||
| } | |||
| .title{ | |||
| width: 180PX; | |||
| height: 52px; | |||
| background: url('../../assets/images/sunVillage_info/login_head_nr_code.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| margin:30px auto 0; | |||
| } | |||
| } | |||
| .login_from{ | |||
| width: 676px; | |||
| height: 350px; | |||
| background: url('../../assets/images/sunVillage_info/login_main_green.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| margin: 50px auto 0; | |||
| padding:60px 50px 0; | |||
| .flex_block{ | |||
| margin-bottom: 40px; | |||
| display: flex; | |||
| justify-content:space-between; | |||
| .flex_input_main{ | |||
| position: relative; | |||
| display: flex; | |||
| flex: 1; | |||
| align-items:center; | |||
| background: rgba(255,255,255,0.7); | |||
| border-radius: 62px; | |||
| height: 62px; | |||
| .icon_wrap{ | |||
| width: 35px; | |||
| height: 35px; | |||
| &.user{ | |||
| background: url('../../assets/images/sunVillage_info/login_icon_1.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| margin-left: 30px; | |||
| } | |||
| &.password{ | |||
| background: url('../../assets/images/sunVillage_info/login_icon_2_code.png') no-repeat; | |||
| height: 25px; | |||
| background-size: 100% 100%; | |||
| margin-left: 30px; | |||
| } | |||
| &.valid{ | |||
| background: url('../../assets/images/sunVillage_info/login_icon_3.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| margin-left: 30px; | |||
| } | |||
| } | |||
| .input_wrap{ | |||
| flex: 1; | |||
| margin-left: 16px; | |||
| padding-right: 30px; | |||
| .ipt{ | |||
| width: 100%; | |||
| height: 48px; | |||
| background:transparent; | |||
| font-size: 30px; | |||
| color: #3f3d56; | |||
| } | |||
| } | |||
| .showHidden{ | |||
| width: 32px; | |||
| height: 32px; | |||
| background: url('../../assets/images/sunVillage_info/login_icon_4.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| position: absolute; | |||
| right: 38px; | |||
| cursor: pointer; | |||
| &.ico_hide{ | |||
| background: url('../../assets/images/sunVillage_info/login_icon_5.png') no-repeat; | |||
| background-size: 100% 100%; | |||
| } | |||
| } | |||
| &.valid{ | |||
| flex:0 0 380px; | |||
| } | |||
| } | |||
| .valid_main{ | |||
| width: 165px; | |||
| height: 62px; | |||
| border-radius: 30px; | |||
| img{ | |||
| width: 100%; | |||
| height: 100%; | |||
| border-radius: 30px; | |||
| } | |||
| } | |||
| } | |||
| } | |||
| .login_btn{ | |||
| padding-top: 80px; | |||
| .btn{ | |||
| width: 315px; | |||
| height: 80px; | |||
| margin:0 auto; | |||
| font-size: 32px; | |||
| color: #fff; | |||
| text-align: center; | |||
| border: none; | |||
| } | |||
| } | |||
| } | |||
| </style> | |||