18 changed files with 957 additions and 217 deletions
@ -1,6 +1,6 @@ |
|||||
const config = { |
const config = { |
||||
// api_url: 'http://192.168.42.44:7101/fqsb', // 服务器地址
|
api_url: 'http://192.168.52.42:8080/fqsb', // 服务器地址
|
||||
api_url: 'https://shibeirencai.elinkit.com.cn:7101/fqsb' // 正式环境
|
// api_url: 'https://shibeirencai.elinkit.com.cn:7101/fqsb' // 正式环境
|
||||
// api_url: 'https://dingoa.elinkit.com.cn/fqsb', // 测试环境
|
// api_url: 'https://dingoa.elinkit.com.cn/fqsb', // 测试环境
|
||||
} |
} |
||||
export { config } |
export { config } |
||||
@ -0,0 +1,103 @@ |
|||||
|
// pages/service/myService/myService.js
|
||||
|
import { UserModel } from '../../../models/user.js' |
||||
|
let userModel = new UserModel() |
||||
|
Page({ |
||||
|
|
||||
|
/** |
||||
|
* 页面的初始数据 |
||||
|
*/ |
||||
|
data: { |
||||
|
detail:{}, |
||||
|
img:[], |
||||
|
commentList:[], |
||||
|
score:false |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面加载 |
||||
|
*/ |
||||
|
onLoad: function (options) { |
||||
|
var id = options.id; |
||||
|
userModel.getWhistleDetail(id,res=>{ |
||||
|
var img = res.result.picList.split(";"); |
||||
|
img.pop(); |
||||
|
this.setData({ |
||||
|
detail:res.result, |
||||
|
img:img, |
||||
|
commentList:res.result.commentList |
||||
|
}); |
||||
|
|
||||
|
if(res.result.commentList[0]['score']){ |
||||
|
this.setData({ |
||||
|
score:true |
||||
|
}) |
||||
|
} |
||||
|
}); |
||||
|
}, |
||||
|
/** |
||||
|
* 生命周期函数--监听页面初次渲染完成 |
||||
|
*/ |
||||
|
onReady: function () { |
||||
|
}, |
||||
|
/** |
||||
|
* 生命周期函数--监听页面显示 |
||||
|
*/ |
||||
|
onShow: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面隐藏 |
||||
|
*/ |
||||
|
onHide: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面卸载 |
||||
|
*/ |
||||
|
onUnload: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面相关事件处理函数--监听用户下拉动作 |
||||
|
*/ |
||||
|
onPullDownRefresh: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面上拉触底事件的处理函数 |
||||
|
*/ |
||||
|
onReachBottom: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 用户点击右上角分享 |
||||
|
*/ |
||||
|
onShareAppMessage: function () { |
||||
|
|
||||
|
}, |
||||
|
previewImage:function(e){ |
||||
|
var current = e.target.dataset.src; |
||||
|
var th = this; |
||||
|
wx.previewImage({ |
||||
|
current: current, // 当前显示图片的http链接
|
||||
|
urls: th.data.img // 需要预览的图片http链接列表
|
||||
|
}) |
||||
|
}, |
||||
|
evaluation:function(){ |
||||
|
var th = this; |
||||
|
console.log(th.data.detail.id); |
||||
|
if (!th.data.detail.id) { |
||||
|
return; |
||||
|
} |
||||
|
// console.log(JSON.stringify(th.data.commentList))
|
||||
|
wx.navigateTo({ |
||||
|
url: '../evaluate/index?id=' + th.data.detail.id + '&list=' + JSON.stringify(th.data.commentList) |
||||
|
}) |
||||
|
|
||||
|
} |
||||
|
}) |
||||
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"usingComponents": {} |
||||
|
} |
||||
@ -0,0 +1,103 @@ |
|||||
|
<!--pages/service/myService/myService.wxml--> |
||||
|
<wxs module="myService" src="myService.wxs"></wxs> |
||||
|
|
||||
|
<view class="title"> |
||||
|
<!-- <view> |
||||
|
<view>{{detail.createTime}}</view> |
||||
|
<view>{{detail.departName}}</view> |
||||
|
</view> --> |
||||
|
<view style="color:{{myService.getColor(detail.status)}}">{{myService.getStatus(detail.status)}}</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="content"> |
||||
|
<view class="date">提交时间:{{detail.createTime}}</view> |
||||
|
<view class="con">{{detail.content}}</view> |
||||
|
|
||||
|
<block wx:if="{{detail.picList}}"> |
||||
|
<view class="image-show"> |
||||
|
<block wx:for="{{img}}"> |
||||
|
<!-- <view class="img-box"> --> |
||||
|
<block wx:if="{{item}}"> |
||||
|
<image class="img-box" src="{{item}}" data-src="{{item}}" bindtap="previewImage"></image> |
||||
|
</block> |
||||
|
<!-- </view> --> |
||||
|
</block> |
||||
|
</view> |
||||
|
</block> |
||||
|
<view class="info"> |
||||
|
<view> |
||||
|
<block wx:if="{{detail.questionType == 0}}"><text style="color:#737373;">资源类型:</text>{{detail.typeName}}</block> |
||||
|
<block wx:if="{{detail.questionType == 1}}"><text style="color:#737373;">租房类型:</text>{{detail.typeName}}</block> |
||||
|
<block wx:if="{{detail.questionType == 2}}"><text style="color:#737373;">需求类型:</text>{{detail.typeName}}</block> |
||||
|
</view> |
||||
|
<block wx:if="{{detail.departName}}"> |
||||
|
<view><text style="color:#737373;">所在街道:</text>{{detail.departName}}</view> |
||||
|
</block> |
||||
|
<block wx:if="{{detail.company}}"> |
||||
|
<view><text style="color:#737373;">工作单位:</text>{{detail.company}}</view> |
||||
|
</block> |
||||
|
|
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="process"> |
||||
|
|
||||
|
<view class="text-title">处理进度</view> |
||||
|
<view class="table"> |
||||
|
<block wx:for="{{detail.list}}"> |
||||
|
<view class="tb"> |
||||
|
|
||||
|
<view class="timeline"> |
||||
|
<view class="line"></view> |
||||
|
<view class="circle"> |
||||
|
<!-- <text class="fa fa-dot-circle-o fa-lg"></text> --> |
||||
|
|
||||
|
<text class="fa fa-dot-circle-o fa-lg"></text> |
||||
|
</view> |
||||
|
<view class="line"></view> |
||||
|
</view> |
||||
|
<view class="content-1"> |
||||
|
<view class="process-tit"><text style="font-size:16px">{{item.handleType}}</text><text style="font-size:13px;color:#737373;">{{item.handleDate}}</text></view> |
||||
|
<text style="font-size:13px;color:#737373;">{{item.handleSuggestions}}</text> |
||||
|
<block wx:if="{{item.handleDepartName}}"> |
||||
|
<text style="font-size:13px">处理部门:{{item.handleDepartName}}</text> |
||||
|
</block> |
||||
|
</view> |
||||
|
<!-- <view class="time">{{item.handleDate}}</view> --> |
||||
|
|
||||
|
</view> |
||||
|
</block> |
||||
|
|
||||
|
</view> |
||||
|
|
||||
|
</view> |
||||
|
|
||||
|
|
||||
|
|
||||
|
<block wx:if="{{detail.status == 1}}"> |
||||
|
<button class="btn1" bindtap="evaluation">我要评价</button> |
||||
|
</block> |
||||
|
|
||||
|
<block wx:if="{{score}}"> |
||||
|
<view class="score"> |
||||
|
<view class="text-title"> |
||||
|
评价反馈 |
||||
|
</view> |
||||
|
<block wx:for="{{commentList}}"> |
||||
|
<view class="comment"> |
||||
|
<view style="font-weight:800;"> |
||||
|
{{item.departName}} |
||||
|
</view> |
||||
|
<view class="com-top"> |
||||
|
<view> |
||||
|
<van-rate readonly value="{{ item.score }}" color="#ee0a24"/> <text> {{myService.getEvaluate(item.score)}}</text> |
||||
|
</view> |
||||
|
<view>{{item.commentDate}}</view> |
||||
|
</view> |
||||
|
<view class="com-bottom">{{item.comment}}</view> |
||||
|
</view> |
||||
|
</block> |
||||
|
|
||||
|
</view> |
||||
|
|
||||
|
</block> |
||||
@ -0,0 +1,67 @@ |
|||||
|
var myService = { |
||||
|
|
||||
|
getImage: function (str) { |
||||
|
var images = str.split(";"); |
||||
|
return images; |
||||
|
}, |
||||
|
|
||||
|
getEvaluate:function(score){ |
||||
|
var evaluate = ''; |
||||
|
switch(score) { |
||||
|
case 1: |
||||
|
evaluate = '非常不满意'; |
||||
|
break; |
||||
|
case 2: |
||||
|
evaluate = '不满意'; |
||||
|
break; |
||||
|
case 3: |
||||
|
evaluate = '一般'; |
||||
|
break; |
||||
|
case 4: |
||||
|
evaluate = '满意'; |
||||
|
break; |
||||
|
case 5: |
||||
|
evaluate = '非常满意'; |
||||
|
break; |
||||
|
default: |
||||
|
evaluate = ''; |
||||
|
} |
||||
|
return evaluate; |
||||
|
}, |
||||
|
|
||||
|
getStatus: function(status){ |
||||
|
if (status == '0'){ |
||||
|
status = '处理中'; |
||||
|
} else if (status == '1'){ |
||||
|
status = '已答复'; |
||||
|
} else if (status == '2'){ |
||||
|
status = '已驳回'; |
||||
|
} else if (status == '3') { |
||||
|
status = '已结束'; |
||||
|
} |
||||
|
return status; |
||||
|
}, |
||||
|
|
||||
|
getColor:function(status){ |
||||
|
|
||||
|
if (status == '0') { |
||||
|
var color = '#ff8a0e'; |
||||
|
} else if (status == '1') { |
||||
|
var color = '#f41414'; |
||||
|
} else if (status == '2') { |
||||
|
var color = '#1131e4'; |
||||
|
} else if (status == '3') { |
||||
|
var color = '#463c59'; |
||||
|
} |
||||
|
|
||||
|
return color; |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
// 导出对外暴露的属性 |
||||
|
module.exports = { |
||||
|
getImage:myService.getImage, |
||||
|
getEvaluate:myService.getEvaluate, |
||||
|
getStatus: myService.getStatus, |
||||
|
getColor: myService.getColor |
||||
|
} |
||||
@ -0,0 +1,180 @@ |
|||||
|
/* pages/service/myService/myService.wxss */ |
||||
|
page{ |
||||
|
width:100%; |
||||
|
font-size: 28rpx; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.title{ |
||||
|
width: 90%; |
||||
|
height: 60px; |
||||
|
border-bottom: 1rpx solid rgba(0, 0, 0, 0.116); |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
justify-content: space-between; |
||||
|
font-size: 13px; |
||||
|
} |
||||
|
|
||||
|
.content{ |
||||
|
width: 95%; |
||||
|
/* height: 200px; */ |
||||
|
margin-top: 5px; |
||||
|
border-bottom: 1rpx solid rgba(0, 0, 0, 0.116); |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
justify-content: center; |
||||
|
} |
||||
|
|
||||
|
.con{ |
||||
|
width:95%; |
||||
|
margin-top:20rpx; |
||||
|
margin-bottom: 20rpx; |
||||
|
font-size: 15px; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.date{ |
||||
|
width:95%; |
||||
|
font-size: 13px; |
||||
|
color:#737373; |
||||
|
} |
||||
|
|
||||
|
.info{ |
||||
|
width:95%; |
||||
|
font-size: 13px; |
||||
|
margin-bottom: 5px; |
||||
|
} |
||||
|
|
||||
|
.image-show{ |
||||
|
height: 220rpx; |
||||
|
width:95%; |
||||
|
overflow-x:scroll; |
||||
|
white-space:nowrap; |
||||
|
margin-top:30rpx; |
||||
|
} |
||||
|
|
||||
|
.img-box{ |
||||
|
margin-right:15rpx; |
||||
|
width:220rpx; |
||||
|
height:180rpx; |
||||
|
display: inline-flex; |
||||
|
position: relative; |
||||
|
} |
||||
|
|
||||
|
.process{ |
||||
|
width: 95%; |
||||
|
/* margin-top:20px; */ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
font-size: 27rpx; |
||||
|
} |
||||
|
|
||||
|
.table{ |
||||
|
/* background-color: #efeff4; */ |
||||
|
/* height: 100%; */ |
||||
|
width:100%; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.tb{ |
||||
|
width:100%; |
||||
|
/* height:150rpx; */ |
||||
|
min-height: 100px; |
||||
|
display: flex; |
||||
|
/* border: 1px solid #000; */ |
||||
|
} |
||||
|
|
||||
|
/* .time{ |
||||
|
width: 30%; |
||||
|
display: flex; |
||||
|
justify-content:right; |
||||
|
font-size:13px; |
||||
|
} */ |
||||
|
.timeline{ |
||||
|
width: 15%; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
} |
||||
|
|
||||
|
.content-1{ |
||||
|
width:85%; |
||||
|
/* height: 100%; */ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
justify-content:center; |
||||
|
/* align-items: center; */ |
||||
|
/* word-wrap:break-word; |
||||
|
word-break:break-all; */ |
||||
|
} |
||||
|
|
||||
|
|
||||
|
.line{ |
||||
|
width:49%; |
||||
|
height: 40%; |
||||
|
border-right: 1px solid #cecdcb; |
||||
|
} |
||||
|
.circle{ |
||||
|
width:100%; |
||||
|
height: 20%; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
justify-content:center; |
||||
|
color:#5677fc; |
||||
|
} |
||||
|
|
||||
|
.process-tit{ |
||||
|
display: flex; |
||||
|
justify-content: space-between; |
||||
|
} |
||||
|
text{ |
||||
|
margin-bottom: 5px; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
.btn1{ |
||||
|
width:90%; |
||||
|
background-color: #fc6351; |
||||
|
color: white; |
||||
|
margin-top: 30px; |
||||
|
margin-bottom: 30px; |
||||
|
} |
||||
|
|
||||
|
.score{ |
||||
|
width: 90%; |
||||
|
border-top: 1rpx solid rgba(0, 0, 0, 0.116); |
||||
|
} |
||||
|
|
||||
|
.comment{ |
||||
|
width: 100%; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
justify-content: center; |
||||
|
margin-bottom: 10px; |
||||
|
} |
||||
|
|
||||
|
.com-top{ |
||||
|
width: 100%; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
justify-content: space-between; |
||||
|
} |
||||
|
|
||||
|
.com-bottom{ |
||||
|
width: 100%; |
||||
|
margin-top: 10px; |
||||
|
} |
||||
|
|
||||
|
.text-title{ |
||||
|
width: 100%; |
||||
|
height: 40px; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
font-size: 17px; |
||||
|
} |
||||
@ -0,0 +1,72 @@ |
|||||
|
// pages/service/vipCard/vipCard.js
|
||||
|
import { ServiceModel } from '../../../models/service.js' |
||||
|
let serviceModel = new ServiceModel() |
||||
|
Page({ |
||||
|
|
||||
|
/** |
||||
|
* 页面的初始数据 |
||||
|
*/ |
||||
|
data: { |
||||
|
detail:{} |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面加载 |
||||
|
*/ |
||||
|
onLoad: function (options) { |
||||
|
serviceModel.vipCard(res=>{ |
||||
|
this.setData({ |
||||
|
detail:res.result |
||||
|
}) |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面初次渲染完成 |
||||
|
*/ |
||||
|
onReady: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面显示 |
||||
|
*/ |
||||
|
onShow: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面隐藏 |
||||
|
*/ |
||||
|
onHide: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 生命周期函数--监听页面卸载 |
||||
|
*/ |
||||
|
onUnload: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面相关事件处理函数--监听用户下拉动作 |
||||
|
*/ |
||||
|
onPullDownRefresh: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 页面上拉触底事件的处理函数 |
||||
|
*/ |
||||
|
onReachBottom: function () { |
||||
|
|
||||
|
}, |
||||
|
|
||||
|
/** |
||||
|
* 用户点击右上角分享 |
||||
|
*/ |
||||
|
onShareAppMessage: function () { |
||||
|
|
||||
|
} |
||||
|
}) |
||||
@ -0,0 +1,3 @@ |
|||||
|
{ |
||||
|
"usingComponents": {} |
||||
|
} |
||||
@ -0,0 +1,14 @@ |
|||||
|
<!--pages/service/vipCard/vipCard.wxml--> |
||||
|
<view class="card" style="background:url(../../../../../images/card.png) center no-repeat;background-size:100% 100%;"> |
||||
|
<view class="title">{{detail.cardName}}</view> |
||||
|
<view class="name">{{detail.name}}</view> |
||||
|
<view class="type">{{detail.talentsType}}</view> |
||||
|
<view class="number">NO: {{detail.idCard}}</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="explain-tit">权益说明</view> |
||||
|
|
||||
|
<view class="explain"> |
||||
|
为市北区高层次人才发放电子服务绿卡,围绕人才成长发展“全生命周期”,整合人才公共服务和社会化服务两大体系,提供人才落户、子女入学、政务服务、医疗保障、交通出行、家政服务、法律服务等20项服务。 |
||||
|
<!-- {{detail.cardExplain}} --> |
||||
|
</view> |
||||
@ -0,0 +1,56 @@ |
|||||
|
/* pages/service/vipCard/vipCard.wxss */ |
||||
|
|
||||
|
page{ |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.card{ |
||||
|
/* width:650rpx; */ |
||||
|
width:85%; |
||||
|
height:350rpx; |
||||
|
border-radius: 4px; |
||||
|
margin-top: 20px; |
||||
|
} |
||||
|
|
||||
|
.title{ |
||||
|
color:white; |
||||
|
margin: 30rpx 0 50rpx 40rpx; |
||||
|
font-size: 40rpx; |
||||
|
font-weight: bold; |
||||
|
} |
||||
|
|
||||
|
.name{ |
||||
|
color: white; |
||||
|
margin: 0 0 2rpx 40rpx; |
||||
|
font-size: 50rpx; |
||||
|
font-weight: bold; |
||||
|
} |
||||
|
|
||||
|
.type{ |
||||
|
color: white; |
||||
|
margin: 0 0 2rpx 40rpx; |
||||
|
font-size: 36rpx; |
||||
|
font-weight: bold; |
||||
|
} |
||||
|
|
||||
|
.number{ |
||||
|
color: white; |
||||
|
margin: 0 0 0 40rpx; |
||||
|
font-size: 24rpx; |
||||
|
} |
||||
|
|
||||
|
.explain-tit{ |
||||
|
width: 85%; |
||||
|
margin: 20px 0; |
||||
|
font-size: 15px; |
||||
|
font-weight: bold; |
||||
|
} |
||||
|
|
||||
|
.explain{ |
||||
|
width: 85%; |
||||
|
font-size: 12px; |
||||
|
} |
||||
Loading…
Reference in new issue