作者 王智

bug

正在显示 71 个修改的文件 包含 1015 行增加297 行删除
//app.js
App({
onLaunch: function() {
onLaunch: function () {
//自动更新版本
const updateManager = wx.getUpdateManager()
updateManager.onCheckForUpdate(function(res) {
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
})
updateManager.onUpdateReady(function() {
updateManager.onUpdateReady(function () {
wx.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
success: function(res) {
success: function (res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate()
... ... @@ -21,7 +21,7 @@ App({
})
updateManager.onUpdateFailed(function() {
updateManager.onUpdateFailed(function () {
// 新的版本下载失败
wx.showModal({
title: '更新提示',
... ... @@ -31,7 +31,7 @@ App({
})
},
post: function(url, data, headerParams) {
post: function (url, data, headerParams) {
wx.showNavigationBarLoading()
wx.showLoading({
title: '加载中',
... ... @@ -52,7 +52,7 @@ App({
data: postData,
method: 'POST',
header: header,
success: function(res) { //返回取得的数据
success: function (res) { //返回取得的数据
if (res.data.code == '20000') {
resolve(res.data.data);
} else if (res.data.code == '10001') { //用户未登录
... ... @@ -62,20 +62,30 @@ App({
})
} else if (res.data.code == '40000') {
if (url == '/index/second/commitAnswer') {
resolve(res.data);
} else {
wx.showModal({
title: '提示',
content: res.data.msg,
showCancel: false,
success: function(res) {
success: function (res) {
}
})
}
} else if (res.data.code == '40005') {
wx.showModal({
title: '提示',
content: res.data.msg,
showCancel: false,
success: function(res) {
success: function (res) {
if (res.confirm) {
wx.reLaunch({
url: '/pages/start/start'
... ... @@ -98,7 +108,7 @@ App({
wx.hideLoading()
wx.hideNavigationBarLoading()
},
fail: function(e) {
fail: function (e) {
reject('网络出错');
// wx.hideLoading()
wx.hideNavigationBarLoading()
... ...
... ... @@ -3,6 +3,7 @@
"pages/start/start",
"pages/index/index",
"pages/my/my",
"pages/mydetail/mydetail",
"pages/more/more",
"pages/admin/admin",
"pages/apply/apply",
... ...

1.7 KB | 宽: | 高:

5.0 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

511 字节 | 宽: | 高:

1.3 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

361 字节 | 宽: | 高:

830 字节 | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

424 字节 | 宽: | 高:

1.1 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

475 字节 | 宽: | 高:

1.4 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

1.8 KB | 宽: | 高:

5.4 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

1.6 KB | 宽: | 高:

4.4 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

1.6 KB | 宽: | 高:

4.7 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

544 字节 | 宽: | 高:

1.6 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

471 字节 | 宽: | 高:

1.1 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

185 字节 | 宽: | 高:

672 字节 | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

508 字节 | 宽: | 高:

1.3 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

2.6 KB | 宽: | 高:

6.4 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

2.5 KB | 宽: | 高:

6.6 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

2.4 KB | 宽: | 高:

6.2 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

2.4 KB | 宽: | 高:

6.1 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

2.6 KB | 宽: | 高:

7.1 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

2.5 KB | 宽: | 高:

6.5 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

2.1 KB | 宽: | 高:

6.4 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

2.0 KB | 宽: | 高:

6.6 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

457 字节 | 宽: | 高:

1.3 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖

394 字节 | 宽: | 高:

1.1 KB | 宽: | 高:

  • 两方对比
  • 交换覆盖
  • 透明覆盖
... ... @@ -21,7 +21,8 @@
<view class="shengqin">
<button wx:if="{{list.user_status ==0}}">未审核</button>
<button wx:if="{{list.user_status ==1}}">审核通过</button>
<button style="background:#cfcfcf;box-shadow:0rpx 18rpx 38rpx 0rpx rgba(179, 179, 179, 0.42);"
wx:if="{{list.user_status ==1}}">审核已通过</button>
<button wx:if="{{list.user_status ==-1}}">审核不通过</button>
<button wx:if="{{list.user_status ==3}}" bindtap="getshengqin" data-id="{{id}}">未申请</button>
</view>
\ No newline at end of file
... ...
... ... @@ -27,6 +27,7 @@ page {
align-items: center;
margin-right: 42rpx;
}
/* */
.goods_introduce {
height: 88rpx;
... ... @@ -68,3 +69,10 @@ page {
box-shadow: 0px 9px 19px 0px rgba(0, 116, 45, 0.42);
}
.gray {
width: 622rpx;
height: 88rpx;
border-radius: 44rpx;
}
\ No newline at end of file
... ...
... ... @@ -15,13 +15,13 @@ Page({
})
//全局变量
app.globalData.currentTab = e.currentTarget.dataset.id;
// app.globalData.currentTab = e.currentTarget.dataset.id;
this.getactive();
},
onShow() {
this.setData({
currentTab: app.globalData.currentTab
})
// this.setData({
// currentTab: app.globalData.currentTab
// })
let that = this;
that.getNewsType()
... ... @@ -40,9 +40,10 @@ Page({
'XX-Token': wx.getStorageSync('token')
}
app.post(url, head).then((res) => {
// console.log(res)
console.log(res)
that.setData({
navbar: res
navbar: res,
})
}).catch((err) => {
... ... @@ -59,9 +60,11 @@ Page({
'XX-Token': wx.getStorageSync('token')
}
let params = {
page: that.data.currentTab
}
}
console.log(params)
app.post(url, params, head).then((res) => {
// console.log(res)
that.setData({
... ...
... ... @@ -2,9 +2,58 @@ const app = getApp();
Page({
data: {
list:[]
list: [],
array: [],
index: 1
},
onLoad: function (options) {
wx.getLocation({
altitude: 'true',
success(res) {
console.log(res)
}
})
},
onReady: function () {
},
onShow: function () {
let that = this;
that.getList();
that.get_city();
},
// 选择
bindPickerChange: function (e) {
console.log('picker发送选择改变,携带值为', e.detail.value)
this.setData({
index: e.detail.value
})
that.getList()
},
// 地址获取
get_city() {
let that = this;
let url = '/index/index/cityList'
let head = {
'XX-Token': wx.getStorageSync('token')
}
app.post(url, {}, head).then((res) => {
console.log(res)
that.setData({
array: res.city
})
}).catch((err) => {
})
},
// 志愿列表
getList() {
let that = this;
... ... @@ -13,10 +62,10 @@ Page({
'XX-Token': wx.getStorageSync('token')
}
let params = {
city: '天津'
city: '天津'
}
app.post(url,params, head).then((res) => {
console.log(params)
app.post(url, params, head).then((res) => {
// console.log(res)
that.setData({
list: res
... ... @@ -29,38 +78,25 @@ Page({
// 详情页
getDetail(e) {
console.log(e)
let that = this;
let url = '/index/second/checkTranStatus';
let head = {
'XX-Token': wx.getStorageSync('token')
}
app.post(url, '', head).then((res) => {
var id = e.currentTarget.dataset.id;
// console.log(id)
wx.navigateTo({
url: '/pages/Volunteer_detail/Volunteer_detail?id=' +id,
url: '/pages/Volunteer_detail/Volunteer_detail?id=' + id,
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
}).catch((err) => {
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
let that =this;
that.getList();
},
/**
* 生命周期函数--监听页面隐藏
... ...
<!-- 志愿团队 -->
<view class="group_name">
<view class="group_name" bindtap="chooseLocation">
<image src="/imgs/didian-14.png"></image>
<view>北京</view>
<picker bindchange="bindPickerChange" value="{{index}}" range="{{array}}">
<view class="picker">
{{array[index]}}
<image class="right" src="/imgs/right.png"></image>
</view>
</picker>
</view>
<view class='new_box'>
<!-- <navigator wx:for='{{activity}}' wx:key="id" url='/pages/img_txt/img_txt?id={{item.id}}&status=1' hover-class="none"> -->
<view class='new_cell' data-id="{{list.id}}" bindtap="getDetail" >
<view class='new_cellmain' >
<view class='new_cell' data-id="{{list.id}}" bindtap="getDetail">
<view class='new_cellmain'>
<view class='new_img'>
<image src='{{list.pic}}' mode="aspectFill" />
<!-- <view class="">
<view>300</view>
<view>22</view>
</view> -->
<view class="new_num">
<view> {{list.work_total_time}}小时</view>
<view>{{list.people_num}}人</view>
</view>
</view>
<view class='new_title'>{{list.name}}</view>
<view class='title_box'>
<view class='wz_box'>
<text>{{list.create_time}}</text>
</view>
<view class='word'>北京</view>
<view class='word'>{{list.city}}</view>
</view>
</view>
</view>
<!-- </navigator> -->
... ...
/* pages/Volunteer_group/Volunteer_group.wxss */
page{
page {
background-color: rgb(240, 240, 240);
}
.group_name {
padding: 0 32rpx;
padding: 0 32rpx;
height: 88rpx;
line-height: 88rpx;
font-size: 34rpx;
... ... @@ -20,6 +20,13 @@ padding: 0 32rpx;
margin-right: 16rpx;
}
.group_name .right {
width: 25rpx;
height: 30rpx;
margin-left: 16rpx;
}
/* */
.new_box {
display: flex;
... ... @@ -30,49 +37,63 @@ padding: 0 32rpx;
margin-bottom: 24rpx;
font-size: 24rpx;
flex-wrap: wrap;
/* border-bottom: 2rpx solid #e6e6e6; */
}
}
.new_cell {
.new_cell {
width: 48%;
/* padding: 29rpx 0rpx; */
background-color: #ffffff;
/* background-color: #ffffff; */
border-radius: 7px;
overflow: hidden;
margin-top: 24rpx;
}
}
.new_cell:nth-child(2n) {
/* margin: 0 0 0 10rpx;
margin-top: 24rpx; */
}
.new_cellmain {
.new_cellmain {
overflow: hidden;
width: 336rpx;
/* width: 336rpx; */
background-color: #ffffff;
border-radius: 7px;
}
}
.new_img {
.new_img {
width: 336rpx;
height: 220rpx;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
}
position: relative;
}
.new_img image {
.new_img image {
width: 100%;
height: 100%;
display: block;
}
.new_title {
}
.new_num {
padding: 0 16rpx;
width: 100%;
height: 46rpx;
color: #ffffff;
position: absolute;
left: 0;
bottom: 0;
display: flex;
justify-content: space-between;
}
.new_num view {
width: 100rpx;
}
.new_title {
padding: 0 20rpx;
height: 76rpx;
overflow: hidden;
text-overflow: ellipsis;
... ... @@ -83,17 +104,17 @@ padding: 0 32rpx;
margin: 18rpx 0 13rpx 0;
color: #292929;
font-size: 28rpx;
}
}
.activity_title {
.activity_title {
margin: 0 32rpx;
display: flex;
justify-content: space-between;
align-items: center;
}
}
.title_box {
padding: 0 16rpx;
.title_box {
padding: 0 20rpx;
margin: 18rpx 0 13rpx 0;
font-size: 24rpx;
font-family: PingFang SC;
... ... @@ -102,19 +123,19 @@ padding: 0 32rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
}
.wz_box {
.wz_box {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
.title_box .word {
.title_box .word {
max-width: 200rpx;
color: #FF976A;
font-size: 24rpx;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
\ No newline at end of file
}
\ No newline at end of file
... ...
... ... @@ -2,9 +2,7 @@
const app = getApp();
Page({
/**
* 页面的初始数据
*/
data: {
id: '',
list: ''
... ...
... ... @@ -5,7 +5,9 @@ Page({
data: {
id: '',
list: '',
answers:[]
answers:[],
finaAnswer:[],
showAnswer: false
},
onLoad: function (options) {
... ... @@ -36,8 +38,8 @@ Page({
app.post(url, params, head).then((res) => {
console.log(res)
that.setData({
list: res
list: res,
tempList:JSON.parse(JSON.stringify(res))
})
}).catch((err) => {
... ... @@ -47,10 +49,16 @@ Page({
radioChange(e){
let tempAnswer = e.detail.value.split(',');
this.data.answers[tempAnswer[1]] = tempAnswer[0];
this.data.finaAnswer[tempAnswer[1]]={
key: tempAnswer[0],
answer: tempAnswer[1]
}
this.data.list[tempAnswer[1]].choose = tempAnswer[2]
this.setData({
answers: this.data.answers
answers: this.data.answers,
finaAnswer:this.data.finaAnswer,
list:this.data.list
})
},
// 确认
... ... @@ -65,7 +73,9 @@ Page({
class_id: that.data.id,
}
app.post(url, params, head).then((res) => {
if (res.code == 40000) {
if (res.code == '40000') {
let answer = res
wx.showModal({
title: '提示',
content: '很遗憾你没有获得学时',
... ... @@ -73,16 +83,22 @@ Page({
cancelText: '查看答案',
success(res) {
if (res.confirm) {
wx.navigateTo({
url: '/pages/getStudycontent/answer/answer',
wx.redirectTo({
url: '/pages/getStudycontent/answer/answer?id='+that.data.id,
})
// let tempList = JSON.stringify(that.data.tempList)
// that.setData({
// showAnswer: false,
// // list: JSON.parse(tempList)
// })
console.log('用户点击确定')
} else if (res.cancel) {
wx.navigateTo({
url: '/pages/getStudycontent/answer/answer',
// wx.navigateTo({
// url: '/pages/getStudycontent/answer/answer',
// })
that.setData({
showAnswer: true
})
console.log('用户点击取消')
... ... @@ -104,7 +120,7 @@ Page({
}).catch((err) => {
console.log(err)
})
... ...
<view class="answer" wx:for="{{list}}" wx:for-index="index">
<view class="answer_left" wx:if="{{item.id<9}}" >0{{item.id}}</view>
<view class="answer_left" wx:else >{{item.id}}</view>
<view class="answer_left" wx:if="{{item.id<9}}">0{{item.id}}</view>
<view class="answer_left" wx:else>{{item.id}}</view>
<view class="answer_right">
<view class="answer_question">{{item.title}}</view>
<radio-group bindchange="radioChange">
<view class="flexs" wx:for="{{item.options_array}}" wx:for-index="idx" wx:for-item="second">
<view class="answer_answer">
<radio value="{{second+','+index}}" checked='' >{{second}}</radio>
<radio value="{{second+','+index+','+idx}}" checked=''>{{second}}</radio>
<block wx:if="{{showAnswer}}">
{{answer[index]}}
<image src="/imgs/zhengque-5.png" wx:if="{{item.answer==idx}}"></image>
<image src="/imgs/cuowu-3.png" wx:if='{{item.choose==idx}}'></image>
</block>
</view>
<!-- <view class="answer_answer">
<radio>有一颗高尚的心</radio>
</view>
<view class="answer_answer">
<radio>有一颗高尚的心</radio>
</radio-group>
</view>
</view>
<view class="shengqin">
<button bindtap="getcomfirm">确认</button>
</view>
<!-- 答案 -->
<!-- <view class="answer" wx:for="{{list}}" wx:for-index="index">
<view class="answer_left" wx:if="{{item.id<9}}">0{{item.id}}</view>
<view class="answer_left" wx:else>{{item.id}}</view>
<view class="answer_right">
<view class="answer_question">{{item.title}}</view>
<radio-group bindchange="radioChange">
<view class="flexs" wx:for="{{item.options_array}}" wx:for-index="idx" wx:for-item="second">
<view class="answer_answer">
<radio>有一颗高尚的心</radio>
</view> -->
<radio value="{{second+','+index}}" checked='{{item.choose}}'>{{second}}</radio>
</view>
</view>
</radio-group>
</view>
</view>
</view> -->
<view class="shengqin">
<button bindtap="getcomfirm" >确认</button>
<button bindtap="getcomfirm">确认</button>
</view>
\ No newline at end of file
... ...
... ... @@ -29,6 +29,8 @@ page {
.answer_answer {
margin-top: 36rpx;
display: flex;
align-items: center;
}
.flexs{
... ... @@ -36,6 +38,11 @@ page {
flex-direction: column;
}
.flexs image{
width: 28rpx;
height: 28rpx;
margin-left: 22rpx;
}
/*单选框样式修改 */
/* 选中后的 背景样式 (红色背景 无边框 可根据UI需求自己修改) */
... ...
... ... @@ -8,8 +8,8 @@
</swiper>
<!-- <view class='vold_line'></view> -->
<!-- 菜单 -->
<view class="home_menu displayB ">
<view class="home_time" bindtap="gotoNav" data-id="{{item.id}}" data-path="{{item.path}}" wx:for="{{navList}}" wx:key="id">
<view class="home_menu ">
<view class="home_time" bindtap="gotoNav" data-id="{{item.id}}" data-path="{{item.path}}" wx:for="{{navList}}" wx:key="id" >
<view>
<image src="{{item.icon}}" />
</view>
... ...
... ... @@ -14,13 +14,16 @@ page {
/* 菜单 */
.home_menu {
padding-left: 70rpx;
margin-top: 40rpx;
width: 608rpx;
margin: 40rpx auto;
display: flex;
flex-wrap: wrap;
max-width: 605rpx;
justify-content: space-between;
}
.home_time {
padding-left: 20rpx;
width: 96rpx;
font-size: 22rpx;
text-align: center;
... ...
... ... @@ -23,6 +23,14 @@ Page({
})
},
// 我的个人信息
getmy() {
wx.navigateTo({
url: '/pages/mydetail/mydetail',
})
},
// 管理员
goamdin(e) {
wx.navigateTo({
... ... @@ -66,8 +74,8 @@ Page({
})
},
// 电子证件
getCertificate(){
// 电子证件
getCertificate() {
wx.navigateTo({
url: '/pages/mycertificate/mycertificate',
})
... ... @@ -76,7 +84,7 @@ Page({
// 我的地址
getmyAdd() {
wx.navigateTo({
url: '/pages/myaddress/myaddress?id='+this.data.datalist.id,
url: '/pages/myaddress/myaddress?id=' + this.data.datalist.id,
})
},
... ...
<view class='my_head'>
<image class="my_headimg" src='/imgs/card.png'></image>
<view class='my_headitem'>
<view class='my_headitem' bindtap="getmy">
<view class="my_headitemtop">
<view class='my_headitemimg'>
<image src="{{datalist.avatar?datalist.avatar:'/imgs/icon_59.png'}}"></image>
... ... @@ -27,11 +27,11 @@
</view>
<view class="my_activebox">
<view class="my_active">
<view>300</view>
<view>{{datalist.activity_num}}</view>
<view>活动</view>
</view>
<view class="my_active">
<view>120</view>
<view>{{datalist.group_num}}</view>
<view>团队</view>
</view>
<view class="my_active">
... ...
... ... @@ -79,25 +79,22 @@
<!-- 完成的活动 -->
<view wx:elif="{{nav==3}}">
<view class="myactive_wrap">
<view class="myactive_wrap" wx:for="{{list}}">
<view class="myactive_time">
<image src="/imgs/shijian-19.png"></image>2020-06-08 8:00-12:00
<image src="/imgs/shijian-19.png"></image>{{item.date}}
{{ item.start_clock_time}}-{{item.end_clock_time}}
</view>
<view class="myactive_list">
<image src="/imgs/active.png"></image>
<image src="{{item.activity.thumbnail}}"></image>
<view class="myactive_name">
<view>[福建省]白求恩志愿者招募-志愿者</view>
<view>{{item.activity_name}}</view>
<view class="myactive_gps">
<image src="/imgs/didian-14.png"></image> 获得5小时工时
</view>
</view>
</view>
</view>
</view>
... ...
{
"usingComponents": {}
"usingComponents": {},
"navigationBarTitleText": "上岗打卡"
}
\ No newline at end of file
... ...
... ... @@ -19,7 +19,7 @@
<view>下岗打卡{{list.end_clock_time}}</view>
<view class="state" wx:if="{{list.status==0}}">未打卡</view>
<view class="state" wx:if="{{list.status==1}}">已开始</view>
<view class="state" wx:if="{{list.status==2}}">完成打</view>
<view class="state" wx:if="{{list.status==2}}">完成打</view>
<view class="state" wx:if="{{list.status==3}}">未完成</view>
</view>
</view>
... ... @@ -27,6 +27,16 @@
<view>上岗打卡</view>
<view>12:00</view>
</view>
<view class="myactivity_start" bindtap="getpunch">
<view>下岗打卡</view>
<view>12:00</view>
</view>
<view class="myactivity_end" >
<image src="/imgs/wancheng.png"></image>
<view>已完成打卡</view>
<view>感谢您参加本次公益活动 爱上一盏灯,照亮你我他</view>
</view>
<view></view>
... ...
... ... @@ -53,7 +53,32 @@ page {
.myactivity_start :nth-child(1) {
font-size: 40rpx;
}
.myactivity_end {
text-align: center;
}
.myactivity_end image {
margin-top: 56rpx;
width: 290rpx;
height: 290rpx
}
.myactivity_end :nth-child(2) {
margin-top: 38rpx;
font-size: 40rpx;
color: #11A94C;
}
.myactivity_end :nth-child(3) {
margin-top: 16rpx;
width: 322rpx;
font-size: 28rpx;
color: #11A94C;
margin: auto;
margin-bottom: 182rpx;
}
/* 提示 */
... ...
... ... @@ -4,87 +4,143 @@ Page({
data: {
textareaNum: 0,
// join_reason: '', //加入理由
// id: '',
// wechat: '', //微信号
// move_phone: '' //手机号
name: '',
job: '',
data: '',
time: '',
join_reason: '', //加入理由
},
// // 微信号
// setwechat(e) {
// console.log(e)
// this.setData({
// wechat: e.detail.value
// })
//姓名
setname(e) {
console.log(e)
this.setData({
name: e.detail.value
})
},
// 工作内容
setmove_job(e) {
console.log(e)
this.setData({
job: e.detail.value
})
},
// 日期
setmove_data(e) {
console.log(e)
// },
// // 手机号码
// setmove_phone(e) {
// this.setData({
// move_phone: e.detail.value
// })
// },
this.setData({
data: e.detail.value
})
},
// 参加时间
setmove_time(e) {
console.log(e)
this.setData({
time: e.detail.value
})
},
//汇报
textareaIn: function (e) {
console.log(e)
this.setData({
textareaNum: e.detail.cursor,
join_reason: e.detail.value
})
},
// submit(e) {
// let that = this;
// 图片上传
ChooseImage: function () {
var that = this
var Count = 9
wx.chooseImage({
count: Count,
success: function (res) {
console.log(res.tempFilePaths)
var i = 0;
var imageList = {};
for (i; i <= res.tempFilePaths.lengh; i++) {
}
that.setData({
imageList: res.tempFilePaths
})
}
})
},
deleteImg: function (e) {
console.log(e.currentTarget.dataset.index)
this.data.imageList.splice(e.currentTarget.dataset.index, 1)
this.setData({
imageList: this.data.imageList
})
},
// submit(e) {
// let that = this;
// let url = '/index/second/applyTeam';
// let head = {
// 'XX-Token': wx.getStorageSync('token')
// }
// let params = {
// wx_id: that.data.wechat,
// mobile: that.data.move_phone,
// join_reason: that.data.join_reason,
// team_id: that.data.id
// }
// let url = '/index/second/applyTeam';
// let head = {
// 'XX-Token': wx.getStorageSync('token')
// }
// let params = {
// name: that.data.name,
// job: that.data.job,
// data: that.data.data,
// time: that.data.time,
// join_reason: that.data.join_reason
// }
// app.post(url, params, head).then((res) => {
// app.post(url, params, head).then((res) => {
// wx.showModal({
// title: '提示',
// content: '请仔细核对信息,确认无误!',
// confirmText: '确认提交',
// cancelText: '我再想想',
// success(res) {
// if (res.confirm) {
// wx.showModal({
// title: '提示',
// content: '请仔细核对信息,确认无误!',
// confirmText: '确认提交',
// cancelText: '我再想想',
// success(res) {
// if (res.confirm) {
// wx.showToast({
// title: '提交成功,等待审核',
// mask: true,
// icon: 'none',
// // duration: 2000
// })
// setTimeout(function () {
// wx.switchTab({
// url: '/pages/index/index'
// })
// }, 1000)
// console.log('用户点击确定')
// } else if (res.cancel) {
// wx.showToast({
// title: '提交成功,等待审核',
// mask: true,
// icon: 'none',
// // duration: 2000
// })
// setTimeout(function () {
// wx.navigateBack({
// delta: 0,
// })
// }, 1000)
// console.log('用户点击确定')
// } else if (res.cancel) {
// console.log('用户点击取消')
// }
// }
// })
// console.log('用户点击取消')
// }
// }
// })
// }).catch(() => {})
// }).catch(() => {})
// },
// },
... ...
<!--微信号 -->
<!--姓名 -->
<view class='apply_item'>
<view>姓名</view>
<view class='apply_item_input'>
<input placeholder='请输入姓名' placeholder-class='input_p' bindinput='setwechat' value='{{wechat}}'
<input placeholder='请输入姓名' placeholder-class='input_p' bindinput='setname' value='{{name}}'
disabled="{{page_type}}"></input>
</view>
</view>
<view class="line">
<view></view>
</view>
<!--手机号码 -->
<!--工作内容 -->
<view class='apply_item'>
<view>工作内容</view>
<view class='apply_item_input'>
<input placeholder='请输入工作内容' placeholder-class='input_p' bindinput='setmove_phone'
value='{{move_phone}}' disabled="{{page_type}}"></input>
<input placeholder='请输入工作内容' placeholder-class='input_p' bindinput='setmove_job' value='{{job}}'
disabled="{{page_type}}"></input>
</view>
</view>
<view class="line">
<view></view>
</view>
<!--参加日期 -->
<view class='apply_item'>
<view>参加日期</view>
<view class='apply_item_input'>
<input placeholder='请输入参加日期' placeholder-class='input_p' bindinput='setmove_phone'
value='{{move_phone}}' disabled="{{page_type}}" maxlength="11"></input>
<input placeholder='请输入参加日期' placeholder-class='input_p' bindinput='setmove_data' value='{{data}}'
disabled="{{page_type}}"></input>
</view>
</view>
<view class="line">
<view></view>
</view>
<!-- 参加时间 -->
<view class='apply_item'>
<view>参加时间</view>
<view class='apply_item_input'>
<input placeholder='请输入参加时间' placeholder-class='input_p' bindinput='setmove_phone'
value='{{move_phone}}' disabled="{{page_type}}" maxlength="11"></input>
<input placeholder='请输入参加时间' placeholder-class='input_p' bindinput='setmove_time' value='{{time}}'
disabled="{{page_type}}"></input>
</view>
</view>
<view class="listforms"></view>
<!-- 感想汇报 -->
<view class="doc-listform">
<view>图片上传</view>
<view class="doc-Images">
<view wx:for="{{imageList}}" wx:key="{{item}}" class="doc-ImageList">
<image src="{{item}}">
<text data-index='{{index}}' class="iconfont icon-close" style="color:rgba(0,0,0,0.3)"
bindtap="deleteImg"></text>
</image>
</view>
<button bindtap="ChooseImage" class="chooseImage">+</button>
</view>
<view> 感想汇报</view>
<textarea show-confirm-bar="" placeholder="请输入内容,内容最多为500字" maxlength="500" bindinput="textareaIn" value='{{join_reason}}'>
<textarea show-confirm-bar="" placeholder="请输入内容,内容最多为500字" maxlength="500" bindinput="textareaIn"
value='{{join_reason}}'>
<view style="position:absolute;bottom:20rpx;right:0rpx;color:gray;"><text style="color:#000;">{{textareaNum}}</text> / 500</view>
</textarea>
</view>
... ...
... ... @@ -57,22 +57,27 @@
/* */
.doc-listform {
padding: 0 32rpx;
padding-top: 16rpx;
margin-bottom: 100rpx;
padding: 40rpx 32rpx;
font-size: 28rpx;
background-color: #ffffff;
position: relative;
}
.listforms{
.listforms {
height: 15rpx;
background-color: #eeeeee;
}
textarea {
padding: 20rpx;
font-size: 28rpx;
margin-top: 20rpx;
width: auto;
border: 2rpx solid #eeeeee;
}
/* 提示 */
.tishi_wrap {
padding: 24rpx 36rpx;
... ... @@ -103,6 +108,49 @@ textarea {
}
/* 图片 */
.doc-Images {
width: 100%;
}
.chooseImage {
width: 200rpx;
height: 200rpx;
line-height: 200rpx;
text-align: center;
font-size: 80rpx;
padding: 0px !important;
margin: 20rpx 0rpx !important;
color: #ddd;
border: 1px solid #eeeeee;
display: inline-block !important;
border-radius: 0px
}
.chooseImage::after {
border: none;
}
.doc-ImageList {
height: 200rpx;
margin: 0 25rpx;
display: inline-block;
}
.doc-ImageList image {
width: 200rpx;
height: 200rpx;
position: relative;
z-index: 4px;
}
.doc-ImageList image .iconfont {
position: absolute;
z-index: 5px;
right: 0rpx;
top: 0rpx;
}
.shengqin {
height: 122rpx;
background-color: #ffffff;
... ...
... ... @@ -92,6 +92,18 @@ Page({
})
},
// 选择地址
getchoose(e) {
console.log(e)
let index = e.currentTarget.dataset.index;
wx.setStorageSync('tempAdress', this.data.list[index])
wx.navigateBack({
delta: 0,
})
},
/**
* 生命周期函数--监听页面加载
... ...
<view class="itemAddress displayB" wx:for="{{list}}" >
<view class="add_left" >
<view class="itemAddress displayB" wx:for="{{list}}" data-item="{{list}}">
<view class="add_left" bindtap="getchoose" data-index='{{index}}'>
<view class="add_user display">
<!-- <view class="user_name">{{item.name}}</view>
<view class="user_phone">{{item.phone}}</view>
... ...
// pages/mycertificate/mycertificate.js
const app =getApp()
Page({
/**
* 页面的初始数据
*/
data: {
list: '',
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
let that = this
that.getactive()
},
getactive() {
let that = this;
let url = '/index/second/zhengJianInfo ';
let head = {
'XX-Token': wx.getStorageSync('token')
}
app.post(url, '', head).then((res) => {
console.log(res)
this.setData({
list: res
})
})
},
/**
* 生命周期函数--监听页面隐藏
*/
... ...
... ... @@ -3,16 +3,16 @@
<image src="/imgs/dianzizhengjian1.png"></image>
<view class="mycertificate_text">
<view class="goods_left">
<view>姓名:张三</view>
<view>身份:医生</view>
<view>编号:007556562</view>
<view>学时:100</view>
<view>姓名:{{list.name}}</view>
<view>身份:{{list.status}}</view>
<view>编号:{{list.user_num}}</view>
<view>学时:{{list.work_time}}</view>
</view>
<image class="One_inch_photos" src="/imgs/u=2815405920,207947254&fm=26&gp=0.png"></image>
<image class="One_inch_photos" src="{{list.avatar}}"></image>
</view>
</view>
<view class="mycertificate">
<view class="mycertificate distance">
<image src="/imgs/dianzizhengjian.png"></image>
<view class="mycertificate_text">
<view class="goods_lefts">
... ... @@ -35,5 +35,5 @@
</view>
<view class="btn">
<button hover-class="none" > 将电子证件生成图片</button>
<button hover-class="none"> 将电子证件生成图片</button>
</view>
\ No newline at end of file
... ...
... ... @@ -7,6 +7,10 @@ page {
padding: 0 32rpx;
padding-top: 32rpx;
position: relative;
}
.distance{
margin-bottom: 142rpx;
}
image {
... ... @@ -91,11 +95,15 @@ image {
}
.btn {
margin-top: 80rpx;
height: 122rpx;
background-color: #ffffff;
display: flex;
align-items: center;
position: fixed;
left: 0;
right: 0;
bottom: 0;
}
button {
... ...
const app = getApp();
Page({
data: {
name: '',
},
//姓名
setname(e) {
console.log(e)
this.setData({
name: e.detail.value
})
},
// submit(e) {
// let that = this;
// let url = '/index/second/applyTeam';
// let head = {
// 'XX-Token': wx.getStorageSync('token')
// }
// let params = {
// name: that.data.name,
// job: that.data.job,
// data: that.data.data,
// time: that.data.time,
// join_reason: that.data.join_reason
// }
// app.post(url, params, head).then((res) => {
// wx.showModal({
// title: '提示',
// content: '请仔细核对信息,确认无误!',
// confirmText: '确认提交',
// cancelText: '我再想想',
// success(res) {
// if (res.confirm) {
// wx.showToast({
// title: '提交成功,等待审核',
// mask: true,
// icon: 'none',
// // duration: 2000
// })
// setTimeout(function () {
// wx.navigateBack({
// delta: 0,
// })
// }, 1000)
// console.log('用户点击确定')
// } else if (res.cancel) {
// console.log('用户点击取消')
// }
// }
// })
// }).catch(() => {})
// },
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
// console.log(options)
this.setData({
id: options.id
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})
\ No newline at end of file
... ...
{
"usingComponents": {},
"navigationBarTitleText": "编辑资料"
}
\ No newline at end of file
... ...
<!--姓名 -->
<view class='apply_item'>
<view>姓名</view>
<view class='apply_item_input'>
<input placeholder='请输入姓名' placeholder-class='input_p' bindinput='setname' value='{{name}}'
disabled="{{page_type}}">444</input>
</view>
</view>
<view class="line">
<view></view>
</view>
<!--工作内容 -->
<view class='apply_item'>
<view>工作内容</view>
<view class='apply_item_input'>
<input placeholder='请输入工作内容' placeholder-class='input_p' bindinput='setmove_job' value='{{job}}'
disabled="{{page_type}}"></input>
</view>
</view>
<view class="line">
<view></view>
</view>
<form class="shengqin" bindsubmit="submit" report-submit='true'>
<button form-type="submit">提交</button>
</form>
\ No newline at end of file
... ...
/* @import "../../apply//apply.wxss"; */
/* page {
background-color: rgb(240, 240, 240);
} */
.apply_item {
color: #333;
font-size: 28rpx;
display: flex;
align-items: center;
justify-content: space-between;
/* margin: 0 32rpx; */
/* border-bottom: 1rpx solid #e6e6e6; */
padding: 30rpx 32rpx;
background-color: #ffffff;
}
.apply_item_input {
display: flex;
align-items: center;
flex-direction: row-reverse;
width: 70%;
color: #333;
font-size: 28rpx;
}
.apply_item_input input {
width: 100%;
}
.apply_item_input .iconfont {
color: #ccc;
}
.big_item .apply_item_input {
width: 60%;
}
.apply_item_input input {
text-align: right;
}
.input_p {
color: #ccc;
font-size: 28rpx;
}
.line view {
margin: 0 32rpx;
background-color: #e6e6e6;
height: 1px;
}
.line {
background-color: #ffffff;
}
/* */
/* .doc-listform {
margin-bottom: 100rpx;
padding: 40rpx 32rpx;
font-size: 28rpx;
background-color: #ffffff;
position: relative;
}
.listforms {
height: 15rpx;
background-color: #eeeeee;
}
textarea {
padding: 20rpx;
font-size: 28rpx;
margin-top: 20rpx;
width: auto;
border: 2rpx solid #eeeeee;
}
/* 提示 */
/*
.tishi_wrap {
padding: 24rpx 36rpx;
margin: 0 32rpx;
margin-top: 40rpx;
border-radius: 8px;
background-color: #ffffff;
}
.tishi {
display: flex;
align-items: center;
justify-content: space-between;
color: #FF4444;
font-size: 32rpx;
}
.tishi image {
width: 28rpx;
height: 28rpx;
margin-right: 8rpx;
}
.tishi_text {
margin-top: 16rpx;
font-size: 28rpx;
color: #7D7E80;
} */
/* 图片 */
/* .doc-Images {
width: 100%;
}
.chooseImage {
width: 200rpx;
height: 200rpx;
line-height: 200rpx;
text-align: center;
font-size: 80rpx;
padding: 0px !important;
margin: 20rpx 0rpx !important;
color: #ddd;
border: 1px solid #eeeeee;
display: inline-block !important;
border-radius: 0px
}
.chooseImage::after {
border: none;
}
.doc-ImageList {
height: 200rpx;
margin: 0 25rpx;
display: inline-block;
}
.doc-ImageList image {
width: 200rpx;
height: 200rpx;
position: relative;
z-index: 4px;
}
.doc-ImageList image .iconfont {
position: absolute;
z-index: 5px;
right: 0rpx;
top: 0rpx;
} */
.shengqin {
height: 122rpx;
background-color: #ffffff;
font-size: 32rpx;
position: fixed;
left: 0;
right: 0;
bottom: 0;
display: flex;
justify-content: center;
align-items: center;
}
.shengqin button {
width: 622rpx;
height: 88rpx;
color: #ffffff;
border-radius: 22px;
background: linear-gradient(130deg, #2ed26e 13%, #05983e 98%);
box-shadow: 0px 9px 19px 0px rgba(0, 116, 45, 0.42);
}
\ No newline at end of file
... ...
... ... @@ -44,7 +44,10 @@ Page({
// 积分兑换
getbindbuy(e) {
console.log(e)
let index = e.currentTarget.dataset.index;
wx.setStorageSync('goodsInfo', this.data.list)
var id =e.currentTarget.dataset.id;
wx.navigateTo({
url: '/pages/myfeedback/myfeedback_duihuan/myfeedback_duihuan?id='+id,
... ...
<!-- 轮播图 -->
<swiper indicator-dots="true" indicator-color='#8C9194' indicator-active-color='#ffffff' class="slide-image">
<view wx:for="{{list.banner}}">
<swiper-item>
<image src="/imgs/矩形备份.png" mode="widthFix" />
<image src="{{item}}" />
</swiper-item>
</view>
</swiper>
<!-- 工时商品名称 -->
<view class="goods_wrap">
... ... @@ -27,9 +28,9 @@
<view class="goods_line"></view>
</view>
<view class="goods_text">
<rich-text nodes="{{}}">富文本</rich-text>
<rich-text nodes="{{list.content}}"></rich-text>
</view>
<!-- 兑换 -->
<view class="shengqin">
<button bindtap="getbindbuy" data-id="{{id}}">积分兑换</button>
<button bindtap="getbindbuy" data-index='{{index}}' data-id="{{id}}">积分兑换</button>
</view>
\ No newline at end of file
... ...
... ... @@ -9,9 +9,8 @@ swiper {
swiper image {
width: 100%;
height: 750rpx;
}
/* */
.goods_wrap{
margin-top: 24rpx;
... ...
const app = getApp()
const app = getApp()
Page({
/**
* 页面的初始数据
*/
Page({
data: {
datalist:''
datalist: '',
goodsInfo: {},
count: 1,
remark:''
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.setData({
id: options.id
})
this.setData({
goodsInfo: wx.getStorageSync('goodsInfo')
})
},
onReady: function () {
},
onShow: function () {
let that = this;
that.getaddress();
let tempAdress = wx.getStorageSync('tempAdress');
if (tempAdress) {
this.setData({
datalist: tempAdress
})
} else {
that.getaddress()
}
},
... ... @@ -62,23 +68,39 @@ Page({
let head = {
'XX-Token': wx.getStorageSync('token')
}
app.post(url, {}, head).then((res) => {
console.log(res)
// that.setData({
// datalist: res
// })
app.post(url, {
good_id: that.data.goodsInfo.id,
num: that.data.count,
address_id: that.data.datalist.id,
remark:that.data.remark
}, head).then((res) => {
wx.showToast({
title: '兑换成功',
})
}).catch((err) => {
})
},
bindNum(e) {
let type = e.currentTarget.dataset.type;
// console.log(type)
// console.log(e)
type == 'minus' ?
this.setData({
count: this.data.count == 1 ? 1 : this.data.count-1
}) :
this.setData({
count: this.data.count + 1
})
},
// 备注
bindremark(e) {
// console.log(e.detail.value)
this.setData({
remark:e.detail.value
})
},
/**
* 生命周期函数--监听页面隐藏
... ... @@ -114,4 +136,4 @@ Page({
onShareAppMessage: function () {
}
})
\ No newline at end of file
})
\ No newline at end of file
... ...
<!-- 地址 -->
<view class="goods_address" wx:if="{{id==!''}}" bindtap="getchooseaddress">
<view class="goods_address" wx:if="{{datalist}}" bindtap="getchooseaddress">
<image class="goods_tubiao" src="/imgs/dizhigreen.png"></image>
<view>
<view>姓名:{{datalist.name}} {{datalist.tel}}</view>
... ... @@ -20,12 +20,12 @@
<view class="goods_shop">
<view>订单信息</view>
<view class="gift">
<image src="/imgs/shop.png"></image>
<image src="{{goodsInfo.pic}}"></image>
<view class="gift_message">
<view class="gift_introduce">原装正品Apple AirPods Pro 主动降噪无线蓝机…</view>
<view class="gift_time"> 已选:A款</view>
<view class="gift_introduce">{{goodsInfo.good_name}}</view>
<!-- <view class="gift_time"> 已选:A款</view> -->
<view class="gift_exchange_time">
<p>50</p>小时
<p>{{goodsInfo.work_time}}</p>小时
</view>
</view>
</view>
... ... @@ -34,24 +34,24 @@
<view class="shopcarts_car_tool">
<view class="num_edit" catchtap="bindNum" data-type="minus" data-index="{{index}}" data-id="{{item.id}}">-
</view>
<view class="goods_num">1</view>
<view class="num_edit" catchtap="bindNum" data-type="add" data-id="{{item.id}}" data-index="{{index}}">+
<view class="goods_num">{{count}}</view>
<view class="num_edit" catchtap="bindNum" data-type="add" data-index="{{index}}" data-id="{{item.id}}">+
</view>
</view>
</view>
<view>订单备注:</view>
<textarea></textarea>
<textarea bindinput="bindremark" value="{{remark}}"></textarea>
<view class="goods_allnum">
<view>共1件 <p>小计:
<p style="color:#079A40;">50</p>
<view>共{{count}}件 <p>小计:
<p style="color:#079A40;">{{count*goodsInfo.work_time}}</p>
</p>
</view>
</view>
</view>
<view class="goods_exchange">
<view>共1件 <p>合计:
<p style="color:#079A40;">50小时</p>
<view>共{{count}}件 <p>合计:
<p style="color:#079A40;">{{count*goodsInfo.work_time}}小时</p>
</p>
</view>
<button bindtap="getdatalist">提交兑换申请</button>
... ...
... ... @@ -117,6 +117,7 @@ page {
/* */
textarea {
padding:20rpx;
margin-top: 16rpx;
background-color: #f7f8fa;
width: auto;
... ...
... ... @@ -10,6 +10,7 @@ Page({
},
onLoad: function (options) {
},
... ... @@ -27,32 +28,27 @@ Page({
let head = {
'XX-Token': wx.getStorageSync('token')
}
let city = '北京'
app.post(url, city, head).then((res) => {
app.post(url, '', head).then((res) => {
console.log(res)
// if (res.code == !20000) {
// that.setData({
// list: res
// })
// }else{
// wx.showToast({
// title: msg,
// icon:'none'
// })
// }
this.setData({
list: res
})
})
},
// 详情页
getdetail(e) {
console.log(e)
var id = e.currentTarget.dataset.id
wx.navigateTo({
url: '/pages/Volunteer_detail/Volunteer_detail?id='+id,
})
},
/**
... ...
<view class="myteamBox" >
<view class="myteamBox" wx:for="{{list}}" bindtap="getdetail" data-id="{{item.id}}" >
<view class="teamtop">
<image src="/imgs/ac14.png"></image>
<view class="teamAddress">北京</view>
<view class="teamAddress">{{item.city}}</view>
<image src="/imgs/ac15.png"></image>
<view>50人</view>
<view>{{item.people_num}}人</view>
</view>
<view class="teambottom">
<image src="/imgs/active.png"></image>
<image src="{{item.pic}}"></image>
<view class="teamright">
<view class="teamName">河北省邯郸市丛台区白求恩第三志愿者小队</view>
<view class="teamName">{{item.name}}</view>
<view class="teamTime">
<view>团队时长:60小时</view>
<view>我的时长:60小时</view>
<view>团队时长:{{item.work_total_time}}小时</view>
<view>我的时长:{{item.my_time}}小时</view>
</view>
</view>
</view>
... ...
... ... @@ -135,6 +135,7 @@ page {
}
.myanswer {
margin-top: 24rpx;
padding: 24rpx 24rpx;
border-radius: 7px;
background-color: #ffffff;
... ... @@ -151,6 +152,7 @@ page {
}
.myanswer_right {
width: 434rpx;
display: flex;
flex-direction: column;
justify-content: space-between;
... ...
... ... @@ -249,6 +249,19 @@
"pathName": "pages/getStudycontent/answer/answer",
"query": "id=1",
"scene": null
},
{
"id": -1,
"name": "电子证件",
"pathName": "pages/mycertificate/mycertificate",
"query": "",
"scene": null
},
{
"id": -1,
"name": "编辑资料",
"pathName": "pages/mydetail/mydetail",
"scene": null
}
]
}
... ...