rule-edit.js 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293
  1. $(function(){
  2. $('#datetimepicker').datetimepicker({
  3. yearOffset:0,
  4. lang:'ch',
  5. timepicker:false,
  6. format:'d/m/Y',
  7. formatDate:'Y/m/d',
  8. minDate:'-1970/01/02', // yesterday is minimum date
  9. maxDate:'+1970/01/02' // and tommorow is maximum date calendar
  10. });
  11. $('#layer').click(function(){
  12. var artBox=art.dialog({
  13. lock: true,
  14. icon:'question',
  15. opacity:0.4,
  16. width: 250,
  17. title:'提示',
  18. content: '页面模板会覆盖编辑区域已有组件,是否继续?',
  19. ok: function () {
  20. },
  21. cancel: true
  22. });
  23. })
  24. param1 = getUrlParam('param1');
  25. param2 = getUrlParam('param2');
  26. var da = decodeURI(decodeURI(param1));
  27. var da2 = decodeURI(decodeURI(param2));
  28. //Commonjs.alert(da);
  29. //Commonjs.alert(da2);
  30. var a = eval('(' + da + ')');
  31. var b = eval('(' + da2 + ')');
  32. //Commonjs.alert(a.DrawPoint);
  33. loadOrderRule(a);
  34. loadYuYueRule(b);
  35. })
  36. function loadOrderRule(data){
  37. /*var Service = {};
  38. var page = {};
  39. var code = 2005;
  40. Service.State = 1;
  41. var param = {};
  42. var params = Commonjs.getParams(code,Service);//获取参数
  43. param.Api = "QueryRule";
  44. param.Params = Commonjs.jsonToString(params);
  45. var d = Commonjs.ajax('./rule_callHopApi.do',param,false);
  46. var data = d.Data;*/
  47. $("#startDay").val(data.StartDay);
  48. $("#startTime").val(data.StartTime);
  49. $("#endDay").val(data.EndDay);
  50. $("#endTime").val(data.EndTime);
  51. $("#drawPoint").val(data.DrawPoint);
  52. $("#amTakeNum").val(data.AmTakeNum);
  53. $("#pmTakeNum").val(data.PmTakeNum);
  54. $('#breachDay').val(data.BreachDay);
  55. $('#breachTimes').val(data.BreachTimes);
  56. if(data.State ==1){
  57. $('#wyxzgz').attr("checked",true);
  58. $('#wyxzgzSwitch').attr("class","my-switch-box");
  59. }else{
  60. $('#wyxzgz').attr("checked",false);
  61. $('#wyxzgzSwitch').attr("class","my-switch-box red");
  62. }
  63. ruleId=data.RuleId;
  64. }
  65. var yygz_num;
  66. function loadYuYueRule(data){
  67. /*var Service = {};
  68. var page = {};
  69. var code = 2006;
  70. Service.RuleId = "";
  71. var param = {};
  72. var params = Commonjs.getParams(code,Service);//获取参数
  73. param.Api = "QueryLimit";
  74. param.Params = Commonjs.jsonToString(params);
  75. var d = Commonjs.ajax('./rule_callHopApi.do',param,false);
  76. var data = d.Data;*/
  77. yygz_num = data.length;
  78. for(var i=0;i< yygz_num;i++){
  79. var textMessage = data[i].TextMessage.split(",");
  80. var countNum = data[i].CountNum;
  81. if(data[i].State == 1){
  82. $('#xhgz').attr("checked",true);
  83. $('#xhgzSwitch').attr("class","my-switch-box");
  84. }else{
  85. $('#xhgz').attr("checked",false);
  86. $('#xhgzSwitch').attr("class","my-switch-box red");
  87. }
  88. $("#gz").append("<tr><td class=\"t\" width=\"220\">"+textMessage[0]+"</td><td width=\"285\"><div class=\"custom-subtraction ml5 mr5 clearfix\"><input type=\"hidden\" id=\"orId"+i+"\" value=\""+data[i].LimitId+"\"><div class=\"fl\"><input type=\"text\" id=\"gz"+i+"\" value=\""+countNum+"\" onblur=\"validateNumber(this);\"></div><div class=\"fr\"><a class=\"add\" href=\"javascript:;\" onclick=\"add(this);\">+</a><a class=\"cut\" href=\"javascript:;\" onclick=\"cut(this);\">-</a></div></div>"+textMessage[1]+"</td></tr>");
  89. }
  90. }
  91. function save(){
  92. var Service = {};
  93. var Service2 = {};
  94. var param = {};
  95. var param2 = {};
  96. var page = {};
  97. if(!check()){
  98. Commonjs.alert("您输入的格式有误,请核对!");
  99. return;
  100. }
  101. Service.RuleId = ruleId;
  102. Service.StartDay=$('#startDay').val();
  103. Service.StartTime=$('#startTime').val();
  104. Service.EndDay=$('#endDay').val();
  105. Service.EndTime=$('#endTime').val();
  106. Service.DrawPoint= ($('#drawPoint').val());
  107. Service.AmTakeNum=$('#amTakeNum').val();
  108. Service.PmTakeNum=$('#pmTakeNum').val();
  109. Service.BreachDay=$('#breachDay').val();
  110. Service.BreachTimes=$('#breachTimes').val();
  111. if($('#wyxzgzSwitch').attr("class")=="my-switch-box"){//$('#wyxzgz').is(':checked')
  112. Service.State=1;
  113. }else{
  114. Service.State=2;
  115. }
  116. var code = 2003;
  117. var params = Commonjs.getParams(code,Service);//获取参数
  118. param.Api = "UpdateRule";
  119. param.Params=Commonjs.jsonToString(params);
  120. var d = Commonjs.ajax('./rule_callRuleApi.do',param,false);
  121. if(d.RespCode != 10000){
  122. Commonjs.alert(d.RespMessage);
  123. return;
  124. }
  125. if($('#xhgzSwitch').attr("class")=="my-switch-box"){//$('#xhgz').is(':checked')
  126. Service2.State=1;
  127. }else{
  128. Service2.State=2;
  129. }
  130. var flag = 0;
  131. for (var i=0;i<yygz_num; i++) {
  132. //gzStr=gzStr+$("#gz"+i).val()+",";
  133. //idStr=idStr+$("#orId"+i).val()+",";
  134. Service2.CountNum=$("#gz"+i).val();
  135. Service2.LimitId=$("#orId"+i).val();
  136. var code2 = 2004;
  137. var params2 = Commonjs.getParams(code2,Service2);//获取参数
  138. param2.Api = "UpdateLimit";
  139. param2.Params=Commonjs.jsonToString(params2);
  140. var d2 = Commonjs.ajax('./rule_callRuleApi.do',param2,false);
  141. if(d2.RespCode != 10000){
  142. Commonjs.alert(d2.RespMessage);
  143. break;
  144. }else{
  145. flag++;
  146. }
  147. }
  148. if(flag != yygz_num){
  149. //Commonjs.alert(d.RespMessage);
  150. return;
  151. }else{
  152. window.location.href='rule.html';
  153. }
  154. }
  155. function SaveRuleAndLimit(){
  156. var Service = {};
  157. var Rule = {};
  158. var Limits={};
  159. var param = {};
  160. if(!check()){
  161. Commonjs.alert("您输入的格式有误,请核对!");
  162. return;
  163. }
  164. Rule.RuleId = ruleId;
  165. Rule.StartDay=$('#startDay').val();
  166. Rule.StartTime=$('#startTime').val();
  167. Rule.EndDay=$('#endDay').val();
  168. Rule.EndTime=$('#endTime').val();
  169. Rule.DrawPoint= ($('#drawPoint').val());
  170. Rule.AmTakeNum=$('#amTakeNum').val();
  171. Rule.PmTakeNum=$('#pmTakeNum').val();
  172. Rule.BreachDay=$('#breachDay').val();
  173. Rule.BreachTimes=$('#breachTimes').val();
  174. if($('#wyxzgzSwitch').attr("class")=="my-switch-box"){
  175. Rule.State=1;
  176. }else{
  177. Rule.State=2;
  178. }
  179. Service.Rule = Rule;
  180. var limitState=0;
  181. if($('#xhgzSwitch').attr("class")=="my-switch-box"){
  182. limitState=1;
  183. }else{
  184. limitState=2;
  185. }
  186. for (var i=0;i<yygz_num; i++) {
  187. var Limit={};
  188. Limit.CountNum=$("#gz"+i).val();
  189. Limit.LimitId=$("#orId"+i).val();
  190. Limit.State=limitState;
  191. Limits["Limit"+i]=Limit;
  192. }
  193. Service.Limits=Limits;
  194. var code = 2012;
  195. var params = Commonjs.getParams(code,Service);//获取参数
  196. param.Api = "UpdateRuleAndLimit";
  197. param.Params=Commonjs.jsonToString(params);
  198. var d = Commonjs.ajax('./rule_callRuleApi.do',param,false);
  199. if(d.RespCode == 10000){
  200. window.location.href='rule.html';
  201. }else{
  202. Commonjs.alert(d.RespMessage);
  203. return;
  204. }
  205. }
  206. function cancel(){
  207. window.location.href='rule.html?param1='+encodeURI(param1)+'&param2='+encodeURI(param2);
  208. }
  209. function check(){
  210. if(isNaN($('#startDay').val()))return false;
  211. if(isNaN($('#endDay').val()))return false;
  212. if(isNaN($('#breachDay').val()))return false;
  213. if(isNaN($('#breachTimes').val()))return false;
  214. for (var i=0;i<yygz_num; i++) {
  215. if(isNaN($('#gz'+i).val()))return false;
  216. }
  217. if(!isHHMM($('#startTime').val()))return false;
  218. if(!isHHMM($('#endTime').val()))return false;
  219. if(!isHHMM($('#amTakeNum').val()))return false;
  220. if(!isHHMM($('#pmTakeNum').val()))return false;
  221. return true;
  222. }
  223. function add(obj){
  224. var b = $(obj).parents().prev('div').children('input');
  225. if(isNaN(b.val())){
  226. return;
  227. }else{
  228. b.val(Number(b.val())+1);
  229. }
  230. }
  231. function cut(obj){
  232. var b = $(obj).parents().prev('div').children('input');
  233. if(isNaN(b.val())||Number(b.val())<1){
  234. return;
  235. }else{
  236. b.val(Number(b.val())-1);
  237. }
  238. }
  239. function validateNumber(obj){
  240. if(isNaN($(obj).val())){
  241. Commonjs.alert("只能为数字,请重新输入!");
  242. }
  243. return;
  244. }
  245. function validateHHMM(obj){
  246. //hh:mm 08:05
  247. var time_hm=/^(0\d{1}|1\d{1}|2[0-3]):([0-5]\d{1})$/;
  248. if(!time_hm.test($(obj).val())){
  249. Commonjs.alert("抱歉,您输入的日期格式有误,正确格式例如:08:05");
  250. }
  251. return;
  252. }
  253. function validateHHMMAM(obj){
  254. //hh:mm 08:05
  255. var time_hm=/^(0\d{1}|1[0-1]):([0-5]\d{1})$/;
  256. if(!time_hm.test($(obj).val())){
  257. Commonjs.alert("抱歉,请输入正确的上午时间,正确格式例如:08:05");
  258. }
  259. return;
  260. }
  261. function validateHHMMPM(obj){
  262. //hh:mm 14:05
  263. var time_hm=/^(1[2-9]|2[0-3]):([0-5]\d{1})$/;
  264. if(!time_hm.test($(obj).val())){
  265. Commonjs.alert("抱歉,请输入正确的下午时间,正确格式例如:14:05");
  266. }
  267. return;
  268. }
  269. function isHHMM(str){
  270. var time_hm=/^(0\d{1}|1\d{1}|2[0-3]):([0-5]\d{1})$/;
  271. return time_hm.test(str);
  272. }
  273. function getUrlParam(name) {
  274. var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
  275. var r = window.location.search.substr(1).match(reg); //匹配目标参数
  276. if (r != null) return unescape(r[2]); return null; //返回参数值
  277. }
  278. function myPrint(msg){
  279. art.dialog({
  280. lock : true,
  281. artIcon : 'error',
  282. opacity : 0.4,
  283. width : 250,
  284. title : '提示',
  285. time : 3,
  286. content : msg,
  287. ok : function() {
  288. }
  289. });
  290. }