|
|
@ -1,14 +1,6 @@ |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
<el-dialog |
|
|
|
<el-dialog title="" :visible="true" :show-close="false" top="20vh" width="500px" :close-on-click-modal="false" center |
|
|
|
title="" |
|
|
|
custom-class="custom-dialog"><el-form label-width="80px" class="addStyle"> |
|
|
|
:visible="true" |
|
|
|
|
|
|
|
:show-close="false" |
|
|
|
|
|
|
|
top="20vh" |
|
|
|
|
|
|
|
width="500px" |
|
|
|
|
|
|
|
:close-on-click-modal="false" |
|
|
|
|
|
|
|
center |
|
|
|
|
|
|
|
custom-class="custom-dialog" |
|
|
|
|
|
|
|
><el-form label-width="80px" class="addStyle"> |
|
|
|
|
|
|
|
<div class="adjust-frame"> |
|
|
|
<div class="adjust-frame"> |
|
|
|
<div class="titleStyle"> |
|
|
|
<div class="titleStyle"> |
|
|
|
<p style="margin:0;color:#409EFF">新增快速调价任务</p> |
|
|
|
<p style="margin:0;color:#409EFF">新增快速调价任务</p> |
|
|
@ -17,48 +9,22 @@ |
|
|
|
<span>{{ multipleSelection.length }}</span> |
|
|
|
<span>{{ multipleSelection.length }}</span> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<img |
|
|
|
<img class="close" @click=" |
|
|
|
class="close" |
|
|
|
controlWindows.dialogAdjustStrategyPiliangAdd = false |
|
|
|
@click=" |
|
|
|
" src="@/assets/img/close_fill.png" alt="" /> |
|
|
|
controlWindows.dialogAdjustStrategyPiliangAdd = false |
|
|
|
|
|
|
|
" |
|
|
|
|
|
|
|
src="@/assets/img/close_fill.png" |
|
|
|
|
|
|
|
alt="" |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
<div style="margin: 0 35px;"> |
|
|
|
<div style="margin: 0 35px;"> |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
<div style="margin:40px 0 20px;"> |
|
|
|
<div style="margin:40px 0 20px;"> |
|
|
|
<span style="margin: 15px 0; display: block;" |
|
|
|
<span style="margin: 15px 0; display: block;">任务名称</span> |
|
|
|
>任务名称</span |
|
|
|
<el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="taskName"></el-input> |
|
|
|
> |
|
|
|
|
|
|
|
<el-input |
|
|
|
|
|
|
|
type="textarea" |
|
|
|
|
|
|
|
:rows="2" |
|
|
|
|
|
|
|
placeholder="请输入内容" |
|
|
|
|
|
|
|
v-model="taskName" |
|
|
|
|
|
|
|
></el-input> |
|
|
|
|
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<el-divider></el-divider> |
|
|
|
<el-divider></el-divider> |
|
|
|
<div |
|
|
|
<div style="display:flex;align-items: center;justify-content: space-between;margin-bottom: 20px;"> |
|
|
|
style="display:flex;align-items: center;justify-content: space-between;margin-bottom: 20px;" |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<div class="mubiaocelue"> |
|
|
|
<div class="mubiaocelue"> |
|
|
|
<div |
|
|
|
<div class="special-exhibition" style="margin: -7px 0 12px;"> |
|
|
|
class="special-exhibition" |
|
|
|
<span style="margin-right: 10px">目标策略公式</span> |
|
|
|
style="margin: -7px 0 12px;" |
|
|
|
<input class="strategy-input" type="text" v-model="convertPersonalPriceSyncStrategy |
|
|
|
> |
|
|
|
" @keyup="inputHandle" @blur="blurHandle" /> |
|
|
|
<span style="margin-right: 10px" |
|
|
|
|
|
|
|
>目标策略公式</span |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<input |
|
|
|
|
|
|
|
class="strategy-input" |
|
|
|
|
|
|
|
type="text" |
|
|
|
|
|
|
|
v-model=" |
|
|
|
|
|
|
|
convertPersonalPriceSyncStrategy |
|
|
|
|
|
|
|
" |
|
|
|
|
|
|
|
@keyup="inputHandle" |
|
|
|
|
|
|
|
@blur="blurHandle" |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div style="margin: 0 0 0 auto;"> |
|
|
|
<div style="margin: 0 0 0 auto;"> |
|
|
|
执行时基础个人价变更 |
|
|
|
执行时基础个人价变更 |
|
|
@ -66,11 +32,7 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="mubiaocelue"> |
|
|
|
<div class="mubiaocelue"> |
|
|
|
<el-radio-group v-model="radio"> |
|
|
|
<el-radio-group v-model="radio"> |
|
|
|
<el-radio |
|
|
|
<el-radio :label="1" @click.native.prevent="selectRadio">立即应用到个人价</el-radio> |
|
|
|
:label="1" |
|
|
|
|
|
|
|
@click.native.prevent="selectRadio" |
|
|
|
|
|
|
|
>立即应用到个人价</el-radio |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
</el-radio-group> |
|
|
|
</el-radio-group> |
|
|
|
<el-radio-group v-model="dijiaRadio"> |
|
|
|
<el-radio-group v-model="dijiaRadio"> |
|
|
|
<el-radio :label="0">忽略</el-radio> |
|
|
|
<el-radio :label="0">忽略</el-radio> |
|
|
@ -81,23 +43,13 @@ |
|
|
|
<el-divider></el-divider> |
|
|
|
<el-divider></el-divider> |
|
|
|
<div class="mubiaocelue" style="margin-bottom: 30px;"> |
|
|
|
<div class="mubiaocelue" style="margin-bottom: 30px;"> |
|
|
|
<span>任务类型</span> |
|
|
|
<span>任务类型</span> |
|
|
|
<el-radio-group |
|
|
|
<el-radio-group v-model="taskTypeRadio" style="margin:0"> |
|
|
|
v-model="taskTypeRadio" |
|
|
|
|
|
|
|
style="margin:0" |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<el-radio :label="1">实时</el-radio> |
|
|
|
<el-radio :label="1">实时</el-radio> |
|
|
|
<el-radio :label="2">预约</el-radio> |
|
|
|
<el-radio :label="2">预约</el-radio> |
|
|
|
<el-date-picker |
|
|
|
<el-date-picker popper-class="disableButton" :disabled="taskTypeRadio !== 2" |
|
|
|
popper-class="disableButton" |
|
|
|
v-model="startTime" clearable format="yyyy-MM-dd HH:mm:ss" |
|
|
|
:disabled="taskTypeRadio !== 2" |
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="预约时间" |
|
|
|
v-model="startTime" |
|
|
|
:picker-options="pickerOptions" /> |
|
|
|
clearable |
|
|
|
|
|
|
|
format="yyyy-MM-dd HH:mm:ss" |
|
|
|
|
|
|
|
value-format="yyyy-MM-dd HH:mm:ss" |
|
|
|
|
|
|
|
type="datetime" |
|
|
|
|
|
|
|
placeholder="预约时间" |
|
|
|
|
|
|
|
:picker-options="pickerOptions" |
|
|
|
|
|
|
|
/> |
|
|
|
|
|
|
|
</el-radio-group> |
|
|
|
</el-radio-group> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<!-- <div class="personal-block"> |
|
|
|
<!-- <div class="personal-block"> |
|
|
@ -133,26 +85,12 @@ |
|
|
|
|
|
|
|
|
|
|
|
<span class="dialog-footer"> |
|
|
|
<span class="dialog-footer"> |
|
|
|
<template> |
|
|
|
<template> |
|
|
|
<el-button |
|
|
|
<el-button style="margin-right: 20px;" type="info" @click=" |
|
|
|
style="margin-right: 20px;" |
|
|
|
controlWindows.dialogAdjustStrategyPiliangAdd = false |
|
|
|
type="info" |
|
|
|
">取 消</el-button> |
|
|
|
@click=" |
|
|
|
<el-popconfirm confirm-button-text="确定" cancel-button-text="取消" icon="el-icon-info" icon-color="red" |
|
|
|
controlWindows.dialogAdjustStrategyPiliangAdd = false |
|
|
|
title="一旦提交,将立即生效!是否确认提交?" placement="top" @onConfirm="confirm"> |
|
|
|
" |
|
|
|
<el-button type="primary" slot="reference">提交</el-button> |
|
|
|
>取 消</el-button |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<el-popconfirm |
|
|
|
|
|
|
|
confirm-button-text="确定" |
|
|
|
|
|
|
|
cancel-button-text="取消" |
|
|
|
|
|
|
|
icon="el-icon-info" |
|
|
|
|
|
|
|
icon-color="red" |
|
|
|
|
|
|
|
title="一旦提交,将立即生效!是否确认提交?" |
|
|
|
|
|
|
|
placement="top" |
|
|
|
|
|
|
|
@onConfirm="confirm" |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
<el-button type="primary" slot="reference" |
|
|
|
|
|
|
|
>提交</el-button |
|
|
|
|
|
|
|
> |
|
|
|
|
|
|
|
</el-popconfirm> |
|
|
|
</el-popconfirm> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</span> |
|
|
|
</span> |
|
|
@ -164,6 +102,12 @@ |
|
|
|
import AdjustTask from "@/api/AdjustTask/AdjustTask"; |
|
|
|
import AdjustTask from "@/api/AdjustTask/AdjustTask"; |
|
|
|
import { parseTime } from "@/utils/disableTime.js"; |
|
|
|
import { parseTime } from "@/utils/disableTime.js"; |
|
|
|
import moment from "moment"; |
|
|
|
import moment from "moment"; |
|
|
|
|
|
|
|
let xxx = () => { |
|
|
|
|
|
|
|
let b = new Date(); |
|
|
|
|
|
|
|
// 获取分钟设置分钟 |
|
|
|
|
|
|
|
b.setMinutes(b.getMinutes() + 15); |
|
|
|
|
|
|
|
return `${b.getHours()}:${b.getMinutes()}:${b.getSeconds()} - 23:59:00` |
|
|
|
|
|
|
|
}; |
|
|
|
export default { |
|
|
|
export default { |
|
|
|
props: { |
|
|
|
props: { |
|
|
|
controlWindows: Object, |
|
|
|
controlWindows: Object, |
|
|
@ -180,15 +124,33 @@ export default { |
|
|
|
taskName: "", |
|
|
|
taskName: "", |
|
|
|
startTime: "", |
|
|
|
startTime: "", |
|
|
|
userCompany: this.$store.getters.user.userCompany, |
|
|
|
userCompany: this.$store.getters.user.userCompany, |
|
|
|
pickerOptions: { |
|
|
|
pickerOptions: { |
|
|
|
|
|
|
|
xxfn(){ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
disabledDate(time) { |
|
|
|
disabledDate(time) { |
|
|
|
return time.getTime() < Date.now() - 8.64e7; |
|
|
|
// return time.getTime() < Date.now() - 8.64e7; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Date对象 获取当前时间+加15分钟和每一个time作比较 如果小于 返回true 禁用 如果大于等于 返回false 启用 |
|
|
|
|
|
|
|
// 获取当前时间 |
|
|
|
|
|
|
|
let b = new Date(); |
|
|
|
|
|
|
|
// 获取分钟设置分钟 |
|
|
|
|
|
|
|
// b.setMinutes(b.getMinutes() + 15); |
|
|
|
|
|
|
|
b.setDate(b.getDate() -1) |
|
|
|
|
|
|
|
// 判断当前时间分钟大不大于设置分钟 |
|
|
|
|
|
|
|
if (time>b) { |
|
|
|
|
|
|
|
// 错误 |
|
|
|
|
|
|
|
return false |
|
|
|
|
|
|
|
// 正确 |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
return true |
|
|
|
|
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
selectableRange: |
|
|
|
selectableRange: xxx() |
|
|
|
parseTime( |
|
|
|
// parseTime( |
|
|
|
new Date(moment().format("YYYY-MM-DD HH:mm:ss")), |
|
|
|
// new Date(moment().add(15,'minutes').format("YYYY-MM-DD HH:mm:ss")), |
|
|
|
"{hh}:{ii}:{ss}" |
|
|
|
// "{hh}:{ii}:{ss}" |
|
|
|
) + "- 23:59:00" |
|
|
|
// ) + "- 23:59:00" |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
}; |
|
|
|
}, |
|
|
|
}, |
|
|
@ -285,9 +247,9 @@ export default { |
|
|
|
data, |
|
|
|
data, |
|
|
|
this.radio |
|
|
|
this.radio |
|
|
|
? { |
|
|
|
? { |
|
|
|
convertPersonalPrice: |
|
|
|
convertPersonalPrice: |
|
|
|
item.convertPersonalPrice |
|
|
|
item.convertPersonalPrice |
|
|
|
} |
|
|
|
} |
|
|
|
: {} |
|
|
|
: {} |
|
|
|
) |
|
|
|
) |
|
|
|
); |
|
|
|
); |
|
|
@ -334,26 +296,32 @@ export default { |
|
|
|
margin-top: 20px; |
|
|
|
margin-top: 20px; |
|
|
|
text-align: center; |
|
|
|
text-align: center; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
::v-deep { |
|
|
|
::v-deep { |
|
|
|
.el-divider--horizontal { |
|
|
|
.el-divider--horizontal { |
|
|
|
margin: 30px 0; |
|
|
|
margin: 30px 0; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.custom-dialog { |
|
|
|
.custom-dialog { |
|
|
|
border-radius: 15px; |
|
|
|
border-radius: 15px; |
|
|
|
|
|
|
|
|
|
|
|
// .el-dialog__header { |
|
|
|
// .el-dialog__header { |
|
|
|
// padding: 10px 20px !important; |
|
|
|
// padding: 10px 20px !important; |
|
|
|
// } |
|
|
|
// } |
|
|
|
.el-dialog__body { |
|
|
|
.el-dialog__body { |
|
|
|
padding: 0 20px 10px; |
|
|
|
padding: 0 20px 10px; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.adjust-frame { |
|
|
|
.adjust-frame { |
|
|
|
position: relative; |
|
|
|
position: relative; |
|
|
|
> p { |
|
|
|
|
|
|
|
|
|
|
|
>p { |
|
|
|
margin: 0; |
|
|
|
margin: 0; |
|
|
|
color: #333; |
|
|
|
color: #333; |
|
|
|
font-size: 15px; |
|
|
|
font-size: 15px; |
|
|
|
} |
|
|
|
} |
|
|
|
> .close { |
|
|
|
|
|
|
|
|
|
|
|
>.close { |
|
|
|
position: absolute; |
|
|
|
position: absolute; |
|
|
|
width: 35px; |
|
|
|
width: 35px; |
|
|
|
height: 35px; |
|
|
|
height: 35px; |
|
|
@ -362,24 +330,30 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.exhibition { |
|
|
|
.exhibition { |
|
|
|
padding: 0; |
|
|
|
padding: 0; |
|
|
|
|
|
|
|
|
|
|
|
li { |
|
|
|
li { |
|
|
|
display: flex; |
|
|
|
display: flex; |
|
|
|
margin-bottom: 15px; |
|
|
|
margin-bottom: 15px; |
|
|
|
|
|
|
|
|
|
|
|
span { |
|
|
|
span { |
|
|
|
flex: 1; |
|
|
|
flex: 1; |
|
|
|
|
|
|
|
|
|
|
|
&:nth-of-type(1) { |
|
|
|
&:nth-of-type(1) { |
|
|
|
color: #a9a9a9; |
|
|
|
color: #a9a9a9; |
|
|
|
padding-right: 15px; |
|
|
|
padding-right: 15px; |
|
|
|
text-align: right; |
|
|
|
text-align: right; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
&:nth-of-type(2) { |
|
|
|
&:nth-of-type(2) { |
|
|
|
text-align: left; |
|
|
|
text-align: left; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.tip { |
|
|
|
.tip { |
|
|
|
display: block; |
|
|
|
display: block; |
|
|
|
width: 150px; |
|
|
|
width: 150px; |
|
|
@ -387,6 +361,7 @@ export default { |
|
|
|
line-height: 25px; |
|
|
|
line-height: 25px; |
|
|
|
color: #f00; |
|
|
|
color: #f00; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.special-exhibition { |
|
|
|
.special-exhibition { |
|
|
|
padding-right: 15px; |
|
|
|
padding-right: 15px; |
|
|
|
box-sizing: border-box; |
|
|
|
box-sizing: border-box; |
|
|
@ -395,34 +370,44 @@ export default { |
|
|
|
width: 220px; |
|
|
|
width: 220px; |
|
|
|
line-height: 30px; |
|
|
|
line-height: 30px; |
|
|
|
background: rgba(211, 211, 211, 0.5); |
|
|
|
background: rgba(211, 211, 211, 0.5); |
|
|
|
> span { |
|
|
|
|
|
|
|
|
|
|
|
>span { |
|
|
|
flex: 1; |
|
|
|
flex: 1; |
|
|
|
|
|
|
|
|
|
|
|
&:nth-of-type(1) { |
|
|
|
&:nth-of-type(1) { |
|
|
|
text-align: right; |
|
|
|
text-align: right; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
&:nth-of-type(2) { |
|
|
|
&:nth-of-type(2) { |
|
|
|
text-align: left; |
|
|
|
text-align: left; |
|
|
|
padding-left: 20px; |
|
|
|
padding-left: 20px; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
> input { |
|
|
|
|
|
|
|
|
|
|
|
>input { |
|
|
|
width: 100px; |
|
|
|
width: 100px; |
|
|
|
height: 20px; |
|
|
|
height: 20px; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.addStyle .el-form-item--medium .el-form-item__label { |
|
|
|
.addStyle .el-form-item--medium .el-form-item__label { |
|
|
|
text-align: start; |
|
|
|
text-align: start; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.addStyle .el-form-item__content .el-radio-group { |
|
|
|
.addStyle .el-form-item__content .el-radio-group { |
|
|
|
box-shadow: none !important; |
|
|
|
box-shadow: none !important; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.titleStyle { |
|
|
|
.titleStyle { |
|
|
|
display: flex; |
|
|
|
display: flex; |
|
|
|
|
|
|
|
|
|
|
|
div { |
|
|
|
div { |
|
|
|
margin-left: auto; |
|
|
|
margin-left: auto; |
|
|
|
margin-right: 45px; |
|
|
|
margin-right: 45px; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.el-form-item--medium { |
|
|
|
.el-form-item--medium { |
|
|
|
|
|
|
|
|
|
|
|
.el-form-item__label, |
|
|
|
.el-form-item__label, |
|
|
|
.el-form-item__content { |
|
|
|
.el-form-item__content { |
|
|
|
line-height: 17px; |
|
|
|
line-height: 17px; |
|
|
@ -430,14 +415,17 @@ export default { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.dialog-footer { |
|
|
|
.dialog-footer { |
|
|
|
display: flex; |
|
|
|
display: flex; |
|
|
|
justify-content: end; |
|
|
|
justify-content: end; |
|
|
|
margin-bottom: 10px; |
|
|
|
margin-bottom: 10px; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.mubiaocelue { |
|
|
|
.mubiaocelue { |
|
|
|
display: flex; |
|
|
|
display: flex; |
|
|
|
flex-direction: column; |
|
|
|
flex-direction: column; |
|
|
|
|
|
|
|
|
|
|
|
div { |
|
|
|
div { |
|
|
|
margin: 10px 0; |
|
|
|
margin: 10px 0; |
|
|
|
} |
|
|
|
} |
|
|
|