Нет описания

WorkOrder.js 25KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786
  1. var selid;//工单ID
  2. $(document).ready(function() {
  3. initTable();
  4. $(".ss").click(function() {
  5. stype = 1;
  6. initTable();
  7. })
  8. $('.plasechoce').click(function() {
  9. $(this).parent().siblings('input').val('');
  10. })
  11. // 工单详情、记录切换
  12. $(".ckxq ul li").click(function() {
  13. $(this).addClass("Active").siblings().removeClass("Active");
  14. var i = $(this).index();
  15. $(".gdxq").hide();
  16. $(".gdxq").eq(i).show();
  17. if(i === 0) {
  18. getWorkOrderDetails();
  19. } else if(i === 1) {
  20. getWorkOrderRecord();
  21. }
  22. });
  23. $(".Closed").click(function() {
  24. $(".ckxq").addClass("Hidens");
  25. });
  26. $("input[name='ltype']").click(function() {
  27. var val = $("input[name='ltype']:checked").val();
  28. if(val == '0') {
  29. $(".js").show();
  30. } else if(val == '1') {
  31. $(".js").hide();
  32. }
  33. })
  34. laydate.render({
  35. elem: '#greetingTimes',
  36. range: '~',
  37. // type: 'datetime',
  38. //max : 31,
  39. // min: 0,
  40. theme: '#1ab394',
  41. });
  42. //坐席
  43. getSeating();
  44. //大区
  45. getArea();
  46. //产品代码
  47. getProductType();
  48. //生产厂家
  49. getProductFactory();
  50. //问题代码
  51. getProblemCode();
  52. //通知人
  53. getSubmitter();
  54. //工单级别
  55. getDealTimely();
  56. var setting3 = {
  57. data: {
  58. key: {
  59. name: "F_AreaName"
  60. },
  61. simpleData: {
  62. enable: true,
  63. idKey: "F_Id",
  64. pIdKey: "F_ParentId",
  65. rootPId: 0
  66. }
  67. },
  68. callback: {
  69. onClick: changeTreeClick
  70. }
  71. }
  72. function changeTreeClick(event, treeId, treeNode) {
  73. var areaParent = treeNode.getPath();
  74. if (areaParent[1]) {
  75. areaParent1=areaParent[0].F_AreaName
  76. areaParent2=areaParent[1].F_AreaName
  77. $('#typeclass').val(areaParent1+"/"+areaParent2);
  78. $('.inps2').val(areaParent1);
  79. $('.inps3').val(areaParent2);
  80. }else{
  81. layer.msg("请选择最下级菜单");
  82. }
  83. $('.addTree1').hide();
  84. };
  85. $('.down').click(function() {
  86. if($('.treeList').css('display') == 'block') {
  87. $('.treeList').css('display', 'none')
  88. } else {
  89. $('.treeList').css('display', 'block')
  90. }
  91. })
  92. $('#typeclass').click(function() {
  93. $('.treeList').css('display', 'block')
  94. })
  95. $('.treeList').mouseleave(function() {
  96. $(this).css('display', 'none')
  97. })
  98. function getSeating() {
  99. $.ajax({
  100. type: "get",
  101. url: huayi.config.callcenter_url + "CallInScreen/GetUsers",
  102. dataType: 'json',
  103. async: true,
  104. data: {
  105. token: $.cookie("token")
  106. },
  107. success: function(data) {
  108. var Count = data.data.user;
  109. $(Count).each(function(i, n) {
  110. $("<option value='" + n.F_UserCode + "'>" + n.F_UserName + "</option>").appendTo($("#userid"));
  111. })
  112. }
  113. });
  114. }
  115. })
  116. //编辑器配置
  117. KindEditor.ready(function(K) {
  118. window.changeEditor = K.create('#cl_gdnr'); //修改弹出框编辑器
  119. });
  120. var F_UserCode = localStorage.getItem('F_UserCode');
  121. // 根据重要级别判断工单颜色
  122. function View(val, row) {
  123. if (row.F_DealTimely === "Ⅰ级") {
  124. return '<div class="imgs" ><a class="xg workOrderIdColorRed" index="' + row.CreateUser + '" onclick= getWorkOrderDetailsPage("' + row.F_Id + '") >' + val + '</a></div>';
  125. } else if (row.F_DealTimely === "Ⅱ级") {
  126. return '<div class="imgs" ><a class="xg workOrderIdColorGreen" index="' + row.CreateUser + '" onclick= getWorkOrderDetailsPage("' + row.F_Id + '") >' + val + '</a></div>';
  127. } else if (row.F_DealTimely === "普通工单") {
  128. return '<div class="imgs" ><a class="xg" index="' + row.CreateUser + '" onclick= getWorkOrderDetailsPage("' + row.F_Id + '") >' + val + '</a></div>';
  129. } else {
  130. return '<div class="imgs" ><a class="xg" index="' + row.CreateUser + '" onclick= getWorkOrderDetailsPage("' + row.F_Id + '") >' + val + '</a></div>';
  131. }
  132. $("#F_UserCode").val(row.CreateUser);
  133. }
  134. // 工单来源返回值判断
  135. function workOrderSourceJudge (val, row) {
  136. if (val === 1) {
  137. return '<div>PC</div>';
  138. } else if (val === 2) {
  139. return '<div>APP</div>';
  140. } else if (val === 1) {
  141. return '<div>微信</div>';
  142. } else {
  143. return '<div></div>';
  144. }
  145. }
  146. // 工单类别返回值判断
  147. function workOrderTypeJudge (val, row) {
  148. if (val === 1) {
  149. return '<div>咨询</div>';
  150. } else if (val === 2) {
  151. return '<div>投诉</div>';
  152. } else {
  153. return '<div></div>';
  154. }
  155. }
  156. // 工单状态返回值判断
  157. function workOrderStateJudge (val, row) {
  158. if (val === 0) {
  159. return '<div>待提交</div>';
  160. } else if (val === 1) {
  161. return '<div>待分派</div>';
  162. } else if (val === 2) {
  163. return '<div>待接单</div>';
  164. } else if (val === 3) {
  165. return '<div>待处理</div>';
  166. } else if (val === 4) {
  167. return '<div>处理中</div>';
  168. } else if (val === 5) {
  169. return '<div>退回待分派</div>';
  170. } else if (val === 6) {
  171. return '<div>退回待提交</div>';
  172. } else if (val === 10) {
  173. return '<div>已完成</div>';
  174. } else {
  175. return '<div></div>';
  176. }
  177. }
  178. // 重复工单返回值判断
  179. function workOrderDuplicateJudge (val, row) {
  180. if (val === 0) {
  181. return '<div>未重复</div>';
  182. } else if (val === 1) {
  183. return '<div>重复</div>';
  184. } else {
  185. return '<div></div>';
  186. }
  187. }
  188. // 获取工单详情页面
  189. function getWorkOrderDetailsPage(id) {
  190. selid = id;
  191. $(".ckxq").removeClass("Hidens");
  192. $(".ckxq ul li").eq(0).trigger("click");
  193. getWorkOrderDetails();
  194. }
  195. // 工单详情
  196. function getWorkOrderDetails() {
  197. $.getJSON(huayi.config.callcenter_url + 'WorkOrder/GetDetails', {
  198. id: selid,
  199. token: $.cookie("token")
  200. }, function(result) {
  201. if(result.state.toLowerCase() == "success") {
  202. if(result.rows.length > 0) {
  203. var data = result.rows[0];
  204. $("#detailWorkOrderId").text(data.F_WorkOrderId);
  205. $("#detailSource").text(workOrderDetailsSourceJudge(data)); //工单来源
  206. $("#detailType").text(workOrderDetailsTypeJudge(data)); //工单类别
  207. $("#detailAreaName").html(data.F_AreaName);
  208. $("#detailOfficeName").text(data.F_OfficName);
  209. $("#detailCreateTime").text(data.F_CreateTime);
  210. $("#detailDealTimely").text(data.F_DealTimely); //重要级别
  211. $("#detailReason").text(data.F_Reason); //重要原因
  212. $("#detailCusName").text(data.F_CusName);
  213. $("#detailCusPhone").text(data.F_CusPhone);
  214. $("#detailAddress").text(data.F_AddRess);
  215. $("#detailProductType").text(data.F_ProductType); //产品代码
  216. $("#detailProductName").text(data.F_ProductName);
  217. $('#detailSpecifications').text(data.F_Specifications);
  218. $("#detailPRoductDate").text(data.F_ProductDate);
  219. $("#detailBatchNumber").text(data.F_BatchNumber);
  220. $("#detailManufacturer").text(data.F_Manufacturer);
  221. $("#detailProblemCode").text(data.F_ProblemCode); //问题代码
  222. $("#detailQualityProblem").text(data.F_QualityProblem);
  223. $("#detailNotifications").text(data.F_Notifications);
  224. $("#detailReceivingPerson").text(data.F_ReceivingPerson);
  225. $("#detailSerialNumber").text(data.F_SerialNumber);
  226. $("#detailState").text(workOrderDetailsStateJudge(data)); //工单状态
  227. $("#detailDuplicate").text(workOrderDetailsDuplicateJudge(data)); //重复工单
  228. $("#detailContent").text(data.F_Content);
  229. $("#detailDealResult").text(data.F_DealResult); //落实情况
  230. $("#detailDealUser").text(data.F_DealUser);
  231. $("#detailDealTime").text(data.F_DealTime);
  232. }
  233. }
  234. })
  235. }
  236. // 工单记录
  237. function getWorkOrderRecord() {
  238. //先销毁表格
  239. $('#workOrderRecord').bootstrapTable('destroy');
  240. //初始化表格,动态从服务器加载数据
  241. $('#workOrderRecord').bootstrapTable({
  242. method: "get", //使用get请求到服务器获取数据
  243. url: huayi.config.callcenter_url + "WorkOrder/GetDetails", //获取数据的Servlet地址
  244. contentType: 'application/x-www-form-urlencoded',
  245. striped: true, //表格显示条纹
  246. pagination: true, //启动分页
  247. pageSize: 10, //每页显示的记录数
  248. pageNumber: 1, //当前第几页
  249. pageList: [10, 20, 50, 100], //记录数可选列表
  250. search: false, //是否启用查询
  251. showColumns: false, //显示下拉框勾选要显示的列
  252. showRefresh: false, //显示刷新按钮
  253. sidePagination: "server", //表示服务端请求
  254. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  255. //设置为limit可以获取limit, offset, search, sort, order
  256. queryParamsType: "undefined",
  257. queryParams: function queryParams(params) { //设置查询参数
  258. var param = {
  259. id: selid, // 工单ID
  260. token: $.cookie("token")
  261. };
  262. return param;
  263. },
  264. responseHandler: function(res) {
  265. return {
  266. "total": res.itemlasts.length,//总页数
  267. "rows": res.itemlasts //数据
  268. };
  269. },
  270. onLoadSuccess: function() { //加载成功时执行
  271. //layer.msg("加载成功");
  272. },
  273. onLoadError: function() { //加载失败时执行
  274. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  275. }
  276. });
  277. }
  278. // 工单详情中判断工单来源的值
  279. function workOrderDetailsSourceJudge (data) {
  280. if (data.F_Source === 1) {
  281. return 'PC';
  282. } else if (data.F_Source === 2) {
  283. return 'APP';
  284. } else if (data.F_Source === 1) {
  285. return '微信';
  286. } else {
  287. return '';
  288. }
  289. }
  290. // 工单详情中工单类别返回值判断
  291. function workOrderDetailsTypeJudge (data) {
  292. if (data.F_Type === 1) {
  293. return '咨询';
  294. } else if (data.F_Type === 2) {
  295. return '投诉';
  296. } else {
  297. return '';
  298. }
  299. }
  300. // 工单详情中工单状态返回值判断
  301. function workOrderDetailsStateJudge (data) {
  302. if (data.F_State === 0) {
  303. return '待提交';
  304. } else if (data.F_State === 1) {
  305. return '待分派';
  306. } else if (data.F_State === 2) {
  307. return '待接单';
  308. } else if (data.F_State === 3) {
  309. return '待处理';
  310. } else if (data.F_State === 4) {
  311. return '处理中';
  312. } else if (data.F_State === 5) {
  313. return '退回待分派';
  314. } else if (data.F_State === 6) {
  315. return '退回待提交';
  316. } else if (data.F_State === 10) {
  317. return '已完成';
  318. } else {
  319. return '';
  320. }
  321. }
  322. // 工单详情中重复工单返回值判断
  323. function workOrderDetailsDuplicateJudge (data) {
  324. if (data.F_Duplicate === 0) {
  325. return '未重复';
  326. } else if (data.F_Duplicate === 1) {
  327. return '重复';
  328. } else {
  329. return '';
  330. }
  331. }
  332. // 工单记录中工单状态返回值判断
  333. function formatterWorkOrderRecordStatus(val, row) {
  334. var formatterWorkOrderRecordStatusStr = '';
  335. if (row.F_WoState === 0){
  336. formatterWorkOrderRecordStatusStr = "待提交";
  337. }
  338. if (row.F_WoState === 1){
  339. formatterWorkOrderRecordStatusStr = "待分派";
  340. }
  341. if (row.F_WoState === 2){
  342. formatterWorkOrderRecordStatusStr = "待接单";
  343. }
  344. if (row.F_WoState === 3){
  345. formatterWorkOrderRecordStatusStr = "待处理";
  346. }
  347. if (row.F_WoState === 4){
  348. formatterWorkOrderRecordStatusStr = "处理中";
  349. }
  350. if (row.F_WoState === 5){
  351. formatterWorkOrderRecordStatusStr = "退回待分派";
  352. }
  353. if (row.F_OptType == 6){
  354. formatterWorkOrderRecordStatusStr = "退回待提交";
  355. }
  356. if (row.F_OptType == 10){
  357. formatterWorkOrderRecordStatusStr = "已完成";
  358. }
  359. return formatterWorkOrderRecordStatusStr;
  360. }
  361. // 获取当前登录人
  362. function getLoginPersonNow() {
  363. $.ajax({
  364. type: "get",
  365. url: huayi.config.callcenter_url + "UserAccount/GetNowUser",
  366. dataType: 'json',
  367. async: true,
  368. data: {
  369. token: $.cookie("token")
  370. },
  371. success: function(data) {
  372. var userRoleCode = data.data.role.F_RoleCode;
  373. // 判断角色权限
  374. authorizeOperateButton(userRoleCode)
  375. }
  376. });
  377. }
  378. //获取 userRoleCode 判断按钮权限
  379. function authorizeOperateButton(userRoleCode) {
  380. // userRoleCode = "";//测试数据
  381. //所有人均有创建和查询的功能,XTGLY-系统维护、CJGLY-超级管理员拥有所有权限
  382. $('.tool_downs').find('[authorize=yes]').hide();
  383. $('#workorderlist').find('.workOprate').hide();
  384. switch(userRoleCode) {
  385. case "XTGLY": // 系统维护
  386. case "CJGLY": // 超级管理员
  387. $('.tool_downs').find('[authorize=yes]').show();
  388. $('#workorderlist').find('.workOprate').show();
  389. break;
  390. case "JDYPTZX": // 普通坐席 创建 提交
  391. case "JDYBZZX": // 坐席班长 创建 提交
  392. $('.tool_downs').find('[id*="HY_submit"]').show(); //指派
  393. $('.tool_downs').find('[id*="HY_edit"]').show(); // 修改
  394. $('.tool_downs').find('[id*="HY_mark"]').show(); // 标记
  395. $('.tool_downs').find('[id*="HY_delete"]').hide(); //删除
  396. $('.tool_downs').find('[id*="HY_return"]').hide(); //退回
  397. $('.tool_downs').find('[id*="HY_order"]').hide(); //接单
  398. $('.tool_downs').find('[id*="HY_dealWith"]').hide(); //处理
  399. $('#workorderlist').find('.workOprate1').show(); //待指派
  400. break;
  401. case "BSCJL": // 办事处经理 转派、退回、修改、删除、
  402. $('.tool_downs').find('[id*="HY_transfer"]').show(); //指派
  403. $('.tool_downs').find('[id*="HY_mark"]').show(); // 标记
  404. $('.tool_downs').find('[id*="HY_edit"]').hide(); // 修改
  405. $('.tool_downs').find('[id*="HY_delete"]').hide(); //删除
  406. $('.tool_downs').find('[id*="HY_return"]').show(); //退回
  407. $('.tool_downs').find('[id*="HY_order"]').hide(); //接单
  408. $('.tool_downs').find('[id*="HY_dealWith"]').hide(); //处理
  409. $('#workorderlist').find('.workOprate2').show(); //待指派
  410. $('#workorderlist').find('.workOprate3').show(); //待接受
  411. $('#workorderlist').find('.workOprate4').show(); //待处理
  412. $('#workorderlist').find('.workOprate5').show(); //处理中
  413. $('#workorderlist').find('.workOprate6').show(); //已处理
  414. break;
  415. case "YWY": //YWY-业务人员 退回/接单、处理 、修改
  416. $('.tool_downs').find('[id*="HY_transfer"]').hide(); //指派
  417. $('.tool_downs').find('[id*="HY_mark"]').show(); // 标记
  418. $('.tool_downs').find('[id*="HY_delete"]').hide(); //删除
  419. $('.tool_downs').find('[id*="HY_edit"]').hide(); //修改
  420. $('.tool_downs').find('[id*="HY_dealWith"]').show(); //处理
  421. $('.tool_downs').find('[id*="HY_return"]').show();//退回
  422. $('.tool_downs').find('[id*="HY_order"]').show();//接单
  423. $('#workorderlist').find('.workOprate3').show(); //待接单
  424. $('#workorderlist').find('.workOprate4').show(); //待处理
  425. $('#workorderlist').find('.workOprate5').show(); //处理中
  426. break;
  427. default:
  428. break;
  429. }
  430. }
  431. //格式化操作 (待提交)
  432. function formatterSubmit(val, row) {
  433. return '<ul class="tool_downs">' +
  434. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_submit_' + row.F_Id + '" onclick="btn_transfer(\'' + row.F_Id + '\', 1)" title="提交">提交</a></li>' +
  435. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_mark_' + row.F_Id + '" onclick="btn_mark(\'' + row.F_Id + '\')" title="标记">标记</a></li>' +
  436. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_edit_' + row.F_Id + '" onclick="btn_edit(\'' + row.F_Id + '\')" title="修改">修改</a></li>' +
  437. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_delete_' + row.F_Id + '" onclick="btn_deleteid(\'' + row.F_Id + '\')" title="删除">删除</a></li>' +
  438. '</ul>';
  439. }
  440. //格式化操作 (待指派)
  441. function formatterDesig(val, row) {
  442. return '<ul class="tool_downs">' +
  443. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_transfer_' + row.F_Id + '" onclick="btn_transfer(\'' + row.F_Id + '\', 2)" title="指派">指派</a></li>' +
  444. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_mark_' + row.F_Id + '" onclick="btn_mark(\'' + row.F_Id + '\')" title="标记">标记</a></li>' +
  445. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_edit_' + row.F_Id + '" onclick="btn_edit(\'' + row.F_Id + '\')" title="修改">修改</a></li>' +
  446. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_delete_' + row.F_Id + '" onclick="btn_deleteid(\'' + row.F_Id + '\')" title="删除">删除</a></li>' +
  447. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_return_' + row.F_Id + '" onclick="btn_return(\'' + row.F_Id + '\')" title="退回">退回</a></li>' +
  448. '</ul>';
  449. }
  450. //格式化操作 (待处理)
  451. function formatterOprateDispose(val, row) {
  452. return '<ul class="tool_downs">' +
  453. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_dealWith_' + row.F_Id + '" onclick="btn_dealWith(\'' + row.F_Id + '\',)" title="处理">处理</a></li>' +
  454. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_mark_' + row.F_Id + '" onclick="btn_mark(\'' + row.F_Id + '\')" title="标记">标记</a></li>' +
  455. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_edit_' + row.F_Id + '" onclick="btn_edit(\'' + row.F_Id + '\')" title="修改">修改</a></li>' +
  456. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_delete_' + row.F_Id + '" onclick="btn_deleteid(\'' + row.F_Id + '\')" title="删除">删除</a></li>' +
  457. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_return_' + row.F_Id + '" onclick="btn_return(\'' + row.F_Id + '\')" title="退回">退回</a></li>' +
  458. '</ul>';
  459. }
  460. //格式化操作 (已处理)
  461. function formatterProcessed(val, row) {
  462. return '<ul class="tool_downs">' +
  463. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_edit_' + row.F_Id + '" onclick="btn_edit(\'' + row.F_Id + '\')" title="修改">修改</a></li>' +
  464. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_delete_' + row.F_Id + '" onclick="btn_deleteid(\'' + row.F_Id + '\')" title="删除">删除</a></li>' +
  465. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_return_' + row.F_Id + '" onclick="btn_return(\'' + row.F_Id + '\')" title="退回">退回</a></li>' +
  466. '</ul>';
  467. }
  468. //格式化操作 (处理中)
  469. function formatterProcessing(val, row) {
  470. return '<ul class="tool_downs">' +
  471. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_dealWith_' + row.F_Id + '" onclick="btn_dealWith(\'' + row.F_Id + '\')" title="处理">处理</a></li>' +
  472. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_edit_' + row.F_Id + '" onclick="btn_edit(\'' + row.F_Id + '\')" title="修改">修改</a></li>' +
  473. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_delete_' + row.F_Id + '" onclick="btn_deleteid(\'' + row.F_Id + '\')" title="删除">删除</a></li>' +
  474. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_return_' + row.F_Id + '" onclick="btn_return(\'' + row.F_Id + '\')" title="退回">退回</a></li>' +
  475. '</ul>';
  476. }
  477. //格式化操作 (综合查询)
  478. //function formatterIntegratedQuery(val, row) {
  479. // return '<ul class="tool_downs">' +
  480. // '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_edit_' + row.F_Id + '" onclick="btn_edit(\'' + row.F_Id + '\')" title="修改">修改</a></li>' +
  481. // '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_delete_' + row.F_Id + '" onclick="btn_deleteid(\'' + row.F_Id + '\')" title="删除">删除</a></li>' +
  482. // '</ul>';
  483. //}
  484. //格式化操作 (待接单)
  485. function formatterReceive(val,row) {
  486. return '<ul class="tool_downs">' +
  487. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_order_' + row.F_Id + '" onclick="btn_order(\'' + row.F_Id + '\')" title="接单">接单</a></li>' +
  488. '<li><a href="javascript:;" class="aBtn" authorize="yes" id="HY_return_' + row.F_Id + '" onclick="btn_return(\'' + row.F_Id + '\')" title="退回">退回</a></li>' +
  489. '</ul>';
  490. }
  491. //指派工单,提交工单
  492. function btn_transfer(id, type) {
  493. if (type === 1) {
  494. var title = "提交工单"
  495. } else if (type === 2) {
  496. var title = "指派工单"
  497. }
  498. layer.open({
  499. type: 2,
  500. title: title,
  501. maxmin: true, //开启最大化最小化按钮
  502. area: ['50%', '50%'],
  503. content: "../WorkOrder/WorkOrderTransfer.html?id=" + id + "&type=" + type,
  504. });
  505. }
  506. //修改工单
  507. function btn_edit(val) {
  508. var id = val;
  509. layer.open({
  510. type: 2,
  511. title: '修改工单',
  512. maxmin: true, //开启最大化最小化按钮
  513. area: ['80%', '90%'],
  514. content: '../WorkOrder/Xga.html?id=' + id
  515. // content: 'addZhiShiKuManger.html?addId=' + id + '&addPid='+ pid +'&addName='+ name +''
  516. });
  517. }
  518. //标记工单
  519. function btn_mark(val) {
  520. var id = val;
  521. layer.open({
  522. type: 2,
  523. title: '标记工单',
  524. maxmin: true, //开启最大化最小化按钮
  525. area: ['70%', '40%'],
  526. content: '../WorkOrder/WorkOrderMark.html?id=' + id
  527. });
  528. }
  529. //接收工单
  530. function btn_order(id) {
  531. layer.confirm('确认要接单吗?', {
  532. btn: ['是', '否'] //按钮
  533. }, function() {
  534. $.post(huayi.config.callcenter_url + 'WorkOrder/SureWorkOrder', {
  535. id: id,
  536. "token": $.cookie("token")
  537. }, function(result) {
  538. result = $.parseJSON(result);
  539. if(result.state.toLowerCase() == "success") {
  540. layer.msg("接单成功");
  541. initTable();
  542. }
  543. })
  544. });
  545. }
  546. //处理工单
  547. function btn_dealWith(id) {
  548. layer.open({
  549. type: 2,
  550. title: '处理工单',
  551. maxmin: true, //开启最大化最小化按钮
  552. area: ['50%', '50%'],
  553. content: "../WorkOrder/WorkOrderDealWith.html?id=" + id
  554. });
  555. }
  556. //退回工单
  557. function btn_return(id){
  558. layer.open({
  559. type: 2,
  560. title: '退回工单',
  561. maxmin: true, //开启最大化最小化按钮
  562. area: ['50%', '40%'],
  563. content: "../WorkOrder/WorkOrderReturn.html?id=" + id
  564. });
  565. }
  566. //删除
  567. function btn_deleteid(id) {
  568. layer.confirm('确定删除当前记录?', {
  569. btn: ['是', '否'] //按钮
  570. }, function(index) {
  571. /*执行删除*/
  572. $.ajax({
  573. type: "get",
  574. url: huayi.config.callcenter_url + "WorkOrder/DelWorkOrder",
  575. dataType: 'json',
  576. async: true,
  577. data: {
  578. ids: id,
  579. token: $.cookie("token")
  580. },
  581. success: function(data) {
  582. layer.msg("删除成功!");
  583. $('#workorderlist').bootstrapTable('refresh');
  584. $('#workorderlist_').bootstrapTable('refresh');
  585. layer.close(index);
  586. initTable();
  587. }
  588. });
  589. });
  590. }
  591. /*
  592. * 搜索功能
  593. * 大区
  594. * 办事处
  595. * 产品代码
  596. * 生产厂家
  597. * 问题代码
  598. * 通知人
  599. * 工单级别
  600. */
  601. //大区
  602. function getArea() {
  603. $("#searchArea").empty();
  604. $("#searchArea").append('<option selected="selected" value="">请选择大区</option>');
  605. $.getJSON(huayi.config.callcenter_url + "Department/GetCusAreaList", {
  606. "token": $.cookie("token"),
  607. pid: 1,
  608. F_Layer: 1,
  609. }, function (data) {
  610. if (data.state.toLowerCase() == "success") {
  611. var content = data.data;
  612. $(content).each(function (i, n) {
  613. $("<option value='" + n.F_DeptId + "'>" + n.F_DeptName + "</option>").appendTo($("#searchArea"));
  614. })
  615. }
  616. })
  617. }
  618. //办事处
  619. function getOffice() {
  620. $("#searchOffice").empty();
  621. $("#searchOffice").append('<option selected="selected" value="">请选择办事处</option>');
  622. $.getJSON(huayi.config.callcenter_url + "Department/GetCusAreaList", {
  623. "token": $.cookie("token"),
  624. F_Layer:2,
  625. pid:$("#searchArea").val(),
  626. }, function (data) {
  627. if (data.state.toLowerCase() == "success") {
  628. var content = data.data;
  629. $(content).each(function (i, n) {
  630. $("<option value='" + n.F_DeptId + "'>" + n.F_DeptName + "</option>").appendTo($("#searchOffice"));
  631. })
  632. }
  633. })
  634. }
  635. //获取所在区域办事处
  636. $("#searchArea").on("change", function() {
  637. getOffice();
  638. getSubmitter();
  639. })
  640. //产品代码
  641. function getProductType() {
  642. $.ajax({
  643. type: "get",
  644. url: huayi.config.callcenter_url + "Dictionary/GetDicValueListByFlag",
  645. dataType: 'json',
  646. async: true,
  647. data: {
  648. token: $.cookie("token"),
  649. flag: "CPDM"
  650. },
  651. success: function(data) {
  652. var Count = data.data;
  653. $(Count).each(function(i, n) {
  654. $('<option value="' + n.F_Name + '">' + n.F_Name + '</option>').appendTo($("#searchProductType"));
  655. })
  656. }
  657. });
  658. }
  659. //生产厂家
  660. function getProductFactory() {
  661. $("#searchManufacturer").empty();
  662. $("#searchManufacturer").append('<option selected="selected" value="">请选择生产厂家</option>');
  663. $.getJSON(huayi.config.callcenter_url + "EquipmentNumber/GetList", {
  664. "token": $.cookie("token"),
  665. keywords: "",
  666. pageindex: "1",
  667. pagesize: "200",
  668. }, function (data) {
  669. if (data.state.toLowerCase() == "success") {
  670. var content = data.rows;
  671. $(content).each(function (i, n) {
  672. $("<option value='" + n.F_Production + "'>" + n.F_Production + "</option>").appendTo("#searchManufacturer");
  673. })
  674. }
  675. })
  676. }
  677. //通知人
  678. function getSubmitter() {
  679. $("#searchNotifications").empty();
  680. $("#searchNotifications").append('<option selected="selected" value="" deptId="">请选择通知人</option>');
  681. $.getJSON(huayi.config.callcenter_url + "UserAccount/GetList", {
  682. "token": $.cookie("token"),
  683. type: 1,
  684. dptid: $("#searchArea").val(),
  685. }, function (data) {
  686. var content = data.rows;
  687. $(content).each(function (i, n) {
  688. $("<option value='" + n.F_UserName + "'deptId='" + n.F_DeptId + "'>" + n.F_UserName + "</option>").appendTo($("#searchNotifications"));
  689. })
  690. })
  691. }
  692. // 问题代码
  693. function getProblemCode() {
  694. $.ajax({
  695. type: "get",
  696. url: huayi.config.callcenter_url + "Dictionary/GetDicValueListByFlag",
  697. dataType: 'json',
  698. async: true,
  699. data: {
  700. token: $.cookie("token"),
  701. flag: "WTDM"
  702. },
  703. success: function(data) {
  704. var Count = data.data;
  705. $(Count).each(function(i, n) {
  706. $('<option value="' + n.F_Name + '">' + n.F_Name + '</option>').appendTo($("#searchProblemCode"));
  707. })
  708. }
  709. });
  710. }
  711. // 工单级别
  712. function getDealTimely() {
  713. $.ajax({
  714. type: "get",
  715. url: huayi.config.callcenter_url + "Dictionary/GetDicValueListByFlag",
  716. dataType: 'json',
  717. async: true,
  718. data: {
  719. token: $.cookie("token"),
  720. flag: "GDDJ"
  721. },
  722. success: function(data) {
  723. var Count = data.data;
  724. $(Count).each(function(i, n) {
  725. $('<option value="' + n.F_Name + '">' + n.F_Name + '</option>').appendTo($("#searchDealTimely"));
  726. })
  727. }
  728. });
  729. }