|
@ -141,9 +141,9 @@ const getUser = async function (jwcode) { |
|
|
console.log("用户信息", user.value); |
|
|
console.log("用户信息", user.value); |
|
|
console.log("用户信息", user.value.firstRechargeDate); |
|
|
console.log("用户信息", user.value.firstRechargeDate); |
|
|
if (result.data.code === 0) { |
|
|
if (result.data.code === 0) { |
|
|
ElMessage.error(result.data.msg); |
|
|
|
|
|
|
|
|
ElMessage.error(result.msg); |
|
|
} else { |
|
|
} else { |
|
|
ElMessage.success(result.data.msg); |
|
|
|
|
|
|
|
|
ElMessage.success(result.msg); |
|
|
} |
|
|
} |
|
|
} catch (error) { |
|
|
} catch (error) { |
|
|
console.log("请求失败", error); |
|
|
console.log("请求失败", error); |
|
@ -361,27 +361,55 @@ const handleAvatarSuccess = (response, uploadFile) => { |
|
|
//充值方式条目 |
|
|
//充值方式条目 |
|
|
const options = [ |
|
|
const options = [ |
|
|
{ |
|
|
{ |
|
|
value: "现金充值", |
|
|
|
|
|
label: "现金充值", |
|
|
|
|
|
|
|
|
value: "微信", |
|
|
|
|
|
label: "微信", |
|
|
|
|
|
}, |
|
|
|
|
|
{ |
|
|
|
|
|
value: "支付宝", |
|
|
|
|
|
label: "支付宝", |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
{ |
|
|
value: "龙鳞卡", |
|
|
|
|
|
label: "龙鳞卡", |
|
|
|
|
|
|
|
|
value: "银联", |
|
|
|
|
|
label: "银联", |
|
|
}, |
|
|
}, |
|
|
{ |
|
|
{ |
|
|
value: "弘粉卡", |
|
|
|
|
|
label: "弘粉卡", |
|
|
|
|
|
|
|
|
value: "信用卡", |
|
|
|
|
|
label: "信用卡", |
|
|
|
|
|
}, |
|
|
|
|
|
{ |
|
|
|
|
|
value: "借记卡", |
|
|
|
|
|
label: "借记卡", |
|
|
|
|
|
}, |
|
|
|
|
|
{ |
|
|
|
|
|
value: "现金充值", |
|
|
|
|
|
label: "现金充值", |
|
|
}, |
|
|
}, |
|
|
]; |
|
|
]; |
|
|
|
|
|
|
|
|
|
|
|
//根据活动id获取汇率 |
|
|
|
|
|
const getActivityById = async function (row) { |
|
|
|
|
|
try { |
|
|
|
|
|
// 发送POST请求 |
|
|
|
|
|
const result = await API.post( |
|
|
|
|
|
"http://192.168.8.93:10010/recharge/activity/select", |
|
|
|
|
|
{ activity: { activityId: row } } |
|
|
|
|
|
); |
|
|
|
|
|
addRecharge.value.rechargeRatio = result.data[0].rechargeRatio; |
|
|
|
|
|
console.log("看看有了吗", result.value); |
|
|
|
|
|
} catch (error) { |
|
|
|
|
|
console.log("请求失败", error); |
|
|
|
|
|
} |
|
|
|
|
|
}; |
|
|
|
|
|
const handleSelectionChange = (row) => { |
|
|
|
|
|
getActivityById(row); |
|
|
|
|
|
}; |
|
|
const calculatedFreeGold = computed(() => { |
|
|
const calculatedFreeGold = computed(() => { |
|
|
if (!addRecharge.value.activityId == 0) { |
|
|
if (!addRecharge.value.activityId == 0) { |
|
|
const paidGold = Number(addRecharge.value.paidGold) || 0; |
|
|
const paidGold = Number(addRecharge.value.paidGold) || 0; |
|
|
const activityId = Number(addRecharge.value.activityId) || 1; // 避免除以0 |
|
|
|
|
|
|
|
|
const activityId = Number(addRecharge.value.rechargeRatio) || 1; // 避免除以0 |
|
|
return Math.ceil(paidGold / activityId); |
|
|
return Math.ceil(paidGold / activityId); |
|
|
} |
|
|
} |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
const calculatedRechargeGold = computed(() => { |
|
|
const calculatedRechargeGold = computed(() => { |
|
|
if (!addRecharge.value.rateId == 0) { |
|
|
if (!addRecharge.value.rateId == 0) { |
|
|
const paidGold = Number(addRecharge.value.paidGold) || 0; |
|
|
const paidGold = Number(addRecharge.value.paidGold) || 0; |
|
@ -438,12 +466,13 @@ const deleteRecharge = function () { |
|
|
v-model="addRecharge.activityId" |
|
|
v-model="addRecharge.activityId" |
|
|
placeholder="请选择" |
|
|
placeholder="请选择" |
|
|
style="width: 300px" |
|
|
style="width: 300px" |
|
|
|
|
|
@change="handleSelectionChange" |
|
|
> |
|
|
> |
|
|
<el-option |
|
|
<el-option |
|
|
v-for="item in activity" |
|
|
v-for="item in activity" |
|
|
:key="item.value" |
|
|
:key="item.value" |
|
|
:label="item.activityName" |
|
|
:label="item.activityName" |
|
|
:value="item.rechargeRatio" |
|
|
|
|
|
|
|
|
:value="item.activityId" |
|
|
/> |
|
|
/> |
|
|
</el-select> |
|
|
</el-select> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
@ -501,14 +530,25 @@ const deleteRecharge = function () { |
|
|
style="margin-bottom: 5px" |
|
|
style="margin-bottom: 5px" |
|
|
> |
|
|
> |
|
|
<el-upload |
|
|
<el-upload |
|
|
|
|
|
style="width: 100px; height: 100px" |
|
|
class="avatar-uploader" |
|
|
class="avatar-uploader" |
|
|
:show-file-list="false" |
|
|
:show-file-list="false" |
|
|
action="http://192.168.8.93:10010/upload" |
|
|
action="http://192.168.8.93:10010/upload" |
|
|
:on-success="handleAvatarSuccess" |
|
|
:on-success="handleAvatarSuccess" |
|
|
:before-upload="beforeAvatarUpload" |
|
|
:before-upload="beforeAvatarUpload" |
|
|
> |
|
|
> |
|
|
<img v-if="imageUrl" :src="imageUrl" class="avatar" /> |
|
|
|
|
|
<el-icon v-else class="avatar-uploader-icon"><Plus /></el-icon> |
|
|
|
|
|
|
|
|
<img |
|
|
|
|
|
v-if="imageUrl" |
|
|
|
|
|
:src="imageUrl" |
|
|
|
|
|
class="avatar" |
|
|
|
|
|
style="width: 100px; height: 100px" |
|
|
|
|
|
/> |
|
|
|
|
|
<el-icon |
|
|
|
|
|
v-else |
|
|
|
|
|
class="avatar-uploader-icon" |
|
|
|
|
|
style="width: 100px; height: 100px" |
|
|
|
|
|
><Plus |
|
|
|
|
|
/></el-icon> |
|
|
</el-upload> |
|
|
</el-upload> |
|
|
<p style="margin-left: 10px; color: rgb(177, 176, 176)"> |
|
|
<p style="margin-left: 10px; color: rgb(177, 176, 176)"> |
|
|
仅支持.jpg .png格式,文件≤1MB |
|
|
仅支持.jpg .png格式,文件≤1MB |
|
@ -539,65 +579,71 @@ const deleteRecharge = function () { |
|
|
</el-form> |
|
|
</el-form> |
|
|
|
|
|
|
|
|
<!-- 客户信息栏 --> |
|
|
<!-- 客户信息栏 --> |
|
|
<el-card style="width: 700px; float: right" class="customer-info"> |
|
|
|
|
|
<el-form |
|
|
|
|
|
:model="user" |
|
|
|
|
|
label-width="auto" |
|
|
|
|
|
style="max-width: 600px" |
|
|
|
|
|
label-position="left" |
|
|
|
|
|
|
|
|
<el-card style="float: right" class="customer-info"> |
|
|
|
|
|
<el-form :model="user" label-width="auto" label-position="left"> |
|
|
|
|
|
<el-text size="large" style="margin-left: 20px; font-weight: bold" |
|
|
|
|
|
>客户信息</el-text |
|
|
> |
|
|
> |
|
|
<el-text size="large" style="margin-left: 20px">客户信息</el-text> |
|
|
|
|
|
<el-row style="margin-top: 20px"> |
|
|
|
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-row style="margin-top: 20px; display: flex"> |
|
|
|
|
|
<el-col :span="10"> |
|
|
<el-form-item label="姓名:"> |
|
|
<el-form-item label="姓名:"> |
|
|
<p>{{ user.name }}</p> |
|
|
<p>{{ user.name }}</p> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-col :span="14"> |
|
|
<el-form-item label="历史金币总数"> |
|
|
<el-form-item label="历史金币总数"> |
|
|
<p>{{ user.totalRechargeGold }}</p> |
|
|
<p>{{ user.totalRechargeGold }}</p> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-col :span="10"> |
|
|
<el-form-item label="精网号"> |
|
|
<el-form-item label="精网号"> |
|
|
<p>{{ user.jwcode }}</p> |
|
|
<p>{{ user.jwcode }}</p> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-col :span="14"> |
|
|
<el-form-item label="当前金币总数"> |
|
|
<el-form-item label="当前金币总数"> |
|
|
<p>{{ user.sumgold }}</p> |
|
|
|
|
|
|
|
|
<span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{ |
|
|
|
|
|
user.buyJb + user.free6 + user.free12 + user.coreJb |
|
|
|
|
|
}}</span> |
|
|
|
|
|
<span |
|
|
|
|
|
style="display: inline; white-space: nowrap; color: #b1b1b1" |
|
|
|
|
|
v-if="user.buyJb" |
|
|
|
|
|
>(充值金币:{{ user.buyJb }};免费金币:{{ |
|
|
|
|
|
user.free6 + user.free12 |
|
|
|
|
|
}};任务金币:{{ user.coreJb }})</span |
|
|
|
|
|
> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-col :span="10"> |
|
|
<el-form-item label="首次充值日期"> |
|
|
<el-form-item label="首次充值日期"> |
|
|
<p v-if="user.firstRechargeDate"> |
|
|
<p v-if="user.firstRechargeDate"> |
|
|
{{ moment(user.firstRechargeDate).format("YYYY-MM-DD HH:mm:ss") }} |
|
|
{{ moment(user.firstRechargeDate).format("YYYY-MM-DD HH:mm:ss") }} |
|
|
</p> |
|
|
</p> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-col :span="14"> |
|
|
<el-form-item label="充值次数"> |
|
|
<el-form-item label="充值次数"> |
|
|
<p>{{ user.rechargeTimes }}</p> |
|
|
|
|
|
|
|
|
<p style="color: #2fa1ff">{{ user.rechargeTimes }}</p> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-col :span="10"> |
|
|
<el-form-item label="负责客服"> |
|
|
<el-form-item label="负责客服"> |
|
|
<p>{{ adminData.name }}</p> |
|
|
<p>{{ adminData.name }}</p> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-col :span="14"> |
|
|
<el-form-item label="消费次数"> |
|
|
<el-form-item label="消费次数"> |
|
|
<p>{{ user.spendTimes }}</p> |
|
|
|
|
|
|
|
|
<p style="color: #2fa1ff">{{ user.spendTimes }}</p> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-col :span="10"> |
|
|
<el-form-item label="所属门店"> |
|
|
<el-form-item label="所属门店"> |
|
|
<p>{{ adminData.area }}</p> |
|
|
<p>{{ adminData.area }}</p> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
|
|
|
|
|
|
<el-col :span="14"> |
|
|
<el-form-item label="待审核"> |
|
|
<el-form-item label="待审核"> |
|
|
<p> |
|
|
|
|
|
|
|
|
<p style="color: #2fa1ff"> |
|
|
{{ user.A }} |
|
|
{{ user.A }} |
|
|
</p> |
|
|
</p> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|