张泽亮 2 meses atrás
pai
commit
48c3d9dcc0
12 arquivos alterados com 954 adições e 5 exclusões
  1. +1
    -1
      config/index.js
  2. +8
    -0
      src/api/register/index.js
  3. BIN
      src/assets/images/sunVillage_info/icon-s-filter.png
  4. +1
    -0
      src/assets/maps/plotPremises_huancui.json
  5. +1
    -0
      src/assets/maps/qu_huancui.json
  6. +5
    -0
      src/permission.js
  7. +27
    -0
      src/router/index.js
  8. +289
    -0
      src/views/sunVillage_info/financeOpen.vue
  9. +25
    -2
      src/views/sunVillage_info/identity_check.vue
  10. +297
    -0
      src/views/sunVillage_info/index_farmer.vue
  11. +4
    -2
      src/views/sunVillage_info/list_complaint.vue
  12. +296
    -0
      src/views/sunVillage_info/login_farmer.vue

+ 1
- 1
config/index.js Ver arquivo

@@ -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/',


+ 8
- 0
src/api/register/index.js Ver arquivo

@@ -70,3 +70,11 @@ export function depositList(query) {
})
}

export function farmerLogin(data) {
return request({
url: '/register/farmerLogin',
method: 'post',
data: data,
})
}


BIN
src/assets/images/sunVillage_info/icon-s-filter.png Ver arquivo

Antes Depois
Largura: 47  |  Altura: 34  |  Tamanho: 1.5 KiB

+ 1
- 0
src/assets/maps/plotPremises_huancui.json Ver arquivo

@@ -0,0 +1 @@
[]

+ 1
- 0
src/assets/maps/qu_huancui.json Ver arquivo

@@ -0,0 +1 @@
[]

+ 5
- 0
src/permission.js Ver arquivo

@@ -187,6 +187,11 @@ const whiteList = [
'/plotPremisesMobile/index',//闲置资源


'/sunVillage_info/login_farmer', //村民登录
'/sunVillage_info/index_farmer', //村民主页
'/sunVillage_info/financeOpen', //村民主页


//承包地确权
'/contracted/login',//登录
'/contracted/index',//首页


+ 27
- 0
src/router/index.js Ver arquivo

@@ -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)
},
];




+ 289
- 0
src/views/sunVillage_info/financeOpen.vue Ver arquivo

@@ -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>

+ 25
- 2
src/views/sunVillage_info/identity_check.vue Ver arquivo

@@ -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>


+ 297
- 0
src/views/sunVillage_info/index_farmer.vue Ver arquivo

@@ -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>

+ 4
- 2
src/views/sunVillage_info/list_complaint.vue Ver arquivo

@@ -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'),


+ 296
- 0
src/views/sunVillage_info/login_farmer.vue Ver arquivo

@@ -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>

Carregando…
Cancelar
Salvar