Commit 3b6abece authored by 张俊's avatar 张俊

Merge branch 'dev' of https://cloud.wodcloud.com/git/apaas/apaas-v3-ui into dev

parents 49b2f150 5e701a5b
...@@ -661,8 +661,8 @@ border-radius:8px; ...@@ -661,8 +661,8 @@ border-radius:8px;
.apaas_button .el-button--danger { .apaas_button .el-button--danger {
color: #fff; color: #fff;
background-color: #e15260; background-color: #ad3a4a;
border-color: #e15260; border-color: #ad3a4a;
} }
.apaas_button .el-button.is-disabled, .apaas_button .el-button.is-disabled,
...@@ -1195,3 +1195,6 @@ border-radius:8px; ...@@ -1195,3 +1195,6 @@ border-radius:8px;
.el-checkbox__input:hover .el-checkbox__inner { .el-checkbox__input:hover .el-checkbox__inner {
border-color: #515fe7; border-color: #515fe7;
} }
.el-date-editor .el-range-input {
width: 36%;
}
\ No newline at end of file
...@@ -80,9 +80,12 @@ ...@@ -80,9 +80,12 @@
</div> </div>
<div class="list-container" v-else> <div class="list-container" v-else>
<list-table <list-table
ref="listTable"
:header="listHeader" :header="listHeader"
:data="listData" :data="listData"
:padding-left="listPaddingLeft" :padding-left="listPaddingLeft"
:select="listSelect"
@select="selectAction"
></list-table> ></list-table>
</div> </div>
...@@ -146,6 +149,10 @@ export default { ...@@ -146,6 +149,10 @@ export default {
type: String, type: String,
default: () => "请输入关键字", default: () => "请输入关键字",
}, },
listSelect: {
type: Boolean,
default: false,
},
}, },
data: () => ({ data: () => ({
showListFilter: false, showListFilter: false,
...@@ -223,6 +230,15 @@ export default { ...@@ -223,6 +230,15 @@ export default {
}); });
}, 200); }, 200);
}, },
selectAction(selectedItems) {
this.$emit("list-select", selectedItems);
},
clearSelection() {
this.$refs.listTable.clearSelection();
},
setSelectedRow(row, flag) {
this.$refs.listTable.setSelectedRow(row, flag);
},
}, },
mounted() { mounted() {
this.initOtherFilter(); this.initOtherFilter();
......
<template> <template>
<div class="apass_table"> <div class="apass_table">
<el-table <el-table
ref="apassTable"
:data="data" :data="data"
@sort-change="sortChange" @sort-change="sortChange"
@row-click="rowClick" @row-click="rowClick"
@selection-change="selectAction"
:row-class-name="rowClassName" :row-class-name="rowClassName"
> >
<el-table-column <el-table-column
v-if="paddingLeft > 10" v-if="paddingLeft > 10"
:width="paddingLeft - 10" :width="paddingLeft - 10"
></el-table-column> ></el-table-column>
<el-table-column type="selection" width="80" align="center" v-if="select">
<!-- checkbox -->
</el-table-column>
<el-table-column <el-table-column
v-for="(item, index) in header" v-for="(item, index) in header"
:label="item.label" :label="item.label"
...@@ -303,6 +308,10 @@ export default { ...@@ -303,6 +308,10 @@ export default {
type: Function, type: Function,
default: null, default: null,
}, },
select: {
type: Boolean,
default: false,
},
}, },
data() { data() {
return { return {
...@@ -395,6 +404,15 @@ export default { ...@@ -395,6 +404,15 @@ export default {
leaveMoreActionList() { leaveMoreActionList() {
this.showMoreActionList = false; this.showMoreActionList = false;
}, },
selectAction(selectedItems) {
this.$emit("select", selectedItems);
},
clearSelection() {
this.$refs.apassTable.clearSelection();
},
setSelectedRow(row, flag) {
this.$refs.apassTable.toggleRowSelection(row, flag);
},
}, },
}; };
</script> </script>
......
<template>
<el-upload
drag
action="/apaas/static/file/upload"
:data="{
directory: 'sdk',
uniqueCode: false,
}"
:file-list="fileList"
:before-upload="beforeUpload"
:on-success="uploadSuccess"
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">
<p>将文件拖到此处,或<em>点击上传</em></p>
<p class="upload_tip" v-if="tip" v-text="tip"></p>
</div>
</el-upload>
</template>
<script>
export default {
model: {
prop: "url",
event: "change",
},
props: {
url: {
type: String,
default: "",
},
tip: {
type: String,
default: "",
},
},
computed: {
fileList() {
let list = [];
if (this.url) {
let path = this.url.split("/");
list = [
{
name: path[path.length - 1],
url: this.url,
},
];
}
return list;
},
},
methods: {
getFileType(fileName) {
let startIndex = fileName.lastIndexOf(".");
if (startIndex != -1) {
return fileName
.substring(startIndex + 1, fileName.length)
.toLowerCase();
} else {
return "";
}
},
beforeUpload(file) {
const filtType = this.getFileType(file.name);
if (filtType === "rar" || filtType === "zip") {
return true;
} else {
this.$message.error("仅支持rar和zip格式!");
return false;
}
},
uploadSuccess({ data }) {
this.$emit("change", data);
},
},
};
</script>
<style scoped>
.upload_tip {
font-size: 12px;
line-height: 20px;
color: #a9aec0;
}
</style>
<template> <template>
<div class="order_cell"> <div class="order_cell">
<div class="order_cell_head"> <div class="order_cell_head">
<div class="application_time">申请时间:{{ helper.dateStringTransform(cellItem.add_time) }}</div> <div class="application_time">
申请时间:{{ helper.dateStringTransform(cellItem.add_time) }}
</div>
<div class="order_number">订单编号:{{ cellItem.order_id }}</div> <div class="order_number">订单编号:{{ cellItem.order_id }}</div>
<div <div
v-if="cellItem.approval_first_level == -1 || cellItem.approval_second_level != 0 || cellItem.pay_status == -1" v-if="
cellItem.approval_first_level == -1 ||
cellItem.approval_second_level != 0 ||
cellItem.pay_status == -1
"
class="cell_del_btn" class="cell_del_btn"
@click="delOrder(cellItem.order_id)" @click="delOrder(cellItem.order_id)"
>删除</div> >
删除
</div>
</div> </div>
<el-row class="cell_row"> <el-row class="cell_row">
<el-col :span="8" class="cell_msg"> <el-col :span="7" class="cell_msg">
<img v-if="cellItem.order_type != 3" :src="cellItem.cover" class="cell_msg_img" /> <img
<img v-else :src="require('@/assets/imgs/img_yunziyuan.png')" class="cell_msg_img" /> v-if="cellItem.order_type != 3"
:src="cellItem.cover"
class="cell_msg_img"
/>
<img
v-else
:src="require('@/assets/imgs/img_yunziyuan.png')"
class="cell_msg_img"
/>
<div class="cell_msg_right"> <div class="cell_msg_right">
<div v-if="cellItem.order_type != 3" class="cell_name"> <div v-if="cellItem.order_type != 3" class="cell_name">
<span>{{ cellItem.name }}</span> <span>{{ cellItem.name }}</span>
<span v-if="cellItem.mapService" class="tags map_service">mapService</span> <span v-if="cellItem.mapService" class="tags map_service"
>mapService</span
>
<span v-if="cellItem.openness == 1" class="tags shared">共享</span> <span v-if="cellItem.openness == 1" class="tags shared">共享</span>
<span v-else-if="cellItem.openness == 2" class="tags restricted">受限</span> <span v-else-if="cellItem.openness == 2" class="tags restricted"
<span v-else-if="cellItem.openness == 3" class="tags sensitive">敏感</span> >受限</span
>
<span v-else-if="cellItem.openness == 3" class="tags sensitive"
>敏感</span
>
</div> </div>
<div v-else class="cell_name"> <div v-else class="cell_name">
<span>云资源申请</span> <span>云资源申请</span>
</div> </div>
<div class="cell_msg_other"> <div class="cell_msg_other">
<div <div class="cell_type">
class="cell_type" {{
>{{ cellItem.order_type == 1 ? cellItem.sector : cellItem.order_type == 2 ? cellItem.app_type : cellItem.namespace }}</div> cellItem.order_type == 1
<div ? cellItem.sector
v-if="cellItem.order_type != 3" : cellItem.order_type == 2
class="cell_creator" ? cellItem.app_type
>{{ cellItem.src_organization }}</div> : cellItem.namespace
<div }}
v-else </div>
class="cell_creator" <div v-if="cellItem.order_type != 3" class="cell_creator">
>{{ cellItem.apply_type == 0 ? "申请新的工作区域" : "升级现有工作区域" }}</div> {{ cellItem.src_organization }}
</div>
<div v-else class="cell_creator">
{{
cellItem.apply_type == 0
? "申请新的工作区域"
: "升级现有工作区域"
}}
</div>
</div> </div>
</div> </div>
</el-col> </el-col>
<el-col :span="5" class="cell_specification"> <el-col :span="5" class="cell_specification">
<div v-if="cellItem.order_type == 1"> <div v-if="cellItem.order_type == 1">
<el-tooltip class="item" effect="dark" placement="right"> <div>计次收费:200金币/1000次.时长收费:2000金币/月</div>
<div slot="content" class="gg">
规格:
<br />
日访问次数:{{cellItem.spec_svc_count}}次,日访问量:{{cellItem.spec_svc_pv }}
</div>
<div>规格:日访问次数:{{ cellItem.spec_svc_count }}次,日访问量:{{ cellItem.spec_svc_pv }}</div>
</el-tooltip>
<div
class="cell_specification_type"
>申请方式:{{ cellItem.duration_unit == 1 ? $t('lang.by_month') : $t('lang.by_year') }}</div>
</div> </div>
<div v-else-if="cellItem.order_type == 2"> <div v-else-if="cellItem.order_type == 2">
<el-tooltip class="item" effect="dark" placement="right"> <div>
<div slot="content" class="gg"> {{
规格: cellItem.spec_app == 0
<br /> ? "申请获取应用镜像部署权限:2000金币/月"
{{ cellItem.spec_app == 0 ? '申请获取应用镜像部署权限' : '申请获取应用镜像开发权限' }} : "申请获取应用镜像开发权限:2000金币/月"
}}
</div> </div>
<div>规格:{{ cellItem.spec_app == 0 ? "申请获取应用镜像部署权限" : "申请获取应用镜像开发权限" }}</div>
</el-tooltip>
</div> </div>
<div v-else-if="cellItem.order_type == 3"> <div v-else-if="cellItem.order_type == 3">
<el-tooltip v-if="cellItem.apply_type == 0" class="item" effect="dark" placement="right"> <el-tooltip
v-if="cellItem.apply_type == 0"
class="item"
effect="dark"
placement="right"
>
<div slot="content" class="gg"> <div slot="content" class="gg">
规格: CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组
{{ cellItem.containers }}个;
<br /> <br />
CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个; 数据盘 {{ cellItem.disk_num }}块,每块数据盘容量
<br /> {{ cellItem.disk_cap }}GB;
数据盘 {{ cellItem.disk_num }}块,每块数据盘容量 {{ cellItem.disk_cap }}GB;
</div> </div>
<div class="specification_item"> <div class="specification_item">
规格:CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个; CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组
<span {{ cellItem.containers }}个;
v-if="cellItem.disk_num != 0" <span v-if="cellItem.disk_num != 0"
>数据盘 {{ cellItem.disk_num }}块,每块数据盘容量 {{ cellItem.disk_cap }}GB;</span> >数据盘 {{ cellItem.disk_num }}块,每块数据盘容量
{{ cellItem.disk_cap }}GB;</span
>
</div> </div>
</el-tooltip> </el-tooltip>
<el-tooltip v-else class="item" effect="dark" placement="right"> <el-tooltip v-else class="item" effect="dark" placement="right">
<div slot="content" class="gg"> <div slot="content" class="gg">
规格: CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组
<br /> {{ cellItem.containers }}个;
CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个;
<span <span
class="gg_span" class="gg_span"
v-for="(item, index) in cellItem.adjust_disk" v-for="(item, index) in cellItem.adjust_disk"
:key="'sjj' + index" :key="'sjj' + index"
>数据盘 {{item.disk_num}}块,每块数据盘容量 {{item.disk_cap}}GB;</span> >数据盘 {{ item.disk_num }}块,每块数据盘容量
{{ item.disk_cap }}GB;</span
>
</div> </div>
<div class="specification_item"> <div class="specification_item">
规格:CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个; CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组
{{ cellItem.containers }}个;
<span>{{ thisDisks }}</span> <span>{{ thisDisks }}</span>
</div> </div>
</el-tooltip> </el-tooltip>
<div <div class="cell_specification_type">
class="cell_specification_type" 单个容器组:CPU最高 {{ cellItem.one_cpu_max }}核,默认
>单个容器组:CPU最高 {{ cellItem.one_cpu_max }}核,默认 {{ cellItem.one_cpu_min }}核;内存最高 {{ cellItem.one_memory_max }}GB,默认 {{ cellItem.one_memory_min }}GB;</div> {{ cellItem.one_cpu_min }}核;内存最高
{{ cellItem.one_memory_max }}GB,默认
{{ cellItem.one_memory_min }}GB;
</div>
</div> </div>
</el-col> </el-col>
<el-col :span="3" class="cell_specification"> <el-col :span="3" class="cell_specification">
<div v-if="cellItem.order_type == 1"> <div>
<el-tooltip class="item" effect="dark" placement="right"> 不限时长
<div slot="content" class="gg">
规格:
<br />
日访问次数:{{cellItem.spec_svc_count}}次,日访问量:{{cellItem.spec_svc_pv }}
</div>
<div>规格:日访问次数:{{ cellItem.spec_svc_count }}次,日访问量:{{ cellItem.spec_svc_pv }}</div>
</el-tooltip>
<div
class="cell_specification_type"
>申请方式:{{ cellItem.duration_unit == 1 ? $t('lang.by_month') : $t('lang.by_year') }}</div>
</div>
<div v-else-if="cellItem.order_type == 2">
<el-tooltip class="item" effect="dark" placement="right">
<div slot="content" class="gg">
规格:
<br />
{{ cellItem.spec_app == 0 ? '申请获取应用镜像部署权限' : '申请获取应用镜像开发权限' }}
</div>
<div>规格:{{ cellItem.spec_app == 0 ? "申请获取应用镜像部署权限" : "申请获取应用镜像开发权限" }}</div>
</el-tooltip>
</div>
<div v-else-if="cellItem.order_type == 3">
<el-tooltip v-if="cellItem.apply_type == 0" class="item" effect="dark" placement="right">
<div slot="content" class="gg">
规格:
<br />
CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个;
<br />
数据盘 {{ cellItem.disk_num }}块,每块数据盘容量 {{ cellItem.disk_cap }}GB;
</div>
<div class="specification_item">
规格:CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个;
<span
v-if="cellItem.disk_num != 0"
>数据盘 {{ cellItem.disk_num }}块,每块数据盘容量 {{ cellItem.disk_cap }}GB;</span>
</div>
</el-tooltip>
<el-tooltip v-else class="item" effect="dark" placement="right">
<div slot="content" class="gg">
规格:
<br />
CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个;
<span
class="gg_span"
v-for="(item, index) in cellItem.adjust_disk"
:key="'sjj' + index"
>数据盘 {{item.disk_num}}块,每块数据盘容量 {{item.disk_cap}}GB;</span>
</div>
<div class="specification_item">
规格:CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个;
<span>{{ thisDisks }}</span>
</div>
</el-tooltip>
<div
class="cell_specification_type"
>单个容器组:CPU最高 {{ cellItem.one_cpu_max }}核,默认 {{ cellItem.one_cpu_min }}核;内存最高 {{ cellItem.one_memory_max }}GB,默认 {{ cellItem.one_memory_min }}GB;</div>
</div> </div>
</el-col> </el-col>
<el-col :span="3" class="cell_specification"> <el-col :span="3" class="cell_specification">
<div v-if="cellItem.order_type == 1"> <div>
<el-tooltip class="item" effect="dark" placement="right"> 200金币
<div slot="content" class="gg">
规格:
<br />
日访问次数:{{cellItem.spec_svc_count}}次,日访问量:{{cellItem.spec_svc_pv }}
</div> </div>
<div>规格:日访问次数:{{ cellItem.spec_svc_count }}次,日访问量:{{ cellItem.spec_svc_pv }}</div> </el-col>
</el-tooltip> <el-col :span="3" class="approval_status">
<div>
<div <div
class="cell_specification_type" v-if="
>申请方式:{{ cellItem.duration_unit == 1 ? $t('lang.by_month') : $t('lang.by_year') }}</div> cellItem.approval_first_level == 0 && cellItem.pay_status != -1
</div> "
<div v-else-if="cellItem.order_type == 2"> >
<el-tooltip class="item" effect="dark" placement="right"> 待审核
<div slot="content" class="gg">
规格:
<br />
{{ cellItem.spec_app == 0 ? '申请获取应用镜像部署权限' : '申请获取应用镜像开发权限' }}
</div>
<div>规格:{{ cellItem.spec_app == 0 ? "申请获取应用镜像部署权限" : "申请获取应用镜像开发权限" }}</div>
</el-tooltip>
</div>
<div v-else-if="cellItem.order_type == 3">
<el-tooltip v-if="cellItem.apply_type == 0" class="item" effect="dark" placement="right">
<div slot="content" class="gg">
规格:
<br />
CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个;
<br />
数据盘 {{ cellItem.disk_num }}块,每块数据盘容量 {{ cellItem.disk_cap }}GB;
</div>
<div class="specification_item">
规格:CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个;
<span
v-if="cellItem.disk_num != 0"
>数据盘 {{ cellItem.disk_num }}块,每块数据盘容量 {{ cellItem.disk_cap }}GB;</span>
</div>
</el-tooltip>
<el-tooltip v-else class="item" effect="dark" placement="right">
<div slot="content" class="gg">
规格:
<br />
CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个;
<span
class="gg_span"
v-for="(item, index) in cellItem.adjust_disk"
:key="'sjj' + index"
>数据盘 {{item.disk_num}}块,每块数据盘容量 {{item.disk_cap}}GB;</span>
</div>
<div class="specification_item">
规格:CPU {{ cellItem.cpu }}核,内存 {{ cellItem.memory }}GB,容器组 {{ cellItem.containers }}个;
<span>{{ thisDisks }}</span>
</div> </div>
</el-tooltip>
<div <div
class="cell_specification_type" v-else-if="
>单个容器组:CPU最高 {{ cellItem.one_cpu_max }}核,默认 {{ cellItem.one_cpu_min }}核;内存最高 {{ cellItem.one_memory_max }}GB,默认 {{ cellItem.one_memory_min }}GB;</div> cellItem.approval_first_level == 1 &&
cellItem.approval_second_level == 0 &&
cellItem.pay_status != -1
"
>
审核中
</div> </div>
</el-col>
<el-col :span="2" class="approval_status">
<div>
<div v-if="cellItem.approval_first_level == 0 && cellItem.pay_status != -1">待审核</div>
<div
v-else-if="cellItem.approval_first_level == 1 && cellItem.approval_second_level == 0 && cellItem.pay_status != -1"
>审核中</div>
<div <div
v-else-if="cellItem.approval_first_level == 1 && cellItem.approval_second_level == 1 && cellItem.pay_status != -1" v-else-if="
>审核通过</div> cellItem.approval_first_level == 1 &&
cellItem.approval_second_level == 1 &&
cellItem.pay_status != -1
"
>
审核通过
</div>
<div <div
v-else-if="(cellItem.approval_first_level == -1 || cellItem.approval_second_level == -1) && cellItem.pay_status != -1" v-else-if="
>审核未通过</div> (cellItem.approval_first_level == -1 ||
cellItem.approval_second_level == -1) &&
cellItem.pay_status != -1
"
>
审核未通过
</div>
<div v-else-if="cellItem.pay_status == -1">订单已取消</div> <div v-else-if="cellItem.pay_status == -1">订单已取消</div>
<el-popover <el-popover
v-if="cellItem.approval_second_level == 1 && cellItem.pay_status != -1 && cellItem.is_estimated == 0" v-if="
placement="right-start" cellItem.approval_second_level == 1 &&
cellItem.pay_status != -1 &&
cellItem.is_estimated == 0
"
placement="left-start"
width="300" width="300"
v-model="visible" v-model="visible"
trigger="click" trigger="click"
> >
<p>服务评价:</p> <p>服务评价:</p>
<div class="pop_rate"> <div class="pop_rate">
<el-rate v-model="serviceRate" :colors="colors" show-score score-template="{value}"></el-rate> <el-rate
v-model="serviceRate"
:colors="colors"
show-score
score-template="{value}"
></el-rate>
</div> </div>
<p>填写评价:</p> <p>填写评价:</p>
<div class="evaluation_text"> <div class="evaluation_text">
...@@ -258,21 +210,49 @@ ...@@ -258,21 +210,49 @@
></el-input> ></el-input>
</div> </div>
<div class="pop_btn_group"> <div class="pop_btn_group">
<el-button size="small" class="pop_cancel" type="text" @click="visible = false">取消</el-button> <el-button
<el-button type="primary" class="pop_submit" size="small" @click="addEvaluation">确定提交</el-button> size="small"
class="pop_cancel"
type="text"
@click="visible = false"
>取消</el-button
>
<el-button
type="primary"
class="pop_submit"
size="small"
@click="addEvaluation"
>确定提交</el-button
>
</div> </div>
<div class="approval_status_btn" slot="reference">服务评价</div> <div class="approval_status_btn" slot="reference">服务评价</div>
</el-popover> </el-popover>
<div <div
v-else-if="cellItem.order_type != 3 && cellItem.approval_second_level == 1 && cellItem.pay_status != -1 && cellItem.is_estimated == 1 && !showMsgBox" v-else-if="
cellItem.order_type != 3 &&
cellItem.approval_second_level == 1 &&
cellItem.pay_status != -1 &&
cellItem.is_estimated == 1 &&
!showMsgBox
"
class="approval_status_btn" class="approval_status_btn"
@click="getMessage" @click="getMessage"
>查看评价</div> >
查看评价
</div>
<div <div
v-else-if="cellItem.order_type != 3 && cellItem.approval_second_level == 1 && cellItem.pay_status != -1 && cellItem.is_estimated == 1 && showMsgBox" v-else-if="
cellItem.order_type != 3 &&
cellItem.approval_second_level == 1 &&
cellItem.pay_status != -1 &&
cellItem.is_estimated == 1 &&
showMsgBox
"
class="approval_status_btn" class="approval_status_btn"
@click="showMsgBox = false" @click="showMsgBox = false"
>收起评价</div> >
收起评价
</div>
</div> </div>
</el-col> </el-col>
<el-col :span="3" class="cell_option"> <el-col :span="3" class="cell_option">
...@@ -281,24 +261,43 @@ ...@@ -281,24 +261,43 @@
size="madium" size="madium"
class="cell_option_btn" class="cell_option_btn"
@click="viewDetail(cellItem.order_id)" @click="viewDetail(cellItem.order_id)"
>查看详情</el-button> >查看详情</el-button
>
<div <div
v-if="cellItem.approval_second_level == 1 && cellItem.pay_status != -1 || cellItem.pay_status == -1" v-if="
(cellItem.approval_second_level == 1 &&
cellItem.pay_status != -1) ||
cellItem.pay_status == -1
"
class="cell_option_spec" class="cell_option_spec"
@click="nextApply" @click="nextApply"
>再次申请</div> >
再次申请
</div>
<div <div
v-if="(cellItem.approval_first_level == 0 && cellItem.pay_status != -1) || (cellItem.approval_first_level == 1 && cellItem.approval_second_level == 0 && cellItem.pay_status != -1)" v-if="
(cellItem.approval_first_level == 0 &&
cellItem.pay_status != -1) ||
(cellItem.approval_first_level == 1 &&
cellItem.approval_second_level == 0 &&
cellItem.pay_status != -1)
"
class="cell_option_spec" class="cell_option_spec"
@click="cancelDetail" @click="cancelDetail"
>取消申请</div> >
取消申请
</div>
</div> </div>
</el-col> </el-col>
<el-collapse-transition> <el-collapse-transition>
<el-col v-if="showMsgBox" :span="24" class="evaluation_msg"> <el-col v-if="showMsgBox" :span="24" class="evaluation_msg">
<div class="msg_title">服务评分:</div> <div class="msg_title">服务评分:</div>
<div class="msg_rate"> <div class="msg_rate">
<el-rate v-model="message.score" disabled :colors="colors"></el-rate> <el-rate
v-model="message.score"
disabled
:colors="colors"
></el-rate>
</div> </div>
<div class="msg_title">评价详情:</div> <div class="msg_title">评价详情:</div>
<div class="msg_text">{{ message.content }}</div> <div class="msg_text">{{ message.content }}</div>
......
...@@ -2,11 +2,11 @@ ...@@ -2,11 +2,11 @@
<div class="order_list"> <div class="order_list">
<div class="order_th_pad"> <div class="order_th_pad">
<el-row class="order_th"> <el-row class="order_th">
<el-col :span="8">服务信息</el-col> <el-col :span="7">服务信息</el-col>
<el-col :span="5">规格</el-col> <el-col :span="5">规格</el-col>
<el-col :span="3">购买时长</el-col> <el-col :span="3">购买时长</el-col>
<el-col :span="3">总价</el-col> <el-col :span="3">总价</el-col>
<el-col :span="2">申请状态</el-col> <el-col :span="3">申请状态</el-col>
<el-col :span="3">操作</el-col> <el-col :span="3">操作</el-col>
</el-row> </el-row>
</div> </div>
......
...@@ -66,7 +66,7 @@ ...@@ -66,7 +66,7 @@
<el-col :span="6"> <el-col :span="6">
<el-form-item prop="cpu" class="form_item input_has_right"> <el-form-item prop="cpu" class="form_item input_has_right">
<div class="form_item_title">CPU:</div> <div class="form_item_title">CPU:</div>
<el-select v-model="formNew.cpu" placeholder="请选择CPU使用量"> <el-select v-model="formNew.cpu" @change="changeCPU" placeholder="请选择CPU使用量">
<el-option <el-option
v-for="item in optionsCPU" v-for="item in optionsCPU"
:key="item.value" :key="item.value"
...@@ -1101,7 +1101,6 @@ export default { ...@@ -1101,7 +1101,6 @@ export default {
}, },
tabClick() {}, tabClick() {},
getNewList(val) { getNewList(val) {
console.log(val);
this.formNew.apply_file_name = val[0].name; this.formNew.apply_file_name = val[0].name;
this.formNew.apply_file = val[0].url; this.formNew.apply_file = val[0].url;
}, },
...@@ -1111,7 +1110,6 @@ export default { ...@@ -1111,7 +1110,6 @@ export default {
}, },
handleChange() {}, handleChange() {},
getForm(val) { getForm(val) {
console.log(val);
if (val !== "") { if (val !== "") {
let paramsOld = this.workSpaceOptions[val]; let paramsOld = this.workSpaceOptions[val];
this.workSpaceId = paramsOld.Id; this.workSpaceId = paramsOld.Id;
...@@ -1328,6 +1326,22 @@ export default { ...@@ -1328,6 +1326,22 @@ export default {
} }
} }
}, },
changeCPU(val) {
console.log(val);
this.formOld.memory = "";
this.formNew.memory = "";
if (val == "8") {
this.optionsRAM = [
{ value: "16", label: "16" },
{ value: "32", label: "32" },
]
} else if (val == "16") {
this.optionsRAM = [
{ value: "32", label: "32" },
{ value: "64", label: "64" },
]
}
}
}, },
}; };
</script> </script>
......
<template> <template>
<div class="doc_manage_container"> <div class="list_container">
<apass-list <apass-list
ref="list" ref="list"
search-placeholder="请输入关键字" search-placeholder="请输入关键字"
...@@ -8,7 +8,9 @@ ...@@ -8,7 +8,9 @@
:list-total="listTotal" :list-total="listTotal"
:list-header="listHeader" :list-header="listHeader"
:list-data="listData" :list-data="listData"
:list-select="true"
@list-action="init" @list-action="init"
@list-select="selectAction"
> >
<el-breadcrumb separator="/" slot="breadcrumb"> <el-breadcrumb separator="/" slot="breadcrumb">
<el-breadcrumb-item to="/technical_support"> <el-breadcrumb-item to="/technical_support">
...@@ -32,8 +34,8 @@ ...@@ -32,8 +34,8 @@
<el-option <el-option
v-for="(item, index) in types" v-for="(item, index) in types"
:key="'top_type_' + index" :key="'top_type_' + index"
:label="item.label" :label="item.style_name"
:value="item.value" :value="item.id"
> >
</el-option> </el-option>
</el-select> </el-select>
...@@ -63,20 +65,71 @@ ...@@ -63,20 +65,71 @@
</template> </template>
<div class="main_top_action apaas_button" slot="main-top"> <div class="main_top_action apaas_button" slot="main-top">
<el-button class="delete_btn" type="danger" @click="deleteSlectedItem"> <el-button class="delete_btn" type="danger" @click="deleteSlection">
批量删除 批量删除
</el-button> </el-button>
<span class="selected_text"> <span class="selected_text">
已选择 已选择
<span>3</span> <span>{{ selection.length }}</span>
</span> </span>
<a class="clean_btn" @click.prevent="cleanSlectedItem">清空</a> <a class="clean_btn" @click.prevent="clearSelection">清空</a>
<el-button class="add_btn" type="primary" @click="addNewSdk"> <el-button class="add_btn" type="primary" @click="addNewSdk">
新增SDK类型 新增SDK类型
</el-button> </el-button>
</div> </div>
</apass-list> </apass-list>
<apass-dialog
ref="detailDialog"
:title="detailForm.type === 0 ? '新增' : '修改'"
>
<div class="add_content" slot="content">
<el-form ref="addForm" :model="detailForm" :rules="detailFormRules">
<el-form-item
label="SDK类型"
prop="style_name"
class="inline_form_item"
>
<el-input
v-model="detailForm.style_name"
placeholder="请填写SDK类型名称,如Java SDK"
></el-input>
</el-form-item>
<el-form-item label="版本号" prop="version" class="inline_form_item">
<el-input
v-model="detailForm.version"
placeholder="版本号"
></el-input>
</el-form-item>
<el-form-item label="SDK包上传" prop="file_url">
<!-- <el-input
v-model="detailForm.file_url"
placeholder="支持扩展名:.rar .zip"
></el-input> -->
<apass-upload
v-model="detailForm.file_url"
tip="支持扩展名:.rar .zip"
></apass-upload>
</el-form-item>
</el-form>
</div>
<template slot="action">
<el-button type="defalut" size="mini" @click="detailCancelAction">
取消
</el-button>
<el-button type="primary" size="mini" @click="detailSubmitAction">
确定
</el-button>
</template>
</apass-dialog>
<apass-dialog
ref="deleteDialog"
:msg="deleteDialogInfo.msg"
:submit="deleteDialogInfo.submit"
></apass-dialog>
</div> </div>
</template> </template>
...@@ -84,19 +137,66 @@ ...@@ -84,19 +137,66 @@
import helper from "@/services/helper.js"; import helper from "@/services/helper.js";
import apassList from "@/components/apass-list"; import apassList from "@/components/apass-list";
import apassDialog from "@/components/apass-dialog"; import apassDialog from "@/components/apass-dialog";
import apassUpload from "@/components/apass-upload";
import showMoreFilter from "@/components/show-more-filter"; import showMoreFilter from "@/components/show-more-filter";
export default { export default {
components: { components: {
apassList, apassList,
apassDialog, apassDialog,
apassUpload,
showMoreFilter, showMoreFilter,
}, },
data() { data() {
return { return {
paddingLeft: 25, paddingLeft: 0,
listTotal: 0, listTotal: 0,
listHeader: [{}], listHeader: [
{
label: "SDK类型",
prop: "style_name",
type: "button",
width: 240,
},
{
label: "版本号",
prop: "version",
align: "center",
},
{
label: "是否提供SDK包下载",
prop: "is_sdk",
align: "center",
},
{
label: "操作人",
prop: "user_name",
align: "center",
},
{
label: "最后更新时间",
prop: "updated",
getText: ({ updated }) => this.getTimeText(updated || ""),
align: "center",
},
{
label: "操作",
type: "buttons",
align: "center",
width: 240,
actionList: [
{
label: "修改",
callback: this.editItem,
},
{
label: "删除",
callback: this.deleteItem,
class: "warn",
},
],
},
],
listData: [], listData: [],
topFilter: { topFilter: {
type: "", type: "",
...@@ -104,6 +204,24 @@ export default { ...@@ -104,6 +204,24 @@ export default {
}, },
types: [], types: [],
tempFilter: {}, tempFilter: {},
detailForm: {
type: 0, // 0:新增 1:修改
style_name: "",
version: "",
file_url: "",
},
detailFormRules: {
style_name: [
{ required: true, message: "请填写SDK类型名称", trigger: "blur" },
{ max: 20, message: "长度应小于20个字符", trigger: "change" },
],
},
deleteDialogInfo: {
msg: "",
submit: null,
},
saveSection: false,
selection: [],
}; };
}, },
methods: { methods: {
...@@ -114,12 +232,44 @@ export default { ...@@ -114,12 +232,44 @@ export default {
}; };
this.tempFilter = filter; this.tempFilter = filter;
this.saveSection = true;
console.log(fullFilter); this.$http
.get("/apaas/support/sdk/styles/list", {
params: {
style: fullFilter.type,
start: fullFilter.time && fullFilter.time[0],
end: fullFilter.time && fullFilter.time[1],
limit: fullFilter.size,
page: fullFilter.page,
},
})
.then(({ data }) => {
if (data.success === 1) {
this.listTotal = data.total;
this.listData = data.data || [];
this.$nextTick(() => {
this.selection.forEach((item) => {
let target = this.listData.find((v) => v.id === item.id);
if (target) {
this.setCurrentRow(target, true);
}
});
this.saveSection = false;
});
}
});
this.$http.get("/apaas/support/sdk/styleNames/list").then(({ data }) => {
if (data.success === 1) {
this.types = data.data || [];
}
});
}, },
topFilterClear() { topFilterClear() {
this.topFilter = { this.topFilter = {
name: "",
type: "", type: "",
time: "", time: "",
}; };
...@@ -131,38 +281,191 @@ export default { ...@@ -131,38 +281,191 @@ export default {
refreshPage() { refreshPage() {
this.$refs.list.resetCurrentPage(); this.$refs.list.resetCurrentPage();
}, },
deleteSlectedItem() { deleteSlection() {
console.log("deleteSlectedItem"); this.deleteDialogInfo.msg = `确认删除要删除所选项吗?`;
this.deleteDialogInfo.submit = () => {
this.deleteRequest(this.selection.map((row) => row.id));
};
this.$refs.deleteDialog.show();
},
clearSelection() {
this.$refs.list.clearSelection();
}, },
cleanSlectedItem() { setCurrentRow(row, flag) {
console.log("cleanSlectedItem"); this.$refs.list.setSelectedRow(row, flag);
}, },
addNewSdk() { addNewSdk() {
console.log("addNewSdk"); this.detailForm = {
type: 0,
style_name: "",
version: "",
file_url: "",
};
this.$refs.detailDialog.show();
},
detailCancelAction() {
this.$refs.detailDialog.hide();
},
detailSubmitAction() {
if (this.detailForm.type === 0) {
this.$http
.post("/apaas/support/sdk/styles/create", {
style_name: this.detailForm.style_name,
version: this.detailForm.version,
file_url: this.detailForm.file_url,
})
.then(({ data }) => {
if (data.success === 1) {
this.$message.success("新增成功");
this.refreshPage();
this.$refs.detailDialog.hide();
} else {
this.$message.error("新增失败");
}
})
.catch((error) => {
console.log(error);
this.$message.error("新增失败");
});
} else {
this.$http
.put("/apaas/support/sdk/styles/put", {
id: this.detailForm.id,
style_name: this.detailForm.style_name,
version: this.detailForm.version,
file_url: this.detailForm.file_url,
})
.then(({ data }) => {
if (data.success === 1) {
this.$message.success("修改成功");
this.refreshPage();
this.$refs.detailDialog.hide();
} else {
this.$message.error("修改失败");
}
})
.catch((error) => {
console.log(error);
this.$message.error("修改失败");
});
}
},
editItem(item) {
this.detailForm = {
type: 1,
id: item.id,
style_name: item.style_name,
version: item.version,
file_url: item.file_url,
};
/* this.$http
.get("/apaas/support/sdk/styles/detail", {
params: {
id: item.id,
},
})
.then(({ data }) => {
if (data.success === 1) {
this.detailForm = data.data;
}
}); */
this.$refs.detailDialog.show();
},
deleteItem(item) {
this.deleteDialogInfo.msg = `确认删除${item.style_name}吗?`;
this.deleteDialogInfo.submit = () => {
this.deleteRequest([item.id]);
};
this.$refs.deleteDialog.show();
},
deleteRequest(ids) {
this.$http
.delete("/apaas/support/sdk/styles/delete", {
body: {
ids: ids,
},
})
.then(({ data }) => {
if (data.success === 1) {
this.$message.success("删除成功");
this.selection = [];
this.refreshPage();
} else {
this.$message.error("删除失败");
}
})
.catch((error) => {
console.log(error);
this.$message.error("删除失败");
});
},
getTimeText(time) {
return helper.dateStringTransform(time);
},
selectAction(values) {
if (this.saveSection) {
return;
}
let cleanPage = values.length === 0; // 是否清空当前页所有选中
let selection = [...this.selection];
if (cleanPage) {
selection = selection.filter((item) => {
return !this.listData.find((v) => {
return v.id === item.id;
});
});
} else {
selection.push(...values);
}
this.selection = selection;
}, },
}, },
}; };
</script> </script>
<style> <style>
.list_container {
height: 100%;
}
.main_top_action { .main_top_action {
display: flex; display: flex;
justify-content: flex-start; justify-content: flex-start;
align-items: center; align-items: center;
} }
.main_top_action .delete_btn {
}
.main_top_action .selected_text { .main_top_action .selected_text {
font-size: 14px;
color: #8890a7;
margin-left: 30px; margin-left: 30px;
} }
.main_top_action .selected_text > span {
font-weight: bold;
color: #242c43;
margin: 0 3px;
}
.main_top_action .clean_btn { .main_top_action .clean_btn {
font-size: 14px; font-size: 14px;
line-height: 24px; line-height: 24px;
color: #2b4695; color: #2b4695;
text-decoration: underline; text-decoration: underline;
cursor: pointer;
user-select: none;
margin-left: 30px; margin-left: 30px;
} }
.main_top_action .add_btn { .main_top_action .add_btn {
margin-left: auto; margin-left: auto;
} }
.el-form {
font-size: 0;
}
.inline_form_item {
display: inline-block;
vertical-align: middle;
width: calc(50% - 10px);
}
.inline_form_item + .inline_form_item {
margin-left: 20px;
}
</style> </style>
...@@ -24,8 +24,8 @@ ...@@ -24,8 +24,8 @@
<div class="card_word"> <div class="card_word">
<p class="card_name">账户余额</p> <p class="card_name">账户余额</p>
<p> <p>
{{ helper.numberFormat(user_info.answer_num) {{ helper.numberFormat(user_info.account_balance)
}}<span v-if="user_info.answer_num > 10000" class="card_wan"> }}<span v-if="user_info.account_balance > 10000" class="card_wan">
</span> </span>
</p> </p>
...@@ -36,8 +36,8 @@ ...@@ -36,8 +36,8 @@
<div class="card_word"> <div class="card_word">
<p class="card_name">充值笔数</p> <p class="card_name">充值笔数</p>
<p> <p>
{{ helper.numberFormat(user_info.view_num) {{ helper.numberFormat(user_info.recharge_count)
}}<span v-if="user_info.view_num > 10000" class="card_wan"> }}<span v-if="user_info.recharge_count > 10000" class="card_wan">
</span> </span>
</p> </p>
...@@ -67,6 +67,7 @@ ...@@ -67,6 +67,7 @@
end-placeholder="结束日期" end-placeholder="结束日期"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
:clearable="false" :clearable="false"
@change="getCoinList"
></el-date-picker> ></el-date-picker>
</div> </div>
<apass-table <apass-table
...@@ -103,12 +104,11 @@ export default { ...@@ -103,12 +104,11 @@ export default {
user_info: { user_info: {
user_name: "", user_name: "",
role: "", role: "",
question_num: 0, account_balance: 0,
answer_num: 0, recharge_count: 0,
view_num: 0,
picture_path: "", picture_path: "",
}, },
tableData: [{}, {}], tableData: [],
table_header: [], table_header: [],
total_list: 0, total_list: 0,
currentPage: 1, currentPage: 1,
...@@ -125,8 +125,8 @@ export default { ...@@ -125,8 +125,8 @@ export default {
this.pagination.page += val; this.pagination.page += val;
this.refreshData(); this.refreshData();
}, },
getUserCoin() { getUserCoins() {
this.$api.user.getUserQA().then((response) => { this.$api.user.getUserCoins().then((response) => {
if (response.data.success == 1) { if (response.data.success == 1) {
this.user_info = response.data.data; this.user_info = response.data.data;
} }
...@@ -140,39 +140,47 @@ export default { ...@@ -140,39 +140,47 @@ export default {
let query = { let query = {
start: this.date.length != 0 ? this.date[0] : "", start: this.date.length != 0 ? this.date[0] : "",
end: this.date.length != 0 ? this.date[1] : "", end: this.date.length != 0 ? this.date[1] : "",
limit: this.currentlimit,
page: this.currentPage,
}; };
console.log(query) this.$api.user.getCoinList(query).then((response) => {
this.$api.user.getUserQA().then((response) => {
if (response.data.success == 1) { if (response.data.success == 1) {
this.user_info = response.data.data; if (response.data.data && response.data.data.length != 0) {
this.tableData = response.data.data
} else {
this.tableData = [];
this.currentPage = 1;
}
this.total_list = response.data.total;
} }
}); });
}, },
}, },
mounted() { mounted() {
this.getUserCoin(); this.getUserCoins();
this.getCoinList(); this.getCoinList();
this.table_header = [ this.table_header = [
{ {
prop: "title", prop: "serial_number",
label: "充值流水ID", label: "充值流水ID",
align: "center", align: "center",
type: "html", type: "html",
getHtml: (str) => { getHtml: (str) => {
return `<span style="color:#0f2683;font-weight:bold;width: 100%;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;" title="${str.title}">123123</span>`; return `<span style="color:#0f2683;font-weight:bold;width: 100%;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;" title="${str.serial_number}">${str.serial_number}</span>`;
}, },
}, },
{ {
prop: "content", prop: "amount",
label: "充值金额(金币/个)", label: "充值金额(金币/个)",
align: "center", align: "center",
type: "html", type: "html",
getHtml: (str) => { getHtml: (str) => {
return `<span style="width: 100%;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">123123123</span>`; return `<span style="width: 100%;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">${str.amount}</span>`;
}, },
}, },
{ {
prop: "answer_num", prop: "balance",
label: "账户余额(金币/个)", label: "账户余额(金币/个)",
align: "center", align: "center",
}, },
......
...@@ -2,7 +2,9 @@ ...@@ -2,7 +2,9 @@
<div> <div>
<el-breadcrumb separator="/" class="bread_crumb1"> <el-breadcrumb separator="/" class="bread_crumb1">
<el-breadcrumb-item :to="{ path: '/user' }">个人中心</el-breadcrumb-item> <el-breadcrumb-item :to="{ path: '/user' }">个人中心</el-breadcrumb-item>
<el-breadcrumb-item :to="{ path: '/user/order_list' }">订单管理</el-breadcrumb-item> <el-breadcrumb-item :to="{ path: '/user/order_list' }">
订单管理
</el-breadcrumb-item>
<el-breadcrumb-item>订单详情</el-breadcrumb-item> <el-breadcrumb-item>订单详情</el-breadcrumb-item>
</el-breadcrumb> </el-breadcrumb>
<block-radius class="detail"> <block-radius class="detail">
...@@ -12,24 +14,49 @@ ...@@ -12,24 +14,49 @@
<p class="detail_head_cell_title">申请状态</p> <p class="detail_head_cell_title">申请状态</p>
<p <p
class="detail_head_cell_val text_yellow" class="detail_head_cell_val text_yellow"
v-if="orderDetail.approval_first_level == 0 && orderDetail.pay_status != -1" v-if="
>待审核</p> orderDetail.approval_first_level == 0 &&
orderDetail.pay_status != -1
"
>
待审核
</p>
<p <p
class="detail_head_cell_val text_yellow" class="detail_head_cell_val text_yellow"
v-else-if="orderDetail.approval_first_level == 1&& orderDetail.approval_second_level == 0 && orderDetail.pay_status != -1" v-else-if="
>审核中</p> orderDetail.approval_first_level == 1 &&
orderDetail.approval_second_level == 0 &&
orderDetail.pay_status != -1
"
>
审核中
</p>
<p <p
class="detail_head_cell_val text_blue" class="detail_head_cell_val text_blue"
v-else-if="orderDetail.approval_first_level == 1 && orderDetail.approval_second_level == 1 && orderDetail.pay_status != -1" v-else-if="
>审核通过</p> orderDetail.approval_first_level == 1 &&
orderDetail.approval_second_level == 1 &&
orderDetail.pay_status != -1
"
>
审核通过
</p>
<p <p
class="detail_head_cell_val text_red" class="detail_head_cell_val text_red"
v-else-if="(orderDetail.approval_first_level == -1 || orderDetail.approval_second_level == -1) && orderDetail.pay_status != -1" v-else-if="
>审核未通过</p> (orderDetail.approval_first_level == -1 ||
orderDetail.approval_second_level == -1) &&
orderDetail.pay_status != -1
"
>
审核未通过
</p>
<p <p
class="detail_head_cell_val text_blackblue" class="detail_head_cell_val text_blackblue"
v-else-if="orderDetail.pay_status == -1" v-else-if="orderDetail.pay_status == -1"
>已取消</p> >
已取消
</p>
</div> </div>
<div class="detail_head_cell detail_head_no border_right"> <div class="detail_head_cell detail_head_no border_right">
<p class="detail_head_cell_title">订单编号</p> <p class="detail_head_cell_title">订单编号</p>
...@@ -37,20 +64,26 @@ ...@@ -37,20 +64,26 @@
</div> </div>
<div class="detail_head_cell detail_head_time"> <div class="detail_head_cell detail_head_time">
<p class="detail_head_cell_title">申请时间</p> <p class="detail_head_cell_title">申请时间</p>
<p class="detail_head_cell_val">{{ helper.dateStringTransform(orderDetail.add_time) }}</p> <p class="detail_head_cell_val">
{{ helper.dateStringTransform(orderDetail.add_time) }}
</p>
</div> </div>
<div <div
v-if="orderDetail.pay_status == -1" v-if="orderDetail.pay_status == -1"
class="detail_head_cell detail_head_time border_left" class="detail_head_cell detail_head_time border_left"
> >
<p class="detail_head_cell_title">取消时间</p> <p class="detail_head_cell_title">取消时间</p>
<p <p class="detail_head_cell_val">
class="detail_head_cell_val" {{ helper.dateStringTransform(orderDetail.cancel_time) }}
>{{ helper.dateStringTransform(orderDetail.cancel_time) }}</p> </p>
</div> </div>
<div class="btn_group"> <div class="btn_group">
<el-popover <el-popover
v-if="orderDetail.is_estimated == 0 && orderDetail.approval_second_level == 1 && orderDetail.pay_status != -1" v-if="
orderDetail.is_estimated == 0 &&
orderDetail.approval_second_level == 1 &&
orderDetail.pay_status != -1
"
placement="right-start" placement="right-start"
width="300" width="300"
v-model="visible" v-model="visible"
...@@ -58,7 +91,12 @@ ...@@ -58,7 +91,12 @@
> >
<p>服务评价:</p> <p>服务评价:</p>
<div class="pop_rate"> <div class="pop_rate">
<el-rate v-model="serviceRate" :colors="colors" show-score score-template="{value}"></el-rate> <el-rate
v-model="serviceRate"
:colors="colors"
show-score
score-template="{value}"
></el-rate>
</div> </div>
<p>填写评价:</p> <p>填写评价:</p>
<div class="evaluation_text"> <div class="evaluation_text">
...@@ -72,69 +110,131 @@ ...@@ -72,69 +110,131 @@
></el-input> ></el-input>
</div> </div>
<div class="pop_btn_group"> <div class="pop_btn_group">
<el-button size="small" class="pop_cancel" type="text" @click="visible = false">取消</el-button> <el-button
size="small"
class="pop_cancel"
type="text"
@click="visible = false"
>
取消
</el-button>
<el-button <el-button
type="primary" type="primary"
class="pop_submit" class="pop_submit"
size="small" size="small"
@click="addEvaluation" @click="addEvaluation"
>确定提交</el-button> >
确定提交
</el-button>
</div> </div>
<el-button class="evaluation" slot="reference">服务评价</el-button> <el-button class="evaluation" slot="reference">
服务评价
</el-button>
</el-popover> </el-popover>
<el-button <el-button
v-else-if="orderDetail.order_type != 3 && orderDetail.approval_second_level == 1 && orderDetail.pay_status != -1 && orderDetail.is_estimated == 1 && !showMsgBox" v-else-if="
orderDetail.order_type != 3 &&
orderDetail.approval_second_level == 1 &&
orderDetail.pay_status != -1 &&
orderDetail.is_estimated == 1 &&
!showMsgBox
"
class="approval_status_btn" class="approval_status_btn"
@click="getMessage" @click="getMessage"
>查看评价</el-button> >查看评价</el-button
>
<el-button <el-button
v-else-if="orderDetail.order_type != 3 && orderDetail.approval_second_level == 1 && orderDetail.pay_status != -1 && orderDetail.is_estimated == 1 && showMsgBox" v-else-if="
orderDetail.order_type != 3 &&
orderDetail.approval_second_level == 1 &&
orderDetail.pay_status != -1 &&
orderDetail.is_estimated == 1 &&
showMsgBox
"
class="approval_status_btn" class="approval_status_btn"
@click="showMsgBox = false" @click="showMsgBox = false"
>收起评价</el-button> >收起评价</el-button
>
<el-button <el-button
v-if="orderDetail.approval_second_level == 1 && orderDetail.pay_status != -1 || orderDetail.pay_status == -1" v-if="
(orderDetail.approval_second_level == 1 &&
orderDetail.pay_status != -1) ||
orderDetail.pay_status == -1
"
class="again" class="again"
@click="nextApply" @click="nextApply"
>再次申请</el-button> >再次申请</el-button
>
<el-button <el-button
v-if="(orderDetail.approval_first_level == 0 && orderDetail.pay_status != -1) || (orderDetail.approval_first_level == 1 && orderDetail.approval_second_level == 0 && orderDetail.pay_status != -1)" v-if="
(orderDetail.approval_first_level == 0 &&
orderDetail.pay_status != -1) ||
(orderDetail.approval_first_level == 1 &&
orderDetail.approval_second_level == 0 &&
orderDetail.pay_status != -1)
"
class="again" class="again"
@click="cancelDetail" @click="cancelDetail"
>取消申请</el-button> >取消申请</el-button
>
</div> </div>
</div> </div>
<el-collapse-transition> <el-collapse-transition>
<div v-if="showMsgBox" class="evaluation_msg"> <div v-if="showMsgBox" class="evaluation_msg">
<div class="msg_title">服务评分:</div> <div class="msg_title">服务评分:</div>
<div class="msg_rate"> <div class="msg_rate">
<el-rate v-model="message.score" disabled :colors="colors"></el-rate> <el-rate
v-model="message.score"
disabled
:colors="colors"
></el-rate>
</div> </div>
<div class="msg_title">评价详情:</div> <div class="msg_title">评价详情:</div>
<div class="msg_text">{{ message.content }}</div> <div class="msg_text">{{ message.content }}</div>
</div> </div>
</el-collapse-transition> </el-collapse-transition>
</div> </div>
<div class="detail_title">{{ orderDetail.order_type == 1 ? "服务" : "应用"}}信息</div> <div class="detail_title">
{{ orderDetail.order_type == 1 ? "服务" : "应用" }}信息
</div>
<div class="detail_service"> <div class="detail_service">
<el-row class="detail_service_row"> <el-row class="detail_service_row">
<el-col :span="10" v-if="orderDetail.order_type == 1" class="detail_service_msg"> <el-col
:span="8"
v-if="orderDetail.order_type == 1"
class="detail_service_msg"
>
<img :src="orderDetail.cover" class="detail_service_msg_img" /> <img :src="orderDetail.cover" class="detail_service_msg_img" />
<div class="detail_service_msg_right"> <div class="detail_service_msg_right">
<div class="detail_service_name"> <div class="detail_service_name">
<span>{{ orderDetail.name }}</span> <span>{{ orderDetail.name }}</span>
<span v-if="orderDetail.mapService" class="tags map_service">mapService</span> <span v-if="orderDetail.mapService" class="tags map_service">
<span v-if="orderDetail.openness == 1" class="tags shared">共享</span> mapService
<span v-else-if="orderDetail.openness == 2" class="tags restricted">受限</span> </span>
<span v-if="orderDetail.openness == 1" class="tags shared">
共享
</span>
<span
v-else-if="orderDetail.openness == 2"
class="tags restricted"
>
受限
</span>
<span v-else class="tags sensitive">敏感</span> <span v-else class="tags sensitive">敏感</span>
</div> </div>
<div class="detail_service_msg_other"> <div class="detail_service_msg_other">
<div class="detail_service_type">{{ orderDetail.sector }}</div> <div class="detail_service_type">{{ orderDetail.sector }}</div>
<div class="detail_service_creator">{{ orderDetail.src_organization }}</div> <div class="detail_service_creator">
{{ orderDetail.src_organization }}
</div>
</div> </div>
</div> </div>
</el-col> </el-col>
<el-col :span="10" v-else-if="orderDetail.order_type == 2" class="detail_service_msg"> <el-col
:span="8"
v-else-if="orderDetail.order_type == 2"
class="detail_service_msg"
>
<img :src="orderDetail.cover" class="detail_service_msg_img" /> <img :src="orderDetail.cover" class="detail_service_msg_img" />
<div class="detail_service_msg_right"> <div class="detail_service_msg_right">
<div class="detail_service_name"> <div class="detail_service_name">
...@@ -142,60 +242,93 @@ ...@@ -142,60 +242,93 @@
</div> </div>
<div class="detail_service_msg_other"> <div class="detail_service_msg_other">
<div class="detail_service_type">{{ orderDetail.sector }}</div> <div class="detail_service_type">{{ orderDetail.sector }}</div>
<div class="detail_service_creator">{{ orderDetail.src_organization }}</div> <div class="detail_service_creator">
{{ orderDetail.src_organization }}
</div>
</div> </div>
</div> </div>
</el-col> </el-col>
<el-col :span="10" v-else-if="orderDetail.order_type == 3" class="detail_service_msg"> <el-col
<img :src="require('@/assets/imgs/img_yunziyuan.png')" class="detail_service_msg_img" /> :span="8"
v-else-if="orderDetail.order_type == 3"
class="detail_service_msg"
>
<img
:src="require('@/assets/imgs/img_yunziyuan.png')"
class="detail_service_msg_img"
/>
<div class="detail_service_msg_right"> <div class="detail_service_msg_right">
<div class="detail_service_name_cloud"> <div class="detail_service_name_cloud">
<span>{{ orderDetail.namespace }}{{ orderDetail.workplace }}</span> <span>
{{ orderDetail.namespace }}{{ orderDetail.workplace }}
</span>
</div> </div>
</div> </div>
</el-col> </el-col>
<el-col :span="8" class="detail_service_specification"> <el-col :span="6" class="detail_service_specification">
<div v-if="orderDetail.order_type == 1"> <div v-if="orderDetail.order_type == 1">
<div> <div>
<span class="detail_service_specification_gg">规格:</span> <span class="detail_service_specification_gg">
<span {{ orderDetail.spec_app == 0 ? "计次收费:" : "时长收费:" }}
class="detail_service_specification_val" </span>
>访问次数:{{ orderDetail.spec_svc_count }}/日,访问量:{{ orderDetail.spec_svc_pv }}/日</span> <span class="detail_service_specification_val"
</div> >2000金币/月</span
<div> >
<span class="detail_service_specification_type">申请方式:</span>
<span
class="detail_service_specification_val"
>{{orderDetail.duration_unit == 1 ? "按月" : "按年"}}</span>
</div> </div>
</div> </div>
<div v-else-if="orderDetail.order_type == 2"> <div v-else-if="orderDetail.order_type == 2">
<div> <div>
<span class="detail_service_specification_gg">规格:</span> <span class="detail_service_specification_gg">{{
<span orderDetail.spec_app == 0
class="detail_service_specification_val" ? "申请获取应用镜像部署权限:"
>{{ orderDetail.spec_app == 0 ? "申请获取应用镜像部署权限" : "申请获取应用镜像开发权限" }}</span> : "申请获取应用镜像开发权限:"
}}</span>
<span class="detail_service_specification_val"
>2000金币/月</span
>
</div> </div>
</div> </div>
<div v-else-if="orderDetail.order_type == 3"> <div v-else-if="orderDetail.order_type == 3">
<div> <div>
<span class="detail_service_specification_gg">类型:</span> <span class="detail_service_specification_gg">类型:</span>
<span <span class="detail_service_specification_val">{{
class="detail_service_specification_val" orderDetail.apply_type == 0
>{{ orderDetail.apply_type == 0 ? "申请新的工作区域" : "升级现有工作区域" }}</span> ? "申请新的工作区域"
: "升级现有工作区域"
}}</span>
</div> </div>
</div> </div>
</el-col> </el-col>
<el-col :span="6" class="detail_service_time"> <el-col :span="5" class="detail_service_time">
<div> <div>
<span class="detail_service_time_title">申请时长:</span> <span class="detail_service_time_title">申请时长:</span>
<span <span class="detail_service_specification_val">{{
class="detail_service_specification_val" orderDetail.duration == 0
>{{ orderDetail.duration + (orderDetail.duration_unit == 1 ? "个月" : "") }}</span> ? "不限"
: orderDetail.duration +
(orderDetail.duration_unit == 1 ? "个月" : "")
}}</span>
</div>
</el-col>
<el-col :span="5" class="detail_service_money">
<div>
<span class="detail_service_money_title">总价:</span>
<span class="detail_service_specification_val"
>12793017230金币</span
>
<span v-if="1" class="adhekadwn">(升级费用:3000金币,原规格抵扣:1000金币)</span>
</div> </div>
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
<div v-if="orderDetail.order_type == 2">
<div class="detail_s_title">业务领域:</div>
<div class="detail_app_scence">{{ orderDetail.app_desc }}</div>
</div>
<div v-if="orderDetail.order_type == 2">
<div class="detail_s_title">上线时间:</div>
<div class="detail_app_scence">{{ orderDetail.app_func }}</div>
</div>
<div v-if="orderDetail.order_type == 2"> <div v-if="orderDetail.order_type == 2">
<div class="detail_s_title">应用简介:</div> <div class="detail_s_title">应用简介:</div>
<div class="detail_app_scence">{{ orderDetail.app_desc }}</div> <div class="detail_app_scence">{{ orderDetail.app_desc }}</div>
...@@ -220,23 +353,33 @@ ...@@ -220,23 +353,33 @@
</div> </div>
<div class="params_block_item_in"> <div class="params_block_item_in">
<span class="params_block_item_title">内存:</span> <span class="params_block_item_title">内存:</span>
<span class="params_block_item_val">{{ orderDetail.memory }}GB</span> <span class="params_block_item_val"
>{{ orderDetail.memory }}GB</span
>
</div> </div>
<div class="params_block_item_in"> <div class="params_block_item_in">
<span class="params_block_item_title">容器组:</span> <span class="params_block_item_title">容器组:</span>
<span class="params_block_item_val">{{ orderDetail.memory }}</span> <span class="params_block_item_val"
>{{ orderDetail.memory }}</span
>
</div> </div>
<div <div
v-if="orderDetail.apply_type == 0 && orderDetail.disk_num != 0" v-if="orderDetail.apply_type == 0 && orderDetail.disk_num != 0"
class="params_block_item_in" class="params_block_item_in"
> >
<span class="params_block_item_title">数据盘:</span> <span class="params_block_item_title">数据盘:</span>
<span <span class="params_block_item_val"
class="params_block_item_val" >{{ orderDetail.disk_num }}块,每块{{
>{{ orderDetail.disk_num }}块,每块{{orderDetail.disk_cap }}GB</span> orderDetail.disk_cap
}}GB</span
>
</div> </div>
<div <div
v-else-if="orderDetail.apply_type != 0 && orderDetail.adjust_disk && orderDetail.adjust_disk.length != 0" v-else-if="
orderDetail.apply_type != 0 &&
orderDetail.adjust_disk &&
orderDetail.adjust_disk.length != 0
"
class="params_block_item_in" class="params_block_item_in"
> >
<span class="params_block_item_title">数据盘:</span> <span class="params_block_item_title">数据盘:</span>
...@@ -245,7 +388,14 @@ ...@@ -245,7 +388,14 @@
v-for="(item, index) in orderDetail.adjust_disk" v-for="(item, index) in orderDetail.adjust_disk"
:key="'sjp' + index" :key="'sjp' + index"
class="val_has_2" class="val_has_2"
>{{ "数据盘" + item.disk_num + "块,每块数据盘容量" + item.disk_cap + "GB;" }}</span> >{{
"数据盘" +
item.disk_num +
"块,每块数据盘容量" +
item.disk_cap +
"GB;"
}}</span
>
</p> </p>
</div> </div>
</div> </div>
...@@ -254,15 +404,23 @@ ...@@ -254,15 +404,23 @@
<div class="params_block_item_in"> <div class="params_block_item_in">
<span class="params_block_item_title">CPU:</span> <span class="params_block_item_title">CPU:</span>
<p class="params_block_item_val"> <p class="params_block_item_val">
<span class="val_has_2">最高&nbsp;{{ orderDetail.one_cpu_max }}</span> <span class="val_has_2"
<span class="val_has_2">默认&nbsp;{{ orderDetail.one_cpu_min }}</span> >最高&nbsp;{{ orderDetail.one_cpu_max }}</span
>
<span class="val_has_2"
>默认&nbsp;{{ orderDetail.one_cpu_min }}</span
>
</p> </p>
</div> </div>
<div class="params_block_item_in"> <div class="params_block_item_in">
<span class="params_block_item_title">内存:</span> <span class="params_block_item_title">内存:</span>
<p class="params_block_item_val"> <p class="params_block_item_val">
<span class="val_has_2">最高&nbsp;{{ orderDetail.one_memory_max }}GB</span> <span class="val_has_2"
<span class="val_has_2">默认&nbsp;{{ orderDetail.one_memory_min }}GB</span> >最高&nbsp;{{ orderDetail.one_memory_max }}GB</span
>
<span class="val_has_2"
>默认&nbsp;{{ orderDetail.one_memory_min }}GB</span
>
</p> </p>
</div> </div>
</div> </div>
...@@ -272,8 +430,23 @@ ...@@ -272,8 +430,23 @@
<table-um :headers="header_arr" :datas="data"></table-um> <table-um :headers="header_arr" :datas="data"></table-um>
</div> </div>
<div class="detail_title">申请人信息</div> <div class="detail_title">申请人信息</div>
<info-list @download="download" :list_arr="list_arr" class="detail_s_val"></info-list> <info-list
<process-card v-if="orderDetail.order_type != 3" :data="approval_arr1" class="detail_s_val"></process-card> @download="download"
:list_arr="list_arr"
class="detail_s_val"
></info-list>
<div
v-if="orderDetail.order_type != 3 && showApproval"
class="detail_title"
>
审批信息
</div>
<process-card
v-if="orderDetail.order_type != 3 && showApproval"
:data="approval_arr1"
class="detail_s_val"
>
</process-card>
</block-radius> </block-radius>
</div> </div>
</template> </template>
...@@ -371,6 +544,7 @@ export default { ...@@ -371,6 +544,7 @@ export default {
], ],
}, },
], ],
showApproval: false,
header_arr: [ header_arr: [
{ {
prop: "name", prop: "name",
...@@ -477,6 +651,7 @@ export default { ...@@ -477,6 +651,7 @@ export default {
.then((response) => { .then((response) => {
if (response.data.success == 1) { if (response.data.success == 1) {
let data = response.data.data || []; let data = response.data.data || [];
if (data.length != 0) {
for (let i = 0; i < data.length; i++) { for (let i = 0; i < data.length; i++) {
this.approval_arr1[i].result = data[i].apply_type_name; this.approval_arr1[i].result = data[i].apply_type_name;
this.approval_arr1[i].arr[0].info = data[i].created; this.approval_arr1[i].arr[0].info = data[i].created;
...@@ -486,6 +661,14 @@ export default { ...@@ -486,6 +661,14 @@ export default {
} }
this.approval_arr1.splice(data.length); this.approval_arr1.splice(data.length);
} else { } else {
this.approval_arr1[0].result = "待审批";
this.approval_arr1[0].arr = [];
this.approval_arr1.splice(1);
}
this.showApproval = true;
console.log(this.approval_arr1);
} else {
this.showApproval = false;
console.log(response.data.errMsg); console.log(response.data.errMsg);
} }
}); });
...@@ -578,6 +761,7 @@ export default { ...@@ -578,6 +761,7 @@ export default {
.detail { .detail {
margin: 0 20px; margin: 0 20px;
} }
.detail_head { .detail_head {
width: 100%; width: 100%;
background-color: #f6f7fb; background-color: #f6f7fb;
...@@ -586,87 +770,109 @@ export default { ...@@ -586,87 +770,109 @@ export default {
position: relative; position: relative;
margin-bottom: 20px; margin-bottom: 20px;
} }
.detail_head_msg { .detail_head_msg {
padding: 20px; padding: 20px;
} }
.detail_head_cell { .detail_head_cell {
display: inline-block; display: inline-block;
height: 50px; height: 50px;
text-align: center; text-align: center;
} }
.detail_head_status { .detail_head_status {
width: 160px; width: 160px;
} }
.detail_head_no { .detail_head_no {
width: 360px; width: 360px;
} }
.detail_head_time { .detail_head_time {
width: 240px; width: 240px;
} }
.border_right { .border_right {
border-right: 1px #e3e5ef solid; border-right: 1px #e3e5ef solid;
} }
.border_left { .border_left {
border-left: 1px #e3e5ef solid; border-left: 1px #e3e5ef solid;
} }
.detail_head_cell_title { .detail_head_cell_title {
font-size: 14px; font-size: 14px;
color: #8890a7; color: #8890a7;
line-height: 22px; line-height: 22px;
} }
.detail_head_cell_val { .detail_head_cell_val {
font-size: 16px; font-size: 16px;
font-weight: 700; font-weight: 700;
line-height: 28px; line-height: 28px;
color: #242c43; color: #242c43;
} }
.text_blue { .text_blue {
color: #515fe7; color: #515fe7;
} }
.text_yellow { .text_yellow {
color: #ef9433; color: #ef9433;
} }
.text_blackblue { .text_blackblue {
color: #242c43; color: #242c43;
} }
.text_red { .text_red {
color: #e15260; color: #e15260;
} }
.btn_group { .btn_group {
position: absolute; position: absolute;
right: 20px; right: 20px;
top: 26px; top: 26px;
} }
.evaluation { .evaluation {
width: 100px; width: 100px;
background-color: #c3caf8; background-color: #c3caf8;
color: #0f2683; color: #0f2683;
margin-right: 20px; margin-right: 20px;
} }
.again { .again {
width: 100px; width: 100px;
background-color: #0f2683; background-color: #0f2683;
color: #f8f9fd; color: #f8f9fd;
} }
.pop_rate { .pop_rate {
padding: 0 0 0 50px; padding: 0 0 0 50px;
margin: 15px 0; margin: 15px 0;
} }
.evaluation_text { .evaluation_text {
padding: 15px 4px; padding: 15px 4px;
} }
.pop_cancel { .pop_cancel {
color: #58617a; color: #58617a;
margin-right: 20px; margin-right: 20px;
} }
.pop_submit { .pop_submit {
background-color: #e56600; background-color: #e56600;
border: 0; border: 0;
} }
.pop_btn_group { .pop_btn_group {
margin-top: 10px; margin-top: 10px;
text-align: center; text-align: center;
} }
.detail_title { .detail_title {
font-size: 18px; font-size: 18px;
margin: 10px 0 20px; margin: 10px 0 20px;
...@@ -674,6 +880,7 @@ export default { ...@@ -674,6 +880,7 @@ export default {
position: relative; position: relative;
color: #58617a; color: #58617a;
} }
.detail_title::before { .detail_title::before {
position: absolute; position: absolute;
content: ""; content: "";
...@@ -684,6 +891,7 @@ export default { ...@@ -684,6 +891,7 @@ export default {
left: 0; left: 0;
top: 4px; top: 4px;
} }
.detail_service { .detail_service {
width: 100%; width: 100%;
height: 100%; height: 100%;
...@@ -691,6 +899,7 @@ export default { ...@@ -691,6 +899,7 @@ export default {
border-radius: 8px; border-radius: 8px;
border: solid 1px #ededed; border: solid 1px #ededed;
} }
.detail_service_msg { .detail_service_msg {
height: 162px; height: 162px;
padding: 20px 10px 20px 20px; padding: 20px 10px 20px 20px;
...@@ -698,17 +907,20 @@ export default { ...@@ -698,17 +907,20 @@ export default {
justify-content: space-between; justify-content: space-between;
border-right: 1px #ededed solid; border-right: 1px #ededed solid;
} }
.detail_service_msg_img { .detail_service_msg_img {
width: 118px; width: 118px;
height: 118px; height: 118px;
border-radius: 8px; border-radius: 8px;
border: 3px #f4f7fc solid; border: 3px #f4f7fc solid;
} }
.detail_service_msg_right { .detail_service_msg_right {
width: calc(100% - 140px); width: calc(100% - 140px);
margin: 0 0 0 10px; margin: 0 0 0 10px;
position: relative; position: relative;
} }
.detail_service_name { .detail_service_name {
width: 100%; width: 100%;
line-height: 24px; line-height: 24px;
...@@ -721,6 +933,7 @@ export default { ...@@ -721,6 +933,7 @@ export default {
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
font-size: 16px; font-size: 16px;
} }
.detail_service_name_cloud { .detail_service_name_cloud {
width: 100%; width: 100%;
line-height: 24px; line-height: 24px;
...@@ -734,20 +947,24 @@ export default { ...@@ -734,20 +947,24 @@ export default {
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
font-size: 16px; font-size: 16px;
} }
.detail_service_msg_other { .detail_service_msg_other {
position: absolute; position: absolute;
bottom: 2px; bottom: 2px;
} }
.detail_service_type { .detail_service_type {
color: #8890a7; color: #8890a7;
font-size: 14px; font-size: 14px;
line-height: 22px; line-height: 22px;
} }
.detail_service_creator { .detail_service_creator {
color: #8890a7; color: #8890a7;
font-size: 14px; font-size: 14px;
line-height: 22px; line-height: 22px;
} }
.tags { .tags {
display: inline-block; display: inline-block;
margin-left: 10px; margin-left: 10px;
...@@ -759,26 +976,31 @@ export default { ...@@ -759,26 +976,31 @@ export default {
position: relative; position: relative;
top: -2px; top: -2px;
} }
.map_service { .map_service {
background-color: #626de9; background-color: #626de9;
border: solid 1px #626de9; border: solid 1px #626de9;
color: #fff; color: #fff;
} }
.shared { .shared {
background-color: #e7fdfc; background-color: #e7fdfc;
border: solid 1px #8bd6d0; border: solid 1px #8bd6d0;
color: #25bdb1; color: #25bdb1;
} }
.restricted { .restricted {
background-color: #fffee8; background-color: #fffee8;
border: solid 1px #e4c884; border: solid 1px #e4c884;
color: #ef9433; color: #ef9433;
} }
.sensitive { .sensitive {
background-color: #ffefef; background-color: #ffefef;
border: solid 1px #d7a4a9; border: solid 1px #d7a4a9;
color: #e15260; color: #e15260;
} }
.detail_service_specification { .detail_service_specification {
height: 162px; height: 162px;
color: #8890a7; color: #8890a7;
...@@ -789,37 +1011,63 @@ export default { ...@@ -789,37 +1011,63 @@ export default {
padding: 22px 20px; padding: 22px 20px;
border-right: 1px #ededed solid; border-right: 1px #ededed solid;
} }
.detail_service_specification_val { .detail_service_specification_val {
color: #242c43; color: #242c43;
} }
.detail_service_time { .detail_service_time {
text-align: center; text-align: center;
height: 162px; height: 162px;
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
border-right: 1px #ededed solid;
} }
.detail_service_time_title { .detail_service_time_title {
color: #8890a7; color: #8890a7;
} }
.detail_service_money {
text-align: center;
height: 162px;
display: flex;
justify-content: center;
align-items: center;
}
.detail_service_money_title {
color: #8890a7;
}
.adhekadwn {
color: #8890a7;
display: block;
margin-top: 20px;
}
.detail_s_title { .detail_s_title {
color: #8890a7; color: #8890a7;
margin: 20px 0 10px; margin: 20px 0 10px;
padding: 0 0 0 20px; padding: 0 0 0 20px;
} }
.detail_app_scence { .detail_app_scence {
padding: 0 0 0 20px; padding: 0 0 0 20px;
color: #242c43; color: #242c43;
font-size: 14px; font-size: 14px;
line-height: 22px; line-height: 22px;
} }
.detail_s_val { .detail_s_val {
padding: 0 0 0 20px; padding: 0 0 0 20px;
} }
.approval_status_btn { .approval_status_btn {
background-color: #e1e4fb; background-color: #e1e4fb;
color: #626de9; color: #626de9;
} }
.params_block { .params_block {
background-color: #f8f9fd; background-color: #f8f9fd;
border-radius: 8px; border-radius: 8px;
...@@ -828,47 +1076,58 @@ export default { ...@@ -828,47 +1076,58 @@ export default {
font-size: 14px; font-size: 14px;
line-height: 22px; line-height: 22px;
} }
.params_block_title { .params_block_title {
padding-left: 5px; padding-left: 5px;
color: #242c43; color: #242c43;
} }
.params_block_item { .params_block_item {
padding: 10px 0 0 0; padding: 10px 0 0 0;
} }
.params_block_item_in { .params_block_item_in {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
margin-bottom: 5px; margin-bottom: 5px;
} }
.params_block_item_title { .params_block_item_title {
color: #8890a7; color: #8890a7;
width: 80px; width: 80px;
text-align: right; text-align: right;
} }
.params_block_item_val { .params_block_item_val {
color: #242c43; color: #242c43;
width: calc(100% - 82px); width: calc(100% - 82px);
} }
.val_has_2 { .val_has_2 {
margin-right: 20px; margin-right: 20px;
} }
.margin_top_20 { .margin_top_20 {
display: block; display: block;
margin-top: 20px; margin-top: 20px;
} }
.evaluation_msg { .evaluation_msg {
height: 100%; height: 100%;
border-top: solid 2px #e3e5ef; border-top: solid 2px #e3e5ef;
padding: 20px; padding: 20px;
background-color: #fff; background-color: #fff;
} }
.msg_title { .msg_title {
color: #8890a7; color: #8890a7;
margin: 0 0 10px; margin: 0 0 10px;
} }
.msg_rate { .msg_rate {
margin: 0 0 20px 0; margin: 0 0 20px 0;
} }
.msg_text { .msg_text {
/* margin-left: 20px; */ /* margin-left: 20px; */
color: #242c43; color: #242c43;
...@@ -878,6 +1137,7 @@ export default { ...@@ -878,6 +1137,7 @@ export default {
.pop_rate .el-rate__icon { .pop_rate .el-rate__icon {
font-size: 24px; font-size: 24px;
} }
.pop_rate .el-rate__text { .pop_rate .el-rate__text {
font-size: 20px; font-size: 20px;
margin-left: 20px; margin-left: 20px;
...@@ -885,6 +1145,7 @@ export default { ...@@ -885,6 +1145,7 @@ export default {
top: 1px; top: 1px;
color: #58617a !important; color: #58617a !important;
} }
.evaluation_text .el-textarea__inner { .evaluation_text .el-textarea__inner {
border-radius: 8px; border-radius: 8px;
} }
......
...@@ -1144,8 +1144,12 @@ export default { ...@@ -1144,8 +1144,12 @@ export default {
bodys = JSON.stringify(request); bodys = JSON.stringify(request);
} else if (this.zhfwQqt == "x-www-form-urlencoded") { } else if (this.zhfwQqt == "x-www-form-urlencoded") {
let request = this.$refs.fwcs_zhfw_www.getTableData().concat(); let request = this.$refs.fwcs_zhfw_www.getTableData().concat();
let arr = [];
request.pop(); request.pop();
bodys = JSON.stringify(request); request.forEach(item => {
arr.push({key: item.requestEncoding, val: item.requestValue, field_type: "text"})
});
bodys = JSON.stringify(arr);
} }
} }
} }
......
...@@ -71,10 +71,10 @@ const user = { ...@@ -71,10 +71,10 @@ const user = {
// my coins // my coins
getUserCoins() { getUserCoins() {
return axios.get(``) return axios.get(`/apaas/backmgt/user/myAccount`)
}, },
getCoinList() { getCoinList(params) {
return axios.get(``) return axios.get(`/apaas/backmgt/user/rechargeRecords?start=${params.start}&end=${params.end}&limit=${params.limit}&page=${params.page}`)
} }
} }
......
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