Browse Source

对接日历、待挂牌详情

master
1191151619 4 years ago
parent
commit
3a2a5b6ccf
  1. 9
      app.js
  2. 4
      app.json
  3. 6
      components/detail-announcement/detail-announcement.wxml
  4. 18
      components/ui-calendar/ui-calendar.js
  5. 39
      components/ui-calendar/ui-calendar.wxml
  6. 62
      components/ui-calendar/ui-calendar.wxss
  7. 2
      pages/about/about.js
  8. 96
      pages/auth/auth.js
  9. 2
      pages/calculation-detail/calculation-detail.js
  10. 56
      pages/calendar/calendar.js
  11. 2
      pages/calendar/calendar.wxml
  12. 2
      pages/index/index.js
  13. 181
      pages/look-detail/look-detail.js
  14. 79
      pages/look-detail/look-detail.wxml
  15. 14
      pages/look-detail/look-detail.wxss
  16. 17
      pages/look-list/look-list.js
  17. 144
      pages/look-list/look-list.wxml
  18. 13
      pages/look-list/look-list.wxss
  19. 267
      pages/lookStay-detail/lookStay-detail.js
  20. 9
      pages/lookStay-detail/lookStay-detail.json
  21. 128
      pages/lookStay-detail/lookStay-detail.wxml
  22. 197
      pages/lookStay-detail/lookStay-detail.wxss
  23. 14
      pages/ucenter/ucenter.js
  24. 7
      pages/ucenter/ucenter.wxml
  25. 6
      project.private.config.json
  26. 17
      utils/api.js
  27. 17
      utils/gisApi.js

9
app.js

