xxxxxxxxxx
1
odoo.define('funenc_driver.run_plan_client)', function (require) {
2
"use strict";
3
4
var core = require('web.core');
5
var Widget = require('web.Widget');
6
7
var run_plan_client = Widget.extend({
8
app: undefined,
9
plan_id: undefined,
10
res: undefined,
11
init: function (parent, action) {
12
this._super.apply(this, arguments)
13
this.plan_id = action.context.active_id || action.params.active_id
14
var datas = action.context.params.train_datas
15
var arr = []
16
for (var i in datas) {
17
arr.push({
18
'name': i,
19
'trains': datas[i]
20
})
21
}
22
this.train_datas = arr;
23
this.train_datas_old = datas;
24
},
25
26
willStart: function () {
27
var self = this
28
return this._rpc({
29
model: 'vue_template_manager.template_manage',
30
method: 'get_template_content',
31
kwargs: {module_name: 'funenc_driver', template_name: 'run_plan_client'}
32
}).then(function (res) {
33
self.template = res;
34
})
35
},
36
37
renderElement: function () {
38
var template = this.template;
39
this.replaceElement($(template));
40
},
41
42
start: function () {
43
var self = this;
44
45
setTimeout(() => {
46
self.app = new Vue({
47
el: '#funenc_driver_run_plan_box',
48
data: function () {
49
return {
50
plan_id: self.plan_id,
51
table_data: self.train_datas,
52
table_data_old: self.train_datas_old,
53
driver_select_dlg: false,
54
driver_select_form: {
55
tableno:'',
56
trainno:'',
57
siteno:'',
58
type:'',
59
driver_type: '早',
60
driver_value: 1,
61
}
62
}
63
},
64
65
methods: {
66
onSubmit() {
67
self._rpc({
68
model: 'funenc_driver.funenc_run_plans',
69
method: 'savePlan',
70
args: [self.plan_id, this.table_data_old]
71
}).then(function(action) {
72
this.$notify({
73
title: '提示',
74
message: '保存数据成功!'
75
});
76
})
77
},
78
selectClass(tableno, trainno, siteno, type) {
79
/*
80
排班
81
tableno:表号
82
trainno:车号
83
siteno:站号
84
type:类型(1-出勤,2-交班,3-接班)
85
*/
86
this.driver_select_form.tableno=tableno;
87
this.driver_select_form.trainno=trainno;
88
this.driver_select_form.siteno=siteno;
89
this.driver_select_form.type=type;
90
this.driver_select_dlg=true;
91
92
},
93
cancel_select_driver() {
94
var name = '';
95
var tno=this.driver_select_form.tableno;
96
var tano=this.driver_select_form.trainno;
97
var sno = this.driver_select_form.siteno;
98
if(this.driver_select_form.type==1){
99
name = 'driver';
100
}else if(this.driver_select_form.type==2){
101
name = 'prev_driver';
102
}else{
103
name = 'driver';
104
}
105
this.table_data[tno]['trains'][tano]['train_datas'][sno][name] = '';
106
this.table_data_old[tno][tano]['train_datas'][sno][name] = '';
107
this.driver_select_dlg = false;
108
},
109
on_select_driver() {
110
var name = '';
111
var tno=this.driver_select_form.tableno;
112
var tano=this.driver_select_form.trainno;
113
var sno = this.driver_select_form.siteno;
114
var dtype=this.driver_select_form.driver_type;
115
var dvalue=this.driver_select_form.driver_value;
116
if(this.driver_select_form.type==1){
117
name = 'driver';
118
}else if(this.driver_select_form.type==2){
119
name = 'prev_driver';
120
}else{
121
name = 'driver';
122
}
123
this.table_data[tno]['trains'][tano]['train_datas'][sno][name] = dtype+dvalue;
124
this.table_data_old[tno][tano]['train_datas'][sno][name] = dtype+dvalue;
125
this.driver_select_dlg = false;
126
},
127
128
}
129
})
130
131
self.$el.show()
132
}, 0);
133
}
134
});
135
136
core.action_registry.add('run_plan_client', run_plan_client);
137
return run_plan_client;
138
});
已复制