curing.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428
  1. /**
  2. * Created by MyPC on 2019/11/11.
  3. */
  4. var mobile2InfoTimeout = null;
  5. var searchCuringTimeout = null;
  6. var mobile='';
  7. var getClentListTimeout = null;
  8. var clientname='';
  9. var columnLength=7;
  10. function fnSearchCuring(){
  11. searchCuringTimeout = null;
  12. if((/^1[34578]\d{9}$/.test(mobile))){
  13. $.ajax({
  14. cache :false,
  15. type: 'GET',
  16. url: '/cloud/curing/ajax/checkMobile/'+mobile,
  17. //data: { mobile: mobile },
  18. dataType: 'json',
  19. context: $('body'),
  20. success: function(data){
  21. if(data.status==1||data.status==2){
  22. fnGetCuringDetail(data.data.id,data.data.client_id);
  23. }else if(data.status==3){
  24. $('div[upCuringBox]').hide();
  25. $('p[upCuringBox]').show();
  26. }
  27. },
  28. error: function(xhr, type){
  29. console.log('Ajax error!')
  30. }
  31. })
  32. }
  33. }
  34. //获得CLD客户list数据
  35. function getClentList(){
  36. if(!isExistence(clientname)){
  37. console.log('参数错误');
  38. return ;
  39. }
  40. $.ajax({
  41. cache :false,
  42. type: 'GET',
  43. url: '/contacts/client/ajax/getClentList',
  44. data: { clientname: encodeURI(clientname) },
  45. dataType: 'json',
  46. success: function(data){
  47. if(data.status==1){
  48. var html=buildClientBySearch(data.list);
  49. $('div[searchClient] curingClient').html(html);
  50. }else {
  51. console.log(data.msg);
  52. }
  53. },
  54. error: function(xhr, type){
  55. console.log('Ajax error!')
  56. }
  57. })
  58. }
  59. /**
  60. * 用户升级专业版 弹框提示--用户详情界面
  61. * @param name
  62. * @param _id
  63. * @param username
  64. * @returns
  65. */
  66. function upCuring(name,_id,username){
  67. $('#name').val(name);
  68. $('#_id').val(_id);
  69. var curingMobile=$('#curingMobile').val();
  70. var html='为用户 <b>'+curingMobile+','+username+'</b> 升级 <b>'+name+'</b>';
  71. $('div[upCuring] span').html(html);
  72. }
  73. $(document).ready(function(){
  74. init();
  75. })
  76. $(function() {
  77. //------用户列表界面相关----------
  78. /**
  79. * 绑定分页-点击事件-刷新用户列表和分页列表
  80. * parameter 传递参数
  81. * currentPage
  82. */
  83. $('div[pageDetail]').delegate( 'a','click', function(){
  84. // 只获取第一个选中的值
  85. var parameter = $(this).attr('parameter');
  86. var currentPage = $(this).attr('currentPage');
  87. $('button[closeRefresh]').attr('currentPage',currentPage);
  88. $('button[closeRefresh]').attr('parameter',parameter);
  89. refreshCuringPagination(parameter,currentPage);
  90. });
  91. /**
  92. * 编办下拉选择
  93. */
  94. $('select[curingByCompilation]').on('change', function(e){
  95. var compilation=$(this).val();
  96. var latestCompilation=$('select[curingByLatestCompilation]').val();
  97. refreshCuringPage(compilation,latestCompilation);
  98. });
  99. $('select[curingByLatestCompilation]').on('change', function(e){
  100. var latestCompilation=$(this).val();
  101. var compilation=$('select[curingByCompilation]').val();
  102. refreshCuringPage(compilation,latestCompilation);
  103. });
  104. /**
  105. * 用户列表排序相关
  106. */
  107. $('input[type=radio][name=sortField]').on('change', function(e){
  108. var sortField=$(this).attr('data');
  109. var latestCompilation=$('select[curingByLatestCompilation]').val();
  110. var compilation=$('select[curingByCompilation]').val();
  111. refreshCuringPage(compilation,latestCompilation,sortField);
  112. });
  113. $('input[type=radio][name=sort]').on('change', function(e){
  114. var sort=$(this).attr('data');
  115. var latestCompilation=$('select[curingByLatestCompilation]').val();
  116. var compilation=$('select[curingByCompilation]').val();
  117. refreshCuringPage(compilation,latestCompilation,'',sort);
  118. });
  119. /**
  120. * 通行证账号检索养护用户--缓冲300
  121. */
  122. $('input[mobile2Info]').on('keyup', function(e){
  123. if(mobile2InfoTimeout != null){
  124. clearTimeout(mobile2InfoTimeout);
  125. }
  126. mobile = $(this).val();
  127. if((/^1[34578]\d{9}$/.test(mobile))) {
  128. mobile2InfoTimeout = setTimeout(fnMobile2Info, 300);
  129. }
  130. });
  131. //--------------用户详情界面相关---------
  132. /**
  133. * 动态绑定养护用户列表 打开用户详情页面事件
  134. * ssoid
  135. * id
  136. * client_id
  137. */
  138. // $('tbody[curingUser]').on("tap",'tr',function(){
  139. console.log('dd');
  140. // $(this).hide();
  141. // });
  142. //
  143. $('tbody[curingUser]').delegate( 'tr','click', function(){
  144. // 只获取第一个选中的值
  145. var ssoid = $(this).attr('data');
  146. var client_id=$(this).attr('dataCid')
  147. $(this).attr('data-toggle',' ');
  148. refreshCuringPageDetail(ssoid,client_id);
  149. });
  150. /**
  151. * 确定升级专业版--用户详情界面
  152. */
  153. $('button[upCuringDo]').on('click', function(e){
  154. // 只获取第一个选中的值
  155. var compilationId = $('#_id').val();
  156. var name = $('#name').val();
  157. var curingSsoid = $('#curingSsoid').val();
  158. var mobile = $('#curingMobile').val();
  159. var client_id = $('#client_id').val();
  160. if (curingSsoid != '' && compilationId != '') {
  161. $.ajax({
  162. cache :false,
  163. type: 'post',
  164. url: '/cloud/curing/ajax/upCuringDo',
  165. data: {ssoid: curingSsoid, compilationId: compilationId, mobile: mobile, client_id: client_id, name: name},
  166. dataType: 'json',
  167. success: function(data) {
  168. if (data.status == 1) {
  169. refreshCuringPageDetail(curingSsoid,client_id);
  170. } else {
  171. alert(data.msg);
  172. }
  173. }
  174. })
  175. } else {
  176. alert('请选择需要升级的版本');
  177. }
  178. });
  179. /**
  180. * 用户绑定CLD客户--用户详情页
  181. */
  182. $('div[relevanceClientDo]').delegate( 'span','click', function(){
  183. // 只获取第一个选中的值
  184. var cidKey = $(this).attr('data');
  185. var ssoId = $('#curingSsoid').val();
  186. //var id=$('#id').val();
  187. $.ajax({
  188. cache :false,
  189. type: 'POST',
  190. url: '/cloud/curing/ajax/relevanceClientDo',
  191. data: {cidKey: encodeURI(cidKey),ssoId:encodeURI(ssoId)},
  192. dataType: 'json',
  193. success: function(data){
  194. if(data.status==1){
  195. refreshCuringPageDetail(ssoId,cidKey);
  196. $('#linkcld').modal('hide');
  197. }else{
  198. alert(data.msg);
  199. }
  200. },
  201. error: function(xhr, type){
  202. console.log('Ajax error!')
  203. }
  204. })
  205. });
  206. /**
  207. * 用户取消关联CLD客户--用户详情页
  208. */
  209. $('button[relieveClientDo]').on('click', function(e){
  210. // 只获取第一个选中的值
  211. var cid = $(this).attr('data');
  212. var ssoId = $('#curingSsoid').val();
  213. $('#unlinkcld').modal('hide');
  214. $.ajax({
  215. cache :false,
  216. type: 'POST',
  217. url: '/cloud/curing/ajax/relieveClientDo',
  218. data: {cid: encodeURI(cid),ssoId:encodeURI(ssoId)},
  219. dataType: 'json',
  220. success: function(data){
  221. if(data.status==1){
  222. refreshCuringPageDetail(ssoId,cid);
  223. }else{
  224. alert(data.msg);
  225. }
  226. },
  227. error: function(xhr, type){
  228. console.log('Ajax error!')
  229. }
  230. })
  231. });
  232. /**
  233. * 关闭详情页--刷新用户列表
  234. */
  235. $('button[closeRefresh]').on('click', function(e){
  236. // 只获取第一个选中的值
  237. var parameter=$('button[closeRefresh]').attr('parameter');
  238. if(parameter!=''){
  239. var currentPage=$('button[closeRefresh]').attr('currentPage');
  240. refreshCuringPagination(parameter,currentPage);
  241. }else{
  242. var latestCompilation=$('select[curingByLatestCompilation]').val();
  243. var compilation=$('select[curingByCompilation]').val();
  244. refreshCuringPage(compilation,latestCompilation,'','',mobile);
  245. }
  246. });
  247. //检索cld用户
  248. $('input[getClentList]').on('keyup', function(e){
  249. if(getClentListTimeout != null){
  250. clearTimeout(getClentListTimeout);
  251. }
  252. clientname = $(this).val();
  253. if(isExistence(clientname)){
  254. getClentListTimeout = setTimeout(getClentList, 500);
  255. }
  256. });
  257. //列表 号码检索事件绑定
  258. $('div[mobile2Info]').on('click', function(e){
  259. mobile=$('input[mobile2Info]').val();
  260. if(mobile==''){
  261. location.reload()
  262. }
  263. fnMobile2Info();
  264. });
  265. $('input[fnSearchCuring]').on('keyup', function(e){
  266. if(searchCuringTimeout != null){
  267. clearTimeout(searchCuringTimeout);
  268. }
  269. mobile=$(this).val();
  270. if((/^1[34578]\d{9}$/.test(mobile))) {
  271. searchCuringTimeout = setTimeout(fnSearchCuring, 500);
  272. }
  273. });
  274. $('a[upNewClient]').on('click', function(e){
  275. $('input[fnsearchcuring]').val('');
  276. $('div[upCuringBox]').hide();
  277. $('p[upCuringBox]').hide();
  278. });
  279. $('a[upClient]').on('click', function(e){
  280. var mobile=$('b[curingMobile]').html();
  281. if(mobile==''){
  282. alert('参数错误');
  283. }
  284. $.ajax({
  285. cache :false,
  286. type: 'GET',
  287. url: '/cloud/curing/ajax/checkMobile/'+mobile,
  288. //data: { mobile: mobile },
  289. dataType: 'json',
  290. success: function(data){
  291. if(data.status==1||data.status==2){
  292. $('input[fnsearchcuring]').val(mobile);
  293. fnGetCuringDetail(data.data.id,data.data.client_id);
  294. }else if(data.status==3){
  295. $('div[upCuringBox]').hide();
  296. $('p[upCuringBox]').show();
  297. }
  298. },
  299. error: function(xhr, type){
  300. console.log('Ajax error!')
  301. }
  302. })
  303. });
  304. })
  305. //构建升级用户信息--预计废弃
  306. function fnGetCuringDetail(ssoid,client_id){
  307. $('tbody[upMajorBox]').html('');
  308. $('#curingSsoid').val('');
  309. $('#curingMobile').val('');
  310. $('#client_id').val('');
  311. $('#name').val('');
  312. $('#_id').val('');
  313. $.ajax({
  314. cache :false,
  315. type: 'GET',
  316. url: '/cloud/curing/ajax/getCuringBySsoid',
  317. data: {ssoid: ssoid, client_id: client_id},
  318. dataType: 'json',
  319. context: $('body'),
  320. success: function(data){
  321. if(data.status==1||data.status==2){
  322. $('div[upCuringBox]').show();
  323. $('p[upCuringBox]').hide();
  324. var objHtml=buildCuringInfo(data.detail.userInfo);
  325. $('div[curingInfo] curing').html(objHtml);
  326. var upMajorBoxHtml=buildCuringCompilation(data);
  327. $('tbody[upMajorBox]').html(upMajorBoxHtml);
  328. var operateLogHtml=buildCuringOperateLog(data.detail.operateLog);
  329. $('div[operateLog] curingOperate').html(operateLogHtml);
  330. }else if(data.status==3){
  331. $('div[upCuringBox]').hide();
  332. $('p[upCuringBox]').show();
  333. }
  334. },
  335. error: function(xhr, type){
  336. console.log('Ajax error!')
  337. }
  338. })
  339. }