data.js 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544
  1. var prefix = "/datas/data"
  2. $(function () {
  3. $("#unitProvince").val('');
  4. load();
  5. //所属行业子类
  6. // loadIndustry();
  7. //所属行业
  8. loadIndustryType();
  9. //数据级别
  10. loadLevel();
  11. //数据类别
  12. loadType();
  13. //初始化联合审批部门
  14. load_direct_select();
  15. loadAuditStage();
  16. //省份
  17. loadProvince();
  18. //地市
  19. loadCity();
  20. });
  21. //审核阶段
  22. function loadAuditStage() {
  23. var html = "";
  24. $.ajax({
  25. url: '/common/dict/list/audit_stage',
  26. success: function (data) {
  27. //加载数据
  28. for (var i = 0; i < data.length; i++) {
  29. html += '<option value="' + data[i].value + '">' + data[i].name + '</option>'
  30. }
  31. $(".chosen-select-auditStage").append(html);
  32. $(".chosen-select-auditStage").chosen({
  33. maxHeight: 200
  34. });
  35. //点击事件
  36. $('.chosen-select-auditStage').on('change', function (e, params) {
  37. console.log(params.selected);
  38. var opt = {
  39. query: {
  40. type: params.selected,
  41. }
  42. }
  43. // $('#exampleTable').bootstrapTable('refresh', opt);
  44. });
  45. }
  46. });
  47. }
  48. $('.dropdown-toggle').dropdown();
  49. var myColumns = [];
  50. myColumns.push({
  51. checkbox: true
  52. },
  53. {
  54. field: 'no',
  55. title: '序号',
  56. align: "center",
  57. width: 65,
  58. formatter: function (value, row, index) {
  59. //获取每页显示的数量
  60. var pageSize = $('#exampleTable').bootstrapTable('getOptions').pageSize;
  61. //获取当前是第几页
  62. var pageNumber = $('#exampleTable').bootstrapTable('getOptions').pageNumber;
  63. //返回序号,注意index是从0开始的,所以要加上1
  64. return pageSize * (pageNumber - 1) + index + 1;
  65. }
  66. })
  67. $.each(commonData,function (index,value){
  68. myColumns.push(value);
  69. })
  70. myColumns.push(
  71. {
  72. // 1:市级 2:省级
  73. field: 'auditStage',
  74. title: '审核阶段',
  75. titleTooltip: "审核阶段",
  76. formatter: function (item, index) {
  77. if (item == '1') {
  78. return '<span class="label label-primary">市级</span>';
  79. } else if (item == '2') {
  80. return '<span class="label label-success">省级</span>';
  81. }
  82. },
  83. width: 120,
  84. align: "center",
  85. },
  86. {
  87. // 0:正常 1:删除 2:已上报 3:通过审核 4:驳回 5:联合审批 6:终审
  88. field: 'dataStatus',
  89. title: '状态',
  90. titleTooltip: "状态",
  91. formatter: function (item, index) {
  92. if (item == '0') {
  93. return '<span class="label label-info">待审核</span>';
  94. } else if (item == '2') {
  95. return '<span class="label label-primary">审核中</span>';
  96. } else if (item == '3') {
  97. return '<span class="label label-success">通过审核</span>';
  98. } else if (item == '4') {
  99. return '<span class="label label-danger">驳回</span>';
  100. }
  101. },
  102. width: 120,
  103. align: "center",
  104. },
  105. {
  106. title: '操作',
  107. field: 'id',
  108. align: 'center',
  109. width: '100px',
  110. formatter: function (value, row, index) {
  111. var e = '<a class="btn btn-primary btn-sm ' + s_edit_h + '" href="#" mce_href="#" title="详情" onclick="edit(\''
  112. + row.id
  113. + '\')"><i class="fa fa-book"></i></a> ';
  114. var d = '<a class="btn btn-warning btn-sm ' + s_remove_h + '" href="#" title="删除" mce_href="#" onclick="remove(\''
  115. + row.id
  116. + '\')"><i class="fa fa-remove"></i></a> ';
  117. var f = '<a class="btn btn-success btn-sm ' + s_verify_h + '" href="#" title="审核" mce_href="#" onclick="verify(\''
  118. + row.id
  119. + '\')"><i class="fa fa-envelope-o"></i></a> ';
  120. var g = '<a class="btn btn-success btn-sm ' + s_rebut_h + '" href="#" title="驳回" mce_href="#" onclick="rebut(\''
  121. + row.id
  122. + '\')"><i class="fa fa-reply"></i></a> ';
  123. if (row.dataStatus == '3' || row.dataStatus == '4' || row.dataStatus == '5' || row.dataStatus == '6' || row.dataStatus == '0') {
  124. return e + d;
  125. } else if (row.dataStatus == '2') {
  126. return e;
  127. } else if (row.dataStatus == '1') {
  128. return e + d;
  129. }
  130. }
  131. });
  132. function load() {
  133. $('#exampleTable')
  134. .bootstrapTable(
  135. {
  136. method: 'get', // 服务器数据的请求方式 get or post
  137. url: prefix + "/list", // 服务器数据的加载地址
  138. iconSize: 'outline',
  139. toolbar: '#exampleToolbar',
  140. striped: true, // 设置为true会有隔行变色效果
  141. dataType: "json", // 服务器返回的数据类型
  142. pagination: true, // 设置为true会在底部显示分页条
  143. // queryParamsType : "limit",
  144. // //设置为limit则会发送符合RESTFull格式的参数
  145. singleSelect: false, // 设置为true将禁止多选
  146. // contentType : "application/x-www-form-urlencoded",
  147. // //发送到服务器的数据编码类型
  148. pageSize: 10, // 如果设置了分页,每页数据条数
  149. pageNumber: 1, // 如果设置了分布,首页页码
  150. pageList: [10,25,50,100,500,1000],
  151. //search : true, // 是否显示搜索框
  152. showColumns: true, // 是否显示内容下拉框(选择显示的列)
  153. showRefresh: true,
  154. // showExport: true, //是否显示导出按钮
  155. // exportDataType: "basic", //basic', 'all', 'selected'.
  156. // buttonsAlign:"right", //按钮位置
  157. // exportTypes:['csv', 'xlsx'], //导出文件类型
  158. // Icons:'glyphicon-export',
  159. sidePagination: "server", // 设置在哪里进行分页,可选值为"client" 或者 "server"
  160. // exportOptions:{
  161. // ignoreColumn: [0,1], //忽略某一列的索引
  162. // fileName: '备案数据信息', //文件名称设置
  163. // worksheetName: 'sheet1', //表格工作区名称
  164. // tableName: '备案数据表',
  165. // excelstyles: ['background-color', 'color', 'font-size', 'font-weight'],
  166. // onMsoNumberFormat: DoOnMsoNumberFormat
  167. // },
  168. queryParams: function (params) {
  169. return {
  170. //说明:传入后台的参数包括offset开始索引,limit步长,sort排序列,order:desc或者,以及所有列的键值对
  171. limit: params.limit,
  172. offset: params.offset,
  173. dataName: $('#dataName').val(),
  174. reporterUnit: $('#reporterUnit').val(),
  175. dataIndustry: $('#dataIndustry').val(),
  176. industryTypeOne: $('#industryTypeOne').val(),
  177. // dataStatus: $('#status').val(),
  178. dataLevel: $('#dataLevel').val(),
  179. auditStage: $('#auditStage').val(),
  180. unitProvince: $('#unitProvince').val(), //省
  181. unitCity: $('#unitCity').val(), //市区
  182. dataStatus: '3',//已审批
  183. };
  184. },
  185. onLoadSuccess: function () {
  186. //鼠标悬停显示全部内容~
  187. $('.bootstrap-table tr td').each(function () {
  188. $(this).attr("title", $(this).text());
  189. $(this).css("cursor", 'pointer');
  190. });
  191. },
  192. // //请求服务器数据时,你可以通过重写参数的方式添加一些额外的参数,例如 toolbar 中的参数 如果
  193. // queryParamsType = 'limit' ,返回参数必须包含
  194. // limit, offset, search, sort, order 否则, 需要包含:
  195. // pageSize, pageNumber, searchText, sortName,
  196. // sortOrder.
  197. // 返回false将会终止请求
  198. columns: myColumns
  199. })
  200. /*table resize*/
  201. .colResizable();
  202. }
  203. function reLoad() {
  204. // $('#exampleTable').bootstrapTable('refresh');
  205. $('#exampleTable').bootstrapTable('destroy');
  206. load();
  207. }
  208. function add() {
  209. layer.open({
  210. type: 2,
  211. title: '数据导入',
  212. maxmin: true,
  213. shadeClose: false, // 点击遮罩关闭层
  214. area: ['800px', '500px'],
  215. content: prefix + '/batchAdd' // iframe的url
  216. });
  217. }
  218. function edit(id) {
  219. layer.open({
  220. type: 2,
  221. title: '详情',
  222. maxmin: true,
  223. shadeClose: false, // 点击遮罩关闭层
  224. area: ['100%', '100%'],
  225. content: prefix + '/edit/' + id // iframe的url
  226. });
  227. }
  228. function remove(id) {
  229. layer.confirm('确定要删除选中的记录?', {
  230. btn: ['确定', '取消']
  231. }, function () {
  232. $.ajax({
  233. url: prefix + "/remove",
  234. type: "post",
  235. data: {
  236. 'id': id
  237. },
  238. success: function (r) {
  239. if (r.code == 0) {
  240. layer.msg(r.msg);
  241. reLoad();
  242. } else {
  243. layer.msg(r.msg);
  244. }
  245. }
  246. });
  247. })
  248. }
  249. //重置查询条件
  250. function reset() {
  251. //重置
  252. $('.form-group').find('input,select').val("");
  253. //重置行业
  254. // $('#dataIndustry').val("--选择行业--");
  255. $("#dataIndustry").val("").trigger("chosen:updated");
  256. $("#industryTypeOne").val("").trigger("chosen:updated");
  257. $("#unitProvince").val("").trigger("chosen:updated");
  258. $("#unitCity").val("").trigger("chosen:updated");
  259. $("#dataLevel").val("").trigger("chosen:updated");
  260. $("#auditStage").val("").trigger("chosen:updated");
  261. }
  262. function batchRemove() {
  263. var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行,当没有选择的记录时,返回一个空数组
  264. if (rows.length == 0) {
  265. layer.msg("请选择要删除的数据");
  266. return;
  267. }
  268. layer.confirm("确认要删除选中的'" + rows.length + "'条数据吗?", {
  269. btn: ['确定', '取消']
  270. // 按钮
  271. }, function () {
  272. var ids = new Array();
  273. // 遍历所有选择的行数据,取每条数据对应的ID
  274. $.each(rows, function (i, row) {
  275. ids[i] = row['id'];
  276. });
  277. $.ajax({
  278. type: 'POST',
  279. data: {
  280. "ids": ids
  281. },
  282. url: prefix + '/batchRemove',
  283. success: function (r) {
  284. if (r.code == 0) {
  285. layer.msg(r.msg);
  286. reLoad();
  287. } else {
  288. layer.msg(r.msg);
  289. }
  290. }
  291. });
  292. }, function () {
  293. });
  294. }
  295. //审核通过
  296. function verify(id) {
  297. layer.confirm('确定要审核通过选中的备案申请?', {
  298. btn: ['确定', '取消']
  299. }, function () {
  300. $.ajax({
  301. url: prefix + "/verify",
  302. type: "post",
  303. data: {
  304. 'id': id
  305. },
  306. success: function (r) {
  307. if (r.code == 0) {
  308. layer.msg(r.msg);
  309. reLoad();
  310. } else {
  311. layer.msg(r.msg);
  312. }
  313. }
  314. });
  315. })
  316. }
  317. //驳回
  318. function rebut(id) {
  319. layer.confirm('确定要驳回选中的备案申请?', {
  320. btn: ['确定', '取消']
  321. }, function () {
  322. $.ajax({
  323. url: prefix + "/rebut",
  324. type: "post",
  325. data: {
  326. 'id': id
  327. },
  328. success: function (r) {
  329. if (r.code == 0) {
  330. layer.msg(r.msg);
  331. reLoad();
  332. } else {
  333. layer.msg(r.msg);
  334. }
  335. }
  336. });
  337. })
  338. }
  339. //批量审核通过
  340. function batchVerify() {
  341. var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行,当没有选择的记录时,返回一个空数组
  342. if (rows.length == 0) {
  343. layer.msg("请选择要审核的备案数据");
  344. return;
  345. }
  346. layer.confirm("确认要审核通过选中的'" + rows.length + "'条备案数据吗?", {
  347. btn: ['确定', '取消']
  348. // 按钮
  349. }, function () {
  350. var ids = new Array();
  351. // 遍历所有选择的行数据,取每条数据对应的ID
  352. $.each(rows, function (i, row) {
  353. ids[i] = row['id'];
  354. });
  355. $.ajax({
  356. type: 'POST',
  357. data: {
  358. "ids": ids
  359. },
  360. url: prefix + '/batchVerify',
  361. success: function (r) {
  362. if (r.code == 0) {
  363. layer.msg(r.msg);
  364. reLoad();
  365. } else {
  366. layer.msg(r.msg);
  367. }
  368. }
  369. });
  370. }, function () {
  371. });
  372. }
  373. //批量 驳回
  374. function batchRebut() {
  375. var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行,当没有选择的记录时,返回一个空数组
  376. if (rows.length == 0) {
  377. layer.msg("请选择要驳回的备案数据");
  378. return;
  379. }
  380. layer.confirm("确认要驳回选中的'" + rows.length + "'条备案数据吗?", {
  381. btn: ['确定', '取消']
  382. // 按钮
  383. }, function () {
  384. var ids = new Array();
  385. // 遍历所有选择的行数据,取每条数据对应的ID
  386. $.each(rows, function (i, row) {
  387. ids[i] = row['id'];
  388. });
  389. $.ajax({
  390. type: 'POST',
  391. data: {
  392. "ids": ids
  393. },
  394. url: prefix + '/batchRebut',
  395. success: function (r) {
  396. if (r.code == 0) {
  397. layer.msg(r.msg);
  398. reLoad();
  399. } else {
  400. layer.msg(r.msg);
  401. }
  402. }
  403. });
  404. }, function () {
  405. });
  406. }
  407. //明文导出
  408. function batchExports() {
  409. var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行,当没有选择的记录时,返回一个空数组
  410. if (rows.length == 0) {
  411. layer.msg("请选择要导出的备案数据");
  412. return;
  413. }
  414. layer.confirm("确认要导出选中的'" + rows.length + "'条备案数据吗?", {
  415. btn: ['确定', '取消']
  416. // 按钮
  417. }, function () {
  418. var ids = new Array();
  419. // 遍历所有选择的行数据,取每条数据对应的ID
  420. $.each(rows, function (i, row) {
  421. ids[i] = row['id'];
  422. });
  423. layer.close(layer.index);
  424. location.href = prefix + "/batchExports?idValue=" + JSON.stringify(ids).replace('[', '%5B').replace(']', '%5D');
  425. // location.href = prefix + "/batchExports?idValue=" + JSON.stringify(ids);
  426. }, function () {
  427. });
  428. }
  429. //国办导出
  430. function gbExport() {
  431. var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行,当没有选择的记录时,返回一个空数组
  432. if (rows.length == 0) {
  433. layer.msg("请选择要导出的备案数据");
  434. return;
  435. }
  436. layer.confirm("确认要导出选中的'" + rows.length + "'条备案数据吗?", {
  437. btn: ['确定', '取消']
  438. // 按钮
  439. }, function () {
  440. var ids = new Array();
  441. // 遍历所有选择的行数据,取每条数据对应的ID
  442. $.each(rows, function (i, row) {
  443. ids[i] = row['id'];
  444. });
  445. layer.close(layer.index);
  446. location.href = prefix + "/gbExports?idValue=" + JSON.stringify(ids).replace('[', '%5B').replace(']', '%5D');
  447. // location.href = prefix + "/batchExports?idValue=" + JSON.stringify(ids);
  448. }, function () {
  449. });
  450. }
  451. //加密导出
  452. function encryptExports() {
  453. var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行,当没有选择的记录时,返回一个空数组
  454. if (rows.length == 0) {
  455. layer.msg("请选择要导出的备案数据");
  456. return;
  457. }
  458. layer.confirm("确认要导出选中的'" + rows.length + "'条备案数据吗?", {
  459. btn: ['确定', '取消']
  460. // 按钮
  461. }, function () {
  462. var ids = new Array();
  463. // 遍历所有选择的行数据,取每条数据对应的ID
  464. $.each(rows, function (i, row) {
  465. ids[i] = row['id'];
  466. });
  467. layer.close(layer.index);
  468. location.href = prefix + "/encryptExports?idValue=" + JSON.stringify(ids).replace('[', '%5B').replace(']', '%5D');
  469. // location.href = prefix + "/batchExports?idValue=" + JSON.stringify(ids);
  470. }, function () {
  471. });
  472. }
  473. function nextVerify(deptId, name) {
  474. console.log("deptId:" + deptId)
  475. var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行,当没有选择的记录时,返回一个空数组
  476. if (rows.length == 0) {
  477. layer.msg("请选择要联合审批的备案数据");
  478. return;
  479. }
  480. layer.confirm("确认要联合审批的'" + rows.length + "'条备案数据吗?", {
  481. btn: ['确定', '取消']
  482. // 按钮
  483. }, function () {
  484. var ids = new Array();
  485. // 遍历所有选择的行数据,取每条数据对应的ID
  486. $.each(rows, function (i, row) {
  487. ids[i] = row['id'];
  488. });
  489. $.ajax({
  490. type: 'POST',
  491. data: {
  492. "ids": ids
  493. },
  494. url: prefix + '/nextVerify/' + deptId,
  495. success: function (r) {
  496. if (r.code == 0) {
  497. layer.msg(r.msg);
  498. reLoad();
  499. } else {
  500. layer.msg(r.msg);
  501. }
  502. }
  503. });
  504. }, function () {
  505. });
  506. }
  507. //明文导入
  508. function dataImport() {
  509. layer.open({
  510. type: 2,
  511. title: '明文导入',
  512. maxmin: true,
  513. shadeClose: false, // 点击遮罩关闭层
  514. area: ['800px', '500px'],
  515. content: prefix + '/dataImport' // iframe的url
  516. });
  517. }