Нет описания

WorkOrder.js 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421
  1. $(document).ready(function() {
  2. initTable();
  3. $(".ss").click(function() {
  4. stype = 1;
  5. initTable();
  6. })
  7. /*高级查询*/
  8. $(".gjss").click(function() {
  9. $(".t-shade").addClass("cx");
  10. $(".gjsu").addClass("cx");
  11. $('.clgd').removeClass("cx");
  12. });
  13. $(".setwin").click(function() {
  14. $(".t-shade").removeClass("cx");
  15. $(".gjsu").removeClass("cx");
  16. $(".cbgd").removeClass("cx");
  17. //图片清空
  18. $(".space").html('');
  19. })
  20. //详情
  21. $(".ckxq ul li").click(function() {
  22. $(this).addClass("Active").siblings().removeClass("Active");
  23. var i = $(this).index();
  24. var s=$(this).attr("index");console.log(s);
  25. $(".gdxq").hide();
  26. $(".gdxq").eq(i).show();
  27. if(i > 0) {
  28. cljl(s);
  29. console.log(i)
  30. }
  31. });
  32. $(".Closed").click(function() {
  33. $(".ckxq").addClass("Hidens");
  34. });
  35. /*tree下拉框效果*/
  36. $(".inpBox .tree").click(function() {
  37. if($(this).parent().find(".addTree").is(":hidden")) {
  38. $(this).parent().find(".addTree").show();
  39. } else {
  40. $(this).parent().find(".addTree").hide();
  41. }
  42. });
  43. /*普通下拉框效果*/
  44. $(".inpBox .select").click(function() {
  45. if($(this).parent().find(".xl_common").is(":hidden")) {
  46. $(this).parent().find(".xl_common").show();
  47. } else {
  48. $(this).parent().find(".xl_common").hide();
  49. }
  50. });
  51. $(".xl").click(function() {
  52. if($(this).parent().find(".addTree").is(":hidden")) {
  53. $(this).parent().find(".addTree").show();
  54. } else {
  55. $(this).parent().find(".addTree").hide();
  56. }
  57. if($(this).parent().find(".xl_common").is(":hidden")) {
  58. $(this).parent().find(".xl_common").show();
  59. } else {
  60. $(this).parent().find(".xl_common").hide();
  61. }
  62. });
  63. $(".inpBox").mouseleave(function() {
  64. $(this).children(".addTree").hide();
  65. $(this).children(".xl_common").hide();
  66. })
  67. $(".xl_box").on("click", "li", function() {
  68. var obj = $(this).parent().parent().parent();
  69. obj.find("input").eq(0).val($(this).text());
  70. obj.find("input").eq(1).val($(this).attr("itemid"));
  71. obj.find(".xl_common").hide();
  72. })
  73. $("input[name='ltype']").click(function() {
  74. var val = $("input[name='ltype']:checked").val();
  75. if(val == '0') {
  76. $(".js").show();
  77. } else if(val == '1') {
  78. $(".js").hide();
  79. }
  80. })
  81. if($("#zrbmtree")) {
  82. getBM($("#zrbmtree"));
  83. }
  84. })
  85. function View(val) {
  86. return '<div class="imgs" ><a class="xg" onclick= ck("' + val + '") >' + val + '</a></div>';
  87. }
  88. function OverTime(val, row) {
  89. var cs = 'Ctime';
  90. if(row.LimitTime) {
  91. if(row.totalhour * 1 > row.LimitTime * 1) {
  92. cs = 'overTime';
  93. }
  94. }
  95. return '<div class="' + cs + '" ><a class="xg" ></a></div>';
  96. }
  97. function ck(val) {
  98. selid = val;
  99. $(".ckxq").removeClass("Hidens");
  100. $(".ckxq ul li").eq(0).trigger("click");
  101. xq();
  102. }
  103. function xq() {
  104. $.getJSON(huayi.config.callcenter_url + 'WorkOrder/GetWorkOrder', {
  105. "orderid": selid,
  106. "token": $.cookie("token")
  107. }, function(result) {
  108. if(result.state.toLowerCase() == "success") {
  109. if(result.data.data.length > 0) {
  110. var data = result.data.data[0];
  111. $("#xq_gdbh").text(data.WorkOrderID);
  112. $("#xq_gdlx").text(GetTypeName(data.Type));
  113. $("#xq_cjsj").text(data.CreateTime);
  114. $("#xq_gdzt").html(GetStateName(data.State));
  115. $("#xq_khxm").text(data.Customer);
  116. $("#xq_khdh").text(data.CustomerTel);
  117. $("#xq_wtlx").text(data.Source);//工单来源
  118. $("#xq_zxgh").text(data.CreateUser);
  119. $("#xq_zxxm").text(data.CreateUserName);
  120. $("#xq_clnr").text(data.Answer);
  121. $("#xq_gdnr").text(data.Detail);
  122. $("#xq_xxsh").text(Audit(data.IsAudit));//信息审核
  123. $("#xq_xxfl").text(data.InfoType);
  124. //交办单位 Unit
  125. $("#xq_jbdw").text(data.Unit);
  126. $(".gdxq").eq(0).find(".allbc").remove();
  127. var Files = data.File;
  128. console.log(Files);
  129. $("#IMG_box").empty();
  130. // if(Files){
  131. //
  132. // $(Files).each(function(i, n) {
  133. // $('<div class="img-box"><img src="' + n.F_FileUrl + '" alt="" class="image-item" /><div>').appendTo("#IMG_box");
  134. // })
  135. // //图片放大
  136. //// $('.image-item').click(function() {
  137. ////
  138. //// })
  139. ////
  140. // }
  141. if(Files){
  142. var a ;
  143. var b;
  144. $(Files).each(function(i, n) {
  145. a=n.F_FileType.split("\/")[0];
  146. b=n.F_FileName.split(".")[1];
  147. console.log(a);
  148. if(a=='image'){
  149. $('<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" /></a><div>').appendTo("#IMG_box");
  150. }else{
  151. $('<div class="img-box "><a href="+' + n.F_FileUrl + '" download="'+n.F_FileName+'"><span class="">'+b+'</span></a><div>').appendTo("#IMG_box");
  152. }
  153. })
  154. }
  155. // if(result.data.item.length > 0) {
  156. // var html = '<div class="allbc">补充记录' +
  157. // '<table class="table table-hover table-striped"><thead><tr><th><div class="th-inner">补充人</div></th>' +
  158. // '<th><div class="th-inner">补充详情</div></th><th><div class="th-inner">创建时间</div></th></tr></thead><tbody>';
  159. //
  160. // $(result.data.item).each(function(i, n) {
  161. // html += '<td>' + n.CreateUserName + '</td><td>' + n.Detail + '</td><td>' + n.CreateTime + '</td>';
  162. // })
  163. // html += '</tbody></table></div>';
  164. // $(".gdxq").eq(0).append($(html));
  165. // }
  166. /***************************图片信息*/
  167. }
  168. }
  169. })
  170. }
  171. function cljl(type) {
  172. //先销毁表格
  173. if(type==4){
  174. var table = $(".gdxq").eq(2).find("table");
  175. }else{
  176. var table = $(".gdxq").eq(type).find("table");
  177. }
  178. table.bootstrapTable('destroy');
  179. //初始化表格,动态从服务器加载数据
  180. table.bootstrapTable({
  181. method: "get", //使用get请求到服务器获取数据
  182. url: huayi.config.callcenter_url + "WorkOrder/GetItemList", //获取数据的Servlet地址
  183. striped: true, //表格显示条纹
  184. pagination: true, //启动分页
  185. pageSize: 5, //每页显示的记录数
  186. pageNumber: 1, //当前第几页
  187. pageList: [10, 20, 50, 100], //记录数可选列表
  188. search: false, //是否启用查询
  189. showColumns: false, //显示下拉框勾选要显示的列
  190. showRefresh: false, //显示刷新按钮
  191. sidePagination: "server", //表示服务端请求
  192. //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
  193. //设置为limit可以获取limit, offset, search, sort, order
  194. queryParamsType: "undefined",
  195. queryParams: function queryParams(params) { //设置查询参数
  196. var param = {
  197. page: params.pageNumber,
  198. pagesize: params.pageSize,
  199. type: type,
  200. id: selid,
  201. token: $.cookie("token")
  202. };
  203. return param;
  204. },
  205. onLoadSuccess: function() { //加载成功时执行
  206. //layer.msg("加载成功");
  207. },
  208. onLoadError: function() { //加载失败时执行
  209. //layer.msg("加载数据失败", { time: 1500, icon: 2 });
  210. }
  211. });
  212. }
  213. function GetTypeName(val) {
  214. var str = '';
  215. switch(val + '') {
  216. case '1':
  217. str = "咨询";
  218. break;
  219. case '2':
  220. str = "报修服务";
  221. break;
  222. case '3':
  223. str = "投诉建议";
  224. break;
  225. }
  226. return str;
  227. }
  228. function GetStateName(val) {
  229. // var str = '';
  230. // switch (val + '') {
  231. // case '0': str = "待指派"; break;
  232. // case '1': str = "处理中"; break;
  233. // case '2': str = "已完结"; break;
  234. // }
  235. if(val == 0) {
  236. return '<div class="warning">待指派</div>'
  237. } else if(val == 1) {
  238. return '<div class="primary">处理中</div>'
  239. } else if(val == 2) {
  240. return '<div class="defauli">已完结</div>'
  241. }
  242. return str;
  243. }
  244. function ComXQ(val, row) {
  245. var str = '';
  246. if(row.IsLast)
  247. {
  248. str = str + row.DealUserName + " 完结工单。" + "<br>";
  249. }
  250. if(row.DealTime) {
  251. str = str + row.DealUserName + " 处理工单:" + "<br>";
  252. str = str + row.Detail + "<br>";
  253. }
  254. if(row.SureUserName) {
  255. str = str + row.SureUserName + " 接单。" + "<br>";
  256. }
  257. if(row.ToDeptName) {
  258. str = str + row.CreateUserName + " 指派工单给 " + row.ToDeptName + " ";
  259. if(row.ToUserName) {
  260. str = str + row.ToUserName;
  261. }
  262. str = str + "<br>";
  263. }
  264. if(row.IsStart) {
  265. str = str + row.CreateUserName + " 重新开启工单。" + "<br>";
  266. }
  267. return str;
  268. }
  269. //获取部门
  270. var setting = {
  271. data: {
  272. key: {
  273. name: "F_DeptName"
  274. },
  275. simpleData: {
  276. enable: true,
  277. idKey: "F_DeptId",
  278. pIdKey: "F_ParentId",
  279. rootPId: 0
  280. }
  281. },
  282. callback: {
  283. onClick: zTreeOnClick
  284. }
  285. };
  286. function getBM(obj) {
  287. $.getJSON(huayi.config.callcenter_url + 'Department/GetAllList', {
  288. "token": $.cookie("token")
  289. }, function(result) {
  290. if(result.state.toLowerCase() == "success") {
  291. $.fn.zTree.init(obj, setting, result.data);
  292. }
  293. })
  294. }
  295. function zTreeOnClick(event, treeId, treeNode) {
  296. if(event) {
  297. event.stopPropagation();
  298. }
  299. var obj = $("#" + event.data.treeId).parent();
  300. obj.parent().find("input").eq(0).val(treeNode.F_DeptName);
  301. obj.parent().find("input").eq(1).val(treeNode.F_DeptId);
  302. obj.hide();
  303. getRY($(".clid"), $("#clbm").val());
  304. };
  305. //获取人员
  306. function getRY(obj, deptid) {
  307. obj.empty();
  308. obj.append('<li itemid="">--请选择--</li>');
  309. obj.parent().parent().find("input").eq(0).val("--请选择--");
  310. obj.parent().parent().find("input").eq(1).val("");
  311. $.getJSON(huayi.config.callcenter_url + 'UserAccount/GetDeptUserList', {
  312. "deptid": deptid,
  313. "token": $.cookie("token")
  314. }, function(result) {
  315. if(result.state.toLowerCase() == "success") {
  316. $(result.data).each(function(i, n) {
  317. obj.append('<li itemid="' + n.F_UserId + '">' + n.F_UserName + '</li>');
  318. })
  319. obj.find("li").click(function(event) {
  320. if(event) {
  321. event.stopPropagation();
  322. }
  323. $(this).parent().parent().parent().find("input").eq(0).val($(this).text());
  324. $(this).parent().parent().parent().find("input").eq(1).val($(this).attr("itemid"));
  325. $(this).parent().parent().hide();
  326. });
  327. }
  328. })
  329. }
  330. function Appoint(val, row) {
  331. return czhtml(val, row, "处理");
  332. }
  333. function Dispose(val, row) {
  334. return czhtml(val, row, "处理");
  335. }
  336. function Expedite(val, row) {
  337. return czhtml(val, row, "催办");
  338. }
  339. function Comment(val, row) {
  340. return czhtmls(val, row, "评论");
  341. }
  342. function czhtml(val, row, str) {
  343. return '<div class="imgs" ><a class="xg" itemstr=\'' + JSON.stringify(row) + '\' onclick= oper("' + val + '",this) >' + str + '</a></div>';
  344. }
  345. function czhtmls(val, row, str) {
  346. return '<div class="imgs" ><a class="xg" onclick= opers("' + val + '",this) >' + str + '</a></div>';
  347. }
  348. function oper(val, obj) {
  349. layer.open({
  350. type: 2,
  351. content: "WorkOrderDeal.html?str="+val, //iframe的url,no代表不显示滚动条
  352. title: '处理工单',
  353. area: ['55%', '68%'], //宽高
  354. })
  355. }
  356. function opers(val, obj) {
  357. layer.open({
  358. type: 2,
  359. content: "WorkEvaluate.html?str="+val, //iframe的url,no代表不显示滚动条
  360. title: '评价工单',
  361. area: ['55%', '68%'], //宽高
  362. })
  363. }
  364. /// 审核信息
  365. function Audit(val) {
  366. var str = '';
  367. switch(val + '') {
  368. case '0':
  369. str = "未审核";
  370. break;
  371. case '1':
  372. str = "无效";
  373. break;
  374. case '2':
  375. str = "有效";
  376. break;
  377. }
  378. return str;
  379. }
  380. //限制字符串长度
  381. function Detail(val) {
  382. if(val) {
  383. var str = '<div '
  384. if(val.length > 10) {
  385. str = str + ' title="' + val + '" ';
  386. val = val.substr(0, 10) + "...";
  387. }
  388. return str + '>' + val + '</div>';
  389. } else {
  390. return '';
  391. }
  392. }
  393. function Hiden(){
  394. $(".ckxq").addClass("Hidens");;
  395. }