batch_info.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. /**
  2. * 初始化批次管理详情对话框
  3. */
  4. var BatchInfoDlg = {
  5. batchInfoData : {},
  6. validateFields: {
  7. type: {
  8. validators: {
  9. notEmpty: {
  10. message: '申报类别不能为空'
  11. }
  12. }
  13. },
  14. source: {
  15. validators: {
  16. notEmpty: {
  17. message: '人才类型不能为空'
  18. }
  19. }
  20. },
  21. batch: {
  22. validators: {
  23. notEmpty: {
  24. message: '申报批次不能为空'
  25. },
  26. regexp :{
  27. regexp: /^\d+$/,
  28. message:"只能输入数字"
  29. }
  30. }
  31. },
  32. active: {
  33. validators: {
  34. notEmpty: {
  35. message: '有效状态不能为空'
  36. }
  37. }
  38. },
  39. startTime: {
  40. validators: {
  41. notEmpty: {
  42. message: '申报开始时间不能为空'
  43. }
  44. }
  45. },
  46. endTime: {
  47. validators: {
  48. notEmpty: {
  49. message: '申报截止时间不能为空'
  50. }
  51. }
  52. },
  53. }
  54. };
  55. /**
  56. * 清除数据
  57. */
  58. BatchInfoDlg.clearData = function() {
  59. this.batchInfoData = {};
  60. }
  61. /**
  62. * 设置对话框中的数据
  63. *
  64. * @param key 数据的名称
  65. * @param val 数据的具体值
  66. */
  67. BatchInfoDlg.set = function(key, val) {
  68. this.batchInfoData[key] = (typeof val == "undefined") ? $("#" + key).val() : val;
  69. return this;
  70. }
  71. /**
  72. * 设置对话框中的数据
  73. *
  74. * @param key 数据的名称
  75. * @param val 数据的具体值
  76. */
  77. BatchInfoDlg.get = function(key) {
  78. return $("#" + key).val();
  79. }
  80. /**
  81. * 关闭此对话框
  82. */
  83. BatchInfoDlg.close = function() {
  84. parent.layer.close(window.parent.Batch.layerIndex);
  85. }
  86. /**
  87. * 收集数据
  88. */
  89. BatchInfoDlg.collectData = function() {
  90. this
  91. .set('id')
  92. .set('type')
  93. .set('source')
  94. .set('batch')
  95. .set('startTime')
  96. .set('endTime')
  97. .set('submitEndTime')
  98. .set('publicStartTime')
  99. .set('publicEndTime')
  100. .set('averageWage')
  101. .set('active')
  102. .set('description');
  103. }
  104. /**
  105. * 验证数据是否为空
  106. */
  107. BatchInfoDlg.validate = function () {
  108. $('#batchInfoForm').data("bootstrapValidator").resetForm();
  109. $('#batchInfoForm').bootstrapValidator('validate');
  110. return $("#batchInfoForm").data('bootstrapValidator').isValid();
  111. }
  112. /**
  113. * 提交添加
  114. */
  115. BatchInfoDlg.addSubmit = function() {
  116. this.clearData();
  117. this.collectData();
  118. if (!this.validate()) {
  119. return;
  120. }
  121. //提交信息
  122. var ajax = new $ax(Feng.ctxPath + "/batch/add", function(data){
  123. if(data.code=="200"){
  124. Feng.success(data.msg);
  125. window.parent.Batch.table.refresh();
  126. BatchInfoDlg.close();
  127. }else{
  128. Feng.error(data.msg);
  129. }
  130. },function(data){
  131. Feng.error("添加失败!" + data.responseJSON.message + "!");
  132. });
  133. ajax.set(this.batchInfoData);
  134. ajax.start();
  135. }
  136. /**
  137. * 提交修改
  138. */
  139. BatchInfoDlg.editSubmit = function() {
  140. this.clearData();
  141. this.collectData();
  142. if (!this.validate()) {
  143. return;
  144. }
  145. //提交信息
  146. var ajax = new $ax(Feng.ctxPath + "/batch/update", function(data){
  147. if(data.code=="200"){
  148. Feng.success(data.msg);
  149. window.parent.Batch.table.refresh();
  150. BatchInfoDlg.close();
  151. }else{
  152. Feng.error(data.msg);
  153. }
  154. },function(data){
  155. Feng.error("修改失败!" + data.responseJSON.message + "!");
  156. });
  157. ajax.set(this.batchInfoData);
  158. ajax.start();
  159. }
  160. $(function() {
  161. Feng.initValidator("batchInfoForm", BatchInfoDlg.validateFields);
  162. //下拉框数据动态加载
  163. Feng.addAjaxSelect({
  164. "id": "type",
  165. "displayCode": "code",
  166. "displayName": "name",
  167. "type": "GET",
  168. "url": Feng.ctxPath + "/dict/findChildDictByCode?code=un_project"
  169. });
  170. //批量加载时间控件
  171. $("input[time='time']").each(function(){
  172. laydate.render({
  173. elem: "#"+$(this).attr("id")
  174. ,type: $(this).attr("format")
  175. ,trigger: 'click'
  176. });
  177. });
  178. //下拉框数据回显
  179. $("select").each(function () {
  180. $(this).val($(this).attr("selectVal"));
  181. });
  182. });