Aucune description

WorkOrderTransfer.js 32KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100
  1. /**
  2. * 工单分配
  3. * */
  4. var jsonarr = []
  5. $(document).ready(function() {
  6. autosize($('textarea'));
  7. var ID = helper.request.queryString("oid"); //工单编号
  8. var rtype = helper.request.queryString("rtype"); //工单类型
  9. if(ID) {
  10. getWorkOrderInfo(ID);
  11. }
  12. if($.cookie('userRoleCode') == 'JDYPTZX' || $.cookie('userRoleCode') == 'JDYBZZX' || $.cookie('userRoleCode') == 'XTGLY') {
  13. $('.zy').show()
  14. $('.pt').hide()
  15. $('.commonjs').show()
  16. } else {
  17. $('.zy').hide()
  18. $('.pt').show()
  19. $('.commonjs').hide()
  20. }
  21. //确定点击按钮
  22. $("#clgd").click(function() {
  23. var codearr = []
  24. var namearr = []
  25. var pfarr = []
  26. var numarr = []
  27. var allarr = []
  28. var obj = {}
  29. $(".code").each(function() {
  30. codearr.push($(this).val())
  31. })
  32. $(".name1").each(function() {
  33. namearr.push($(this).val())
  34. })
  35. $(".pf").each(function() {
  36. pfarr.push($(this).val())
  37. })
  38. $(".num").each(function() {
  39. numarr.push($(this).val())
  40. })
  41. for(var i = 0; i < codearr.length; i++) {
  42. for(var j = 0; j < namearr.length; j++) {
  43. for(var m = 0; m < pfarr.length; m++) {
  44. for(var n = 0; n < numarr.length; n++) {
  45. obj = {
  46. materialcode: codearr[i],
  47. materialname: namearr[i],
  48. formula: pfarr[i],
  49. returnum: numarr[i]
  50. }
  51. }
  52. }
  53. }
  54. allarr.push(obj)
  55. }
  56. jsonarr = allarr
  57. console.log(jsonarr)
  58. //alert($("#gcDuanxin").find('input[type="radio"]:checked').val());
  59. //alert($("#gcRevice").val());
  60. dealWorkOrder(ID);
  61. });
  62. //tree下拉框效果
  63. $(".inpBox .tree").click(function() {
  64. if($(this).parent().find(".addTree").is(":hidden")) {
  65. $(this).parent().find(".addTree").show();
  66. } else {
  67. $(this).parent().find(".addTree").hide();
  68. }
  69. });
  70. //普通下拉框效果
  71. $(".inpBox .select").click(function() {
  72. if($(this).parent().find(".xl_common").is(":hidden")) {
  73. $(this).parent().find(".xl_common").show();
  74. } else {
  75. $(this).parent().find(".xl_common").hide();
  76. }
  77. });
  78. $(".xl").click(function() {
  79. if($(this).parent().find(".addTree").is(":hidden")) {
  80. $(this).parent().find(".addTree").show();
  81. } else {
  82. $(this).parent().find(".addTree").hide();
  83. }
  84. if($(this).parent().find(".xl_common").is(":hidden")) {
  85. $(this).parent().find(".xl_common").show();
  86. } else {
  87. $(this).parent().find(".xl_common").hide();
  88. }
  89. });
  90. // $(".inpBox").mouseleave(function() {
  91. // $(this).children(".addTree").hide();
  92. // $(this).children(".xl_common").hide();
  93. // });
  94. //清除
  95. $(".Cleans ").click(function() {
  96. $('.inps').val("");
  97. $("#PID").val("");
  98. $("#Dpment").val("");
  99. })
  100. $(".xl_box").on("click", "li", function() {
  101. var obj = $(this).parent().parent().parent();
  102. obj.find("input").eq(0).val($(this).text());
  103. obj.find("input").eq(1).val($(this).attr("itemid"));
  104. obj.find(".xl_common").hide();
  105. });
  106. getBM($("#zrbmtree"));
  107. getBM($("#zrbmtree2"));
  108. $('#btn_cha').click(function() {
  109. initTable();
  110. })
  111. })
  112. //获取部门
  113. var setting = {
  114. data: {
  115. key: {
  116. name: "text"
  117. },
  118. simpleData: {
  119. enable: true,
  120. idKey: "id",
  121. pIdKey: "ParentId",
  122. rootPId: 0
  123. }
  124. },
  125. callback: {
  126. onClick: zTreeOnClick
  127. }
  128. };
  129. function darptSearch() {
  130. $('.xlAdd').css('display', 'none');
  131. $(".selDpart1").css('display', 'block');
  132. depart();
  133. }
  134. function getBM(obj) {
  135. $.getJSON(huayi.config.callcenter_url + 'Department/GetAssignDeptList', {
  136. token: $.cookie("token"),
  137. keywords: $('.inps').val(),
  138. }, function(result) {
  139. if(result.state.toLowerCase() == "success") {
  140. var treeObj = $.fn.zTree.init(obj, setting, result.data);
  141. treeObj.expandAll(false);
  142. }
  143. })
  144. }
  145. function zTreeOnClick(event, treeId, treeNode) {
  146. if(event) {
  147. event.stopPropagation();
  148. }
  149. var obj = $("#" + event.data.treeId).parent();
  150. obj.parent().find("input").eq(0).val(treeNode.text);
  151. obj.parent().find("input").eq(1).val(treeNode.id);
  152. obj.hide();
  153. getRY($(".clid"), $("#clbm").val());
  154. getRY($(".clid2"), $("#clbm2").val());
  155. };
  156. $("#sponsor").on('click', 'li', function() {
  157. $(".selDpart1").css('display', 'none');
  158. $(".tree").val($(this).html());
  159. $("#Dpment").val($(this).attr("index"));
  160. $(".Cleans").show();
  161. getRY($(".clid"), $("#clbmname").val());
  162. getRY($(".clid2"), $("#clbmname2").val());
  163. })
  164. function depart() {
  165. $("#sponsor").empty();
  166. $.getJSON(huayi.config.callcenter_url + "WorkOrderNew/GetModelDeptName", {
  167. "token": $.cookie("token"),
  168. F_DeptName: $('.inps').val(),
  169. }, function(data) {
  170. if(data.state.toLowerCase() == "success") {
  171. var content = data.data;
  172. $(content).each(function(i, n) {
  173. $("<li index='" + n.depname + "'>" + n.deptid + "</li>").appendTo("#sponsor");
  174. })
  175. getRY($(".clid"), $("#clbm").val());
  176. getRY($(".clid2"), $("#clbm2").val());
  177. }
  178. })
  179. }
  180. //获取人员
  181. function getRY(obj, deptid) {
  182. var proid = helper.request.queryString("proid"); //项目id
  183. obj.empty();
  184. obj.append('<li itemid="">--请选择--</li>');
  185. // obj.parent().parent().find("input").eq(0).val("--请选择--");
  186. // obj.parent().parent().find("input").eq(1).val("");
  187. $.getJSON(huayi.config.callcenter_url + 'UserAccount/GetDeptUserList', {
  188. proid: proid,
  189. deptid: deptid,
  190. token: $.cookie("token")
  191. }, function(result) {
  192. if(result.state.toLowerCase() == "success") {
  193. $(result.data).each(function(i, n) {
  194. obj.append('<li itemid="' + n.F_UserId + '">' + n.F_UserName + '(' + n.F_UserCode + ')</li>');
  195. });
  196. obj.find("li").click(function(event) {
  197. if(event) {
  198. event.stopPropagation();
  199. }
  200. $(this).parent().parent().parent().find("input").eq(0).val($(this).text());
  201. $(this).parent().parent().parent().find("input").eq(1).val($(this).attr("itemid"));
  202. $(this).parent().parent().hide();
  203. });
  204. }
  205. })
  206. }
  207. getReceiveUser();
  208. //获取接收人员
  209. function getReceiveUser() {
  210. $.ajax({
  211. url: huayi.config.callcenter_url + 'WxLogin/GetHighlevel',
  212. type: 'get',
  213. data: {
  214. token: $.cookie("token")
  215. },
  216. dataType: "json",
  217. async: true,
  218. success: function(res) {
  219. $("#gcRevice").empty();
  220. if(res.state.toLowerCase() === "success") {
  221. res = res.data.user;
  222. if(res && res.length > 0) {
  223. $("#gcRevice").append('<option value="">请选择接收人</option>');
  224. res.forEach(function(v, i) {
  225. $("#gcRevice").append('<option value="' + v.F_UserId + '" data-code="' + v.F_UserId + '">' + v.F_UserName + '(' + v.F_UserCode + ')</option>');
  226. });
  227. }
  228. }
  229. },
  230. });
  231. }
  232. $('#gcDuanxin').find('input[type="radio"]').on('change', function() {
  233. if($(this).val() == "0") { //业务办理
  234. $(".gcSelDiv").hide();
  235. $(".gcSelDiv").val("");
  236. } else {
  237. $(".gcSelDiv").show();
  238. }
  239. });
  240. $('#yijian').find('input[type="radio"]').on('change', function() {
  241. if($(this).val() == "不同意") { //业务办理
  242. $('#pionn,#piocni').show();
  243. } else {
  244. $('#pionn,#piocni').hide();
  245. }
  246. });
  247. $('#buchang').find('input[type="radio"]').on('change', function() {
  248. if($(this).val() == "钱款") { //业务办理
  249. $('.mmm').show();
  250. } else {
  251. $('.mmm').hide();
  252. }
  253. });
  254. //获取工单信息
  255. function getWorkOrderInfo(oid) {
  256. $.ajax({
  257. type: "get",
  258. url: huayi.config.callcenter_url + "WorkOrderNew/GetDetails",
  259. async: true,
  260. dataType: 'json',
  261. data: {
  262. id: oid,
  263. token: $.cookie("token")
  264. },
  265. success: function(data) {
  266. /*验证请求*/
  267. if(data.state == "success") {
  268. var Str = data.rows;
  269. if(Str && Str.length > 0) {
  270. if(Str[0].MaterialItems) {
  271. var materialArr = Str[0].MaterialItems
  272. for(var i = 0; i < materialArr.length; i++) {
  273. $("#deal_table").append('<tr> <th class = "cph" style = "display: none;" > 物料编码: </th> <td class = "cph" style = "display: none;" ><span class="m1"></span> </td> <th class = "cph" style = "display: none;" > 名称: </th> <td class = "cph" style = "display: none;" ><span class="m2"></span> </td></tr> <tr><th class = "cph" style = "display: none;" > 配方: </th> <td class = "cph" style = "display: none;" ><span class="m3"></span> </td> <th style = "display: none;" class = "shinum" > 实收返厂数量(吨): </th> <td style = "display: none;" class = "shinum" ><span class="m4"></span> </td> </tr>')
  274. document.getElementsByClassName("m1")[i].innerText = materialArr[i].F_MaterialCode
  275. document.getElementsByClassName("m2")[i].innerText = materialArr[i].F_MaterialName
  276. document.getElementsByClassName("m3")[i].innerText = materialArr[i].F_Formula
  277. document.getElementsByClassName("m4")[i].innerText = materialArr[i].F_ReturnQuantity
  278. }
  279. }
  280. $('#cl_gdbh').text(Str[0].F_WorkOrderCode); //工单编号
  281. $("#cl_gdlx").text(Str[0].F_TypeName); //工单类型
  282. $("#xq_source").text(Str[0].F_SourceName); //工单来源
  283. $("#cl_gdn").text(Str[0].F_DeptName); //业务办理
  284. $("#cl_khxm").text(Str[0].F_CusName); //姓名
  285. $("#cl_khdh").text(helper.filter.cutTel(Str[0].F_CusPhone)); //电话
  286. $('#cl_gdnr').text(decodeURIComponent(Str[0].Detail));
  287. if($("#cl_gdn").text() == "市场管理科") {
  288. $(".isSelDiv").show();
  289. $(".gy").show()
  290. } else {
  291. $(".isSelDiv").remove();
  292. $(".gy").hide()
  293. }
  294. if($("#cl_gdn").text() == "销售内勤") {
  295. $('.fzmoney').show()
  296. }
  297. if($("#cl_gdlx").text() == "抽检") {
  298. $('.noSampling').hide();
  299. $('.Sampling').show();
  300. $(".chaishi input[type=radio][value='720']").prop("checked", true);
  301. if($("#cl_gdn").text() == "市场管理科") {
  302. $("#abcde").show();
  303. $("#abc").hide();
  304. $("#zipeti").hide();
  305. }
  306. } else if($("#cl_gdlx").text() == "投诉") {
  307. $('.Sampling').hide();
  308. $('.noSampling').show();
  309. $(".chaishi input[type=radio][value='12']").prop("checked", true);
  310. if($("#cl_gdn").text() == "市场管理科") {
  311. $("#abc").show();
  312. $("#abcde").hide();
  313. $("#zipeti").show();
  314. }
  315. if($("#cl_gdn").text() == "计划调度科") {
  316. $('.shinum').show()
  317. $('.cph').show()
  318. }
  319. if($("#cl_gdn").text() == "成品库") {
  320. $('.cpk').show()
  321. }
  322. // if($("#cl_gdn").text() == "销售内勤") {
  323. // $('.fzmoney').show()
  324. // }
  325. } else if($("#cl_gdlx").text() == "咨询") {
  326. $('.Sampling').hide();
  327. $('.noSampling').show();
  328. $(".chaishi input[type=radio][value='12']").prop("checked", true);
  329. if($("#cl_gdn").text() == "市场管理科") {
  330. $("#abc").show();
  331. $("#ddd").hide();
  332. $("#zipeti").show();
  333. }
  334. } else if($("#cl_gdlx").text() == "建议及其他") {
  335. $('.Sampling').hide();
  336. $('.noSampling').show();
  337. $(".chaishi input[type=radio][value='12']").prop("checked", true);
  338. }
  339. if($("#cl_gdlx").text() == "抽检") {
  340. if($("#cl_gdn").text() == "质量管理部") {
  341. $("#abcdef").show();
  342. $("#abcde").hide();
  343. }
  344. } else if($("#cl_gdlx").text() == "投诉" ||$("#cl_gdlx").text() == "业务协办") {
  345. if($("#cl_gdn").text() == "质量管理部" || $("#cl_gdn").text() == "复合肥质量管理科") {
  346. $("#zcetey").show();
  347. $("#abcd").show();
  348. $("#abc").hide();
  349. }
  350. } else if($("#cl_gdlx").text() == "咨询") {
  351. if($("#cl_gdn").text() == "质量管理部") {
  352. $("#zcetey").show();
  353. $("#ddd").show();
  354. $("#ccc").hide();
  355. }
  356. }
  357. if($("#cl_gdlx").text() == "抽检") {
  358. if($("#cl_gdn").text() == "销售财务") {
  359. $("#hhh").show();
  360. $("#nnn").hide();
  361. }
  362. } else if($("#cl_gdlx").text() == "投诉") {
  363. if($("#cl_gdn").text() == "销售财务") {
  364. $("#hhh").show();
  365. $("#nnn").hide();
  366. }
  367. } else if($("#cl_gdlx").text() == "咨询") {
  368. if($("#cl_gdn").text() == "销售财务") {
  369. $("#hhh").show();
  370. $("#nnn").hide();
  371. }
  372. }
  373. if($("#cl_gdlx").text() == "抽检") {
  374. if($("#cl_gdn").text() == "复合肥市场管理科") {
  375. $("#nnn").show();
  376. $("#hhh").hide();
  377. }
  378. } else if($("#cl_gdlx").text() == "投诉") {
  379. if($("#cl_gdn").text() == "复合肥市场管理科") {
  380. $("#nnn").show();
  381. $("#hhh").hide();
  382. }
  383. } else if($("#cl_gdlx").text() == "咨询") {
  384. if($("#cl_gdn").text() == "复合肥市场管理科") {
  385. $("#nnn").show();
  386. $("#hhh").hide();
  387. }
  388. }
  389. if(Str[0].F_limit > 0) {
  390. $(".chaishi input[type=radio][value=" + Str[0].F_limit + "]").prop("checked", true);
  391. $(".chaishi input").attr("disabled", "disabled");
  392. $(".residue").show();
  393. $(".residueTime").text(Str[0].RemainingTime);
  394. }
  395. //附件
  396. var proimglists = data.FileUrl;
  397. proimglists = proimglists == null ? [] : proimglists;
  398. limitNum -= proimglists.length;
  399. uploaderImages(); //附件上传
  400. if(proimglists.length > 0) {
  401. $('#fileNum').text(proimglists.length);
  402. var $list = $("#fileList");
  403. $.each(proimglists, function(i, v) {
  404. proimglist.push(v.F_FileId);
  405. if(v.F_FileType.split("\/")[0] === 'image') {
  406. //原来的图片
  407. var $li = $(
  408. '<li><span class="img_mask"><i class="img_del"></i></span>' +
  409. '<img src="' + v.F_FileUrl + '" title="原来的图片"/>' +
  410. '<span class="file_name">' + v.F_FileName + '</span>' +
  411. '</li>'
  412. );
  413. $list.append($li);
  414. } else {
  415. var $liFile = $(
  416. '<li><span class="img_mask"><i class="img_del"></i></span>' +
  417. '<div class="noThumb" title="原来的文件"><i class="glyphicon glyphicon-paperclip"></i><p>无法预览</p></div>' +
  418. '<span class="file_name">' + v.F_FileName + '</span>' +
  419. '</li>'
  420. );
  421. $list.append($liFile);
  422. }
  423. });
  424. $list.find('li').off('click');
  425. $list.find('li').on('click', '.img_del', function() {
  426. $(this).parent().parent().remove();
  427. var itemFileName = $(this).parent().parent().find('.file_name').text();
  428. $.each(proimglists, function(i, v) {
  429. if(v && v.F_FileName == itemFileName) {
  430. proimglist.splice(i, 1);
  431. }
  432. });
  433. $('#fileNum').text(proimglist.length);
  434. limitNum = 6 - proimglist.length;
  435. uploaderImages();
  436. });
  437. }
  438. //微信内文件(暂时不用)
  439. var Files = Str[0].Files;
  440. if(Files) {
  441. var a;
  442. var b;
  443. $(Files).each(function(i, n) {
  444. a = n.F_FileType.split("\/")[0];
  445. b = n.F_FileName.split(".")[1];
  446. // console.log(a);
  447. if(a == 'image') {
  448. $('<div class="img-box"><a href="+' + n.F_FileUrl + '" download="' + n.F_FileName + '"><img src="' + n.F_FileUrl + '" alt="" class="image-item" data-preview-group="1" /><span class="">' + b + '</span></a><div>').appendTo(".space");
  449. } else {
  450. $('<div class="img-box "><a href="+' + n.F_FileUrl + '" download="' + n.F_FileName + '"><span class="">' + b + '</span></a><div>').appendTo(".space");
  451. }
  452. })
  453. }
  454. }
  455. }
  456. }
  457. });
  458. }
  459. /**
  460. * 附件上传直接在知识库管理拿来用 开始
  461. * */
  462. var proimglist = []; //保存附件数组
  463. var uploader; //上传实例
  464. var limitNum = 100; //限制数量
  465. var edit_id = helper.request.queryString("edit_id");
  466. var token = $.cookie("token");
  467. $(function() {
  468. autosize($('textarea'));
  469. getChangeTree();
  470. if(edit_id) {
  471. getDetail();
  472. } else {
  473. $('#kn_type').val('顶级分类');
  474. $('#kn_type').attr('data-id', 0)
  475. uploaderImages();
  476. }
  477. //初始化 下拉
  478. $('.inps1').focus(function() {
  479. $('.xlAdd').css('display', 'block');
  480. });
  481. $('.xl_one').click(function() {
  482. if($('.xlAdd').css('display') == 'block') {
  483. $('.xlAdd').css('display', 'none')
  484. } else {
  485. $('.xlAdd').css('display', 'block')
  486. }
  487. });
  488. $('.addTree').mouseleave(function() {
  489. $(this).css('display', 'none')
  490. });
  491. $('#save_knowledge').on('click', saveKnowledge);
  492. });
  493. //修改弹出框内 下拉树形图参数配置项
  494. function getChangeTree() {
  495. var setting3 = {
  496. data: {
  497. key: {
  498. name: "text"
  499. },
  500. simpleData: {
  501. enable: true,
  502. idKey: "id",
  503. rootPId: 0
  504. }
  505. },
  506. callback: {
  507. onClick: changeTreeClick
  508. }
  509. }
  510. $.get(huayi.config.callcenter_url + 'KnowledgeClass/GetList', {
  511. // "pid": pid,
  512. "token": token,
  513. }, function(result) {
  514. result = $.parseJSON(result);
  515. $.fn.zTree.init($("#addTreeDemo"), setting3, result.data); //实例化树形图
  516. });
  517. }
  518. function changeTreeClick(event, treeId, treeNode) {
  519. $('#kn_type').val(treeNode.text);
  520. $('#kn_type').attr('data-id', treeNode.id);
  521. };
  522. //获取详情
  523. function getDetail() {
  524. var dtd = $.Deferred(); //在函数内部,新建一个Deferred对象
  525. $.ajax({
  526. type: "post",
  527. url: huayi.config.callcenter_url + "Knowledge/GetInfo",
  528. async: true,
  529. dataType: 'json',
  530. data: {
  531. infoid: edit_id,
  532. token: token
  533. },
  534. success: function(data) {
  535. var con = data.data;
  536. $('#kn_title').val(con.F_Title);
  537. $('#kn_key').val(con.F_KeyWords);
  538. $('#kn_content').val(con.F_Description);
  539. $('#kn_type').val(con.F_Expand1);
  540. $('#kn_type').attr('data-id', con.F_CategoryId);
  541. //附件
  542. var proimglists = con.FileUrls;
  543. proimglists = proimglists == null ? [] : proimglists;
  544. limitNum -= proimglists.length;
  545. uploaderImages(); //附件上传
  546. if(proimglists.length > 0) {
  547. $('#fileNum').text(proimglists.length);
  548. var $list = $("#fileList");
  549. $.each(proimglists, function(i, v) {
  550. proimglist.push(v.F_FileId);
  551. if(v.F_FileType.split("\/")[0] === 'image') {
  552. //原来的图片
  553. var $li = $(
  554. '<li><span class="img_mask"><i class="img_del"></i></span>' +
  555. '<img src="' + v.F_FileUrl + '" title="原来的图片"/>' +
  556. '<span class="file_name">' + v.F_FileName + '</span>' +
  557. '</li>'
  558. );
  559. $list.append($li);
  560. } else {
  561. var $liFile = $(
  562. '<li><span class="img_mask"><i class="img_del"></i></span>' +
  563. '<div class="noThumb" title="原来的文件"><i class="glyphicon glyphicon-paperclip"></i><p>无法预览</p></div>' +
  564. '<span class="file_name">' + v.F_FileName + '</span>' +
  565. '</li>'
  566. );
  567. $list.append($liFile);
  568. }
  569. });
  570. $list.find('li').off('click');
  571. $list.find('li').on('click', '.img_del', function() {
  572. $(this).parent().parent().remove();
  573. var itemFileName = $(this).parent().parent().find('.file_name').text();
  574. $.each(proimglists, function(i, v) {
  575. if(v && v.F_FileName == itemFileName) {
  576. proimglist.splice(i, 1);
  577. }
  578. });
  579. $('#fileNum').text(proimglist.length);
  580. limitNum = 6 - proimglist.length;
  581. uploaderImages();
  582. });
  583. }
  584. dtd.resolve(); // 改变Deferred对象的执行状态
  585. }
  586. });
  587. return dtd.promise(); // 返回promise对象
  588. }
  589. //保存
  590. function saveKnowledge() {
  591. var wUrl;
  592. if(!$.trim($('#kn_type').val())) {
  593. layer.confirm('所属分类不能为空', {
  594. icon: 2,
  595. btn: ['确定'] //按钮
  596. });
  597. return;
  598. }
  599. if(!$.trim($('#kn_title').val())) {
  600. layer.confirm('标题不能为空', {
  601. icon: 2,
  602. btn: ['确定'] //按钮
  603. });
  604. return;
  605. }
  606. if(edit_id) {
  607. wURL = "Knowledge/EditInfo";
  608. } else {
  609. wURL = "Knowledge/AddInfo";
  610. }
  611. $.ajax({
  612. type: "post",
  613. url: huayi.config.callcenter_url + wURL,
  614. dataType: 'json',
  615. async: true,
  616. beforeSend: function() { //触发ajax请求开始时执行
  617. $('#save_knowledge').attr("disabled", true);
  618. $('#save_knowledge').text('保存中...');
  619. $(document).off('click', '#save_knowledge', saveKnowledge);
  620. loadIndex = layer.load();
  621. },
  622. data: {
  623. infoid: edit_id,
  624. title: $('#kn_title').val(),
  625. key: $('#kn_key').val(),
  626. con: helper.filter.delHtmlTag($('#kn_content').val()),
  627. pid: $('#kn_type').attr('data-id'),
  628. fileids: proimglist && proimglist.join(','),
  629. token: token
  630. },
  631. success: function(result) {
  632. if(result.state.toLowerCase() === "success") {
  633. var index = parent.layer.getFrameIndex(window.name);
  634. parent.layer.close(index);
  635. parent.table.bootstrapTable('refresh');
  636. layer.msg("保存成功");
  637. }
  638. },
  639. error: function(textStatus) {
  640. layer.close(loadIndex);
  641. layer.confirm('网络繁忙,请稍后再试...', {
  642. icon: 7,
  643. closeBtn: 0,
  644. btn: ['确定'] //按钮
  645. });
  646. $('#save_knowledge').text('保存');
  647. $('#save_knowledge').attr("disabled", false);
  648. $(document).off('click', '#save_knowledge', saveKnowledge);
  649. $(document).on('click', '#save_knowledge', saveKnowledge);
  650. },
  651. complete: function(XMLHttpRequest, textStatus) {
  652. layer.close(loadIndex);
  653. if(textStatus == 'timeout') {
  654. var xmlhttp = window.XMLHttpRequest ? new window.XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHttp");
  655. xmlhttp.abort();
  656. layer.confirm('网络超时,请稍后再试...', {
  657. icon: 7,
  658. closeBtn: 0,
  659. btn: ['确定'] //按钮
  660. });    
  661. }
  662. $('#save_knowledge').text('保存');
  663. $('#save_knowledge').attr("disabled", false);
  664. $(document).off('click', '#save_knowledge', saveKnowledge);
  665. $(document).on('click', '#save_knowledge', saveKnowledge);
  666. },
  667. });
  668. }
  669. //上传附件
  670. function uploaderImages() {
  671. if(uploader) {
  672. uploader.destroy();
  673. }
  674. uploader = WebUploader.create({
  675. auto: true, // 选完文件后,是否自动上传
  676. swf: '../../js/webuploader/Uploader.swf', // swf文件路径
  677. server: huayi.config.callcenter_url + "Knowledge/UpLoadProcess", // 文件接收服务端
  678. pick: '#imgPicker', // 选择文件的按钮。可选
  679. formData: {
  680. token: token
  681. },
  682. // 多类型文件上传
  683. accept: {
  684. title: 'Files',
  685. extensions: 'gif,jpg,jpeg,bmp,png,pdf,doc,docx,txt,xls,xlsx,ppt,pptx,zip,mp3,mp4,text,csv',
  686. mimeTypes: 'image/*,text/*,audio/mpeg,audio/mp4, video/mp4'
  687. //word
  688. +
  689. ',application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document'
  690. //excel
  691. +
  692. ',application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
  693. //ppt
  694. +
  695. ',application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation' +
  696. ',application/pdf' +
  697. ',application/zip' +
  698. ',application/csv'
  699. // title: 'Images',
  700. // extensions: 'gif,jpg,jpeg,bmp,png',
  701. // mimeTypes: 'image/*'
  702. },
  703. compress: false, //webuploader默认压缩图片,设置compress:false,可以按照原始比例上传图片
  704. //fileVal: "upFile",//设置文件上传域的name。
  705. threads: limitNum, //上传并发数。允许同时最大上传进程数,为了保证文件上传顺序
  706. fileNumLimit: limitNum,
  707. fileSizeLimit: 180 * 1024 * 1024, // 180 M
  708. fileSingleSizeLimit: 30 * 1024 * 1024 // 30 M
  709. });
  710. uploader.on('fileQueued', function(file) {
  711. var $list = $("#fileList"),
  712. $li = $(
  713. '<li id="' + file.id + '"><span class="img_mask"><i class="img_del"></i></span>' +
  714. '<img/>' +
  715. '<span class="img_state"><i></i></span>' +
  716. '<span class="file_name">' + file.name + '</span>' +
  717. '</li>'
  718. ),
  719. $img = $li.find('img');
  720. // $list为容器jQuery实例
  721. $list.append($li);
  722. // 保存缩略图
  723. uploader.makeThumb(file, function(error, src) {
  724. if(error) {
  725. $img.replaceWith('<div class="noThumb"><i class="glyphicon glyphicon-paperclip"></i><p>无法预览</p></div>');
  726. return;
  727. }
  728. $img.attr('src', src);
  729. }, 109, 109); //109*109为缩略图尺寸
  730. //绑定删除
  731. $('#' + file.id).on('click', '.img_del', function() {
  732. uploader.removeFile(file);
  733. var $fileLi = $('#' + file.id);
  734. $fileLi.off().find('.img_del').off().end().remove();
  735. var itemFileName = $(this).parent().parent().find('.file_name').text();
  736. $.each(proimglist, function(i, v) {
  737. if(v && v.filename == itemFileName) {
  738. proimglist.splice(i, 1);
  739. //helper.methods.delImgs(v.filesmallurl, v.fileurl);
  740. }
  741. });
  742. $('#fileNum').text(proimglist.length);
  743. });
  744. });
  745. // 文件上传过程中保存进度条实时显示。
  746. uploader.on('uploadProgress', function(file, percentage) {
  747. var $li = $('#' + file.id),
  748. $percent = $li.find('.progress span');
  749. // 避免重复保存
  750. if(!$percent.length) {
  751. $percent = $('<div class="progress" style="">' +
  752. '<span class="text">0%</span>' +
  753. '<span class="percentage"></span>' +
  754. '</div>')
  755. .appendTo($li)
  756. .find('span');
  757. }
  758. $percent.eq(0).text(Math.round(percentage * 100) + '%');
  759. $percent.eq(1).css('width', Math.round(percentage * 100) + '%');
  760. });
  761. // 文件上传成功,给item添加成功class, 用样式标记上传成功。
  762. uploader.on('uploadSuccess', function(file, res) {
  763. proimglist.push(res.data.F_FileId);
  764. $('#fileNum').text(proimglist.length);
  765. $('#' + file.id).addClass('upload-state-done');
  766. });
  767. // 文件上传失败,显示上传出错。
  768. uploader.on('uploadError', function(file) {
  769. var $li = $('#' + file.id),
  770. $error = $li.find('div.error');
  771. // 避免重复创建
  772. if(!$error.length) {
  773. $error = $('<div class="error"></div>').appendTo($li);
  774. }
  775. $error.text('上传失败');
  776. });
  777. // 完成上传完了,成功或者失败,先删除进度条。
  778. uploader.on('uploadComplete', function(file) {
  779. $('#' + file.id).find('.progress').remove();
  780. });
  781. uploader.onError = function(code) {
  782. switch(code) {
  783. case "Q_EXCEED_NUM_LIMIT":
  784. layer.msg('只能上传六个文件。');
  785. break;
  786. case "Q_TYPE_DENIED":
  787. layer.msg('文件类型不正确。');
  788. break;
  789. case "F_DUPLICATE":
  790. layer.msg('该文件已上传,请选择其它文件。');
  791. break;
  792. case "F_EXCEED_SIZE":
  793. layer.msg('单文件大小不能超过30M。');
  794. break;
  795. case "Q_EXCEED_SIZE_LIMIT":
  796. layer.msg('总文件大小不能超过180M。');
  797. break;
  798. default:
  799. break;
  800. }
  801. };
  802. }
  803. /**
  804. * 附件上传直接在知识库管理拿来用 结束
  805. * */
  806. //获取工单类型
  807. function getTypeName(val) {
  808. var str = '';
  809. switch(val + '') {
  810. case '1':
  811. str = "咨询";
  812. break;
  813. case '2':
  814. str = "投诉";
  815. break;
  816. case '3':
  817. str = "抽检";
  818. break;
  819. }
  820. return str;
  821. }
  822. //派单(分配)
  823. function dealWorkOrder(oid) {
  824. loadIndex = layer.load();
  825. var isDetail = helper.request.queryString("isDetail"); //是否是详情页面的处理
  826. var overtime = $(".chaishi").find('input[type="radio"]:checked').val()
  827. var arr = [];
  828. $('input[name="duo"]:checked').each(function() {
  829. arr.push($(this).val())
  830. })
  831. $.ajax({
  832. type: "post",
  833. url: huayi.config.callcenter_url + 'WorkOrderNew/AssignWorkOrder',
  834. dataType: "json",
  835. async: true,
  836. data: {
  837. orderid: oid, //否 strubg 工单ID
  838. overtime: overtime, //超时时限
  839. clbm: $("#clbm").val(), //是 int 部门Id
  840. clid: $("#clid").val(), //否 int 接收人用户id
  841. clbm2: $("#clbm2").val(), //是 int 部门Id
  842. clid2: $("#clid2").val(), //否 int 接收人用户id
  843. CarNumber: $("#fcnum").val(),
  844. LoadingFee: $("#zcfee").val(),
  845. UnLoadingFee: $("#xcfee").val(),
  846. MaterialFee: $("#flfee").val(),
  847. F_SC_CJ_ReturnAccount: $("#fzje").val(), //销售内勤返账金额
  848. EventReason: $("#ereason").val(),
  849. WorkmanShip: $("#gyi").val(),
  850. Manufacturers: $("#ylcj").val(),
  851. ProductionNum: $("#scsl").val(),
  852. cont: $("#cont").val(), //否 int 处理内容
  853. isApprovalp: $("#gcDuanxin").find('input[type="radio"]:checked').val(), //高层办理
  854. hclid: $("#gcRevice").val(), //办理人员
  855. sms: $("#duanxin").find('input[type="radio"]:checked').val(), //短信提醒
  856. QualityMonth: $("#zhibao").val(), //否 int 处理内容
  857. PreliminaryOpinion: $("#zhibao").val(), //初审意见
  858. QualityEventLevel: $("#dengji").val(),
  859. ApprovalDisagree: $("#butong").val(),
  860. ResponsibleUnit: arr.toString(),
  861. ApprovalOpinions: $("#yijian").find('input[type="radio"]:checked').val(),
  862. CompensationMethod: $("#buchang").find('input[type="radio"]:checked').val(),
  863. CompensationMoney: $("#buqian").val(),
  864. CResponsibleUnits: $("#danwei").val(),
  865. Fquantity: $("#shuliang").val(),
  866. ImprovementRequirements: $("#yaoqiu").val(),
  867. CApprovalNo: $("#danhao").val(),
  868. F_Files: proimglist && proimglist.join(','),
  869. Fquantity: $("#fanzha").val(),
  870. SpotResult: $("#chou").val(),
  871. SelfResult: $("#zijian").val(),
  872. ApprovalNo: $("#duiying").val(),
  873. ReturnAccount: $("#shenpi").val(),
  874. isvisit: $("#hui_FA").find('input[type="radio"]:checked').val(),
  875. IsRecord: $("#shenpi").val(),
  876. ClaimAmount: $("#suopeijin").val(),
  877. token: $.cookie("token"),
  878. jsonstr: JSON.stringify(jsonarr)
  879. },
  880. beforeSend: function() {
  881. $("#clgd").attr("disabled", true);
  882. $("#clgd").val("保存中");
  883. $(document).off('click', '#clgd')
  884. loadIndex = layer.load();
  885. },
  886. complete: function(XMLHttpRequest, textStatus) {
  887. $("#clgd").attr("disabled", true);
  888. $("#clgd").val("确定");
  889. $(document).on('click', '#clgd');
  890. layer.close(loadIndex);
  891. if(textStatus == 'timeout') {
  892. var xmlhttp = window.XMLHttpRequest ? new window.XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHttp");
  893. xmlhttp.abort();
  894. layer.confirm('网络超时,请稍后再试...', {
  895. closeBtn: 0,
  896. btn: ['确定'] //按钮
  897. });    
  898. }
  899. },
  900. success: function(result) {
  901. layer.close(loadIndex);
  902. if(result.state.toLowerCase() == "success") {
  903. $("#clgd").attr("disabled", true);
  904. $("#clgd").val("确定");
  905. $(document).on('click', '#clgd');
  906. if(isDetail === "true") {
  907. parent.parent.layer.closeAll();
  908. parent.parent.$('#orderlist').bootstrapTable('refresh');
  909. parent.parent.layer.msg("工单转派成功!");
  910. } else {
  911. var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
  912. parent.layer.close(index); //再执行关闭
  913. parent.$('#workorderlist').bootstrapTable('refresh');
  914. parent.$('.Closed').trigger('click');
  915. parent.layer.msg("工单转派成功!");
  916. }
  917. }
  918. },
  919. error: function() {
  920. $("#clgd").attr("disabled", true);
  921. $("#clgd").val("确定");
  922. $(document).on('click', '#clgd');
  923. layer.confirm('网络繁忙,请稍后再试...', {
  924. closeBtn: 0,
  925. btn: ['确定'] //按钮
  926. });
  927. }
  928. })
  929. }
  930. $(document).ready(function() {
  931. var wid = helper.request.queryString("wid");
  932. // CPZL($("#zhibao"));//产品种类
  933. SCCS($("#zhibao")); //初审意见
  934. SCCS($("#chushen")); //初审意见
  935. ZLSJDJ($("#cat")); //质量事件等级
  936. ZLZRDW($("#danwei")); //责任单位
  937. ZLZRDW2($("#duoxuan")); //责任单位
  938. SCCJJG($("#chou")); //责任单位
  939. });
  940. function SCCS(obj) {
  941. obj.empty();
  942. obj.append('<option selected="selected" value="">请选择</option>');
  943. $.getJSON(huayi.config.callcenter_url + "Dictionary/GetDicValueListByFlag", {
  944. "token": $.cookie("token"),
  945. flag: "SCCS",
  946. }, function(data) {
  947. if(data.state.toLowerCase() == "success") {
  948. var content = data.data;
  949. $(content).each(function(i, n) {
  950. $("<option value='" + n.F_Name + "'>" + n.F_Name + "</option>").appendTo(obj);
  951. })
  952. }
  953. })
  954. }
  955. //质量事件等级
  956. function ZLSJDJ(obj) {
  957. obj.empty();
  958. obj.append('<option selected="selected" value="">请选择</option>');
  959. $.getJSON(huayi.config.callcenter_url + "Dictionary/GetDicValueListByFlag", {
  960. "token": $.cookie("token"),
  961. flag: "ZLSJDJ",
  962. }, function(data) {
  963. if(data.state.toLowerCase() == "success") {
  964. var content = data.data;
  965. $(content).each(function(i, n) {
  966. $("<option value='" + n.F_Name + "'>" + n.F_Name + "</option>").appendTo(obj);
  967. })
  968. }
  969. })
  970. }
  971. //责任单位
  972. function ZLZRDW(obj) {
  973. obj.empty();
  974. obj.append('<option selected="selected" value="">请选择</option>');
  975. $.getJSON(huayi.config.callcenter_url + "Dictionary/GetDicValueListByFlag", {
  976. "token": $.cookie("token"),
  977. flag: "ZLZRDW",
  978. }, function(data) {
  979. if(data.state.toLowerCase() == "success") {
  980. var content = data.data;
  981. $(content).each(function(i, n) {
  982. $("<option value='" + n.F_Name + "'>" + n.F_Name + "</option>").appendTo(obj);
  983. })
  984. }
  985. })
  986. }
  987. function ZLZRDW2(obj) {
  988. obj.empty();
  989. $.getJSON(huayi.config.callcenter_url + "Dictionary/GetDicValueListByFlag", {
  990. "token": $.cookie("token"),
  991. flag: "ZLZRDW",
  992. }, function(data) {
  993. if(data.state.toLowerCase() == "success") {
  994. var content = data.data;
  995. $(content).each(function(i, n) {
  996. $("<input type='checkbox' name='duo' value='" + n.F_Name + "'>" + n.F_Name + "</input>").appendTo(obj);
  997. })
  998. }
  999. })
  1000. }
  1001. //抽检结果
  1002. function SCCJJG(obj) {
  1003. obj.empty();
  1004. obj.append('<option selected="selected" value="">请选择</option>');
  1005. $.getJSON(huayi.config.callcenter_url + "Dictionary/GetDicValueListByFlag", {
  1006. "token": $.cookie("token"),
  1007. flag: "SCCJJG",
  1008. }, function(data) {
  1009. if(data.state.toLowerCase() == "success") {
  1010. var content = data.data;
  1011. $(content).each(function(i, n) {
  1012. $("<option value='" + n.F_Name + "'>" + n.F_Name + "</option>").appendTo(obj);
  1013. })
  1014. }
  1015. })
  1016. }
  1017. $('.chaishi').find('input[type="radio"]').on('change', function() {
  1018. if($(this).val() == "其他") { //超时时限
  1019. $('#penli').show();
  1020. $('#liset').show();
  1021. } else {
  1022. $('#penli').hide();
  1023. $('#liset').hide();
  1024. }
  1025. });
  1026. $('#chushen').change(function() {
  1027. if($('#chushen').val() == "其他") { //超时时限
  1028. $('#displ').show();
  1029. $('#splay').show();
  1030. } else {
  1031. $('#displ').hide();
  1032. $('#splay').hide();
  1033. }
  1034. });