文件入口参数使用公共方法处理

This commit is contained in:
gongfuxiang
2026-07-07 00:02:00 +08:00
parent 0326812845
commit ff796ea201
223 changed files with 19195 additions and 18613 deletions

View File

@ -45,6 +45,9 @@
componentAppAdmin
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -1,284 +1,287 @@
<template>
<view :class="theme_view">
<!-- 分类 -->
<scroll-view v-if="(category_list || null) != null && category_list.length > 0" class="nav-base scroll-view-horizontal bg-white oh" scroll-x="true">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main ' + (nav_active_value == 0 ? 'cr-main' : '')" @tap="nav_event" data-value="0">{{$t('common.all')}}</view>
<block v-for="(item, index) in category_list" :key="index">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main ' + (nav_active_value == item.id ? 'cr-main' : '')" @tap="nav_event" :data-value="item.id">{{ item.name }}</view>
</block>
</scroll-view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="(data_list || null) != null && data_list.length > 0" class="data-list padding-horizontal-main padding-top-main oh">
<block v-for="(item, index) in data_list" :key="index">
<view :data-value="item.url" @tap="url_event" class="item padding-main border-radius-main bg-white oh cp spacing-mb">
<view v-if="(item.cover || null) != null" class="oh pr item-cover">
<image :src="item.cover" mode="aspectFit" class="radius fl cover"></image>
<view class="base-right fr">
<view class="fw-b single-text text-size" :style="(item.title_color || null) != null ? 'color:' + item.title_color + ' !important;' : ''">{{ item.title }}</view>
<view v-if="(item.describe || null) != null" class="cr-base margin-top-sm multi-text text-size-sm">{{item.describe}}</view>
<view class="pa right-0 bottom-0 base-right-bottom cr-grey text-size-xs">
<text class="fl">{{ item.add_time }}</text>
<text class="fr">{{$t('article-category.article-category.gxra15')}}{{ item.access_count }}</text>
</view>
</view>
</view>
<block v-else>
<view class="fw-b single-text text-size" :style="(item.title_color || null) != null ? 'color:' + item.title_color + ' !important;' : ''">{{ item.title }}</view>
<view class="cr-grey oh text-size-xs margin-top-sm">
<text class="fl">{{ item.add_time }}</text>
<text class="fr">{{$t('article-category.article-category.gxra15')}}{{ item.access_count }}</text>
</view>
</block>
</view>
</block>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
data_is_loading: 0,
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
params: null,
category_list: [],
nav_active_value: 0,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
nav_active_value: params.id || 0,
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url("index", "article"),
method: "POST",
data: {},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
category_list: data.category_list || [],
});
// 基础自定义分享
this.setData({
share_info: {
path: "/pages/article-category/article-category",
query: "id=" + this.nav_active_value,
},
});
// 获取列表数据
this.get_data_list(1);
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({ data_is_loading: 1 });
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url("datalist", "article"),
method: "POST",
data: {
page: this.data_page,
id: this.nav_active_value || 0,
},
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
data_is_loading: 0,
});
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_active_value: e.currentTarget.dataset.value || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./article-category.css";
</style>
<template>
<view :class="theme_view">
<!-- 分类 -->
<scroll-view v-if="(category_list || null) != null && category_list.length > 0" class="nav-base scroll-view-horizontal bg-white oh" scroll-x="true">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main ' + (nav_active_value == 0 ? 'cr-main' : '')" @tap="nav_event" data-value="0">{{$t('common.all')}}</view>
<block v-for="(item, index) in category_list" :key="index">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main ' + (nav_active_value == item.id ? 'cr-main' : '')" @tap="nav_event" :data-value="item.id">{{ item.name }}</view>
</block>
</scroll-view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="(data_list || null) != null && data_list.length > 0" class="data-list padding-horizontal-main padding-top-main oh">
<block v-for="(item, index) in data_list" :key="index">
<view :data-value="item.url" @tap="url_event" class="item padding-main border-radius-main bg-white oh cp spacing-mb">
<view v-if="(item.cover || null) != null" class="oh pr item-cover">
<image :src="item.cover" mode="aspectFit" class="radius fl cover"></image>
<view class="base-right fr">
<view class="fw-b single-text text-size" :style="(item.title_color || null) != null ? 'color:' + item.title_color + ' !important;' : ''">{{ item.title }}</view>
<view v-if="(item.describe || null) != null" class="cr-base margin-top-sm multi-text text-size-sm">{{item.describe}}</view>
<view class="pa right-0 bottom-0 base-right-bottom cr-grey text-size-xs">
<text class="fl">{{ item.add_time }}</text>
<text class="fr">{{$t('article-category.article-category.gxra15')}}{{ item.access_count }}</text>
</view>
</view>
</view>
<block v-else>
<view class="fw-b single-text text-size" :style="(item.title_color || null) != null ? 'color:' + item.title_color + ' !important;' : ''">{{ item.title }}</view>
<view class="cr-grey oh text-size-xs margin-top-sm">
<text class="fl">{{ item.add_time }}</text>
<text class="fr">{{$t('article-category.article-category.gxra15')}}{{ item.access_count }}</text>
</view>
</block>
</view>
</block>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
data_is_loading: 0,
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
params: null,
category_list: [],
nav_active_value: 0,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
nav_active_value: params.id || 0,
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url("index", "article"),
method: "POST",
data: {},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
category_list: data.category_list || [],
});
// 基础自定义分享
this.setData({
share_info: {
path: "/pages/article-category/article-category",
query: "id=" + this.nav_active_value,
},
});
// 获取列表数据
this.get_data_list(1);
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({ data_is_loading: 1 });
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url("datalist", "article"),
method: "POST",
data: {
page: this.data_page,
id: this.nav_active_value || 0,
},
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
data_is_loading: 0,
});
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_active_value: e.currentTarget.dataset.value || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./article-category.css";
</style>

View File

@ -1,162 +1,164 @@
<template>
<view :class="theme_view">
<view v-if="(data || null) != null" class="padding-main">
<view class="padding-main border-radius-main bg-white spacing-mb">
<view class="fw-b text-size-xl">{{ data.title }}</view>
<view class="cr-grey margin-top-lg oh br-t padding-top-main">
<view class="fl">
<text>{{$t('article-detail.article-detail.728374')}}</text>
<text>{{ data.add_time }}</text>
</view>
<view class="fr">
<text class="margin-left-xxxl">{{$t('article-detail.article-detail.j92ru0')}}</text>
<text>{{ data.access_count }}</text>
</view>
</view>
</view>
<view class="padding-main border-radius-main bg-white oh web-html-content spacing-mb">
<mp-html :content="data.content" />
</view>
<!-- 上一篇下一篇 -->
<view v-if="(last_next || null) != null" class="last-next-data spacing-mb">
<view v-if="(last_next.last || null) != null">
<text class="cr-grey va-m">{{$t('article-detail.article-detail.281s4a')}}</text>
<text :data-value="last_next.last.url" @tap="url_event" class="dis-inline-block va-m cr-blue cp item">{{ last_next.last.title }}</text>
</view>
<view v-if="(last_next.next || null) != null" class="margin-top-sm">
<text class="cr-grey va-m">{{$t('article-detail.article-detail.uq5814')}}</text>
<text :data-value="last_next.next.url" @tap="url_event" class="dis-inline-block va-m cr-blue cp item">{{ last_next.next.title }}</text>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
params: null,
data: null,
last_next: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url("detail", "article"),
method: "POST",
data: {
id: this.params.id || 0,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
var data = res.data.data;
if (res.data.code == 0 && (data.data || null) != null) {
var article = data.data;
this.setData({
data_bottom_line_status: true,
data_list_loding_status: 3,
data: article,
last_next: data.last_next || null,
});
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.title,
desc: this.data.seo_desc,
path: "/pages/article-detail/article-detail",
<template>
<view :class="theme_view">
<view v-if="(data || null) != null" class="padding-main">
<view class="padding-main border-radius-main bg-white spacing-mb">
<view class="fw-b text-size-xl">{{ data.title }}</view>
<view class="cr-grey margin-top-lg oh br-t padding-top-main">
<view class="fl">
<text>{{$t('article-detail.article-detail.728374')}}</text>
<text>{{ data.add_time }}</text>
</view>
<view class="fr">
<text class="margin-left-xxxl">{{$t('article-detail.article-detail.j92ru0')}}</text>
<text>{{ data.access_count }}</text>
</view>
</view>
</view>
<view class="padding-main border-radius-main bg-white oh web-html-content spacing-mb">
<mp-html :content="data.content" />
</view>
<!-- 上一篇下一篇 -->
<view v-if="(last_next || null) != null" class="last-next-data spacing-mb">
<view v-if="(last_next.last || null) != null">
<text class="cr-grey va-m">{{$t('article-detail.article-detail.281s4a')}}</text>
<text :data-value="last_next.last.url" @tap="url_event" class="dis-inline-block va-m cr-blue cp item">{{ last_next.last.title }}</text>
</view>
<view v-if="(last_next.next || null) != null" class="margin-top-sm">
<text class="cr-grey va-m">{{$t('article-detail.article-detail.uq5814')}}</text>
<text :data-value="last_next.next.url" @tap="url_event" class="dis-inline-block va-m cr-blue cp item">{{ last_next.next.title }}</text>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
params: null,
data: null,
last_next: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url("detail", "article"),
method: "POST",
data: {
id: this.params.id || 0,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
var data = res.data.data;
if (res.data.code == 0 && (data.data || null) != null) {
var article = data.data;
this.setData({
data_bottom_line_status: true,
data_list_loding_status: 3,
data: article,
last_next: data.last_next || null,
});
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.title,
desc: this.data.seo_desc,
path: "/pages/article-detail/article-detail",
query: "id=" + this.data.id,
img: this.data.share_images || this.data.cover,
},
});
// 标题
uni.setNavigationBarTitle({ title: article.title });
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./article-detail.css";
</style>
img: this.data.share_images || this.data.cover,
},
});
// 标题
uni.setNavigationBarTitle({ title: article.title });
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./article-detail.css";
</style>

View File

@ -544,6 +544,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -453,6 +453,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -453,6 +453,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -69,11 +69,11 @@
componentNoData
},
onLoad(params) {
// 设置参数
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
params = app.globalData.launch_params_handle(params);
var scene = app.globalData.get_scene_data();
this.setData({
params: params,

View File

@ -1,149 +1,152 @@
<template>
<view :class="theme_view">
<view v-if="is_show_open_setting" class="open-setting-view">
<view class="content bg-white">
<view class="msg cr-grey">{{$t('open-setting-location.open-setting-location.61wezw')}}</view>
<view class="value cr-base">{{$t('open-setting-location.open-setting-location.6vev38')}}<text>{{$t('open-setting-location.open-setting-location.lult41')}}</text>{{$t('open-setting-location.open-setting-location.407106')}}</view>
<button type="primary" open-type="openSetting" size="mini" @opensetting="setting_event">{{$t('open-setting-location.open-setting-location.65q4b3')}}</button>
<view class="tc margin-top-sm">
<navigator open-type="navigateBack" class="cp cr-grey dis-inline-block" hover-class="none">{{$t('common.return')}}</navigator>
</view>
</view>
</view>
<view v-else class="open-setting-loding">
<image :src="common_static_url + 'bg-loding.gif'" class="avatar dis-block" mode="widthFix"></image>
<view class="tc margin-top-sm">
<navigator open-type="navigateBack" class="cp cr-grey dis-inline-block" hover-class="none">{{$t('common.return')}}</navigator>
</view>
</view>
<view v-if="(error_msg || null) != null" class="cr-red margin-top-lg padding-horizontal-main">{{ error_msg }}</view>
</view>
</template>
<script>
const app = getApp();
var common_static_url = app.globalData.get_static_url("common");
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
common_static_url: common_static_url,
params: null,
is_show_open_setting: false,
auth: "scope.userLocation",
cache_key: app.globalData.data.cache_userlocation_key,
error_msg: null,
};
},
components: {},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
},
methods: {
// 获取权限
init() {
app.globalData.get_location_check(this.auth, this, "location_back_handle");
},
// 位置权限校验回调
location_back_handle(status = 0) {
if (status == 1) {
// 是否校验成功直接返回
if (parseInt(this.params.is_check_success_back || 0) == 1) {
uni.navigateBack();
} else {
this.choose_location();
}
} else {
this.setData({
is_show_open_setting: true,
});
}
},
// 配置打开事件
setting_event(e) {
if (e.detail.authSetting[this.auth]) {
// 不展示打开设置的按钮容器
this.setData({
is_show_open_setting: false,
});
// 是否校验成功直接返回
if (parseInt(this.params.is_check_success_back || 0) == 1) {
uni.navigateBack();
} else {
this.choose_location();
}
}
},
// 打开位置服务
choose_location() {
// app先返回当前页面再调用位置选择组件
// #ifdef APP
uni.navigateBack();
// #endif
// 调用位置选择组件
uni.chooseLocation({
success: (res) => {
<template>
<view :class="theme_view">
<view v-if="is_show_open_setting" class="open-setting-view">
<view class="content bg-white">
<view class="msg cr-grey">{{$t('open-setting-location.open-setting-location.61wezw')}}</view>
<view class="value cr-base">{{$t('open-setting-location.open-setting-location.6vev38')}}<text>{{$t('open-setting-location.open-setting-location.lult41')}}</text>{{$t('open-setting-location.open-setting-location.407106')}}</view>
<button type="primary" open-type="openSetting" size="mini" @opensetting="setting_event">{{$t('open-setting-location.open-setting-location.65q4b3')}}</button>
<view class="tc margin-top-sm">
<navigator open-type="navigateBack" class="cp cr-grey dis-inline-block" hover-class="none">{{$t('common.return')}}</navigator>
</view>
</view>
</view>
<view v-else class="open-setting-loding">
<image :src="common_static_url + 'bg-loding.gif'" class="avatar dis-block" mode="widthFix"></image>
<view class="tc margin-top-sm">
<navigator open-type="navigateBack" class="cp cr-grey dis-inline-block" hover-class="none">{{$t('common.return')}}</navigator>
</view>
</view>
<view v-if="(error_msg || null) != null" class="cr-red margin-top-lg padding-horizontal-main">{{ error_msg }}</view>
</view>
</template>
<script>
const app = getApp();
var common_static_url = app.globalData.get_static_url("common");
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
common_static_url: common_static_url,
params: null,
is_show_open_setting: false,
auth: "scope.userLocation",
cache_key: app.globalData.data.cache_userlocation_key,
error_msg: null,
};
},
components: {},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
},
methods: {
// 获取权限
init() {
app.globalData.get_location_check(this.auth, this, "location_back_handle");
},
// 位置权限校验回调
location_back_handle(status = 0) {
if (status == 1) {
// 是否校验成功直接返回
if (parseInt(this.params.is_check_success_back || 0) == 1) {
uni.navigateBack();
} else {
this.choose_location();
}
} else {
this.setData({
is_show_open_setting: true,
});
}
},
// 配置打开事件
setting_event(e) {
if (e.detail.authSetting[this.auth]) {
// 不展示打开设置的按钮容器
this.setData({
is_show_open_setting: false,
});
// 是否校验成功直接返回
if (parseInt(this.params.is_check_success_back || 0) == 1) {
uni.navigateBack();
} else {
this.choose_location();
}
}
},
// 打开位置服务
choose_location() {
// app先返回当前页面再调用位置选择组件
// #ifdef APP
uni.navigateBack();
// #endif
// 调用位置选择组件
uni.chooseLocation({
success: (res) => {
// 位置数据存储缓存中,改变状态值(成功)
res['status'] = 1;
res['lat'] = res.latitude;
res['lng'] = res.longitude;
delete res['latitude'];
delete res['longitude'];
uni.setStorageSync(this.cache_key, res);
// 触发自定义事件并传递参数给上一页
uni.$emit('refresh', { location_success: true });
// app则不执行返回操作、上面已经返回过了
// #ifndef APP
setTimeout(function () {
uni.navigateBack();
}, 500);
// #endif
},
delete res['longitude'];
uni.setStorageSync(this.cache_key, res);
// 触发自定义事件并传递参数给上一页
uni.$emit('refresh', { location_success: true });
// app则不执行返回操作、上面已经返回过了
// #ifndef APP
setTimeout(function () {
uni.navigateBack();
}, 500);
// #endif
},
fail: (res) => {
// 存在数据则改变状态值(失败)
var result = {...(uni.getStorageSync(this.cache_key) || {}), ...{status: 3}};
uni.setStorageSync(this.cache_key, result);
// 取消则自动返回、则显示错误
// error=11 支付宝取消、msg包含cancel则其他平台
var msg = res.errorMessage || res.chooseLocation || res.errMsg || this.$t('open-setting-location.open-setting-location.hwn386');
if(res.error == 11 || msg.indexOf('cancel') != -1) {
// app则不执行返回操作、上面已经返回过了
// #ifndef APP
uni.navigateBack();
// #endif
} else {
this.setData({ error_msg: res.errMsg });
app.globalData.showToast(res.errMsg);
}
}
});
}
},
};
</script>
<style>
@import "./open-setting-location.css";
</style>
// 取消则自动返回、则显示错误
// error=11 支付宝取消、msg包含cancel则其他平台
var msg = res.errorMessage || res.chooseLocation || res.errMsg || this.$t('open-setting-location.open-setting-location.hwn386');
if(res.error == 11 || msg.indexOf('cancel') != -1) {
// app则不执行返回操作、上面已经返回过了
// #ifndef APP
uni.navigateBack();
// #endif
} else {
this.setData({ error_msg: res.errMsg });
app.globalData.showToast(res.errMsg);
}
}
});
}
},
};
</script>
<style>
@import "./open-setting-location.css";
</style>

View File

@ -1,146 +1,149 @@
<template>
<view :class="theme_view">
<view v-if="(data || null) != null">
<!-- 搜索 -->
<block v-if="(data.is_header || 0) == 1">
<!-- 搜索框 -->
<view class="padding-main bg-white">
<component-search propClass="br" :propPlaceholder="$t('customview.customview.726k7y')"></component-search>
</view>
</block>
<!-- 内容 -->
<mp-html :content="data.html_content" />
<!-- 结尾 -->
<block v-if="(data.is_footer || 0) == 1">
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
</view>
<view v-else>
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentSearch from "@/components/search/search";
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
params: {},
data: null,
// 自定义分享信息
share_info: {}
};
},
components: {
componentCommon,
componentSearch,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.get_data();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 获取数据
get_data() {
uni.request({
url: app.globalData.get_request_url("index", "customview"),
method: 'POST',
data: this.params,
dataType: 'json',
success: res => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data: data.data || null,
data_list_loding_msg: '',
data_list_loding_status: 0,
data_bottom_line_status: true
});
if ((this.data || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.name,
desc: this.data.seo_desc,
path: '/pages/customview/customview',
query: 'id='+this.data.id,
img: this.data.logo
}
});
// 标题名称
uni.setNavigationBarTitle({
title: this.data.name
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg
});
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips')
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
}
});
}
}
};
</script>
<style>
<template>
<view :class="theme_view">
<view v-if="(data || null) != null">
<!-- 搜索 -->
<block v-if="(data.is_header || 0) == 1">
<!-- 搜索框 -->
<view class="padding-main bg-white">
<component-search propClass="br" :propPlaceholder="$t('customview.customview.726k7y')"></component-search>
</view>
</block>
<!-- 内容 -->
<mp-html :content="data.html_content" />
<!-- 结尾 -->
<block v-if="(data.is_footer || 0) == 1">
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
</view>
<view v-else>
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentSearch from "@/components/search/search";
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
params: {},
data: null,
// 自定义分享信息
share_info: {}
};
},
components: {
componentCommon,
componentSearch,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.get_data();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 获取数据
get_data() {
uni.request({
url: app.globalData.get_request_url("index", "customview"),
method: 'POST',
data: this.params,
dataType: 'json',
success: res => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data: data.data || null,
data_list_loding_msg: '',
data_list_loding_status: 0,
data_bottom_line_status: true
});
if ((this.data || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.name,
desc: this.data.seo_desc,
path: '/pages/customview/customview',
query: 'id='+this.data.id,
img: this.data.logo
}
});
// 标题名称
uni.setNavigationBarTitle({
title: this.data.name
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg
});
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips')
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
}
});
}
}
};
</script>
<style>
</style>

View File

@ -1,88 +1,91 @@
<template>
<view :class="theme_view">
<block v-if="(data || null) != null">
<!-- 搜索 -->
<block v-if="(data.is_header || 0) == 1">
<!-- 搜索框 -->
<view class="padding-main bg-white">
<component-search propClass="br" :propPlaceholder="$t('customview.customview.726k7y')"></component-search>
</view>
</block>
<!-- 拖拽模式引入拖拽数据模块 -->
<component-layout :propData="layout_data"></component-layout>
<!-- 结尾 -->
<block v-if="(data.is_footer || 0) == 1">
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
</block>
<block v-else>
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentLayout from "@/pages/design/components/layout/layout";
import componentSearch from "@/components/search/search";
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
load_status: 0,
params: null,
data: null,
layout_data: [],
// 自定义分享信息
share_info: {}
};
},
components: {
componentCommon,
componentLayout,
componentSearch,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.get_data();
<template>
<view :class="theme_view">
<block v-if="(data || null) != null">
<!-- 搜索 -->
<block v-if="(data.is_header || 0) == 1">
<!-- 搜索框 -->
<view class="padding-main bg-white">
<component-search propClass="br" :propPlaceholder="$t('customview.customview.726k7y')"></component-search>
</view>
</block>
<!-- 拖拽模式引入拖拽数据模块 -->
<component-layout :propData="layout_data"></component-layout>
<!-- 结尾 -->
<block v-if="(data.is_footer || 0) == 1">
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
</block>
<block v-else>
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentLayout from "@/pages/design/components/layout/layout";
import componentSearch from "@/components/search/search";
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
load_status: 0,
params: null,
data: null,
layout_data: [],
// 自定义分享信息
share_info: {}
};
},
components: {
componentCommon,
componentLayout,
componentSearch,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.get_data();
// 公共onshow事件
this.init_common();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
this.init_common();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 初始化公共
init_common() {
@ -91,103 +94,103 @@
this.$refs.common.on_show();
}
},
// 获取数据
get_data(params = {}) {
// 还没有数据则读取缓存
var cache_key = app.globalData.data.cache_design_page_data_key+(this.params.id || 0);
if (this.load_status == 0) {
// 本地缓存数据
var upd_data = uni.getStorageSync(cache_key) || null;
if (upd_data != null) {
// 先使用缓存数据展示
this.setData(upd_data);
// 已有本地缓存则直接取远程有效数据(默认首次取的是远程缓存数据)
// 获取数据
get_data(params = {}) {
// 还没有数据则读取缓存
var cache_key = app.globalData.data.cache_design_page_data_key+(this.params.id || 0);
if (this.load_status == 0) {
// 本地缓存数据
var upd_data = uni.getStorageSync(cache_key) || null;
if (upd_data != null) {
// 先使用缓存数据展示
this.setData(upd_data);
// 已有本地缓存则直接取远程有效数据(默认首次取的是远程缓存数据)
params['is_cache'] = 0;
// 公共onshow事件
this.init_common();
}
} else {
// 已有本地缓存则直接取远程有效数据(默认首次取的是远程缓存数据)
params['is_cache'] = 0;
}
uni.request({
url: app.globalData.get_request_url("index", "design"),
method: 'POST',
data: {...this.params, ...params},
dataType: 'json',
success: res => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
var upd_data = {
data: (data.data || null) != null && data.data.length != 0 ? data.data : null,
layout_data: data.layout_data || [],
data_list_loding_msg: '',
data_list_loding_status: 0,
data_bottom_line_status: true
};
this.setData(upd_data);
// 存储缓存
uni.setStorageSync(cache_key, upd_data);
// 是否需要重新加载数据
if (parseInt(data.is_result_data_cache || 0) == 1) {
this.get_data({ is_cache: 0 });
}
if ((this.data || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.name,
desc: this.data.seo_desc,
path: '/pages/design/design',
query: 'id='+this.data.id,
img: this.data.logo
}
});
// 标题名称
uni.setNavigationBarTitle({
title: this.data.name
this.init_common();
}
} else {
// 已有本地缓存则直接取远程有效数据(默认首次取的是远程缓存数据)
params['is_cache'] = 0;
}
uni.request({
url: app.globalData.get_request_url("index", "design"),
method: 'POST',
data: {...this.params, ...params},
dataType: 'json',
success: res => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
var upd_data = {
data: (data.data || null) != null && data.data.length != 0 ? data.data : null,
layout_data: data.layout_data || [],
data_list_loding_msg: '',
data_list_loding_status: 0,
data_bottom_line_status: true
};
this.setData(upd_data);
// 存储缓存
uni.setStorageSync(cache_key, upd_data);
// 是否需要重新加载数据
if (parseInt(data.is_result_data_cache || 0) == 1) {
this.get_data({ is_cache: 0 });
}
if ((this.data || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.name,
desc: this.data.seo_desc,
path: '/pages/design/design',
query: 'id='+this.data.id,
img: this.data.logo
}
});
// 标题名称
uni.setNavigationBarTitle({
title: this.data.name
});
// 公共onshow事件
this.init_common();
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg
});
}
// 非首次状态
this.setData({
load_status: 1
});
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
load_status: 1,
data_list_loding_msg: this.$t('common.internet_error_tips')
});
}
});
}
}
};
</script>
<style>
this.init_common();
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg
});
}
// 非首次状态
this.setData({
load_status: 1
});
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
load_status: 1,
data_list_loding_msg: this.$t('common.internet_error_tips')
});
}
});
}
}
};
</script>
<style>
</style>

View File

@ -49,12 +49,15 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
params: params,
});
},

View File

