other_check.js 36 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007
  1. var file_src = "";
  2. var imgs_src = [];
  3. var idUpdate;
  4. var check_id;
  5. var check_type;
  6. var check_item_tree = null;
  7. var edittype = "add";
  8. var al_data = [];
  9. var isconfirmC = false;
  10. // 页面初始化
  11. function init() {
  12. $(document).delegate("#editImage img", "mouseenter", function() {
  13. var myself = $(this);
  14. var xx = $("<i class='icon-remove' img_src='" + $(this).attr('img_src') + "'></i>");
  15. xx.css({ "position": "absolute", "display": "" });
  16. $(this).parent().append(xx);
  17. $(".icon-remove").click(function() {
  18. myself.hide();
  19. imgs_src.push($(this).attr("img_src"));
  20. });
  21. })
  22. $(document).delegate("#editImage div", "mouseleave", function() {
  23. $(".icon-remove").hide();
  24. })
  25. // 初始化上传
  26. refreshUploader();
  27. setVisit();
  28. $.jeDate("#month_date", {
  29. isinitVal: true,
  30. format: 'YYYY/MM' // 分隔符可以任意定义,该例子表示只显示年月
  31. });
  32. $.jeDate("#month_date2", {
  33. isinitVal: true,
  34. format: 'YYYY-MM-DD hh:mm',
  35. zIndex: 300000000000 // 分隔符可以任意定义,该例子表示只显示年月日
  36. });
  37. $("#month_date").val(getCurrentTimeFormat());
  38. var road_manager;
  39. if (roleContains("STATION") || roleContains("WRECKER")) {
  40. road_manager = getCurrentUser().road_manager_id;
  41. }
  42. if (roleContains("ROAD_MANAGER")) {
  43. road_manager = getCurrentUser().organid;
  44. }
  45. // 设置道管
  46. setRoadManagerSelect("#first", road_manager, true);
  47. // 设置服务区
  48. var checked_dept = null;
  49. if (roleContains("QZD")) {
  50. checked_dept = getCurrentUser().organid;
  51. }
  52. // setSASelect("#fsList", checked_dept);
  53. setWreckerGroupAllSelect("#fsList", checked_dept);
  54. // 新增服务区下拉框
  55. var dept;
  56. if (roleContains("STATION") || roleContains("WRECKER")) {
  57. dept = getCurrentUser().organid;
  58. }
  59. var roadManager2;
  60. if (roleContains("ROAD_MANAGER")) {
  61. roadManager2 = getCurrentUser().organid;
  62. }
  63. var feeList = getOrganList(roadManager2);
  64. // setWreckerGroupSelect("#select-dept", checked_dept);
  65. setQzdSelectValueNoAll(feeList, "#select-dept", dept);
  66. // setPersonal();// 2期不需要人员显示
  67. var zTreeObj;
  68. var zNodes = [];
  69. check_item_tree = $.fn.zTree.init($("#check_rule_tree2"), {}, zNodes);
  70. getOtherCheckItems();
  71. $("#check_item_select input").on("click", function() {
  72. var nodedata;
  73. if ($("#check_item_select input") != undefined && $("#check_item_select input") != "") {
  74. nodedata = check_item_tree.getNodeByParam("name", $("#check_item_select input").val(), null);
  75. }
  76. $("#add_btn").data("tree_flag", 1);
  77. loadData(nodedata);
  78. $("#add_btn").data("tree_flag", 0);
  79. })
  80. setCheckTypeSelect('#speacial_type_select', '', 'special_check_type', true);
  81. queryTable();
  82. setCheckTypeSelect('#select-check-type', '', 'wrecker_group_check_type');
  83. setCheckTypeSelect('#select-special-check-type', '', 'special_check_type');
  84. }
  85. //关闭弹窗
  86. $("#close-layer").click(function() {
  87. layer.closeAll();
  88. })
  89. //条件查询
  90. $("#conditional_query").click(function() {
  91. queryTable();
  92. })
  93. //保存修改或添加
  94. $("#save-check").click(function() {
  95. var dept_id = $("#select-dept").val();
  96. // var user_id = $("#select-personal").val();
  97. var check_item_id = dept_selectinput != null ? dept_selectinput.value : null;
  98. var remark = $("#remark").val();
  99. var check_score = $("#check_score").val();
  100. var check_time = $("#month_date2").val();
  101. var check_num = $("#check_num").val();
  102. var wrecker_check_type = $("#select-check-type").val();
  103. var special_check_type = $("#select-special-check-type").val();
  104. if (idUpdate) {
  105. if ($("#editImage").attr("file_src") != '') {
  106. var src = $("#editImage").attr("file_src").split(",");
  107. var flag = 1;
  108. for (var i = 0; i < src.length; i++) {
  109. for (var j = 0; j < imgs_src.length; j++) {
  110. if (src[i] == imgs_src[j]) {
  111. flag = 0;
  112. break;
  113. }
  114. }
  115. if (flag == 1) {
  116. file_src += src[i] + ",";
  117. }
  118. }
  119. }
  120. }
  121. var file_ids = (file_src.substring(file_src.length - 1) == ',') ? file_src.substring(0, file_src.length - 1) : file_src;
  122. // var check_time_name = timeStamp2String(new Date(),"yyyy/MM");
  123. var check_time_name = timeStamp2String(new Date((check_time + ":00").replace("-g-/", "")), "yyyy/MM");
  124. var timeday = moment(check_time);
  125. var timec = moment(timeday.get("year") + "-" + (timeday.get('month') + 1) + "-26 00:00:00");
  126. if (timeday.valueOf() > timec.valueOf()) {
  127. var year = timeday.get("year");
  128. var month = timeday.get('month') + 2;
  129. if (month > 12) {
  130. year += 1;
  131. month -= 12;
  132. }
  133. check_time_name = year + "/" + (month > 9 ? month : ("0" + month));
  134. } else {
  135. var year = timeday.get("year");
  136. var month = timeday.get('month') + 1;
  137. if (month > 12) {
  138. year += 1;
  139. month -= 12;
  140. }
  141. check_time_name = year + "/" + (month > 9 ? month : ("0" + month));
  142. }
  143. if (dept_id == null || dept_id == undefined || dept_id == "") {
  144. layer.msg('请选择清障队');
  145. return;
  146. } else if (check_item_id == null || check_item_id == undefined || check_item_id == "") {
  147. layer.msg('请选择扣分类别');
  148. return;
  149. } else if (check_score == null || check_score == undefined || check_score == "") {
  150. layer.msg('请选择扣分值');
  151. return;
  152. }
  153. data = {
  154. "id": check_id,
  155. "dept_id": dept_id,
  156. // "user_id": user_id,
  157. "check_item_id": check_item_id,
  158. "check_type": check_type,
  159. "remark": remark,
  160. "check_score": check_score,
  161. "file_ids": file_ids,
  162. "check_time": check_time,
  163. "check_time_name": check_time_name,
  164. "check_num": check_num,
  165. "wrecker_check_type": wrecker_check_type,
  166. "special_check_type": special_check_type
  167. }
  168. console.log(data);
  169. if (idUpdate) {
  170. post_common_service("q/checkOther/update", data, function(data) {
  171. file_src = "";
  172. imgs_src = [];
  173. layer.closeAll();
  174. queryTable();
  175. }, function() {
  176. });
  177. } else {
  178. post_common_service("q/checkOther/add", data, function(data) {
  179. file_src = "";
  180. imgs_src = [];
  181. layer.closeAll();
  182. queryTable();
  183. }, function() {
  184. });
  185. }
  186. })
  187. //添加稽查记录
  188. $("#add_btn").click(function() {
  189. idUpdate = false;
  190. edittype = "add";
  191. check_id = null;
  192. $("#select-dept").val("");
  193. // $("#select-personal").val("");
  194. $(".treeSelect-input").val("");
  195. $("#remark").val("");
  196. $("#check_score").val("");
  197. $("#month_date2").val(timeStamp2String(new Date(), "yyyy-MM-dd HH:mm"));
  198. $("#check_num").val(1);
  199. $("#editImage").empty();
  200. layerUpdateTeam('form-div', '稽查记录新增', '550px');
  201. $("#save-check").html("保存");
  202. // if (check_type == 2) {
  203. // //特情稽查处理
  204. // $("#confirmC").prop('checked', false);
  205. // isconfirmC = false;
  206. // }
  207. //debugger;
  208. var nodedata;
  209. $("#add_btn").data("tree_flag", 1);
  210. loadData(nodedata);
  211. $("#add_btn").data("tree_flag", 0);
  212. $("#check_item_select input").on("click", function() {
  213. //debugger;
  214. // var nodedata;
  215. // $("#add_btn").data("tree_flag",1);
  216. // loadData(nodedata);
  217. // $("#add_btn").data("tree_flag",0);
  218. })
  219. })
  220. function confirmCfun() {
  221. isconfirmC = $("#confirmC").prop("checked");
  222. }
  223. function queryTable() {
  224. $(".datatable").empty();
  225. console.log(check_type);
  226. var data = {
  227. "check_time_name": $("#month_date").val(),
  228. "dept_id": $("#fsList").val(),
  229. "check_type": check_type,
  230. "special_check_type": $("#speacial_type_select").val()
  231. }
  232. var hide = true;
  233. // if (check_type == 5) {
  234. // hide = false;
  235. // }
  236. operation = true;
  237. var hide1 = true;
  238. // if (check_type == 2) {
  239. // hide1 = false;
  240. // }
  241. // if (check_type == 4) {
  242. // data["scoretype"] = $("#scoretype").val();
  243. // }
  244. var cols = [
  245. { width: 20, text: '序号', flex: false, colClass: 'text-center', field: 'num' },
  246. { width: 70, text: '时间', flex: false, colClass: '', field: 'check_time' },
  247. { width: 50, text: '部门', flex: false, colClass: '', field: 'organ_name' },
  248. // {
  249. // width: 30,
  250. // text: '人员',
  251. // flex: false,
  252. // colClass: '',
  253. // field: 'username',
  254. // func: function(obj) {
  255. // if (obj == null || obj == undefined) {
  256. // return "站部";
  257. // }
  258. // return obj;
  259. // }
  260. // },// 2期以服务区维度
  261. { width: 50, text: '扣分类型', flex: false, colClass: '', field: 'pcheckname' },
  262. { width: 50, text: '扣分项', flex: false, colClass: '', field: 'check_item_name' },
  263. { width: 30, text: '扣分值', flex: false, colClass: '', field: 'check_score' },
  264. { width: 120, text: '扣分描述', flex: false, colClass: '', field: 'remark' },
  265. { width: 30, text: '检查类型', flex: false, hide: hide, field: 'wrecker_check_type_name' },
  266. { width: 50, text: '稽查类型', flex: false, hide: hide1, field: 'special_check_type_name' },
  267. { width: 70, text: '附件', type: 'imagedd', flex: false, colClass: '', field: 'file_ids' }
  268. ];
  269. if (roleContains("JICHA") || hasRole("ROLE_ADMIN")) {
  270. cols.push({
  271. width: 60,
  272. text: '操作',
  273. flex: false,
  274. field: 'id',
  275. oper: [
  276. { func: 'updateCheckTeam', text: '修改', icon_class: 'icon-edit' }, { func: 'deleteCheckTeam', text: '删除', icon_class: 'icon-remove-circle' }
  277. ]
  278. });
  279. }
  280. $('.datatable').mytable({
  281. 'cols': cols,
  282. 'url': "q/checkOther/getAllCheckOther",
  283. 'param': data
  284. });
  285. }
  286. function deleteCheckTeam(id) {
  287. deleteItem4Common(id, "q/checkOther/delete", queryTable);
  288. }
  289. function updateCheckTeam(id) {
  290. check_id = id;
  291. data = {
  292. "id": id
  293. }
  294. post_common_service("q/checkOther/getCheckById", data, function(data) {
  295. var select_road = $(".div-roadManage select").val();
  296. var feeList = getOrganList(select_road);
  297. setSASelectValueNoAll(feeList, "#select-dept", data.dept_id);
  298. // setPersonal(data.user_id);
  299. // $("#select-dept").val(data.dept_id);
  300. // $("#select-personal").val(data.user_id);
  301. $("#check_item_select input").val(data.check_item_name);
  302. $("#remark").val(data.remark);
  303. $("#check_score").val(data.check_score);
  304. var time = data.check_time;
  305. $("#month_date2").val(data.check_time);
  306. $("#check_num").val(data.check_num);
  307. setCheckTypeSelect('#select-check-type', data.wrecker_check_type, "wrecker_group_check_type");
  308. setCheckTypeSelect('#select-special-check-type', data.special_check_type, 'special_check_type');
  309. $("#editImage").empty();
  310. if (data.file_ids != null && data.file_ids != "") {
  311. var ids = data.file_ids.split(",");
  312. var str = "";
  313. for (i = 0; i < ids.length; i++) {
  314. str += ids[i] + ",";
  315. $("#editImage").append("<div style='float:left;width:60px;'><img img_src='" + ids[i] + "' class='pic-class img-thumbnail' style='width:50px;height:50px;' alt='' src='http://file_release_yanhai.jsxt.jsjtyxt.com/" + ids[i] + "' ></div>");
  316. }
  317. $("#editImage").attr("file_src", (str.substring(str.length - 1) == ',') ? str.substring(0, str.length - 1) : str);
  318. }
  319. idUpdate = true;
  320. edittype = "edit";
  321. layerUpdateTeam('form-div', '稽查记录修改', '550px');
  322. $("#save-check").html("修改");
  323. var nodedata;
  324. if ($("#check_item_select input") != undefined && $("#check_item_select input") != "") {
  325. nodedata = check_item_tree.getNodeByParam("name", $("#check_item_select input").val(), null);
  326. }
  327. loadData(nodedata);
  328. $("#check_item_select input").on("click", function() {
  329. //debugger;
  330. // var nodedata;
  331. // if($("#check_item_select input") != undefined && $("#check_item_select input") != ""){
  332. // nodedata = check_item_tree.getNodeByParam("name",$("#check_item_select input").val(), null);
  333. // }
  334. // $("#add_btn").data("tree_flag",1);
  335. // loadData(nodedata);
  336. // $("#add_btn").data("tree_flag",0);
  337. })
  338. }, function() {
  339. });
  340. }
  341. function refreshUploader() {
  342. // 文件上传
  343. $('#uploaderExample').uploader({
  344. autoUpload: true, // 当选择文件后立即自动进行上传操作
  345. unique_names: true, // 生成唯一名称
  346. url: base_image_server_url + 'fileServer/file/upload', // 文件上传提交地址
  347. filters: {
  348. mime_types: [
  349. { title: '图片', extensions: 'jpg,gif,png' },
  350. { title: '图标', extensions: 'ico' },
  351. { title: '视频', extensions: 'mp4,avi' },
  352. { title: '文档', extensions: 'doc,docx' }
  353. ],
  354. // 不允许上传重复文件
  355. prevent_duplicates: true
  356. },
  357. fileTemplate: '<div class="file"><div class="file-progress-bar"></div><div class="file-wrapper"><div class="file-icon"><i class="icon icon-file-o"></i></div><div class="content"></div><div class="actions"><div class="file-status" data-toggle="tooltip"><i class="icon"></i> <span class="text"></span></div><a data-toggle="tooltip" class="btn btn-link btn-download-file" target="_blank"><i class="icon icon-download-alt"></i></a><button type="button" data-toggle="tooltip" class="btn btn-link btn-reset-file" title="Repeat"><i class="icon icon-repeat"></i></button><button type="button" data-toggle="tooltip" class="btn btn-link btn-rename-file" title="Rename"><i class="icon icon-pencil"></i></button><button type="button" data-toggle="tooltip" title="Remove" class="btn btn-link btn-delete-file"><i class="icon icon-trash text-danger"></i></button></div></div></div>', // 设置模板
  358. onFileUploaded: function(file, responseObject) {
  359. var datas = eval('(' + responseObject.response + ')');
  360. file_src += datas.result_data.path + ",";
  361. //$(".file").append("<div style='float:left;width:60px;'><img img_src='"+datas.result_data.path+"' class='pic-class img-thumbnail' style='width:50px;height:50px;' alt='' src='http://file_release_yanhai.jsxt.jsjtyxt.com/"+datas.result_data.path+"' ></div>");
  362. },
  363. onInit: function() {
  364. $("#file-list").empty();
  365. },
  366. onFilesRemoved: function(files) {
  367. // alert(files);
  368. }
  369. });
  370. }
  371. function setVisit() {
  372. if (roleContains("STATION") || roleContains("WRECKER")) {
  373. $("#first").attr("disabled", "disabled");
  374. $("#second").attr("disabled", "disabled");
  375. }
  376. if (roleContains("ROAD_MANAGER")) {
  377. $("#first").attr("disabled", "disabled");
  378. }
  379. if (!(roleContains("JICHA") || hasRole("ROLE_ADMIN"))) {
  380. $("#add_btn").hide();
  381. // $("#second").hide();
  382. }
  383. }
  384. /**
  385. * 根据道管中心获取服务区列表(下拉框)
  386. */
  387. $(".div-roadManage select").change(function() {
  388. setSASelect("#fsList", null);
  389. flag = true;
  390. });
  391. function getOrganList(select_road) {
  392. var organList;
  393. if (select_road) {
  394. // if (check_type == 5) {
  395. // organList = cache_road_manager_wrecker_group_map.get(select_road);
  396. // } else {
  397. organList = getWreckerGroupList.get(select_road);
  398. // }
  399. } else {
  400. // if (check_type == 5) {
  401. // organList = $.zui.store.get("cache_wrecker_group_list");
  402. // } else {
  403. organList = $.zui.store.get("cache_wrecker_group_list");
  404. // }
  405. }
  406. return organList;
  407. }
  408. // function setSecond() {
  409. // var select_road = $(".div-roadManage select").val();
  410. // var feeList = getOrganList(select_road);
  411. // var dept;
  412. // if (roleContains("STATION") || roleContains("WRECKER")) {
  413. // dept = getCurrentUser().organid;
  414. // }
  415. // refreshFee(feeList, dept);
  416. // }
  417. function setscoretype() {
  418. var sec = document.getElementById('scoretype');
  419. var tempStr = '<option value="all" selected>全部</option>'
  420. if (all_data.length > 0) {
  421. if (all_data[0].children.length > 0) {
  422. all_data[0].children.forEach(child => {
  423. tempStr += "<option value=" + child.name + " >" + child.name + "</option>";
  424. });
  425. sec.innerHTML = tempStr;
  426. } else {
  427. sec.innerHTML = '';
  428. }
  429. } else {
  430. sec.innerHTML = '';
  431. }
  432. }
  433. function refreshFee(data, selectId) {
  434. var sec = document.getElementById('second');
  435. var tempStr = '<option value="">全部</option>'
  436. if (data.length != 0) {
  437. for (var i = 0; i < data.length; i++) {
  438. if (data[i].deptid == selectId)
  439. tempStr += "<option value=" + data[i].deptid + " selected>" + data[i].name + "</option>";
  440. else
  441. tempStr += "<option value=" + data[i].deptid + ">" + data[i].name + "</option>";
  442. // }
  443. sec.innerHTML = tempStr;
  444. }
  445. } else {
  446. sec.innerHTML = '';
  447. }
  448. }
  449. // /**
  450. // * 部门人员下拉框
  451. // */
  452. // function setPersonal(selectUserId) {
  453. // var select_road = $("#select-dept").val();
  454. // var sec = document.getElementById('select-personal');
  455. // var tempStr = ''
  456. // var param = {
  457. // "organid": select_road
  458. // }
  459. // var url = "useq/getFsUserList";
  460. // if (check_type == 5) {
  461. // url = "user/getWGUserList";
  462. // }
  463. // post_common_service(url, param, function(data) {
  464. // console.log(data);
  465. // if (data.length != 0) {
  466. // var userId;
  467. // if (hasRole("ROLE_STATION")) {
  468. // userId = getCurrentUser().id;
  469. // } else {
  470. // userId = selectUserId;
  471. // }
  472. // // console.log(data);
  473. // if (check_type != 2) {
  474. // tempStr += "<option value=0>收费站</option>";
  475. // }
  476. // for (var i = 0; i < data.length; i++) {
  477. // // for (var j = 33; j <= 53; j++) {
  478. // // if (select_road == j) {
  479. // var workno = data[i].workno;
  480. // if (workno) workno = workno.substring(workno.length - 3);
  481. // if (data[i].id == userId) {
  482. // tempStr += "<option value='" + data[i].id + "' selected='selected' > " + workno + data[i].truename + "</option>";
  483. // } else {
  484. // tempStr += "<option value='" + data[i].id + "'" + (i == 0 ? " selected='selected'" : "") + "”>" + workno + data[i].truename + "</option>";
  485. // }
  486. // // }
  487. // // }
  488. // sec.innerHTML = tempStr;
  489. // }
  490. // sec.innerHTML = tempStr;
  491. // } else {
  492. // sec.innerHTML = '';
  493. // }
  494. // }, function(error) {
  495. // return "";
  496. // });
  497. // }
  498. // 部门改变后 重新生成人员下拉框
  499. // $("#select-dept").change(function() {
  500. // if (check_type == 2) {
  501. // if (isconfirmC) return;
  502. // }
  503. // setPersonal();
  504. // });
  505. $("#check_item_select").delegate("div[id*='treeSelect_panel_'] ", "blur", function() {
  506. // alert(1)
  507. if ($(this).is(":hidden")) {
  508. if (map[dept_selectinput.value] != null) {
  509. $("#check_score").val(map[dept_selectinput.value]);
  510. } else {
  511. $("#check_score").val("");
  512. }
  513. }
  514. })
  515. function layerUpdateTeam(domId, title, area) {
  516. var uploader = $('#uploaderExample').data('zui.uploader');
  517. uploader.destroy();
  518. refreshUploader();
  519. $(".file-list").empty();
  520. file_src = "";
  521. imgs_src = [];
  522. layer.open({
  523. type: 1,
  524. title: false,
  525. closeBtn: 1,
  526. title: title,
  527. shadeClose: true,
  528. skin: 'yourclass',
  529. area: area,
  530. content: $("#" + domId)
  531. });
  532. }
  533. // 增加和编辑框
  534. var dept_selectinput;
  535. function loadData(nodedata) {
  536. var pnode = nodedata;
  537. if (pnode != null) {
  538. dept_selectinput = new TreeSelect({
  539. element: '#check_item_select',
  540. data: all_data,
  541. valueKey: "id",
  542. placeholder: "请选择扣分类别",
  543. selectvalue: pnode.id
  544. });
  545. } else {
  546. if ($("#add_btn").data("tree_flag") == 1) {
  547. dept_selectinput = new TreeSelect({
  548. element: '#check_item_select',
  549. data: all_data,
  550. valueKey: "id",
  551. placeholder: "请选择扣分类别"
  552. });
  553. } else {
  554. }
  555. }
  556. }
  557. function getOtherCheckItems() {
  558. function zTreeOnRename(event, treeId, treeNode, isCancel) {
  559. alert(treeNode.tId + ", " + treeNode.name);
  560. }
  561. function zTreeOnRemove(event, treeId, treeNode) {
  562. alert(treeNode.tId + ", " + treeNode.name);
  563. }
  564. function getTreeData(c_obj, id) {
  565. if (c_obj.id == id) {
  566. return c_obj;
  567. } else {
  568. if (c_obj.subCheckItem != null) {
  569. for (var i = 0; i < c_obj.subCheckItem.length; i++) {
  570. var tmp = getTreeData(c_obj.subCheckItem[i], id);
  571. if (tmp != null) {
  572. return tmp;
  573. }
  574. }
  575. }
  576. return null;
  577. }
  578. }
  579. var seq = 0;
  580. function getTree(obj, rowObj) {
  581. var userdata = {};
  582. userdata["checked"] = false;
  583. if (obj.score != null) {
  584. userdata["data"] = [++seq, obj.name, (obj.score != null ? obj.score : ""), '<a href="javascript:void(0)" onclick="modify_check_item(' + obj.id + ')" ><i class="icon icon-edit"></i> 修改</a><a href="javascript:void(0)" onclick="delete_check_item(' + obj.id + ')" ><i class="icon icon-remove-circle"></i> 删除</a>'];
  585. rowObj.push(userdata);
  586. }
  587. if (obj.subCheckItem != null) {
  588. for (var i = 0; i < obj.subCheckItem.length; i++) {
  589. getTree(obj.subCheckItem[i], rowObj);
  590. }
  591. }
  592. return rowObj;
  593. }
  594. function zTreeOnClick(event, treeId, treeNode) {
  595. var rowdata = [];
  596. seq = 0;
  597. for (var i = 0; i < z_cache.length; i++) {
  598. var treeObj = getTreeData(z_cache[i], treeNode.id);
  599. if (treeObj != null) {
  600. rowdata = getTree(treeObj, rowdata);
  601. break;
  602. }
  603. }
  604. // 使用data参数更新数据:
  605. $('.datatable').datatable('load', {
  606. cols: cols,
  607. rows: rowdata
  608. });
  609. };
  610. var setting = {
  611. data: {
  612. simpleData: {
  613. enable: true,
  614. idKey: "id",
  615. pIdKey: "pId",
  616. rootPId: null
  617. }
  618. },
  619. view: { //表示tree的显示状态
  620. selectMulti: false //表示禁止多选
  621. },
  622. check: { //表示tree的节点在点击时的相关设置
  623. enable: false, //是否显示radio/checkbox
  624. chkStyle: "checkbox", //值为checkbox或者radio表示
  625. checkboxType: { p: "", s: "" }, //表示父子节点的联动效果
  626. radioType: "level" //设置tree的分组
  627. },
  628. callback: {
  629. onRename: zTreeOnRename,
  630. // beforeDrop: zTreeBeforeDrop,
  631. onRemove: zTreeOnRemove,
  632. onClick: zTreeOnClick
  633. },
  634. edit: {
  635. enable: true,
  636. drag: {
  637. autoExpandTrigger: true,
  638. isMove: true,
  639. prev: false,
  640. next: true,
  641. inner: true,
  642. autoOpenTime: 0
  643. },
  644. showRenameBtn: false,
  645. showRemoveBtn: false
  646. }
  647. };
  648. var param = {};
  649. // rule_type=8,服务区暗访考核办法.rule_type=9,服务区现场考核办法
  650. // check_type=8,服务区第三方暗访,check_type=9,服务区现场稽查
  651. if (check_type == 11) {
  652. param.rule_type = 11;
  653. } else if (check_type == 12) {
  654. param.rule_type = 12;
  655. }else if (check_type == 13) {
  656. param.rule_type = 13;
  657. }else if (check_type == 14) {
  658. param.rule_type = 14;
  659. }
  660. post_common_service('checkRule/getItemListByRuleType', param, function(data) {
  661. all_data = [];
  662. z_cache = data;
  663. if (data) {
  664. for (var i = 0; i < data.length; i++) {
  665. var m = data[i];
  666. var zdataItem = {};
  667. zdataItem["id"] = m.id;
  668. zdataItem["value"] = m.id;
  669. zdataItem["pId"] = null;
  670. zdataItem["score"] = m.score;
  671. zdataItem["name"] = m.name;
  672. zdataItem["open"] = true;
  673. zdataItem["children"] = addobj(m);
  674. zdataItem.open = true;
  675. all_data.push(zdataItem);
  676. }
  677. check_item_tree = $.fn.zTree.init($("#check_rule_tree2"), setting, all_data)
  678. // if (check_type == 4) {
  679. // setscoretype();
  680. // }
  681. }
  682. }, function(error) {})
  683. }
  684. function addobj(data) {
  685. var zdata = [];
  686. if (typeof(data.subCheckItem) != "undefinde" && data.subCheckItem != null &&
  687. data.subCheckItem.length > 0) {
  688. for (var i = 0; i < data.subCheckItem.length; i++) {
  689. var m = data.subCheckItem[i];
  690. var zdataItem = {};
  691. // if(m.score != null){
  692. // continue;
  693. // }
  694. zdataItem["id"] = m.id;
  695. zdataItem["value"] = m.id;
  696. zdataItem["pId"] = data.id;
  697. zdataItem["score"] = m.score;
  698. zdataItem["icon"] = "";
  699. zdataItem["name"] = m.name;
  700. zdataItem["children"] = addobj(m);
  701. zdataItem.open = false;
  702. zdata.push(zdataItem);
  703. map[m.id] = m.score;
  704. }
  705. return zdata;
  706. } else {
  707. return [];
  708. }
  709. }
  710. var map = {};
  711. function setCheckTypeSelect(div, selectId, codeFlag, hasAll) {
  712. post_common_service("/constant/getConstantByFlag", { code_flag: codeFlag }, function(data) {
  713. var optStr = '';
  714. if (hasAll) optStr = '<option value="">全部</option>';
  715. for (var i in data) {
  716. if (data[i].code_value == selectId)
  717. optStr += '<option value="' + data[i].code_value + '" selected="selected">' + data[i].code_name + '</option>';
  718. else
  719. optStr += '<option value="' + data[i].code_value + '">' + data[i].code_name + '</option>';
  720. }
  721. $(div).html('');
  722. $(div).html(optStr);
  723. });
  724. }
  725. function static() {
  726. var type = $("#speacial_type_select").val();
  727. if (check_type == 11 || check_type == 12 || check_type == 13 || check_type == 14) {
  728. var p = {
  729. "check_type": check_type,
  730. "check_period": $("#month_date").val(),
  731. "special_check_type": type
  732. };
  733. post_common_service("q/checkOther/getOtherCheckStatistics", p, function(data) {
  734. console.log(data);
  735. var names = new Array();
  736. var totalnamesvalue = new HashMap();
  737. var itemsname = "";
  738. var datas = '';
  739. var t8 = 0;
  740. var title = "";
  741. if (check_type == 12) title = "清障队第三方暗访情况";
  742. if (check_type == 11) title = "清障队现场检查情况";
  743. if (check_type == 13) title = "清障队96777";
  744. if (check_type == 14) title = "清障队其它稽查情况";
  745. // if (check_type == 4) title = "数据平台应用情况";
  746. // if (check_type == 2 && type == "1") title = "公司特情稽查情况";
  747. // if (check_type == 2 && type == "2") title = "联网特情稽查情况";
  748. for (var key in data) {
  749. for (var i in data[key]) {
  750. itemsname = "";
  751. var itemvalue = "";
  752. names = new Array();
  753. for (var name in data[key][i].scoremap) {
  754. names.push(name);
  755. itemsname += '<td style="width:78px">' + name + '</td>';
  756. itemvalue += '<td>' + data[key][i].scoremap[name] + '</td>';
  757. var v = totalnamesvalue.get(name);
  758. if (v == null || v == undefined) v = 0;
  759. v += data[key][i].scoremap[name];
  760. totalnamesvalue.set(name, v);
  761. }
  762. datas += '<tr>';
  763. if (i == 0) {
  764. datas += '<td rowspan=' + data[key].length + '>' + key + "</td>";
  765. }
  766. datas += '<td>' + data[key][i].deptname + "</td>";
  767. datas += itemvalue;
  768. datas += '<td>' + data[key][i].totalScore + '</td>';
  769. datas += '<td>' + data[key][i].level + '</td>';
  770. datas += '</tr>';
  771. t8 += data[key][i].totalScore;
  772. }
  773. }
  774. datas += '<tr><td colspan=2>合计</td>';
  775. for (var i in names) {
  776. datas += '<td>' + totalnamesvalue.get(names[i]) + '</td>';
  777. }
  778. datas += '<td>' + t8 + '</td><td> - </td></tr>';
  779. var html = ' <table class="statable">' +
  780. ' <thead style="font-size: 20px;text-align: center;border: 0px;">' +
  781. ' <tr>' +
  782. ' <td colspan="13" style="padding: 10px;border: 0px;">' + $("#month_date").val().replace("/", "-") + '月份' + title + '</td>' +
  783. ' </tr>' +
  784. ' </thead>' +
  785. ' <tbody>' +
  786. ' <tr>' +
  787. ' <td style="width:40px">道管</td>' +
  788. ' <td style="width:78px">服务区</td>' +
  789. itemsname +
  790. ' <td>得分<br>(1000)</td>' +
  791. ' <td>服务<br>评价</td>' +
  792. ' </tr>' +
  793. datas +
  794. ' </tbody>' +
  795. ' </table>';
  796. layer.open({
  797. area: ["800px", "500px"],
  798. type: 1,
  799. title: '统计',
  800. maxmin: true,
  801. closeBtn: 1,
  802. shadeClose: true,
  803. skin: '#fff', //没有背景色
  804. resize: true,
  805. content: "<div style='width:100%;background: #fff;text-align: center;padding:10px'> <button class=\"btn btn-info3\" type=\"button\" style=\" position: absolute;right: 10px;top: 17px;\" onclick=\"exportThirds()\"> 导出Excel</button>" + html + "</div>"
  806. });
  807. });
  808. }
  809. // if (check_type == 2 && type == "") {
  810. // var p = {
  811. // "check_type": check_type,
  812. // "check_period": $("#month_date").val()
  813. // };
  814. // post_common_service("/f/checkOther/getOtherCheckStatistics", p, function(data) {
  815. // var names = new Array();
  816. // var totalnamesvalue = new HashMap();
  817. // var itemsname = "";
  818. // var datas = '';
  819. // var t8 = 0;
  820. // var t1 = 0;
  821. // var t2 = 0;
  822. // var t3 = 0;
  823. // //key 盐城道管
  824. // for (var key in data) {
  825. // //i list 盐城
  826. // for (var i in data[key]) {
  827. // var itemvalue = "";
  828. // //type 1
  829. // for (var j in data[key][i].scoretypemap) {
  830. // var scoremap = data[key][i].scoretypemap[j];
  831. // names = new Array();
  832. // itemsname = "";
  833. // var totalvalue = 0;
  834. // for (var name in scoremap) {
  835. // names.push(name);
  836. // itemsname += '<td style="width:78px">' + name + '</td>';
  837. // itemvalue += '<td>' + scoremap[name] + '</td>';
  838. // totalvalue += scoremap[name];
  839. // var v = totalnamesvalue.get(name + j);
  840. // if (v == null || v == undefined) v = 0;
  841. // v += scoremap[name];
  842. // totalnamesvalue.set(name + j, v);
  843. // }
  844. // itemvalue += '<td>' + totalvalue + '</td>';
  845. // if (j == "1") t2 += totalvalue;
  846. // if (j == "2") t3 += totalvalue;
  847. // }
  848. // datas += '<tr>';
  849. // if (i == 0) {
  850. // datas += '<td rowspan=' + data[key].length + '>' + key + "</td>";
  851. // }
  852. // datas += '<td>' + data[key][i].deptname + "</td>";
  853. // datas += '<td>' + data[key][i].totalcheck + "</td>";
  854. // datas += itemvalue;
  855. // datas += '<td>' + data[key][i].totalScore + '</td>';
  856. // datas += '</tr>';
  857. // t1 += data[key][i].totalcheck;
  858. // t8 += data[key][i].totalScore;
  859. // }
  860. // }
  861. // datas += '<tr><td colspan=2>合计</td>';
  862. // datas += '<td>' + t1 + '</td>';
  863. // for (var i in names) {
  864. // datas += '<td>' + totalnamesvalue.get(names[i] + "1") + '</td>';
  865. // }
  866. // datas += '<td>' + t2 + '</td>';
  867. // for (var i in names) {
  868. // datas += '<td>' + totalnamesvalue.get(names[i] + "2") + '</td>';
  869. // }
  870. // datas += '<td>' + t3 + '</td>';
  871. // datas += '<td>' + t8 + '</td></tr>';
  872. // var html = ' <table class="statable">' +
  873. // ' <thead style="font-size: 20px;text-align: center;border: 0px;">' +
  874. // ' <tr>' +
  875. // ' <td colspan="13" style="padding: 10px;border: 0px;">' + $("#month_date").val().replace("/", "-") + '月份特情稽查情况汇总</td>' +
  876. // ' </tr>' +
  877. // ' </thead>' +
  878. // ' <tbody>' +
  879. // ' <tr>' +
  880. // '<td rowspan=2>道管</td>' +
  881. // '<td rowspan=2>服务区</td>' +
  882. // '<td rowspan=2>存在问题特情数量</td>' +
  883. // '<td colspan=' + (names.length + 1) + '>内部特情稽查存在问题数量</td>' +
  884. // '<td colspan=' + (names.length + 1) + '>联网中心特情稽查存在问题数量</td>' +
  885. // '<td rowspan=2>合计扣分</td>' +
  886. // ' </tr>' +
  887. // ' <tr>' +
  888. // itemsname +
  889. // '<td >合计</td>' +
  890. // itemsname +
  891. // '<td >合计</td>' +
  892. // ' </tr>' +
  893. // datas +
  894. // ' </tbody>' +
  895. // ' </table>';
  896. // layer.open({
  897. // area: ["800px", "500px"],
  898. // type: 1,
  899. // title: '统计',
  900. // maxmin: true,
  901. // closeBtn: 1,
  902. // shadeClose: true,
  903. // skin: '#fff', //没有背景色
  904. // resize: true,
  905. // content: "<div style='width:100%;background: #fff;text-align: center;padding:10px'> <button class=\"btn btn-info3\" type=\"button\" style=\" position: absolute;right: 10px;top: 17px;\" onclick=\"exportThirds()\"> 导出Excel</button>" + html + "</div>"
  906. // });
  907. // });
  908. // }
  909. }