PingAnYeXianSZCG_Web 前端代码

WorkOrder.js 10KB

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