@ -29,6 +29,9 @@
// 页面加载初始化
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -1,255 +1,258 @@
<template>
<view :class="theme_view">
<view class="page">
<view v-if="data_list.length > 0" class="padding-main">
<view v-for="(item, index) in data_list" :key="index" class="item bg-white padding-main border-radius-main spacing-mb">
<view @tap="address_conent_event" :data-index="index" class="oh">
<view v-if="(item.logo || null) != null" class="fl oh margin-right-lg">
<image class="dis-block address-logo radius" :src="item.logo" mode="widthFix"></image>
</view>
<view class="oh">
<view class="base oh padding-bottom-main padding-top-xs">
<text v-if="(item.alias || null) != null" class="address-alias br-main cr-main round margin-right-sm">{{ item.alias }}</text>
<text>{{ item.name }}</text>
<text class="fr">{{ item.tel }}</text>
</view>
<view class="address oh padding-top-sm">
<image class="item-icon fl margin-top-xs" :src="common_static_url + 'map-icon.png'" mode="widthFix"></image>
<view class="text fr"> {{ item.province_name || "" }}{{ item.city_name || "" }}{{ item.county_name || "" }}{{ item.address || "" }} </view>
</view>
</view>
</view>
<view v-if="((item.distance_value || null) != null && (item.distance_unit || null) != null) || ((item.lng || 0) != 0 && (item.lat || 0) != 0)" class="item-operation br-t oh padding-top-main margin-top-main">
<view v-if="(item.distance_value || null) != null && (item.distance_unit || null) != null" class="fl margin-top-sm">
<text class="cr-grey text-size-xs">{{$t('extraction-address.extraction-address.42v8tv')}}{{ item.distance_value }}{{ item.distance_unit }}</text>
</view>
<button v-if="(item.lng || 0) != 0 && (item.lat || 0) != 0" class="fr round bg-white cr-base br" type="default" size="mini" @tap="address_map_event" :data-index="index" hover-class="none">{{$t('buy.buy.o7722q')}}</button>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
var common_static_url = app.globalData.get_static_url("common");
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
common_static_url: common_static_url,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_list: [],
params: null,
is_default: 0,
is_first: 1,
home_extraction_address_position: 0,
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
home_extraction_address_position: app.globalData.get_config("config.home_extraction_address_position", 0),
});
},
onReady() {
// #ifndef MP-KUAISHOU
// 是否获取位置、下单选择地址进入需要传参 is_buy
if ((this.params.is_buy || 0) == 1 && this.home_extraction_address_position == 1) {
app.globalData.choose_user_location_event();
}
// #endif
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// #ifndef MP-KUAISHOU
// 是否需要选择地理位置、这里不校验参数is_buy仅页面进入才需要校验is_buy进入位置选择页面
if (this.home_extraction_address_position == 1) {
// 首次不请求数据
if (this.is_first == 0) {
// 先解绑自定义事件
uni.$off('refresh');
// 监听自定义事件并进行页面刷新操作
    uni.$on('refresh', (data) => {
// 初始位置数据
        if((data.location_success || false) == true) {
// 重新请求数据
// #ifdef APP
this.init();
// #endif
        }
    });
// 初始化数据
this.init();
}
} else {
this.init();
}
// #endif
// #ifdef MP-KUAISHOU
this.init();
// #endif
// 首次状态
this.setData({
is_first: 0,
});
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 初始化
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
this.get_data_list();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 获取数据列表
get_data_list() {
this.setData({
data_list_loding_status: 1,
});
// 获取数据
var data = this.params || {};
// 是否有坐标
var user_location = app.globalData.choice_user_location_init();
if ((user_location || null) != null) {
data["lng"] = user_location.lng;
data["lat"] = user_location.lat;
}
// 请求接口
uni.request({
url: app.globalData.get_request_url("extraction", "useraddress"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
if (res.data.data.length > 0) {
// 获取当前默认地址
var is_default = 0;
for (var i in res.data.data) {
if (res.data.data[i]["is_default"] == 1) {
is_default = res.data.data[i]["id"];
}
}
// 设置数据
this.setData({
data_list: res.data.data,
is_default: is_default,
data_list_loding_status: 3,
data_bottom_line_status: true,
});
} else {
this.setData({
data_list_loding_status: 0,
});
}
} else {
this.setData({
data_list_loding_status: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 地图查看
address_map_event(e) {
var index = e.currentTarget.dataset.index || 0;
var data = this.data_list[index] || null;
if (data == null) {
app.globalData.showToast(this.$t('user-order-detail.user-order-detail.i876o3'));
return false;
}
// 打开地图
var name = data.alias || data.name || "";
var address = (data.province_name || "") + (data.city_name || "") + (data.county_name || "") + (data.address || "");
app.globalData.open_location(data.lng, data.lat, name, address);
},
// 地址内容事件
address_conent_event(e) {
var index = e.currentTarget.dataset.index || 0;
var is_back = this.params.is_back || 0;
if (is_back == 1) {
uni.setStorage({
key: app.globalData.data.cache_buy_user_address_select_key,
data: this.data_list[index],
});
uni.navigateBack();
}
},
},
};
</script>
<style>
@import "./extraction-address.css";
</style>
<template>
<view :class="theme_view">
<view class="page">
<view v-if="data_list.length > 0" class="padding-main">
<view v-for="(item, index) in data_list" :key="index" class="item bg-white padding-main border-radius-main spacing-mb">
<view @tap="address_conent_event" :data-index="index" class="oh">
<view v-if="(item.logo || null) != null" class="fl oh margin-right-lg">
<image class="dis-block address-logo radius" :src="item.logo" mode="widthFix"></image>
</view>
<view class="oh">
<view class="base oh padding-bottom-main padding-top-xs">
<text v-if="(item.alias || null) != null" class="address-alias br-main cr-main round margin-right-sm">{{ item.alias }}</text>
<text>{{ item.name }}</text>
<text class="fr">{{ item.tel }}</text>
</view>
<view class="address oh padding-top-sm">
<image class="item-icon fl margin-top-xs" :src="common_static_url + 'map-icon.png'" mode="widthFix"></image>
<view class="text fr"> {{ item.province_name || "" }}{{ item.city_name || "" }}{{ item.county_name || "" }}{{ item.address || "" }} </view>
</view>
</view>
</view>
<view v-if="((item.distance_value || null) != null && (item.distance_unit || null) != null) || ((item.lng || 0) != 0 && (item.lat || 0) != 0)" class="item-operation br-t oh padding-top-main margin-top-main">
<view v-if="(item.distance_value || null) != null && (item.distance_unit || null) != null" class="fl margin-top-sm">
<text class="cr-grey text-size-xs">{{$t('extraction-address.extraction-address.42v8tv')}}{{ item.distance_value }}{{ item.distance_unit }}</text>
</view>
<button v-if="(item.lng || 0) != 0 && (item.lat || 0) != 0" class="fr round bg-white cr-base br" type="default" size="mini" @tap="address_map_event" :data-index="index" hover-class="none">{{$t('buy.buy.o7722q')}}</button>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
var common_static_url = app.globalData.get_static_url("common");
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
common_static_url: common_static_url,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_list: [],
params: null,
is_default: 0,
is_first: 1,
home_extraction_address_position: 0,
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
home_extraction_address_position: app.globalData.get_config("config.home_extraction_address_position", 0),
});
},
onReady() {
// #ifndef MP-KUAISHOU
// 是否获取位置、下单选择地址进入需要传参 is_buy
if ((this.params.is_buy || 0) == 1 && this.home_extraction_address_position == 1) {
app.globalData.choose_user_location_event();
}
// #endif
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// #ifndef MP-KUAISHOU
// 是否需要选择地理位置、这里不校验参数is_buy仅页面进入才需要校验is_buy进入位置选择页面
if (this.home_extraction_address_position == 1) {
// 首次不请求数据
if (this.is_first == 0) {
// 先解绑自定义事件
uni.$off('refresh');
// 监听自定义事件并进行页面刷新操作
    uni.$on('refresh', (data) => {
// 初始位置数据
        if((data.location_success || false) == true) {
// 重新请求数据
// #ifdef APP
this.init();
// #endif
        }
    });
// 初始化数据
this.init();
}
} else {
this.init();
}
// #endif
// #ifdef MP-KUAISHOU
this.init();
// #endif
// 首次状态
this.setData({
is_first: 0,
});
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 初始化
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
this.get_data_list();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 获取数据列表
get_data_list() {
this.setData({
data_list_loding_status: 1,
});
// 获取数据
var data = this.params || {};
// 是否有坐标
var user_location = app.globalData.choice_user_location_init();
if ((user_location || null) != null) {
data["lng"] = user_location.lng;
data["lat"] = user_location.lat;
}
// 请求接口
uni.request({
url: app.globalData.get_request_url("extraction", "useraddress"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
if (res.data.data.length > 0) {
// 获取当前默认地址
var is_default = 0;
for (var i in res.data.data) {
if (res.data.data[i]["is_default"] == 1) {
is_default = res.data.data[i]["id"];
}
}
// 设置数据
this.setData({
data_list: res.data.data,
is_default: is_default,
data_list_loding_status: 3,
data_bottom_line_status: true,
});
} else {
this.setData({
data_list_loding_status: 0,
});
}
} else {
this.setData({
data_list_loding_status: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 地图查看
address_map_event(e) {
var index = e.currentTarget.dataset.index || 0;
var data = this.data_list[index] || null;
if (data == null) {
app.globalData.showToast(this.$t('user-order-detail.user-order-detail.i876o3'));
return false;
}
// 打开地图
var name = data.alias || data.name || "";
var address = (data.province_name || "") + (data.city_name || "") + (data.county_name || "") + (data.address || "");
app.globalData.open_location(data.lng, data.lat, name, address);
},
// 地址内容事件
address_conent_event(e) {
var index = e.currentTarget.dataset.index || 0;
var is_back = this.params.is_back || 0;
if (is_back == 1) {
uni.setStorage({
key: app.globalData.data.cache_buy_user_address_select_key,
data: this.data_list[index],
});
uni.navigateBack();
}
},
},
};
</script>
<style>
@import "./extraction-address.css";
</style>

View File

@ -1,126 +1,129 @@
<template>
<view :class="theme_view">
<template>
<view :class="theme_view">
<block v-if="detail != null">
<!-- 基础信息 -->
<component-panel-content :propData="detail" :propDataField="field_list" propExcludeField="express_name,express_number" :propTitle="$t('common.base_info_text')"></component-panel-content>
<component-panel-content :propData="detail" :propDataField="field_list" propExcludeField="express_name,express_number" :propTitle="$t('common.base_info_text')"></component-panel-content>
<!-- 表单数据 -->
<component-form-input-detail :propData="detail.form_data"></component-form-input-detail>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
<component-form-input-detail :propData="detail.form_data"></component-form-input-detail>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
import componentPanelContent from "@/components/panel-content/panel-content";
import componentFormInputDetail from '@/pages/form-input/components/form-input-detail/form-input-detail';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: '',
import componentFormInputDetail from '@/pages/form-input/components/form-input-detail/form-input-detail';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
field_list: [],
detail: null
};
},
components: {
componentCommon,
componentNoData,
field_list: [],
detail: null
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentPanelContent,
componentFormInputDetail
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("detail", "forminputdata"),
method: "POST",
data: this.params,
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
componentFormInputDetail
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("detail", "forminputdata"),
method: "POST",
data: this.params,
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
detail: data.data,
field_list: data.field_list || [],
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
}
};
</script>
field_list: data.field_list || [],
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
}
};
</script>
<style scoped>
</style>

View File

@ -58,6 +58,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
this.setData({

View File

@ -49,14 +49,16 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
params: params,
});
// 加载数据
this.get_data();
},

View File

@ -49,12 +49,15 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
params: params,
});
this.init();
},

View File

@ -503,6 +503,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -1,299 +1,302 @@
<template>
<view :class="theme_view">
<!-- 提示信息 -->
<block v-if="data_list_loding_status == 1">
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</block>
<block v-else>
<!-- 评分 -->
<view v-if="goods_score != null" class="score-container oh padding-main">
<view class="bg-white border-radius-main padding-main flex-row jc-sb align-c">
<view class="score tc">
<view class="cr-base">{{$t('goods-comment.goods-comment.dfmjxd')}}</view>
<view class="value cr-main">{{ goods_score.avg || "0.0" }}</view>
</view>
<view class="progress tc border-radius-main flex-1 flex-width flex-row">
<block v-if="goods_score.avg > 0">
<block v-for="(item, index) in goods_score.rating" :key="index">
<view v-if="item.portion > 0" :class="item.bar_class" :style="item.bar_style">{{ item.name }}</view>
</block>
</block>
<text v-else class="cr-grey">{{$t('goods-comment.goods-comment.1qh8s8')}}</text>
</view>
</view>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view class="padding-horizontal-main goods-comment">
<!-- 评价 -->
<component-goods-comments :propData="data_list" :propIsReply="true" propClass="bg-white padding-main border-radius-main"></component-goods-comments>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
</scroll-view>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
import componentGoodsComments from "@/pages/goods-detail/components/goods-comments/goods-comments";
var static_url = app.globalData.get_static_url("home");
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
static_url: static_url,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
data_list: [],
data_page_total: 0,
data_page: 1,
goods_score: null,
params: null,
theme_color: app.globalData.get_theme_color(),
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentGoodsComments,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 格式化评分数据(小程序模板不支持直接调用 methods
format_goods_score(data) {
if (data == null || (data.rating || null) == null) {
return data;
}
var color = this.theme_color || '#ff0036';
var intensities = [0.22, 0.38, 0.54, 0.72, 0.9];
var rating = [];
for (var i = 0; i < data.rating.length; i++) {
var item = data.rating[i];
var intensity = intensities[i] || 0.5;
var start = this.color_rgba(color, intensity * 0.72);
var end = this.color_rgba(color, Math.min(intensity * 1.18, 1));
var text_class = i >= 3 ? 'progress-bar-text-light' : 'cr-main';
rating.push({
rating: item.rating,
name: item.name,
count: item.count,
portion: item.portion,
bar_class: 'progress-bar ' + text_class,
bar_style: 'width:' + item.portion + '%;background:linear-gradient(90deg,' + start + ',' + end + ');',
});
}
return {
avg: data.avg,
rate: data.rate,
rating: rating,
};
},
// 颜色转 rgba
color_rgba(color, alpha) {
var hex = (color || '#ff0036').replace('#', '');
if (hex.length === 3) {
hex = hex.split('').map(function(c) {
return c + c;
}).join('');
}
var r = parseInt(hex.substring(0, 2), 16);
var g = parseInt(hex.substring(2, 4), 16);
var b = parseInt(hex.substring(4, 6), 16);
return 'rgba(' + r + ',' + g + ',' + b + ',' + alpha + ')';
},
// 初始化
init() {
// 获取数据
this.get_goods_score();
this.get_data_list();
},
// 获取商品评分
get_goods_score() {
uni.request({
url: app.globalData.get_request_url("goodsscore", "goods"),
method: "POST",
data: {
goods_id: this.params.goods_id,
},
dataType: "json",
success: (res) => {
if (res.data.code == 0) {
this.setData({
goods_score: this.format_goods_score(res.data.data || null),
});
} else {
if (res.data.code != -400) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 参数校验
if ((this.params.goods_id || null) == null) {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
});
} else {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
});
uni.request({
url: app.globalData.get_request_url("comments", "goods"),
method: "POST",
data: {
goods_id: this.params.goods_id,
page: this.data_page,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 评价图片预览
comment_images_show_event(e) {
var index = e.currentTarget.dataset.index;
var ix = e.currentTarget.dataset.ix;
uni.previewImage({
current: this.data_list[index]["images"][ix],
urls: this.data_list[index]["images"],
});
},
},
};
</script>
<style>
@import "./goods-comment.css";
</style>
<template>
<view :class="theme_view">
<!-- 提示信息 -->
<block v-if="data_list_loding_status == 1">
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</block>
<block v-else>
<!-- 评分 -->
<view v-if="goods_score != null" class="score-container oh padding-main">
<view class="bg-white border-radius-main padding-main flex-row jc-sb align-c">
<view class="score tc">
<view class="cr-base">{{$t('goods-comment.goods-comment.dfmjxd')}}</view>
<view class="value cr-main">{{ goods_score.avg || "0.0" }}</view>
</view>
<view class="progress tc border-radius-main flex-1 flex-width flex-row">
<block v-if="goods_score.avg > 0">
<block v-for="(item, index) in goods_score.rating" :key="index">
<view v-if="item.portion > 0" :class="item.bar_class" :style="item.bar_style">{{ item.name }}</view>
</block>
</block>
<text v-else class="cr-grey">{{$t('goods-comment.goods-comment.1qh8s8')}}</text>
</view>
</view>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view class="padding-horizontal-main goods-comment">
<!-- 评价 -->
<component-goods-comments :propData="data_list" :propIsReply="true" propClass="bg-white padding-main border-radius-main"></component-goods-comments>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
</scroll-view>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
import componentGoodsComments from "@/pages/goods-detail/components/goods-comments/goods-comments";
var static_url = app.globalData.get_static_url("home");
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
static_url: static_url,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
data_list: [],
data_page_total: 0,
data_page: 1,
goods_score: null,
params: null,
theme_color: app.globalData.get_theme_color(),
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentGoodsComments,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 格式化评分数据(小程序模板不支持直接调用 methods
format_goods_score(data) {
if (data == null || (data.rating || null) == null) {
return data;
}
var color = this.theme_color || '#ff0036';
var intensities = [0.22, 0.38, 0.54, 0.72, 0.9];
var rating = [];
for (var i = 0; i < data.rating.length; i++) {
var item = data.rating[i];
var intensity = intensities[i] || 0.5;
var start = this.color_rgba(color, intensity * 0.72);
var end = this.color_rgba(color, Math.min(intensity * 1.18, 1));
var text_class = i >= 3 ? 'progress-bar-text-light' : 'cr-main';
rating.push({
rating: item.rating,
name: item.name,
count: item.count,
portion: item.portion,
bar_class: 'progress-bar ' + text_class,
bar_style: 'width:' + item.portion + '%;background:linear-gradient(90deg,' + start + ',' + end + ');',
});
}
return {
avg: data.avg,
rate: data.rate,
rating: rating,
};
},
// 颜色转 rgba
color_rgba(color, alpha) {
var hex = (color || '#ff0036').replace('#', '');
if (hex.length === 3) {
hex = hex.split('').map(function(c) {
return c + c;
}).join('');
}
var r = parseInt(hex.substring(0, 2), 16);
var g = parseInt(hex.substring(2, 4), 16);
var b = parseInt(hex.substring(4, 6), 16);
return 'rgba(' + r + ',' + g + ',' + b + ',' + alpha + ')';
},
// 初始化
init() {
// 获取数据
this.get_goods_score();
this.get_data_list();
},
// 获取商品评分
get_goods_score() {
uni.request({
url: app.globalData.get_request_url("goodsscore", "goods"),
method: "POST",
data: {
goods_id: this.params.goods_id,
},
dataType: "json",
success: (res) => {
if (res.data.code == 0) {
this.setData({
goods_score: this.format_goods_score(res.data.data || null),
});
} else {
if (res.data.code != -400) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 参数校验
if ((this.params.goods_id || null) == null) {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
});
} else {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
});
uni.request({
url: app.globalData.get_request_url("comments", "goods"),
method: "POST",
data: {
goods_id: this.params.goods_id,
page: this.data_page,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 评价图片预览
comment_images_show_event(e) {
var index = e.currentTarget.dataset.index;
var ix = e.currentTarget.dataset.ix;
uni.previewImage({
current: this.data_list[index]["images"][ix],
urls: this.data_list[index]["images"],
});
},
},
};
</script>
<style>
@import "./goods-comment.css";
</style>

View File

@ -1047,11 +1047,11 @@
},
onLoad(params) {
// 设置参数
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
params = app.globalData.launch_params_handle(params);
this.setData({
params: params,
// 是否自定义购买事件

View File

@ -106,11 +106,11 @@
},
onLoad(params) {
// 设置参数
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
params = app.globalData.launch_params_handle(params);
this.setData({
params: params,
search_placeholder_keywords_value: params.keywords || '',

File diff suppressed because it is too large Load Diff

View File

@ -478,6 +478,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -468,6 +468,9 @@
// 页面加载初始化
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -46,6 +46,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -1,161 +1,164 @@
<template>
<view :class="theme_view">
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="padding-main border-radius-main bg-white oh spacing-mb">
<view class="oh">
<text class="fw-b">{{item.title}}</text>
<text class="fr cr-base">{{item.add_time_time}}</text>
</view>
<template>
<view :class="theme_view">
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="padding-main border-radius-main bg-white oh spacing-mb">
<view class="oh">
<text class="fw-b">{{item.title}}</text>
<text class="fr cr-base">{{item.add_time_time}}</text>
</view>
<view class="web-html-content cr-grey margin-top-lg">
<mp-html :content="item.detail" />
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if(this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "message"),
method: 'POST',
data: {
page: this.data_page
},
dataType: 'json',
success: res => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if(this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "message"),
method: 'POST',
data: {
page: this.data_page
},
dataType: 'json',
success: res => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
@ -165,38 +168,38 @@
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0
});
if (app.globalData.is_login_check(res.data, this, 'get_data_list')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
}
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
}
}
};
</script>
<style>
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0
});
if (app.globalData.is_login_check(res.data, this, 'get_data_list')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
}
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
}
}
};
</script>
<style>
</style>

View File

@ -58,6 +58,9 @@
componentNoData
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -1,5 +1,5 @@
<template>
<view :class="theme_view">
<template>
<view :class="theme_view">
<block v-if="data_list.length > 0">
<!-- 列表 -->
<view class="padding-main">
@ -12,122 +12,125 @@
</view>
</block>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_list: []
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("detail", "paylog"),
method: "POST",
data: this.params,
dataType: "json",
success: (res) => {
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_list: []
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("detail", "paylog"),
method: "POST",
data: this.params,
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
var data = res.data.data || [];
var data = res.data.data || [];
if (res.data.code == 0) {
if(data.length == 1) {
setTimeout(function() {
app.globalData.url_open(data[0]['url'], true);
}, 500);
} else {
this.setData({
data_list: data,
data_list_loding_status: data.length == 0 ? 0 : 3,
data_bottom_line_status: data.length == 0 ? false : true,
data_list_loding_msg: "",
} else {
this.setData({
data_list: data,
data_list_loding_status: data.length == 0 ? 0 : 3,
data_bottom_line_status: data.length == 0 ? false : true,
data_list_loding_msg: "",
});
}
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
app.globalData.is_login_check(res.data, this, "init");
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
}
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
app.globalData.is_login_check(res.data, this, "init");
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
}
},
};
</script>

View File

@ -1,5 +1,5 @@
<template>
<view :class="theme_view">
<template>
<view :class="theme_view">
<block v-if="data_list.length > 0">
<!-- 列表 -->
<view class="padding-main">
@ -13,122 +13,125 @@
</view>
</block>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_list: []
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("index", "paylog"),
method: "POST",
data: this.params,
dataType: "json",
success: (res) => {
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_list: []
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("index", "paylog"),
method: "POST",
data: this.params,
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
var data = res.data.data || [];
var data = res.data.data || [];
if (res.data.code == 0) {
if(data.length == 1) {
setTimeout(function() {
app.globalData.url_open(data[0]['url'], true);
}, 500);
} else {
this.setData({
data_list: data,
data_list_loding_status: data.length == 0 ? 0 : 3,
data_bottom_line_status: data.length == 0 ? false : true,
data_list_loding_msg: "",
} else {
this.setData({
data_list: data,
data_list_loding_status: data.length == 0 ? 0 : 3,
data_bottom_line_status: data.length == 0 ? false : true,
data_list_loding_msg: "",
});
}
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
app.globalData.is_login_check(res.data, this, "init");
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
}
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
app.globalData.is_login_check(res.data, this, "init");
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
}
},
};
</script>

View File

@ -1,120 +1,123 @@
<template>
<view :class="theme_view">
<view class="content tc">
<image class="pay-icon dis-block" v-if="params.code == '9000'" mode="widthFix" :src="default_round_success_icon"></image>
<image class="pay-icon dis-block" v-else mode="widthFix" :src="default_round_error_icon"></image>
<view class="text-size-lg cr-base">{{ params.msg || $t('common.pay_success') }}</view>
</view>
<view class="btn-box tc">
<view>
<button class="bg-main br-main cr-white round" type="default" hover-class="none" size="mini" @tap="back_event">{{$t('common.return')}}</button>
</view>
<view class="margin-top-lg">
<button class="bg-main-pair br-main-pair cr-white round" type="default" hover-class="none" size="mini" data-redirect="1" :data-value="default_to_url" @tap="url_event">{{ params.title || $t('common.back_home') }}</button>
</view>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import base64 from '@/common/js/lib/base64.js';
import componentCommon from '@/components/common/common';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: {},
default_round_success_icon: app.globalData.data.default_round_success_icon,
default_round_error_icon: app.globalData.data.default_round_error_icon,
default_to_url: '',
};
},
components: {
componentCommon
},
/**
* 页面加载初始化
*/
onLoad(params) {
// 参数处理
if((params || null) != null) {
params = JSON.parse(base64.decode(decodeURIComponent(params.params)));
}
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 根据状态处理
var msg = null;
switch (params.code) {
// 支付成功
case '9000':
msg = this.$t('common.pay_success');
break;
// 正在处理中
case '8000':
msg = this.$t('paytips.paytips.d8m853');
break;
// 支付失败
case '4000':
msg = this.$t('paytips.paytips.6y488i');
break;
// 用户中途取消
case '6001':
msg = this.$t('paytips.paytips.e732we');
break;
// 网络连接出错
case '6002':
msg = this.$t('paytips.paytips.13v11t');
break;
// 支付结果未知(有可能已经支付成功),请查询商户订单列表中订单的支付状态
case '6004':
msg = this.$t('paytips.paytips.u1153p');
break;
// 用户点击忘记密码导致快捷界面退出(only iOS)
case '99':
msg = this.$t('paytips.paytips.6mpsl7');
break;
// 默认错误
default:
msg = this.$t('paytips.paytips.59u769');
}
params['msg'] = msg;
this.setData({
params: params,
default_to_url: params.page || app.globalData.app_tabbar_pages()[0],
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
methods: {
// 返回
back_event(e) {
app.globalData.page_back_prev_event();
},
// url事件
url_event(e) {
app.globalData.url_event(e);
},
},
};
</script>
<style>
@import './paytips.css';
</style>
<template>
<view :class="theme_view">
<view class="content tc">
<image class="pay-icon dis-block" v-if="params.code == '9000'" mode="widthFix" :src="default_round_success_icon"></image>
<image class="pay-icon dis-block" v-else mode="widthFix" :src="default_round_error_icon"></image>
<view class="text-size-lg cr-base">{{ params.msg || $t('common.pay_success') }}</view>
</view>
<view class="btn-box tc">
<view>
<button class="bg-main br-main cr-white round" type="default" hover-class="none" size="mini" @tap="back_event">{{$t('common.return')}}</button>
</view>
<view class="margin-top-lg">
<button class="bg-main-pair br-main-pair cr-white round" type="default" hover-class="none" size="mini" data-redirect="1" :data-value="default_to_url" @tap="url_event">{{ params.title || $t('common.back_home') }}</button>
</view>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import base64 from '@/common/js/lib/base64.js';
import componentCommon from '@/components/common/common';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: {},
default_round_success_icon: app.globalData.data.default_round_success_icon,
default_round_error_icon: app.globalData.data.default_round_error_icon,
default_to_url: '',
};
},
components: {
componentCommon
},
/**
* 页面加载初始化
*/
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 参数处理
if((params || null) != null) {
params = JSON.parse(base64.decode(decodeURIComponent(params.params)));
}
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 根据状态处理
var msg = null;
switch (params.code) {
// 支付成功
case '9000':
msg = this.$t('common.pay_success');
break;
// 正在处理中
case '8000':
msg = this.$t('paytips.paytips.d8m853');
break;
// 支付失败
case '4000':
msg = this.$t('paytips.paytips.6y488i');
break;
// 用户中途取消
case '6001':
msg = this.$t('paytips.paytips.e732we');
break;
// 网络连接出错
case '6002':
msg = this.$t('paytips.paytips.13v11t');
break;
// 支付结果未知(有可能已经支付成功),请查询商户订单列表中订单的支付状态
case '6004':
msg = this.$t('paytips.paytips.u1153p');
break;
// 用户点击忘记密码导致快捷界面退出(only iOS)
case '99':
msg = this.$t('paytips.paytips.6mpsl7');
break;
// 默认错误
default:
msg = this.$t('paytips.paytips.59u769');
}
params['msg'] = msg;
this.setData({
params: params,
default_to_url: params.page || app.globalData.app_tabbar_pages()[0],
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
methods: {
// 返回
back_event(e) {
app.globalData.page_back_prev_event();
},
// url事件
url_event(e) {
app.globalData.url_event(e);
},
},
};
</script>
<style>
@import './paytips.css';
</style>

View File

@ -93,6 +93,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -1,193 +1,196 @@
<template>
<view :class="theme_view">
<view v-if="(data || null) != null">
<view class="padding-horizontal-main padding-top-main">
<!-- 基础信息 -->
<view class="base-container tc pr padding-main border-radius-main bg-main oh spacing-mb" :style="'background-color:' + data.color + ' !important;background-image:url(' + (data.banner || data.cover) + ')'">
<view v-if="(data.describe || null) != null" class="text cr-white pa bs-bb text-size wh-auto ht-auto">{{ data.describe }}</view>
</view>
<!-- 关键字 -->
<view v-if="data.keywords_arr.length > 0" class="word-content scroll-view-horizontal margin-bottom-sm">
<scroll-view scroll-x>
<block v-for="(kv, ki) in data.keywords_arr" :key="ki">
<text :data-value="'/pages/goods-search/goods-search?keywords=' + kv" @tap="url_event" class="word-icon dis-inline-block bg-main-light text-size-xs cr-main round padding-top-xs padding-bottom-xs padding-left padding-right cp">{{ kv }}</text>
</block>
</scroll-view>
</view>
<!-- 推荐商品 -->
<view v-if="(data.goods_list || null) != null && data.goods_list.length > 0">
<view class="spacing-nav-title flex-row align-c jc-sb text-size-xs">
<view class="title-left">
<text class="text-wrapper title-left-border">{{$t('detail.detail.b4f3nw')}}</text>
<text class="vice-name margin-left-lg cr-grey">{{ data.vice_title }}</text>
</view>
<text data-value="/pages/plugins/activity/index/index" @tap="url_event" class="arrow-right padding-right cr-grey cp">{{$t('detail.detail.ans2p4')}}</text>
</view>
<component-goods-list :propData="{ style_type: 1, goods_list: data.goods_list }" :propCurrencySymbol="currency_symbol"></component-goods-list>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data propStatus="0" :propMsg="$t('detail.detail.5knxg6')"></component-no-data>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentGoodsList from '@/components/goods-list/goods-list';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
currency_symbol: app.globalData.currency_symbol(),
params: null,
user: null,
data_base: null,
data: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentGoodsList,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 初始化配置
this.init_config();
// 获取数据
this.get_data();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 初始化配置
init_config(status) {
if ((status || false) == true) {
this.setData({
currency_symbol: app.globalData.get_config('currency_symbol'),
});
} else {
app.globalData.is_config(this, 'init_config');
}
},
// 获取数据
get_data() {
uni.request({
url: app.globalData.get_request_url('detail', 'index', 'activity'),
method: 'POST',
data: {
id: this.params.id || 0,
},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
data: data.data || null,
data_list_loding_msg: '',
data_list_loding_status: 0,
data_bottom_line_status: (data.data || null) != null && (data.data.goods_list || null) != null && data.data.goods_list.length > 0,
});
if ((this.data || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.title,
desc: this.data.seo_desc || this.data.describe,
path: '/pages/plugins/activity/detail/detail',
<template>
<view :class="theme_view">
<view v-if="(data || null) != null">
<view class="padding-horizontal-main padding-top-main">
<!-- 基础信息 -->
<view class="base-container tc pr padding-main border-radius-main bg-main oh spacing-mb" :style="'background-color:' + data.color + ' !important;background-image:url(' + (data.banner || data.cover) + ')'">
<view v-if="(data.describe || null) != null" class="text cr-white pa bs-bb text-size wh-auto ht-auto">{{ data.describe }}</view>
</view>
<!-- 关键字 -->
<view v-if="data.keywords_arr.length > 0" class="word-content scroll-view-horizontal margin-bottom-sm">
<scroll-view scroll-x>
<block v-for="(kv, ki) in data.keywords_arr" :key="ki">
<text :data-value="'/pages/goods-search/goods-search?keywords=' + kv" @tap="url_event" class="word-icon dis-inline-block bg-main-light text-size-xs cr-main round padding-top-xs padding-bottom-xs padding-left padding-right cp">{{ kv }}</text>
</block>
</scroll-view>
</view>
<!-- 推荐商品 -->
<view v-if="(data.goods_list || null) != null && data.goods_list.length > 0">
<view class="spacing-nav-title flex-row align-c jc-sb text-size-xs">
<view class="title-left">
<text class="text-wrapper title-left-border">{{$t('detail.detail.b4f3nw')}}</text>
<text class="vice-name margin-left-lg cr-grey">{{ data.vice_title }}</text>
</view>
<text data-value="/pages/plugins/activity/index/index" @tap="url_event" class="arrow-right padding-right cr-grey cp">{{$t('detail.detail.ans2p4')}}</text>
</view>
<component-goods-list :propData="{ style_type: 1, goods_list: data.goods_list }" :propCurrencySymbol="currency_symbol"></component-goods-list>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data propStatus="0" :propMsg="$t('detail.detail.5knxg6')"></component-no-data>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentGoodsList from '@/components/goods-list/goods-list';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
currency_symbol: app.globalData.currency_symbol(),
params: null,
user: null,
data_base: null,
data: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentGoodsList,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 初始化配置
this.init_config();
// 获取数据
this.get_data();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 初始化配置
init_config(status) {
if ((status || false) == true) {
this.setData({
currency_symbol: app.globalData.get_config('currency_symbol'),
});
} else {
app.globalData.is_config(this, 'init_config');
}
},
// 获取数据
get_data() {
uni.request({
url: app.globalData.get_request_url('detail', 'index', 'activity'),
method: 'POST',
data: {
id: this.params.id || 0,
},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
data: data.data || null,
data_list_loding_msg: '',
data_list_loding_status: 0,
data_bottom_line_status: (data.data || null) != null && (data.data.goods_list || null) != null && data.data.goods_list.length > 0,
});
if ((this.data || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.title,
desc: this.data.seo_desc || this.data.describe,
path: '/pages/plugins/activity/detail/detail',
query: 'id=' + this.data.id,
img: this.data.share_images || this.data.cover,
},
});
// 标题
if ((this.data.title || null) != null) {
uni.setNavigationBarTitle({
title: this.data.title,
});
}
}
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import './detail.css';
</style>
img: this.data.share_images || this.data.cover,
},
});
// 标题
if ((this.data.title || null) != null) {
uni.setNavigationBarTitle({
title: this.data.title,
});
}
}
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import './detail.css';
</style>