@ -4,8 +4,13 @@ App({
onLaunch() {
let that = this;
let token = wx.getStorageSync('access_token')
let userInfo = wx.getStorageSync('userInfo')
if(token&&userInfo)return;
let userInfo = wx.getStorageSync('userInfo');
console.log(token)
// if(!token||token==""){
// wx.navigateTo({
// url:"/pages/auth/auth",
// })
// };
// wx.login({
// success (res) {
// if (res.code) {

4
app.json

@ -11,14 +11,14 @@
"pages/look-detail/look-detail",
"pages/history/history",
"pages/air-report/air-report",
"pages/feasibility-study/feasibility-study",
"pages/periodic-report/periodic-report",
"pages/special-research/special-research",
"pages/land-promotion/land-promotion",
"pages/suggestion/suggestion",
"pages/about/about",
"pages/calculation-detail/calculation-detail"
"pages/calculation-detail/calculation-detail",
"pages/lookStay-detail/lookStay-detail"
],
"permission": {
"scope.userLocation": {

6
components/detail-announcement/detail-announcement.wxml

@ -54,9 +54,9 @@
<view class="list-info-item">规划条件函:<text class="see" bindtap='previewImage' data-url="{{myData.planningConditionsLetter}}">点击查看</text></view>
<view class="list-info-item">条件函附图:<text class="see" bindtap='previewImage' data-url="{{myData.planningConditionsLetter}}">无字段</text></view>
<view class="list-info-item">周报控规图:<text class="see" bindtap='previewImage' data-url="{{myData.planningConditionsLetter}}">无字段</text></view>
<view class="list-info-item">竞买须知:<text class="see" bindtap='previewImage' data-url="{{myData.biddingNotice}}">点击查看</text></view>
<view class="list-info-item">国土合同:<text class="see" bindtap='previewImage' data-url="{{myData.planningConditionsLetter}}">无字段</text></view>
<view class="list-info-item">建设方案:<text class="see" bindtap='previewImage' data-url="{{myData.developmentScheme}}">点击查看</text></view>
<view class="list-info-item" wx:if="{{info.transactionStatus!='toBeListed'}}" >竞买须知:<text class="see" bindtap='previewImage' data-url="{{myData.biddingNotice}}">点击查看</text></view>
<view class="list-info-item" wx:if="{{info.transactionStatus!='toBeListed'}}">国土合同:<text class="see" bindtap='previewImage' data-url="{{myData.planningConditionsLetter}}">无字段</text></view>
<view class="list-info-item" wx:if="{{info.transactionStatus!='toBeListed'}}">建设方案:<text class="see" bindtap='previewImage' data-url="{{myData.developmentScheme}}">点击查看</text></view>
<view class="list-info-item">航拍全景:<text class="see" bindtap='previewImage' data-url="{{myData.aerialPhoto}}">点击查看</text></view>
</view>
</view>

18
components/ui-calendar/ui-calendar.js

@ -14,19 +14,33 @@ Component({
},
selectedDate: {
type: String
},
auctionCount:{
type:Array
},
listedCount:{
type:Array
}
},
data: {
weekDayArr: ['日', '一', '二', '三', '四', '五', '六'],
indexT:-1,
},
attached: function () {
//console.log(this)
console.log(this.data.statistics);
// debugger
},
methods: {
onDayTap: function (e) {
this.triggerEvent('onDayTap', e.currentTarget.dataset)
console.log(e)
this.triggerEvent('onDayTap', e.currentTarget.dataset);
let data = e.currentTarget.dataset.index;
this.setData({
indexT:data
})
console.log(data)
}
}
})

39
components/ui-calendar/ui-calendar.wxml

@ -70,12 +70,36 @@
};
};
var isSelected = function(date, year, month, day) {
var isSelected = function(date, year, month, day,auctionCount,listedCount) {
if (!isDate(date)) {
date = getDate(date);
}
if (date.getFullYear() == year && date.getMonth() == month && date.getDate() == day) return 'active active-back-one';
// console.log(date, year, month, day);
month = month>9?month+1:'0'+(month+1);
var dataTime = year+'-'+month+'-'+day;
var a = auctionCount.indexOf(dataTime);
var b = listedCount.indexOf(dataTime);
if(a>=0&&b>=0){
return 'active active-back-four'
}else if(a>=0&&b<0){
return 'active active-back-three'
}else if(a<0&&b>=0){
return ' active active-back-two'
}
// console.log(dataTime);
// while (i<=statistics.length-1){
// console.log(statistics[i].date)
// if(statistics[i].date == date){
// console.log(date);
// console.log('------');
// return 'active active-back-one'
// }
// }
// console.log(statistics),
// console.log('------')
return '';
};
@ -84,7 +108,7 @@
if (n < 10) return '0' + n;
return n;
};
module.exports = {
getDipalyInfo: getDisplayInfo,
getChangedDate: getChangedDate,
@ -105,12 +129,15 @@
wx:for-index="index">
<view wx:if="{{index < dateUtil.getDipalyInfo(dateUtil.getChangedDate(displayTime).date).beginWeek }}"
class="item"></view>
<view bindtap="onDayTap" wx:else data-year="{{dateUtil.getChangedDate(displayTime).year}}"
<view bindtap="onDayTap" data-index="{{index}}" wx:else data-year="{{dateUtil.getChangedDate(displayTime).year}}"
data-month="{{dateUtil.getChangedDate(displayTime).my_month}}"
data-day="{{index + 1 - dateUtil.getDipalyInfo(dateUtil.getChangedDate(displayTime).date).beginWeek}}"
class="item {{dateUtil.isSelected(selectedDate, dateUtil.getChangedDate(displayTime).year, dateUtil.getChangedDate(displayTime).month, index + 1 - dateUtil.getDipalyInfo(dateUtil.getChangedDate(displayTime).date).beginWeek)}}">
<view class="cm-field-title">
{{index + 1 - dateUtil.getDipalyInfo(dateUtil.getChangedDate(displayTime).date).beginWeek }}
class="item {{dateUtil.isSelected(selectedDate, dateUtil.getChangedDate(displayTime).year, dateUtil.getChangedDate(displayTime).month, index + 1 - dateUtil.getDipalyInfo(dateUtil.getChangedDate(displayTime).date).beginWeek,auctionCount,listedCount)}} ">
<view class="item_view {{indexT == index ? 'selected' :''}}">
<view class="cm-field-title">
{{index + 1 - dateUtil.getDipalyInfo(dateUtil.getChangedDate(displayTime).date).beginWeek }}
</view>
<view class="current">今天</view>
</view>
</view>
</block>

62
components/ui-calendar/ui-calendar.wxss

@ -9,7 +9,7 @@
}
.cm-day-list .item, .cm-calendar .cm-calendar-hd .item {
.cm-day-list .item, .cm-calendar .cm-calendar-hd .item{
display: flex;
align-items: center;
justify-content: center;
@ -18,6 +18,14 @@
height: 72rpx;
box-sizing: border-box;
}
.item .item_view {
display: flex !important;
align-items: center !important;
justify-content: center !important;
width: 72rpx !important;
height: 72rpx !important;
box-sizing: border-box !important;
}
.cm-day-list {
display: flex;
@ -30,23 +38,57 @@
color: #525252;
}
.cm-day-list .active {
.cm-day-list .active .item_view{
border: 5rpx solid #FFB821;
border-radius: 50%;
}
.active-back-one{
background: linear-gradient(to left, #ffffff 0%, #ffffff 50%, #FFCC00 50%, #FFCC00 100%);
.cm-day-list .active .item_view{
border: 5rpx solid #FFB821;
border-radius: 50%;
}
.active-back-two{
.item .current{
display: none;
}
/* 当天 */
.active-back-one.active .item_view{
/* background: linear-gradient(to left, #ffffff 0%, #ffffff 50%, #FFCC00 50%, #FFCC00 100%); */
border-color:#146AE7 ;
flex-direction: column;
line-height: 1.2em;
font-weight: bold;
color:#146Ae7;
}
.active-back-one.active .item_view>view{
color:#146Ae7;
}
.active-back-one.active .item_view .current{
color:#146AE7 ;
display: block;
font-size: 18rpx;
font-weight: bold;
text-align: center;
}
/* 有拍卖数量日期 */
.active-back-two .item_view{
background: linear-gradient(to left, #FFCC00 0%, #FFCC00 50%, #ffffff 50%, #ffffff 100%);
}
/* 有挂牌数量日期 */
.active-back-three .item_view{
background: linear-gradient(to left, #ffffff 0%, #ffffff 50%, #37F492 50%, #37F492 100%);
}
/* 两个数量都有 */
.active-back-four .item_view{
background: linear-gradient(to left, #FFCC00 0%, #FFCC00 50%, #37F492 50%, #37F492 100%);
}
.active-back-three{
background: linear-gradient(to left, #37F492 0%, #37F492 50%, #ffffff 50%, #ffffff 100%);
.item_view.selected{
background:#146AE7 !important;
border-color:#146AE7 !important;
color:#ffffff !important;
border-radius: 50%;
}
.item_view.selected view{
color:#ffffff !important;
.active-back-four{
background: linear-gradient(to left, #FFCC00 0%, #FFCC00 50%, #37F492 50%, #37F492 100%);
}

2
pages/about/about.js

@ -1,4 +1,6 @@
// pages/about/about.js
const $api = require('../../utils/api').API;
Page({
/**

96
pages/auth/auth.js

@ -8,8 +8,8 @@ Page({
*/
data: {
agree: true,
user:false,//用户信息
code:false,
user: false,//用户信息
code: false,
// 登录页面
is_login: true,
},
@ -24,6 +24,7 @@ Page({
},
// 一键登录
bindGetUserInfo: function (e) {
let {
agree
} = this.data;
@ -41,9 +42,19 @@ Page({
success: (eve) => {
console.log(eve)
att = eve;
$api.Login('POST', 'social/token?' + 'code=MINI@' + eve.code).then(res => {
console.log(res);
if(res.code == 2){
}
})
wx.getUserProfile({
desc: '用户展示用户信息',
success: (resT) => {
console.log(resT)
this.setData({
user:resT.userInfo,
})
$api.Login('POST', 'social/token?' + 'code=MINI@' + att.code).then(res => {
if (res.code == 2) {
wx.showToast({
title: '请先注册账号',
icon: 'none',
@ -51,39 +62,42 @@ Page({
duration: 1500,
})
that.setData({
code:att.code,
is_login:false,
code: att.code,
is_login: false,
})
} else {
wx.setStorage({
'access_token': res.access_token
})
wx.switchTab({
url:'/pages/index/index'
wx.showToast({
title: '授权成功',
icon: 'none',
mask: true,
duration: 1500,
})
console.log(res.access_token)
wx.setStorageSync(
'access_token', res.access_token
)
setTimeout(() => {
wx.switchTab({
url: '/pages/index/index'
})
}, 1500)
}
})
},
fail: (res) => {
wx.showToast({
title: '授权失败,请重试。',
icon: 'none',
mask: true,
duration: 1500,
})
}
})
// wx.getUserProfile({
// desc: '用户展示用户信息',
// success: (resT) => {
// console.log(resT)
// },
// fail: (res) => {
// wx.showToast({
// title: '授权失败,请重试。',
// icon: 'none',
// mask: true,
// duration: 1500,
// })
// }
// })
},
// 一键注册 获取手机号
getphonenumberFun(e){
getphonenumberFun(e) {
console.log(e);
let {
agree,
user,
@ -100,15 +114,15 @@ Page({
console.log(e)
console.log(user)
$api.AJAX('POST', 'social/register-bind', {
state:'MINI',
encryptedData:e.detail.encryptedData,
$api.AJAX('POST', 'social/register-bind', {
state: 'MINI',
encryptedData: e.detail.encryptedData,
iv: e.detail.iv,
code: code,
nickName:user.nickName,
avatar:user.avatarUrl,
nickName: user.nickName,
avatar: user.avatarUrl,
}, false).then(res => {
if(res.code == 1) {
if (res.code == 1) {
wx.showToast({
title: res.msg,
icon: 'none',
@ -125,11 +139,11 @@ Page({
})
wx.setStorageSync('access_token', res.access_token);
console.log(res);
setTimeout(()=>{
setTimeout(() => {
wx.switchTab({
url:'/pages/index/index'
url: '/pages/index/index'
})
},1500)
}, 1500)
})
},
/**
@ -168,7 +182,13 @@ Page({
* 生命周期函数--监听页面显示
*/
onShow: function () {
let token = wx.getStorageSync('access_token')
console.log(token)
if(token&&token!=''){
wx.switchTab({
url:"/pages/index/index",
})
};
},
/**

2
pages/calculation-detail/calculation-detail.js

@ -115,7 +115,7 @@ Page({
let average = option.series[1].data;
let interestRate = option.series[2].data;
$api.AJAX("GET", '/applets/measuredata/trend', {}, true).then(res => {
$api.AJAX("GET", 'applets/measuredata/trend', {}, true).then(res => {
res.data.map(liem => {
average.push(
liem.average

56
pages/calendar/calendar.js

@ -39,7 +39,8 @@ Page({
cityName: '重庆',
info: [],
statistics:{},//日历展示数据
auctionCount:[],//有拍卖数量日期
listedCount:[],//有挂牌数量日期
},
bindDateChange(res) {
@ -61,6 +62,7 @@ Page({
let timer = new Date()
let year = timer.getFullYear()
let month = timer.getMonth() + 1
month = month.length > 1 ? month : '0' + month
let date = `${year}-${month}`
if (date !== this.data.calendarDisplayTime) {
@ -101,18 +103,20 @@ Page({
*/
onShow: function () {
let demo =wx.getStorageSync("date");
let timer=''
if(demo){
timer=demo.time
this.setData({
timer
})
}else{
timer = moment().format('YYYY-MM-DD')
this.setData({
timer
})
}
let timer=this.data.timer;
// if(demo){
// timer=demo.time
// this.setData({
// timer
// })
// }else{
// timer = moment().format('YYYY-MM-DD')
// this.setData({
// timer
// })
// }
if(this.data.active===1){
$api.getLandlistedList({annoDate:timer,city:this.data.cityName}).then(res=>{
this.setData({
@ -133,10 +137,29 @@ Page({
})
}
// 获取日历列表数据
$api.AJAX("GET",'/applets/landlisted/statistics',{
$api.AJAX("GET",'applets/landlisted/calendar',{
date: moment().format('YYYY-MM')
},true).then(res=>{
this.statistics = res.data;
let auctionCount = [];// 拍卖数量的
let listedCount = [];//挂牌数量的
res.data.map((item,index)=>{
if(item.auctionCount>0){
auctionCount.push(
item.date
)
}
if(item.listedCount>0){
listedCount.push(
item.date
)
}
})
this.setData({
auctionCount: auctionCount,
listedCount: listedCount,
})
})
},
@ -144,10 +167,11 @@ Page({
onCalendarDayTap(res) {
console.log(res)
let timer = res.detail;
timer = `${timer.year}/${formatNumber(timer.month)}/${formatNumber(timer.day)}`
timer = `${timer.year}-${formatNumber(timer.month)}-${formatNumber(timer.day)}`
this.setData({
timer
})
this.onShow()
},
calendarSelectedDate(e){
console.log(e)

2
pages/calendar/calendar.wxml

@ -29,7 +29,7 @@
<image class="cal-back" src="../../assets/images/cal-back.png"></image>
<view class="calendar-box">
<!-- <calendar bind:callSomeFun="onShow"></calendar> -->
<ui-calendar ex-class="calendar-cm-month" bindonDayTap="onCalendarDayTap"
<ui-calendar ex-class="calendar-cm-month" bindonDayTap="onCalendarDayTap" auctionCount="{{auctionCount}}" listedCount="{{listedCount}}"
displayTime="{{calendarDisplayTime}}" selectedDate="{{calendarSelectedDate}}"
displayMonthNum="{{calendarDisplayMonthNum}}" is-show="{{isCalendarShow}}"></ui-calendar>
</view>

2
pages/index/index.js

@ -60,6 +60,8 @@ Page({
selected: 2
})
}
},
getList() {
let list = this.data.list.concat(this.data.list);

181
pages/look-detail/look-detail.js

File diff suppressed because one or more lines are too long

79
pages/look-detail/look-detail.wxml

@ -1,26 +1,31 @@
<!--pages/look-detail/look-detail.wxml-->
<wxs module="filter">
var setTag = function(state) {
var obj = {}
if(state===1){
obj = {
sname:'ycj',
text:'已成交'
}
}else if(state===2){
obj = {
sname:'wcj',
text:'未成交'
}
}else{
obj = {
sname:'gsz',
text:'公示中'
}
}
return obj
var setTag = function (state) {
var obj = {}
if (state === 'toBeListed') {
obj = {
sname: 'dgp',
text: '待挂牌'
}
} else if (state === 'listed') {
obj = {
sname: 'gpz',
text: '挂牌中'
}
} else if (state === 'passBy') {
obj = {
sname: 'lp',
text: '流拍'
}
}else {
obj = {
sname: 'ycj',
text: '已成交'
}
}
return obj
};
module.exports = {setTag:setTag};
module.exports = { setTag: setTag };
</wxs>
<view class="pages">
<mp-navigation-bar ext-class="set-bar" title="看地"></mp-navigation-bar>
@ -34,7 +39,7 @@
<text class="look-top-text">土地池</text>
</view>
</view> -->
<map class="map" polygons="{{polygons}}" latitude="{{latitude}}" longitude="{{longitude}}" >
<map class="map" polygons="{{polygons}}" latitude="{{latitude}}" longitude="{{longitude}}">
<cover-view slot="callout">
<cover-view marker-id="1"></cover-view>
<cover-view marker-id="2"></cover-view>
@ -42,10 +47,11 @@
</map>
<view class="gener">
<view class="gener-top">
<view class="gener-tag center {{filter.setTag(2).sname}}">{{filter.setTag(2).text}}</view>
<view class="gener-tag center {{filter.setTag(myData.transactionStatus).sname}}">{{filter.setTag(myData.transactionStatus).text}}</view>
<text class="gener-title">{{myData.landCode}}</text>
</view>
<view class="gener-info">
<view class="gener-info" >
<view class="gener-item">
<text class="gener-lable">【城 市】</text>
<text class="gener-text">{{myData.city}}</text>
@ -67,6 +73,9 @@
<text class="gener-text">{{myData.smallGroup}}</text>
</view>
</view>
</view>
<view class="tab" wx:if="{{state}}">
<view class="tab-item {{item.id===active?'active':''}}" wx:for="{{tabList}}" wx:for-index="i" wx:for-item="item"
@ -76,17 +85,21 @@
</view>
</view>
<view class="tab" wx:else>
<view class="tab-item {{item.id===active?'active':''}}" wx:for="{{sedTabList}}" wx:for-index="id" wx:for-item="item"
wx:key="id" bindtap="tabDowm" data-id="{{item.id}}">
<view class="tab-item {{item.id===active?'active':''}}" wx:for="{{sedTabList}}" wx:for-index="id"
wx:for-item="item" wx:key="id" bindtap="tabDowm" data-id="{{item.id}}">
<text class="tab-title">{{item.name}}</text>
<image class="tab-tag" src="../../assets/images/tab-tag.png"></image>
</view>
</view>
<detail-announcement info="{{myData}}" bind:setMark="setMark" wx:if="{{active===1}}"/>
<detail-clinch info="{{myData}}" wx:if="{{active===2}}"/>
<detail-present info="{{myData}}" presentInfo="{{presentInfo}}" wx:if="{{active===3}}"/>
<detail-basis id="basis" orgiData="{{orgiData}}" dataInfo="{{myData}}" info="{{basisInfo}}" wx:if="{{active===4}}"/>
<detail-senior id="senior" orgiData="{{orgiData}}" dataInfo="{{myData}}" info="{{seniorInfo}}" wx:if="{{active===5}}"/>
<detail-announcement info="{{myData}}" bind:setMark="setMark" wx:if="{{active===1}}" />
<detail-clinch info="{{myData}}" wx:if="{{active===2}}" />
<detail-present info="{{myData}}" presentInfo="{{presentInfo}}" wx:if="{{active===3}}" />
<detail-basis id="basis" orgiData="{{orgiData}}" dataInfo="{{myData}}" info="{{basisInfo}}"
wx:if="{{active===4}}" />
<detail-senior id="senior" orgiData="{{orgiData}}" dataInfo="{{myData}}" info="{{seniorInfo}}"
wx:if="{{active===5}}" />
<view class="btn-box" wx:if="{{active>3&&!isDone}}">
<button bindtap="clearData" class="btn btn-warning">重做</button>
<button bindtap="goCalculate" class="btn btn-primy">测算</button>
@ -97,8 +110,8 @@
<view class="mark" wx:if="{{markShow}}" bindtap="markHide">
<view class="carBtn center" catchtap="setMark" data-id="4">基础测算</view>
<view class="hevyBtn" catchtap="setMark" data-id="5">
<text class="hevy-text">高级测算</text>
<text class="hevy-lable">(无偿移交+自持)</text>
<text class="hevy-text">高级测算</text>
<text class="hevy-lable">(无偿移交+自持)</text>
</view>
</view>
</view>
</view>

14
pages/look-detail/look-detail.wxss

@ -56,6 +56,20 @@
font-weight: bold;
color: #FFFFFF;
}
.gener-tag.dgp{
background: #F7A40F;
}
.gener-tag.gpz{
background: #10C769;
}
.gener-tag.lp{
background: #666A7A;
}
.gener-tag.ycj{
background: #FF652F;
}
.gener-top {
display: flex;

17
pages/look-list/look-list.js

@ -20,7 +20,7 @@ Page({
current:1,
startDate:'',
endDate:'',
city:'重庆',
city:'',
transactionStatus:'',
measureStatus:'',
landCode:''
@ -178,10 +178,17 @@ Page({
},
comeDetail(e){
let id=e.currentTarget.dataset.id;
console.log(e.currentTarget.dataset.id)
wx.navigateTo({
url: '/pages/look-detail/look-detail?id='+id,
})
let status = e.currentTarget.dataset.status;
if(status !== 'toBeListed'){
wx.navigateTo({
url: '/pages/look-detail/look-detail?id='+id,
})
}else{
wx.navigateTo({
url: '/pages/lookStay-detail/lookStay-detail?id='+id,
})
}
},
bindTimeChange(res){
console.log(res)

144
pages/look-list/look-list.wxml

@ -1,33 +1,39 @@
<!--pages/look-list/look-list.wxml-->
<wxs module="filter">
var setTag = function(state) {
var obj = {}
if(state===1){
obj = {
sname:'ycj',
text:'已成交'
}
}else if(state===2){
obj = {
sname:'wcj',
text:'未成交'
}
}else{
obj = {
sname:'gsz',
text:'公示中'
}
}
return obj
var setTag = function (state) {
var obj = {}
if (state === 'toBeListed') {
obj = {
sname: 'dgp',
text: '待挂牌'
}
} else if (state === 'listed') {
obj = {
sname: 'gpz',
text: '挂牌中'
}
} else if (state === 'passBy') {
obj = {
sname: 'lp',
text: '流拍'
}
}else {
obj = {
sname: 'ycj',
text: '已成交'
}
}
return obj
};
module.exports = {setTag:setTag};
module.exports = { setTag: setTag };
</wxs>
<view class="pages">
<mp-navigation-bar ext-class="set-bar" title="土地池"></mp-navigation-bar>
<view class="look-top" bindtap="inShow">
<view class="look-search center" bindtap="showInput">
<image wx:if="{{!inputShow}}" class="look-s-icon" src="../../assets/images/search.png"></image>
<input value="{{page.landCode}}" bindconfirm="refresh" wx:if="{{inputShow}}" focus="true" bindblur="hideInput" class="form-input" bindinput="vmodel" type="text" />
<input value="{{page.landCode}}" bindconfirm="refresh" wx:if="{{inputShow}}" focus="true" bindblur="hideInput"
class="form-input" bindinput="vmodel" type="text" />
</view>
<view class="look-top-right flex-center" bindtap="comeBack">
<image class="look-top-tag" src="../../assets/images/map.png"></image>
@ -36,84 +42,90 @@
</view>
<view class="table">
<view style="margin-left:30rpx" class="table-item center" bindtap="showDown" data-type="date">
<picker disabled="true"><text>拍卖日期</text></picker>
<picker disabled="true"><text>拍卖日期</text></picker>
<image class="table-icon" src="../../assets/images/tab-icon.png"></image>
</view>
<view class="table-item center" bindtap="showDown" data-type="sale">
<picker disabled="true"><text>交易状态</text></picker>
<picker disabled="true"><text>交易状态</text></picker>
<image class="table-icon" src="../../assets/images/tab-icon.png"></image>
</view>
<view class="table-item center" bindtap="showDown" data-type="calcu">
<picker disabled="true"><text>测算状态</text></picker>
<picker disabled="true"><text>测算状态</text></picker>
<image class="table-icon" src="../../assets/images/tab-icon.png"></image>
</view>
<view class="table-item center" >
<view class="table-item center">
<picker class="flex_center flex_items" mode="region" value="{{region}}" bindchange="bindAddressChangeCity">
<text>{{page.city}}</text>
<text>{{page.city?page.city:'城市'}}</text>
<image class="table-icon" src="../../assets/images/tab-icon.png"></image>
</picker>
</view>
<!-- 日期下拉 -->
<view class="displayDown" style="height:{{searchNode.date.height}}rpx;bottom:{{searchNode.date.bottom}}rpx">
<view class="searchDate">
<view>
<picker style="width:100%" mode="date" value="{{page.startDate}}" start="{{nowTime}}" end="2023-09-01" bindchange="bindTimeChange" data-type="start">
<view class="picker centerIn">
<text> 开始时间:</text>
<view class="searchInput">{{page.startDate}}</view>
</view>
</picker>
</view>
<view>
<picker style="width:100%" mode="date" value="{{page.endDate}}" start="{{nowTime}}" end="2023-09-01" bindchange="bindTimeChange">
<view class="picker centerIn">
<text> 结束时间:</text>
<view class="searchInput">{{page.endDate}}</view>
</view>
</picker>
</view>
</view>
<view class="btnGp">
<view class="clearSearch" data-name="time" bindtap="empty">清空</view>
<view class="toSearch" bindtap="goSearch">确定</view>
<view>
<picker style="width:100%" mode="date" value="{{page.startDate}}" start="{{nowTime}}" end="2023-09-01"
bindchange="bindTimeChange" data-type="start">
<view class="picker centerIn">
<text> 开始时间:</text>
<view class="searchInput">{{page.startDate}}</view>
</view>
</picker>
</view>
<view>
<picker style="width:100%" mode="date" value="{{page.endDate}}" start="{{nowTime}}" end="2023-09-01"
bindchange="bindTimeChange">
<view class="picker centerIn">
<text> 结束时间:</text>
<view class="searchInput">{{page.endDate}}</view>
</view>
</picker>
</view>
</view>
<view class="btnGp">
<view class="clearSearch" data-name="time" bindtap="empty">清空</view>
<view class="toSearch" bindtap="goSearch">确定</view>
</view>
</view>
<!-- 交易状态下拉 -->
<view class="displayDown" style="height:{{searchNode.sale.height}}rpx;bottom:{{searchNode.sale.bottom}}rpx">
<view class="searchDate" style="justify-content:center">
<view class="{{saleNum==i?'radioView isChose':'radioView'}}" wx:for="{{saleList}}" wx:for-index="i" wx:for-item="item" bindtap="changeRadio" data-num="{{i}}" data-type="sale">
<view class="{{saleNum==i?'radioView isChose':'radioView'}}" wx:for="{{saleList}}" wx:for-index="i"
wx:for-item="item" bindtap="changeRadio" data-num="{{i}}" data-type="sale">
{{item.label}}
</view>
</view>
<view class="btnGp">
<view class="clearSearch" data-name="saleNum" bindtap="empty">清空</view>
<view class="toSearch" bindtap="goSearch">确定</view>
</view>
<view class="btnGp">
<view class="clearSearch" data-name="saleNum" bindtap="empty">清空</view>
<view class="toSearch" bindtap="goSearch">确定</view>
</view>
</view>
<!-- 测算状态下拉 -->
<view class="displayDown" style="height:{{searchNode.calcu.height}}rpx;bottom:{{searchNode.calcu.bottom}}rpx">
<!-- 测算状态下拉 -->
<view class="displayDown" style="height:{{searchNode.calcu.height}}rpx;bottom:{{searchNode.calcu.bottom}}rpx">
<view class="searchDate" style="justify-content:center">
<view class="{{calcuNum==i?'radioView isChose':'radioView'}}" wx:for="{{calcuList}}" wx:for-index="i" wx:for-item="item" bindtap="changeRadio" data-num="{{i}}" data-type="calcu">
<view class="{{calcuNum==i?'radioView isChose':'radioView'}}" wx:for="{{calcuList}}" wx:for-index="i"
wx:for-item="item" bindtap="changeRadio" data-num="{{i}}" data-type="calcu">
{{item.label}}
</view>
</view>
<view class="btnGp">
<view class="clearSearch" data-name="calcuNum" bindtap="empty">清空</view>
<view class="toSearch" bindtap="goSearch">确定</view>
</view>
<view class="btnGp">
<view class="clearSearch" data-name="calcuNum" bindtap="empty">清空</view>
<view class="toSearch" bindtap="goSearch">确定</view>
</view>
</view>
</view>
<view class="main" bindtap="inShow">
<view class="mark" wx:if="{{active}}" bindtap="hideMark">
</view>
<scroll-view class="list" style="height:100%" scroll-y="{{setScroll}}" refresher-enabled refresher-triggered="{{refresher}}"
bindscrolltolower="getList" bindrefresherrefresh="refresh">
<view class="list-item" wx:for="{{list}}" wx:for-index="i" wx:for-item="item" bindtap="comeDetail" data-id="{{item.landListedId}}">
<scroll-view class="list" style="height:100%" scroll-y="{{setScroll}}" refresher-enabled
refresher-triggered="{{refresher}}" bindscrolltolower="getList" bindrefresherrefresh="refresh">
<view class="list-item" wx:for="{{list}}" wx:for-index="i" wx:for-item="item" bindtap="comeDetail"
data-status="{{item.transactionStatus}}"
data-id="{{item.landListedId}}">
<image class="item-img" src="../../assets/images/list-img.png"></image>
<view class="item-right">
<view class="list-info">
<view class="list-tag center {{filter.setTag(item.projectStatus).sname}}">
{{filter.setTag(item.projectStatus).text}}
<view class="list-tag center {{filter.setTag(item.transactionStatus).sname}}">
{{filter.setTag(item.transactionStatus).text}}
</view>
<text class="list-title one-title">{{item.landCode}}</text>
</view>
@ -127,10 +139,10 @@
</view>
</view>
<view class="list" wx:if="{{list.length<=0}}">
<view class="noText">
暂无数据
<view class="noText">
暂无数据
</view>
</view>
</view>
</scroll-view>
</view>
</view>

13
pages/look-list/look-list.wxss

@ -90,7 +90,18 @@
font-weight: bold;
color: #FFFFFF;
}
.list-tag.dgp{
background: #F7A40F;
}
.list-tag.gpz{
background: #10C769;
}
.list-tag.lp{
background: #666A7A;
}
.list-tag.ycj{
background: #FF652F;
}
.list-title {
width: 338rpx;
font-size: 34rpx;

267
pages/lookStay-detail/lookStay-detail.js

File diff suppressed because one or more lines are too long

9
pages/lookStay-detail/lookStay-detail.json

@ -0,0 +1,9 @@
{
"usingComponents": {
"detail-announcement":"../../components/detail-announcement/detail-announcement",
"detail-clinch":"../../components/detail-clinch/detail-clinch",
"detail-present":"../../components/detail-present/detail-present",
"detail-basis":"../../components/detail-basis/detail-basis",
"detail-senior":"../../components/detail-senior/detail-senior"
}
}

128
pages/lookStay-detail/lookStay-detail.wxml

@ -0,0 +1,128 @@
<!--pages/look-detail/look-detail.wxml-->
<wxs module="filter">
var setTag = function (state) {
var obj = {}
if (state === 'toBeListed') {
obj = {
sname: 'dgp',
text: '待挂牌'
}
} else if (state === 'listed') {
obj = {
sname: 'gpz',
text: '挂牌中'
}
} else if (state === 'passBy') {
obj = {
sname: 'lp',
text: '流拍'
}
}else {
obj = {
sname: 'ycj',
text: '已成交'
}
}
return obj
};
module.exports = { setTag: setTag };
</wxs>
<view class="pages">
<mp-navigation-bar ext-class="set-bar" title="看地"></mp-navigation-bar>
<view class="main">
<!-- <view class="look-top">
<view class="look-search center">
<image class="look-s-icon" src="../../assets/images/search.png"></image>
</view>
<view class="look-top-right flex-center" bindtap="comeBack">
<image class="look-top-tag" src="../../assets/images/s-icon.png"></image>
<text class="look-top-text">土地池</text>
</view>
</view> -->
<map class="map" polygons="{{polygons}}" latitude="{{latitude}}" longitude="{{longitude}}">
<cover-view slot="callout">
<cover-view marker-id="1"></cover-view>
<cover-view marker-id="2"></cover-view>
</cover-view>
</map>
<view class="gener">
<view class="gener-top">
<view class="gener-tag center {{filter.setTag(myData.transactionStatus).sname}}">{{filter.setTag(myData.transactionStatus).text}}</view>
<text class="gener-title">{{myData.landCode}}</text>
</view>
<view class="gener-info" >
<view class="gener-item">
<text class="gener-lable">【城 市】</text>
<text class="gener-text">{{myData.city}}</text>
</view>
<view class="gener-item">
<text class="gener-lable">【拟出让序号】</text>
<text class="gener-text">{{myData.proposedseriaId}}</text>
</view>
<view class="gener-item">
<text class="gener-lable">【状态】</text>
<text class="gener-text">{{myData.city}}</text>
</view>
<view class="gener-item">
<text class="gener-lable">【预计挂牌时间】</text>
<text class="gener-text">{{myData.estimatedListingTime}}</text>
</view>
<view class="gener-item">
<text class="gener-lable">【名称】</text>
<text class="gener-text">{{myData.landCode}}</text>
</view>
<view class="gener-item">
<text class="gener-lable ">【行政区】</text>
<text class="gener-text">{{myData.canton}}</text>
</view>
<view class="gener-item">
<text class="gener-lable ">【大组团】</text>
<text class="gener-text">{{myData.bigGroup}}</text>
</view>
<view class="gener-item">
<text class="gener-lable">【小组团】</text>
<text class="gener-text">{{myData.smallGroup}}</text>
</view>
</view>
</view>
<view class="tab" wx:if="{{state}}">
<view class="tab-item {{item.id===active?'active':''}}" wx:for="{{tabList}}" wx:for-index="i" wx:for-item="item"
wx:key="id" bindtap="tabDowm" data-id="{{item.id}}">
<text class="tab-title">{{item.name}}</text>
<image class="tab-tag" src="../../assets/images/tab-tag.png"></image>
</view>
</view>
<view class="tab" wx:else>
<view class="tab-item {{item.id===active?'active':''}}" wx:for="{{sedTabList}}" wx:for-index="id"
wx:for-item="item" wx:key="id" bindtap="tabDowm" data-id="{{item.id}}">
<text class="tab-title">{{item.name}}</text>
<image class="tab-tag" src="../../assets/images/tab-tag.png"></image>
</view>
</view>
<detail-announcement info="{{myData}}" bind:setMark="setMark" wx:if="{{active===1}}" />
<detail-basis id="basis" orgiData="{{orgiData}}" dataInfo="{{myData}}" info="{{basisInfo}}"
wx:if="{{active===4}}" />
<detail-senior id="senior" orgiData="{{orgiData}}" dataInfo="{{myData}}" info="{{seniorInfo}}"
wx:if="{{active===5}}" />
<view class="btn-box" wx:if="{{active>3&&!isDone}}">
<button bindtap="clearData" class="btn btn-warning">重做</button>
<button bindtap="goCalculate" class="btn btn-primy">测算</button>
<button bindtap="save" class="btn btn-primy">保存</button>
<button bindtap="submit" class="btn btn-primy">提交</button>
</view>
</view>
<view class="mark" wx:if="{{markShow}}" bindtap="markHide">
<view class="carBtn center" catchtap="setMark" data-id="4">基础测算</view>
<view class="hevyBtn" catchtap="setMark" data-id="5">
<text class="hevy-text">高级测算</text>
<text class="hevy-lable">(无偿移交+自持)</text>
</view>
</view>
</view>

197
pages/lookStay-detail/lookStay-detail.wxss

@ -0,0 +1,197 @@
/* pages/look-detail/look-detail.wxss */
.pages {
position: relative;
}
.map {
width: 750rpx;
height: 543rpx;
}
.tab {
display: flex;
align-items: center;
padding: 20rpx 30rpx 0 30rpx;
}
.tab-item {
display: flex;
flex-direction: column;
align-items: center;
margin-right: 54rpx;
}
.tab-title {
font-size: 30rpx;
font-weight: bold;
color: #565A6B;
}
.tab-tag {
width: 44rpx;
height: 10rpx;
display: none;
}
.active .tab-title {
font-size: 34rpx;
color: #146ae7;
}
.active .tab-tag {
display: block;
}
.gener {
padding: 20rpx 30rpx;
background-color: #ffffff;
}
.gener-tag {
width: 90rpx;
height: 34rpx;
background: #666A7A;
border-radius: 4rpx;
font-size: 22rpx;
font-weight: bold;
color: #FFFFFF;
}
.gener-tag.dgp{
background: #F7A40F;
}
.gener-tag.gpz{
background: #10C769;
}
.gener-tag.lp{
background: #666A7A;
}
.gener-tag.ycj{
background: #FF652F;
}
.gener-top {
display: flex;
align-items: center;
}
.gener-title {
flex: 1;
text-indent: 10rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
font-size: 34rpx;
font-weight: bold;
color: #262936;
}
.gener-info {
display: flex;
flex-wrap: wrap;
}
.gener-item {
line-height: 56rpx;
min-width: 33.3%;
font-size: 26rpx;
}
.gener-lable {
color: #262936;
font-weight: bold;
}
.pl-14 {
padding-left: 14rpx;
}
.gener-text {
color: #565A6B;
}
.mark {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, .35);
display: flex;
flex-direction: column;
align-items: center;
justify-content: flex-end;
}
.carBtn {
width: 514rpx;
height: 85rpx;
background: linear-gradient(171deg,#3d7dfc 0%, #0e63df 100%);
border-radius: 43rpx;
font-size: 32rpx;
color: #FFFFFF;
}
.hevyBtn {
width: 514rpx;
height: 85rpx;
background: linear-gradient(171deg, #FFBF15, #F69F06);
border-radius: 43rpx;
margin-top: 36rpx;
margin-bottom: 304rpx;
display: flex;
flex-direction: column;
align-items: center;
}
.hevy-text {
font-size: 32rpx;
color: #FFFFFF;
line-height: initial;
}
.hevy-lable {
font-size: 22rpx;
color: rgba(255, 255, 255, .4);
}
.table .table-item {
border-bottom: 1px solid #E1E1E1;
}
.table .table-item:last-of-type {
border-bottom: none;
}
.btn-box {
padding: 50rpx 20rpx;
width: 100%;
box-sizing: border-box;
display: flex;
justify-content: space-between;
align-items: center;
}
.btn {
display: flex;
align-items: center;
justify-content: center;
width: 152rpx !important;
height: 62rpx;
font-size: 28rpx;
border-radius: 30rpx;
color: #fff;
}
.btn-warning {
background: linear-gradient(171deg, #ffc27a 0%, #f1a142 100%);
}
.btn-primy {
background: linear-gradient(171deg, #3d7dfc 0%, #0e63df 100%);
}
.col-do{
padding-right: 36rpx;
}

14
pages/ucenter/ucenter.js

@ -1,11 +1,13 @@
// pages/ucenter/ucenter.js
const $api = require('../../utils/api').API;
Page({
/**
* 页面的初始数据
*/
data: {
user:{},//用户信息
},
comePage(e){
@ -25,6 +27,14 @@ Page({
})
}
},
// 获取个人信息
getUser(){
$api.AJAX("GET", 'user/info', {}, true).then(res => {
this.setData({
user:res.data.sysUser,
})
})
},
// 退出登录
exitLoing(){
wx.showModal({
@ -33,6 +43,7 @@ Page({
success (res) {
if (res.confirm) {
console.log('用户点击确定')
wx.clearStorage();
wx.navigateTo({
url:'/pages/auth/auth'
})
@ -69,6 +80,7 @@ Page({
selected: 4
})
}
this.getUser();
},
/**

7
pages/ucenter/ucenter.wxml

@ -5,13 +5,14 @@
<view class="top">
<view class="user">
<view class="user-box">
<image class="log" src="../../assets/images/tabIcon/air.png" mode="center"></image>
<image class="log" wx:if="{{user.avatar}}" src="{{user.avatar}}" mode="center"></image>
<image class="log" wx:else src="../../assets/images/tabIcon/air.png" mode="center"></image>
<view class="user-info">
<view class="info-box">
<text class="text">无敌周大花</text>
<text class="text">{{user.nickName}}</text>
<!-- <image class="tag" src="../../assets/images/zhuan_1.png"></image> -->
</view>
<text class="code">ID: AIR456789</text>
<text class="code">ID: {{user.userId}}</text>
</view>
</view>
<!-- <view class="member-box">

6
project.private.config.json

@ -101,6 +101,12 @@
"pathName": "pages/history/history",
"query": "",
"scene": null
},
{
"name": "关于我们",
"pathName": "pages/about/about",
"query": "",
"scene": null
}
]
}

17
utils/api.js

@ -27,7 +27,22 @@ function request(method, url, data,hasToke=true) {
data: method === POST ? JSON.stringify(data) : data,
header: header,
success(res) {
resolve(res.data);
console.log(res);
if(res.statusCode == 401){
wx.showToast({
title: '登录过期,请重新登录',
icon:"none",
mask:true,
})
wx.clearStorage();
setTimeout(()=>{
wx.navigateTo({
url:"/pages/auth/auth",
})
},1500)
}else{
resolve(res.data);
}
},
fail(err) {
//请求失败

17
utils/gisApi.js

@ -24,7 +24,22 @@ function request(method, url, data,is_token) {
data: method === POST ? JSON.stringify(data) : data,
header: header,
success(res) {
resolve(res.data);
if(res.statusCode == 401){
wx.showToast({
title: '登录过期,请重新登录',
icon:"none",
mask:true,
})
wx.clearStorage();
setTimeout(()=>{
wx.navigateTo({
url:"/pages/auth/auth",
})
},1500)
}else{
resolve(res.data);
}
},
fail(err) {
//请求失败

Loading…
Cancel
Save