diff --git a/application/common.php b/application/common.php
index 0809b704f..75340ced7 100755
--- a/application/common.php
+++ b/application/common.php
@@ -1543,14 +1543,15 @@ function RequestGet($value)
* @blog http://gong.gg/
* @version 1.0.0
* @datetime 2018-01-03T19:21:38+0800
- * @param [string] $url [url地址]
- * @return [array] [返回数据]
+ * @param [string] $url [url地址]
+ * @param [int] $timeout [超时时间(默认10秒)]
+ * @return [array] [返回数据]
*/
-function CurlGet($url)
+function CurlGet($url, $timeout = 10)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
- curl_setopt($ch, CURLOPT_TIMEOUT, 500);
+ curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
diff --git a/application/service/UserService.php b/application/service/UserService.php
index c493e4285..21ec2780f 100755
--- a/application/service/UserService.php
+++ b/application/service/UserService.php
@@ -1959,9 +1959,8 @@ class UserService
* @desc description
* @param [array|int] $user_ids [用户id]
* @param [array] $user [指定用户信息]
- * @param [boolean] $is_privacy [是否隐私处理展示用户名]
*/
- public static function GetUserViewInfo($user_ids, $user = [], $is_privacy = false)
+ public static function GetUserViewInfo($user_ids, $user = [])
{
// 是否指定用户信息
if(empty($user) && !empty($user_ids))
diff --git a/application/tags.php b/application/tags.php
index b8d566c30..ee8683c8e 100755
--- a/application/tags.php
+++ b/application/tags.php
@@ -63,10 +63,12 @@ return array (
'plugins_service_users_center_left_menu_handle' =>
array (
0 => 'app\\plugins\\signin\\Hook',
+ 1 => 'app\\plugins\\distribution\\Hook',
),
'plugins_service_header_navigation_top_right_handle' =>
array (
0 => 'app\\plugins\\signin\\Hook',
+ 1 => 'app\\plugins\\distribution\\Hook',
),
'plugins_css' =>
array (
@@ -88,5 +90,45 @@ return array (
array (
0 => 'app\\plugins\\share\\Hook',
),
+ 'plugins_service_order_status_change_history_success_handle' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
+ 'plugins_service_order_aftersale_audit_handle_end' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
+ 'plugins_service_site_extraction_address_list' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
+ 'plugins_service_buy_order_insert_end' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
+ 'plugins_service_goods_spec_extends_handle' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
+ 'plugins_view_admin_user_save' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
+ 'plugins_service_user_save_handle' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
+ 'plugins_service_goods_handle_end' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
+ 'plugins_service_goods_spec_base' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
+ 'plugins_view_goods_detail_panel_price_top' =>
+ array (
+ 0 => 'app\\plugins\\distribution\\Hook',
+ ),
);
?>
\ No newline at end of file
diff --git a/sourcecode/alipay/default/images/plugins/signin/coming-success-icon.png b/sourcecode/alipay/default/images/plugins/signin/coming-success-icon.png
new file mode 100644
index 000000000..d7808461a
Binary files /dev/null and b/sourcecode/alipay/default/images/plugins/signin/coming-success-icon.png differ
diff --git a/sourcecode/alipay/default/images/plugins/signin/user-qrcode-icon.png b/sourcecode/alipay/default/images/plugins/signin/user-qrcode-icon.png
new file mode 100644
index 000000000..64ade4f4c
Binary files /dev/null and b/sourcecode/alipay/default/images/plugins/signin/user-qrcode-icon.png differ
diff --git a/sourcecode/alipay/default/images/plugins/signin/user-signin-icon.png b/sourcecode/alipay/default/images/plugins/signin/user-signin-icon.png
new file mode 100644
index 000000000..cb1d2e9ed
Binary files /dev/null and b/sourcecode/alipay/default/images/plugins/signin/user-signin-icon.png differ
diff --git a/sourcecode/baidu/default/images/plugins/signin/coming-success-icon.png b/sourcecode/baidu/default/images/plugins/signin/coming-success-icon.png
new file mode 100644
index 000000000..d7808461a
Binary files /dev/null and b/sourcecode/baidu/default/images/plugins/signin/coming-success-icon.png differ
diff --git a/sourcecode/baidu/default/images/plugins/signin/user-qrcode-icon.png b/sourcecode/baidu/default/images/plugins/signin/user-qrcode-icon.png
new file mode 100644
index 000000000..64ade4f4c
Binary files /dev/null and b/sourcecode/baidu/default/images/plugins/signin/user-qrcode-icon.png differ
diff --git a/sourcecode/baidu/default/images/plugins/signin/user-signin-icon.png b/sourcecode/baidu/default/images/plugins/signin/user-signin-icon.png
new file mode 100644
index 000000000..cb1d2e9ed
Binary files /dev/null and b/sourcecode/baidu/default/images/plugins/signin/user-signin-icon.png differ
diff --git a/sourcecode/qq/default/images/plugins/signin/coming-success-icon.png b/sourcecode/qq/default/images/plugins/signin/coming-success-icon.png
new file mode 100644
index 000000000..d7808461a
Binary files /dev/null and b/sourcecode/qq/default/images/plugins/signin/coming-success-icon.png differ
diff --git a/sourcecode/qq/default/images/plugins/signin/user-qrcode-icon.png b/sourcecode/qq/default/images/plugins/signin/user-qrcode-icon.png
new file mode 100644
index 000000000..64ade4f4c
Binary files /dev/null and b/sourcecode/qq/default/images/plugins/signin/user-qrcode-icon.png differ
diff --git a/sourcecode/qq/default/images/plugins/signin/user-signin-icon.png b/sourcecode/qq/default/images/plugins/signin/user-signin-icon.png
new file mode 100644
index 000000000..cb1d2e9ed
Binary files /dev/null and b/sourcecode/qq/default/images/plugins/signin/user-signin-icon.png differ
diff --git a/sourcecode/toutiao/default/app.js b/sourcecode/toutiao/default/app.js
index d903fb737..57423de56 100755
--- a/sourcecode/toutiao/default/app.js
+++ b/sourcecode/toutiao/default/app.js
@@ -74,7 +74,7 @@ App({
// 请求地址
request_url: "{{request_url}}",
// request_url: 'http://shopxo.com/',
- // request_url: 'https://dev.shopxo.net/',
+ request_url: 'https://dev.shopxo.net/',
// 基础信息
application_title: "{{application_title}}",
diff --git a/sourcecode/toutiao/default/app.json b/sourcecode/toutiao/default/app.json
index 794a229df..632255b7d 100755
--- a/sourcecode/toutiao/default/app.json
+++ b/sourcecode/toutiao/default/app.json
@@ -65,7 +65,14 @@
"pages/plugins/invoice/invoice/invoice",
"pages/plugins/invoice/invoice-detail/invoice-detail",
"pages/plugins/invoice/invoice-saveinfo/invoice-saveinfo",
- "pages/plugins/invoice/order/order"
+ "pages/plugins/invoice/order/order",
+ "pages/plugins/signin/user/user",
+ "pages/plugins/signin/index-detail/index-detail",
+ "pages/plugins/signin/user-signin/user-signin",
+ "pages/plugins/signin/user-qrcode/user-qrcode",
+ "pages/plugins/signin/user-qrcode-detail/user-qrcode-detail",
+ "pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo",
+ "pages/plugins/signin/user-coming-list/user-coming-list"
],
"window": {
"navigationBarTitleText": "{{application_title}}",
diff --git a/sourcecode/toutiao/default/images/plugins/signin/coming-success-icon.png b/sourcecode/toutiao/default/images/plugins/signin/coming-success-icon.png
new file mode 100644
index 000000000..d7808461a
Binary files /dev/null and b/sourcecode/toutiao/default/images/plugins/signin/coming-success-icon.png differ
diff --git a/sourcecode/toutiao/default/images/plugins/signin/user-qrcode-icon.png b/sourcecode/toutiao/default/images/plugins/signin/user-qrcode-icon.png
new file mode 100644
index 000000000..64ade4f4c
Binary files /dev/null and b/sourcecode/toutiao/default/images/plugins/signin/user-qrcode-icon.png differ
diff --git a/sourcecode/toutiao/default/images/plugins/signin/user-signin-icon.png b/sourcecode/toutiao/default/images/plugins/signin/user-signin-icon.png
new file mode 100644
index 000000000..cb1d2e9ed
Binary files /dev/null and b/sourcecode/toutiao/default/images/plugins/signin/user-signin-icon.png differ
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.js b/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.js
new file mode 100644
index 000000000..c92fd0fce
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.js
@@ -0,0 +1,222 @@
+const app = getApp();
+Page({
+ data: {
+ data_bottom_line_status: false,
+ data_list_loding_status: 1,
+ data_list_loding_msg: '',
+ params: null,
+ user: null,
+ data_base: null,
+ data: null,
+ team_signin_data: null,
+ user_signin_data: null,
+ is_already_coming: 0,
+ is_success_tips: 0,
+ coming_integral: 0,
+ },
+
+ onLoad(params) {
+ //params['id'] = 1;
+ this.setData({
+ params: params,
+ user: app.get_user_cache_info(),
+ });
+ },
+
+ onShow() {
+ this.get_data();
+ },
+
+ // 获取数据
+ get_data() {
+ var self = this;
+ tt.request({
+ url: app.get_request_url("detail", "index", "signin"),
+ method: "POST",
+ data: {id: this.data.params.id || 0},
+ dataType: "json",
+ success: res => {
+ tt.stopPullDownRefresh();
+ if (res.data.code == 0) {
+ var data = res.data.data;
+ self.setData({
+ data_base: data.base || null,
+ data: data.data || null,
+ team_signin_data: data.team_signin_data || null,
+ user_signin_data: data.user_signin_data || null,
+ is_already_coming: ((data.user_signin_data || null) != null && (data.user_signin_data.integral || 0) > 0) ? 1 : 0,
+ data_list_loding_msg: '',
+ data_list_loding_status: 0,
+ data_bottom_line_status: true,
+ });
+ } else {
+ self.setData({
+ data_bottom_line_status: false,
+ data_list_loding_status: 2,
+ data_list_loding_msg: res.data.msg,
+ });
+ }
+ },
+ fail: () => {
+ tt.stopPullDownRefresh();
+ self.setData({
+ data_bottom_line_status: false,
+ data_list_loding_status: 2,
+ data_list_loding_msg: '服务器请求出错',
+ });
+ app.showToast("服务器请求出错");
+ }
+ });
+ },
+
+ // 下拉刷新
+ onPullDownRefresh() {
+ this.get_data();
+ },
+
+ // 初始化
+ init() {
+ var user = app.get_user_info(this, "init"),
+ self = this;
+ if (user != false) {
+ // 用户未绑定用户则转到登录页面
+ if (app.user_is_need_login(user)) {
+ tt.showModal({
+ title: '温馨提示',
+ content: '绑定手机号码',
+ confirmText: '确认',
+ cancelText: '暂不',
+ success: (result) => {
+ tt.stopPullDownRefresh();
+ if (result.confirm) {
+ tt.navigateTo({
+ url: "/pages/login/login?event_callback=init"
+ });
+ }
+ },
+ });
+ } else {
+ return true;
+ }
+ }
+ return false;
+ },
+
+ // 签到
+ coming_event(e) {
+ if(this.data.is_already_coming != 1 && this.init())
+ {
+ var self = this;
+ tt.showLoading({ title: "处理中..." });
+ tt.request({
+ url: app.get_request_url("coming", "index", "signin"),
+ method: "POST",
+ data: {id: this.data.data.id},
+ dataType: "json",
+ success: res => {
+ tt.hideLoading();
+ if (res.data.code == 0) {
+ this.setData({
+ is_already_coming: 1,
+ is_success_tips: 1,
+ coming_integral: res.data.data,
+ });
+ this.get_data();
+ } else {
+ if (app.is_login_check(res.data, self, 'team_request')) {
+ app.showToast(res.data.msg);
+ }
+ }
+ },
+ fail: () => {
+ tt.hideLoading();
+ app.showToast("服务器请求出错");
+ }
+ });
+ }
+ },
+
+ // 签到成功提示关闭
+ coming_success_close_event(e) {
+ this.setData({
+ is_success_tips: 0,
+ });
+ },
+
+ // 组队事件
+ team_event(e) {
+ if(this.init())
+ {
+ var self = this;
+ tt.showLoading({ title: "处理中..." });
+ tt.request({
+ url: app.get_request_url("team", "userqrcode", "signin"),
+ method: "POST",
+ data: {},
+ dataType: "json",
+ success: res => {
+ tt.hideLoading();
+ if (res.data.code == 0) {
+ switch(res.data.data.status)
+ {
+ // 组队成功
+ case 0 :
+ // 设置签到码id
+ var temp_params = this.data.params;
+ temp_params['id'] = res.data.data.qrcode_id;
+ this.setData({params: temp_params});
+ // 重新拉取数据
+ this.get_data();
+ break;
+
+ // 需要填写联系人信息
+ case 1 :
+ tt.navigateTo({
+ url: '/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo?is_team=1',
+ })
+ break;
+ }
+ } else {
+ if (app.is_login_check(res.data, self, 'team_request')) {
+ app.showToast(res.data.msg);
+ }
+ }
+ },
+ fail: () => {
+ tt.hideLoading();
+ app.showToast("服务器请求出错");
+ }
+ });
+ }
+ },
+
+ // 图片事件
+ right_images_event(e) {
+ if((this.data.data.right_images_url || null) != null)
+ {
+ tt.navigateTo({
+ url: this.data.data.right_images_url,
+ });
+ }
+ },
+
+ // 自定义分享
+ onShareAppMessage() {
+ var user_id = app.get_user_cache_info('id', 0) || 0;
+ return {
+ title: this.data.data.seo_title || '签到 - '+app.data.application_title,
+ desc: this.data.data.seo_desc || '签到获得积分奖励 - '+app.data.application_describe,
+ path: '/pages/plugins/signin/index-detail/index-detail?id='+this.data.data.id+'&referrer=' + user_id
+ };
+ },
+
+ // 分享朋友圈
+ onShareTimeline() {
+ var user_id = app.get_user_cache_info('id', 0) || 0;
+ return {
+ title: this.data.data.seo_title || '签到 - '+app.data.application_title,
+ query: 'id='+this.data.data.id+'&referrer=' + user_id,
+ imageUrl: this.data.data.right_images || ''
+ };
+ },
+});
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.json b/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.json
new file mode 100644
index 000000000..ac5d74d43
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.json
@@ -0,0 +1,8 @@
+{
+ "enablePullDownRefresh": true,
+ "navigationBarBackgroundColor": "#f6b015",
+ "backgroundColorTop": "#f6b015",
+ "backgroundColorBottom": "#f5f5f5",
+ "backgroundTextStyle": "light",
+ "navigationBarTitleText": "签到"
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.ttml b/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.ttml
new file mode 100644
index 000000000..f94f01376
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.ttml
@@ -0,0 +1,85 @@
+
+
+
+
+ 签到
+
+ 登录签到获得积分奖励
+
+
+
+
+ 今日已签到,获得{{user_signin_data.integral}}积分,共{{user_signin_data.total}}次
+ 请明日继续签到,更多积分奖励
+
+
+ 立即签到获得积分奖励
+
+
+
+
+
+ 今日{{team_signin_data.day}}人签到,共{{team_signin_data.total}}人
+ 详情 >>
+
+ 分享获得更多奖励
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{item}}
+
+
+
+
+
+
+
+ 推荐商品
+
+
+
+
+
+
+ {{item.title}}
+
+ {{currency_symbol}}{{item.min_price}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 获得 {{coming_integral}} 积分
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.ttss b/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.ttss
new file mode 100644
index 000000000..8ec41d5d9
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/index-detail/index-detail.ttss
@@ -0,0 +1,132 @@
+/**
+ * 签到
+ */
+.coming-container {
+ background-color: #f6b015;
+ position: relative;
+ padding: 100rpx 0 120rpx 0;
+}
+.coming-submit {
+ width: 200rpx;
+ height: 200rpx;
+ line-height: 200rpx;
+ border-radius: 50%;
+ background-color: #F37B1D;
+ color: #f8fb0b;
+ border: 12rpx solid #f9f420;
+ font-size: 62rpx;
+ margin: 0 auto;
+}
+.already-coming {
+ border: 12rpx solid #bebebe;
+ background-color: #ccc;
+ color: #9f9f9f;
+}
+.coming-title {
+ color: #fff;
+ margin-top: 20rpx;
+}
+.coming-tips {
+ color: #ffe7b2;
+}
+.signin-user-menu-submit {
+ border: 1px solid #fff900;
+ color: #fffb62;
+ position: absolute;
+ top: 20rpx;
+ right: 20rpx;
+ padding: 6rpx 20rpx;
+ border-radius: 3rpx;
+}
+.detail-submit {
+ margin-left: 20rpx;
+ color: #0e90d2;
+ display: inline;
+}
+.submit-container {
+ position: absolute;
+ bottom: 20rpx;
+ right: 20rpx;
+}
+.submit-container button:not(:first-child) {
+ margin-left: 30rpx;
+}
+.submit-container button.team-submit {
+ color: #5eb95e;
+ background-color: #E4F3E4;
+ border-color: #d2e8d2;
+}
+.submit-container button.share-submit {
+ color: #F37B1D;
+ background-color: #ffe5be;
+ border-color: #f8d093;
+}
+
+/**
+ * 签到成功提示
+ */
+ .coming-tips-container {
+ position: fixed;
+ left: 0;
+ top: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 1050;
+ background: rgb(0 0 0 / 0.6);
+ padding-top: 30%;
+}
+.coming-content {
+ max-width: 300px;
+ height: 305px;
+ margin: 0 auto;
+ position: relative;
+}
+.coming-content icon {
+ position: absolute;
+ top: 5px;
+ right: 5px;
+}
+.coming-tips-container image {
+ max-width: 100%;
+ margin-top:60rpx;
+}
+.coming-tips-content .coming-tips-text {
+ background: #fff;
+ color: #f00;
+ padding: 10rpx 20rpx;
+ border-radius: 1000rpx;
+}
+
+/**
+ * 商品列表
+ */
+ .scroll-box {
+ height: calc(100vh - 80rpx);
+}
+.data-list {
+ overflow: hidden;
+}
+.data-list .items {
+ width: calc(50% - 5rpx);
+ margin-bottom: 10rpx;
+ padding-bottom: 20rpx;
+}
+.data-list .items:nth-child(2n) {
+ float: right;
+}
+.data-list .items:nth-child(2n+1) {
+ float: left;
+}
+.data-list .items image {
+ width: 100%;
+ height: 200px !important;
+}
+.data-list .items .base {
+ text-align: left;
+ font-size: 32rpx;
+ padding: 0 15rpx;
+}
+.data-list .items .base,
+.data-list .items .base .price {
+ margin-top: 15rpx;
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.js b/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.js
new file mode 100644
index 000000000..63c01042d
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.js
@@ -0,0 +1,148 @@
+const app = getApp();
+Page({
+ data: {
+ data_list_loding_status: 1,
+ data_bottom_line_status: false,
+ params: null,
+ data_list: [],
+ data_page_total: 0,
+ data_page: 1,
+ },
+
+ onLoad(params) {
+ this.setData({
+ params: params,
+ });
+ this.init();
+ },
+
+ onShow() { },
+
+ init() {
+ var user = app.get_user_info(this, 'init');
+ if (user != false) {
+ // 用户未绑定用户则转到登录页面
+ if (app.user_is_need_login(user)) {
+ tt.redirectTo({
+ url: "/pages/login/login?event_callback=init"
+ });
+ return false;
+ } else {
+ // 获取数据
+ this.get_data_list();
+ }
+ } else {
+ this.setData({
+ data_list_loding_status: 0,
+ data_bottom_line_status: false,
+ });
+ }
+ },
+
+ // 获取数据
+ get_data_list(is_mandatory) {
+ // 分页是否还有数据
+ if ((is_mandatory || 0) == 0) {
+ if (this.data.data_bottom_line_status == true) {
+ return false;
+ }
+ }
+
+ // 加载loding
+ tt.showLoading({ title: "加载中..." });
+ this.setData({
+ data_list_loding_status: 1
+ });
+
+ // 获取数据
+ tt.request({
+ url: app.get_request_url("usercominglist", "userqrcode", "signin"),
+ method: "POST",
+ data: {
+ id: this.data.params.id || 0,
+ page: this.data.data_page,
+ },
+ dataType: "json",
+ success: res => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+ if (res.data.code == 0) {
+ if (res.data.data.data.length > 0) {
+ if (this.data.data_page <= 1) {
+ var temp_data_list = res.data.data.data;
+ } else {
+ var temp_data_list = this.data.data_list;
+ var temp_data = res.data.data.data;
+ for (var i in temp_data) {
+ temp_data_list.push(temp_data[i]);
+ }
+ }
+ this.setData({
+ data_list: temp_data_list,
+ data_total: res.data.data.total,
+ data_page_total: res.data.data.page_total,
+ data_list_loding_status: 3,
+ data_page: this.data.data_page + 1,
+ });
+
+ // 是否还有数据
+ if (this.data.data_page > 1 && this.data.data_page > this.data.data_page_total) {
+ this.setData({ data_bottom_line_status: true });
+ } else {
+ this.setData({ data_bottom_line_status: false });
+ }
+ } else {
+ this.setData({
+ data_list_loding_status: 0,
+ data_list: [],
+ data_bottom_line_status: false,
+ });
+ }
+ } else {
+ this.setData({
+ data_list_loding_status: 0,
+ });
+ if (app.is_login_check(res.data, this, 'get_data_list')) {
+ app.showToast(res.data.msg);
+ }
+ }
+ },
+ fail: () => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+
+ this.setData({
+ data_list_loding_status: 2,
+ });
+ app.showToast("服务器请求出错");
+ }
+ });
+ },
+
+ // 下拉刷新
+ onPullDownRefresh() {
+ this.setData({
+ data_page: 1
+ });
+ this.get_data_list(1);
+ },
+
+ // 滚动加载
+ scroll_lower(e) {
+ this.get_data_list();
+ },
+
+ // 头像查看
+ avatar_event(e) {
+ var value = e.currentTarget.dataset.value || null;
+ if (value != null)
+ {
+ tt.previewImage({
+ current: value,
+ urls: [value]
+ });
+ } else {
+ app.showToast('头像地址有误');
+ }
+ },
+});
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.json b/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.json
new file mode 100644
index 000000000..ba0db4f0a
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.json
@@ -0,0 +1,8 @@
+{
+ "enablePullDownRefresh": true,
+ "navigationBarBackgroundColor": "#f6b015",
+ "backgroundColorTop": "#f6b015",
+ "backgroundColorBottom": "#f5f5f5",
+ "backgroundTextStyle": "light",
+ "navigationBarTitleText": "用户签到"
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.ttml b/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.ttml
new file mode 100644
index 000000000..def386361
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.ttml
@@ -0,0 +1,29 @@
+
+
+
+
+
+ {{item.user.user_name_view || ''}}
+
+
+
+ 奖励积分
+ {{item.integral}}
+
+
+ 签到时间
+ {{item.add_time}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.ttss b/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.ttss
new file mode 100644
index 000000000..379e60cf5
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-coming-list/user-coming-list.ttss
@@ -0,0 +1,26 @@
+.scroll-box {
+ height: 100vh;
+}
+.data-list .item .base {
+ padding: 15rpx 10rpx;
+}
+.data-list .item .base .avatar {
+ width: 60rpx;
+ height: 60rpx;
+ border-radius: 50%;
+}
+.data-list .item .base .nickname {
+ margin-top: 10rpx;
+}
+.data-list .item .content {
+ padding: 20rpx 10rpx;
+}
+.data-list .item .content .single-text {
+ line-height: 50rpx;
+}
+.data-list .item .content .single-text .title {
+ margin-right: 30rpx;
+}
+.data-list .item .content .single-text .value {
+ font-weight: 500;
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.js b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.js
new file mode 100644
index 000000000..2064d4194
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.js
@@ -0,0 +1,89 @@
+const app = getApp();
+Page({
+ data: {
+ params: null,
+ data_list_loding_status: 1,
+ data_list_loding_msg: '',
+ data_bottom_line_status: false,
+ detail: null,
+ detail_list: [],
+ express_data: [],
+ },
+
+ onLoad(params) {
+ //params['id'] = 1;
+ this.setData({ params: params });
+ this.init();
+ },
+
+ onShow() {},
+
+ init() {
+ var self = this;
+ tt.showLoading({ title: "加载中..." });
+ this.setData({
+ data_list_loding_status: 1
+ });
+
+ tt.request({
+ url: app.get_request_url("detail", "userqrcode", "signin"),
+ method: "POST",
+ data: {
+ id: this.data.params.id
+ },
+ dataType: "json",
+ success: res => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+ if (res.data.code == 0) {
+ var data = res.data.data;
+ self.setData({
+ detail: data.data,
+ detail_list: [
+ { name: "是否启用", value: data.data.is_enable_name || '' },
+ { name: "邀请人奖励积分", value: data.data.reward_master || '' },
+ { name: "受邀人奖励积分", value: data.data.reward_invitee || '' },
+ { name: "联系人姓名", value: data.data.name || '' },
+ { name: "联系人电话", value: data.data.tel || '' },
+ { name: "联系人地址", value: data.data.address || '' },
+ { name: "创建时间", value: data.data.add_time || '' },
+ { name: "更新时间", value: data.data.upd_time || '' },
+ ],
+ express_data: [
+ { name: "快递名称", value: data.data.express_name || '' },
+ { name: "快递单号", value: data.data.express_number || '' },
+ ],
+ data_list_loding_status: 3,
+ data_bottom_line_status: true,
+ data_list_loding_msg: '',
+ });
+ } else {
+ self.setData({
+ data_list_loding_status: 2,
+ data_bottom_line_status: false,
+ data_list_loding_msg: res.data.msg,
+ });
+ if (app.is_login_check(res.data, self, 'init')) {
+ app.showToast(res.data.msg);
+ }
+ }
+ },
+ fail: () => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+ self.setData({
+ data_list_loding_status: 2,
+ data_bottom_line_status: false,
+ data_list_loding_msg: '服务器请求出错',
+ });
+
+ app.showToast("服务器请求出错");
+ }
+ });
+ },
+
+ // 下拉刷新
+ onPullDownRefresh() {
+ this.init();
+ },
+});
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.json b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.json
new file mode 100644
index 000000000..167a5032d
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.json
@@ -0,0 +1,8 @@
+{
+ "enablePullDownRefresh": true,
+ "navigationBarBackgroundColor": "#f6b015",
+ "backgroundColorTop": "#f6b015",
+ "backgroundColorBottom": "#f5f5f5",
+ "backgroundTextStyle": "light",
+ "navigationBarTitleText": "签到码详情"
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.ttml b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.ttml
new file mode 100644
index 000000000..c71fafb64
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.ttml
@@ -0,0 +1,46 @@
+
+
+
+
+ 基础信息
+
+ {{item.name}}
+ {{item.value}}
+
+
+
+
+
+
+
+ 连续签到翻倍奖励配置
+
+ 连续{{item.number}}天、翻{{item.value}}倍
+
+
+
+
+
+
+
+ 指定时段额外奖励
+
+ 时段 {{detail.specified_time_reward.time_start}} ~ {{detail.specified_time_reward.time_end}}、额外奖励 {{detail.specified_time_reward.value}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.ttss b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.ttss
new file mode 100644
index 000000000..bf22478b7
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-detail/user-qrcode-detail.ttss
@@ -0,0 +1,27 @@
+.panel-item .panel-title {
+ background: #fff;
+ font-weight: bold;
+ padding: 15rpx;
+ border-bottom: 2px solid #eee;
+ font-size: 34rpx;
+}
+.panel-item .panel-content .item {
+ padding: 20rpx 0;
+}
+.panel-item .panel-content .item:last-child {
+ border: 0;
+}
+.panel-item .panel-content .item .title {
+ width: 25%;
+ padding-left: 20rpx;
+}
+.panel-item .panel-content .item .content {
+ width: calc(75% - 50rpx);
+ padding-left: 20rpx;
+ min-height: 46rpx;
+ word-wrap: break-word;
+ word-break: normal;
+}
+.panel-item .panel-content .item view {
+ line-height: 46rpx;
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.js b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.js
new file mode 100644
index 000000000..7f39a8878
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.js
@@ -0,0 +1,130 @@
+const app = getApp();
+Page({
+ data: {
+ params: null,
+ form_submit_loading: false,
+ data_list_loding_status: 1,
+ data_list_loding_msg: '',
+ data_base: null,
+ data: null,
+ },
+
+ onLoad(params) {
+ this.setData({ params: params });
+ this.init();
+ },
+
+ onShow() {},
+
+ init() {
+ var self = this;
+ tt.showLoading({ title: "加载中..." });
+ this.setData({
+ data_list_loding_status: 1
+ });
+
+ tt.request({
+ url: app.get_request_url("saveinfo", "userqrcode", "signin"),
+ method: "POST",
+ data: this.data.params,
+ dataType: "json",
+ success: res => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+ if (res.data.code == 0) {
+ var data = res.data.data;
+ self.setData({
+ data_base: data.base || null,
+ data: data.data || null,
+ data_list_loding_status: 0,
+ });
+ } else {
+ self.setData({
+ data_list_loding_status: 2,
+ data_list_loding_msg: res.data.msg,
+ });
+ if (app.is_login_check(res.data, self, 'init')) {
+ app.showToast(res.data.msg);
+ }
+ }
+ },
+ fail: () => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+ self.setData({
+ data_list_loding_status: 2,
+ data_list_loding_msg: '服务器请求出错',
+ });
+ app.showToast("服务器请求出错");
+ }
+ });
+ },
+
+ // 下拉刷新
+ onPullDownRefresh() {
+ this.init();
+ },
+
+ // 表单提交
+ formSubmit(e)
+ {
+ var data = e.detail.value;
+ if((this.data.data || null) != null)
+ {
+ data['id'] = this.data.data.id;
+ }
+ // 数据验证
+ var validation = [
+ {fields: 'name', msg: '请填写联系人姓名格式 2~30 个字符之间'},
+ {fields: 'tel', msg: '请填写联系人电话 6~15 个字符'},
+ {fields: 'address', msg: '请填写联系人地址、最多230个字符'}
+ ];
+ if(app.fields_check(data, validation))
+ {
+ tt.showLoading({title: '提交中...'});
+ this.setData({form_submit_loading: true});
+
+ // 网络请求
+ var self = this;
+ tt.request({
+ url: app.get_request_url("save", "userqrcode", "signin"),
+ method: 'POST',
+ data: data,
+ dataType: 'json',
+ header: { 'content-type': 'application/x-www-form-urlencoded' },
+ success: (res) => {
+ tt.hideLoading();
+
+ if(res.data.code == 0)
+ {
+ app.showToast(res.data.msg, "success");
+ setTimeout(function()
+ {
+ // 是否签到也组队
+ if((self.data.params || null) != null && (self.data.params.is_team || 0) == 1)
+ {
+ tt.redirectTo({
+ url: "/pages/plugins/signin/index-detail/index-detail?id="+res.data.data
+ });
+ } else {
+ tt.navigateBack();
+ }
+ }, 2000);
+ } else {
+ this.setData({form_submit_loading: false});
+ if (app.is_login_check(res.data)) {
+ app.showToast(res.data.msg);
+ } else {
+ app.showToast('提交失败,请重试!');
+ }
+ }
+ },
+ fail: () => {
+ tt.hideLoading();
+ this.setData({form_submit_loading: false});
+ app.showToast('服务器请求出错');
+ }
+ });
+ }
+ },
+});
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.json b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.json
new file mode 100644
index 000000000..9dc285acf
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.json
@@ -0,0 +1,8 @@
+{
+ "enablePullDownRefresh": true,
+ "navigationBarBackgroundColor": "#f6b015",
+ "backgroundColorTop": "#f6b015",
+ "backgroundColorBottom": "#f5f5f5",
+ "backgroundTextStyle": "light",
+ "navigationBarTitleText": "签到码新增/编辑"
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.ttml b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.ttml
new file mode 100644
index 000000000..a09eef11a
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.ttml
@@ -0,0 +1,31 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.ttss b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.ttss
new file mode 100644
index 000000000..85184ce7f
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.ttss
@@ -0,0 +1,10 @@
+.content-top {
+ padding: 30rpx 10rpx;
+}
+.content-top text {
+ font-size: 38rpx;
+ font-weight: bold;
+}
+.submit-bottom {
+ background-color: #f6b015 !important;
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.js b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.js
new file mode 100644
index 000000000..170fb086f
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.js
@@ -0,0 +1,171 @@
+const app = getApp();
+Page({
+ data: {
+ data_list_loding_status: 1,
+ data_bottom_line_status: false,
+ params: null,
+ data_base: null,
+ data_list: [],
+ data_page_total: 0,
+ data_page: 1,
+ },
+
+ onLoad(params) {
+ this.setData({
+ params: params,
+ });
+ },
+
+ onShow() {
+ this.init();
+ },
+
+ init() {
+ var user = app.get_user_info(this, 'init');
+ if (user != false) {
+ // 用户未绑定用户则转到登录页面
+ if (app.user_is_need_login(user)) {
+ tt.redirectTo({
+ url: "/pages/login/login?event_callback=init"
+ });
+ return false;
+ } else {
+ // 获取数据
+ this.get_data_list();
+ }
+ } else {
+ this.setData({
+ data_list_loding_status: 0,
+ data_bottom_line_status: false,
+ });
+ }
+ },
+
+ // 获取数据
+ get_data_list(is_mandatory) {
+ // 分页是否还有数据
+ if ((is_mandatory || 0) == 0) {
+ if (this.data.data_bottom_line_status == true) {
+ return false;
+ }
+ }
+
+ // 加载loding
+ tt.showLoading({ title: "加载中..." });
+ this.setData({
+ data_list_loding_status: 1
+ });
+
+ // 请求数据
+ var data = {
+ page: this.data.data_page
+ };
+
+ // 获取数据
+ tt.request({
+ url: app.get_request_url("index", "userqrcode", "signin"),
+ method: "POST",
+ data: data,
+ dataType: "json",
+ success: res => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+ if (res.data.code == 0) {
+ if (res.data.data.data.length > 0) {
+ if (this.data.data_page <= 1) {
+ var temp_data_list = res.data.data.data;
+ } else {
+ var temp_data_list = this.data.data_list;
+ var temp_data = res.data.data.data;
+ for (var i in temp_data) {
+ temp_data_list.push(temp_data[i]);
+ }
+ }
+ this.setData({
+ data_base: res.data.data.base || null,
+ data_list: temp_data_list,
+ data_total: res.data.data.total,
+ data_page_total: res.data.data.page_total,
+ data_list_loding_status: 3,
+ data_page: this.data.data_page + 1,
+ });
+
+ // 是否还有数据
+ if (this.data.data_page > 1 && this.data.data_page > this.data.data_page_total) {
+ this.setData({ data_bottom_line_status: true });
+ } else {
+ this.setData({ data_bottom_line_status: false });
+ }
+ } else {
+ this.setData({
+ data_base: res.data.data.base || null,
+ data_list_loding_status: 0,
+ data_list: [],
+ data_bottom_line_status: false,
+ });
+ }
+ } else {
+ this.setData({
+ data_list_loding_status: 0,
+ });
+ if (app.is_login_check(res.data, this, 'get_data_list')) {
+ app.showToast(res.data.msg);
+ }
+ }
+ },
+ fail: () => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+
+ this.setData({
+ data_list_loding_status: 2,
+ });
+ app.showToast("服务器请求出错");
+ }
+ });
+ },
+
+ // 下拉刷新
+ onPullDownRefresh() {
+ this.setData({
+ data_page: 1
+ });
+ this.get_data_list(1);
+ },
+
+ // 滚动加载
+ scroll_lower(e) {
+ this.get_data_list();
+ },
+
+ // 查看详情
+ show_event(e) {
+ var value = e.currentTarget.dataset.value;
+ tt.navigateTo({
+ url: '/pages/plugins/signin/index-detail/index-detail?id='+value,
+ });
+ },
+
+ // 签到用户
+ coming_event(e) {
+ var value = e.currentTarget.dataset.value;
+ tt.navigateTo({
+ url: '/pages/plugins/signin/user-coming-list/user-coming-list?id='+value,
+ });
+ },
+
+ // 编辑
+ edit_event(e) {
+ var value = e.currentTarget.dataset.value;
+ tt.navigateTo({
+ url: '/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo?id='+value,
+ });
+ },
+
+ // 组队签到
+ team_event(e) {
+ tt.navigateTo({
+ url: '/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo',
+ });
+ },
+});
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.json b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.json
new file mode 100644
index 000000000..c380a04b3
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.json
@@ -0,0 +1,8 @@
+{
+ "enablePullDownRefresh": true,
+ "navigationBarBackgroundColor": "#f6b015",
+ "backgroundColorTop": "#f6b015",
+ "backgroundColorBottom": "#f5f5f5",
+ "backgroundTextStyle": "light",
+ "navigationBarTitleText": "签到码管理"
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.ttml b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.ttml
new file mode 100644
index 000000000..a2c13c8d3
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.ttml
@@ -0,0 +1,46 @@
+
+
+
+
+
+ {{item.add_time}}
+
+
+
+
+ 是否启用
+ {{item.is_enable_name}}
+
+
+ 邀请人奖励积分
+ {{item.reward_master}}
+
+
+ 受邀人奖励积分
+ {{item.reward_invitee}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 组队分享让更多人参与签到、获得更多积分奖励
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.ttss b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.ttss
new file mode 100644
index 000000000..c3efb92eb
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-qrcode/user-qrcode.ttss
@@ -0,0 +1,38 @@
+/*
+ * 列表
+ */
+.data-list .item .base,
+.data-list .item .content {
+ padding: 20rpx 10rpx;
+}
+.data-list .item .content .single-text {
+ line-height: 50rpx;
+}
+.data-list .item .content .single-text .title {
+ margin-right: 30rpx;
+}
+.data-list .item .content .single-text .value {
+ font-weight: 500;
+}
+.data-list .item .content .single-text .unit {
+ margin-left: 10rpx;
+}
+.data-list .item .operation {
+ padding: 20rpx 10rpx;
+}
+.data-list .item .operation button:not(:first-child) {
+ margin-left: 30rpx;
+}
+
+/*
+ * 组队签到
+ */
+.user-team-container {
+ padding-top: 35%;
+}
+.user-team-container button {
+ margin-bottom: 50rpx;
+ width: 50%;
+ background-color: #f6b015;
+ color: #fff;
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.js b/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.js
new file mode 100644
index 000000000..f7758a6a9
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.js
@@ -0,0 +1,133 @@
+const app = getApp();
+Page({
+ data: {
+ data_list: [],
+ data_page_total: 0,
+ data_page: 1,
+ data_list_loding_status: 1,
+ data_bottom_line_status: false,
+ params: null,
+ },
+
+ onLoad(params) {
+ this.setData({
+ params: params,
+ });
+ this.init();
+ },
+
+ onShow() { },
+
+ init() {
+ var user = app.get_user_info(this, 'init');
+ if (user != false) {
+ // 用户未绑定用户则转到登录页面
+ if (app.user_is_need_login(user)) {
+ tt.redirectTo({
+ url: "/pages/login/login?event_callback=init"
+ });
+ return false;
+ } else {
+ // 获取数据
+ this.get_data_list();
+ }
+ } else {
+ this.setData({
+ data_list_loding_status: 0,
+ data_bottom_line_status: false,
+ });
+ }
+ },
+
+ // 获取数据
+ get_data_list(is_mandatory) {
+ // 分页是否还有数据
+ if ((is_mandatory || 0) == 0) {
+ if (this.data.data_bottom_line_status == true) {
+ return false;
+ }
+ }
+
+ // 加载loding
+ tt.showLoading({ title: "加载中..." });
+ this.setData({
+ data_list_loding_status: 1
+ });
+
+ // 获取数据
+ tt.request({
+ url: app.get_request_url("index", "usersignin", "signin"),
+ method: "POST",
+ data: {
+ page: this.data.data_page,
+ },
+ dataType: "json",
+ success: res => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+ if (res.data.code == 0) {
+ if (res.data.data.data.length > 0) {
+ if (this.data.data_page <= 1) {
+ var temp_data_list = res.data.data.data;
+ } else {
+ var temp_data_list = this.data.data_list;
+ var temp_data = res.data.data.data;
+ for (var i in temp_data) {
+ temp_data_list.push(temp_data[i]);
+ }
+ }
+ this.setData({
+ data_list: temp_data_list,
+ data_total: res.data.data.total,
+ data_page_total: res.data.data.page_total,
+ data_list_loding_status: 3,
+ data_page: this.data.data_page + 1,
+ });
+
+ // 是否还有数据
+ if (this.data.data_page > 1 && this.data.data_page > this.data.data_page_total) {
+ this.setData({ data_bottom_line_status: true });
+ } else {
+ this.setData({ data_bottom_line_status: false });
+ }
+ } else {
+ this.setData({
+ data_list_loding_status: 0,
+ data_list: [],
+ data_bottom_line_status: false,
+ });
+ }
+ } else {
+ this.setData({
+ data_list_loding_status: 0,
+ });
+ if (app.is_login_check(res.data, this, 'get_data_list')) {
+ app.showToast(res.data.msg);
+ }
+ }
+ },
+ fail: () => {
+ tt.hideLoading();
+ tt.stopPullDownRefresh();
+
+ this.setData({
+ data_list_loding_status: 2,
+ });
+ app.showToast("服务器请求出错");
+ }
+ });
+ },
+
+ // 下拉刷新
+ onPullDownRefresh() {
+ this.setData({
+ data_page: 1
+ });
+ this.get_data_list(1);
+ },
+
+ // 滚动加载
+ scroll_lower(e) {
+ this.get_data_list();
+ },
+});
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.json b/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.json
new file mode 100644
index 000000000..951fbed7f
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.json
@@ -0,0 +1,8 @@
+{
+ "enablePullDownRefresh": true,
+ "navigationBarBackgroundColor": "#f6b015",
+ "backgroundColorTop": "#f6b015",
+ "backgroundColorBottom": "#f5f5f5",
+ "backgroundTextStyle": "light",
+ "navigationBarTitleText": "我的签到"
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.ttml b/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.ttml
new file mode 100644
index 000000000..02c629a7f
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.ttml
@@ -0,0 +1,25 @@
+
+
+
+
+
+ 奖励积分
+ {{item.integral}}
+
+
+ 签到时间
+ {{item.add_time}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.ttss b/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.ttss
new file mode 100644
index 000000000..5fedb6236
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user-signin/user-signin.ttss
@@ -0,0 +1,15 @@
+.scroll-box {
+ height: 100vh;
+}
+.data-list .item .content {
+ padding: 20rpx 10rpx;
+}
+.data-list .item .content .single-text {
+ line-height: 50rpx;
+}
+.data-list .item .content .single-text .title {
+ margin-right: 30rpx;
+}
+.data-list .item .content .single-text .value {
+ font-weight: 500;
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user/user.js b/sourcecode/toutiao/default/pages/plugins/signin/user/user.js
new file mode 100644
index 000000000..7e29c408f
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user/user.js
@@ -0,0 +1,105 @@
+const app = getApp();
+Page({
+ data: {
+ data_bottom_line_status: false,
+ data_list_loding_status: 1,
+ data_list_loding_msg: '',
+ data_base: null,
+ nav_list: [],
+ },
+
+ onLoad(params) {},
+
+ onShow() {
+ this.init();
+ },
+
+ init(e) {
+ var user = app.get_user_info(this, "init"),
+ self = this;
+ if (user != false) {
+ // 用户未绑定用户则转到登录页面
+ if (app.user_is_need_login(user)) {
+ tt.showModal({
+ title: '温馨提示',
+ content: '绑定手机号码',
+ confirmText: '确认',
+ cancelText: '暂不',
+ success: (result) => {
+ tt.stopPullDownRefresh();
+ if (result.confirm) {
+ tt.navigateTo({
+ url: "/pages/login/login?event_callback=init"
+ });
+ }
+ },
+ });
+ } else {
+ self.get_data();
+ }
+ }
+ },
+
+ // 获取数据
+ get_data() {
+ var self = this;
+ tt.request({
+ url: app.get_request_url("center", "user", "signin"),
+ method: "POST",
+ data: {},
+ dataType: "json",
+ success: res => {
+ tt.stopPullDownRefresh();
+ if (res.data.code == 0) {
+ var data = res.data.data;
+ // 是否开启组队
+ var temp_nav_list = [
+ {
+ icon: "/images/plugins/signin/user-signin-icon.png",
+ title: "我的签到",
+ url: "/pages/plugins/signin/user-signin/user-signin",
+ }
+ ];
+ if((data.base || null) != null && (data.base.is_team || 0) == 1)
+ {
+ temp_nav_list.push({
+ icon: "/images/plugins/signin/user-qrcode-icon.png",
+ title: "签到码管理",
+ url: "/pages/plugins/signin/user-qrcode/user-qrcode",
+ });
+ }
+ self.setData({
+ data_base: data.base || null,
+ nav_list: temp_nav_list,
+ data_list_loding_msg: '',
+ data_list_loding_status: 0,
+ data_bottom_line_status: false,
+ });
+ } else {
+ self.setData({
+ data_bottom_line_status: false,
+ data_list_loding_status: 2,
+ data_list_loding_msg: res.data.msg,
+ });
+ if (app.is_login_check(res.data, self, 'get_data')) {
+ app.showToast(res.data.msg);
+ }
+ }
+ },
+ fail: () => {
+ tt.stopPullDownRefresh();
+ self.setData({
+ data_bottom_line_status: false,
+ data_list_loding_status: 2,
+ data_list_loding_msg: '服务器请求出错',
+ });
+ app.showToast("服务器请求出错");
+ }
+ });
+ },
+
+ // 下拉刷新
+ onPullDownRefresh() {
+ this.get_data();
+ },
+});
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user/user.json b/sourcecode/toutiao/default/pages/plugins/signin/user/user.json
new file mode 100644
index 000000000..ac5d74d43
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user/user.json
@@ -0,0 +1,8 @@
+{
+ "enablePullDownRefresh": true,
+ "navigationBarBackgroundColor": "#f6b015",
+ "backgroundColorTop": "#f6b015",
+ "backgroundColorBottom": "#f5f5f5",
+ "backgroundTextStyle": "light",
+ "navigationBarTitleText": "签到"
+}
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user/user.ttml b/sourcecode/toutiao/default/pages/plugins/signin/user/user.ttml
new file mode 100644
index 000000000..f0f38d05c
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user/user.ttml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+ {{item.title}}
+
+
+
+
+
+
+
+
+
+ {{item}}
+
+
+
\ No newline at end of file
diff --git a/sourcecode/toutiao/default/pages/plugins/signin/user/user.ttss b/sourcecode/toutiao/default/pages/plugins/signin/user/user.ttss
new file mode 100644
index 000000000..c3245db62
--- /dev/null
+++ b/sourcecode/toutiao/default/pages/plugins/signin/user/user.ttss
@@ -0,0 +1,29 @@
+/*
+ * 导航
+ */
+.nav {
+ border-top: 1px solid #eee;
+}
+.nav .item {
+ padding: 30rpx 0;
+ width: calc(50% - 1px);
+ border-bottom: 1px solid #eee;
+}
+.nav .item:nth-child(odd) {
+ border-right: 1px solid #eee;
+}
+.nav .item image {
+ width: 100rpx;
+ height: 100rpx;
+ margin: 0 auto;
+}
+.nav .item .title {
+ margin-top: 20rpx;
+}
+
+/*
+ * 提示信息
+ */
+.tips-container {
+ padding: 0 10rpx;
+}
\ No newline at end of file
diff --git a/sourcecode/weixin/default/pages/plugins/signin/index-detail/index-detail.wxml b/sourcecode/weixin/default/pages/plugins/signin/index-detail/index-detail.wxml
index 351e89536..100eaa4c0 100644
--- a/sourcecode/weixin/default/pages/plugins/signin/index-detail/index-detail.wxml
+++ b/sourcecode/weixin/default/pages/plugins/signin/index-detail/index-detail.wxml
@@ -34,7 +34,7 @@
-
+
diff --git a/sourcecode/weixin/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.wxss b/sourcecode/weixin/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.wxss
index 3122fa5c2..85184ce7f 100644
--- a/sourcecode/weixin/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.wxss
+++ b/sourcecode/weixin/default/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo.wxss
@@ -4,4 +4,7 @@
.content-top text {
font-size: 38rpx;
font-weight: bold;
+}
+.submit-bottom {
+ background-color: #f6b015 !important;
}
\ No newline at end of file
diff --git a/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.js b/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.js
index 88cee4217..262ac1e39 100644
--- a/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.js
+++ b/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.js
@@ -98,6 +98,7 @@ Page({
}
} else {
this.setData({
+ data_base: res.data.data.base || null,
data_list_loding_status: 0,
data_list: [],
data_bottom_line_status: false,
@@ -153,14 +154,6 @@ Page({
});
},
- // 签到用户
- coming_event(e) {
- var value = e.currentTarget.dataset.value;
- wx.navigateTo({
- url: '/pages/plugins/signin/user-coming-list/user-coming-list?id='+value,
- });
- },
-
// 编辑
edit_event(e) {
var value = e.currentTarget.dataset.value;
@@ -168,4 +161,11 @@ Page({
url: '/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo?id='+value,
});
},
+
+ // 组队签到
+ team_event(e) {
+ wx.navigateTo({
+ url: '/pages/plugins/signin/user-qrcode-saveinfo/user-qrcode-saveinfo',
+ });
+ },
});
\ No newline at end of file
diff --git a/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.wxml b/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.wxml
index d4fdd3f5d..11cf2380e 100644
--- a/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.wxml
+++ b/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.wxml
@@ -29,11 +29,16 @@
-
-
-
-
-
+
+
+
+ 组队分享让更多人参与签到、获得更多积分奖励
+
+
+
+
+
+
diff --git a/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.wxss b/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.wxss
index ba1dad9e5..c3efb92eb 100644
--- a/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.wxss
+++ b/sourcecode/weixin/default/pages/plugins/signin/user-qrcode/user-qrcode.wxss
@@ -25,19 +25,14 @@
}
/*
- * 选择
+ * 组队签到
*/
- .selected .icon {
- width: 40rpx;
- height: 40rpx !important;
- margin-left: 10rpx;
- margin-right: 20rpx;
- vertical-align: middle;
+.user-team-container {
+ padding-top: 35%;
}
- .invoice-merge-submit {
- width: 220rpx;
- height: 70rpx !important;
- line-height: 74rpx !important;
- left: calc(50% - 110rpx);
- bottom: 50rpx;
+.user-team-container button {
+ margin-bottom: 50rpx;
+ width: 50%;
+ background-color: #f6b015;
+ color: #fff;
}
\ No newline at end of file
diff --git a/sourcecode/weixin/default/pages/plugins/signin/user/user.js b/sourcecode/weixin/default/pages/plugins/signin/user/user.js
index 6258c0f3a..f7f09994d 100644
--- a/sourcecode/weixin/default/pages/plugins/signin/user/user.js
+++ b/sourcecode/weixin/default/pages/plugins/signin/user/user.js
@@ -5,13 +5,7 @@ Page({
data_list_loding_status: 1,
data_list_loding_msg: '',
data_base: null,
- nav_list: [
- {
- icon: "/images/plugins/signin/user-signin-icon.png",
- title: "我的签到",
- url: "/pages/plugins/signin/user-signin/user-signin",
- }
- ],
+ nav_list: [],
},
onLoad(params) {},
@@ -59,8 +53,14 @@ Page({
if (res.data.code == 0) {
var data = res.data.data;
// 是否开启组队
- var temp_nav_list = this.data.nav_list;
- if((data.base || null) != null && (data.base.is_team || 0) == 1 && temp_nav_list.length <= 1)
+ var temp_nav_list = [
+ {
+ icon: "/images/plugins/signin/user-signin-icon.png",
+ title: "我的签到",
+ url: "/pages/plugins/signin/user-signin/user-signin",
+ }
+ ];
+ if((data.base || null) != null && (data.base.is_team || 0) == 1)
{
temp_nav_list.push({
icon: "/images/plugins/signin/user-qrcode-icon.png",