View File

@ -1,287 +1,290 @@
<template>
<view :class="theme_view">
<!-- 轮播 -->
<view v-if="slider_list.length > 0" class="padding-horizontal-main padding-top-main">
<component-banner :propData="slider_list" propSize="mini"></component-banner>
</view>
<!-- 分类 -->
<scroll-view v-if="(activity_category || null) != null && activity_category.length > 0" class="scroll-view-horizontal bg-white oh" scroll-x="true">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main padding-top-main padding-bottom-sm ' + (nav_active_value == 0 ? 'cr-main nav-active-line bg-main-befor fw-b' : '')" @tap="nav_event" data-value="0">{{$t('common.all')}}</view>
<block v-for="(item, index) in activity_category" :key="index">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main padding-top-main padding-bottom-sm ' + (nav_active_value == item.id ? 'cr-main nav-active-line bg-main-befor fw-b' : '')" @tap="nav_event" :data-value="item.id">{{ item.name }}</view>
</block>
</scroll-view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="30" :style="slider_list.length > 0 ? 'height:calc(100vh - 320rpx);' : ''">
<view v-if="(data_list || null) != null && data_list.length > 0" class="data-list padding-horizontal-main padding-top-main oh">
<block v-for="(item, index) in data_list" :key="index">
<view :data-value="'/pages/plugins/activity/detail/detail?id=' + item.id" @tap="url_event" class="item oh cp spacing-mb">
<image :src="item.cover" mode="widthFix" class="wh-auto border-radius-main"></image>
</view>
</block>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentBanner from '@/components/slider/slider';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_is_loading: 0,
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
params: null,
data_base: null,
slider_list: [],
activity_category: [],
nav_active_value: 0,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentBanner,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url('index', 'index', 'activity'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
slider_list: data.slider_list || [],
activity_category: data.activity_category || [],
});
if ((this.data_base || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data_base.seo_title || this.data_base.application_name,
desc: this.data_base.seo_desc,
path: '/pages/plugins/activity/index/index',
},
});
// 标题
if ((this.data_base.application_name || null) != null) {
uni.setNavigationBarTitle({
title: this.data_base.application_name,
});
}
}
// 获取列表数据
this.get_data_list(1);
} else {
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url('datalist', 'index', 'activity'),
method: 'POST',
data: {
page: this.data_page,
category_id: this.nav_active_value || 0,
},
dataType: 'json',
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
data_is_loading: 0,
});
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_active_value: e.currentTarget.dataset.value || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import './index.css';
<template>
<view :class="theme_view">
<!-- 轮播 -->
<view v-if="slider_list.length > 0" class="padding-horizontal-main padding-top-main">
<component-banner :propData="slider_list" propSize="mini"></component-banner>
</view>
<!-- 分类 -->
<scroll-view v-if="(activity_category || null) != null && activity_category.length > 0" class="scroll-view-horizontal bg-white oh" scroll-x="true">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main padding-top-main padding-bottom-sm ' + (nav_active_value == 0 ? 'cr-main nav-active-line bg-main-befor fw-b' : '')" @tap="nav_event" data-value="0">{{$t('common.all')}}</view>
<block v-for="(item, index) in activity_category" :key="index">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main padding-top-main padding-bottom-sm ' + (nav_active_value == item.id ? 'cr-main nav-active-line bg-main-befor fw-b' : '')" @tap="nav_event" :data-value="item.id">{{ item.name }}</view>
</block>
</scroll-view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="30" :style="slider_list.length > 0 ? 'height:calc(100vh - 320rpx);' : ''">
<view v-if="(data_list || null) != null && data_list.length > 0" class="data-list padding-horizontal-main padding-top-main oh">
<block v-for="(item, index) in data_list" :key="index">
<view :data-value="'/pages/plugins/activity/detail/detail?id=' + item.id" @tap="url_event" class="item oh cp spacing-mb">
<image :src="item.cover" mode="widthFix" class="wh-auto border-radius-main"></image>
</view>
</block>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentBanner from '@/components/slider/slider';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_is_loading: 0,
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
params: null,
data_base: null,
slider_list: [],
activity_category: [],
nav_active_value: 0,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentBanner,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url('index', 'index', 'activity'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
slider_list: data.slider_list || [],
activity_category: data.activity_category || [],
});
if ((this.data_base || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data_base.seo_title || this.data_base.application_name,
desc: this.data_base.seo_desc,
path: '/pages/plugins/activity/index/index',
},
});
// 标题
if ((this.data_base.application_name || null) != null) {
uni.setNavigationBarTitle({
title: this.data_base.application_name,
});
}
}
// 获取列表数据
this.get_data_list(1);
} else {
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url('datalist', 'index', 'activity'),
method: 'POST',
data: {
page: this.data_page,
category_id: this.nav_active_value || 0,
},
dataType: 'json',
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
data_is_loading: 0,
});
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_active_value: e.currentTarget.dataset.value || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import './index.css';
</style>

View File

@ -73,12 +73,15 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
params: params,
});
},

View File

@ -1,129 +1,132 @@
<template>
<view :class="theme_view">
<view v-if="(data || null) != null" class="padding-main bg-white">
<!-- 评论内容 -->
<component-ask-comments :propData="data" :propDataBase="data_base" :propEmojiList="emoji_list" propType="comments"></component-ask-comments>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentAskComments from '../components/ask-comments/ask-comments';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
params: null,
data_base: null,
data: null,
emoji_list: [],
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentAskComments,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
methods: {
// 初始化
get_data() {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
uni.request({
url: app.globalData.get_request_url('commentsinfo', 'index', 'ask'),
method: 'POST',
data: {
id: this.params.id || 0,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
var data = res.data.data;
if (res.data.code == 0 && (data.data || null) != null) {
var ask = data.data;
this.setData({
data_bottom_line_status: true,
data_list_loding_status: 3,
data_base: data.base || null,
data: ask,
emoji_list: data.emoji_list || [],
});
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.title,
desc: this.data.seo_desc || this.data.describe,
path: '/pages/plugins/ask/detail/detail',
query: 'id=' + this.data.id,
img: this.data.cover,
},
});
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.hideLoading();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style></style>
<template>
<view :class="theme_view">
<view v-if="(data || null) != null" class="padding-main bg-white">
<!-- 评论内容 -->
<component-ask-comments :propData="data" :propDataBase="data_base" :propEmojiList="emoji_list" propType="comments"></component-ask-comments>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentAskComments from '../components/ask-comments/ask-comments';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
params: null,
data_base: null,
data: null,
emoji_list: [],
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentAskComments,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
methods: {
// 初始化
get_data() {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
uni.request({
url: app.globalData.get_request_url('commentsinfo', 'index', 'ask'),
method: 'POST',
data: {
id: this.params.id || 0,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
var data = res.data.data;
if (res.data.code == 0 && (data.data || null) != null) {
var ask = data.data;
this.setData({
data_bottom_line_status: true,
data_list_loding_status: 3,
data_base: data.base || null,
data: ask,
emoji_list: data.emoji_list || [],
});
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.title,
desc: this.data.seo_desc || this.data.describe,
path: '/pages/plugins/ask/detail/detail',
query: 'id=' + this.data.id,
img: this.data.cover,
},
});
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.hideLoading();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style></style>

View File

@ -129,14 +129,16 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
params: params,
});
// 获取数据
this.get_data();
},

View File

@ -97,6 +97,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -93,6 +93,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -125,12 +125,12 @@
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,

View File

@ -51,6 +51,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -64,6 +64,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -165,11 +165,11 @@
componentSharePopup,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params || {});
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 参数处理
params = app.globalData.launch_params_handle(params || {});
this.setData({
params: params || {},
});

View File

@ -77,6 +77,9 @@
componentBargainPlayRules,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -127,12 +127,12 @@
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 参数处理
params = app.globalData.launch_params_handle(params || {});
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
this.setData({
params: params || {},
search_keywords: params.order_no || params.keywords || '',

View File

@ -199,8 +199,12 @@
componentCountdown,
},
onLoad(params) {
app.globalData.page_event_onload_handle(params);
// 参数处理
params = app.globalData.launch_params_handle(params || {});
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
this.setData({ params: params || {} });
},
onShow() {

View File

@ -139,12 +139,15 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
params: params,
});
},

View File

@ -1,284 +1,287 @@
<template>
<view :class="theme_view">
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view :class="'padding-main ' + ((shop || null) != null ? 'page-bottom-fixed' : '')">
<block v-if="(data_list || null) != null && data_list.length > 0">
<!-- 组合搭配组件 -->
<component-binding-list :propConfig="data_base" :propData="{data: data_list}" :propCurrencySymbol="currency_symbol"></component-binding-list>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<!-- 回到店铺 -->
<view v-if="(shop || null) != null" class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<button class="item bg-white cr-main br-main round dis-block text-size" type="default" hover-class="none" @tap="shop_event" :data-value="shop.url">{{$t('index.index.i78v36')}}</button>
</view>
</view>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentBindingList from '@/pages/plugins/binding/components/binding-list/binding-list';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_is_loading: 0,
currency_symbol: app.globalData.currency_symbol(),
bottom_fixed_style: '',
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
params: null,
data_base: null,
shop: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentBindingList,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 初始化配置
this.init_config();
// 获取数据
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 初始化配置
init_config(status) {
if ((status || false) == true) {
this.setData({
currency_symbol: app.globalData.get_config('currency_symbol'),
});
} else {
app.globalData.is_config(this, 'init_config');
}
},
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url('index', 'index', 'binding'),
method: 'POST',
data: this.params,
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
shop: data.shop || null,
});
if ((this.data_base || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data_base.seo_title || this.data_base.application_name,
desc: this.data_base.seo_desc,
path: '/pages/plugins/binding/index/index',
},
});
// 导航名称
if ((this.data_base.application_name || null) != null) {
uni.setNavigationBarTitle({
title: this.data_base.application_name,
});
}
}
// 获取列表数据
this.get_data_list(1);
} else {
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({ data_is_loading: 1 });
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url('datalist', 'index', 'binding'),
method: 'POST',
data: {
page: this.data_page,
shop_id: this.params.shop_id || 0,
},
dataType: 'json',
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
data_is_loading: 0,
});
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
data_is_loading: 0,
});
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 店铺事件
shop_event(e) {
var prev_url = app.globalData.prev_page();
if (prev_url != null && prev_url.indexOf('pages/plugins/shop/detail/detail') != -1) {
uni.navigateBack();
} else {
app.globalData.url_event(e);
}
},
},
};
</script>
<style>
@import './index.css';
</style>
<template>
<view :class="theme_view">
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view :class="'padding-main ' + ((shop || null) != null ? 'page-bottom-fixed' : '')">
<block v-if="(data_list || null) != null && data_list.length > 0">
<!-- 组合搭配组件 -->
<component-binding-list :propConfig="data_base" :propData="{data: data_list}" :propCurrencySymbol="currency_symbol"></component-binding-list>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<!-- 回到店铺 -->
<view v-if="(shop || null) != null" class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<button class="item bg-white cr-main br-main round dis-block text-size" type="default" hover-class="none" @tap="shop_event" :data-value="shop.url">{{$t('index.index.i78v36')}}</button>
</view>
</view>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentBindingList from '@/pages/plugins/binding/components/binding-list/binding-list';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_is_loading: 0,
currency_symbol: app.globalData.currency_symbol(),
bottom_fixed_style: '',
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
params: null,
data_base: null,
shop: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentBindingList,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 初始化配置
this.init_config();
// 获取数据
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 初始化配置
init_config(status) {
if ((status || false) == true) {
this.setData({
currency_symbol: app.globalData.get_config('currency_symbol'),
});
} else {
app.globalData.is_config(this, 'init_config');
}
},
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url('index', 'index', 'binding'),
method: 'POST',
data: this.params,
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
shop: data.shop || null,
});
if ((this.data_base || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data_base.seo_title || this.data_base.application_name,
desc: this.data_base.seo_desc,
path: '/pages/plugins/binding/index/index',
},
});
// 导航名称
if ((this.data_base.application_name || null) != null) {
uni.setNavigationBarTitle({
title: this.data_base.application_name,
});
}
}
// 获取列表数据
this.get_data_list(1);
} else {
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({ data_is_loading: 1 });
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url('datalist', 'index', 'binding'),
method: 'POST',
data: {
page: this.data_page,
shop_id: this.params.shop_id || 0,
},
dataType: 'json',
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
data_is_loading: 0,
});
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
data_is_loading: 0,
});
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 店铺事件
shop_event(e) {
var prev_url = app.globalData.prev_page();
if (prev_url != null && prev_url.indexOf('pages/plugins/shop/detail/detail') != -1) {
uni.navigateBack();
} else {
app.globalData.url_event(e);
}
},
},
};
</script>
<style>
@import './index.css';
</style>

View File

@ -1,129 +1,132 @@
<template>
<view :class="theme_view">
<view v-if="(data || null) != null" class="padding-main bg-white">
<!-- 评论内容 -->
<component-blog-comments :propData="data" :propDataBase="data_base" :propEmojiList="emoji_list" propType="comments"></component-blog-comments>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentBlogComments from '../components/blog-comments/blog-comments';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
params: null,
data_base: null,
data: null,
emoji_list: [],
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentBlogComments,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
methods: {
// 初始化
get_data() {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
uni.request({
url: app.globalData.get_request_url('commentsinfo', 'index', 'blog'),
method: 'POST',
data: {
id: this.params.id || 0,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
var data = res.data.data;
if (res.data.code == 0 && (data.data || null) != null) {
var blog = data.data;
this.setData({
data_bottom_line_status: true,
data_list_loding_status: 3,
data_base: data.base || null,
data: blog,
emoji_list: data.emoji_list || [],
});
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.title,
desc: this.data.seo_desc || this.data.describe,
path: '/pages/plugins/blog/detail/detail',
query: 'id=' + this.data.id,
img: this.data.cover,
},
});
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.hideLoading();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style></style>
<template>
<view :class="theme_view">
<view v-if="(data || null) != null" class="padding-main bg-white">
<!-- 评论内容 -->
<component-blog-comments :propData="data" :propDataBase="data_base" :propEmojiList="emoji_list" propType="comments"></component-blog-comments>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentBlogComments from '../components/blog-comments/blog-comments';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
params: null,
data_base: null,
data: null,
emoji_list: [],
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentBlogComments,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
methods: {
// 初始化
get_data() {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
uni.request({
url: app.globalData.get_request_url('commentsinfo', 'index', 'blog'),
method: 'POST',
data: {
id: this.params.id || 0,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
var data = res.data.data;
if (res.data.code == 0 && (data.data || null) != null) {
var blog = data.data;
this.setData({
data_bottom_line_status: true,
data_list_loding_status: 3,
data_base: data.base || null,
data: blog,
emoji_list: data.emoji_list || [],
});
// 基础自定义分享
this.setData({
share_info: {
title: this.data.seo_title || this.data.title,
desc: this.data.seo_desc || this.data.describe,
path: '/pages/plugins/blog/detail/detail',
query: 'id=' + this.data.id,
img: this.data.cover,
},
});
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.hideLoading();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style></style>

View File

@ -1,242 +1,244 @@
<template>
<view :class="theme_view">
<view v-if="(info || null) != null" :class="(data_base || null) != null && (data_base.is_user_add_blog || 0) == 1 ? 'page-bottom-fixed' : ''">
<view class="padding-main bg-white spacing-mb">
<view class="spacing-mb">
<view class="fw-b text-size-xl">{{ info.title }}</view>
<view class="cr-grey-9 margin-top-lg oh br-t padding-top-main text-size-xs">
<view class="fl">
<text>{{ $t('article-detail.article-detail.728374') }}</text>
<text>{{ info.add_time }}</text>
</view>
<view class="fr">
<text class="margin-left-xxxl">{{ $t('article-detail.article-detail.j92ru0') }}</text>
<text>{{ info.access_count }}</text>
</view>
</view>
</view>
<view class="oh web-html-content spacing-mb">
<view v-if="(info.video_url || null) != null && ((info.is_live_play || 0) == 0 || client_type == 'weixin')">
<video :src="info.video_url" class="wh-auto" :autoplay="false" :controls="true"></video>
</view>
<mp-html :content="info.content" />
</view>
<!-- 评论内容 -->
<component-blog-comments :propData="info" :propDataBase="data_base" :propEmojiList="emoji_list" :propShareInfo="share_info"></component-blog-comments>
</view>
<view class="padding-horizontal-main">
<!-- 上一篇下一篇 -->
<view v-if="(last_next || null) != null" class="last-next-data spacing-mt margin-bottom-xxxl cr-grey-9">
<view v-if="(last_next.last || null) != null" class="flex-row">
<text>{{ $t('article-detail.article-detail.281s4a') }}</text>
<text :data-value="last_next.last.url" @tap="url_event" class="dis-inline-block flex-row flex-width single-text cp item">{{ last_next.last.title }}</text>
</view>
<view v-if="(last_next.next || null) != null" class="margin-top flex-row cr-main">
<text>{{ $t('article-detail.article-detail.uq5814') }}</text>
<text :data-value="last_next.next.url" @tap="url_event" class="dis-inline-block flex-row flex-width single-text cp item">{{ last_next.next.title }}</text>
</view>
</view>
<!-- 推荐博文 -->
<view v-if="right_list.length > 0" class="plugins-blog-list">
<view class="spacing-nav-title flex-row align-c jc-sb text-size-xs">
<text class="text-wrapper title-left-border single-text flex-1 flex-width padding-right-main">{{ $t('detail.detail.455787') }}{{ blog_main_name }}</text>
<text data-value="/pages/plugins/blog/search/search" @tap="url_event" class="arrow-right padding-right cr-grey cp">{{ $t('common.more') }}</text>
</view>
<view v-for="(item, index) in right_list" :key="index">
<view :data-value="item.url" @tap="url_event" class="item oh padding-main border-radius-main bg-white spacing-mb cp">
<image class="blog-img fl radius" :src="item.cover" mode="aspectFill"></image>
<view class="base fr">
<view class="single-text">{{ item.title }}</view>
<view class="cr-grey margin-top-sm">{{ item.add_time_date_cn }}</view>
<view class="cr-grey multi-text margin-top-sm">{{ item.describe }}</view>
</view>
</view>
</view>
</view>
<!-- 相关商品 -->
<view v-if="(info.goods_list || null) != null && info.goods_list.length > 0">
<view class="spacing-nav-title flex-row align-c jc-sb text-size-xs">
<text class="text-wrapper title-left-border single-text flex-1 flex-width padding-right-main">{{ $t('detail.detail.1j6yxy') }}</text>
<text data-value="/pages/goods-search/goods-search" @tap="url_event" class="arrow-right padding-right cr-grey cp">{{ $t('common.more') }}</text>
</view>
<component-goods-list :propData="{ style_type: 1, goods_list: info.goods_list }" :propCurrencySymbol="currency_symbol"></component-goods-list>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
<!-- 发布博文我的博文入口 -->
<view v-if="(data_base || null) != null && (data_base.is_user_add_blog || 0) == 1" class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<view class="item flex-row jc-sa align-c text-size fw-b br bg-white round padding-vertical">
<view data-value="/pages/plugins/blog/form/form" @tap="url_event" class="flex-1 tc flex-col jc-c align-c cp">
<view class="divider-r-d wh-auto"> <iconfont name="icon-edit-below-line" size="30rpx" color="#333" propClass="margin-right-sm"></iconfont>{{$t('detail.detail.fn3w01')}}{{ blog_main_name }}</view>
</view>
<view data-value="/pages/plugins/blog/user-list/user-list" @tap="url_event" class="flex-1 tc flex-col jc-c align-c cp">
<view class="wh-auto"> <iconfont name="icon-list-dot" size="32rpx" color="#333" propClass="margin-right-sm pr top-xs"></iconfont>{{$t('common.my')}}{{ blog_main_name }}</view>
</view>
</view>
</view>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentBlogComments from '../components/blog-comments/blog-comments';
import componentGoodsList from '@/components/goods-list/goods-list';
var common_static_url = app.globalData.get_static_url('common');
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
common_static_url: common_static_url,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
currency_symbol: app.globalData.currency_symbol(),
client_type: app.globalData.application_client_type(),
bottom_fixed_style: '',
params: null,
data_base: null,
info: null,
right_list: [],
last_next: null,
emoji_list: [],
blog_main_name: this.$t('detail.detail.e439j9'),
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentBlogComments,
componentGoodsList,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
});
// 初始化配置
this.init_config();
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 初始化配置
init_config(status) {
if ((status || false) == true) {
this.setData({
currency_symbol: app.globalData.get_config('currency_symbol'),
});
} else {
app.globalData.is_config(this, 'init_config');
}
},
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url('detail', 'index', 'blog'),
method: 'POST',
data: {
id: this.params.id || 0,
},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
var data = res.data.data;
if (res.data.code == 0 && (data.data || null) != null) {
var info = data.data || null;
var base = data.base || null;
this.setData({
data_bottom_line_status: true,
data_list_loding_msg: '',
data_list_loding_status: 3,
data_base: base,
info: info,
right_list: data.right_list || [],
last_next: data.last_next || null,
emoji_list: data.emoji_list || [],
blog_main_name: base == null ? this.$t('detail.detail.e439j9') : (base.blog_main_name || this.$t('detail.detail.e439j9')),
});
if (info != null) {
// 基础自定义分享
this.setData({
share_info: {
title: info.seo_title || info.title,
desc: info.seo_desc || info.describe,
path: '/pages/plugins/blog/detail/detail',
<template>
<view :class="theme_view">
<view v-if="(info || null) != null" :class="(data_base || null) != null && (data_base.is_user_add_blog || 0) == 1 ? 'page-bottom-fixed' : ''">
<view class="padding-main bg-white spacing-mb">
<view class="spacing-mb">
<view class="fw-b text-size-xl">{{ info.title }}</view>
<view class="cr-grey-9 margin-top-lg oh br-t padding-top-main text-size-xs">
<view class="fl">
<text>{{ $t('article-detail.article-detail.728374') }}</text>
<text>{{ info.add_time }}</text>
</view>
<view class="fr">
<text class="margin-left-xxxl">{{ $t('article-detail.article-detail.j92ru0') }}</text>
<text>{{ info.access_count }}</text>
</view>
</view>
</view>
<view class="oh web-html-content spacing-mb">
<view v-if="(info.video_url || null) != null && ((info.is_live_play || 0) == 0 || client_type == 'weixin')">
<video :src="info.video_url" class="wh-auto" :autoplay="false" :controls="true"></video>
</view>
<mp-html :content="info.content" />
</view>
<!-- 评论内容 -->
<component-blog-comments :propData="info" :propDataBase="data_base" :propEmojiList="emoji_list" :propShareInfo="share_info"></component-blog-comments>
</view>
<view class="padding-horizontal-main">
<!-- 上一篇下一篇 -->
<view v-if="(last_next || null) != null" class="last-next-data spacing-mt margin-bottom-xxxl cr-grey-9">
<view v-if="(last_next.last || null) != null" class="flex-row">
<text>{{ $t('article-detail.article-detail.281s4a') }}</text>
<text :data-value="last_next.last.url" @tap="url_event" class="dis-inline-block flex-row flex-width single-text cp item">{{ last_next.last.title }}</text>
</view>
<view v-if="(last_next.next || null) != null" class="margin-top flex-row cr-main">
<text>{{ $t('article-detail.article-detail.uq5814') }}</text>
<text :data-value="last_next.next.url" @tap="url_event" class="dis-inline-block flex-row flex-width single-text cp item">{{ last_next.next.title }}</text>
</view>
</view>
<!-- 推荐博文 -->
<view v-if="right_list.length > 0" class="plugins-blog-list">
<view class="spacing-nav-title flex-row align-c jc-sb text-size-xs">
<text class="text-wrapper title-left-border single-text flex-1 flex-width padding-right-main">{{ $t('detail.detail.455787') }}{{ blog_main_name }}</text>
<text data-value="/pages/plugins/blog/search/search" @tap="url_event" class="arrow-right padding-right cr-grey cp">{{ $t('common.more') }}</text>
</view>
<view v-for="(item, index) in right_list" :key="index">
<view :data-value="item.url" @tap="url_event" class="item oh padding-main border-radius-main bg-white spacing-mb cp">
<image class="blog-img fl radius" :src="item.cover" mode="aspectFill"></image>
<view class="base fr">
<view class="single-text">{{ item.title }}</view>
<view class="cr-grey margin-top-sm">{{ item.add_time_date_cn }}</view>
<view class="cr-grey multi-text margin-top-sm">{{ item.describe }}</view>
</view>
</view>
</view>
</view>
<!-- 相关商品 -->
<view v-if="(info.goods_list || null) != null && info.goods_list.length > 0">
<view class="spacing-nav-title flex-row align-c jc-sb text-size-xs">
<text class="text-wrapper title-left-border single-text flex-1 flex-width padding-right-main">{{ $t('detail.detail.1j6yxy') }}</text>
<text data-value="/pages/goods-search/goods-search" @tap="url_event" class="arrow-right padding-right cr-grey cp">{{ $t('common.more') }}</text>
</view>
<component-goods-list :propData="{ style_type: 1, goods_list: info.goods_list }" :propCurrencySymbol="currency_symbol"></component-goods-list>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
<!-- 发布博文我的博文入口 -->
<view v-if="(data_base || null) != null && (data_base.is_user_add_blog || 0) == 1" class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<view class="item flex-row jc-sa align-c text-size fw-b br bg-white round padding-vertical">
<view data-value="/pages/plugins/blog/form/form" @tap="url_event" class="flex-1 tc flex-col jc-c align-c cp">
<view class="divider-r-d wh-auto"> <iconfont name="icon-edit-below-line" size="30rpx" color="#333" propClass="margin-right-sm"></iconfont>{{$t('detail.detail.fn3w01')}}{{ blog_main_name }}</view>
</view>
<view data-value="/pages/plugins/blog/user-list/user-list" @tap="url_event" class="flex-1 tc flex-col jc-c align-c cp">
<view class="wh-auto"> <iconfont name="icon-list-dot" size="32rpx" color="#333" propClass="margin-right-sm pr top-xs"></iconfont>{{$t('common.my')}}{{ blog_main_name }}</view>
</view>
</view>
</view>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentBlogComments from '../components/blog-comments/blog-comments';
import componentGoodsList from '@/components/goods-list/goods-list';
var common_static_url = app.globalData.get_static_url('common');
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
common_static_url: common_static_url,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
currency_symbol: app.globalData.currency_symbol(),
client_type: app.globalData.application_client_type(),
bottom_fixed_style: '',
params: null,
data_base: null,
info: null,
right_list: [],
last_next: null,
emoji_list: [],
blog_main_name: this.$t('detail.detail.e439j9'),
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentBlogComments,
componentGoodsList,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 初始化配置
this.init_config();
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 初始化配置
init_config(status) {
if ((status || false) == true) {
this.setData({
currency_symbol: app.globalData.get_config('currency_symbol'),
});
} else {
app.globalData.is_config(this, 'init_config');
}
},
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url('detail', 'index', 'blog'),
method: 'POST',
data: {
id: this.params.id || 0,
},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
var data = res.data.data;
if (res.data.code == 0 && (data.data || null) != null) {
var info = data.data || null;
var base = data.base || null;
this.setData({
data_bottom_line_status: true,
data_list_loding_msg: '',
data_list_loding_status: 3,
data_base: base,
info: info,
right_list: data.right_list || [],
last_next: data.last_next || null,
emoji_list: data.emoji_list || [],
blog_main_name: base == null ? this.$t('detail.detail.e439j9') : (base.blog_main_name || this.$t('detail.detail.e439j9')),
});
if (info != null) {
// 基础自定义分享
this.setData({
share_info: {
title: info.seo_title || info.title,
desc: info.seo_desc || info.describe,
path: '/pages/plugins/blog/detail/detail',
query: 'id=' + info.id,
img: info.share_images || info.cover,
},
});
}
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_msg: this.$t('common.internet_error_tips'),
data_list_loding_status: 2,
});
},
});
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style></style>
img: info.share_images || info.cover,
},
});
}
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_msg: this.$t('common.internet_error_tips'),
data_list_loding_status: 2,
});
},
});
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style></style>

