<template>
|
<el-dialog
|
title="订单场控"
|
:close-on-click-modal="false"
|
:visible.sync="visible"
|
append-to-body
|
width="480px"
|
@close="handClose"
|
>
|
<el-form
|
:model="dataForm"
|
:rules="dataRule"
|
ref="dataForm"
|
label-width="120px"
|
@keyup.enter.native="dataFormSubmit()"
|
>
|
<el-form-item label="订单号">
|
<el-input v-model="dataForm.orderNo" disabled></el-input>
|
</el-form-item>
|
<el-form-item label="场控方向" prop="profitLoss">
|
<el-radio-group v-model="dataForm.profitLoss">
|
<el-radio label="profit">盈利</el-radio>
|
<el-radio label="loss">亏损</el-radio>
|
</el-radio-group>
|
</el-form-item>
|
</el-form>
|
<span slot="footer" class="dialog-footer">
|
<el-button @click="visible = false">取消</el-button>
|
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
</span>
|
</el-dialog>
|
</template>
|
|
<script>
|
import { Debounce } from "@/utils/debounce";
|
|
export default {
|
data() {
|
return {
|
visible: false,
|
dataForm: {
|
orderNo: "",
|
profitLoss: "profit",
|
},
|
dataRule: {
|
profitLoss: [
|
{ required: true, message: "请选择场控方向", trigger: "change" },
|
],
|
},
|
};
|
},
|
methods: {
|
init(row) {
|
this.visible = true;
|
this.dataForm.orderNo = row.orderNo;
|
let profitLoss = "profit";
|
if (row.profitLoss === "loss" || row.profitLoss === "profit") {
|
profitLoss = row.profitLoss;
|
} else if (row.profitLosssStr === "亏损") {
|
profitLoss = "loss";
|
} else if (row.profitLosssStr === "盈利") {
|
profitLoss = "profit";
|
}
|
this.dataForm.profitLoss = profitLoss;
|
this.$nextTick(() => {
|
if (this.$refs.dataForm) {
|
this.$refs.dataForm.clearValidate();
|
}
|
});
|
},
|
handClose() {
|
this.dataForm = {
|
orderNo: "",
|
profitLoss: "profit",
|
};
|
this.$nextTick(() => {
|
if (this.$refs.dataForm) {
|
this.$refs.dataForm.clearValidate();
|
}
|
});
|
},
|
dataFormSubmit: Debounce(function () {
|
this.$refs.dataForm.validate((valid) => {
|
if (!valid) {
|
return;
|
}
|
this.$http({
|
url: this.$http.adornUrl(
|
"/normal/adminFuturesOrderAction!/orderProfitLoss.action"
|
),
|
method: "get",
|
params: this.$http.adornParams({
|
orderNo: this.dataForm.orderNo,
|
profitLoss: this.dataForm.profitLoss,
|
}),
|
}).then(({ data }) => {
|
if (data.code == 0) {
|
this.$message({
|
message: "操作成功",
|
type: "success",
|
duration: 1500,
|
onClose: () => {
|
this.visible = false;
|
this.$emit("refreshDataList");
|
},
|
});
|
} else {
|
this.$message({
|
message: data.msg,
|
type: "error",
|
});
|
}
|
});
|
});
|
}),
|
},
|
};
|
</script>
|