3439 lines
224 KiB
Vue
3439 lines
224 KiB
Vue
<script>
|
||
import "~/assets/styles/WithdrawDialog.ks0wdKEK.css";
|
||
import "~/assets/styles/recommend.C1KCHBPJ.css";
|
||
import { toDisplayString } from "vue";
|
||
import { renderList } from "vue";
|
||
import { onMounted } from "vue";
|
||
import { createStaticVNode } from "vue";
|
||
import { onScopeDispose } from "vue";
|
||
import { createBlock } from "vue";
|
||
import { ref } from "vue";
|
||
import { withCtx } from "vue";
|
||
import { createCommentVNode } from "vue";
|
||
import { computed } from "vue";
|
||
import { reactive } from "vue";
|
||
import { isRef } from "vue";
|
||
import { createElementBlock } from "vue";
|
||
import { Fragment } from "vue";
|
||
import { createElementVNode } from "vue";
|
||
import { createTextVNode } from "vue";
|
||
import { unref } from "vue";
|
||
import { defineComponent } from "vue";
|
||
import { createVNode } from "vue";
|
||
import { openBlock } from "vue";
|
||
import { withModifiers } from "vue";
|
||
import { useApi } from "~/lib/auth.js";
|
||
import button from "primevue/button";
|
||
import { t as _plugin_vue_export_helper_t } from "~/lib/_plugin-vue_export-helper.js";
|
||
import message from "primevue/message";
|
||
import inputtext from "primevue/inputtext";
|
||
import { n as product_name_n } from "~/lib/product-name.js";
|
||
import { r as dict_r } from "~/lib/dict.js";
|
||
import datatable from "primevue/datatable";
|
||
import paginator from "primevue/paginator";
|
||
import iconfield from "primevue/iconfield";
|
||
import inputicon from "primevue/inputicon";
|
||
import select from "primevue/select";
|
||
import column from "primevue/column";
|
||
import ListEmpty from "~/components/ListEmpty.vue";
|
||
import { t as useListPage_t } from "~/lib/useListPage.js";
|
||
import tag from "primevue/tag";
|
||
import skeleton from "primevue/skeleton";
|
||
import WithdrawDialog from "~/components/WithdrawDialog.vue";
|
||
import { t as useWithdrawAvailability_t } from "~/lib/useWithdrawAvailability.js";
|
||
import tabs from "primevue/tabs";
|
||
import tabpanels from "primevue/tabpanels";
|
||
import tabpanel from "primevue/tabpanel";
|
||
import tablist from "primevue/tablist";
|
||
import tab from "primevue/tab";
|
||
function C(e, t) {
|
||
function n(e, t) {
|
||
if (!e) return ``;
|
||
if (!/^\d{4}-\d{2}-\d{2}$/.test(e)) throw Error(`请选择有效的查询日期`);
|
||
let n = new Date(`${e}T00:00:00`),
|
||
r = e.split(`-`).map(Number);
|
||
if (
|
||
!Number.isFinite(n.getTime()) ||
|
||
n.getFullYear() !== r[0] ||
|
||
n.getMonth() + 1 !== r[1] ||
|
||
n.getDate() !== r[2]
|
||
)
|
||
throw Error(`请选择有效的查询日期`);
|
||
return (t && n.setHours(23, 59, 59, 999), Math.floor(n.getTime() / 1e3));
|
||
}
|
||
let r = n(e, !1),
|
||
i = n(t, !0);
|
||
if (r !== `` && i !== `` && r > i) throw Error(`开始日期不能晚于结束日期`);
|
||
return {
|
||
start_time: r,
|
||
end_time: i,
|
||
};
|
||
}
|
||
var Se = {
|
||
class: `list-page recommend-page`,
|
||
},
|
||
Ce = {
|
||
key: 0,
|
||
class: `panel`,
|
||
},
|
||
we = {
|
||
key: 1,
|
||
class: `panel error-panel`,
|
||
},
|
||
Te = {
|
||
key: 0,
|
||
class: `panel join-card`,
|
||
},
|
||
Ee = {
|
||
class: `join-intro`,
|
||
},
|
||
De = {
|
||
class: `join-desc`,
|
||
},
|
||
Oe = {
|
||
key: 0,
|
||
},
|
||
ke = {
|
||
class: `reward-summary`,
|
||
},
|
||
Ae = {
|
||
class: `reward-balance`,
|
||
},
|
||
je = {
|
||
class: `reward-metric`,
|
||
},
|
||
Me = {
|
||
class: `stat-num`,
|
||
},
|
||
Ne = {
|
||
class: `reward-metrics`,
|
||
},
|
||
Pe = {
|
||
class: `reward-metric`,
|
||
},
|
||
Fe = {
|
||
class: `stat-num`,
|
||
},
|
||
Ie = {
|
||
class: `reward-metric`,
|
||
},
|
||
Le = {
|
||
class: `stat-num`,
|
||
},
|
||
Re = [`title`],
|
||
ze = {
|
||
class: `stat-num`,
|
||
},
|
||
Be = {
|
||
key: 0,
|
||
class: `reward-metric`,
|
||
},
|
||
Ve = {
|
||
class: `stat-num`,
|
||
},
|
||
He = {
|
||
class: `recommend-section`,
|
||
},
|
||
Ue = {
|
||
class: `panel link-block`,
|
||
},
|
||
We = {
|
||
class: `link-row`,
|
||
},
|
||
Ge = {
|
||
class: `panel custom-link-block`,
|
||
},
|
||
Ke = {
|
||
key: 2,
|
||
class: `link-loading`,
|
||
},
|
||
qe = {
|
||
key: 3,
|
||
class: `custom-link-list`,
|
||
},
|
||
Je = {
|
||
class: `custom-link-value`,
|
||
},
|
||
Ye = {
|
||
class: `custom-link-actions`,
|
||
},
|
||
Xe = {
|
||
key: 4,
|
||
class: `link-tip`,
|
||
},
|
||
Ze = {
|
||
key: 1,
|
||
class: `link-loading`,
|
||
},
|
||
Qe = {
|
||
key: 1,
|
||
class: `recommend-data-section`,
|
||
"aria-labelledby": `recommend-products-title`,
|
||
},
|
||
$e = {
|
||
class: `section-heading`,
|
||
},
|
||
et = {
|
||
class: `list-table`,
|
||
},
|
||
tt = {
|
||
key: 2,
|
||
class: `recommend-data-section`,
|
||
"aria-labelledby": `recommend-rules-title`,
|
||
},
|
||
nt = {
|
||
class: `list-table`,
|
||
},
|
||
rt = {
|
||
key: 4,
|
||
class: `list-table`,
|
||
},
|
||
it = {
|
||
class: `recommend-section`,
|
||
},
|
||
at = {
|
||
class: `list-toolbar`,
|
||
},
|
||
ot = {
|
||
key: 1,
|
||
class: `link-tip`,
|
||
},
|
||
st = {
|
||
key: 2,
|
||
class: `list-table`,
|
||
},
|
||
ct = {
|
||
key: 3,
|
||
class: `list-foot`,
|
||
},
|
||
lt = {
|
||
class: `recommend-section`,
|
||
},
|
||
ut = {
|
||
key: 1,
|
||
class: `list-table`,
|
||
},
|
||
dt = {
|
||
key: 2,
|
||
class: `list-foot`,
|
||
},
|
||
ft = {
|
||
class: `recommend-section`,
|
||
},
|
||
pt = {
|
||
class: `list-toolbar`,
|
||
},
|
||
mt = {
|
||
class: `list-toolbar-right`,
|
||
},
|
||
ht = {
|
||
key: 1,
|
||
class: `list-table`,
|
||
},
|
||
gt = {
|
||
key: 2,
|
||
class: `list-foot`,
|
||
},
|
||
_t = _plugin_vue_export_helper_t(
|
||
defineComponent({
|
||
__name: `index`,
|
||
setup(ee) {
|
||
let y = useApi(),
|
||
{ enabled: _t, load: w } = useWithdrawAvailability_t(`recommend`),
|
||
vt = ref(!0),
|
||
yt = ref(!1),
|
||
T = ref(``),
|
||
E = ref(null),
|
||
D = ref(null),
|
||
bt = computed(() => !!E.value?.url),
|
||
xt = computed(() => (E.value?.permission ?? 1) === 1),
|
||
St = computed(() => E.value?.relation_mode === `permanent`),
|
||
Ct = ref(`links`),
|
||
O = ref(!1),
|
||
k = ref(``);
|
||
async function wt() {
|
||
if (!(O.value || !xt.value || bt.value)) {
|
||
((O.value = !0), (k.value = ``));
|
||
try {
|
||
(await y.post(`/recommend/promoter`), await A());
|
||
} catch (e) {
|
||
k.value = e instanceof Error ? e.message : `开通失败,请稍后重试`;
|
||
} finally {
|
||
O.value = !1;
|
||
}
|
||
}
|
||
}
|
||
async function A() {
|
||
((vt.value = !0), (T.value = ``));
|
||
try {
|
||
let [e, t] = await Promise.all([
|
||
y.get(`/recommend/promoter`),
|
||
y.get(`/recommend/description`).catch(() => null),
|
||
]);
|
||
((E.value = e?.promoter ?? null),
|
||
(D.value = t),
|
||
(yt.value = !0),
|
||
E.value?.url && (J(), $(Ct.value)));
|
||
} catch (e) {
|
||
T.value = e instanceof Error ? e.message : `加载失败,请稍后重试`;
|
||
} finally {
|
||
vt.value = !1;
|
||
}
|
||
}
|
||
let j = ref([]),
|
||
M = ref([]),
|
||
N = ref(!1),
|
||
P = ref(``),
|
||
F = ref(``),
|
||
I = ref(``),
|
||
L = ref([]),
|
||
R = ref([]),
|
||
Tt = ref(!1),
|
||
z = ref(``),
|
||
B = ref(!1),
|
||
V = ref(null),
|
||
H = reactive({
|
||
system_url: ``,
|
||
custom_url: ``,
|
||
}),
|
||
U = ref(``),
|
||
W = ref(``),
|
||
G = ref(``),
|
||
K = ref(null),
|
||
q;
|
||
onScopeDispose(() => {
|
||
q !== void 0 && clearTimeout(q);
|
||
});
|
||
async function J() {
|
||
if (!N.value) {
|
||
((N.value = !0),
|
||
(P.value = ``),
|
||
(F.value = ``),
|
||
(I.value = ``),
|
||
(z.value = ``));
|
||
try {
|
||
let [e, t, n, r] = await Promise.allSettled([
|
||
y.get(`/recommend/config`),
|
||
y.get(`/recommend/products`),
|
||
y.get(`/recommend/promoter/system_url`),
|
||
y.get(`/recommend/promoter/url`),
|
||
]);
|
||
(e.status === `fulfilled`
|
||
? (j.value = e.value?.list ?? [])
|
||
: (I.value =
|
||
e.reason instanceof Error
|
||
? e.reason.message
|
||
: `奖励规则加载失败,请重试`),
|
||
t.status === `fulfilled`
|
||
? (M.value = t.value?.products ?? [])
|
||
: (F.value =
|
||
t.reason instanceof Error
|
||
? t.reason.message
|
||
: `推荐产品加载失败,请重试`),
|
||
n.status === `fulfilled`
|
||
? (L.value = Array.isArray(n.value?.system_url)
|
||
? n.value.system_url
|
||
.filter((e) => typeof e == `string` && e.trim())
|
||
.map((e) => e.trim())
|
||
: [])
|
||
: (P.value =
|
||
n.reason instanceof Error
|
||
? n.reason.message
|
||
: `推广页面加载失败,请重试`),
|
||
r.status === `fulfilled`
|
||
? (R.value = Array.isArray(r.value?.list) ? r.value.list : [])
|
||
: (z.value =
|
||
r.reason instanceof Error
|
||
? r.reason.message
|
||
: `自定义链接加载失败,请重试`),
|
||
L.value.includes(H.system_url) ||
|
||
(H.system_url = L.value[0] || ``));
|
||
} finally {
|
||
N.value = !1;
|
||
}
|
||
}
|
||
}
|
||
async function Et() {
|
||
((Tt.value = !0), (z.value = ``));
|
||
try {
|
||
let e = await y.get(`/recommend/promoter/url`);
|
||
R.value = Array.isArray(e?.list) ? e.list : [];
|
||
} catch (e) {
|
||
z.value =
|
||
e instanceof Error ? e.message : `自定义链接加载失败,请重试`;
|
||
} finally {
|
||
Tt.value = !1;
|
||
}
|
||
}
|
||
async function Dt() {
|
||
if (B.value || V.value !== null || N.value) return;
|
||
let e = H.system_url.trim(),
|
||
t = H.custom_url.trim();
|
||
if (!e || !L.value.includes(e)) {
|
||
z.value = `请选择当前可用的推广页面`;
|
||
return;
|
||
}
|
||
if (!t) {
|
||
z.value = `请输入自定义链接标识`;
|
||
return;
|
||
}
|
||
((B.value = !0), (z.value = ``));
|
||
try {
|
||
(await y.post(`/recommend/promoter/url`, {
|
||
system_url: e,
|
||
custom_url: t,
|
||
}),
|
||
(H.custom_url = ``),
|
||
await Et());
|
||
} catch (e) {
|
||
z.value =
|
||
e instanceof Error ? e.message : `生成自定义链接失败,请重试`;
|
||
} finally {
|
||
B.value = !1;
|
||
}
|
||
}
|
||
async function Ot(e) {
|
||
if (
|
||
!(V.value !== null || B.value) &&
|
||
(typeof window > `u` ||
|
||
window.confirm(`确定删除这条自定义推广链接吗?`))
|
||
) {
|
||
((V.value = e), (z.value = ``));
|
||
try {
|
||
(await y.del(
|
||
`/recommend/promoter/url/${encodeURIComponent(String(e))}`,
|
||
),
|
||
await Et());
|
||
} catch (e) {
|
||
z.value =
|
||
e instanceof Error ? e.message : `删除自定义链接失败,请重试`;
|
||
} finally {
|
||
V.value = null;
|
||
}
|
||
}
|
||
}
|
||
function kt(e) {
|
||
return e.url || e.custom_url || ``;
|
||
}
|
||
async function At(e, t) {
|
||
if (e) {
|
||
(clearTimeout(q), (U.value = ``), (W.value = ``), (G.value = ``));
|
||
try {
|
||
(await navigator.clipboard.writeText(e),
|
||
(U.value = t),
|
||
(q = setTimeout(() => (U.value = ``), 1500)));
|
||
} catch {
|
||
((W.value = `自动复制失败,请选中下方链接手动复制。`),
|
||
(G.value = e));
|
||
}
|
||
}
|
||
}
|
||
async function jt(e) {
|
||
if (K.value !== null) return;
|
||
let t = Number(e.product_id);
|
||
if (!Number.isSafeInteger(t) || t <= 0) {
|
||
P.value = `商品编号无效,请重新加载推荐产品`;
|
||
return;
|
||
}
|
||
((K.value = t), (P.value = ``));
|
||
try {
|
||
let e = await y.get(`/recommend/copy_link`, {
|
||
product_id: t,
|
||
});
|
||
if (!e?.url) throw Error(`服务器未返回商品推广链接`);
|
||
await At(e.url, `p${t}`);
|
||
} catch (e) {
|
||
P.value =
|
||
e instanceof Error ? e.message : `商品推广链接获取失败,请重试`;
|
||
} finally {
|
||
K.value = null;
|
||
}
|
||
}
|
||
let Mt = {
|
||
Pending: {
|
||
label: `待结算`,
|
||
severity: `warn`,
|
||
},
|
||
Active: {
|
||
label: `已生效`,
|
||
severity: `success`,
|
||
},
|
||
Invalid: {
|
||
label: `已失效`,
|
||
severity: `danger`,
|
||
},
|
||
Frozen: {
|
||
label: `已冻结`,
|
||
severity: `info`,
|
||
},
|
||
},
|
||
Nt = ref(``),
|
||
Pt = ref(``),
|
||
Ft = ref(``),
|
||
It = ref(``),
|
||
Lt = ref(``),
|
||
Y = ref(``),
|
||
X = ref(``),
|
||
Z = ref(null),
|
||
Rt = computed(() => [
|
||
{
|
||
label: `全部商品`,
|
||
value: ``,
|
||
},
|
||
...j.value
|
||
.filter(
|
||
(e) =>
|
||
Number.isSafeInteger(e.product_id) &&
|
||
Number(e.product_id) > 0,
|
||
)
|
||
.map((e) => ({
|
||
label: product_name_n(e.name),
|
||
value: e.product_id,
|
||
})),
|
||
]),
|
||
zt = 0;
|
||
onScopeDispose(() => {
|
||
zt++;
|
||
});
|
||
let {
|
||
list: Bt,
|
||
total: Vt,
|
||
loading: Ht,
|
||
error: Ut,
|
||
page: Wt,
|
||
limit: Gt,
|
||
onPage: Kt,
|
||
reload: Q,
|
||
} = useListPage_t(`/recommend`, {
|
||
limit: 10,
|
||
immediate: !1,
|
||
params: () => ({
|
||
orderby: `id`,
|
||
sort: `desc`,
|
||
status: Nt.value,
|
||
type: Pt.value,
|
||
keywords: It.value,
|
||
product_id: Lt.value,
|
||
...C(Y.value, X.value),
|
||
}),
|
||
loader: async (e) => {
|
||
let t = ++zt;
|
||
Z.value = null;
|
||
let n = await y.get(`/recommend`, e);
|
||
return (
|
||
t === zt &&
|
||
(Z.value = {
|
||
amount: n.total_amount ?? 0,
|
||
qty: n.qty ?? 0,
|
||
}),
|
||
{
|
||
list: n.list ?? [],
|
||
count: n.count ?? 0,
|
||
}
|
||
);
|
||
},
|
||
}),
|
||
qt = [
|
||
{
|
||
label: `全部状态`,
|
||
value: ``,
|
||
},
|
||
{
|
||
label: `待结算`,
|
||
value: `Pending`,
|
||
},
|
||
{
|
||
label: `已生效`,
|
||
value: `Active`,
|
||
},
|
||
{
|
||
label: `已失效`,
|
||
value: `Invalid`,
|
||
},
|
||
{
|
||
label: `已冻结`,
|
||
value: `Frozen`,
|
||
},
|
||
],
|
||
Jt = [
|
||
{
|
||
label: `全部类型`,
|
||
value: ``,
|
||
},
|
||
{
|
||
label: `新购`,
|
||
value: `new`,
|
||
},
|
||
{
|
||
label: `续费`,
|
||
value: `renew`,
|
||
},
|
||
];
|
||
function Yt() {
|
||
((It.value = Ft.value.trim()), Q());
|
||
}
|
||
let {
|
||
list: Xt,
|
||
total: Zt,
|
||
loading: Qt,
|
||
error: $t,
|
||
page: en,
|
||
limit: tn,
|
||
onPage: nn,
|
||
reload: rn,
|
||
} = useListPage_t(`/withdraw`, {
|
||
limit: 10,
|
||
immediate: !1,
|
||
params: () => ({
|
||
source: `IdcsmartRecommend`,
|
||
}),
|
||
}),
|
||
an = {
|
||
0: {
|
||
label: `待审核`,
|
||
severity: `warn`,
|
||
},
|
||
1: {
|
||
label: `待打款`,
|
||
severity: `info`,
|
||
},
|
||
2: {
|
||
label: `审核驳回`,
|
||
severity: `danger`,
|
||
},
|
||
3: {
|
||
label: `已打款`,
|
||
severity: `success`,
|
||
},
|
||
},
|
||
on = ref(``),
|
||
{
|
||
list: sn,
|
||
total: cn,
|
||
loading: ln,
|
||
error: un,
|
||
page: dn,
|
||
limit: fn,
|
||
onPage: pn,
|
||
reload: mn,
|
||
} = useListPage_t(`/recommend/invited_users`, {
|
||
limit: 10,
|
||
immediate: !1,
|
||
params: () => ({
|
||
consumed: on.value,
|
||
}),
|
||
}),
|
||
hn = [
|
||
{
|
||
label: `全部`,
|
||
value: ``,
|
||
},
|
||
{
|
||
label: `已消费`,
|
||
value: 1,
|
||
},
|
||
{
|
||
label: `未消费`,
|
||
value: 0,
|
||
},
|
||
];
|
||
function $(e) {
|
||
(e === `records` && Q(),
|
||
e === `withdraws` && rn(),
|
||
e === `invitees` && mn());
|
||
}
|
||
function gn(e) {
|
||
((Ct.value = e), $(e));
|
||
}
|
||
let _n = computed(() =>
|
||
St.value
|
||
? [`links`, `records`, `withdraws`, `invitees`]
|
||
: [`links`, `records`, `withdraws`],
|
||
),
|
||
vn = {
|
||
links: `推介链接`,
|
||
records: `推介记录`,
|
||
withdraws: `提现记录`,
|
||
invitees: `受邀用户`,
|
||
},
|
||
yn = ref(!1);
|
||
async function bn() {
|
||
(await A(), rn());
|
||
}
|
||
return (
|
||
onMounted(() => {
|
||
(A(), w());
|
||
}),
|
||
(n, i) => {
|
||
let o = skeleton,
|
||
l = message,
|
||
u = button,
|
||
ee = tab,
|
||
ne = tablist,
|
||
y = inputtext,
|
||
x = select,
|
||
S = column,
|
||
C = datatable,
|
||
w = ListEmpty,
|
||
q = tabpanel,
|
||
It = inputicon,
|
||
zt = iconfield,
|
||
$ = tag,
|
||
xn = paginator,
|
||
Sn = tabpanels,
|
||
Cn = tabs,
|
||
wn = WithdrawDialog;
|
||
return (
|
||
openBlock(),
|
||
createElementBlock(`div`, Se, [
|
||
(i[37] ||= createElementVNode(
|
||
`div`,
|
||
{
|
||
class: `list-head`,
|
||
},
|
||
[createElementVNode(`h2`, null, `推介计划`)],
|
||
-1,
|
||
)),
|
||
unref(vt) && !unref(yt)
|
||
? (openBlock(),
|
||
createElementBlock(`div`, Ce, [
|
||
createVNode(o, {
|
||
height: `200px`,
|
||
}),
|
||
]))
|
||
: unref(T)
|
||
? (openBlock(),
|
||
createElementBlock(`div`, we, [
|
||
createVNode(
|
||
l,
|
||
{
|
||
severity: `error`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default: withCtx(() => [
|
||
createTextVNode(toDisplayString(unref(T)), 1),
|
||
]),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(u, {
|
||
label: `重新加载`,
|
||
icon: `pi pi-refresh`,
|
||
severity: `secondary`,
|
||
outlined: ``,
|
||
onClick: A,
|
||
}),
|
||
]))
|
||
: (openBlock(),
|
||
createElementBlock(
|
||
Fragment,
|
||
{
|
||
key: 2,
|
||
},
|
||
[
|
||
unref(bt)
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
Fragment,
|
||
{
|
||
key: 1,
|
||
},
|
||
[
|
||
createElementVNode(`div`, ke, [
|
||
createElementVNode(`div`, Ae, [
|
||
createElementVNode(`div`, je, [
|
||
(i[21] ||= createElementVNode(
|
||
`span`,
|
||
{
|
||
class: `stat-label`,
|
||
},
|
||
`可提现奖励`,
|
||
-1,
|
||
)),
|
||
createElementVNode(`span`, Me, [
|
||
(i[20] ||= createElementVNode(
|
||
`small`,
|
||
null,
|
||
`¥`,
|
||
-1,
|
||
)),
|
||
createTextVNode(
|
||
toDisplayString(
|
||
Number(
|
||
unref(E)?.withdrawable_amount ??
|
||
0,
|
||
).toFixed(2),
|
||
),
|
||
1,
|
||
),
|
||
]),
|
||
]),
|
||
unref(_t)
|
||
? (openBlock(),
|
||
createBlock(
|
||
u,
|
||
{
|
||
key: 0,
|
||
label: `提现`,
|
||
disabled:
|
||
Number(
|
||
unref(E)
|
||
?.withdrawable_amount ?? 0,
|
||
) <= 0,
|
||
onClick: (i[0] ||= (e) =>
|
||
(yn.value = !0)),
|
||
},
|
||
null,
|
||
8,
|
||
[`disabled`],
|
||
))
|
||
: createCommentVNode(``, !0),
|
||
]),
|
||
createElementVNode(`div`, Ne, [
|
||
createElementVNode(`div`, Pe, [
|
||
(i[23] ||= createElementVNode(
|
||
`span`,
|
||
{
|
||
class: `stat-label`,
|
||
},
|
||
`已提现`,
|
||
-1,
|
||
)),
|
||
createElementVNode(`span`, Fe, [
|
||
(i[22] ||= createElementVNode(
|
||
`small`,
|
||
null,
|
||
`¥`,
|
||
-1,
|
||
)),
|
||
createTextVNode(
|
||
toDisplayString(
|
||
Number(
|
||
unref(E)?.withdrawn_amount ?? 0,
|
||
).toFixed(2),
|
||
),
|
||
1,
|
||
),
|
||
]),
|
||
]),
|
||
createElementVNode(`div`, Ie, [
|
||
(i[25] ||= createElementVNode(
|
||
`span`,
|
||
{
|
||
class: `stat-label`,
|
||
},
|
||
`待结算`,
|
||
-1,
|
||
)),
|
||
createElementVNode(`span`, Le, [
|
||
(i[24] ||= createElementVNode(
|
||
`small`,
|
||
null,
|
||
`¥`,
|
||
-1,
|
||
)),
|
||
createTextVNode(
|
||
toDisplayString(
|
||
Number(
|
||
unref(E)?.pending_amount ?? 0,
|
||
).toFixed(2),
|
||
),
|
||
1,
|
||
),
|
||
]),
|
||
]),
|
||
createElementVNode(
|
||
`div`,
|
||
{
|
||
class: `reward-metric`,
|
||
title: `冻结金额 ¥${Number(unref(E)?.frozen_amount ?? 0).toFixed(2)}`,
|
||
},
|
||
[
|
||
(i[27] ||= createElementVNode(
|
||
`span`,
|
||
{
|
||
class: `stat-label`,
|
||
},
|
||
`已生效`,
|
||
-1,
|
||
)),
|
||
createElementVNode(`span`, ze, [
|
||
(i[26] ||= createElementVNode(
|
||
`small`,
|
||
null,
|
||
`¥`,
|
||
-1,
|
||
)),
|
||
createTextVNode(
|
||
toDisplayString(
|
||
Number(
|
||
unref(E)?.active_amount ?? 0,
|
||
).toFixed(2),
|
||
),
|
||
1,
|
||
),
|
||
]),
|
||
],
|
||
8,
|
||
Re,
|
||
),
|
||
unref(St)
|
||
? (openBlock(),
|
||
createElementBlock(`div`, Be, [
|
||
(i[28] ||= createElementVNode(
|
||
`span`,
|
||
{
|
||
class: `stat-label`,
|
||
},
|
||
`邀请人数`,
|
||
-1,
|
||
)),
|
||
createElementVNode(
|
||
`span`,
|
||
Ve,
|
||
toDisplayString(
|
||
unref(E)?.invitee_count ?? 0,
|
||
),
|
||
1,
|
||
),
|
||
]))
|
||
: createCommentVNode(``, !0),
|
||
]),
|
||
]),
|
||
createVNode(
|
||
Cn,
|
||
{
|
||
class: `recommend-tabs`,
|
||
value: unref(Ct),
|
||
"onUpdate:value": (i[14] ||= (e) =>
|
||
gn(String(e))),
|
||
},
|
||
{
|
||
default: withCtx(() => [
|
||
createVNode(ne, null, {
|
||
default: withCtx(() => [
|
||
(openBlock(!0),
|
||
createElementBlock(
|
||
Fragment,
|
||
null,
|
||
renderList(
|
||
unref(_n),
|
||
(t) => (
|
||
openBlock(),
|
||
createBlock(
|
||
ee,
|
||
{
|
||
key: t,
|
||
value: t,
|
||
},
|
||
{
|
||
default: withCtx(() => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
vn[t],
|
||
),
|
||
1,
|
||
),
|
||
]),
|
||
_: 2,
|
||
},
|
||
1032,
|
||
[`value`],
|
||
)
|
||
),
|
||
),
|
||
128,
|
||
)),
|
||
]),
|
||
_: 1,
|
||
}),
|
||
createVNode(Sn, null, {
|
||
default: withCtx(() => [
|
||
createVNode(
|
||
q,
|
||
{
|
||
value: `links`,
|
||
},
|
||
{
|
||
default: withCtx(() => [
|
||
createElementVNode(
|
||
`div`,
|
||
He,
|
||
[
|
||
createElementVNode(
|
||
`div`,
|
||
Ue,
|
||
[
|
||
(i[29] ||=
|
||
createElementVNode(
|
||
`label`,
|
||
{
|
||
class: `link-heading`,
|
||
for: `recommend-link`,
|
||
},
|
||
`我的推介链接`,
|
||
-1,
|
||
)),
|
||
createElementVNode(
|
||
`div`,
|
||
We,
|
||
[
|
||
createVNode(
|
||
y,
|
||
{
|
||
id: `recommend-link`,
|
||
modelValue:
|
||
unref(E)
|
||
?.url ||
|
||
``,
|
||
readonly: ``,
|
||
class: `link-text`,
|
||
onFocus:
|
||
(i[1] ||= (
|
||
e,
|
||
) =>
|
||
e.target.select()),
|
||
},
|
||
null,
|
||
8,
|
||
[`modelValue`],
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label:
|
||
unref(U) ===
|
||
`main`
|
||
? `已复制`
|
||
: `复制链接`,
|
||
icon:
|
||
unref(U) ===
|
||
`main`
|
||
? `pi pi-check`
|
||
: `pi pi-copy`,
|
||
onClick:
|
||
(i[2] ||= (
|
||
e,
|
||
) =>
|
||
At(
|
||
unref(E)
|
||
?.url ||
|
||
``,
|
||
`main`,
|
||
)),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`label`,
|
||
`icon`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
(i[30] ||=
|
||
createElementVNode(
|
||
`p`,
|
||
{
|
||
class: `link-tip`,
|
||
},
|
||
` 分享该链接可记录推介来源,奖励按推介规则和实际订单结算。 `,
|
||
-1,
|
||
)),
|
||
unref(W)
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 0,
|
||
severity: `warn`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(
|
||
W,
|
||
),
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
unref(G)
|
||
? (openBlock(),
|
||
createBlock(
|
||
y,
|
||
{
|
||
key: 1,
|
||
"model-value":
|
||
unref(G),
|
||
"aria-label": `手动复制推介链接`,
|
||
readonly: ``,
|
||
onFocus:
|
||
(i[3] ||= (
|
||
e,
|
||
) =>
|
||
e.target.select()),
|
||
},
|
||
null,
|
||
8,
|
||
[`model-value`],
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
],
|
||
),
|
||
createElementVNode(
|
||
`div`,
|
||
Ge,
|
||
[
|
||
(i[33] ||=
|
||
createElementVNode(
|
||
`div`,
|
||
{
|
||
class: `section-header`,
|
||
},
|
||
[
|
||
createElementVNode(
|
||
`h3`,
|
||
{
|
||
class: `link-title`,
|
||
},
|
||
`自定义推广链接`,
|
||
),
|
||
createElementVNode(
|
||
`p`,
|
||
{
|
||
class: `link-tip`,
|
||
},
|
||
`为指定推广页面生成专属入口`,
|
||
),
|
||
],
|
||
-1,
|
||
)),
|
||
!unref(N) &&
|
||
!unref(P) &&
|
||
!unref(L).length
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 0,
|
||
severity: `info`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
...(i[31] ||=
|
||
[
|
||
createTextVNode(
|
||
`暂未配置推广页面,当前无法生成自定义推广链接。你仍可分享上方推介链接。`,
|
||
-1,
|
||
),
|
||
]),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
createElementVNode(
|
||
`form`,
|
||
{
|
||
class: `custom-link-form`,
|
||
onSubmit:
|
||
withModifiers(
|
||
Dt,
|
||
[`prevent`],
|
||
),
|
||
},
|
||
[
|
||
createVNode(
|
||
x,
|
||
{
|
||
modelValue:
|
||
unref(H)
|
||
.system_url,
|
||
"onUpdate:modelValue":
|
||
(i[4] ||= (
|
||
e,
|
||
) =>
|
||
(unref(
|
||
H,
|
||
).system_url =
|
||
e)),
|
||
options:
|
||
unref(L),
|
||
placeholder: `选择推广页面`,
|
||
"aria-label": `选择推广页面`,
|
||
disabled:
|
||
unref(B) ||
|
||
unref(N) ||
|
||
!unref(L)
|
||
.length,
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`modelValue`,
|
||
`options`,
|
||
`disabled`,
|
||
],
|
||
),
|
||
createVNode(
|
||
y,
|
||
{
|
||
modelValue:
|
||
unref(H)
|
||
.custom_url,
|
||
"onUpdate:modelValue":
|
||
(i[5] ||= (
|
||
e,
|
||
) =>
|
||
(unref(
|
||
H,
|
||
).custom_url =
|
||
e)),
|
||
"aria-label": `自定义链接标识`,
|
||
placeholder: `输入自定义链接标识`,
|
||
disabled:
|
||
unref(B) ||
|
||
unref(N) ||
|
||
!unref(L)
|
||
.length,
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`modelValue`,
|
||
`disabled`,
|
||
],
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
type: `submit`,
|
||
label: `生成链接`,
|
||
icon: `pi pi-plus`,
|
||
loading:
|
||
unref(B),
|
||
disabled:
|
||
unref(B) ||
|
||
unref(N) ||
|
||
!unref(L)
|
||
.length,
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`loading`,
|
||
`disabled`,
|
||
],
|
||
),
|
||
],
|
||
32,
|
||
),
|
||
unref(z)
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 1,
|
||
severity: `error`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(
|
||
z,
|
||
),
|
||
) +
|
||
` `,
|
||
1,
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label: `重试加载`,
|
||
text: ``,
|
||
size: `small`,
|
||
onClick:
|
||
Et,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
unref(Tt)
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
Ke,
|
||
[
|
||
...(i[32] ||=
|
||
[
|
||
createElementVNode(
|
||
`i`,
|
||
{
|
||
class: `pi pi-spin pi-spinner`,
|
||
},
|
||
null,
|
||
-1,
|
||
),
|
||
createTextVNode(
|
||
` 加载中…`,
|
||
-1,
|
||
),
|
||
]),
|
||
],
|
||
))
|
||
: unref(R).length
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
qe,
|
||
[
|
||
(openBlock(
|
||
!0,
|
||
),
|
||
createElementBlock(
|
||
Fragment,
|
||
null,
|
||
renderList(
|
||
unref(
|
||
R,
|
||
),
|
||
(t) => (
|
||
openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
{
|
||
key: String(
|
||
t.id,
|
||
),
|
||
class: `custom-link-row`,
|
||
},
|
||
[
|
||
createElementVNode(
|
||
`div`,
|
||
Je,
|
||
[
|
||
createElementVNode(
|
||
`strong`,
|
||
null,
|
||
toDisplayString(
|
||
t.system_url ||
|
||
`推广页面`,
|
||
),
|
||
1,
|
||
),
|
||
createVNode(
|
||
y,
|
||
{
|
||
"model-value":
|
||
kt(
|
||
t,
|
||
),
|
||
readonly: ``,
|
||
"aria-label": `自定义推广链接 ${t.id}`,
|
||
onFocus:
|
||
(i[6] ||=
|
||
(
|
||
e,
|
||
) =>
|
||
e.target.select()),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`model-value`,
|
||
`aria-label`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
createElementVNode(
|
||
`div`,
|
||
Ye,
|
||
[
|
||
createVNode(
|
||
u,
|
||
{
|
||
label:
|
||
unref(
|
||
U,
|
||
) ===
|
||
`custom-${t.id}`
|
||
? `已复制`
|
||
: `复制`,
|
||
icon: `pi pi-copy`,
|
||
severity: `secondary`,
|
||
text: ``,
|
||
disabled:
|
||
!kt(
|
||
t,
|
||
),
|
||
onClick:
|
||
(
|
||
e,
|
||
) =>
|
||
At(
|
||
kt(
|
||
t,
|
||
),
|
||
`custom-${t.id}`,
|
||
),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`label`,
|
||
`disabled`,
|
||
`onClick`,
|
||
],
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label: `删除`,
|
||
icon: `pi pi-trash`,
|
||
severity: `danger`,
|
||
text: ``,
|
||
loading:
|
||
unref(
|
||
V,
|
||
) ===
|
||
t.id,
|
||
disabled:
|
||
unref(
|
||
B,
|
||
) ||
|
||
unref(
|
||
V,
|
||
) !==
|
||
null,
|
||
onClick:
|
||
(
|
||
e,
|
||
) =>
|
||
Ot(
|
||
t.id,
|
||
),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`loading`,
|
||
`disabled`,
|
||
`onClick`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
],
|
||
)
|
||
),
|
||
),
|
||
128,
|
||
)),
|
||
],
|
||
))
|
||
: (openBlock(),
|
||
createElementBlock(
|
||
`p`,
|
||
Xe,
|
||
`还没有自定义推广链接。`,
|
||
)),
|
||
],
|
||
),
|
||
unref(P)
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 0,
|
||
severity: `error`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default: withCtx(
|
||
() => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(P),
|
||
) + ` `,
|
||
1,
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label: `重新加载推荐内容`,
|
||
text: ``,
|
||
size: `small`,
|
||
onClick:
|
||
J,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
unref(N)
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
Ze,
|
||
[
|
||
...(i[34] ||= [
|
||
createElementVNode(
|
||
`i`,
|
||
{
|
||
class: `pi pi-spin pi-spinner`,
|
||
},
|
||
null,
|
||
-1,
|
||
),
|
||
createTextVNode(
|
||
` 加载中…`,
|
||
-1,
|
||
),
|
||
]),
|
||
],
|
||
))
|
||
: (openBlock(),
|
||
createElementBlock(
|
||
Fragment,
|
||
{
|
||
key: 2,
|
||
},
|
||
[
|
||
unref(F)
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 0,
|
||
severity: `error`,
|
||
closable:
|
||
!1,
|
||
},
|
||
{
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(
|
||
F,
|
||
),
|
||
) +
|
||
` `,
|
||
1,
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label: `重新加载推荐产品`,
|
||
text: ``,
|
||
size: `small`,
|
||
onClick:
|
||
J,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
unref(M).length
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`section`,
|
||
Qe,
|
||
[
|
||
createElementVNode(
|
||
`div`,
|
||
$e,
|
||
[
|
||
(i[35] ||=
|
||
createElementVNode(
|
||
`h3`,
|
||
{
|
||
id: `recommend-products-title`,
|
||
class: `link-title`,
|
||
},
|
||
`建议推介产品`,
|
||
-1,
|
||
)),
|
||
createElementVNode(
|
||
`span`,
|
||
null,
|
||
toDisplayString(
|
||
unref(
|
||
M,
|
||
)
|
||
.length,
|
||
) +
|
||
` 款产品`,
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
createElementVNode(
|
||
`div`,
|
||
et,
|
||
[
|
||
createVNode(
|
||
C,
|
||
{
|
||
value:
|
||
unref(
|
||
M,
|
||
),
|
||
scrollable: ``,
|
||
},
|
||
{
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `商品`,
|
||
style:
|
||
{
|
||
"min-width": `220px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(
|
||
product_name_n,
|
||
)(
|
||
t.name,
|
||
),
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `奖励比例`,
|
||
style:
|
||
{
|
||
width: `120px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.ratio,
|
||
) +
|
||
`%`,
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `操作`,
|
||
style:
|
||
{
|
||
width: `130px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: e,
|
||
}) => [
|
||
createVNode(
|
||
u,
|
||
{
|
||
label:
|
||
unref(
|
||
U,
|
||
) ===
|
||
`p${e.product_id}`
|
||
? `已复制`
|
||
: `复制链接`,
|
||
loading:
|
||
unref(
|
||
K,
|
||
) ===
|
||
e.product_id,
|
||
disabled:
|
||
unref(
|
||
K,
|
||
) !==
|
||
null,
|
||
size: `small`,
|
||
severity: `secondary`,
|
||
text: ``,
|
||
onClick:
|
||
(
|
||
t,
|
||
) =>
|
||
jt(
|
||
e,
|
||
),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`label`,
|
||
`loading`,
|
||
`disabled`,
|
||
`onClick`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
8,
|
||
[
|
||
`value`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
],
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
unref(j).length
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`section`,
|
||
tt,
|
||
[
|
||
(i[36] ||=
|
||
createElementVNode(
|
||
`div`,
|
||
{
|
||
class: `section-header`,
|
||
},
|
||
[
|
||
createElementVNode(
|
||
`h3`,
|
||
{
|
||
id: `recommend-rules-title`,
|
||
class: `link-title`,
|
||
},
|
||
`奖励规则`,
|
||
),
|
||
createElementVNode(
|
||
`p`,
|
||
{
|
||
class: `link-tip`,
|
||
},
|
||
`最低金额按同一订单相同商品的购买合计计算,奖励以实际结算为准`,
|
||
),
|
||
],
|
||
-1,
|
||
)),
|
||
createElementVNode(
|
||
`div`,
|
||
nt,
|
||
[
|
||
createVNode(
|
||
C,
|
||
{
|
||
value:
|
||
unref(
|
||
j,
|
||
),
|
||
scrollable: ``,
|
||
},
|
||
{
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `商品/套餐`,
|
||
style:
|
||
{
|
||
"min-width": `200px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(
|
||
product_name_n,
|
||
)(
|
||
t.name,
|
||
),
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `首购比例`,
|
||
style:
|
||
{
|
||
width: `110px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.ratio ??
|
||
0,
|
||
) +
|
||
`%`,
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `首购最低金额`,
|
||
style:
|
||
{
|
||
width: `130px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
`¥` +
|
||
toDisplayString(
|
||
t.amount ??
|
||
`0.00`,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `续费比例`,
|
||
style:
|
||
{
|
||
width: `110px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.renew_ratio ??
|
||
0,
|
||
) +
|
||
`%`,
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `续费最低金额`,
|
||
style:
|
||
{
|
||
width: `130px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
`¥` +
|
||
toDisplayString(
|
||
t.renew_amount ??
|
||
`0.00`,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
8,
|
||
[
|
||
`value`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
],
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
unref(I)
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 3,
|
||
severity: `error`,
|
||
closable:
|
||
!1,
|
||
},
|
||
{
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(
|
||
I,
|
||
),
|
||
) +
|
||
` `,
|
||
1,
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label: `重新加载奖励规则`,
|
||
text: ``,
|
||
size: `small`,
|
||
onClick:
|
||
J,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
!unref(M)
|
||
.length &&
|
||
!unref(j).length
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
rt,
|
||
[
|
||
createVNode(
|
||
w,
|
||
{
|
||
icon: `pi pi-share-alt`,
|
||
title: `暂无可推介产品`,
|
||
description: `你仍可分享上方专属链接,新的推介活动会显示在这里。`,
|
||
},
|
||
),
|
||
],
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
],
|
||
64,
|
||
)),
|
||
],
|
||
),
|
||
]),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
q,
|
||
{
|
||
value: `records`,
|
||
},
|
||
{
|
||
default: withCtx(() => [
|
||
createElementVNode(
|
||
`div`,
|
||
it,
|
||
[
|
||
createElementVNode(
|
||
`div`,
|
||
at,
|
||
[
|
||
createElementVNode(
|
||
`form`,
|
||
{
|
||
class: `list-toolbar-right`,
|
||
onSubmit:
|
||
withModifiers(
|
||
Yt,
|
||
[`prevent`],
|
||
),
|
||
},
|
||
[
|
||
createVNode(
|
||
zt,
|
||
{
|
||
class: `list-search`,
|
||
},
|
||
{
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createVNode(
|
||
It,
|
||
{
|
||
class: `pi pi-search`,
|
||
},
|
||
),
|
||
createVNode(
|
||
y,
|
||
{
|
||
modelValue:
|
||
unref(
|
||
Ft,
|
||
),
|
||
"onUpdate:modelValue":
|
||
(i[7] ||=
|
||
(
|
||
e,
|
||
) =>
|
||
isRef(
|
||
Ft,
|
||
)
|
||
? (Ft.value =
|
||
e)
|
||
: null),
|
||
placeholder: `搜索受邀人或商品`,
|
||
"aria-label": `搜索推介记录`,
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`modelValue`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
x,
|
||
{
|
||
modelValue:
|
||
unref(Nt),
|
||
"onUpdate:modelValue":
|
||
(i[8] ||= (
|
||
e,
|
||
) =>
|
||
isRef(Nt)
|
||
? (Nt.value =
|
||
e)
|
||
: null),
|
||
class: `list-select`,
|
||
"aria-label": `推介状态`,
|
||
options: qt,
|
||
optionLabel: `label`,
|
||
optionValue: `value`,
|
||
onChange:
|
||
unref(Q),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`modelValue`,
|
||
`onChange`,
|
||
],
|
||
),
|
||
createVNode(
|
||
x,
|
||
{
|
||
modelValue:
|
||
unref(Pt),
|
||
"onUpdate:modelValue":
|
||
(i[9] ||= (
|
||
e,
|
||
) =>
|
||
isRef(Pt)
|
||
? (Pt.value =
|
||
e)
|
||
: null),
|
||
class: `list-select`,
|
||
"aria-label": `推介类型`,
|
||
options: Jt,
|
||
optionLabel: `label`,
|
||
optionValue: `value`,
|
||
onChange:
|
||
unref(Q),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`modelValue`,
|
||
`onChange`,
|
||
],
|
||
),
|
||
createVNode(
|
||
x,
|
||
{
|
||
modelValue:
|
||
unref(Lt),
|
||
"onUpdate:modelValue":
|
||
(i[10] ||= (
|
||
e,
|
||
) =>
|
||
isRef(Lt)
|
||
? (Lt.value =
|
||
e)
|
||
: null),
|
||
class: `list-select`,
|
||
"aria-label": `推介商品`,
|
||
options:
|
||
unref(Rt),
|
||
"option-label": `label`,
|
||
"option-value": `value`,
|
||
onChange:
|
||
unref(Q),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`modelValue`,
|
||
`options`,
|
||
`onChange`,
|
||
],
|
||
),
|
||
createVNode(
|
||
y,
|
||
{
|
||
modelValue:
|
||
unref(Y),
|
||
"onUpdate:modelValue":
|
||
(i[11] ||= (
|
||
e,
|
||
) =>
|
||
isRef(Y)
|
||
? (Y.value =
|
||
e)
|
||
: null),
|
||
type: `date`,
|
||
"aria-label": `推介开始日期`,
|
||
max:
|
||
unref(X) ||
|
||
void 0,
|
||
onChange:
|
||
unref(Q),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`modelValue`,
|
||
`max`,
|
||
`onChange`,
|
||
],
|
||
),
|
||
createVNode(
|
||
y,
|
||
{
|
||
modelValue:
|
||
unref(X),
|
||
"onUpdate:modelValue":
|
||
(i[12] ||= (
|
||
e,
|
||
) =>
|
||
isRef(X)
|
||
? (X.value =
|
||
e)
|
||
: null),
|
||
type: `date`,
|
||
"aria-label": `推介结束日期`,
|
||
min:
|
||
unref(Y) ||
|
||
void 0,
|
||
onChange:
|
||
unref(Q),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`modelValue`,
|
||
`min`,
|
||
`onChange`,
|
||
],
|
||
),
|
||
createVNode(u, {
|
||
type: `submit`,
|
||
label: `搜索`,
|
||
severity: `secondary`,
|
||
outlined: ``,
|
||
}),
|
||
],
|
||
32,
|
||
),
|
||
],
|
||
),
|
||
unref(Ut)
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 0,
|
||
severity: `error`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default: withCtx(
|
||
() => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(Ut),
|
||
) + ` `,
|
||
1,
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label: `重新加载推介记录`,
|
||
size: `small`,
|
||
severity: `secondary`,
|
||
text: ``,
|
||
onClick:
|
||
unref(
|
||
Q,
|
||
),
|
||
},
|
||
null,
|
||
8,
|
||
[`onClick`],
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
!unref(Ut) &&
|
||
!unref(Ht) &&
|
||
unref(Z)
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`p`,
|
||
ot,
|
||
`当前筛选:奖励合计 ¥` +
|
||
toDisplayString(
|
||
Number(
|
||
unref(Z)
|
||
.amount,
|
||
).toFixed(2),
|
||
) +
|
||
`,商品数量 ` +
|
||
toDisplayString(
|
||
unref(Z).qty,
|
||
) +
|
||
`。`,
|
||
1,
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
unref(Ut)
|
||
? createCommentVNode(
|
||
``,
|
||
!0,
|
||
)
|
||
: (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
st,
|
||
[
|
||
createVNode(
|
||
C,
|
||
{
|
||
value:
|
||
unref(Bt),
|
||
loading:
|
||
unref(Ht),
|
||
scrollable: ``,
|
||
},
|
||
{
|
||
empty:
|
||
withCtx(
|
||
() => [
|
||
createVNode(
|
||
w,
|
||
{
|
||
icon: `pi pi-share-alt`,
|
||
title: `还没有推介记录`,
|
||
description: `好友通过你的链接注册并购买后会出现在这里`,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `受邀人`,
|
||
style:
|
||
{
|
||
"min-width": `140px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.username ||
|
||
`—`,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `商品`,
|
||
style:
|
||
{
|
||
"min-width": `200px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(
|
||
product_name_n,
|
||
)(
|
||
t.product_name,
|
||
) ||
|
||
`—`,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `数量`,
|
||
style:
|
||
{
|
||
width: `80px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.qty ??
|
||
1,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `类型`,
|
||
style:
|
||
{
|
||
width: `90px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.type ===
|
||
`new`
|
||
? `新购`
|
||
: t.type ===
|
||
`renew`
|
||
? `续费`
|
||
: `—`,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `奖励金额`,
|
||
style:
|
||
{
|
||
width: `120px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
`¥` +
|
||
toDisplayString(
|
||
t.awards_amount ??
|
||
`0.00`,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `状态`,
|
||
style:
|
||
{
|
||
width: `110px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: e,
|
||
}) => [
|
||
createVNode(
|
||
$,
|
||
{
|
||
value:
|
||
Mt[
|
||
e.status ??
|
||
``
|
||
]
|
||
?.label ||
|
||
e.status ||
|
||
`—`,
|
||
severity:
|
||
Mt[
|
||
e.status ??
|
||
``
|
||
]
|
||
?.severity ||
|
||
`secondary`,
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`value`,
|
||
`severity`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `失效原因`,
|
||
style:
|
||
{
|
||
"min-width": `140px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.invalid_reason ||
|
||
`—`,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `时间`,
|
||
style:
|
||
{
|
||
"min-width": `160px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
(`formatTime` in
|
||
n
|
||
? n.formatTime
|
||
: unref(
|
||
dict_r,
|
||
))(
|
||
t.create_time,
|
||
),
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
8,
|
||
[
|
||
`value`,
|
||
`loading`,
|
||
],
|
||
),
|
||
],
|
||
)),
|
||
unref(Vt) > 0
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
ct,
|
||
[
|
||
createVNode(
|
||
xn,
|
||
{
|
||
rows: unref(
|
||
Gt,
|
||
),
|
||
totalRecords:
|
||
unref(Vt),
|
||
first:
|
||
(unref(Wt) -
|
||
1) *
|
||
unref(Gt),
|
||
rowsPerPageOptions:
|
||
[
|
||
10, 20,
|
||
50,
|
||
],
|
||
onPage:
|
||
unref(Kt),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`rows`,
|
||
`totalRecords`,
|
||
`first`,
|
||
`onPage`,
|
||
],
|
||
),
|
||
],
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
],
|
||
),
|
||
]),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
q,
|
||
{
|
||
value: `withdraws`,
|
||
},
|
||
{
|
||
default: withCtx(() => [
|
||
createElementVNode(
|
||
`div`,
|
||
lt,
|
||
[
|
||
unref($t)
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 0,
|
||
severity: `error`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default: withCtx(
|
||
() => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref($t),
|
||
) + ` `,
|
||
1,
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label: `重新加载提现记录`,
|
||
size: `small`,
|
||
severity: `secondary`,
|
||
text: ``,
|
||
onClick:
|
||
unref(
|
||
rn,
|
||
),
|
||
},
|
||
null,
|
||
8,
|
||
[`onClick`],
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
))
|
||
: (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
ut,
|
||
[
|
||
createVNode(
|
||
C,
|
||
{
|
||
value:
|
||
unref(Xt),
|
||
loading:
|
||
unref(Qt),
|
||
scrollable: ``,
|
||
},
|
||
{
|
||
empty:
|
||
withCtx(
|
||
() => [
|
||
createVNode(
|
||
w,
|
||
{
|
||
icon: `pi pi-wallet`,
|
||
title: `还没有提现记录`,
|
||
description: `奖励提现的申请与打款进度会显示在这里`,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `提现方式`,
|
||
style:
|
||
{
|
||
width: `130px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.method ||
|
||
(t.addon_idcsmart_withdraw_method_id ===
|
||
0
|
||
? `余额`
|
||
: `—`),
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `金额`,
|
||
style:
|
||
{
|
||
width: `120px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
`¥` +
|
||
toDisplayString(
|
||
t.amount,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `手续费`,
|
||
style:
|
||
{
|
||
width: `110px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
`¥` +
|
||
toDisplayString(
|
||
t.fee,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `到账金额`,
|
||
style:
|
||
{
|
||
width: `120px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
`¥` +
|
||
toDisplayString(
|
||
t.withdraw_amount,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `状态`,
|
||
style:
|
||
{
|
||
width: `110px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: e,
|
||
}) => [
|
||
createVNode(
|
||
$,
|
||
{
|
||
value:
|
||
an[
|
||
e
|
||
.status
|
||
]
|
||
?.label ||
|
||
`—`,
|
||
severity:
|
||
an[
|
||
e
|
||
.status
|
||
]
|
||
?.severity ||
|
||
`secondary`,
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`value`,
|
||
`severity`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `备注`,
|
||
style:
|
||
{
|
||
"min-width": `140px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.reason ||
|
||
`—`,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `时间`,
|
||
style:
|
||
{
|
||
"min-width": `160px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
(`formatTime` in
|
||
n
|
||
? n.formatTime
|
||
: unref(
|
||
dict_r,
|
||
))(
|
||
t.create_time,
|
||
),
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
8,
|
||
[
|
||
`value`,
|
||
`loading`,
|
||
],
|
||
),
|
||
],
|
||
)),
|
||
unref(Zt) > 0
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
dt,
|
||
[
|
||
createVNode(
|
||
xn,
|
||
{
|
||
rows: unref(
|
||
tn,
|
||
),
|
||
totalRecords:
|
||
unref(Zt),
|
||
first:
|
||
(unref(en) -
|
||
1) *
|
||
unref(tn),
|
||
rowsPerPageOptions:
|
||
[
|
||
10, 20,
|
||
50,
|
||
],
|
||
onPage:
|
||
unref(nn),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`rows`,
|
||
`totalRecords`,
|
||
`first`,
|
||
`onPage`,
|
||
],
|
||
),
|
||
],
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
],
|
||
),
|
||
]),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
q,
|
||
{
|
||
value: `invitees`,
|
||
},
|
||
{
|
||
default: withCtx(() => [
|
||
createElementVNode(
|
||
`div`,
|
||
ft,
|
||
[
|
||
createElementVNode(
|
||
`div`,
|
||
pt,
|
||
[
|
||
createElementVNode(
|
||
`div`,
|
||
mt,
|
||
[
|
||
createVNode(
|
||
x,
|
||
{
|
||
modelValue:
|
||
unref(on),
|
||
"onUpdate:modelValue":
|
||
(i[13] ||= (
|
||
e,
|
||
) =>
|
||
isRef(on)
|
||
? (on.value =
|
||
e)
|
||
: null),
|
||
class: `list-select`,
|
||
"aria-label": `受邀用户消费状态`,
|
||
options: hn,
|
||
optionLabel: `label`,
|
||
optionValue: `value`,
|
||
onChange:
|
||
unref(mn),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`modelValue`,
|
||
`onChange`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
],
|
||
),
|
||
unref(un)
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 0,
|
||
severity: `error`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default: withCtx(
|
||
() => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
unref(un),
|
||
) + ` `,
|
||
1,
|
||
),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label: `重新加载受邀用户`,
|
||
size: `small`,
|
||
severity: `secondary`,
|
||
text: ``,
|
||
onClick:
|
||
unref(
|
||
mn,
|
||
),
|
||
},
|
||
null,
|
||
8,
|
||
[`onClick`],
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
))
|
||
: (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
ht,
|
||
[
|
||
createVNode(
|
||
C,
|
||
{
|
||
value:
|
||
unref(sn),
|
||
loading:
|
||
unref(ln),
|
||
scrollable: ``,
|
||
},
|
||
{
|
||
empty:
|
||
withCtx(
|
||
() => [
|
||
createVNode(
|
||
w,
|
||
{
|
||
icon: `pi pi-users`,
|
||
title: `还没有受邀用户`,
|
||
description: `通过你的链接注册的用户会出现在这里`,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
default:
|
||
withCtx(
|
||
() => [
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `用户`,
|
||
style:
|
||
{
|
||
"min-width": `160px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
t.username ||
|
||
`—`,
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `是否消费`,
|
||
style:
|
||
{
|
||
width: `120px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: e,
|
||
}) => [
|
||
createVNode(
|
||
$,
|
||
{
|
||
value:
|
||
e.consumed
|
||
? `已消费`
|
||
: `未消费`,
|
||
severity:
|
||
e.consumed
|
||
? `success`
|
||
: `secondary`,
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`value`,
|
||
`severity`,
|
||
],
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
createVNode(
|
||
S,
|
||
{
|
||
header: `绑定时间`,
|
||
style:
|
||
{
|
||
"min-width": `160px`,
|
||
},
|
||
},
|
||
{
|
||
body: withCtx(
|
||
({
|
||
data: t,
|
||
}) => [
|
||
createTextVNode(
|
||
toDisplayString(
|
||
(`formatTime` in
|
||
n
|
||
? n.formatTime
|
||
: unref(
|
||
dict_r,
|
||
))(
|
||
t.create_time,
|
||
),
|
||
),
|
||
1,
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
),
|
||
],
|
||
),
|
||
_: 1,
|
||
},
|
||
8,
|
||
[
|
||
`value`,
|
||
`loading`,
|
||
],
|
||
),
|
||
],
|
||
)),
|
||
unref(cn) > 0
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`div`,
|
||
gt,
|
||
[
|
||
createVNode(
|
||
xn,
|
||
{
|
||
rows: unref(
|
||
fn,
|
||
),
|
||
totalRecords:
|
||
unref(cn),
|
||
first:
|
||
(unref(dn) -
|
||
1) *
|
||
unref(fn),
|
||
rowsPerPageOptions:
|
||
[
|
||
10, 20,
|
||
50,
|
||
],
|
||
onPage:
|
||
unref(pn),
|
||
},
|
||
null,
|
||
8,
|
||
[
|
||
`rows`,
|
||
`totalRecords`,
|
||
`first`,
|
||
`onPage`,
|
||
],
|
||
),
|
||
],
|
||
))
|
||
: createCommentVNode(
|
||
``,
|
||
!0,
|
||
),
|
||
],
|
||
),
|
||
]),
|
||
_: 1,
|
||
},
|
||
),
|
||
]),
|
||
_: 1,
|
||
}),
|
||
]),
|
||
_: 1,
|
||
},
|
||
8,
|
||
[`value`],
|
||
),
|
||
],
|
||
64,
|
||
))
|
||
: (openBlock(),
|
||
createElementBlock(`div`, Te, [
|
||
createElementVNode(`div`, Ee, [
|
||
(i[18] ||= createElementVNode(
|
||
`h3`,
|
||
null,
|
||
`开通推介计划`,
|
||
-1,
|
||
)),
|
||
createElementVNode(`p`, De, [
|
||
(i[16] ||= createTextVNode(
|
||
` 开通推广员后,通过你的专属链接注册并购买的用户,你可获得奖励`,
|
||
-1,
|
||
)),
|
||
unref(D)
|
||
? (openBlock(),
|
||
createElementBlock(
|
||
`b`,
|
||
Oe,
|
||
`(最高 ` +
|
||
toDisplayString(
|
||
unref(D).max_ratio,
|
||
) +
|
||
`%)`,
|
||
1,
|
||
))
|
||
: createCommentVNode(``, !0),
|
||
createTextVNode(
|
||
`;已累计发放奖励 ¥` +
|
||
toDisplayString(
|
||
unref(D)?.awards ?? `0.00`,
|
||
) +
|
||
`。 `,
|
||
1,
|
||
),
|
||
]),
|
||
unref(xt)
|
||
? createCommentVNode(``, !0)
|
||
: (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 0,
|
||
severity: `warn`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default: withCtx(() => [
|
||
...(i[17] ||= [
|
||
createTextVNode(
|
||
` 管理员尚未开放推介计划申请,如有需要请联系客服。 `,
|
||
-1,
|
||
),
|
||
]),
|
||
]),
|
||
_: 1,
|
||
},
|
||
)),
|
||
unref(k)
|
||
? (openBlock(),
|
||
createBlock(
|
||
l,
|
||
{
|
||
key: 1,
|
||
severity: `error`,
|
||
closable: !1,
|
||
},
|
||
{
|
||
default: withCtx(() => [
|
||
createTextVNode(
|
||
toDisplayString(unref(k)),
|
||
1,
|
||
),
|
||
]),
|
||
_: 1,
|
||
},
|
||
))
|
||
: createCommentVNode(``, !0),
|
||
createVNode(
|
||
u,
|
||
{
|
||
label: `申请成为推广员`,
|
||
disabled: !unref(xt),
|
||
loading: unref(O),
|
||
onClick: wt,
|
||
},
|
||
null,
|
||
8,
|
||
[`disabled`, `loading`],
|
||
),
|
||
]),
|
||
(i[19] ||= createStaticVNode(
|
||
`<ol class="join-steps" aria-label="推介流程" data-v-78278278><li data-v-78278278><span class="step-number" data-v-78278278>1</span><div data-v-78278278><h4 data-v-78278278>开通推介计划</h4><p data-v-78278278>申请成为推广员,获取专属推介链接。</p></div></li><li data-v-78278278><span class="step-number" data-v-78278278>2</span><div data-v-78278278><h4 data-v-78278278>分享给好友</h4><p data-v-78278278>好友通过链接注册并购买参与活动的产品。</p></div></li><li data-v-78278278><span class="step-number" data-v-78278278>3</span><div data-v-78278278><h4 data-v-78278278>查看奖励与提现</h4><p data-v-78278278>奖励按推介规则结算,可在这里查询进度。</p></div></li></ol>`,
|
||
1,
|
||
)),
|
||
])),
|
||
],
|
||
64,
|
||
)),
|
||
createVNode(
|
||
wn,
|
||
{
|
||
modelValue: unref(yn),
|
||
"onUpdate:modelValue": (i[15] ||= (e) =>
|
||
isRef(yn) ? (yn.value = e) : null),
|
||
source: `IdcsmartRecommend`,
|
||
title: `奖励提现`,
|
||
available: unref(E)?.withdrawable_amount,
|
||
onSuccess: bn,
|
||
},
|
||
null,
|
||
8,
|
||
[`modelValue`, `available`],
|
||
),
|
||
])
|
||
);
|
||
}
|
||
);
|
||
},
|
||
}),
|
||
[[`__scopeId`, `data-v-78278278`]],
|
||
);
|
||
export {};
|
||
export default _t;
|
||
</script>
|