|
|
@@ -243,8 +243,8 @@
|
|
|
page_size:100, //用户分页的数目
|
|
|
listLoading: false, //用户表的loading效果
|
|
|
sels: [], //用户表 列表选中列
|
|
|
-
|
|
|
-
|
|
|
+ pages:[],
|
|
|
+
|
|
|
|
|
|
dialogVisible:false, //控制是否显示锁屏
|
|
|
child_num:0, //控制进度条的进度
|
|
|
@@ -452,6 +452,8 @@
|
|
|
this.loading_insert = false;
|
|
|
this.listLoading = true;
|
|
|
var __that__ = this;
|
|
|
+ var volume = __that__.order_data['0'].VOLUME;
|
|
|
+
|
|
|
this.$api.post('/api/index/index/getuser',para,response => {
|
|
|
if (response.status == 200 && response.status < 300) {
|
|
|
let { msg, code ,user} = response.data;
|
|
|
@@ -462,7 +464,8 @@
|
|
|
user.forEach(element => {
|
|
|
if(element.BALANCE<__that__.filters.step){
|
|
|
if( element.BALANCE>=__that__.filters.tolerance){
|
|
|
- element.handsnum = 0.01;
|
|
|
+
|
|
|
+ element.handsnum = 0.01*volume;
|
|
|
element.ladder =1;
|
|
|
}else{
|
|
|
element.handsnum = __that__.toDecimal2(0);
|
|
|
@@ -505,10 +508,11 @@
|
|
|
handleCurrentChange(val) {
|
|
|
this.page = val;
|
|
|
this.userdata = this.users.slice((this.page-1)*this.page_size,this.page*this.page_size);
|
|
|
+
|
|
|
},
|
|
|
handleSizeChange(val) {
|
|
|
this.page_size = val;
|
|
|
- this.page = 1;
|
|
|
+ this.page = 1;
|
|
|
this.userdata = this.users.slice((this.page-1)*this.page_size,this.page*this.page_size);
|
|
|
},
|
|
|
//rollback中数据和分页的对应
|
|
|
@@ -552,17 +556,21 @@
|
|
|
if (response.status == 200 && response.status < 300) {
|
|
|
let { msg, code } = response.data;
|
|
|
if(code=="00"){
|
|
|
- console.log('插入函数');
|
|
|
+ console.log('插入函数');
|
|
|
+
|
|
|
for (let index = 0; index < _this.sels.length; index++) {
|
|
|
const element = _this.sels[index];
|
|
|
if(element.state !=0){
|
|
|
_this.$message.error("含有做过的单");
|
|
|
return false;
|
|
|
}else{
|
|
|
- var min = this.filters.tolerance;
|
|
|
- if(_this.filters.step < _this.filters.tolerance)
|
|
|
- min = this.filters.step;
|
|
|
- if(element.BALANCE<min){
|
|
|
+ var min = parseInt(_this.filters.tolerance);
|
|
|
+ if(parseInt(_this.filters.step) < parseInt(_this.filters.tolerance)){
|
|
|
+
|
|
|
+ min = parseInt(_this.filters.step);
|
|
|
+ }
|
|
|
+
|
|
|
+ if(parseInt(element.BALANCE)<min){
|
|
|
|
|
|
_this.sels.splice(index,1); //删除手数为0的元素
|
|
|
index = index-1; //因为数组会改变,所以长度也会变化
|
|
|
@@ -571,6 +579,8 @@
|
|
|
element.step = _this.filters.step; //加入步长的计算
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
if(_this.sels.length==0){
|
|
|
_this.$message.error("没有任何选择");
|
|
|
return false;
|
|
|
@@ -582,7 +592,7 @@
|
|
|
data_insert.type = 'vue_insert';
|
|
|
data_insert.orderid = _this.filters.orderid;
|
|
|
data_insert.data = _this.sels; //数组的格式(多个数据发送过去)
|
|
|
-
|
|
|
+
|
|
|
//发送socket
|
|
|
_this.socket.send(JSON.stringify(data_insert));
|
|
|
|
|
|
@@ -622,72 +632,6 @@
|
|
|
//失败订单insert
|
|
|
ErrorInsert:function() {
|
|
|
|
|
|
- /*var _this = this;
|
|
|
- this.$confirm('确认操作吗?', '提示', {
|
|
|
- //type: 'warning'
|
|
|
- }).then(() => {
|
|
|
-
|
|
|
- console.log('ErrorInsert函数');
|
|
|
- // 二次确认密码
|
|
|
- this.$prompt('请输入密码', '提示', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- }).then(({ value }) => {
|
|
|
- var loginParams = { password: value,nickname:JSON.parse(sessionStorage.getItem('user'))};
|
|
|
- // 向后台请求密码的正确性
|
|
|
- _this.$api.post('/api/index/index/querypassword',loginParams, response => {
|
|
|
- if (response.status == 200 && response.status < 300) {
|
|
|
- let { msg, code } = response.data;
|
|
|
- if(code=="00"){
|
|
|
- console.log('ErrorInsert');
|
|
|
- // 验证成功开始执行rollback操作 retry_sels
|
|
|
-
|
|
|
- if(_this.retry_sels.length==0){
|
|
|
- _this.$message.error("没有任何选择");
|
|
|
- return false;
|
|
|
- }
|
|
|
- _this.retry_index =0;
|
|
|
- _this.loading_retry = true;
|
|
|
- _this.dialogVisible = true;
|
|
|
-
|
|
|
- let data_insert={};
|
|
|
- data_insert.type = 'vue_insert';
|
|
|
-
|
|
|
- data_insert.message = 'ErrorInsert';
|
|
|
- for( var i in _this.retry_sels){
|
|
|
-
|
|
|
- _this.retry_sels[i].LOGIN = parseInt(_this.retry_sels[i].dest_login);
|
|
|
- _this.retry_sels[i].ladder = parseInt(_this.retry_sels[i].percentage);
|
|
|
- }
|
|
|
- data_insert.orderid = _this.filters.orderid;
|
|
|
- data_insert.data = _this.retry_sels;
|
|
|
- console.log(data_insert); return false;
|
|
|
- // 发送socket
|
|
|
- _this.socket.send(JSON.stringify(data_insert));
|
|
|
-
|
|
|
- }else{
|
|
|
- this.logining = false;
|
|
|
- this.$message.error(msg);
|
|
|
- }
|
|
|
- } else {
|
|
|
- this.logining = false;
|
|
|
- console.log(response.message);
|
|
|
- }
|
|
|
- });
|
|
|
- }).catch(() => {
|
|
|
- this.$message({
|
|
|
- type: 'info',
|
|
|
- message: '取消输入'
|
|
|
- });
|
|
|
- });
|
|
|
-
|
|
|
- }).catch(() => {
|
|
|
-
|
|
|
- console.log("取消了");
|
|
|
- });*/
|
|
|
-
|
|
|
-
|
|
|
- //-----------------------------------------
|
|
|
|
|
|
var _this = this;
|
|
|
this.$confirm('确认Retry操作吗?', '提示', {
|
|
|
@@ -712,7 +656,7 @@
|
|
|
if (response.status == 200 && response.status < 300) {
|
|
|
let { msg, code } = response.data;
|
|
|
if(code=="00"){
|
|
|
- console.log(_this.retry_sels);
|
|
|
+
|
|
|
var retry_obj =[]; //空数组
|
|
|
_this.retry_sels.forEach(element => {
|
|
|
retry_obj.push(element.dest_login); //获取到数组的login数据
|
|
|
@@ -733,10 +677,11 @@
|
|
|
data_arr.push(o);
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+
|
|
|
+
|
|
|
//获取到数据
|
|
|
data_arr.forEach((element,index) => {
|
|
|
- _this.retry_sels.forEach(element1 => {
|
|
|
+ _this.retry_sels.forEach((element1,index) => {
|
|
|
|
|
|
// 对所有的数据重新进行更新梯度操作
|
|
|
if(element[element1.dest_login]){
|
|
|
@@ -754,6 +699,7 @@
|
|
|
_this.$set(element1,'ladder',parseInt(balance/_this.filters.step));
|
|
|
}
|
|
|
|
|
|
+
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
@@ -865,192 +811,20 @@
|
|
|
this.Rollback(); //发送数据
|
|
|
},
|
|
|
|
|
|
- // retry表中的数据进行 rollback
|
|
|
- Rollback_retry(){
|
|
|
- var _this = this;
|
|
|
- this.$confirm('确认rollback吗?', '提示', {
|
|
|
- //type: 'warning'
|
|
|
- }).then(() => {
|
|
|
-
|
|
|
- this.$prompt('请输入密码', '提示', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- }).then(({ value }) => {
|
|
|
- var loginParams = { password: value,nickname:JSON.parse(sessionStorage.getItem('user'))};
|
|
|
- // 向后台请求密码的正确性
|
|
|
- _this.$api.post('/api/index/index/querypassword',loginParams, response => {
|
|
|
- if (response.status == 200 && response.status < 300) {
|
|
|
- let { msg, code } = response.data;
|
|
|
- if(code=="00"){
|
|
|
- console.log('retry表中rollback');
|
|
|
-
|
|
|
- // 验证成功开始执行retry表中的rollback操作
|
|
|
- if(_this.retry_sels.length==0){
|
|
|
- _this.$message.error("没有任何选择");
|
|
|
- return false;
|
|
|
- }
|
|
|
-
|
|
|
- _this.retry_index =0;
|
|
|
- _this.loading_retry = true;
|
|
|
- _this.dialogVisible = true;
|
|
|
- let data_insert={};
|
|
|
- data_insert.type = 'vue_except_rollback';
|
|
|
- data_insert.data = _this.retry_sels;
|
|
|
- // 发送socket
|
|
|
- _this.socket.send(JSON.stringify(data_insert));
|
|
|
-
|
|
|
- }else{
|
|
|
- this.logining = false;
|
|
|
- this.$message.error(msg);
|
|
|
- }
|
|
|
- } else {
|
|
|
- this.logining = false;
|
|
|
- console.log(response.message);
|
|
|
- }
|
|
|
- });
|
|
|
- }).catch(() => {
|
|
|
- this.$message({
|
|
|
- type: 'info',
|
|
|
- message: '取消输入'
|
|
|
- });
|
|
|
- });
|
|
|
- }).catch(() => {
|
|
|
- console.log("取消了");
|
|
|
- });
|
|
|
-
|
|
|
- },
|
|
|
-
|
|
|
- // retry表中的数据进行 rollback全部
|
|
|
- Rollback_retry_all(){
|
|
|
- this.retry_sels = this.retrydata; //将所有的数据传递给retry_sels
|
|
|
- this.Rollback_retry(); //执行Rollback_retry函数
|
|
|
- },
|
|
|
-
|
|
|
-
|
|
|
- //retry 函数
|
|
|
- Retry:function(params) {
|
|
|
- var _this = this;
|
|
|
- this.$confirm('确认Retry操作吗?', '提示', {
|
|
|
- //type: 'warning'
|
|
|
- }).then(() => {
|
|
|
- console.log('retry函数');
|
|
|
- this.$prompt('请输入密码', '提示', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- }).then(({ value }) => {
|
|
|
- if(!(_this.filters.step)){
|
|
|
- this.$message.error("请填写Step信息");
|
|
|
- return false;
|
|
|
- }
|
|
|
- if(!(_this.filters.tolerance)){
|
|
|
- this.$message.error("请填写Tolerance信息");
|
|
|
- return false;
|
|
|
- }
|
|
|
- var loginParams = { password: value,nickname:JSON.parse(sessionStorage.getItem('user'))};
|
|
|
- // 向后台请求密码的正确性
|
|
|
- _this.$api.post('/api/index/index/querypassword',loginParams, response => {
|
|
|
- if (response.status == 200 && response.status < 300) {
|
|
|
- let { msg, code } = response.data;
|
|
|
- if(code=="00"){
|
|
|
- console.log(_this.retry_sels);
|
|
|
- var retry_obj =[]; //空数组
|
|
|
- _this.retry_sels.forEach(element => {
|
|
|
- retry_obj.push(element.dest_login); //获取到数组的login数据
|
|
|
- });
|
|
|
-
|
|
|
- // 重新更新retry中数据的 percentage 的数据
|
|
|
- _this.$api.post('/api/index/index/update_percentage',retry_obj, response => {
|
|
|
- if (response.status == 200 && response.status < 300) {
|
|
|
- let { msg, code , data} = response.data;
|
|
|
-
|
|
|
- //对请求的数量进行格式的梳理
|
|
|
- if(code=="00"){
|
|
|
- var data_arr = []
|
|
|
- for (let i in data) {
|
|
|
- let o = {};
|
|
|
- o[i] = data[i];
|
|
|
- data_arr.push(o);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- //获取到数据
|
|
|
- data_arr.forEach((element,index) => {
|
|
|
- _this.retry_sels.forEach(element1 => {
|
|
|
-
|
|
|
- // 对所有的数据重新进行更新梯度操作
|
|
|
- if(element[element1.dest_login]){
|
|
|
- let balance = element[element1.dest_login]; //获取到的余额 percentage
|
|
|
- if(balance<_this.filters.step && balance>_this.filters.tolerance){
|
|
|
- _this.$set(element1,'percentage',1);
|
|
|
- }else{
|
|
|
- _this.$set(element1,'percentage',parseInt(balance/_this.filters.step));
|
|
|
- }
|
|
|
- }
|
|
|
- });
|
|
|
- });
|
|
|
-
|
|
|
- if(_this.retry_sels.length==0){
|
|
|
- _this.$message.error("没有任何选择");
|
|
|
- return false;
|
|
|
- }
|
|
|
-
|
|
|
- //对改变完成的数据进行发送
|
|
|
- _this.retry_index =0;
|
|
|
- _this.loading_retry = true;
|
|
|
- _this.dialogVisible = true;
|
|
|
- let data_insert={};
|
|
|
- data_insert.type = 'vue_retry';
|
|
|
- data_insert.data = _this.retry_sels;
|
|
|
- // 发送socket
|
|
|
- _this.socket.send(JSON.stringify(data_insert));
|
|
|
-
|
|
|
- }else{
|
|
|
- console.log(response.msg);
|
|
|
- }
|
|
|
- } else {
|
|
|
- console.log(response.message);
|
|
|
- }
|
|
|
- });
|
|
|
-
|
|
|
- }else{
|
|
|
- this.logining = false;
|
|
|
- this.$message.error(msg);
|
|
|
- }
|
|
|
- } else {
|
|
|
- this.logining = false;
|
|
|
- console.log(response.message);
|
|
|
- }
|
|
|
- });
|
|
|
- }).catch(() => {
|
|
|
- this.$message({
|
|
|
- type: 'info',
|
|
|
- message: '取消输入'
|
|
|
- });
|
|
|
- });
|
|
|
- }).catch(() => {
|
|
|
- console.log("取消了");
|
|
|
- });
|
|
|
-
|
|
|
- },
|
|
|
-
|
|
|
- //retry表中 retry执行全部
|
|
|
- Retry_all(){
|
|
|
- this.retry_sels = this.retrydata; //将所有的数据传递给retry_sels
|
|
|
- this.Retry(); //执行Retry函数
|
|
|
- },
|
|
|
-
|
|
|
+
|
|
|
// socket连接函数
|
|
|
connect: function () {
|
|
|
- var _that_ = this;
|
|
|
- this.socket = new WebSocket('ws://47.106.182.13:12382');
|
|
|
+ var _that_ = this;
|
|
|
+ //this.socket = new WebSocket('ws://127.0.0.1:12380');
|
|
|
+ //this.socket = new WebSocket('ws://47.106.182.13:12382');
|
|
|
//this.socket = new WebSocket('ws://154.218.25.112:12381');
|
|
|
//this.socket = new WebSocket('ws://120.25.77.133:12382');
|
|
|
- //this.socket = new WebSocket('ws://127.0.0.1:12382');
|
|
|
+ this.socket = new WebSocket('ws://154.206.44.109:12380');
|
|
|
//连接成功后的回调函数
|
|
|
this.socket.onopen = function () {
|
|
|
- clearInterval(this.reConnect);
|
|
|
+ clearInterval(_that_.reConnect);
|
|
|
//this.reConnect = null;
|
|
|
- //console.log('已连接');
|
|
|
+ console.log('已连接');
|
|
|
_that_.heartbeatStart();
|
|
|
};
|
|
|
|
|
|
@@ -1069,24 +843,28 @@
|
|
|
case "insert": //插入发送内容
|
|
|
var insert_data = msg['dest']; //将数组数据传递过去
|
|
|
_that_.insert_index+=insert_data.length;
|
|
|
- console.log("insert执行了");
|
|
|
+ //console.log("insert执行了");
|
|
|
var arraylog=[_that_.insert_index,_that_.sels.length];
|
|
|
_that_.bugout.log(arraylog);
|
|
|
|
|
|
_that_.child_num = (Math.round(_that_.insert_index / _that_.sels.length * 10000) / 100.00);
|
|
|
- console.log(_that_.child_num);
|
|
|
+ //console.log(_that_.child_num);
|
|
|
if(_that_.sels.length == _that_.insert_index){
|
|
|
// 全部执行完成后,对所有不是失败的数据,进行成功操作
|
|
|
+
|
|
|
_that_.sels.forEach((element1,index) => {
|
|
|
if(element1.state == 0){
|
|
|
_that_.$set(element1,'state',100); //成功的订单
|
|
|
- }
|
|
|
- });
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ );
|
|
|
_that_.loading_insert = false;
|
|
|
_that_.insert_index = 0;
|
|
|
_that_.dialogVisible = false;
|
|
|
_that_.child_num = 0;
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
insert_data.forEach(element => {
|
|
|
if(element['error_code']!=0){
|
|
|
_that_.sels.forEach((element1,index) => {
|
|
|
@@ -1096,6 +874,7 @@
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
+
|
|
|
break;
|
|
|
case "rollback": //Rollback请求
|
|
|
var rollback_data = msg['desc']; //将数组数据传递过去
|
|
|
@@ -1127,38 +906,6 @@
|
|
|
}
|
|
|
});
|
|
|
break;
|
|
|
- case "except_rollback": //Rollback请求
|
|
|
- console.log('except_rollback');
|
|
|
- var except_rollback_data = msg['desc'];
|
|
|
- _that_.retry_index+=except_rollback_data.length;
|
|
|
- var arraylog=[_that_.retry_index,_that_.retry_sels.length];
|
|
|
- _that_.bugout.log(arraylog);
|
|
|
- _that_.child_num = (Math.round(_that_.retry_index / _that_.retry_sels.length * 10000) / 100.00);
|
|
|
-
|
|
|
- if(_that_.retry_sels.length == _that_.retry_index){
|
|
|
- _that_.loading_retry = false;
|
|
|
- _that_.retry_index = 0;
|
|
|
- _that_.dialogVisible= false;
|
|
|
- _that_.child_num = 0;
|
|
|
- }
|
|
|
- except_rollback_data.forEach(element => {
|
|
|
- if(element['error_code']!=0){
|
|
|
- //rollback不成功了 将状态更新为失败
|
|
|
- _that_.retry_sels.forEach((element1,index) => {
|
|
|
- if(element1.dest_login==element['dest_login']){
|
|
|
- _that_.$set(element1,'state',element['error_code']);
|
|
|
- }
|
|
|
- });
|
|
|
- }else{
|
|
|
- //对所有不是失败的订单,变为成功的状态
|
|
|
- _that_.retry_sels.forEach((element2,index) => {
|
|
|
- if(element2.dest_login==element['dest_login']){
|
|
|
- _that_.$set(element2,'state',100);
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- break;
|
|
|
case "ErrorInsert":
|
|
|
var retry_datas = msg['dest'];
|
|
|
console.log("ErrorInsert");
|
|
|
@@ -1194,38 +941,6 @@
|
|
|
}
|
|
|
});
|
|
|
break;
|
|
|
- case "retry": //Retry请求
|
|
|
- console.log('retry');
|
|
|
- var retry_data = msg['desc'];
|
|
|
- _that_.retry_index+=retry_data.length; //retry_index的长度变化
|
|
|
- var arraylog=[_that_.retry_index,_that_.retry_sels.length];
|
|
|
- _that_.bugout.log(arraylog);
|
|
|
- _that_.child_num = (Math.round(_that_.retry_index / _that_.retry_sels.length * 10000) / 100.00); //进度条变化
|
|
|
-
|
|
|
- if(_that_.retry_sels.length == _that_.retry_index){
|
|
|
- _that_.loading_retry = false;
|
|
|
- _that_.retry_index = 0;
|
|
|
- _that_.dialogVisible= false;
|
|
|
- _that_.child_num = 0;
|
|
|
- }
|
|
|
- retry_data.forEach(element => {
|
|
|
- if(element['error_code']!=0){
|
|
|
- //retry不成功了 将状态更新为失败
|
|
|
- _that_.retry_sels.forEach((element1,index) => {
|
|
|
- if(element1.dest_login==element['dest_login']){
|
|
|
- _that_.$set(element1,'state',element['error_code']);
|
|
|
- }
|
|
|
- });
|
|
|
- }else{
|
|
|
- //对所有不是失败的订单,变为成功的状态
|
|
|
- _that_.retry_sels.forEach((element2,index) => {
|
|
|
- if(element2.dest_login==element['dest_login']){
|
|
|
- _that_.$set(element2,'state',100);
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- break;
|
|
|
default:
|
|
|
console.log('未知接口');
|
|
|
break;
|
|
|
@@ -1235,6 +950,7 @@
|
|
|
|
|
|
//用于指定连接关闭后的回调函数
|
|
|
this.socket.onclose = function () {
|
|
|
+ var __that__ = this;
|
|
|
clearInterval(_that_.heartbeat); //清除 心跳检测函数
|
|
|
//_that_.heartbeat = null;
|
|
|
console.log("closed");
|