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 \ No newline at end of file 254 \ No newline at end of file