View File

@ -169,6 +169,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -170,6 +170,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -1,249 +1,249 @@
<template>
<view :class="theme_view">
<view v-if="(data_base || null) != null">
<!-- 搜索关键字 -->
<view class="padding-horizontal-main padding-top-main padding-bottom-sm bg-white">
<view class="search-keywords pr">
<icon type="search" size="12" class="pa"></icon>
<input type="text" confirm-type="search" :placeholder="$t('search.search.723rbx')" :value="search_keywords_value" @confirm="search_keywords_event" class="cr-base round wh-auto" placeholder-class="cr-grey" />
</view>
</view>
<!-- 分类 -->
<scroll-view v-if="(category || null) != null && category.length > 0" class="nav-list scroll-view-horizontal bg-white oh" scroll-x="true">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main ' + (nav_active_value == 0 ? 'cr-main' : '')" @tap="nav_event" data-value="0">{{ $t('common.all') }}</view>
<block v-for="(item, index) in category" :key="index">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main ' + (nav_active_value == item.id ? 'cr-main' : '')" @tap="nav_event" :data-value="item.id">{{ item.name }}</view>
</block>
</scroll-view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view :class="(data_base.is_user_add_blog || 0) == 1 ? 'page-bottom-fixed' : ''">
<view v-if="(data_list || null) != null && data_list.length > 0" class="plugins-blog-list padding-horizontal-main padding-top-main oh">
<view v-for="(item, index) in data_list" :key="index">
<view :data-value="item.url" @tap="url_event" class="item oh cp padding-main border-radius-main bg-white spacing-mb">
<image class="blog-img fl radius" :src="item.cover" mode="aspectFill"></image>
<view class="base fr">
<view class="single-text text-size">{{ item.title }}</view>
<view class="cr-grey margin-top-sm">{{ item.add_time_date_cn }}</view>
<view class="cr-base text-size-sm multi-text margin-top-sm">{{ item.describe }}</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
</view>
</scroll-view>
<!-- 发布博文我的博文入口 -->
<view v-if="(data_base.is_user_add_blog || 0) == 1" class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<view class="item flex-row jc-sa align-c text-size fw-b br bg-white round padding-vertical">
<view data-value="/pages/plugins/blog/form/form" @tap="url_event" class="flex-1 tc flex-col jc-c align-c cp">
<view class="divider-r-d wh-auto"> <iconfont name="icon-edit-below-line" size="30rpx" color="#333" propClass="margin-right-sm"></iconfont>{{$t('detail.detail.fn3w01')}}{{ blog_main_name }}</view>
</view>
<view data-value="/pages/plugins/blog/user-list/user-list" @tap="url_event" class="flex-1 tc flex-col jc-c align-c cp">
<view class="wh-auto"> <iconfont name="icon-list-dot" size="32rpx" color="#333" propClass="margin-right-sm pr top-xs"></iconfont>{{$t('common.my')}}{{ blog_main_name }}</view>
</view>
</view>
</view>
</view>
</view>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_is_loading: 0,
bottom_fixed_style: '',
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
params: null,
data_base: null,
category: [],
nav_active_value: 0,
search_keywords_value: '',
// 自定义分享信息
share_info: {},
blog_main_name: this.$t('detail.detail.e439j9'),
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 参数处理
params = app.globalData.launch_params_handle(params);
// 设置参数
this.setData({
params: params,
nav_active_value: params.id || 0,
search_keywords_value: params.keywords || '',
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url('index', 'search', 'blog'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
// 标题
var blog_main_name = (data.base || null) == null ? this.$t('detail.detail.e439j9') : data.base.blog_main_name || this.$t('detail.detail.e439j9');
this.setData({
data_base: data.base || null,
category: data.category || [],
blog_main_name: blog_main_name,
});
uni.setNavigationBarTitle({ title: blog_main_name + this.$t('common.search') });
// 获取列表数据
this.get_data_list(1);
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 基础自定义分享
this.share_info_handle();
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({ data_is_loading: 1 });
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url('datalist', 'search', 'blog'),
method: 'POST',
data: {
page: this.data_page,
id: this.nav_active_value,
bwd: this.search_keywords_value,
},
dataType: 'json',
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
<template>
<view :class="theme_view">
<view v-if="(data_base || null) != null">
<!-- 搜索关键字 -->
<view class="padding-horizontal-main padding-top-main padding-bottom-sm bg-white">
<view class="search-keywords pr">
<icon type="search" size="12" class="pa"></icon>
<input type="text" confirm-type="search" :placeholder="$t('search.search.723rbx')" :value="search_keywords_value" @confirm="search_keywords_event" class="cr-base round wh-auto" placeholder-class="cr-grey" />
</view>
</view>
<!-- 分类 -->
<scroll-view v-if="(category || null) != null && category.length > 0" class="nav-list scroll-view-horizontal bg-white oh" scroll-x="true">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main ' + (nav_active_value == 0 ? 'cr-main' : '')" @tap="nav_event" data-value="0">{{ $t('common.all') }}</view>
<block v-for="(item, index) in category" :key="index">
<view :class="'item cr-grey dis-inline-block padding-horizontal-main ' + (nav_active_value == item.id ? 'cr-main' : '')" @tap="nav_event" :data-value="item.id">{{ item.name }}</view>
</block>
</scroll-view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view :class="(data_base.is_user_add_blog || 0) == 1 ? 'page-bottom-fixed' : ''">
<view v-if="(data_list || null) != null && data_list.length > 0" class="plugins-blog-list padding-horizontal-main padding-top-main oh">
<view v-for="(item, index) in data_list" :key="index">
<view :data-value="item.url" @tap="url_event" class="item oh cp padding-main border-radius-main bg-white spacing-mb">
<image class="blog-img fl radius" :src="item.cover" mode="aspectFill"></image>
<view class="base fr">
<view class="single-text text-size">{{ item.title }}</view>
<view class="cr-grey margin-top-sm">{{ item.add_time_date_cn }}</view>
<view class="cr-base text-size-sm multi-text margin-top-sm">{{ item.describe }}</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
</view>
</scroll-view>
<!-- 发布博文我的博文入口 -->
<view v-if="(data_base.is_user_add_blog || 0) == 1" class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<view class="item flex-row jc-sa align-c text-size fw-b br bg-white round padding-vertical">
<view data-value="/pages/plugins/blog/form/form" @tap="url_event" class="flex-1 tc flex-col jc-c align-c cp">
<view class="divider-r-d wh-auto"> <iconfont name="icon-edit-below-line" size="30rpx" color="#333" propClass="margin-right-sm"></iconfont>{{$t('detail.detail.fn3w01')}}{{ blog_main_name }}</view>
</view>
<view data-value="/pages/plugins/blog/user-list/user-list" @tap="url_event" class="flex-1 tc flex-col jc-c align-c cp">
<view class="wh-auto"> <iconfont name="icon-list-dot" size="32rpx" color="#333" propClass="margin-right-sm pr top-xs"></iconfont>{{$t('common.my')}}{{ blog_main_name }}</view>
</view>
</view>
</view>
</view>
</view>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_is_loading: 0,
bottom_fixed_style: '',
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
params: null,
data_base: null,
category: [],
nav_active_value: 0,
search_keywords_value: '',
// 自定义分享信息
share_info: {},
blog_main_name: this.$t('detail.detail.e439j9'),
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
nav_active_value: params.id || 0,
search_keywords_value: params.keywords || '',
});
// 数据加载
this.get_data();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 初始化
get_data() {
uni.request({
url: app.globalData.get_request_url('index', 'search', 'blog'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
// 标题
var blog_main_name = (data.base || null) == null ? this.$t('detail.detail.e439j9') : data.base.blog_main_name || this.$t('detail.detail.e439j9');
this.setData({
data_base: data.base || null,
category: data.category || [],
blog_main_name: blog_main_name,
});
uni.setNavigationBarTitle({ title: blog_main_name + this.$t('common.search') });
// 获取列表数据
this.get_data_list(1);
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 获取数据列表
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 基础自定义分享
this.share_info_handle();
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({ data_is_loading: 1 });
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
uni.request({
url: app.globalData.get_request_url('datalist', 'search', 'blog'),
method: 'POST',
data: {
page: this.data_page,
id: this.nav_active_value,
bwd: this.search_keywords_value,
},
dataType: 'json',
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
@ -253,89 +253,89 @@
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
data_is_loading: 0,
});
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 分享设置处理
share_info_handle() {
// 基础自定义分享
var info = this.data_base || {};
if ((this.nav_active_value || 0) != 0 && this.category.length > 0) {
for (var i in this.category) {
if (this.nav_active_value == this.category[i]['id']) {
info = this.category[i];
break;
}
}
}
this.setData({
share_info: {
title: info.seo_title || this.data_base.application_name,
desc: info.seo_desc,
path: '/pages/plugins/blog/search/search',
query: 'id=' + this.nav_active_value + '&keywords=' + this.search_keywords_value,
},
});
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_active_value: e.currentTarget.dataset.value || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 关键字输入事件
search_keywords_event(e) {
this.setData({
search_keywords_value: e.detail.value || '',
data_page: 1,
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import './search.css';
</style>
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
data_is_loading: 0,
});
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 分享设置处理
share_info_handle() {
// 基础自定义分享
var info = this.data_base || {};
if ((this.nav_active_value || 0) != 0 && this.category.length > 0) {
for (var i in this.category) {
if (this.nav_active_value == this.category[i]['id']) {
info = this.category[i];
break;
}
}
}
this.setData({
share_info: {
title: info.seo_title || this.data_base.application_name,
desc: info.seo_desc,
path: '/pages/plugins/blog/search/search',
query: 'id=' + this.nav_active_value + '&keywords=' + this.search_keywords_value,
},
});
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_active_value: e.currentTarget.dataset.value || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 关键字输入事件
search_keywords_event(e) {
this.setData({
search_keywords_value: e.detail.value || '',
data_page: 1,
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import './search.css';
</style>

View File

@ -79,6 +79,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},

View File

@ -88,12 +88,15 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
params: params,
});
},

View File

@ -1,120 +1,123 @@
<template>
<view :class="theme_view">
<template>
<view :class="theme_view">
<block v-if="detail != null">
<!-- 数据信息 -->
<component-panel-content :propData="detail" :propDataField="field_list"></component-panel-content>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
<component-panel-content :propData="detail" :propDataField="field_list"></component-panel-content>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
import componentPanelContent from "@/components/panel-content/panel-content";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: '',
import componentPanelContent from "@/components/panel-content/panel-content";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
field_list: [],
detail: null
};
},
components: {
componentCommon,
componentNoData,
field_list: [],
detail: null
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentPanelContent
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url('detail', 'userauth', 'certificate'),
method: "POST",
data: this.params,
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
componentPanelContent
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url('detail', 'userauth', 'certificate'),
method: "POST",
data: this.params,
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
detail: data.data,
field_list: data.field_list || [],
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, 'init')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
}
};
</script>
<style></style>
field_list: data.field_list || [],
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, 'init')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
}
};
</script>
<style></style>

View File

@ -125,6 +125,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -81,6 +81,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -177,6 +177,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -156,6 +156,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -49,6 +49,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -149,6 +149,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -138,6 +138,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
this.init();

View File

@ -187,6 +187,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -178,6 +178,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -94,6 +94,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -159,6 +159,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -206,6 +206,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -114,6 +114,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -95,6 +95,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数

View File

@ -144,6 +144,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
this.init();

View File

@ -97,12 +97,15 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
params: params,
user: app.globalData.get_user_cache_info() || null,
});

View File

