Commit e539fa65 by wuqian

赠送订单

parent 5cb7461e
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1741660930197" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7358" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M929.220225 286.919536l-75.686209 0c18.749538 0 35.606921-37.327062 43.175542-62.097094 9.460776-30.446498 3.612296-60.376953-16.513355-87.03914-1.376113-1.892155-2.92424-3.440282-4.644381-4.816395-97.359987-83.254829-229.122795-3.096254-282.791198 36.294977-14.449185 9.976818-18.061482 29.930455-8.084663 44.379641 9.976818 14.621199 29.930455 18.40551 44.551655 8.428691 0.344028-0.172014 2.580212-1.892155 2.92424-2.064169 30.618512-22.533848 134.687049-91.339493 199.020326-40.423316 6.020494 8.944734 7.396607 17.373425 4.472367 26.834201-7.568621 24.598018-39.73526 47.475895-55.216529 52.636318-60.204939 22.533848-79.814547 24.942046-105.100622 26.662187-2.064169 0.172014-3.956325 1.204099-5.84848 1.204099l-88.415253 0c-1.376113 0-2.580212-4.128339-4.472367-6.020494-33.026709-30.790526-111.29313-103.036452-126.774399-113.529313-118.00168-80.502604-224.822442-93.059634-293.456073-34.402822-1.720141 1.548127-3.268268 3.268268-4.644381 4.988409C131.41878 164.617504 125.570301 194.375945 135.031077 224.822442c7.568621 24.770032 24.426004 62.097094 43.003528 62.097094L96.499916 286.919536c-17.717453 0-33.370737 15.137242-33.370737 32.854695L63.129179 479.919368c0 17.717453 0 31.994625 31.994625 31.994625l0 313.237695c0 55.904586 42.659499 102.348396 93.403662 102.348396l645.912985 0c51.260205 0 93.403662-47.475895 93.403662-102.348396L927.844112 511.913993c31.994625 0 31.994625-14.277171 31.994625-31.994625l0-160.145137C960.010751 302.056778 946.937678 286.919536 929.220225 286.919536zM356.585251 285.715438c-25.286074-1.892155-44.895683-4.300353-106.30472-27.350244-14.449185-4.816395-46.44381-27.522258-54.184445-52.120275-2.92424-9.460776-1.548127-17.889467 4.472367-26.834201 64.161263-50.400134 169.777927 11.352931 214.845624 42.143457 6.364522 4.472367 37.67109 33.198723 73.450025 65.193348l-126.430371 0C360.541576 286.919536 358.64942 285.887452 356.585251 285.715438zM895.849488 350.908785l0 96.155888L131.074752 447.064673c-0.860071 0-3.956325 1.204099-3.956325 1.204099L127.118428 350.908785 895.849488 350.908785zM834.44045 863.510835 188.527465 863.510835c-16.513355 0-29.414413-20.641693-29.414413-38.359147L159.113052 511.053922l704.741811 0 0 314.097766C863.854863 844.245254 850.265748 863.510835 834.44045 863.510835z" fill="#67C23A" p-id="7359"></path></svg>
\ No newline at end of file
......@@ -3,7 +3,7 @@ import axios from '../axios'
export function getManageData(
{ ym, status, companyName, user, beginDate, endDate, timeProp },
currentPage,
pageSize,
pageSize
) {
return axios.post('/sys/domain/list_page', {
ym,
......@@ -14,10 +14,12 @@ export function getManageData(
endDate,
timeProp,
currentPage,
pageSize,
pageSize
})
}
export function addGiftOrders(data) {
return axios.post('/sys/domain/addGiftOrders', data)
}
export function addManageData(data) {
return axios.post('/sys/domain/add', data)
}
......@@ -28,13 +30,18 @@ export function updateManageData(data) {
export function getDataById(id) {
return axios.get('/sys/domain/get', {
params: { id },
params: { id }
})
}
export function getLogById(datasourceId) {
return axios.get('/sys/domain/log', {
params: { datasourceId }
})
}
export function deleteData(ids) {
return axios.get('/sys/domain/delete', {
params: { ids },
params: { ids }
})
}
......
......@@ -110,11 +110,12 @@
<el-table-column
label="域名"
prop="domain"
min-width="160"
header-align="center"
:show-overflow-tooltip="true">
<template slot-scope="scope">
<a :href="'https://'+scope.row.domain" target="_blank">{{ scope.row.domain }}</a>
<a :href="'https://' + scope.row.domain" target="_blank">
{{ scope.row.domain }}
</a>
</template>
</el-table-column>
<el-table-column
......@@ -136,7 +137,7 @@
prop="headName"
header-align="center"
align="center"
width="80"
width="100"
:show-overflow-tooltip="true"></el-table-column>
<el-table-column
label="联系电话"
......@@ -160,6 +161,27 @@
width="120"
:show-overflow-tooltip="true"></el-table-column>
<el-table-column
label="订单数"
prop="expireTime"
header-align="center"
align="center"
width="160"
:show-overflow-tooltip="true">
<template slot-scope="scope">
<span v-if="scope.row.availableQuantity">
{{ scope.row.availableQuantity }}/{{ scope.row.orderCnt }}
</span>
<span v-else>--</span>
</template>
</el-table-column>
<el-table-column
label="过期时间"
prop="expireTime"
header-align="center"
align="center"
width="160"
:show-overflow-tooltip="true"></el-table-column>
<el-table-column
label="状态"
header-align="center"
align="center"
......@@ -167,7 +189,9 @@
width="150"
:show-overflow-tooltip="true">
<template slot-scope="scope">
<el-tag plain :type="findStatus(scope.row.status)">{{ scope.row.statusTxt }}</el-tag>
<el-tag plain :type="findStatus(scope.row.status)">
{{ scope.row.statusTxt }}
</el-tag>
</template>
</el-table-column>
......@@ -179,30 +203,41 @@
width="160"
:show-overflow-tooltip="true"></el-table-column>
<el-table-column
label="过期时间"
prop="expireTime"
header-align="center"
align="center"
width="160"
:show-overflow-tooltip="true"></el-table-column>
<el-table-column
label="操作"
header-align="center"
align="center"
width="90"
fixed="right">
<template slot-scope="scope">
<div style="display:flex;align-items:center;justify-content: center;font-size: 17px">
<div
style="
display: flex;
align-items: center;
justify-content: center;
font-size: 17px;
">
<i
class="el-icon-edit"
style="cursor: pointer"
title="编辑"
@click="handleEdit(scope.row)"></i>
<img
src="@/assets/images/song.svg"
style="cursor: pointer; margin: 0 6px"
alt=""
width="20"
title="赠送订单"
@click="giveOrder(scope.row)" />
<i
class="el-icon-tickets"
title="操作日志"
@click="showLog(scope.row)"
style="cursor: pointer; color: #1565c0"></i>
<i
class="el-icon-position"
v-if="scope.row.status===9"
v-if="scope.row.status === 9"
title="重新开通"
style="cursor: pointer;color:#67C23A;margin-left: 6px"
style="cursor: pointer; color: #67c23a"
@click="reOpen(scope.row)"></i>
</div>
</template>
......@@ -329,6 +364,60 @@
<el-button @click="save" type="primary" size="small">保存</el-button>
</span>
</el-dialog>
<el-dialog
title="赠送订单"
:visible.sync="giftOrderVisible"
:close-on-click-modal="false"
width="400px">
<el-form
:model="giftOrderForm"
ref="giftOrderForm"
label-width="100px"
label-position="right">
<el-form-item
label="订单数量"
prop="quantity"
:rules="[
{ required: true, message: '请输入订单数量' },
{ pattern: /^[1-9]\d*$/, message: '请输入大于0的整数' }
]">
<el-input
style="width: 200px"
v-model="giftOrderForm.quantity"
size="small"
placeholder="请输入订单数量" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input
style="width: 200px"
v-model="giftOrderForm.remark"
size="small"
type="textarea"
maxlength="100"
show-word-limit
placeholder="请输入备注" />
</el-form-item>
</el-form>
<span slot="footer">
<el-button @click="giftOrderVisible = false" size="small">
取消
</el-button>
<el-button @click="submitGiftOrder" type="primary" size="small">
确定
</el-button>
</span>
</el-dialog>
<el-dialog
title="操作日志"
:close-on-click-modal="false"
:visible.sync="noteVisible"
width="700px">
<ul style="color: #333; font-size: 12px; height: 600px; overflow: auto">
<li v-for="(item, index) in logList" :key="index" style="height: 30px">
({{ index + 1 }})、{{ item.operateName + ':' + item.msg }}
</li>
</ul>
</el-dialog>
</div>
</template>
<script>
......@@ -339,13 +428,17 @@ import {
updateManageData,
getDataById,
deleteData,
reOpenErp
reOpenErp,
addGiftOrders,
getLogById
} from '@/common/api/manage/index'
export default {
name: 'saasManage',
data() {
return {
noteVisible: false,
logList: [],
statusColor: [
{
key: 1,
......@@ -437,7 +530,13 @@ export default {
statusList: [],
cloneEditForm: {},
loading: false,
baseDomain: '.jomalls.com'
baseDomain: '.jomalls.com',
giftOrderVisible: false,
giftOrderForm: {
quantity: '',
remark: ''
},
currentRow: {}
}
},
async created() {
......@@ -446,8 +545,22 @@ export default {
await this.getStatusList()
},
methods: {
async showLog(item) {
try {
const res = await getLogById(item.id)
if (res.code !== 200) return
if (res.data.length > 0) {
this.logList = res.data
this.noteVisible = true
} else {
this.$message.warning('暂无数据')
}
} catch (e) {
console.error(e)
}
},
findStatus(status) {
const item = this.statusColor.find(el => el.key === status)
const item = this.statusColor.find((el) => el.key === status)
return item ? item.value : ''
},
async getStatusList() {
......@@ -502,7 +615,7 @@ export default {
await this.$confirm('确认重新开通?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
type: 'warning'
})
} catch {
return
......@@ -511,12 +624,48 @@ export default {
const res = await reOpenErp(row.id)
if (res.code === 200) {
this.$message.success(res.message)
await this.getList()
await this.getList()
}
} catch (e) {
console.error(e)
}
},
giveOrder(row) {
this.currentRow = row
this.giftOrderVisible = true
// 表单赋值,否则就清空
// if (row.quantity || row.remark) {
// this.giftOrderForm = {
// quantity: row.quantity || '',
// remark: row.remark || ''
// }
// } else {
this.giftOrderForm = {
quantity: '',
remark: ''
}
// }
this.$nextTick(() => {
this.$refs.giftOrderForm.clearValidate()
})
},
submitGiftOrder() {
this.$refs.giftOrderForm.validate(async (valid) => {
if (valid) {
const res = await addGiftOrders({
apiName: this.currentRow.apiName,
giftOrderQuantity: Number(this.giftOrderForm.quantity),
remark: this.giftOrderForm.remark
})
if (res.code === 200) {
this.$message.success(res.message)
this.getList()
this.giftOrderVisible = false
}
}
})
},
async handleEdit(row) {
this.editId = row.id
const l = this.$loading({
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment