新手操作指南Demo - 使用双汇UI代码

WorkOrder.js 29KB

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