Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/jczz_app
| | |
| | | const currentPage = pages[pages.length - 1] |
| | | uni.setStorageSync("responIndex", 0) |
| | | uni.clearStorageSync() |
| | | uni.redirectTo({ |
| | | url: `/pages/login/login-account?redirect=/${currentPage.route}` |
| | | }) |
| | | // uni.redirectTo({ |
| | | // url: `/pages/login/login-account?redirect=/${currentPage.route}` |
| | | // }) |
| | | |
| | | |
| | | // uni.showModal({ |
| | | // title: "提示", |
| | | // content: "请登录", |
| | | // showCancel: false, |
| | | // success: res => { |
| | | // if (res.confirm) { |
| | | // uni.redirectTo({ |
| | | // url: `/pages/login/login-account?redirect=/${currentPage.route}` |
| | | // }) |
| | | // } else if (res.cancel) { |
| | | // console.log('用户点击取消'); |
| | | // } |
| | | // } |
| | | // }) |
| | | uni.showModal({ |
| | | title: "提示", |
| | | content: "请登录", |
| | | showCancel: false, |
| | | success: res => { |
| | | if (res.confirm) { |
| | | uni.redirectTo({ |
| | | url: `/pages/login/login-account?redirect=/${currentPage.route}` |
| | | }) |
| | | } else if (res.cancel) { |
| | | console.log('用户点击取消'); |
| | | } |
| | | } |
| | | }) |
| | | }else { |
| | | uni.showToast({ |
| | | title: '系统繁忙,请稍后再试', |
| | |
| | | liveList: [], //生活菜单
|
| | | contactList: [], //便民服务联系方式
|
| | | isShowHouse: false, //显示楼盘表
|
| | | isShowNotice: false, //显示通知公告
|
| | | isShowNotice: true, //显示通知公告
|
| | | isShowContact: false,
|
| | | bannerList: [],
|
| | | navList: [{
|
| | |
| | | },
|
| | |
|
| | | onReady() {
|
| | | if (!uni.getStorageSync("userInfo")) {
|
| | | uni.redirectTo({
|
| | | url: "/pages/login/login-account"
|
| | | })
|
| | | }
|
| | | // if (!uni.getStorageSync("userInfo")) {
|
| | | // uni.redirectTo({
|
| | | // url: "/pages/login/login-account"
|
| | | // })
|
| | | // }
|
| | | },
|
| | |
|
| | | computed: {
|
| | |
| | | this.selectRole = uni.getStorageSync("activeRole")
|
| | | this.getMenuList()
|
| | | this.getSiteList()
|
| | | // this.getNoticeList()
|
| | | this.getNoticeList()
|
| | | },
|
| | |
|
| | | getBanner() {
|
| | |
| | | <image class="bg" src="/static/img/login-bg.png" :style="{height:screenHeight}" mode="aspectFill"></image> |
| | | |
| | | |
| | | <view class="content" v-if="!loginType"> |
| | | <image class="title-img" src="/static/icon/login-title.png" mode="aspectFill"></image> |
| | | <view class="flex f-d-c a-i-c" style="margin-bottom:60rpx;"> |
| | | <view class="f-28">登录后即可展示自己</view> |
| | | <view class="fw" style="font-size:56rpx;margin:40rpx 0 38rpx;">185****1647</view> |
| | | <view class="f-22">认证服务由中国移动提供</view> |
| | | </view> |
| | | |
| | | <button class="submit-btn f-28">本机号码一键登录</button> |
| | | <button class="btn bgc-ff f-28 mt-30" @click="accountLogin()">账号登录</button> |
| | | <view class="agreement flex"> |
| | | <u-checkbox-group v-model="isAgreement"> |
| | | <u-checkbox shape="circle" size="16" ></u-checkbox> |
| | | </u-checkbox-group> |
| | | |
| | | <view class="f-22">我已阅读并同意<text class="c-main">用户协议</text>和<text class="c-main">隐私政策</text>以及 <text class="c-main">《中国移动认证服务条款》</text>·同时登录并使用基层智治综合协同平台</view> |
| | | <view class="content" v-if="!loginType"> |
| | | <image class="title-img" src="/static/icon/login-title.png" mode="aspectFill"></image> |
| | | <view class="flex f-d-c a-i-c" style="margin-bottom:60rpx;"> |
| | | <view class="f-28">登录后即可展示自己</view> |
| | | <view class="fw" style="font-size:56rpx;margin:40rpx 0 38rpx;">185****1647</view> |
| | | <view class="f-22">认证服务由中国移动提供</view> |
| | | </view> |
| | | </view> |
| | | |
| | | |
| | | <view class="content" v-if="loginType == 1"> |
| | | <button class="submit-btn f-28">本机号码一键登录</button> |
| | | <button class="btn bgc-ff f-28 mt-30" @click="accountLogin()">账号登录</button> |
| | | <view class="agreement flex"> |
| | | <u-checkbox-group v-model="isAgreement"> |
| | | <u-checkbox shape="circle" size="16"></u-checkbox> |
| | | </u-checkbox-group> |
| | | |
| | | <view class="f-22">我已阅读并同意<text class="c-main">用户协议</text>和<text class="c-main">隐私政策</text>以及 <text |
| | | class="c-main">《中国移动认证服务条款》</text>·同时登录并使用基层智治综合协同平台</view> |
| | | </view> |
| | | </view> |
| | | |
| | | |
| | | <view class="content" v-if="loginType == 1"> |
| | | |
| | | <image class="title-img" src="/static/icon/login-title.png" mode="aspectFill"></image> |
| | | |
| | |
| | | <u-input placeholder="请输入用户名" prefixIcon="account" |
| | | prefixIconStyle="font-size: 28px;color: #017BFC" |
| | | placeholderStyle="font-size:28rpx;color:#ABABAB;" |
| | | customStyle="background:#fff;width:634rpx;height:120rpx;" v-model="form.phone"></u-input> |
| | | customStyle="background:#fff;width:634rpx;height:120rpx;" v-model="form.phone"></u-input> |
| | | </u-form-item> |
| | | <u-form-item prop="password" borderBottom ref="password"> |
| | | |
| | | <u-input placeholder="请输入密码" prefixIcon="lock" prefixIconStyle="font-size: 28px;color: #017BFC" |
| | | placeholderStyle="font-size:28rpx;color:#ABABAB;" |
| | | customStyle="background:#fff;width:634rpx;height:120rpx;" :type="passwordProps.passwordType" v-model="form.password"> |
| | | customStyle="background:#fff;width:634rpx;height:120rpx;" :type="passwordProps.passwordType" |
| | | v-model="form.password"> |
| | | <template slot="suffix"> |
| | | <u-icon @click="showPassword" :name="passwordProps.passwordIcon" size="24" color="#9FA5C0"></u-icon> |
| | | <u-icon @click="showPassword" :name="passwordProps.passwordIcon" size="24" |
| | | color="#9FA5C0"></u-icon> |
| | | </template> |
| | | </u-input> |
| | | </u-form-item> |
| | |
| | | form: { |
| | | phone: "", |
| | | password: "", |
| | | |
| | | |
| | | |
| | | |
| | | }, |
| | | rules: { |
| | | 'phone': [{ |
| | |
| | | passwordType: "password" |
| | | }, |
| | | screenHeight: "", |
| | | loginType:1 ,//登录类型 1账号密码 2 一键登录 |
| | | isAgreement:true |
| | | loginType: 1, //登录类型 1账号密码 2 一键登录 |
| | | isAgreement: true |
| | | } |
| | | }, |
| | | |
| | | onLoad() { |
| | | this.screenHeight = `${uni.getSystemInfoSync().screenHeight}px`; |
| | | this.form.phone = uni.getStorageSync("phoneNmber"); |
| | | }, |
| | | |
| | | methods: { |
| | | |
| | | accountLogin(){ |
| | | |
| | | accountLogin() { |
| | | // if(!this.isAgreement){ |
| | | |
| | | |
| | | // } |
| | | console.log(111); |
| | | this.loginType = 1; |
| | | }, |
| | | |
| | | |
| | | submit() { |
| | | const that = this |
| | | this.$refs.form.validate().then(res => { |
| | | this.$u.api |
| | | .token(this.tenantId, this.form.phone, md5(this.form.password)) |
| | | .then(data => { |
| | | uni.setStorageSync("phoneNmber", this.form.phone) |
| | | this.$u.func.login(data) |
| | | }) |
| | | .catch(err => { |
| | |
| | | justify-content: space-evenly; |
| | | } |
| | | } |
| | | .submit-btn{ |
| | | width:634rpx; |
| | | height:94rpx; |
| | | |
| | | .submit-btn { |
| | | width: 634rpx; |
| | | height: 94rpx; |
| | | line-height: 94rpx; |
| | | background: linear-gradient(163deg, #01BDFC 0%, #017BFC 100%); |
| | | border-radius: 8rpx 8rpx 8rpx 8rpx; |
| | | color:#fff; |
| | | color: #fff; |
| | | } |
| | | .mt-190{ |
| | | margin-top:190rpx; |
| | | |
| | | .mt-190 { |
| | | margin-top: 190rpx; |
| | | } |
| | | .btn{ |
| | | width:634rpx; |
| | | height:94rpx; |
| | | |
| | | .btn { |
| | | width: 634rpx; |
| | | height: 94rpx; |
| | | line-height: 94rpx; |
| | | margin-top:30rpx; |
| | | |
| | | margin-top: 30rpx; |
| | | |
| | | } |
| | | .agreement{ |
| | | width:634rpx; |
| | | margin:37rpx auto 0; |
| | | |
| | | .agreement { |
| | | width: 634rpx; |
| | | margin: 37rpx auto 0; |
| | | } |
| | | </style> |
| | | </style> |
| | |
| | | <view class="container">
|
| | | <view class="content-box">
|
| | | <view class="info">
|
| | | <view class="item location"> |
| | | <u-icon name="map" color="#AAAAAA" size="15"></u-icon> |
| | | <view class="item location">
|
| | | <u-icon name="map" color="#AAAAAA" size="15"></u-icon>
|
| | | <text>当前小区:</text>
|
| | | <view class="location">
|
| | | {{ location }}{{ room }}{{ `(共${num}人)` }}
|
| | |
| | |
|
| | |
|
| | | <view class="box-title">
|
| | | <view class="line"></view> |
| | | <view class="line"></view>
|
| | | <view class="title">出租管理</view>
|
| | | </view>
|
| | | <view class="list">
|
| | |
| | | <u-button @click="addRent" type="primary" :plain="true" text="添加租赁信息"></u-button>
|
| | | </view>
|
| | | </view> -->
|
| | | |
| | | <footer-btn @click="addRent" text="添加租赁信息" />
|
| | | |
| | | |
| | |
|
| | | <footer-btn @click="addRent" text="添加租赁信息" />
|
| | |
|
| | |
|
| | | </view>
|
| | | </template>
|
| | |
|
| | | <script>
|
| | | import rentList from "@/subPackage/bs/components/list/rentList.vue"
|
| | | import {
|
| | | getHouseRentInfo
|
| | | } from "@/api/doorplateAddress/doorplateAddress";
|
| | | import {
|
| | | logAdd
|
| | | } from "../../../api/system/logManage";
|
| | | export default {
|
| | | components: {
|
| | | rentList
|
| | | },
|
| | | data() {
|
| | | return {
|
| | | houseCode: '',
|
| | | location: "",
|
| | | room: "",
|
| | | num: 0,
|
| | | //出租列表
|
| | | rentList: []
|
| | | }
|
| | | },
|
| | | onLoad(option) {
|
| | | const {
|
| | | houseCode
|
| | | } = option
|
| | | this.houseCode = houseCode
|
| | | },
|
| | | onShow() {
|
| | | this.getHouseRent()
|
| | | },
|
| | | methods: {
|
| | | async getHouseRent() {
|
| | | const res = await getHouseRentInfo(this.houseCode)
|
| | | const {
|
| | | aoiName,
|
| | | subAoi,
|
| | | buildingName,
|
| | | doorplateName,
|
| | | unitName,
|
| | | houseRentalList
|
| | | } = res.data
|
| | | this.rentList = []
|
| | | this.location = (!!aoiName ? aoiName : subAoi) + buildingName
|
| | | this.room = (!!unitName ? unitName : '') + doorplateName + "室" |
| | | this.num = 0
|
| | | houseRentalList !== 0 && houseRentalList.forEach(item => {
|
| | | const { houseTenantVOList, dueTime, rentalTime } = item |
| | | item.num = houseTenantVOList.length |
| | | this.num += item.num
|
| | | if (item.num !== 0) { |
| | | item.name = houseTenantVOList[0].name |
| | | item.housingRentalId = houseTenantVOList[0].housingRentalId |
| | | }
|
| | | this.rentList = houseRentalList
|
| | | })
|
| | | import rentList from "@/subPackage/bs/components/list/rentList.vue"
|
| | | import {
|
| | | getHouseRentInfo
|
| | | } from "@/api/doorplateAddress/doorplateAddress";
|
| | | import {
|
| | | logAdd
|
| | | } from "../../../api/system/logManage";
|
| | | export default {
|
| | | components: {
|
| | | rentList
|
| | | },
|
| | | addRent() {
|
| | | this.$u.func.globalNavigator("/subPackage/bs/views/rentDetail?houseCode=" + this.houseCode)
|
| | | }, |
| | | refreshData() { |
| | | this.getHouseRent() |
| | | data() {
|
| | | return {
|
| | | houseCode: '',
|
| | | location: "",
|
| | | room: "",
|
| | | num: 0,
|
| | | //出租列表
|
| | | rentList: []
|
| | | }
|
| | | },
|
| | | onLoad(option) {
|
| | | const {
|
| | | houseCode
|
| | | } = option
|
| | | this.houseCode = houseCode
|
| | | },
|
| | | onShow() {
|
| | | this.getHouseRent()
|
| | | },
|
| | | methods: {
|
| | | async getHouseRent() {
|
| | | if (!this.houseCode) {
|
| | | this.houseCode = uni.getStorageSync("siteInfo").houseCode
|
| | | }
|
| | | const res = await getHouseRentInfo(this.houseCode)
|
| | | const {
|
| | | aoiName,
|
| | | subAoi,
|
| | | buildingName,
|
| | | doorplateName,
|
| | | unitName,
|
| | | houseRentalList
|
| | | } = res.data
|
| | | this.rentList = []
|
| | | this.location = (!!aoiName ? aoiName : subAoi) + buildingName
|
| | | this.room = (!!unitName ? unitName : '') + doorplateName + "室"
|
| | | this.num = 0
|
| | | houseRentalList !== 0 && houseRentalList.forEach(item => {
|
| | | const {
|
| | | householdVOList,
|
| | | dueTime,
|
| | | rentalTime
|
| | | } = item
|
| | | item.num = householdVOList.length
|
| | | this.num += item.num
|
| | | if (item.num !== 0) {
|
| | | item.name = householdVOList[0].name
|
| | | item.housingRentalId = householdVOList[0].housingRentalId
|
| | | }
|
| | | this.rentList = houseRentalList
|
| | | })
|
| | | },
|
| | | addRent() {
|
| | | this.$u.func.globalNavigator("/subPackage/bs/views/rentDetail?houseCode=" + this.houseCode)
|
| | | },
|
| | | refreshData() {
|
| | | this.getHouseRent()
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | </script>
|
| | | |
| | | <style> |
| | | page { |
| | | background-color: #F5F5F5; |
| | | } |
| | | </style> |
| | |
|
| | | <style>
|
| | | page {
|
| | | background-color: #F5F5F5;
|
| | | }
|
| | | </style>
|
| | |
|
| | | <style scoped lang="scss">
|
| | | .container {
|
| | | position: relative;
|
| | | width: 100%;
|
| | | height: 100%;
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | | background: #F6F6F6;
|
| | |
|
| | | .content-box {
|
| | | height: 0;
|
| | | flex: 1;
|
| | | overflow-y: auto; |
| | | margin: 20rpx 30rpx;
|
| | | }
|
| | |
|
| | | .list {
|
| | | // padding-bottom: 20px;
|
| | | }
|
| | |
|
| | | .item {
|
| | | .container {
|
| | | position: relative;
|
| | | width: 100%;
|
| | | height: 100%;
|
| | | display: flex;
|
| | | padding: 30rpx 20rpx;
|
| | | background-color: #ffffff;
|
| | | border-bottom: 1px solid #eff1f3;
|
| | | flex-direction: column;
|
| | | background: #F6F6F6;
|
| | |
|
| | | .content-box {
|
| | | height: 0;
|
| | | flex: 1;
|
| | | overflow-y: auto;
|
| | | margin: 20rpx 30rpx;
|
| | | }
|
| | |
|
| | | .list {
|
| | | // padding-bottom: 20px;
|
| | | }
|
| | |
|
| | | .item {
|
| | | display: flex;
|
| | | padding: 30rpx 20rpx;
|
| | | background-color: #ffffff;
|
| | | border-bottom: 1px solid #eff1f3;
|
| | | }
|
| | |
|
| | | .location {
|
| | | font-weight: 700;
|
| | | font-size: 27rpx;
|
| | |
|
| | | text {
|
| | | color: #AAAAAA;
|
| | | }
|
| | | }
|
| | |
|
| | | .room {
|
| | | font-weight: 700;
|
| | | }
|
| | |
|
| | | .bottom {
|
| | | padding: 20rpx;
|
| | | background-color: #ffffff;
|
| | | display: flex;
|
| | | justify-content: center;
|
| | | align-items: center;
|
| | | position: fixed;
|
| | | left: 0;
|
| | | bottom: 0;
|
| | | width: calc(100% - 40rpx);
|
| | |
|
| | | .btn {
|
| | | // width: calc(100% - 40rpx);
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | .location {
|
| | | font-weight: 700; |
| | | font-size: 27rpx; |
| | | text { |
| | | color: #AAAAAA; |
| | | .box-title {
|
| | | margin: 25rpx 0;
|
| | | display: flex;
|
| | |
|
| | | .line {
|
| | | width: 8rpx;
|
| | | margin-right: 10rpx;
|
| | | background-color: #2978FF;
|
| | | }
|
| | |
|
| | | .title {
|
| | | font-weight: 700;
|
| | | }
|
| | | }
|
| | |
|
| | | .room {
|
| | | font-weight: 700;
|
| | | view {
|
| | | font-size: 32rpx;
|
| | | }
|
| | |
|
| | | .bottom {
|
| | | padding: 20rpx;
|
| | | background-color: #ffffff;
|
| | | display: flex;
|
| | | justify-content: center;
|
| | | align-items: center; |
| | | position: fixed; |
| | | left: 0; |
| | | bottom: 0; |
| | | width: calc(100% - 40rpx);
|
| | |
|
| | | .btn {
|
| | | // width: calc(100% - 40rpx);
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | |
|
| | | .box-title {
|
| | | margin: 25rpx 0; |
| | | display: flex; |
| | | .line { |
| | | width: 8rpx; |
| | | margin-right: 10rpx; |
| | | background-color: #2978FF; |
| | | } |
| | | .title { |
| | | font-weight: 700; |
| | | }
|
| | | }
|
| | |
|
| | | view {
|
| | | font-size: 32rpx;
|
| | | }
|
| | | </style> |
| | | </style> |
| | |
| | | relationName: '', |
| | | location: "", |
| | | title: "", |
| | | roleType:null, |
| | | // roleType:null, |
| | | description: "", |
| | | }, |
| | | rules: { |
| | |
| | | const workStatusIndex = this.dataList.workStatusList.findIndex(item => item.name === this.workStatusName) |
| | | const maritalStatusIndex = this.dataList.maritalStatusList.findIndex(item => item.name === this.maritalStatusName) |
| | | |
| | | this.form['roleType'] = roleTypeIndex >0 ? this.dataList.roleList[roleTypeIndex].value : "" |
| | | this.form['roleType'] = roleTypeIndex >=0 ? this.dataList.roleList[roleTypeIndex].value : "" |
| | | this.form['relationship'] = relationshipIndex >0 ? this.dataList.relationshipList[relationshipIndex].value: "" |
| | | this.form['gender'] = genderIndex >0 ?this.dataList.genderList[genderIndex].value: "" |
| | | this.form['isPrimaryContact'] = isPrimaryContactIndex >0 ?this.dataList.isPrimaryContactList[isPrimaryContactIndex].value: "" |
| | |
| | | }, |
| | | //类型选择确认 |
| | | typeSelect(item) { |
| | | const [ result ] = e.value |
| | | const [ result ] = item.value |
| | | this[this.selectBusModel] = result.name |
| | | this.form[this.selectBusKey] = result.value |
| | | this.typeShow = !this.typeShow |