@ -1,18 +1,18 @@
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white flex-row jc-sa align-c">
<block v-for="(item, index) in nav_status_list" :key="index">
<view :class="'item fl tc ' + (nav_status_index == index ? 'cr-main nav-active-line' : '')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</block>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="padding-horizontal-main padding-top-main" :class="is_complaint_app ? 'page-bottom-fixed' : ''">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<text>{{item.add_time}}</text>
<text class="fr cr-main">{{ item.status_name }}</text>
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white flex-row jc-sa align-c">
<block v-for="(item, index) in nav_status_list" :key="index">
<view :class="'item fl tc ' + (nav_status_index == index ? 'cr-main nav-active-line' : '')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</block>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="padding-horizontal-main padding-top-main" :class="is_complaint_app ? 'page-bottom-fixed' : ''">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<text>{{item.add_time}}</text>
<text class="fr cr-main">{{ item.status_name }}</text>
</view>
<view v-if="(item.data_title || null) != null" class="oh margin-top flex-row gap-10" :data-value="item.data_url" @tap="url_event">
<image v-if="(item.data_cover || null) != null" :src="item.data_cover" mode="aspectFill" class="br-f5 radius data-cover"></image>
@ -20,22 +20,22 @@
</view>
<view class="content margin-top-main">
<component-panel-content :propData="item" :propDataField="field_list" propExcludeField="add_time,status_name" propClass="" :propIsTerse="true"></component-panel-content>
</view>
</view>
<view v-if="item.status == 0 || item.status != 1" class="item-operation tr br-t padding-top-main margin-top-main">
<block v-if="item.status == 0">
<block v-if="item.status == 0">
<button class="round bg-white cr-green br-green" type="default" size="mini" @tap="url_event" :data-value="'/pages/plugins/complaint/form/form?id='+item.id+'&is_list=0'" hover-class="none">{{$t('common.edit')}}</button>
<button class="round bg-white cr-yellow br-yellow" type="default" size="mini" @tap="cancel_event" :data-value="item.id" :data-index="index" hover-class="none">{{$t('common.cancel')}}</button>
</block>
<button v-if="item.status != 1" class="round bg-white cr-red br-red" type="default" size="mini" @tap="delete_event" :data-value="item.id" :data-index="index" hover-class="none">{{$t('common.del')}}</button>
</view>
<button v-if="item.status != 1" class="round bg-white cr-red br-red" type="default" size="mini" @tap="delete_event" :data-value="item.id" :data-index="index" hover-class="none">{{$t('common.del')}}</button>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
</scroll-view>
<!-- 底部操作 -->
@ -48,88 +48,88 @@
<text>{{$t('common.add')}}</text>
</button>
</view>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentPanelContent from "@/components/panel-content/panel-content";
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentPanelContent from "@/components/panel-content/panel-content";
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_bottom_line_status: false,
data_is_loading: 0,
bottom_fixed_style: '',
nav_status_list: [],
params: {},
nav_status_list: [],
params: {},
field_list: [],
is_complaint_app: false,
};
},
components: {
componentCommon,
componentPanelContent,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 参数处理
params = app.globalData.launch_params_handle(params);
// 是否指定状态
var nav_status_index = 0;
if ((params.status || null) != null) {
for (var i in this.nav_status_list) {
if (this.nav_status_list[i]['value'] == params.status) {
nav_status_index = i;
break;
}
}
}
this.setData({
params: params,
nav_status_index: nav_status_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
is_complaint_app: false,
};
},
components: {
componentCommon,
componentPanelContent,
componentNoData,
componentBottomLine
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_status_index = 0;
if ((params.status || null) != null) {
for (var i in this.nav_status_list) {
if (this.nav_status_list[i]['value'] == params.status) {
nav_status_index = i;
break;
}
}
}
this.setData({
params: params,
nav_status_index: nav_status_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 初始化配置
app.globalData.init_config(0, this, 'init_config');
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
app.globalData.init_config(0, this, 'init_config');
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
// 初始化配置
init_config(status) {
@ -143,171 +143,171 @@
}
},
// 初始化
init() {
var user = app.globalData.get_user_info(this, 'init');
if (user != false) {
this.get_data();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 获取公共数据
get_data() {
uni.request({
url: app.globalData.get_request_url('init', 'index', 'complaint'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
nav_status_list: data.nav_status_list || [],
data_list_loding_status: 0,
data_bottom_line_status: false,
data_page: 1,
});
this.get_data_list();
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, 'get_data')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 列表数据
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 请求数据
var data = {...this.params, ...{
page: this.data_page,
}};
// 状态
var status = (this.nav_status_list[this.nav_status_index] || null) == null ? -1 : this.nav_status_list[this.nav_status_index]['value'];
if (status != -1) {
data['status'] = status;
}
// 获取数据
uni.request({
url: app.globalData.get_request_url('index', 'index', 'complaint'),
method: 'POST',
data: data,
dataType: 'json',
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data_list.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data_list;
} else {
var temp_data_list = this.data_list || [];
var temp_data = data.data_list;
for (var i in temp_data) {
temp_data_list.push(temp_data[i]);
}
}
this.setData({
data_list: temp_data_list,
data_total: data.data_total,
data_page_total: data.page_total,
field_list: data.field_list || [],
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, 'get_data_list')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
// 初始化
init() {
var user = app.globalData.get_user_info(this, 'init');
if (user != false) {
this.get_data();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 获取公共数据
get_data() {
uni.request({
url: app.globalData.get_request_url('init', 'index', 'complaint'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
nav_status_list: data.nav_status_list || [],
data_list_loding_status: 0,
data_bottom_line_status: false,
data_page: 1,
});
this.get_data_list();
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, 'get_data')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 列表数据
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
if (this.data_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 请求数据
var data = {...this.params, ...{
page: this.data_page,
}};
// 状态
var status = (this.nav_status_list[this.nav_status_index] || null) == null ? -1 : this.nav_status_list[this.nav_status_index]['value'];
if (status != -1) {
data['status'] = status;
}
// 获取数据
uni.request({
url: app.globalData.get_request_url('index', 'index', 'complaint'),
method: 'POST',
data: data,
dataType: 'json',
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data_list.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data_list;
} else {
var temp_data_list = this.data_list || [];
var temp_data = data.data_list;
for (var i in temp_data) {
temp_data_list.push(temp_data[i]);
}
}
this.setData({
data_list: temp_data_list,
data_total: data.data_total,
data_page_total: data.page_total,
field_list: data.field_list || [],
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (this.data_page <= 1) {
this.setData({
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, 'get_data_list')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 取消
@ -407,27 +407,27 @@
}
},
});
},
// 导航事件
nav_event(e) {
this.setData({
nav_status_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
}
};
</script>
<style>
@import './user.css';
},
// 导航事件
nav_event(e) {
this.setData({
nav_status_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
}
};
</script>
<style>
@import './user.css';
</style>

View File

@ -1,203 +1,206 @@
<template>
<view :class="theme_view">
<view v-if="(data_base || null) != null" class="ht bg-white">
<view class="plugins-coupon-container">
<view class="coupon-content padding-main page-bottom-fixed">
<!-- 优惠劵列表 -->
<block v-if="(data || null) != null">
<component-coupon-card :propData="data" :propStatusType="data.status_type" :propStatusOperableName="data.status_operable_name" propIndex="0" propIsProgress @call-back="coupon_receive_back_event"></component-coupon-card>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
</view>
<view class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<button class="item round cr-main bg-white br-main text-size wh-auto" type="default" hover-class="none" data-value="/pages/plugins/coupon/user/user" @tap="url_event">{{$t('index.index.lk0i6c')}}</button>
</view>
</view>
</view>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentCouponCard from '@/pages/plugins/coupon/components/coupon-card/coupon-card';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
bottom_fixed_style: '',
params: {},
data: null,
data_base: null,
// 优惠劵领取
temp_coupon_receive_index: null,
temp_coupon_receive_value: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentCouponCard,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: app.globalData.launch_params_handle(params),
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 数据加载
this.get_data();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 获取数据
get_data() {
uni.request({
url: app.globalData.get_request_url('detail', 'index', 'coupon'),
method: 'POST',
data: this.params,
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
data: data.data || null,
data_list_loding_msg: '',
data_list_loding_status: 3,
data_bottom_line_status: false,
});
if ((this.data || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data.name,
desc: this.data.desc,
path: '/pages/plugins/coupon/detail/detail',
query: 'id='+this.data.id
},
});
// 导航名称
uni.setNavigationBarTitle({
title: this.data.name,
});
}
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 优惠劵领取事件
coupon_receive_back_event() {
<template>
<view :class="theme_view">
<view v-if="(data_base || null) != null" class="ht bg-white">
<view class="plugins-coupon-container">
<view class="coupon-content padding-main page-bottom-fixed">
<!-- 优惠劵列表 -->
<block v-if="(data || null) != null">
<component-coupon-card :propData="data" :propStatusType="data.status_type" :propStatusOperableName="data.status_operable_name" propIndex="0" propIsProgress @call-back="coupon_receive_back_event"></component-coupon-card>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
</view>
<view class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<button class="item round cr-main bg-white br-main text-size wh-auto" type="default" hover-class="none" data-value="/pages/plugins/coupon/user/user" @tap="url_event">{{$t('index.index.lk0i6c')}}</button>
</view>
</view>
</view>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentCouponCard from '@/pages/plugins/coupon/components/coupon-card/coupon-card';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
bottom_fixed_style: '',
params: {},
data: null,
data_base: null,
// 优惠劵领取
temp_coupon_receive_index: null,
temp_coupon_receive_value: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentCouponCard,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 数据加载
this.get_data();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
// 获取数据
get_data() {
uni.request({
url: app.globalData.get_request_url('detail', 'index', 'coupon'),
method: 'POST',
data: this.params,
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
data: data.data || null,
data_list_loding_msg: '',
data_list_loding_status: 3,
data_bottom_line_status: false,
});
if ((this.data || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data.name,
desc: this.data.desc,
path: '/pages/plugins/coupon/detail/detail',
query: 'id='+this.data.id
},
});
// 导航名称
uni.setNavigationBarTitle({
title: this.data.name,
});
}
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 0,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 优惠劵领取事件
coupon_receive_back_event() {
if (!app.globalData.is_single_page_check()) {
return false;
}
// 缓存
let res = uni.getStorageSync('cache_plugins_coupon_receive_key') || null;
if(res != null) {
// 登录校验
let user = app.globalData.get_user_info(this, 'coupon_receive_back_event');
if(res != null) {
// 登录校验
let user = app.globalData.get_user_info(this, 'coupon_receive_back_event');
if (user != false) {
let index = res.index;
let value = res.value;
let data = this.data;
if (data['status_type'] == 0) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url('receive', 'coupon', 'coupon'),
method: 'POST',
data: {
coupon_id: value,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
app.globalData.showToast(res.data.msg, 'success');
data = res.data.data.coupon;
this.setData({
data_list: data,
});
} else {
if (app.globalData.is_login_check(res.data, this, 'coupon_receive_back_event')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
let value = res.value;
let data = this.data;
if (data['status_type'] == 0) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url('receive', 'coupon', 'coupon'),
method: 'POST',
data: {
coupon_id: value,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
app.globalData.showToast(res.data.msg, 'success');
data = res.data.data.coupon;
this.setData({
data_list: data,
});
} else {
if (app.globalData.is_login_check(res.data, this, 'coupon_receive_back_event')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
}
}
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
}
};
</script>
<style scoped>
}
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
}
};
</script>
<style scoped>
</style>

View File

@ -1,228 +1,231 @@
<template>
<view :class="theme_view">
<block v-if="(data_base || null) != null">
<component-nav-back :propIsOpacity="false"></component-nav-back>
<view class="pr">
<view class="pa top-0 bg-img wh-auto">
<image class="wh-auto dis-block" :src="data_base.app_banner_images || coupon_static_url + 'coupon-bg.png'" mode="widthFix" :data-value="data_base.url || ''" @tap="url_event"></image>
</view>
<view class="plugins-coupon-container">
<view class="coupon-content bg-white pr page-bottom-fixed">
<!-- 优惠劵列表 -->
<view v-if="data_list.length > 0" class="padding-horizontal-main flex-col">
<block v-for="(item, index) in data_list" :key="index">
<component-coupon-card :propData="item" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" :propIndex="index" propIsProgress @call-back="coupon_receive_back_event"></component-coupon-card>
</block>
</view>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
</view>
<view class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<button class="item round cr-main bg-white br-main text-size wh-auto" type="default" hover-class="none" data-value="/pages/plugins/coupon/user/user" @tap="url_event">{{$t('index.index.lk0i6c')}}</button>
</view>
</view>
</view>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNavBack from '@/components/nav-back/nav-back';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentCouponCard from '@/pages/plugins/coupon/components/coupon-card/coupon-card';
var coupon_static_url = app.globalData.get_static_url('coupon', true);
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
coupon_static_url: coupon_static_url + 'app/',
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
bottom_fixed_style: '',
data_list: [],
data_base: null,
// 优惠劵领取
temp_coupon_receive_index: null,
temp_coupon_receive_value: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNavBack,
componentNoData,
componentBottomLine,
componentCouponCard,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 数据加载
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 获取数据
init() {
this.get_data_list();
},
// 获取数据
get_data_list() {
if (this.data_list.length <= 0) {
this.setData({
data_list_loding_status: 1,
});
}
uni.request({
url: app.globalData.get_request_url('index', 'index', 'coupon'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
var status = (data.data || []).length > 0;
this.setData({
data_base: data.base || null,
data_list: data.data || [],
data_list_loding_msg: '',
data_list_loding_status: status ? 3 : 0,
data_bottom_line_status: status,
});
if ((this.data_base || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data_base.seo_title || this.data_base.application_name,
desc: this.data_base.seo_desc,
path: '/pages/plugins/coupon/index/index',
},
});
// #ifndef MP-ALIPAY
// 导航名称
if ((this.data_base.application_name || null) != null) {
uni.setNavigationBarTitle({
title: this.data_base.application_name,
});
}
// #endif
}
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 优惠劵领取事件
<template>
<view :class="theme_view">
<block v-if="(data_base || null) != null">
<component-nav-back :propIsOpacity="false"></component-nav-back>
<view class="pr">
<view class="pa top-0 bg-img wh-auto">
<image class="wh-auto dis-block" :src="data_base.app_banner_images || coupon_static_url + 'coupon-bg.png'" mode="widthFix" :data-value="data_base.url || ''" @tap="url_event"></image>
</view>
<view class="plugins-coupon-container">
<view class="coupon-content bg-white pr page-bottom-fixed">
<!-- 优惠劵列表 -->
<view v-if="data_list.length > 0" class="padding-horizontal-main flex-col">
<block v-for="(item, index) in data_list" :key="index">
<component-coupon-card :propData="item" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" :propIndex="index" propIsProgress @call-back="coupon_receive_back_event"></component-coupon-card>
</block>
</view>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
</view>
<view class="bottom-fixed" :style="bottom_fixed_style">
<view class="bottom-line-exclude">
<button class="item round cr-main bg-white br-main text-size wh-auto" type="default" hover-class="none" data-value="/pages/plugins/coupon/user/user" @tap="url_event">{{$t('index.index.lk0i6c')}}</button>
</view>
</view>
</view>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNavBack from '@/components/nav-back/nav-back';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentCouponCard from '@/pages/plugins/coupon/components/coupon-card/coupon-card';
var coupon_static_url = app.globalData.get_static_url('coupon', true);
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
coupon_static_url: coupon_static_url + 'app/',
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
bottom_fixed_style: '',
data_list: [],
data_base: null,
// 优惠劵领取
temp_coupon_receive_index: null,
temp_coupon_receive_value: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNavBack,
componentNoData,
componentBottomLine,
componentCouponCard,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 数据加载
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 获取数据
init() {
this.get_data_list();
},
// 获取数据
get_data_list() {
if (this.data_list.length <= 0) {
this.setData({
data_list_loding_status: 1,
});
}
uni.request({
url: app.globalData.get_request_url('index', 'index', 'coupon'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
var status = (data.data || []).length > 0;
this.setData({
data_base: data.base || null,
data_list: data.data || [],
data_list_loding_msg: '',
data_list_loding_status: status ? 3 : 0,
data_bottom_line_status: status,
});
if ((this.data_base || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data_base.seo_title || this.data_base.application_name,
desc: this.data_base.seo_desc,
path: '/pages/plugins/coupon/index/index',
},
});
// #ifndef MP-ALIPAY
// 导航名称
if ((this.data_base.application_name || null) != null) {
uni.setNavigationBarTitle({
title: this.data_base.application_name,
});
}
// #endif
}
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 优惠劵领取事件
coupon_receive_back_event() {
if (!app.globalData.is_single_page_check()) {
return false;
}
// 缓存
// 缓存
let res = uni.getStorageSync('cache_plugins_coupon_receive_key') || null;
if(res != null) {
// 登录校验
let user = app.globalData.get_user_info(this, 'coupon_receive_back_event');
if(res != null) {
// 登录校验
let user = app.globalData.get_user_info(this, 'coupon_receive_back_event');
if (user != false) {
let index = res.index;
let value = res.value;
let temp_list = this.data_list;
if (temp_list[index]['status_type'] == 0) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url('receive', 'coupon', 'coupon'),
method: 'POST',
data: {
coupon_id: value,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
app.globalData.showToast(res.data.msg, 'success');
temp_list[index] = res.data.data.coupon;
this.setData({
data_list: temp_list,
});
} else {
if (app.globalData.is_login_check(res.data, this, 'coupon_receive_back_event')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
let value = res.value;
let temp_list = this.data_list;
if (temp_list[index]['status_type'] == 0) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url('receive', 'coupon', 'coupon'),
method: 'POST',
data: {
coupon_id: value,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
app.globalData.showToast(res.data.msg, 'success');
temp_list[index] = res.data.data.coupon;
this.setData({
data_list: temp_list,
});
} else {
if (app.globalData.is_login_check(res.data, this, 'coupon_receive_back_event')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
}
}
},
// url事件
url_event(e) {
app.globalData.url_event(e);
},
// 页面滚动监听
onPageScroll(res) {
uni.$emit('onPageScroll', res);
},
},
};
</script>
<style scoped>
@import './index.css';
</style>
}
},
// url事件
url_event(e) {
app.globalData.url_event(e);
},
// 页面滚动监听
onPageScroll(res) {
uni.$emit('onPageScroll', res);
},
},
};
</script>
<style scoped>
@import './index.css';
</style>

View File

@ -1,166 +1,169 @@
<template>
<view :class="theme_view">
<!-- 优惠劵列表 -->
<view v-if="data_list.length > 0" class="padding-main page-bottom-fixed">
<view class="flex-col">
<block v-for="(item, index) in data_list" :key="index">
<component-coupon-card :propData="item" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" :propIndex="index" propIsProgress @call-back="coupon_receive_back_event"></component-coupon-card>
</block>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 回到店铺 -->
<view v-if="(shop || null) != null" class="bottom-fixed">
<view class="bottom-line-exclude">
<button class="bg-white cr-main br-main round dis-block text-size" type="default" hover-class="none" :data-value="shop.url" @tap="shop_event">{{ $t('index.index.i78v36') }}</button>
</view>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentCouponCard from '@/pages/plugins/coupon/components/coupon-card/coupon-card';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
params: null,
data_list: [],
data_base: null,
shop: null,
// 优惠劵领取
temp_coupon_receive_index: null,
temp_coupon_receive_value: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentCouponCard,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 数据加载
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 获取数据
init() {
this.get_data_list();
},
// 获取数据
get_data_list() {
if (this.data_list.length <= 0) {
this.setData({
data_list_loding_status: 1,
});
}
uni.request({
url: app.globalData.get_request_url('shop', 'index', 'coupon'),
method: 'POST',
data: this.params,
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
var status = (data.data || []).length > 0;
this.setData({
data_base: data.base || null,
shop: data.shop || null,
data_list: data.data || [],
data_list_loding_msg: '',
data_list_loding_status: status ? 3 : 0,
data_bottom_line_status: status,
});
if ((this.data_base || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data_base.seo_title || this.data_base.application_name,
desc: this.data_base.seo_desc,
path: '/pages/plugins/coupon/shop/shop',
},
});
// 导航名称
if ((this.data_base.shop_application_name || null) != null) {
uni.setNavigationBarTitle({
title: this.data_base.shop_application_name,
});
}
}
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 优惠劵领取事件
<template>
<view :class="theme_view">
<!-- 优惠劵列表 -->
<view v-if="data_list.length > 0" class="padding-main page-bottom-fixed">
<view class="flex-col">
<block v-for="(item, index) in data_list" :key="index">
<component-coupon-card :propData="item" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" :propIndex="index" propIsProgress @call-back="coupon_receive_back_event"></component-coupon-card>
</block>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 回到店铺 -->
<view v-if="(shop || null) != null" class="bottom-fixed">
<view class="bottom-line-exclude">
<button class="bg-white cr-main br-main round dis-block text-size" type="default" hover-class="none" :data-value="shop.url" @tap="shop_event">{{ $t('index.index.i78v36') }}</button>
</view>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentCouponCard from '@/pages/plugins/coupon/components/coupon-card/coupon-card';
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
params: null,
data_list: [],
data_base: null,
shop: null,
// 优惠劵领取
temp_coupon_receive_index: null,
temp_coupon_receive_value: null,
// 自定义分享信息
share_info: {},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentCouponCard,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 数据加载
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 获取数据
init() {
this.get_data_list();
},
// 获取数据
get_data_list() {
if (this.data_list.length <= 0) {
this.setData({
data_list_loding_status: 1,
});
}
uni.request({
url: app.globalData.get_request_url('shop', 'index', 'coupon'),
method: 'POST',
data: this.params,
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
var status = (data.data || []).length > 0;
this.setData({
data_base: data.base || null,
shop: data.shop || null,
data_list: data.data || [],
data_list_loding_msg: '',
data_list_loding_status: status ? 3 : 0,
data_bottom_line_status: status,
});
if ((this.data_base || null) != null) {
// 基础自定义分享
this.setData({
share_info: {
title: this.data_base.seo_title || this.data_base.application_name,
desc: this.data_base.seo_desc,
path: '/pages/plugins/coupon/shop/shop',
},
});
// 导航名称
if ((this.data_base.shop_application_name || null) != null) {
uni.setNavigationBarTitle({
title: this.data_base.shop_application_name,
});
}
}
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
app.globalData.showToast(res.data.msg);
}
// 分享菜单处理
app.globalData.page_share_handle(this.share_info);
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 优惠劵领取事件
coupon_receive_back_event() {
if (!app.globalData.is_single_page_check()) {
return false;
@ -172,52 +175,52 @@
let user = app.globalData.get_user_info(this, 'coupon_receive_back_event');
if (user != false) {
let index = res.index;
let value = res.value;
let temp_list = this.data_list;
if (temp_list[index]['status_type'] == 0) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url('receive', 'coupon', 'coupon'),
method: 'POST',
data: {
coupon_id: value,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
app.globalData.showToast(res.data.msg, 'success');
temp_list[index] = res.data.data.coupon;
this.setData({
data_list: temp_list,
});
} else {
if (app.globalData.is_login_check(res.data, this, 'coupon_receive_back_event')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
let value = res.value;
let temp_list = this.data_list;
if (temp_list[index]['status_type'] == 0) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url('receive', 'coupon', 'coupon'),
method: 'POST',
data: {
coupon_id: value,
},
dataType: 'json',
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
app.globalData.showToast(res.data.msg, 'success');
temp_list[index] = res.data.data.coupon;
this.setData({
data_list: temp_list,
});
} else {
if (app.globalData.is_login_check(res.data, this, 'coupon_receive_back_event')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
}
}
}
},
// 店铺事件
shop_event(e) {
var prev_url = app.globalData.prev_page();
if (prev_url != null && prev_url.indexOf('pages/plugins/shop/detail/detail') != -1) {
uni.navigateBack();
} else {
app.globalData.url_event(e);
}
},
},
};
}
}
},
// 店铺事件
shop_event(e) {
var prev_url = app.globalData.prev_page();
if (prev_url != null && prev_url.indexOf('pages/plugins/shop/detail/detail') != -1) {
uni.navigateBack();
} else {
app.globalData.url_event(e);
}
},
},
};
</script>

View File

@ -1,197 +1,200 @@
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<block v-for="(item, index) in nav_tabs_list" :key="index">
<view :class="'item fl tc cr-grey ' + (item.value == nav_tabs_value ? 'cr-main nav-active-line' : '')" :data-index="index" :data-value="item.value" @tap="nav_tabs_event">{{ item.name }} </view>
</block>
</view>
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" lower-threshold="60">
<!-- 优惠劵列表 -->
<view v-if="data_list != null" class="plugins-coupon-container padding-main">
<!-- 未使用 -->
<block v-if="(data_list.not_use || null) != null && data_list.not_use.length > 0 && nav_tabs_value == 'not_use'">
<block v-for="(item, index) in data_list.not_use" :key="index">
<component-coupon-card :propData="item.coupon" :propStartTime="item.time_start_show_text" :propEndTime="item.time_end_show_text" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" propBg="#f5f5f5"></component-coupon-card>
</block>
</block>
<!-- 已使用 -->
<block v-if="(data_list.already_use || null) != null && data_list.already_use.length > 0 && nav_tabs_value == 'already_use'">
<block v-for="(item, index) in data_list.already_use" :key="index">
<component-coupon-card :propData="item.coupon" :propStartTime="item.time_start_show_text" :propEndTime="item.time_end_show_text" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" propBg="#f5f5f5"></component-coupon-card>
</block>
</block>
<!-- 已过期 -->
<block v-if="(data_list.already_expire || null) != null && data_list.already_expire.length > 0 && nav_tabs_value == 'already_expire'">
<block v-for="(item, index) in data_list.already_expire" :key="index">
<component-coupon-card :propData="item.coupon" :propStartTime="item.time_start_show_text" :propEndTime="item.time_end_show_text" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" propBg="#f5f5f5"></component-coupon-card>
</block>
</block>
</view>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg" :propUrl="coupon_static_url + 'no-data.png'"></component-no-data>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentCouponCard from '@/pages/plugins/coupon/components/coupon-card/coupon-card';
const coupon_static_url = app.globalData.get_static_url('coupon', true);
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
coupon_static_url: coupon_static_url + 'app/',
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_list: null,
nav_tabs_list: [
{
name: this.$t('user.user.s3y4ji'),
value: 'not_use',
},
{
name: this.$t('user.user.pggs6s'),
value: 'already_use',
},
{
name: this.$t('user.user.528t26'),
value: 'already_expire',
},
],
nav_tabs_value: 'not_use',
// 首页地址
home_page_url: app.globalData.app_tabbar_pages()[0],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentCouponCard,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 数据加载
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 获取数据
init() {
var user = app.globalData.get_user_info(this, 'init');
if (user != false) {
this.get_data_list();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 获取数据
get_data_list() {
if (this.data_list == null || (this.data_list[this.nav_tabs_value] || null) == null || this.data_list[this.nav_tabs_value].length <= 0) {
this.setData({
data_list_loding_status: 1,
});
}
uni.request({
url: app.globalData.get_request_url('index', 'coupon', 'coupon'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
this.setData({
data_list: res.data.data || null,
data_list_loding_msg: this.$t('user.user.3ks1wi'),
});
this.data_view_handle();
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, 'get_data_list')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 数据处理
data_view_handle() {
if(this.data_list_loding_status != 2) {
var status = 0;
if (this.data_list != null && (this.data_list[this.nav_tabs_value] || null) != null && this.data_list[this.nav_tabs_value].length > 0) {
status = 3;
}
this.setData({
data_list_loding_status: status,
data_bottom_line_status: status == 3,
});
}
},
// 导航事件
nav_tabs_event(e) {
this.setData({
nav_tabs_value: e.currentTarget.dataset.value,
});
this.data_view_handle();
},
},
};
</script>
<style>
@import './user.css';
</style>
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<block v-for="(item, index) in nav_tabs_list" :key="index">
<view :class="'item fl tc cr-grey ' + (item.value == nav_tabs_value ? 'cr-main nav-active-line' : '')" :data-index="index" :data-value="item.value" @tap="nav_tabs_event">{{ item.name }} </view>
</block>
</view>
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" lower-threshold="60">
<!-- 优惠劵列表 -->
<view v-if="data_list != null" class="plugins-coupon-container padding-main">
<!-- 未使用 -->
<block v-if="(data_list.not_use || null) != null && data_list.not_use.length > 0 && nav_tabs_value == 'not_use'">
<block v-for="(item, index) in data_list.not_use" :key="index">
<component-coupon-card :propData="item.coupon" :propStartTime="item.time_start_show_text" :propEndTime="item.time_end_show_text" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" propBg="#f5f5f5"></component-coupon-card>
</block>
</block>
<!-- 已使用 -->
<block v-if="(data_list.already_use || null) != null && data_list.already_use.length > 0 && nav_tabs_value == 'already_use'">
<block v-for="(item, index) in data_list.already_use" :key="index">
<component-coupon-card :propData="item.coupon" :propStartTime="item.time_start_show_text" :propEndTime="item.time_end_show_text" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" propBg="#f5f5f5"></component-coupon-card>
</block>
</block>
<!-- 已过期 -->
<block v-if="(data_list.already_expire || null) != null && data_list.already_expire.length > 0 && nav_tabs_value == 'already_expire'">
<block v-for="(item, index) in data_list.already_expire" :key="index">
<component-coupon-card :propData="item.coupon" :propStartTime="item.time_start_show_text" :propEndTime="item.time_end_show_text" :propStatusType="item.status_type" :propStatusOperableName="item.status_operable_name" propBg="#f5f5f5"></component-coupon-card>
</block>
</block>
</view>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg" :propUrl="coupon_static_url + 'no-data.png'"></component-no-data>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from '@/components/no-data/no-data';
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentCouponCard from '@/pages/plugins/coupon/components/coupon-card/coupon-card';
const coupon_static_url = app.globalData.get_static_url('coupon', true);
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
coupon_static_url: coupon_static_url + 'app/',
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: '',
data_list: null,
nav_tabs_list: [
{
name: this.$t('user.user.s3y4ji'),
value: 'not_use',
},
{
name: this.$t('user.user.pggs6s'),
value: 'already_use',
},
{
name: this.$t('user.user.528t26'),
value: 'already_expire',
},
],
nav_tabs_value: 'not_use',
// 首页地址
home_page_url: app.globalData.app_tabbar_pages()[0],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentCouponCard,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 数据加载
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 获取数据
init() {
var user = app.globalData.get_user_info(this, 'init');
if (user != false) {
this.get_data_list();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 获取数据
get_data_list() {
if (this.data_list == null || (this.data_list[this.nav_tabs_value] || null) == null || this.data_list[this.nav_tabs_value].length <= 0) {
this.setData({
data_list_loding_status: 1,
});
}
uni.request({
url: app.globalData.get_request_url('index', 'coupon', 'coupon'),
method: 'POST',
data: {},
dataType: 'json',
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
this.setData({
data_list: res.data.data || null,
data_list_loding_msg: this.$t('user.user.3ks1wi'),
});
this.data_view_handle();
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, 'get_data_list')) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
},
});
},
// 数据处理
data_view_handle() {
if(this.data_list_loding_status != 2) {
var status = 0;
if (this.data_list != null && (this.data_list[this.nav_tabs_value] || null) != null && this.data_list[this.nav_tabs_value].length > 0) {
status = 3;
}
this.setData({
data_list_loding_status: status,
data_bottom_line_status: status == 3,
});
}
},
// 导航事件
nav_tabs_event(e) {
this.setData({
nav_tabs_value: e.currentTarget.dataset.value,
});
this.data_view_handle();
},
},
};
</script>
<style>
@import './user.css';
</style>

View File

@ -79,6 +79,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -135,6 +135,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -278,6 +278,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -125,6 +125,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -1,53 +1,53 @@
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<block v-for="(item, index) in nav_status_list" :key="index">
<view :class="'item fl tc ' + (nav_status_index == index ? 'cr-main' : '')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</block>
</view>
<movable-area class="wh-auto ht-auto">
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<text class="cr-base">{{ item.add_time }}</text>
<text class="cr-main fr">{{ item.status_name }}</text>
</view>
<view class="content margin-top">
<block v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base">{{ item[fv.field] }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</block>
</view>
<view v-if="item.status == 0" class="item-operation tr br-t-dashed padding-top-main margin-top-main">
<button class="round bg-white br cr-base" type="default" size="mini" hover-class="none" :data-index="index" :data-oid="item.order_id" :data-uid="item.order_user_id" @tap="list_submit_take_event">{{$t('extraction-order.extraction-order.2y7lq1')}}</button>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 拖拽按钮 -->
<movable-view class="search-drag tc circle" direction="all" @tap="drag_event">
<icon type="search" size="20"></icon>
</movable-view>
</movable-area>
<!-- 取货 popup -->
<component-popup :propShow="is_show_take_popup" propPosition="bottom" @onclose="take_popup_event_close">
<view class="form-container bg-base padding-horizontal-main padding-top-main padding-bottom-xs">
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<block v-for="(item, index) in nav_status_list" :key="index">
<view :class="'item fl tc ' + (nav_status_index == index ? 'cr-main' : '')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</block>
</view>
<movable-area class="wh-auto ht-auto">
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<text class="cr-base">{{ item.add_time }}</text>
<text class="cr-main fr">{{ item.status_name }}</text>
</view>
<view class="content margin-top">
<block v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base">{{ item[fv.field] }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</block>
</view>
<view v-if="item.status == 0" class="item-operation tr br-t-dashed padding-top-main margin-top-main">
<button class="round bg-white br cr-base" type="default" size="mini" hover-class="none" :data-index="index" :data-oid="item.order_id" :data-uid="item.order_user_id" @tap="list_submit_take_event">{{$t('extraction-order.extraction-order.2y7lq1')}}</button>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 拖拽按钮 -->
<movable-view class="search-drag tc circle" direction="all" @tap="drag_event">
<icon type="search" size="20"></icon>
</movable-view>
</movable-area>
<!-- 取货 popup -->
<component-popup :propShow="is_show_take_popup" propPosition="bottom" @onclose="take_popup_event_close">
<view class="form-container bg-base padding-horizontal-main padding-top-main padding-bottom-xs">
<view class="form-gorup tc bg-white border-radius-main margin-top-lg">
<view class="flex-row align-c">
<!-- #ifndef H5 -->
@ -56,17 +56,17 @@
</view>
<!-- #endif -->
<input type="number" class="wh-auto" :placeholder="$t('extraction-order.extraction-order.suo4oz')" placeholder-class="cr-grey-c" :value="extraction_code" @input="extraction_code_input_event" />
</view>
</view>
<view class="form-gorup form-gorup-submit">
<button class="bg-main br-main cr-white round text-size" type="default" hover-class="none" :disabled="form_submit_disabled_status" @tap="form_submit_take_event">{{$t('common.confirm')}}</button>
</view>
</view>
</component-popup>
<!-- 搜索 popup -->
<component-popup :propShow="is_show_search_popup" propPosition="bottom" @onclose="search_popup_event_close">
<view class="form-container bg-base padding-horizontal-main padding-top-main padding-bottom-xs">
</view>
</view>
<view class="form-gorup form-gorup-submit">
<button class="bg-main br-main cr-white round text-size" type="default" hover-class="none" :disabled="form_submit_disabled_status" @tap="form_submit_take_event">{{$t('common.confirm')}}</button>
</view>
</view>
</component-popup>
<!-- 搜索 popup -->
<component-popup :propShow="is_show_search_popup" propPosition="bottom" @onclose="search_popup_event_close">
<view class="form-container bg-base padding-horizontal-main padding-top-main padding-bottom-xs">
<view class="form-gorup tc bg-white border-radius-main margin-top-lg">
<view class="flex-row align-c">
<!-- #ifndef H5 -->
@ -75,188 +75,191 @@
</view>
<!-- #endif -->
<input type="number" class="wh-auto" :placeholder="$t('extraction-order.extraction-order.suo4oz')" placeholder-class="cr-grey-c" :value="search_keywords_value" @input="search_input_keywords_event" />
</view>
</view>
<view class="form-gorup form-gorup-submit">
<button class="bg-main-pair br-main-pair cr-white round text-size" type="default" hover-class="none" :disabled="form_submit_disabled_status" @tap="search_submit_event">{{$t('common.search')}}</button>
</view>
</view>
</component-popup>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentPopup from "@/components/popup/popup";
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_status_list: [
{ name: this.$t('common.all'), value: "-1" },
{ name: this.$t('extraction.extraction.53h4fj'), value: "0" },
{ name: this.$t('extraction.extraction.wq25fk'), value: "1" },
],
nav_status_index: 0,
is_show_take_popup: false,
extraction_value: null,
extraction_code: "",
form_submit_disabled_status: false,
is_show_search_popup: false,
search_keywords_value: "",
content_list: [
{ name: this.$t('order-detail.order-detail.36op8f'), field: "order_no" },
{ name: this.$t('user-order-detail.user-order-detail.516tlr'), field: "pay_price" },
],
};
},
components: {
componentCommon,
componentPopup,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_status_index = 0;
if (params.status != undefined) {
for (var i in this.nav_status_list) {
if (this.nav_status_list[i]["value"] == params.status) {
nav_status_index = i;
break;
}
}
}
this.setData({
params: params,
nav_status_index: nav_status_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 参数
var status = (this.nav_status_list[this.nav_status_index] || null) == null ? -1 : this.nav_status_list[this.nav_status_index]["value"];
// 获取数据
uni.request({
url: app.globalData.get_request_url("order", "extraction", "distribution"),
method: "POST",
data: {
page: this.data_page,
status: status || 0,
keywords: this.search_keywords_value || "",
},
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
</view>
</view>
<view class="form-gorup form-gorup-submit">
<button class="bg-main-pair br-main-pair cr-white round text-size" type="default" hover-class="none" :disabled="form_submit_disabled_status" @tap="search_submit_event">{{$t('common.search')}}</button>
</view>
</view>
</component-popup>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentPopup from "@/components/popup/popup";
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_status_list: [
{ name: this.$t('common.all'), value: "-1" },
{ name: this.$t('extraction.extraction.53h4fj'), value: "0" },
{ name: this.$t('extraction.extraction.wq25fk'), value: "1" },
],
nav_status_index: 0,
is_show_take_popup: false,
extraction_value: null,
extraction_code: "",
form_submit_disabled_status: false,
is_show_search_popup: false,
search_keywords_value: "",
content_list: [
{ name: this.$t('order-detail.order-detail.36op8f'), field: "order_no" },
{ name: this.$t('user-order-detail.user-order-detail.516tlr'), field: "pay_price" },
],
};
},
components: {
componentCommon,
componentPopup,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_status_index = 0;
if (params.status != undefined) {
for (var i in this.nav_status_list) {
if (this.nav_status_list[i]["value"] == params.status) {
nav_status_index = i;
break;
}
}
}
this.setData({
params: params,
nav_status_index: nav_status_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 参数
var status = (this.nav_status_list[this.nav_status_index] || null) == null ? -1 : this.nav_status_list[this.nav_status_index]["value"];
// 获取数据
uni.request({
url: app.globalData.get_request_url("order", "extraction", "distribution"),
method: "POST",
data: {
page: this.data_page,
status: status || 0,
keywords: this.search_keywords_value || "",
},
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
@ -266,162 +269,162 @@ const app = getApp();
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_status_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 取件码弹层-开启
list_submit_take_event(e) {
this.setData({
is_show_take_popup: true,
extraction_code: "",
extraction_value: {
index: e.currentTarget.dataset.index,
oid: e.currentTarget.dataset.oid,
uid: e.currentTarget.dataset.uid,
},
});
},
// 取件码弹层-关闭
take_popup_event_close() {
this.setData({
is_show_take_popup: false,
});
},
// 取件码输入事件
extraction_code_input_event(e) {
this.setData({
extraction_code: e.detail.value || "",
});
},
// 取件提交
form_submit_take_event(e) {
// 参数
if ((this.extraction_code || null) == null) {
app.globalData.showToast(this.$t('extraction-order.extraction-order.znufs8'));
return false;
}
if ((this.extraction_value || null) == null) {
app.globalData.showToast(this.$t('extraction-order.extraction-order.hbj4y7'));
return false;
}
// 提交表单
var data = {
id: this.extraction_value.oid,
user_id: this.extraction_value.uid,
extraction_code: this.extraction_code,
};
this.setData({
form_submit_disabled_status: true,
});
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url("take", "extraction", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
this.setData({
form_submit_disabled_status: false,
});
uni.hideLoading();
if (res.data.code == 0) {
var temp_data_list = this.data_list;
var index = this.extraction_value.index;
temp_data_list[index]["status"] = 1;
temp_data_list[index]["status_name"] = this.$t('extraction.extraction.wq25fk');
this.setData({
is_show_take_popup: false,
data_list: temp_data_list,
});
app.globalData.showToast(res.data.msg, "success");
} else {
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
this.setData({
form_submit_disabled_status: false,
});
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 搜索弹层-开启
drag_event(e) {
this.setData({
is_show_search_popup: true,
});
},
// 搜索弹层-关闭
search_popup_event_close() {
this.setData({
is_show_search_popup: false,
});
},
// 搜索关键字输入事件
search_input_keywords_event(e) {
this.setData({
search_keywords_value: e.detail.value || "",
});
},
// 搜索确认事件
search_submit_event(e) {
this.setData({
is_show_search_popup: false,
data_page: 1,
});
this.get_data_list(1);
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_status_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 取件码弹层-开启
list_submit_take_event(e) {
this.setData({
is_show_take_popup: true,
extraction_code: "",
extraction_value: {
index: e.currentTarget.dataset.index,
oid: e.currentTarget.dataset.oid,
uid: e.currentTarget.dataset.uid,
},
});
},
// 取件码弹层-关闭
take_popup_event_close() {
this.setData({
is_show_take_popup: false,
});
},
// 取件码输入事件
extraction_code_input_event(e) {
this.setData({
extraction_code: e.detail.value || "",
});
},
// 取件提交
form_submit_take_event(e) {
// 参数
if ((this.extraction_code || null) == null) {
app.globalData.showToast(this.$t('extraction-order.extraction-order.znufs8'));
return false;
}
if ((this.extraction_value || null) == null) {
app.globalData.showToast(this.$t('extraction-order.extraction-order.hbj4y7'));
return false;
}
// 提交表单
var data = {
id: this.extraction_value.oid,
user_id: this.extraction_value.uid,
extraction_code: this.extraction_code,
};
this.setData({
form_submit_disabled_status: true,
});
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url("take", "extraction", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
this.setData({
form_submit_disabled_status: false,
});
uni.hideLoading();
if (res.data.code == 0) {
var temp_data_list = this.data_list;
var index = this.extraction_value.index;
temp_data_list[index]["status"] = 1;
temp_data_list[index]["status_name"] = this.$t('extraction.extraction.wq25fk');
this.setData({
is_show_take_popup: false,
data_list: temp_data_list,
});
app.globalData.showToast(res.data.msg, "success");
} else {
app.globalData.showToast(res.data.msg);
}
},
fail: () => {
this.setData({
form_submit_disabled_status: false,
});
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 搜索弹层-开启
drag_event(e) {
this.setData({
is_show_search_popup: true,
});
},
// 搜索弹层-关闭
search_popup_event_close() {
this.setData({
is_show_search_popup: false,
});
},
// 搜索关键字输入事件
search_input_keywords_event(e) {
this.setData({
search_keywords_value: e.detail.value || "",
});
},
// 搜索确认事件
search_submit_event(e) {
this.setData({
is_show_search_popup: false,
data_page: 1,
});
this.get_data_list(1);
},
// 扫码事件
@ -445,10 +448,10 @@ const app = getApp();
}
}
});
}
},
};
</script>
<style>
@import "./extraction-order.css";
</style>
}
},
};
</script>
<style>
@import "./extraction-order.css";
</style>

View File

@ -1,299 +1,302 @@
<template>
<view :class="theme_view">
<view class="page">
<view v-if="data_list.length > 0" class="data-list padding-main">
<view v-for="(item, index) in data_list" :key="index" class="item bg-white padding-main border-radius-main spacing-mb">
<view @tap="address_conent_event" :data-index="index" class="oh">
<view v-if="(item.logo || null) != null" class="fl oh margin-right-lg">
<image class="dis-block address-logo radius" :src="item.logo" mode="widthFix"></image>
</view>
<view class="oh">
<view class="base oh padding-bottom-main padding-top-xs">
<text v-if="(item.alias || null) != null" class="address-alias br-main cr-main round margin-right-sm">{{ item.alias }}</text>
<text>{{ item.name }}</text>
<text class="fr">{{ item.tel }}</text>
</view>
<view class="address oh padding-top-sm">
<image class="item-icon fl margin-top-xs" :src="common_static_url + 'map-icon.png'" mode="widthFix"></image>
<view class="text fr"> {{ item.province_name || "" }}{{ item.city_name || "" }}{{ item.county_name || "" }}{{ item.address || "" }} </view>
</view>
</view>
</view>
<view v-if="((item.distance_value || null) != null && (item.distance_unit || null) != null) || ((item.lng || 0) != 0 && (item.lat || 0) != 0)" class="br-t oh padding-top-main margin-top-main">
<view v-if="(item.distance_value || null) != null && (item.distance_unit || null) != null" class="fl margin-top-lg">
<text class="cr-grey">{{$t('extraction-switch.extraction-switch.w94x36')}}</text>
<text class="cr-base">{{ item.distance_value }}</text>
<text class="cr-grey">{{ item.distance_unit }}</text>
</view>
<view class="item-operation fr oh">
<button v-if="(item.is_default || 0) == 0" class="round bg-white cr-green br-green" type="default" size="mini" @tap="address_switch_event" :data-index="index" hover-class="none">{{$t('common.select')}}</button>
<button v-if="(item.lng || 0) != 0 && (item.lat || 0) != 0" class="round bg-white cr-base br" type="default" size="mini" @tap="address_map_event" :data-index="index" hover-class="none">{{$t('buy.buy.o7722q')}}</button>
</view>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<!-- 位置选择 -->
<component-choice-location ref="choice_location" :propIsShowAddressChoice="false" @onBack="user_back_choice_location"></component-choice-location>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
import componentChoiceLocation from '@/components/choice-location/choice-location';
var common_static_url = app.globalData.get_static_url("common");
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
common_static_url: common_static_url,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_list: [],
params: null,
user_location: null,
is_first: 1,
home_extraction_address_position: 0,
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentChoiceLocation
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
home_extraction_address_position: app.globalData.get_config("config.home_extraction_address_position", 0),
});
// 清除位置缓存信息
app.globalData.choice_user_location_remove();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 是否需要选择地理位置
if (this.home_extraction_address_position == 1) {
// 用户位置初始化
this.user_location_init();
} else {
this.init();
}
this.setData({
is_first: 0,
});
// 是否获取位置
if (this.home_extraction_address_position == 1) {
if((this.user_location || null) == null || this.user_location.status != 1) {
this.$refs.choice_location.choose_user_location();
}
}
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 初始化
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
this.get_data_list();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 选择用户地理位置回调
user_back_choice_location(e) {
this.setData({
user_location: e
});
this.init();
},
// 地址信息初始化
user_location_init() {
this.setData({
user_location: app.globalData.choice_user_location_init()
});
},
// 获取数据列表
get_data_list() {
// 加载loding
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
this.setData({
data_list_loding_status: 1,
});
// 获取数据
var data = {};
// 是否有坐标
if ((this.user_location || null) != null) {
data["lng"] = this.user_location.lng;
data["lat"] = this.user_location.lat;
}
// 请求接口
uni.request({
url: app.globalData.get_request_url("switchinfo", "extraction", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
uni.hideLoading();
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.extraction_address.length > 0) {
this.setData({
data_list: data.extraction_address,
data_list_loding_status: 3,
data_bottom_line_status: true,
});
} else {
this.setData({
data_list_loding_status: 0,
});
}
} else {
this.setData({
data_list_loding_status: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 地图查看
address_map_event(e) {
var index = e.currentTarget.dataset.index || 0;
var data = this.data_list[index] || null;
if (data == null) {
app.globalData.showToast(this.$t('user-order-detail.user-order-detail.i876o3'));
return false;
}
// 打开地图
var name = data.alias || data.name || "";
var address = (data.province_name || "") + (data.city_name || "") + (data.county_name || "") + (data.address || "");
app.globalData.open_location(data.lng, data.lat, name, address);
},
// 地址内容事件
address_conent_event(e) {
var index = e.currentTarget.dataset.index || 0;
var is_back = this.params.is_back || 0;
if (is_back == 1) {
uni.setStorage({
key: app.globalData.data.cache_buy_user_address_select_key,
data: this.data_list[index],
});
uni.navigateBack();
}
},
// 切换选择事件
address_switch_event(e) {
var index = e.currentTarget.dataset.index || 0;
var temp_data = this.data_list;
if ((temp_data[index] || null) == null) {
app.globalData.showToast(this.$t('extraction-switch.extraction-switch.613b58'));
return false;
}
// 请求切换
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url("switchsave", "extraction", "distribution"),
method: "POST",
data: {
id: temp_data[index]["id"],
value: temp_data[index]["id_old"] || 0,
},
dataType: "json",
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
app.globalData.showToast(res.data.msg, "success");
var temp_data = this.data_list;
for (var i in temp_data) {
temp_data[i]["is_default"] = i == index ? 1 : 0;
}
this.setData({
data_list: temp_data,
});
} else {
if (app.globalData.is_login_check(res.data)) {
app.globalData.showToast(res.data.msg);
} else {
app.globalData.showToast(this.$t('common.sub_error_retry_tips'));
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style>
@import "./extraction-switch.css";
</style>
<template>
<view :class="theme_view">
<view class="page">
<view v-if="data_list.length > 0" class="data-list padding-main">
<view v-for="(item, index) in data_list" :key="index" class="item bg-white padding-main border-radius-main spacing-mb">
<view @tap="address_conent_event" :data-index="index" class="oh">
<view v-if="(item.logo || null) != null" class="fl oh margin-right-lg">
<image class="dis-block address-logo radius" :src="item.logo" mode="widthFix"></image>
</view>
<view class="oh">
<view class="base oh padding-bottom-main padding-top-xs">
<text v-if="(item.alias || null) != null" class="address-alias br-main cr-main round margin-right-sm">{{ item.alias }}</text>
<text>{{ item.name }}</text>
<text class="fr">{{ item.tel }}</text>
</view>
<view class="address oh padding-top-sm">
<image class="item-icon fl margin-top-xs" :src="common_static_url + 'map-icon.png'" mode="widthFix"></image>
<view class="text fr"> {{ item.province_name || "" }}{{ item.city_name || "" }}{{ item.county_name || "" }}{{ item.address || "" }} </view>
</view>
</view>
</view>
<view v-if="((item.distance_value || null) != null && (item.distance_unit || null) != null) || ((item.lng || 0) != 0 && (item.lat || 0) != 0)" class="br-t oh padding-top-main margin-top-main">
<view v-if="(item.distance_value || null) != null && (item.distance_unit || null) != null" class="fl margin-top-lg">
<text class="cr-grey">{{$t('extraction-switch.extraction-switch.w94x36')}}</text>
<text class="cr-base">{{ item.distance_value }}</text>
<text class="cr-grey">{{ item.distance_unit }}</text>
</view>
<view class="item-operation fr oh">
<button v-if="(item.is_default || 0) == 0" class="round bg-white cr-green br-green" type="default" size="mini" @tap="address_switch_event" :data-index="index" hover-class="none">{{$t('common.select')}}</button>
<button v-if="(item.lng || 0) != 0 && (item.lat || 0) != 0" class="round bg-white cr-base br" type="default" size="mini" @tap="address_map_event" :data-index="index" hover-class="none">{{$t('buy.buy.o7722q')}}</button>
</view>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<!-- 位置选择 -->
<component-choice-location ref="choice_location" :propIsShowAddressChoice="false" @onBack="user_back_choice_location"></component-choice-location>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
import componentChoiceLocation from '@/components/choice-location/choice-location';
var common_static_url = app.globalData.get_static_url("common");
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
common_static_url: common_static_url,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_list: [],
params: null,
user_location: null,
is_first: 1,
home_extraction_address_position: 0,
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentChoiceLocation
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
home_extraction_address_position: app.globalData.get_config("config.home_extraction_address_position", 0),
});
// 清除位置缓存信息
app.globalData.choice_user_location_remove();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 是否需要选择地理位置
if (this.home_extraction_address_position == 1) {
// 用户位置初始化
this.user_location_init();
} else {
this.init();
}
this.setData({
is_first: 0,
});
// 是否获取位置
if (this.home_extraction_address_position == 1) {
if((this.user_location || null) == null || this.user_location.status != 1) {
this.$refs.choice_location.choose_user_location();
}
}
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data_list();
},
methods: {
// 初始化
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
this.get_data_list();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 选择用户地理位置回调
user_back_choice_location(e) {
this.setData({
user_location: e
});
this.init();
},
// 地址信息初始化
user_location_init() {
this.setData({
user_location: app.globalData.choice_user_location_init()
});
},
// 获取数据列表
get_data_list() {
// 加载loding
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
this.setData({
data_list_loding_status: 1,
});
// 获取数据
var data = {};
// 是否有坐标
if ((this.user_location || null) != null) {
data["lng"] = this.user_location.lng;
data["lat"] = this.user_location.lat;
}
// 请求接口
uni.request({
url: app.globalData.get_request_url("switchinfo", "extraction", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
uni.hideLoading();
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.extraction_address.length > 0) {
this.setData({
data_list: data.extraction_address,
data_list_loding_status: 3,
data_bottom_line_status: true,
});
} else {
this.setData({
data_list_loding_status: 0,
});
}
} else {
this.setData({
data_list_loding_status: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 地图查看
address_map_event(e) {
var index = e.currentTarget.dataset.index || 0;
var data = this.data_list[index] || null;
if (data == null) {
app.globalData.showToast(this.$t('user-order-detail.user-order-detail.i876o3'));
return false;
}
// 打开地图
var name = data.alias || data.name || "";
var address = (data.province_name || "") + (data.city_name || "") + (data.county_name || "") + (data.address || "");
app.globalData.open_location(data.lng, data.lat, name, address);
},
// 地址内容事件
address_conent_event(e) {
var index = e.currentTarget.dataset.index || 0;
var is_back = this.params.is_back || 0;
if (is_back == 1) {
uni.setStorage({
key: app.globalData.data.cache_buy_user_address_select_key,
data: this.data_list[index],
});
uni.navigateBack();
}
},
// 切换选择事件
address_switch_event(e) {
var index = e.currentTarget.dataset.index || 0;
var temp_data = this.data_list;
if ((temp_data[index] || null) == null) {
app.globalData.showToast(this.$t('extraction-switch.extraction-switch.613b58'));
return false;
}
// 请求切换
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url("switchsave", "extraction", "distribution"),
method: "POST",
data: {
id: temp_data[index]["id"],
value: temp_data[index]["id_old"] || 0,
},
dataType: "json",
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
app.globalData.showToast(res.data.msg, "success");
var temp_data = this.data_list;
for (var i in temp_data) {
temp_data[i]["is_default"] = i == index ? 1 : 0;
}
this.setData({
data_list: temp_data,
});
} else {
if (app.globalData.is_login_check(res.data)) {
app.globalData.showToast(res.data.msg);
} else {
app.globalData.showToast(this.$t('common.sub_error_retry_tips'));
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style>
@import "./extraction-switch.css";
</style>

View File

@ -1,241 +1,244 @@
<template>
<view :class="theme_view">
<view v-if="data_base != null">
<view class="padding-main">
<!-- 未申请 -->
<view v-if="extraction == null">
<view v-if="(data_base.self_extraction_apply_desc || null) != null && data_base.self_extraction_apply_desc.length > 0" class="notice-content-blue spacing-mb">
<view v-for="(item, index) in data_base.self_extraction_apply_desc" :key="index" class="item">
{{ item }}
</view>
</view>
<view class="margin-top-xxxl">
<button data-value="/pages/plugins/distribution/extraction-apply/extraction-apply" @tap="url_event" class="bg-main br-main cr-white round wh-auto" type="default" size="mini" hover-class="none">{{$t('extraction.extraction.suna53')}}</button>
</view>
</view>
<!-- 已存在申请信息 -->
<view v-else class="apply-already">
<!-- status 状态0待审核, 1已通过, 2已拒绝 -->
<!-- 审核中 -->
<view v-if="extraction.status == 0">
<view class="padding-main border-radius-main bg-white">
<view class="cr-red tc text-size-lg">{{$t('extraction.extraction.j0o47u')}}</view>
</view>
<view class="margin-top-xxxl">
<button data-value="/pages/plugins/distribution/extraction-apply/extraction-apply" @tap="url_event" class="bg-green br-green cr-white round wh-auto" type="default" size="mini" hover-class="none">{{$t('common.edit')}}</button>
</view>
</view>
<!-- 审核通过 -->
<view v-else-if="extraction.status == 1 || extraction.status == 3" class="valid">
<view class="padding-main border-radius-main bg-white">
<!-- 导航 -->
<view class="padding-bottom-main br-b">
<text class="fw-b">{{$t('extraction.extraction.60601g')}}</text>
<view data-value="/pages/plugins/distribution/extraction-apply/extraction-apply" @tap="url_event" class="fr cr-blue cp">{{$t('extraction.extraction.48rp75')}}</view>
</view>
<!-- 地址信息 -->
<view class="margin-top-lg" @tap="address_map_event">
<text v-if="(extraction.alias || null) != null" class="alias br-main cr-main bg-white round margin-right-sm">{{ extraction.alias }}</text>
<text class="cr-base">{{ extraction.province_name }}{{ extraction.city_name }}{{ extraction.county_name }}{{ extraction.address }}</text>
</view>
</view>
<view v-if="extraction.status == 1" class="spacing-mt">
<view class="padding-main border-radius-main bg-white">
<!-- 导航 -->
<view class="padding-bottom-main br-b">
<text class="fw-b">{{$t('extraction.extraction.641gp7')}}</text>
<view data-value="/pages/plugins/distribution/extraction-order/extraction-order" @tap="url_event" class="fr cr-blue cp">{{$t('extraction.extraction.wcv68q')}}</view>
</view>
<!-- 自提地点统计 -->
<view class="statistics oh padding-top-main">
<view class="item fl tc padding-main" data-value="0" @tap="order_event">
<view class="title cr-base">{{$t('extraction.extraction.53h4fj')}}</view>
<view class="single-text cr-red fw-b margin-top-sm">{{ statistical.order_wait || 0 }}</view>
</view>
<view class="item fl tc padding-main" data-value="1" @tap="order_event">
<view class="title cr-base">{{$t('extraction.extraction.wq25fk')}}</view>
<view class="single-text cr-green fw-b margin-top-sm">{{ statistical.order_already || 0 }}</view>
</view>
</view>
</view>
<!-- 通知 -->
<view v-if="(data_base || null) != null && (data_base.self_extraction_common_notice || null) != null && data_base.self_extraction_common_notice.length > 0" class="spacing-mt">
<view class="notice-content">
<view v-for="(item, index) in data_base.self_extraction_common_notice" :key="index" class="item">
{{ item }}
</view>
</view>
</view>
</view>
<!-- 已解约 -->
<view v-else class="spacing-mt">
<view class="notice-content-blue">{{$t('extraction.extraction.864dtt')}}</view>
</view>
</view>
<!-- 审核失败 -->
<view v-else="extraction.status == 2">
<view class="padding-main border-radius-main bg-white spacing-mb">
<view class="cr-red tc text-size-lg">{{$t('extraction.extraction.11825x')}}</view>
<view v-if="(extraction.fail_reason || null) != null" class="margin-top-lg">
<text class="fw-b">{{$t('extraction.extraction.w6hg74')}}</text>
<text class="cr-grey">{{ extraction.fail_reason }}</text>
</view>
</view>
<view class="margin-top-xxxl">
<button data-value="/pages/plugins/distribution/extraction-apply/extraction-apply" @tap="url_event" class="bg-green br-green cr-white round wh-auto" type="default" size="mini" hover-class="none">{{$t('common.edit')}}</button>
</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: "",
data_base: null,
extraction: null,
statistical: null,
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
this.get_data();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 获取数据
get_data() {
uni.request({
url: app.globalData.get_request_url("index", "extraction", "distribution"),
method: "POST",
data: {},
dataType: "json",
success: (res) => {
uni.hideLoading();
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
extraction: data.extraction || null,
statistical: data.statistical || null,
data_list_loding_msg: "",
data_list_loding_status: 0,
data_bottom_line_status: true,
});
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "get_data")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 地图查看
address_map_event(e) {
if ((this.extraction || null) == null) {
return false;
}
var data = this.extraction;
// 打开地图
var name = data.alias || data.name || "";
var address = (data.province_name || "") + (data.city_name || "") + (data.county_name || "") + (data.address || "");
app.globalData.open_location(data.lng, data.lat, name, address);
},
// 进入取货订单管理
order_event(e) {
var value = e.currentTarget.dataset.value || 0;
app.globalData.url_open('/pages/plugins/distribution/extraction-order/extraction-order?status=' + value);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./extraction.css";
</style>
<template>
<view :class="theme_view">
<view v-if="data_base != null">
<view class="padding-main">
<!-- 未申请 -->
<view v-if="extraction == null">
<view v-if="(data_base.self_extraction_apply_desc || null) != null && data_base.self_extraction_apply_desc.length > 0" class="notice-content-blue spacing-mb">
<view v-for="(item, index) in data_base.self_extraction_apply_desc" :key="index" class="item">
{{ item }}
</view>
</view>
<view class="margin-top-xxxl">
<button data-value="/pages/plugins/distribution/extraction-apply/extraction-apply" @tap="url_event" class="bg-main br-main cr-white round wh-auto" type="default" size="mini" hover-class="none">{{$t('extraction.extraction.suna53')}}</button>
</view>
</view>
<!-- 已存在申请信息 -->
<view v-else class="apply-already">
<!-- status 状态0待审核, 1已通过, 2已拒绝 -->
<!-- 审核中 -->
<view v-if="extraction.status == 0">
<view class="padding-main border-radius-main bg-white">
<view class="cr-red tc text-size-lg">{{$t('extraction.extraction.j0o47u')}}</view>
</view>
<view class="margin-top-xxxl">
<button data-value="/pages/plugins/distribution/extraction-apply/extraction-apply" @tap="url_event" class="bg-green br-green cr-white round wh-auto" type="default" size="mini" hover-class="none">{{$t('common.edit')}}</button>
</view>
</view>
<!-- 审核通过 -->
<view v-else-if="extraction.status == 1 || extraction.status == 3" class="valid">
<view class="padding-main border-radius-main bg-white">
<!-- 导航 -->
<view class="padding-bottom-main br-b">
<text class="fw-b">{{$t('extraction.extraction.60601g')}}</text>
<view data-value="/pages/plugins/distribution/extraction-apply/extraction-apply" @tap="url_event" class="fr cr-blue cp">{{$t('extraction.extraction.48rp75')}}</view>
</view>
<!-- 地址信息 -->
<view class="margin-top-lg" @tap="address_map_event">
<text v-if="(extraction.alias || null) != null" class="alias br-main cr-main bg-white round margin-right-sm">{{ extraction.alias }}</text>
<text class="cr-base">{{ extraction.province_name }}{{ extraction.city_name }}{{ extraction.county_name }}{{ extraction.address }}</text>
</view>
</view>
<view v-if="extraction.status == 1" class="spacing-mt">
<view class="padding-main border-radius-main bg-white">
<!-- 导航 -->
<view class="padding-bottom-main br-b">
<text class="fw-b">{{$t('extraction.extraction.641gp7')}}</text>
<view data-value="/pages/plugins/distribution/extraction-order/extraction-order" @tap="url_event" class="fr cr-blue cp">{{$t('extraction.extraction.wcv68q')}}</view>
</view>
<!-- 自提地点统计 -->
<view class="statistics oh padding-top-main">
<view class="item fl tc padding-main" data-value="0" @tap="order_event">
<view class="title cr-base">{{$t('extraction.extraction.53h4fj')}}</view>
<view class="single-text cr-red fw-b margin-top-sm">{{ statistical.order_wait || 0 }}</view>
</view>
<view class="item fl tc padding-main" data-value="1" @tap="order_event">
<view class="title cr-base">{{$t('extraction.extraction.wq25fk')}}</view>
<view class="single-text cr-green fw-b margin-top-sm">{{ statistical.order_already || 0 }}</view>
</view>
</view>
</view>
<!-- 通知 -->
<view v-if="(data_base || null) != null && (data_base.self_extraction_common_notice || null) != null && data_base.self_extraction_common_notice.length > 0" class="spacing-mt">
<view class="notice-content">
<view v-for="(item, index) in data_base.self_extraction_common_notice" :key="index" class="item">
{{ item }}
</view>
</view>
</view>
</view>
<!-- 已解约 -->
<view v-else class="spacing-mt">
<view class="notice-content-blue">{{$t('extraction.extraction.864dtt')}}</view>
</view>
</view>
<!-- 审核失败 -->
<view v-else="extraction.status == 2">
<view class="padding-main border-radius-main bg-white spacing-mb">
<view class="cr-red tc text-size-lg">{{$t('extraction.extraction.11825x')}}</view>
<view v-if="(extraction.fail_reason || null) != null" class="margin-top-lg">
<text class="fw-b">{{$t('extraction.extraction.w6hg74')}}</text>
<text class="cr-grey">{{ extraction.fail_reason }}</text>
</view>
</view>
<view class="margin-top-xxxl">
<button data-value="/pages/plugins/distribution/extraction-apply/extraction-apply" @tap="url_event" class="bg-green br-green cr-white round wh-auto" type="default" size="mini" hover-class="none">{{$t('common.edit')}}</button>
</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_bottom_line_status: false,
data_list_loding_status: 1,
data_list_loding_msg: "",
data_base: null,
extraction: null,
statistical: null,
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 加载数据
this.init();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.get_data();
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
this.get_data();
} else {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
},
// 获取数据
get_data() {
uni.request({
url: app.globalData.get_request_url("index", "extraction", "distribution"),
method: "POST",
data: {},
dataType: "json",
success: (res) => {
uni.hideLoading();
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
data_base: data.base || null,
extraction: data.extraction || null,
statistical: data.statistical || null,
data_list_loding_msg: "",
data_list_loding_status: 0,
data_bottom_line_status: true,
});
} else {
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "get_data")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
uni.stopPullDownRefresh();
this.setData({
data_bottom_line_status: false,
data_list_loding_status: 2,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 地图查看
address_map_event(e) {
if ((this.extraction || null) == null) {
return false;
}
var data = this.extraction;
// 打开地图
var name = data.alias || data.name || "";
var address = (data.province_name || "") + (data.city_name || "") + (data.county_name || "") + (data.address || "");
app.globalData.open_location(data.lng, data.lat, name, address);
},
// 进入取货订单管理
order_event(e) {
var value = e.currentTarget.dataset.value || 0;
app.globalData.url_open('/pages/plugins/distribution/extraction-order/extraction-order?status=' + value);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./extraction.css";
</style>

View File

@ -1,177 +1,180 @@
<template>
<view :class="theme_view">
<view v-if="data_base != null">
<view class="padding-horizontal-main padding-top-main">
<!-- 等级信息 -->
<view v-if="level_list.length > 0" class="panel-item spacing-mb">
<view v-for="(item, index) in level_list" :key="index" class="padding-main border-radius-main bg-white spacing-mb">
<view class="br-b padding-bottom-main fw-b text-size">{{ item.name }}</view>
<view class="panel-content oh padding-top-main">
<view class="item br-b oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{$t('introduce.introduce.017d67')}}</view>
<view class="content fl br-l padding-left-main">
<image :src="item.images_url" class="dis-block fl level-icon" mode="widthFix"></image>
</view>
</view>
<view class="item br-b oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{$t('introduce.introduce.el4ib2')}}</view>
<view class="content fl br-l padding-left-main">
<view>{{$t('introduce.introduce.syf66q')}}{{ item.level_rate_one }}%</view>
<view v-if="data_base.level == undefined || data_base.level > 0">{{$t('introduce.introduce.q4t9kl')}}{{ item.level_rate_two }}%</view>
<view v-if="data_base.level == undefined || data_base.level > 1">{{$t('introduce.introduce.e5os6e')}}{{ item.level_rate_three }}%</view>
</view>
</view>
<view class="item br-b oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{$t('introduce.introduce.d7kle4')}}</view>
<view class="content fl br-l padding-left-main">
<block v-if="(item.rules_msg_list || null) != null">
<view>{{ item.rules_msg_list.name }}</view>
<view class="padding-left-xxl">
<block v-if="(item.rules_msg_list.data || null) != null && item.rules_msg_list.data.length > 0">
<block v-for="(rv, ri) in item.rules_msg_list.data" :key="ri">
<view>
<text>{{ rv.name }}</text>
<text class="fr fw-b">{{ rv.value }}</text>
</view>
</block>
</block>
<block v-else>
<view class="cr-grey">{{$t('introduce.introduce.5t5vzi')}}</view>
</block>
</view>
</block>
</view>
</view>
</view>
</view>
</view>
<!-- 等级介绍 -->
<view v-if="(data_base.user_center_level_desc || null) != null && data_base.user_center_level_desc.length > 0" class="spacing-mb">
<view class="notice-content-blue">
<view v-for="(item, index) in data_base.user_center_level_desc" :key="index" class="item">
{{ item }}
</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
data_base: null,
level_list: [],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("index", "introduce", "distribution"),
method: "POST",
data: {
id: this.params.id,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
var data_base = data.base || null;
var level_list = (data.level_list || null) != null && data.level_list.length > 0 ? data.level_list : [];
this.setData({
data_base: data_base,
level_list: level_list,
data_list_loding_status: data_base == null || level_list.length <= 0 ? 0 : 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style>
@import "./introduce.css";
</style>
<template>
<view :class="theme_view">
<view v-if="data_base != null">
<view class="padding-horizontal-main padding-top-main">
<!-- 等级信息 -->
<view v-if="level_list.length > 0" class="panel-item spacing-mb">
<view v-for="(item, index) in level_list" :key="index" class="padding-main border-radius-main bg-white spacing-mb">
<view class="br-b padding-bottom-main fw-b text-size">{{ item.name }}</view>
<view class="panel-content oh padding-top-main">
<view class="item br-b oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{$t('introduce.introduce.017d67')}}</view>
<view class="content fl br-l padding-left-main">
<image :src="item.images_url" class="dis-block fl level-icon" mode="widthFix"></image>
</view>
</view>
<view class="item br-b oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{$t('introduce.introduce.el4ib2')}}</view>
<view class="content fl br-l padding-left-main">
<view>{{$t('introduce.introduce.syf66q')}}{{ item.level_rate_one }}%</view>
<view v-if="data_base.level == undefined || data_base.level > 0">{{$t('introduce.introduce.q4t9kl')}}{{ item.level_rate_two }}%</view>
<view v-if="data_base.level == undefined || data_base.level > 1">{{$t('introduce.introduce.e5os6e')}}{{ item.level_rate_three }}%</view>
</view>
</view>
<view class="item br-b oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{$t('introduce.introduce.d7kle4')}}</view>
<view class="content fl br-l padding-left-main">
<block v-if="(item.rules_msg_list || null) != null">
<view>{{ item.rules_msg_list.name }}</view>
<view class="padding-left-xxl">
<block v-if="(item.rules_msg_list.data || null) != null && item.rules_msg_list.data.length > 0">
<block v-for="(rv, ri) in item.rules_msg_list.data" :key="ri">
<view>
<text>{{ rv.name }}</text>
<text class="fr fw-b">{{ rv.value }}</text>
</view>
</block>
</block>
<block v-else>
<view class="cr-grey">{{$t('introduce.introduce.5t5vzi')}}</view>
</block>
</view>
</block>
</view>
</view>
</view>
</view>
</view>
<!-- 等级介绍 -->
<view v-if="(data_base.user_center_level_desc || null) != null && data_base.user_center_level_desc.length > 0" class="spacing-mb">
<view class="notice-content-blue">
<view v-for="(item, index) in data_base.user_center_level_desc" :key="index" class="item">
{{ item }}
</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
data_base: null,
level_list: [],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("index", "introduce", "distribution"),
method: "POST",
data: {
id: this.params.id,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
var data_base = data.base || null;
var level_list = (data.level_list || null) != null && data.level_list.length > 0 ? data.level_list : [];
this.setData({
data_base: data_base,
level_list: level_list,
data_list_loding_status: data_base == null || level_list.length <= 0 ? 0 : 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style>
@import "./introduce.css";
</style>

View File

@ -101,6 +101,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -87,6 +87,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -1,213 +1,216 @@
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<view v-for="(item, index) in nav_status_list" :key="index">
<view :class="'item fl tc ' + (nav_status_index == index ? 'cr-main nav-active-line' : '')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</view>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<image class="avatar dis-block fl circle" :src="item.avatar" mode="widthFix" @tap="avatar_event" :data-value="item.avatar"></image>
<text class="cr-base margin-left-sm">{{ item.user_name_view || "" }}</text>
<text class="cr-base fr">{{ item.order_status_name }}</text>
</view>
<view :data-value="'/pages/plugins/distribution/order-detail/order-detail?id=' + item.id" @tap="url_event" class="content margin-top cp">
<view v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base">{{ item[fv.field] }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</view>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_status_list: [
{ name: this.$t('common.all'), value: "-1" },
{ name: this.$t('order.order.pjb15r'), value: "1" },
{ name: this.$t('order.order.s8g966'), value: "2" },
{ name: this.$t('order.order.q820hx'), value: "3" },
{ name: this.$t('order.order.15lr5l'), value: "4" },
{ name: this.$t('detail.detail.32171c'), value: "5,6" },
],
nav_status_index: 0,
content_list: [
{ name: this.$t('order-detail.order-detail.36op8f'), field: "order_no" },
{ name: this.$t('order-detail.order-detail.x3ge6c'), field: "total_price" },
{ name: this.$t('user-order-detail.user-order-detail.23qj7m'), field: "order_pay_status_name" },
{ name: this.$t('order.order.330m76'), field: "order_client_type_name" },
{ name: this.$t('order-detail.order-detail.9153qn'), field: "add_time" },
],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_status_index = 0;
if ((params.status || null) != null) {
for (var i in this.nav_status_list) {
if (this.nav_status_list[i]["value"] == params.status) {
nav_status_index = i;
break;
}
}
}
this.setData({
params: params,
nav_status_index: nav_status_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 参数
var order_status = (this.nav_status_list[this.nav_status_index] || null) == null ? -1 : this.nav_status_list[this.nav_status_index]["value"];
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "order", "distribution"),
method: "POST",
data: {
page: this.data_page,
status: order_status,
uid: this.params.uid || 0,
is_more: 1,
},
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<view v-for="(item, index) in nav_status_list" :key="index">
<view :class="'item fl tc ' + (nav_status_index == index ? 'cr-main nav-active-line' : '')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</view>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<image class="avatar dis-block fl circle" :src="item.avatar" mode="widthFix" @tap="avatar_event" :data-value="item.avatar"></image>
<text class="cr-base margin-left-sm">{{ item.user_name_view || "" }}</text>
<text class="cr-base fr">{{ item.order_status_name }}</text>
</view>
<view :data-value="'/pages/plugins/distribution/order-detail/order-detail?id=' + item.id" @tap="url_event" class="content margin-top cp">
<view v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base">{{ item[fv.field] }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</view>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_status_list: [
{ name: this.$t('common.all'), value: "-1" },
{ name: this.$t('order.order.pjb15r'), value: "1" },
{ name: this.$t('order.order.s8g966'), value: "2" },
{ name: this.$t('order.order.q820hx'), value: "3" },
{ name: this.$t('order.order.15lr5l'), value: "4" },
{ name: this.$t('detail.detail.32171c'), value: "5,6" },
],
nav_status_index: 0,
content_list: [
{ name: this.$t('order-detail.order-detail.36op8f'), field: "order_no" },
{ name: this.$t('order-detail.order-detail.x3ge6c'), field: "total_price" },
{ name: this.$t('user-order-detail.user-order-detail.23qj7m'), field: "order_pay_status_name" },
{ name: this.$t('order.order.330m76'), field: "order_client_type_name" },
{ name: this.$t('order-detail.order-detail.9153qn'), field: "add_time" },
],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_status_index = 0;
if ((params.status || null) != null) {
for (var i in this.nav_status_list) {
if (this.nav_status_list[i]["value"] == params.status) {
nav_status_index = i;
break;
}
}
}
this.setData({
params: params,
nav_status_index: nav_status_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 参数
var order_status = (this.nav_status_list[this.nav_status_index] || null) == null ? -1 : this.nav_status_list[this.nav_status_index]["value"];
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "order", "distribution"),
method: "POST",
data: {
page: this.data_page,
status: order_status,
uid: this.params.uid || 0,
is_more: 1,
},
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
@ -217,69 +220,69 @@
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_status_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 头像查看
avatar_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('order.order.p3scy0'));
}
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./order.css";
</style>
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_status_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 头像查看
avatar_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('order.order.p3scy0'));
}
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./order.css";
</style>

View File

@ -1,225 +1,228 @@
<template>
<view :class="theme_view">
<view v-if="user_share_poster != null || user_share_qrode != null || user_share_url != null" class="padding-main">
<!-- 海报 -->
<view v-if="user_share_poster != null" class="share qrcode padding-main border-radius-main bg-white spacing-mb">
<view class="title border-color-main padding-left-lg text-size fw-b">{{$t('poster.poster.rbdj4b')}}</view>
<view class="cr-grey br-b padding-vertical-main">{{$t('poster.poster.m54q3e')}}</view>
<view class="margin-top-lg">
<image :src="user_share_poster" class="wh-auto dis-block radius" mode="widthFix"></image>
</view>
<view class="submit-double oh margin-top-lg">
<button class="fl item bg-white cr-green br-green round" type="default" hover-class="none" size="mini" :data-value="user_share_poster" @tap="images_show_event">{{$t('poster.poster.b5i123')}}</button>
<view class="fr item">
<button class="bg-white cr-main br-main round" type="default" hover-class="none" size="mini" @tap="poster_refresh_event">{{$t('poster.poster.hk8c9p')}}</button>
<button class="fr bg-white cr-base br-base round" type="default" hover-class="none" size="mini" @tap="share_event">{{$t('common.share')}}</button>
</view>
</view>
</view>
<!-- 二维码 -->
<view v-if="user_share_qrode != null" class="share qrcode padding-main border-radius-main bg-white spacing-mb">
<view class="title border-color-main padding-left-lg text-size fw-b">{{$t('poster.poster.9y4bwq')}}</view>
<view class="cr-grey br-b padding-vertical-main">{{$t('poster.poster.h212v8')}}</view>
<view class="margin-top-lg">
<image :src="user_share_qrode" class="wh-auto dis-block radius" mode="widthFix"></image>
</view>
<view class="margin-top-lg">
<button class="dis-block wh-auto bg-white cr-green br-green round" type="default" size="mini" hover-class="none" @tap="images_show_event" :data-value="user_share_qrode">{{$t('poster.poster.j3qv45')}}</button>
</view>
</view>
<!-- 链接 -->
<view v-if="user_share_url != null" class="share url padding-main border-radius-main bg-white spacing-mb">
<view class="title border-color-main padding-left-lg text-size fw-b">{{$t('poster.poster.r534xd')}}</view>
<view class="cr-grey br-b padding-vertical-main">{{$t('poster.poster.vn36y7')}}</view>
<view class="cr-main text-size margin-top-lg">{{ user_share_url }}</view>
<view class="margin-top-lg">
<button class="dis-block wh-auto bg-white cr-green br-green round" type="default" size="mini" hover-class="none" @tap="url_event" :data-value="user_share_url">{{$t('poster.poster.673605')}}</button>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
<!-- 分享弹窗 -->
<component-share-popup ref="share"></component-share-popup>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
import componentSharePopup from "@/components/share-popup/share-popup";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: this.$t('common.loading_in_text'),
data_bottom_line_status: false,
user_share_poster: null,
user_share_qrode: null,
user_share_url: null,
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentSharePopup
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 加载数据
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("index", "poster", "distribution"),
method: "POST",
data: {},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
user_share_poster: data.user_share_poster || null,
user_share_qrode: data.user_share_qrode || null,
user_share_url: data.user_share_url || null,
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
// 是否全部没数据
if (this.user_share_poster == null && this.user_share_qrode == null && this.user_share_url == null) {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 刷新海报
poster_refresh_event(e) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url("refresh", "poster", "distribution"),
method: "POST",
data: {},
dataType: "json",
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
this.setData({
user_share_poster: res.data.data,
});
app.globalData.showToast(res.data.msg, "success");
} else {
if (app.globalData.is_login_check(res.data, self, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 图片查看事件
images_show_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('poster.poster.eu3j21'));
}
},
// url事件
url_event(e) {
app.globalData.text_copy_event(e);
},
// 分享事件
share_event(e) {
if ((this.$refs.share || null) != null) {
this.$refs.share.init({
type: 2,
images: this.user_share_poster || this.user_share_qrode
});
}
}
},
};
</script>
<style>
@import "./poster.css";
</style>
<template>
<view :class="theme_view">
<view v-if="user_share_poster != null || user_share_qrode != null || user_share_url != null" class="padding-main">
<!-- 海报 -->
<view v-if="user_share_poster != null" class="share qrcode padding-main border-radius-main bg-white spacing-mb">
<view class="title border-color-main padding-left-lg text-size fw-b">{{$t('poster.poster.rbdj4b')}}</view>
<view class="cr-grey br-b padding-vertical-main">{{$t('poster.poster.m54q3e')}}</view>
<view class="margin-top-lg">
<image :src="user_share_poster" class="wh-auto dis-block radius" mode="widthFix"></image>
</view>
<view class="submit-double oh margin-top-lg">
<button class="fl item bg-white cr-green br-green round" type="default" hover-class="none" size="mini" :data-value="user_share_poster" @tap="images_show_event">{{$t('poster.poster.b5i123')}}</button>
<view class="fr item">
<button class="bg-white cr-main br-main round" type="default" hover-class="none" size="mini" @tap="poster_refresh_event">{{$t('poster.poster.hk8c9p')}}</button>
<button class="fr bg-white cr-base br-base round" type="default" hover-class="none" size="mini" @tap="share_event">{{$t('common.share')}}</button>
</view>
</view>
</view>
<!-- 二维码 -->
<view v-if="user_share_qrode != null" class="share qrcode padding-main border-radius-main bg-white spacing-mb">
<view class="title border-color-main padding-left-lg text-size fw-b">{{$t('poster.poster.9y4bwq')}}</view>
<view class="cr-grey br-b padding-vertical-main">{{$t('poster.poster.h212v8')}}</view>
<view class="margin-top-lg">
<image :src="user_share_qrode" class="wh-auto dis-block radius" mode="widthFix"></image>
</view>
<view class="margin-top-lg">
<button class="dis-block wh-auto bg-white cr-green br-green round" type="default" size="mini" hover-class="none" @tap="images_show_event" :data-value="user_share_qrode">{{$t('poster.poster.j3qv45')}}</button>
</view>
</view>
<!-- 链接 -->
<view v-if="user_share_url != null" class="share url padding-main border-radius-main bg-white spacing-mb">
<view class="title border-color-main padding-left-lg text-size fw-b">{{$t('poster.poster.r534xd')}}</view>
<view class="cr-grey br-b padding-vertical-main">{{$t('poster.poster.vn36y7')}}</view>
<view class="cr-main text-size margin-top-lg">{{ user_share_url }}</view>
<view class="margin-top-lg">
<button class="dis-block wh-auto bg-white cr-green br-green round" type="default" size="mini" hover-class="none" @tap="url_event" :data-value="user_share_url">{{$t('poster.poster.673605')}}</button>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
<!-- 分享弹窗 -->
<component-share-popup ref="share"></component-share-popup>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
import componentSharePopup from "@/components/share-popup/share-popup";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list_loding_status: 1,
data_list_loding_msg: this.$t('common.loading_in_text'),
data_bottom_line_status: false,
user_share_poster: null,
user_share_qrode: null,
user_share_url: null,
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
componentSharePopup
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 加载数据
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("index", "poster", "distribution"),
method: "POST",
data: {},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
user_share_poster: data.user_share_poster || null,
user_share_qrode: data.user_share_qrode || null,
user_share_url: data.user_share_url || null,
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
// 是否全部没数据
if (this.user_share_poster == null && this.user_share_qrode == null && this.user_share_url == null) {
this.setData({
data_list_loding_status: 0,
data_bottom_line_status: false,
});
}
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 刷新海报
poster_refresh_event(e) {
uni.showLoading({
title: this.$t('common.processing_in_text'),
});
uni.request({
url: app.globalData.get_request_url("refresh", "poster", "distribution"),
method: "POST",
data: {},
dataType: "json",
success: (res) => {
uni.hideLoading();
if (res.data.code == 0) {
this.setData({
user_share_poster: res.data.data,
});
app.globalData.showToast(res.data.msg, "success");
} else {
if (app.globalData.is_login_check(res.data, self, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.hideLoading();
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 图片查看事件
images_show_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('poster.poster.eu3j21'));
}
},
// url事件
url_event(e) {
app.globalData.text_copy_event(e);
},
// 分享事件
share_event(e) {
if ((this.$refs.share || null) != null) {
this.$refs.share.init({
type: 2,
images: this.user_share_poster || this.user_share_qrode
});
}
}
},
};
</script>
<style>
@import "./poster.css";
</style>

View File

@ -1,140 +1,143 @@
<template>
<view :class="theme_view">
<block v-if="detail != null">
<view class="padding-horizontal-main padding-top-main">
<view v-if="detail_list.length > 0" class="panel-item padding-main border-radius-main bg-white spacing-mb">
<view class="panel-content oh">
<view v-for="(item, index) in detail_list" :key="index" class="item br-b-dashed oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{ item.name }}</view>
<view class="content fl br-l padding-left-main">{{ item.value }}</view>
</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
detail: null,
detail_list: [],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("detail", "profit", "distribution"),
method: "POST",
data: {
id: this.params.id,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
detail: data.data,
detail_list: [
{ name: this.$t('order-detail.order-detail.x3ge6c'), value: data.data.total_price || "" },
{ name: this.$t('order-detail.order-detail.v52n5r'), value: data.data.refund_price || "" },
{ name: this.$t('profit.profit.utg512'), value: data.data.profit_price || "" },
{ name: this.$t('profit.profit.6a7t71'), value: data.data.level_name || "" },
{ name: this.$t('profit-detail.profit-detail.kn8yye'), value: data.data.status_name || "" },
{ name: this.$t('user-order-detail.user-order-detail.yxwu8n'), value: data.data.order_status_name || "" },
{ name: this.$t('profit-detail.profit-detail.x28rw5'), value: data.data.order_pay_status_name || "" },
{ name: this.$t('order.order.330m76'), value: data.data.order_client_type_name || "" },
{ name: this.$t('common.add_time'), value: data.data.add_time || "" },
{ name: this.$t('common.upd_time'), value: data.data.upd_time || "" },
],
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style></style>
<template>
<view :class="theme_view">
<block v-if="detail != null">
<view class="padding-horizontal-main padding-top-main">
<view v-if="detail_list.length > 0" class="panel-item padding-main border-radius-main bg-white spacing-mb">
<view class="panel-content oh">
<view v-for="(item, index) in detail_list" :key="index" class="item br-b-dashed oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{ item.name }}</view>
<view class="content fl br-l padding-left-main">{{ item.value }}</view>
</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
detail: null,
detail_list: [],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("detail", "profit", "distribution"),
method: "POST",
data: {
id: this.params.id,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
detail: data.data,
detail_list: [
{ name: this.$t('order-detail.order-detail.x3ge6c'), value: data.data.total_price || "" },
{ name: this.$t('order-detail.order-detail.v52n5r'), value: data.data.refund_price || "" },
{ name: this.$t('profit.profit.utg512'), value: data.data.profit_price || "" },
{ name: this.$t('profit.profit.6a7t71'), value: data.data.level_name || "" },
{ name: this.$t('profit-detail.profit-detail.kn8yye'), value: data.data.status_name || "" },
{ name: this.$t('user-order-detail.user-order-detail.yxwu8n'), value: data.data.order_status_name || "" },
{ name: this.$t('profit-detail.profit-detail.x28rw5'), value: data.data.order_pay_status_name || "" },
{ name: this.$t('order.order.330m76'), value: data.data.order_client_type_name || "" },
{ name: this.$t('common.add_time'), value: data.data.add_time || "" },
{ name: this.$t('common.upd_time'), value: data.data.upd_time || "" },
],
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style></style>

View File

@ -1,208 +1,211 @@
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<view v-for="(item, index) in nav_status_list" :key="index">
<view :class="'item fl tc ' + (nav_status_index == index ? 'cr-main nav-active-line' : '')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</view>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<text class="cr-base">{{ item.add_time }}</text>
<text class="fr cr-main">{{ item.status_name }}</text>
</view>
<view :data-value="'/pages/plugins/distribution/profit-detail/profit-detail?id=' + item.id" @tap="url_event" class="content margin-top cp">
<view v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base">{{ item[fv.field] }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</view>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_status_list: [
{ name: this.$t('common.all'), value: "-1" },
{ name: this.$t('profit.profit.3c7zmg'), value: "0" },
{ name: this.$t('profit.profit.67o785'), value: "1" },
{ name: this.$t('profit.profit.l5knxu'), value: "2" },
{ name: this.$t('detail.detail.32171c'), value: "3" },
],
nav_status_index: 0,
content_list: [
{ name: this.$t('order-detail.order-detail.x3ge6c'), field: "total_price" },
{ name: this.$t('order-detail.order-detail.v52n5r'), field: "refund_price" },
{ name: this.$t('profit.profit.utg512'), field: "profit_price" },
{ name: this.$t('profit.profit.6a7t71'), field: "level_name" },
],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_status_index = 0;
if ((params.status || null) != null) {
for (var i in this.nav_status_list) {
if (this.nav_status_list[i]["value"] == params.status) {
nav_status_index = i;
break;
}
}
}
this.setData({
params: params,
nav_status_index: nav_status_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
var status = (this.nav_status_list[this.nav_status_index] || null) == null ? -1 : this.nav_status_list[this.nav_status_index]["value"];
uni.request({
url: app.globalData.get_request_url("index", "profit", "distribution"),
method: "POST",
data: {
page: this.data_page,
status: status,
is_more: 1,
},
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<view v-for="(item, index) in nav_status_list" :key="index">
<view :class="'item fl tc ' + (nav_status_index == index ? 'cr-main nav-active-line' : '')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</view>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<text class="cr-base">{{ item.add_time }}</text>
<text class="fr cr-main">{{ item.status_name }}</text>
</view>
<view :data-value="'/pages/plugins/distribution/profit-detail/profit-detail?id=' + item.id" @tap="url_event" class="content margin-top cp">
<view v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base">{{ item[fv.field] }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</view>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_status_list: [
{ name: this.$t('common.all'), value: "-1" },
{ name: this.$t('profit.profit.3c7zmg'), value: "0" },
{ name: this.$t('profit.profit.67o785'), value: "1" },
{ name: this.$t('profit.profit.l5knxu'), value: "2" },
{ name: this.$t('detail.detail.32171c'), value: "3" },
],
nav_status_index: 0,
content_list: [
{ name: this.$t('order-detail.order-detail.x3ge6c'), field: "total_price" },
{ name: this.$t('order-detail.order-detail.v52n5r'), field: "refund_price" },
{ name: this.$t('profit.profit.utg512'), field: "profit_price" },
{ name: this.$t('profit.profit.6a7t71'), field: "level_name" },
],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_status_index = 0;
if ((params.status || null) != null) {
for (var i in this.nav_status_list) {
if (this.nav_status_list[i]["value"] == params.status) {
nav_status_index = i;
break;
}
}
}
this.setData({
params: params,
nav_status_index: nav_status_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 获取数据
var status = (this.nav_status_list[this.nav_status_index] || null) == null ? -1 : this.nav_status_list[this.nav_status_index]["value"];
uni.request({
url: app.globalData.get_request_url("index", "profit", "distribution"),
method: "POST",
data: {
page: this.data_page,
status: status,
is_more: 1,
},
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
@ -212,56 +215,56 @@
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_status_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./profit.css";
</style>
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_status_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./profit.css";
</style>

View File

@ -1,209 +1,212 @@
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<view v-for="(item, index) in nav_type_list" :key="index">
<view :class="'item fl tc ' + (nav_type_index == index ? 'cr-main nav-active-line' : 'cr-grey')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</view>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<image class="avatar dis-block fl circle" :src="item.avatar" mode="widthFix" @tap="avatar_event" :data-value="item.avatar"></image>
<text class="cr-base margin-left-sm">{{ item.user_name_view || "" }}</text>
<text class="cr-base fr">{{ item.order_status_name }}</text>
</view>
<view :data-value="'/pages/plugins/distribution/order-detail/order-detail?id=' + item.id" @tap="url_event" class="content margin-top cp">
<view v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base">{{ item[fv.field] }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</view>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_type_list: [
{ name: this.$t('promotion-order.promotion-order.6rs63v'), value: 0 },
{ name: this.$t('promotion-order.promotion-order.iwa646'), value: 1 },
{ name: this.$t('promotion-order.promotion-order.2p5215'), value: 2 },
],
nav_type_index: 0,
content_list: [
{ name: this.$t('order-detail.order-detail.36op8f'), field: "order_no" },
{ name: this.$t('order-detail.order-detail.x3ge6c'), field: "total_price" },
{ name: this.$t('user-order-detail.user-order-detail.23qj7m'), field: "order_pay_status_name" },
{ name: this.$t('order.order.330m76'), field: "order_client_type_name" },
{ name: this.$t('order-detail.order-detail.9153qn'), field: "add_time" },
],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_type_index = 0;
if (params.type != undefined) {
for (var i in this.nav_type_list) {
if (this.nav_type_list[i]["value"] == params.type) {
nav_type_index = i;
break;
}
}
}
this.setData({
params: params,
nav_type_index: nav_type_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 请求参数
var type = (this.nav_type_list[this.nav_type_index] || null) == null ? -1 : this.nav_type_list[this.nav_type_index]["value"];
var data = this.params;
data['page'] = this.data_page;
data['type'] = type;
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "promotionorder", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white">
<view v-for="(item, index) in nav_type_list" :key="index">
<view :class="'item fl tc ' + (nav_type_index == index ? 'cr-main nav-active-line' : 'cr-grey')" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</view>
</view>
<!-- 列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<image class="avatar dis-block fl circle" :src="item.avatar" mode="widthFix" @tap="avatar_event" :data-value="item.avatar"></image>
<text class="cr-base margin-left-sm">{{ item.user_name_view || "" }}</text>
<text class="cr-base fr">{{ item.order_status_name }}</text>
</view>
<view :data-value="'/pages/plugins/distribution/order-detail/order-detail?id=' + item.id" @tap="url_event" class="content margin-top cp">
<view v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base">{{ item[fv.field] }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</view>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_type_list: [
{ name: this.$t('promotion-order.promotion-order.6rs63v'), value: 0 },
{ name: this.$t('promotion-order.promotion-order.iwa646'), value: 1 },
{ name: this.$t('promotion-order.promotion-order.2p5215'), value: 2 },
],
nav_type_index: 0,
content_list: [
{ name: this.$t('order-detail.order-detail.36op8f'), field: "order_no" },
{ name: this.$t('order-detail.order-detail.x3ge6c'), field: "total_price" },
{ name: this.$t('user-order-detail.user-order-detail.23qj7m'), field: "order_pay_status_name" },
{ name: this.$t('order.order.330m76'), field: "order_client_type_name" },
{ name: this.$t('order-detail.order-detail.9153qn'), field: "add_time" },
],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_type_index = 0;
if (params.type != undefined) {
for (var i in this.nav_type_list) {
if (this.nav_type_list[i]["value"] == params.type) {
nav_type_index = i;
break;
}
}
}
this.setData({
params: params,
nav_type_index: nav_type_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 请求参数
var type = (this.nav_type_list[this.nav_type_index] || null) == null ? -1 : this.nav_type_list[this.nav_type_index]["value"];
var data = this.params;
data['page'] = this.data_page;
data['type'] = type;
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "promotionorder", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
@ -213,69 +216,69 @@
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_type_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 头像查看
avatar_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('order.order.p3scy0'));
}
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./promotion-order.css";
</style>
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 导航事件
nav_event(e) {
this.setData({
nav_type_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 头像查看
avatar_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('order.order.p3scy0'));
}
},
// url事件
url_event(e) {
app.globalData.url_event(e);
}
},
};
</script>
<style>
@import "./promotion-order.css";
</style>

View File

@ -1,237 +1,240 @@
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white scroll-view-horizontal padding-horizontal-main">
<scroll-view :scroll-x="true" :show-scrollbar="false" :scroll-with-animation="true" :scroll-into-view="'one-nav-item-' + nav_type_index" class="top-nav-scroll">
<block v-for="(item, index) in nav_type_list" :key="index">
<view :class="'item dis-inline-block margin-right-lg ' + (nav_type_index == index ? 'cr-main nav-active-line' : 'cr-grey')" :id="'one-nav-item-' + index" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</block>
</scroll-view>
</view>
<!-- 数据列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<image class="avatar dis-block fl circle" :src="item.avatar" mode="widthFix" @tap="avatar_event" :data-value="item.avatar"></image>
<text class="cr-base margin-left-sm">{{ item.user_name_view || "" }}</text>
<text class="cr-base fr">{{ item.add_time }}</text>
</view>
<view class="content margin-top">
<block v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base" :data-event="fv.event" :data-value="item[fv.field]" @tap="text_event">{{ item[fv.field] || fv.default }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</block>
</view>
<view class="item-operation tr br-t padding-top-main margin-top-main">
<button v-if="(item.email || null) != null" class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="text_event" data-event="copy" :data-value="item.email">{{$t('login.login.p54kf1')}}</button>
<button v-if="(item.mobile || null) != null" class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="text_event" data-event="tel" :data-value="item.mobile">{{$t('promotion-user.promotion-user.62c8m1')}}</button>
<button class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="user_order_event" :data-value="item.id">{{$t('promotion-user.promotion-user.i2rf31')}}</button>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_type_list: [
{ name: this.$t('promotion-user.promotion-user.o6qi74'), value: 0 },
{ name: this.$t('promotion-user.promotion-user.kx7595'), value: 1 },
{ name: this.$t('promotion-user.promotion-user.2ey5t1'), value: 2 },
{ name: this.$t('promotion-user.promotion-user.852zib'), value: 3 },
{ name: this.$t('promotion-user.promotion-user.h8mx3e'), value: 4 },
{ name: this.$t('promotion-user.promotion-user.fvbq25'), value: 5 },
],
// 导航下标
nav_type_index: 0,
content_list: [
{ name: this.$t('promotion-user.promotion-user.2g7enc'), field: "order_count", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.32bf15'), field: "order_total", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.76748p'), field: "order_last_time", default: "" },
{ name: this.$t('promotion-user.promotion-user.u43380'), field: "find_order_count", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.8n4tr3'), field: "find_order_total", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.1gc3ny'), field: "find_order_last_time", default: "" },
{ name: this.$t('promotion-user.promotion-user.3l1187'), field: "referrer_count", unit: "", default: 0 },
],
nav_search_buy_type_list: [
{ value: -1, name: this.$t('common.all') },
{ value: 0, name: this.$t('promotion-user.promotion-user.g5332w') },
{ value: 1, name: this.$t('promotion-user.promotion-user.8i641g') },
],
nav_search_value: {
team_search_user_time_start: "",
team_search_user_time_end: "",
team_search_user_time_reverse: [],
team_search_order_time_start: "",
team_search_order_time_end: "",
team_search_order_time_reverse: [],
team_search_buy_type: [],
},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_type_index = 0;
if (params.type != undefined) {
for (var i in this.nav_type_list) {
if (this.nav_type_list[i]["value"] == params.type) {
nav_type_index = i;
break;
}
}
}
this.setData({
params: params,
nav_type_index: nav_type_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 请求参数
var type = (this.nav_type_list[this.nav_type_index] || null) == null ? 0 : this.nav_type_list[this.nav_type_index]["value"];
var data = this.params;
data['page'] = this.data_page;
data['type'] = type;
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "promotionuser", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
<template>
<view :class="theme_view">
<!-- 导航 -->
<view class="nav-base bg-white scroll-view-horizontal padding-horizontal-main">
<scroll-view :scroll-x="true" :show-scrollbar="false" :scroll-with-animation="true" :scroll-into-view="'one-nav-item-' + nav_type_index" class="top-nav-scroll">
<block v-for="(item, index) in nav_type_list" :key="index">
<view :class="'item dis-inline-block margin-right-lg ' + (nav_type_index == index ? 'cr-main nav-active-line' : 'cr-grey')" :id="'one-nav-item-' + index" :data-index="index" @tap="nav_event">{{ item.name }}</view>
</block>
</scroll-view>
</view>
<!-- 数据列表 -->
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<image class="avatar dis-block fl circle" :src="item.avatar" mode="widthFix" @tap="avatar_event" :data-value="item.avatar"></image>
<text class="cr-base margin-left-sm">{{ item.user_name_view || "" }}</text>
<text class="cr-base fr">{{ item.add_time }}</text>
</view>
<view class="content margin-top">
<block v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base" :data-event="fv.event" :data-value="item[fv.field]" @tap="text_event">{{ item[fv.field] || fv.default }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</block>
</view>
<view class="item-operation tr br-t padding-top-main margin-top-main">
<button v-if="(item.email || null) != null" class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="text_event" data-event="copy" :data-value="item.email">{{$t('login.login.p54kf1')}}</button>
<button v-if="(item.mobile || null) != null" class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="text_event" data-event="tel" :data-value="item.mobile">{{$t('promotion-user.promotion-user.62c8m1')}}</button>
<button class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="user_order_event" :data-value="item.id">{{$t('promotion-user.promotion-user.i2rf31')}}</button>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
nav_type_list: [
{ name: this.$t('promotion-user.promotion-user.o6qi74'), value: 0 },
{ name: this.$t('promotion-user.promotion-user.kx7595'), value: 1 },
{ name: this.$t('promotion-user.promotion-user.2ey5t1'), value: 2 },
{ name: this.$t('promotion-user.promotion-user.852zib'), value: 3 },
{ name: this.$t('promotion-user.promotion-user.h8mx3e'), value: 4 },
{ name: this.$t('promotion-user.promotion-user.fvbq25'), value: 5 },
],
// 导航下标
nav_type_index: 0,
content_list: [
{ name: this.$t('promotion-user.promotion-user.2g7enc'), field: "order_count", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.32bf15'), field: "order_total", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.76748p'), field: "order_last_time", default: "" },
{ name: this.$t('promotion-user.promotion-user.u43380'), field: "find_order_count", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.8n4tr3'), field: "find_order_total", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.1gc3ny'), field: "find_order_last_time", default: "" },
{ name: this.$t('promotion-user.promotion-user.3l1187'), field: "referrer_count", unit: "", default: 0 },
],
nav_search_buy_type_list: [
{ value: -1, name: this.$t('common.all') },
{ value: 0, name: this.$t('promotion-user.promotion-user.g5332w') },
{ value: 1, name: this.$t('promotion-user.promotion-user.8i641g') },
],
nav_search_value: {
team_search_user_time_start: "",
team_search_user_time_end: "",
team_search_user_time_reverse: [],
team_search_order_time_start: "",
team_search_order_time_end: "",
team_search_order_time_reverse: [],
team_search_buy_type: [],
},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 是否指定状态
var nav_type_index = 0;
if (params.type != undefined) {
for (var i in this.nav_type_list) {
if (this.nav_type_list[i]["value"] == params.type) {
nav_type_index = i;
break;
}
}
}
this.setData({
params: params,
nav_type_index: nav_type_index,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 请求参数
var type = (this.nav_type_list[this.nav_type_index] || null) == null ? 0 : this.nav_type_list[this.nav_type_index]["value"];
var data = this.params;
data['page'] = this.data_page;
data['type'] = type;
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "promotionuser", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
@ -241,75 +244,75 @@
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 头像查看
avatar_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('order.order.p3scy0'));
}
},
// 用户订单事件
user_order_event(e) {
var value = e.currentTarget.dataset.value;
app.globalData.url_open('/pages/plugins/distribution/order/order?uid=' + value);
},
// 导航事件
nav_event(e) {
this.setData({
nav_type_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 文本事件
text_event(e) {
app.globalData.text_event_handle(e);
}
},
};
</script>
<style>
@import "./promotion-user.css";
</style>
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 头像查看
avatar_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('order.order.p3scy0'));
}
},
// 用户订单事件
user_order_event(e) {
var value = e.currentTarget.dataset.value;
app.globalData.url_open('/pages/plugins/distribution/order/order?uid=' + value);
},
// 导航事件
nav_event(e) {
this.setData({
nav_type_index: e.currentTarget.dataset.index || 0,
data_page: 1,
data_list: [],
data_list_loding_status: 1,
data_bottom_line_status: false
});
this.get_data_list(1);
},
// 文本事件
text_event(e) {
app.globalData.text_event_handle(e);
}
},
};
</script>
<style>
@import "./promotion-user.css";
</style>

View File

@ -114,6 +114,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -159,6 +159,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -80,6 +80,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -1,283 +1,286 @@
<template>
<view :class="theme_view">
<!-- 搜索条件 -->
<view class="form-container nav-search bg-white br-b oh padding-horizontal-main padding-bottom-main text-size-xs cr-base pr">
<view class="margin-top oh">
<view class="fl margin-top">{{$t('team.team.784249')}}</view>
<view class="multiple-picker fl tc">
<view class="item br dis-inline-block pr radius tl fl">
<uni-datetime-picker v-model="nav_search_value.team_search_user_time_start" :border="false" :showFirstIcon="false" :hide-second="true" type="datetime" :placeholder="$t('team.team.pcaom3')" placeholder-class="cr-grey" />
</view>
<view class="dis-inline-block cr-grey-white margin-top-sm">-</view>
<view class="item br dis-inline-block pr radius tl fr">
<uni-datetime-picker v-model="nav_search_value.team_search_user_time_end" :border="false" :showFirstIcon="false" :hide-second="true" type="datetime" :placeholder="$t('team.team.iee9bp')" placeholder-class="cr-grey" />
</view>
</view>
<checkbox-group class="dis-inline-block fr margin-top-xs" data-value="team_search_user_time_reverse" @change="search_cholce_event">
<label> <checkbox value="1" :checked="nav_search_value.team_search_user_time_reverse.indexOf('1') != -1" style="transform: scale(0.7)" />{{$t('team.team.i040fg')}}</label>
</checkbox-group>
</view>
<view class="margin-top oh">
<view class="fl margin-top">{{$t('team.team.2ny6k1')}}</view>
<view class="multiple-picker fl tc">
<view class="item br dis-inline-block pr radius tl fl">
<uni-datetime-picker v-model="nav_search_value.team_search_order_time_start" :border="false" :showFirstIcon="false" :hide-second="true" type="datetime" :placeholder="$t('team.team.pcaom3')" placeholder-class="cr-grey" />
</view>
<view class="dis-inline-block cr-grey-white margin-top-sm">-</view>
<view class="item br dis-inline-block pr radius tl fr">
<uni-datetime-picker v-model="nav_search_value.team_search_order_time_end" :border="false" :showFirstIcon="false" :hide-second="true" type="datetime" :placeholder="$t('team.team.iee9bp')" placeholder-class="cr-grey" />
</view>
</view>
<checkbox-group class="dis-inline-block fr margin-top-xs" data-value="team_search_order_time_reverse" @change="search_cholce_event">
<label> <checkbox value="1" :checked="nav_search_value.team_search_order_time_reverse.indexOf('1') != -1" style="transform: scale(0.7)" />{{$t('team.team.i040fg')}}</label>
</checkbox-group>
</view>
<view class="margin-top oh">
<view class="fl">{{$t('team.team.2i4k79')}}</view>
<checkbox-group data-value="team_search_buy_type" @change="search_cholce_event">
<label> <checkbox value="0" :checked="nav_search_value.team_search_buy_type.indexOf('0') != -1" style="transform: scale(0.7)" />{{$t('promotion-user.promotion-user.g5332w')}}</label>
<label class="margin-left-xxl"> <checkbox value="1" :checked="nav_search_value.team_search_buy_type.indexOf('1') != -1" style="transform: scale(0.7)" />{{$t('promotion-user.promotion-user.8i641g')}}</label>
</checkbox-group>
</view>
<view class="search-submit-list pa">
<button type="default" size="mini" class="bg-grey br-grey cr-base text-size-xs round margin-right-main" @tap="search_reset_event">{{$t('team.team.3l538c')}}</button>
<button type="default" size="mini" class="bg-main br-main cr-white text-size-xs round" @tap="search_submit_event">{{$t('common.search')}}</button>
</view>
</view>
<!-- 数据列表 -->
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<image class="avatar dis-block fl circle" :src="item.avatar" mode="widthFix" @tap="avatar_event" :data-value="item.avatar"></image>
<text class="cr-base margin-left-sm">{{ item.user_name_view || "" }}</text>
<text class="cr-base fr">{{ item.add_time }}</text>
</view>
<view class="content margin-top">
<block v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base" :data-event="fv.event" :data-value="item[fv.field]" @tap="text_event">{{ item[fv.field] || fv.default }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</block>
</view>
<view class="item-operation tr br-t padding-top-main margin-top-main">
<button v-if="(item.email || null) != null" class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="text_event" data-event="copy" :data-value="item.email">{{$t('login.login.p54kf1')}}</button>
<button v-if="(item.mobile || null) != null" class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="text_event" data-event="tel" :data-value="item.mobile">{{$t('promotion-user.promotion-user.62c8m1')}}</button>
<button class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="user_order_event" :data-value="item.id">{{$t('promotion-user.promotion-user.i2rf31')}}</button>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
content_list: [
{ name: this.$t('promotion-user.promotion-user.2g7enc'), field: "order_count", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.32bf15'), field: "order_total", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.76748p'), field: "order_last_time", default: "" },
{ name: this.$t('promotion-user.promotion-user.u43380'), field: "find_order_count", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.8n4tr3'), field: "find_order_total", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.1gc3ny'), field: "find_order_last_time", default: "" },
{ name: this.$t('promotion-user.promotion-user.3l1187'), field: "referrer_count", unit: "", default: 0 },
],
nav_search_buy_type_list: [
{ value: -1, name: this.$t('common.all') },
{ value: 0, name: this.$t('promotion-user.promotion-user.g5332w') },
{ value: 1, name: this.$t('promotion-user.promotion-user.8i641g') },
],
nav_search_value: {
team_search_user_time_start: "",
team_search_user_time_end: "",
team_search_user_time_reverse: [],
team_search_order_time_start: "",
team_search_order_time_end: "",
team_search_order_time_reverse: [],
team_search_buy_type: [],
},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 初始数据
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 请求参数
var data = {
page: this.data_page,
};
// 搜索注册时间
if ((this.nav_search_value.team_search_user_time_start || null) != null) {
data["team_search_user_time_start"] = this.nav_search_value.team_search_user_time_start;
}
if ((this.nav_search_value.team_search_user_time_end || null) != null) {
data["team_search_user_time_end"] = this.nav_search_value.team_search_user_time_end;
}
// 用户反向
if (this.nav_search_value.team_search_user_time_reverse.length > 0) {
data["team_search_user_time_reverse"] = 1;
}
// 搜索下单时间
if ((this.nav_search_value.team_search_order_time_start || null) != null) {
data["team_search_order_time_start"] = this.nav_search_value.team_search_order_time_start;
}
if ((this.nav_search_value.team_search_order_time_end || null) != null) {
data["team_search_order_time_end"] = this.nav_search_value.team_search_order_time_end;
}
// 订单反向
if (this.nav_search_value.team_search_order_time_reverse.length > 0) {
data["team_search_order_time_reverse"] = 1;
}
// 搜索是否下单
if (this.nav_search_value.team_search_buy_type.length > 0) {
data["team_search_buy_type"] = this.nav_search_value.team_search_buy_type.join(",");
}
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "team", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
<template>
<view :class="theme_view">
<!-- 搜索条件 -->
<view class="form-container nav-search bg-white br-b oh padding-horizontal-main padding-bottom-main text-size-xs cr-base pr">
<view class="margin-top oh">
<view class="fl margin-top">{{$t('team.team.784249')}}</view>
<view class="multiple-picker fl tc">
<view class="item br dis-inline-block pr radius tl fl">
<uni-datetime-picker v-model="nav_search_value.team_search_user_time_start" :border="false" :showFirstIcon="false" :hide-second="true" type="datetime" :placeholder="$t('team.team.pcaom3')" placeholder-class="cr-grey" />
</view>
<view class="dis-inline-block cr-grey-white margin-top-sm">-</view>
<view class="item br dis-inline-block pr radius tl fr">
<uni-datetime-picker v-model="nav_search_value.team_search_user_time_end" :border="false" :showFirstIcon="false" :hide-second="true" type="datetime" :placeholder="$t('team.team.iee9bp')" placeholder-class="cr-grey" />
</view>
</view>
<checkbox-group class="dis-inline-block fr margin-top-xs" data-value="team_search_user_time_reverse" @change="search_cholce_event">
<label> <checkbox value="1" :checked="nav_search_value.team_search_user_time_reverse.indexOf('1') != -1" style="transform: scale(0.7)" />{{$t('team.team.i040fg')}}</label>
</checkbox-group>
</view>
<view class="margin-top oh">
<view class="fl margin-top">{{$t('team.team.2ny6k1')}}</view>
<view class="multiple-picker fl tc">
<view class="item br dis-inline-block pr radius tl fl">
<uni-datetime-picker v-model="nav_search_value.team_search_order_time_start" :border="false" :showFirstIcon="false" :hide-second="true" type="datetime" :placeholder="$t('team.team.pcaom3')" placeholder-class="cr-grey" />
</view>
<view class="dis-inline-block cr-grey-white margin-top-sm">-</view>
<view class="item br dis-inline-block pr radius tl fr">
<uni-datetime-picker v-model="nav_search_value.team_search_order_time_end" :border="false" :showFirstIcon="false" :hide-second="true" type="datetime" :placeholder="$t('team.team.iee9bp')" placeholder-class="cr-grey" />
</view>
</view>
<checkbox-group class="dis-inline-block fr margin-top-xs" data-value="team_search_order_time_reverse" @change="search_cholce_event">
<label> <checkbox value="1" :checked="nav_search_value.team_search_order_time_reverse.indexOf('1') != -1" style="transform: scale(0.7)" />{{$t('team.team.i040fg')}}</label>
</checkbox-group>
</view>
<view class="margin-top oh">
<view class="fl">{{$t('team.team.2i4k79')}}</view>
<checkbox-group data-value="team_search_buy_type" @change="search_cholce_event">
<label> <checkbox value="0" :checked="nav_search_value.team_search_buy_type.indexOf('0') != -1" style="transform: scale(0.7)" />{{$t('promotion-user.promotion-user.g5332w')}}</label>
<label class="margin-left-xxl"> <checkbox value="1" :checked="nav_search_value.team_search_buy_type.indexOf('1') != -1" style="transform: scale(0.7)" />{{$t('promotion-user.promotion-user.8i641g')}}</label>
</checkbox-group>
</view>
<view class="search-submit-list pa">
<button type="default" size="mini" class="bg-grey br-grey cr-base text-size-xs round margin-right-main" @tap="search_reset_event">{{$t('team.team.3l538c')}}</button>
<button type="default" size="mini" class="bg-main br-main cr-white text-size-xs round" @tap="search_submit_event">{{$t('common.search')}}</button>
</view>
</view>
<!-- 数据列表 -->
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="60">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-main border-radius-main oh bg-white spacing-mb">
<view class="base oh br-b padding-bottom-main">
<image class="avatar dis-block fl circle" :src="item.avatar" mode="widthFix" @tap="avatar_event" :data-value="item.avatar"></image>
<text class="cr-base margin-left-sm">{{ item.user_name_view || "" }}</text>
<text class="cr-base fr">{{ item.add_time }}</text>
</view>
<view class="content margin-top">
<block v-for="(fv, fi) in content_list" :key="fi">
<view class="single-text margin-top-xs">
<text class="cr-grey margin-right-xl">{{ fv.name }}</text>
<text class="cr-base" :data-event="fv.event" :data-value="item[fv.field]" @tap="text_event">{{ item[fv.field] || fv.default }}</text>
<text v-if="(fv.unit || null) != null" class="cr-grey">{{ fv.unit }}</text>
</view>
</block>
</view>
<view class="item-operation tr br-t padding-top-main margin-top-main">
<button v-if="(item.email || null) != null" class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="text_event" data-event="copy" :data-value="item.email">{{$t('login.login.p54kf1')}}</button>
<button v-if="(item.mobile || null) != null" class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="text_event" data-event="tel" :data-value="item.mobile">{{$t('promotion-user.promotion-user.62c8m1')}}</button>
<button class="round bg-white br cr-base" type="default" size="mini" hover-class="none" @tap="user_order_event" :data-value="item.id">{{$t('promotion-user.promotion-user.i2rf31')}}</button>
</view>
</view>
</view>
<view v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status"></component-no-data>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</scroll-view>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
data_list: [],
data_total: 0,
data_page_total: 0,
data_page: 1,
data_list_loding_status: 1,
data_bottom_line_status: false,
data_is_loading: 0,
params: null,
content_list: [
{ name: this.$t('promotion-user.promotion-user.2g7enc'), field: "order_count", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.32bf15'), field: "order_total", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.76748p'), field: "order_last_time", default: "" },
{ name: this.$t('promotion-user.promotion-user.u43380'), field: "find_order_count", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.8n4tr3'), field: "find_order_total", unit: "", default: 0 },
{ name: this.$t('promotion-user.promotion-user.1gc3ny'), field: "find_order_last_time", default: "" },
{ name: this.$t('promotion-user.promotion-user.3l1187'), field: "referrer_count", unit: "", default: 0 },
],
nav_search_buy_type_list: [
{ value: -1, name: this.$t('common.all') },
{ value: 0, name: this.$t('promotion-user.promotion-user.g5332w') },
{ value: 1, name: this.$t('promotion-user.promotion-user.8i641g') },
],
nav_search_value: {
team_search_user_time_start: "",
team_search_user_time_end: "",
team_search_user_time_reverse: [],
team_search_order_time_start: "",
team_search_order_time_end: "",
team_search_order_time_reverse: [],
team_search_buy_type: [],
},
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
// 初始数据
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
methods: {
init() {
var user = app.globalData.get_user_info(this, "init");
if (user != false) {
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_bottom_line_status == true) {
uni.stopPullDownRefresh();
return false;
}
}
// 是否加载中
if (this.data_is_loading == 1) {
return false;
}
this.setData({
data_is_loading: 1,
data_list_loding_status: 1,
});
// 加载loding
if(this.data_page > 1) {
uni.showLoading({
title: this.$t('common.loading_in_text'),
});
}
// 请求参数
var data = {
page: this.data_page,
};
// 搜索注册时间
if ((this.nav_search_value.team_search_user_time_start || null) != null) {
data["team_search_user_time_start"] = this.nav_search_value.team_search_user_time_start;
}
if ((this.nav_search_value.team_search_user_time_end || null) != null) {
data["team_search_user_time_end"] = this.nav_search_value.team_search_user_time_end;
}
// 用户反向
if (this.nav_search_value.team_search_user_time_reverse.length > 0) {
data["team_search_user_time_reverse"] = 1;
}
// 搜索下单时间
if ((this.nav_search_value.team_search_order_time_start || null) != null) {
data["team_search_order_time_start"] = this.nav_search_value.team_search_order_time_start;
}
if ((this.nav_search_value.team_search_order_time_end || null) != null) {
data["team_search_order_time_end"] = this.nav_search_value.team_search_order_time_end;
}
// 订单反向
if (this.nav_search_value.team_search_order_time_reverse.length > 0) {
data["team_search_order_time_reverse"] = 1;
}
// 搜索是否下单
if (this.nav_search_value.team_search_buy_type.length > 0) {
data["team_search_buy_type"] = this.nav_search_value.team_search_buy_type.join(",");
}
// 获取数据
uni.request({
url: app.globalData.get_request_url("index", "team", "distribution"),
method: "POST",
data: data,
dataType: "json",
success: (res) => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
var data = res.data.data;
if (data.data.length > 0) {
if (this.data_page <= 1) {
var temp_data_list = data.data;
} else {
var temp_data_list = this.data_list || [];
var temp_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: data.total,
data_page_total: data.page_total,
data_list_loding_status: 3,
data_page: this.data_page + 1,
data_is_loading: 0,
});
// 是否还有数据
this.setData({
data_bottom_line_status: this.data_list.length > 0 && this.data_page > 1 && this.data_page > this.data_page_total,
});
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
@ -287,95 +290,95 @@
data_list: [],
data_bottom_line_status: false,
});
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 头像查看
avatar_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('order.order.p3scy0'));
}
},
// 用户订单事件
user_order_event(e) {
var value = e.currentTarget.dataset.value;
app.globalData.url_open('/pages/plugins/distribution/order/order?uid=' + value);
},
// 搜索条件事件
search_cholce_event(e) {
var value = e.currentTarget.dataset.value;
var temp_data = this.nav_search_value;
temp_data[value] = e.detail.value;
this.setData({
nav_search_value: temp_data,
});
},
// 搜索重置事件
search_reset_event(e) {
var temp_data = this.nav_search_value;
var arr_field = ["team_search_buy_type", "team_search_order_time_reverse", "team_search_user_time_reverse"];
for (var i in temp_data) {
temp_data[i] = arr_field.indexOf(i) == -1 ? "" : [];
}
this.setData({
nav_search_value: temp_data,
data_page: 1,
});
this.get_data_list(1);
},
// 搜索确认事件
search_submit_event(e) {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
// 文本事件
text_event(e) {
app.globalData.text_event_handle(e);
},
},
};
</script>
<style>
@import "./team.css";
</style>
}
}
} else {
this.setData({
data_list_loding_status: 0,
data_is_loading: 0,
});
if (app.globalData.is_login_check(res.data, this, "get_data_list")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
if(this.data_page > 1) {
uni.hideLoading();
}
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_is_loading: 0,
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
// 滚动加载
scroll_lower(e) {
this.get_data_list();
},
// 头像查看
avatar_event(e) {
var value = e.currentTarget.dataset.value || null;
if (value != null) {
uni.previewImage({
current: value,
urls: [value],
});
} else {
app.globalData.showToast(this.$t('order.order.p3scy0'));
}
},
// 用户订单事件
user_order_event(e) {
var value = e.currentTarget.dataset.value;
app.globalData.url_open('/pages/plugins/distribution/order/order?uid=' + value);
},
// 搜索条件事件
search_cholce_event(e) {
var value = e.currentTarget.dataset.value;
var temp_data = this.nav_search_value;
temp_data[value] = e.detail.value;
this.setData({
nav_search_value: temp_data,
});
},
// 搜索重置事件
search_reset_event(e) {
var temp_data = this.nav_search_value;
var arr_field = ["team_search_buy_type", "team_search_order_time_reverse", "team_search_user_time_reverse"];
for (var i in temp_data) {
temp_data[i] = arr_field.indexOf(i) == -1 ? "" : [];
}
this.setData({
nav_search_value: temp_data,
data_page: 1,
});
this.get_data_list(1);
},
// 搜索确认事件
search_submit_event(e) {
this.setData({
data_page: 1,
});
this.get_data_list(1);
},
// 文本事件
text_event(e) {
app.globalData.text_event_handle(e);
},
},
};
</script>
<style>
@import "./team.css";
</style>

View File

@ -324,6 +324,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -93,6 +93,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -79,6 +79,9 @@
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);

View File

@ -1,142 +1,145 @@
<template>
<view :class="theme_view">
<block v-if="detail != null">
<view class="padding-horizontal-main padding-top-main">
<view v-if="detail_list.length > 0" class="panel-item padding-main border-radius-main bg-white spacing-mb">
<view class="panel-content oh">
<view v-for="(item, index) in detail_list" :key="index" class="item br-b-dashed oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{ item.name }}</view>
<view class="content fl br-l padding-left-main">{{ item.value }}</view>
</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
detail: null,
detail_list: [],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("detail", "profit", "excellentbuyreturntocash"),
method: "POST",
data: {
id: this.params.id,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
detail: data.data,
detail_list: [
{ name: this.$t('order-detail.order-detail.36op8f'), value: data.data.order_no },
{ name: this.$t('order-detail.order-detail.x3ge6c'), value: data.data.total_price || "" },
{ name: this.$t('order-detail.order-detail.v52n5r'), value: data.data.refund_price || "" },
{ name: this.$t('profit.profit.nk58v6'), value: data.data.valid_price || "" },
{ name: this.$t('profit.profit.vuvz6g'), value: data.data.profit_price || "" },
{ name: this.$t('profit-detail.profit-detail.kn8yye'), value: data.data.status_name || "" },
{ name: this.$t('user-order-detail.user-order-detail.yxwu8n'), value: data.data.order_status_name || "" },
{ name: this.$t('profit-detail.profit-detail.x28rw5'), value: data.data.order_pay_status_name || "" },
{ name: this.$t('order.order.330m76'), value: data.data.order_client_type_name || "" },
{ name: this.$t('profit-detail.profit-detail.jkrvf3'), value: (data.data.status == 2 && (data.data.success_estimate_icon || null) != null ? "(" + data.data.success_estimate_icon + ") " : "") + data.data.success_time || "" },
{ name: this.$t('common.add_time'), value: data.data.add_time || "" },
{ name: this.$t('common.upd_time'), value: data.data.upd_time || "" },
],
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style></style>
<template>
<view :class="theme_view">
<block v-if="detail != null">
<view class="padding-horizontal-main padding-top-main">
<view v-if="detail_list.length > 0" class="panel-item padding-main border-radius-main bg-white spacing-mb">
<view class="panel-content oh">
<view v-for="(item, index) in detail_list" :key="index" class="item br-b-dashed oh padding-vertical-main">
<view class="title fl padding-right-main cr-grey">{{ item.name }}</view>
<view class="content fl br-l padding-left-main">{{ item.value }}</view>
</view>
</view>
</view>
</view>
<!-- 结尾 -->
<component-bottom-line :propStatus="data_bottom_line_status"></component-bottom-line>
</block>
<block v-else>
<!-- 提示信息 -->
<component-no-data :propStatus="data_list_loding_status" :propMsg="data_list_loding_msg"></component-no-data>
</block>
<!-- 公共 -->
<component-common ref="common"></component-common>
</view>
</template>
<script>
const app = getApp();
import componentCommon from '@/components/common/common';
import componentNoData from "@/components/no-data/no-data";
import componentBottomLine from "@/components/bottom-line/bottom-line";
export default {
data() {
return {
theme_view: app.globalData.get_theme_value_view(),
params: null,
data_list_loding_status: 1,
data_list_loding_msg: "",
data_bottom_line_status: false,
detail: null,
detail_list: [],
};
},
components: {
componentCommon,
componentNoData,
componentBottomLine,
},
onLoad(params) {
// 参数处理
params = app.globalData.launch_params_handle(params);
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
// 设置参数
this.setData({
params: params,
});
this.init();
},
onShow() {
// 调用公共事件方法
app.globalData.page_event_onshow_handle();
// 公共onshow事件
if ((this.$refs.common || null) != null) {
this.$refs.common.on_show();
}
// 分享菜单处理
app.globalData.page_share_handle();
},
// 下拉刷新
onPullDownRefresh() {
this.init();
},
methods: {
init() {
this.setData({
data_list_loding_status: 1,
});
uni.request({
url: app.globalData.get_request_url("detail", "profit", "excellentbuyreturntocash"),
method: "POST",
data: {
id: this.params.id,
},
dataType: "json",
success: (res) => {
uni.stopPullDownRefresh();
if (res.data.code == 0) {
var data = res.data.data;
this.setData({
detail: data.data,
detail_list: [
{ name: this.$t('order-detail.order-detail.36op8f'), value: data.data.order_no },
{ name: this.$t('order-detail.order-detail.x3ge6c'), value: data.data.total_price || "" },
{ name: this.$t('order-detail.order-detail.v52n5r'), value: data.data.refund_price || "" },
{ name: this.$t('profit.profit.nk58v6'), value: data.data.valid_price || "" },
{ name: this.$t('profit.profit.vuvz6g'), value: data.data.profit_price || "" },
{ name: this.$t('profit-detail.profit-detail.kn8yye'), value: data.data.status_name || "" },
{ name: this.$t('user-order-detail.user-order-detail.yxwu8n'), value: data.data.order_status_name || "" },
{ name: this.$t('profit-detail.profit-detail.x28rw5'), value: data.data.order_pay_status_name || "" },
{ name: this.$t('order.order.330m76'), value: data.data.order_client_type_name || "" },
{ name: this.$t('profit-detail.profit-detail.jkrvf3'), value: (data.data.status == 2 && (data.data.success_estimate_icon || null) != null ? "(" + data.data.success_estimate_icon + ") " : "") + data.data.success_time || "" },
{ name: this.$t('common.add_time'), value: data.data.add_time || "" },
{ name: this.$t('common.upd_time'), value: data.data.upd_time || "" },
],
data_list_loding_status: 3,
data_bottom_line_status: true,
data_list_loding_msg: "",
});
} else {
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: res.data.msg,
});
if (app.globalData.is_login_check(res.data, this, "init")) {
app.globalData.showToast(res.data.msg);
}
}
},
fail: () => {
uni.stopPullDownRefresh();
this.setData({
data_list_loding_status: 2,
data_bottom_line_status: false,
data_list_loding_msg: this.$t('common.internet_error_tips'),
});
app.globalData.showToast(this.$t('common.internet_error_tips'));
},
});
},
},
};
</script>
<style></style>

Some files were not shown because too many files have changed in this diff Show More