Commit 2f05fcb462858203561ee6ae4cab695e089de1e3

Authored by 王通
1 parent 57bcc36a

1.翻线路版本bug修复

src/main/resources/static/pages/base/lineversions/js/lineversions-add-from.js
1   -// 线路版本添加js
2   -(function(){
3   - //获取参数ID
4   - var id = $.url().param('no');
5   -
6   - $("#startDateInput").datetimepicker({
7   - format : 'YYYY-MM-DD HH:mm:ss',
8   - locale : 'zh-cn'
9   - });
10   -
11   - $("#endDateInput").datetimepicker({
12   - format : 'YYYY-MM-DD HH:mm:ss',
13   - locale : 'zh-cn'
14   - });
15   - // 初始化线路名称select
16   - lineAllInfo();
17   -
18   - function getComp (cb) {
19   - $.get('/user/companyData',null,function(rs) {
20   - var params = {};
21   - if(rs.length>0) {
22   - var compA = new Array();
23   - for(var c = 0 ; c<rs.length;c++) {
24   - var comC = rs[c].companyCode;
25   - var child = rs[c].children;
26   - if(child.length>0) {
27   - for(var d = 0 ;d< child.length;d++) {
28   - compA.push(comC + '_' + child[d].code);
29   - }
30   - }else {
31   - compA.push(comC);
32   - }
33   - }
34   - params.cgsbm_in = compA.toString();
35   - }
36   - return cb && cb(params);
37   - });
38   - }
39   -
40   - // 填充线路下拉框选择值
41   - function lineAllInfo(){
42   - getComp(function(params) {
43   - $get('/line/all', params, function(array){
44   - // get请求获取公司
45   - $get('/business/all', {upCode_eq: '88'}, function(compD){
46   - var len_ = array.length,paramsD = new Array();
47   - paramsD.push({'id':'','text':'请选择...'});
48   - if(len_>0) {
49   - $.each(array, function(i, g){
50   - if(g.name!='' || g.name != null) {
51   - paramsD.push({'id':g.id + '_' + g.lineCode,
52   - 'text':g.name + gsdmTogsName(compD,g.company)});
53   - }
54   - });
55   - if($('span').hasClass('select2-selection'))
56   - $('span .select2-selection').remove();
57   -
58   -
59   - initPinYinSelect2($('#lineSelect'),paramsD,function(selector) {
60   -// selector.select2("val", "请选择...");
61   - });
62   - }
63   - });
64   - });
65   - });
66   - }
67   -
68   - // 监听线路名称下拉框值改变事件.
69   - $('#lineSelect').on("change", function (e) {
70   - var lineSelectValue = $('#lineSelect').val();// 获取线路名称值.
71   - if(lineSelectValue=='' || lineSelectValue==null || lineSelectValue=="请选择...") {
72   - $('#lineCodeInput').val('');// 设值线路编码.
73   - $('#lineIdInput').val('');// 设值线路ID.
74   - }else {
75   - var lineSelectValueArray = lineSelectValue.split('_');// 切割线路名称值.
76   - $.get('/lineVersions/findByLineId',{'lineId':lineSelectValueArray[1]}, function(array){
77   - var type = true;
78   - $.each(array, function(){
79   - if(this.status == 2) {
80   - type = false;
81   - return;
82   - }
83   - });
84   - if(type) {
85   - $.get('/lineVersions/findAllHistroyLineVersionsById',{'lineId':lineSelectValueArray[1]}, function(lineVersions){
86   -// console.log(lineVersions);
87   -
88   - console.log($('#hisVersionsInput option'));
89   -
90   - if($('span .select2-selection').length > 1){
91   - $($('span .select2-selection')[1]).remove();
92   - $('#hisVersionsInput option').remove()
93   - }
94   -
95   - var paramsD = new Array();
96   -
97   - paramsD.push({'id':"",'text':""});
98   -
99   - for(var i = 0; i < lineVersions.length;i++){
100   - var g = lineVersions[i];
101   - paramsD.push({'id':g.versions,'text':g.name + '(' + g.versions + ")"});
102   - }
103   -
104   -
105   - initPinYinSelect2($('#hisVersionsInput'),paramsD,function(selector) {
106   -// console.log("123123312");
107   - selector.select2("", "");
108   - });
109   - });
110   -
111   -
112   - $.get('/lineVersions/findLineVersionsMax',{'lineId':lineSelectValueArray[1]}, function(lineVersionsMax){
113   - $('#versionsInput').val(++lineVersionsMax.versions);// 设值线路编码.
114   - });
115   -
116   - $.get('/lineVersions/findLineVersionsMax',{'lineId':lineSelectValueArray[1]}, function(lineVersionsMax){
117   - $('#versionsInput').val(++lineVersionsMax.versions);// 设值线路编码.
118   - });
119   - $('#lineIdInput').val(lineSelectValueArray[0]);// 设值线路编码.
120   - $('#lineCodeInput').val(lineSelectValueArray[1]);// 设值线路ID.
121   - } else {
122   - swal("每条线路只能有一个待更新版本,你选择的线路已有待更新版本,版本多了忙不过来,快去选择其他线路吧!");
123   - $('#lineSelect').select2("val", "请选择...");
124   - }
125   - });
126   - }
127   - });
128   -
129   - function gsdmTogsName(gsD,code) {
130   - var rsStr = '';
131   - for(var s = 0 ; s < gsD.length; s++) {
132   - if(gsD[s].businessCode == code) {
133   - rsStr = rsStr + '(' + gsD[s].businessName.replace('公司','') + ')';
134   - break;
135   - }
136   - }
137   - return rsStr;
138   - }
139   -
140   - // 切割线路名称值.获取线路ID及编码.
141   - function splitxlName(str) {
142   - var rsStr = '';
143   - if(str) {
144   - var strArray = str.split('_');
145   - rsStr = strArray[0];
146   - }
147   - return rsStr;
148   - }
149   -
150   - // 定义表单
151   - var form = $('#lineVersions_add_form');
152   - // 定义表单异常
153   - var error = $('.alert-danger',form);
154   - // 表单验证
155   - form.validate({
156   - // 错误提示元素span对象
157   - errorElement : 'span',
158   - // 错误提示元素class名称
159   - errorClass : 'help-block help-block-error',
160   - // 验证错误获取焦点
161   - focusInvalid : true,
162   - // 需要验证的表单元素
163   - rules : {
164   - 'name' : {required : true,maxlength: 30},// 线路名称 必填项、最大长度.
165   - 'line' : {required : true,maxlength: 30},// 线路名称 必填项、最大长度.
166   - 'startDate' : {required : true},// 启用时间 不为空.
167   - 'endDate' : {required : true},// 结束时间.
168   - 'versions' : {required : true, digits : true, maxlength: 10},// 版本号 必填项、数字、最大长度10.
169   -// 'status' : {required : true, digits : true, maxlength: 10},// 版本状态 必填项、数字、最大长度10.
170   - },
171   -
172   - /**
173   - * 类型:Callback。当未通过验证的表单提交时,可以在该回调函数中处理一些事情。
174   - *
175   - * 参数:该回调函数有两个参数:第一个为一个事件对象,第二个为验证器(validator)
176   - */
177   - invalidHandler : function(event, validator) {
178   - // 显示表单未通过提示信息
179   - error.show();
180   - // 把提示信息放到指定的位置。
181   - App.scrollTo(error, -200);
182   - },
183   -
184   - /**
185   - * 类型:Callback。
186   - *
187   - * 默认:添加errorClass("has-error")到表单元素。将未通过验证的表单元素设置高亮。
188   - */
189   - highlight : function(element) {
190   - // 添加errorClass("has-error")到表单元素
191   - $(element).closest('.form-group').addClass('has-error');
192   - },
193   -
194   - /**
195   - * 类型:Callback。
196   - *
197   - * 默认:移除errorClass("has-error")。与highlight操作相反
198   - */
199   - unhighlight : function(element) {
200   - // 移除errorClass("has-error")
201   - $(element).closest('.form-group').removeClass('has-error');
202   - },
203   -
204   - /**
205   - * 类型:String,Callback。
206   - *
207   - * 如果指定它,当验证通过时显示一个消息。
208   - *
209   - * 如果是String类型的,则添加该样式到标签中;
210   - *
211   - * 如果是一个回调函数,则将标签作为其唯一的参数。
212   - */
213   - success : function(label) {
214   - // 当验证通过时,移除errorClass("has-error")
215   - label.closest('.form-group').removeClass('has-error');
216   -
217   - },
218   - /**
219   - * 类型:Callback。
220   - *
221   - * 默认:default (native) form submit;当表单通过验证,提交表单。回调函数有个默认参数form
222   - */
223   - submitHandler : function(f) {
224   - // 隐藏错误提示
225   - error.hide();
226   - // 表单序列化
227   - var params = form.serializeJSON();
228   - submit();
229   - // 提交
230   - function submit() {
231   - // 防止用户多次提交
232   - $("#submintBtn").addClass("disabled");
233   - // 添加数据
234   - $post('/lineVersions/add', params, function(result) {
235   - // 如果返回结果不为空
236   - if(result){
237   - // 返回状态码为"SUCCESS" ,则添加成功;返回状态码为"ERROR" ,则添加失败
238   - if(result.status=='SUCCESS') {
239   - // 弹出添加成功提示消息
240   - layer.msg('添加成功...');
241   - } else if(result.status=='ERROR') {
242   - // 弹出添加失败提示消息
243   - layer.msg('添加失败...');
244   - }
245   - }
246   - // 返回list.html页面
247   - loadPage('list.html');
248   - });
249   - $("#submintBtn").removeClass("disabled");
250   - }
251   - }
252   - });
  1 +// 线路版本添加js
  2 +(function(){
  3 + //获取参数ID
  4 + var id = $.url().param('no');
  5 +
  6 + $("#startDateInput").datetimepicker({
  7 + format : 'YYYY-MM-DD HH:mm:ss',
  8 + locale : 'zh-cn'
  9 + });
  10 +
  11 + $("#endDateInput").datetimepicker({
  12 + format : 'YYYY-MM-DD HH:mm:ss',
  13 + locale : 'zh-cn'
  14 + });
  15 + // 初始化线路名称select
  16 + lineAllInfo();
  17 +
  18 + function getComp (cb) {
  19 + $.get('/user/companyData',null,function(rs) {
  20 + var params = {};
  21 + if(rs.length>0) {
  22 + var compA = new Array();
  23 + for(var c = 0 ; c<rs.length;c++) {
  24 + var comC = rs[c].companyCode;
  25 + var child = rs[c].children;
  26 + if(child.length>0) {
  27 + for(var d = 0 ;d< child.length;d++) {
  28 + compA.push(comC + '_' + child[d].code);
  29 + }
  30 + }else {
  31 + compA.push(comC);
  32 + }
  33 + }
  34 + params.cgsbm_in = compA.toString();
  35 + }
  36 + return cb && cb(params);
  37 + });
  38 + }
  39 +
  40 + // 填充线路下拉框选择值
  41 + function lineAllInfo(){
  42 + getComp(function(params) {
  43 + $get('/line/all', params, function(array){
  44 + // get请求获取公司
  45 + $get('/business/all', {upCode_eq: '88'}, function(compD){
  46 + var len_ = array.length,paramsD = new Array();
  47 + paramsD.push({'id':'','text':'请选择...'});
  48 + if(len_>0) {
  49 + $.each(array, function(i, g){
  50 + if(g.name!='' || g.name != null) {
  51 + paramsD.push({'id':g.id + '_' + g.lineCode,
  52 + 'text':g.name + gsdmTogsName(compD,g.company)});
  53 + }
  54 + });
  55 + if($('span').hasClass('select2-selection'))
  56 + $('span .select2-selection').remove();
  57 +
  58 +
  59 + initPinYinSelect2($('#lineSelect'),paramsD,function(selector) {
  60 +// selector.select2("val", "请选择...");
  61 + });
  62 + }
  63 + });
  64 + });
  65 + });
  66 + }
  67 +
  68 + // 监听线路名称下拉框值改变事件.
  69 + $('#lineSelect').on("change", function (e) {
  70 + var lineSelectValue = $('#lineSelect').val();// 获取线路名称值.
  71 + if(lineSelectValue=='' || lineSelectValue==null || lineSelectValue=="请选择...") {
  72 + $('#lineCodeInput').val('');// 设值线路编码.
  73 + $('#lineIdInput').val('');// 设值线路ID.
  74 + }else {
  75 + var lineSelectValueArray = lineSelectValue.split('_');// 切割线路名称值.
  76 + $.get('/lineVersions/findByLineId',{'lineId':lineSelectValueArray[0]}, function(array){
  77 + var type = true;
  78 + $.each(array, function(){
  79 + if(this.status == 2) {
  80 + type = false;
  81 + return;
  82 + }
  83 + });
  84 + if(type) {
  85 + $.get('/lineVersions/findAllHistroyLineVersionsById',{'lineId':lineSelectValueArray[0]}, function(lineVersions){
  86 +// console.log(lineVersions);
  87 +
  88 + console.log($('#hisVersionsInput option'));
  89 +
  90 + if($('span .select2-selection').length > 1){
  91 + $($('span .select2-selection')[1]).remove();
  92 + $('#hisVersionsInput option').remove()
  93 + }
  94 +
  95 + var paramsD = new Array();
  96 +
  97 + paramsD.push({'id':"",'text':""});
  98 +
  99 + for(var i = 0; i < lineVersions.length;i++){
  100 + var g = lineVersions[i];
  101 + paramsD.push({'id':g.versions,'text':g.name + '(' + g.versions + ")"});
  102 + }
  103 +
  104 +
  105 + initPinYinSelect2($('#hisVersionsInput'),paramsD,function(selector) {
  106 +// console.log("123123312");
  107 + selector.select2("", "");
  108 + });
  109 + });
  110 +
  111 +
  112 + $.get('/lineVersions/findLineVersionsMax',{'lineId':lineSelectValueArray[0]}, function(lineVersionsMax){
  113 + $('#versionsInput').val(++lineVersionsMax.versions);// 设值线路编码.
  114 + });
  115 +
  116 + $.get('/lineVersions/findLineVersionsMax',{'lineId':lineSelectValueArray[0]}, function(lineVersionsMax){
  117 + $('#versionsInput').val(++lineVersionsMax.versions);// 设值线路编码.
  118 + });
  119 + $('#lineIdInput').val(lineSelectValueArray[0]);// 设值线路编码.
  120 + $('#lineCodeInput').val(lineSelectValueArray[1]);// 设值线路ID.
  121 + } else {
  122 + swal("每条线路只能有一个待更新版本,你选择的线路已有待更新版本,版本多了忙不过来,快去选择其他线路吧!");
  123 + $('#lineSelect').select2("val", "请选择...");
  124 + }
  125 + });
  126 + }
  127 + });
  128 +
  129 + function gsdmTogsName(gsD,code) {
  130 + var rsStr = '';
  131 + for(var s = 0 ; s < gsD.length; s++) {
  132 + if(gsD[s].businessCode == code) {
  133 + rsStr = rsStr + '(' + gsD[s].businessName.replace('公司','') + ')';
  134 + break;
  135 + }
  136 + }
  137 + return rsStr;
  138 + }
  139 +
  140 + // 切割线路名称值.获取线路ID及编码.
  141 + function splitxlName(str) {
  142 + var rsStr = '';
  143 + if(str) {
  144 + var strArray = str.split('_');
  145 + rsStr = strArray[0];
  146 + }
  147 + return rsStr;
  148 + }
  149 +
  150 + // 定义表单
  151 + var form = $('#lineVersions_add_form');
  152 + // 定义表单异常
  153 + var error = $('.alert-danger',form);
  154 + // 表单验证
  155 + form.validate({
  156 + // 错误提示元素span对象
  157 + errorElement : 'span',
  158 + // 错误提示元素class名称
  159 + errorClass : 'help-block help-block-error',
  160 + // 验证错误获取焦点
  161 + focusInvalid : true,
  162 + // 需要验证的表单元素
  163 + rules : {
  164 + 'name' : {required : true,maxlength: 30},// 线路名称 必填项、最大长度.
  165 + 'line' : {required : true,maxlength: 30},// 线路名称 必填项、最大长度.
  166 + 'startDate' : {required : true},// 启用时间 不为空.
  167 + 'endDate' : {required : true},// 结束时间.
  168 + 'versions' : {required : true, digits : true, maxlength: 10},// 版本号 必填项、数字、最大长度10.
  169 +// 'status' : {required : true, digits : true, maxlength: 10},// 版本状态 必填项、数字、最大长度10.
  170 + },
  171 +
  172 + /**
  173 + * 类型:Callback。当未通过验证的表单提交时,可以在该回调函数中处理一些事情。
  174 + *
  175 + * 参数:该回调函数有两个参数:第一个为一个事件对象,第二个为验证器(validator)
  176 + */
  177 + invalidHandler : function(event, validator) {
  178 + // 显示表单未通过提示信息
  179 + error.show();
  180 + // 把提示信息放到指定的位置。
  181 + App.scrollTo(error, -200);
  182 + },
  183 +
  184 + /**
  185 + * 类型:Callback。
  186 + *
  187 + * 默认:添加errorClass("has-error")到表单元素。将未通过验证的表单元素设置高亮。
  188 + */
  189 + highlight : function(element) {
  190 + // 添加errorClass("has-error")到表单元素
  191 + $(element).closest('.form-group').addClass('has-error');
  192 + },
  193 +
  194 + /**
  195 + * 类型:Callback。
  196 + *
  197 + * 默认:移除errorClass("has-error")。与highlight操作相反
  198 + */
  199 + unhighlight : function(element) {
  200 + // 移除errorClass("has-error")
  201 + $(element).closest('.form-group').removeClass('has-error');
  202 + },
  203 +
  204 + /**
  205 + * 类型:String,Callback。
  206 + *
  207 + * 如果指定它,当验证通过时显示一个消息。
  208 + *
  209 + * 如果是String类型的,则添加该样式到标签中;
  210 + *
  211 + * 如果是一个回调函数,则将标签作为其唯一的参数。
  212 + */
  213 + success : function(label) {
  214 + // 当验证通过时,移除errorClass("has-error")
  215 + label.closest('.form-group').removeClass('has-error');
  216 +
  217 + },
  218 + /**
  219 + * 类型:Callback。
  220 + *
  221 + * 默认:default (native) form submit;当表单通过验证,提交表单。回调函数有个默认参数form
  222 + */
  223 + submitHandler : function(f) {
  224 + // 隐藏错误提示
  225 + error.hide();
  226 + // 表单序列化
  227 + var params = form.serializeJSON();
  228 + submit();
  229 + // 提交
  230 + function submit() {
  231 + // 防止用户多次提交
  232 + $("#submintBtn").addClass("disabled");
  233 + // 添加数据
  234 + $post('/lineVersions/add', params, function(result) {
  235 + // 如果返回结果不为空
  236 + if(result){
  237 + // 返回状态码为"SUCCESS" ,则添加成功;返回状态码为"ERROR" ,则添加失败
  238 + if(result.status=='SUCCESS') {
  239 + // 弹出添加成功提示消息
  240 + layer.msg('添加成功...');
  241 + } else if(result.status=='ERROR') {
  242 + // 弹出添加失败提示消息
  243 + layer.msg('添加失败...');
  244 + }
  245 + }
  246 + // 返回list.html页面
  247 + loadPage('list.html');
  248 + });
  249 + $("#submintBtn").removeClass("disabled");
  250 + }
  251 + }
  252 + });
253 253 })();
254 254 \ No newline at end of file
... ...