maintenanceManagementCtrl.js 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742
  1. "use strict";
  2. /**
  3. * controller for User Profile Example
  4. */
  5. app.controller("maintenanceManagementCtrl", [
  6. "$rootScope",
  7. "$scope",
  8. "$state",
  9. "$timeout",
  10. "$interval",
  11. "$modal",
  12. "SweetAlert",
  13. "i18nService",
  14. "uiGridConstants",
  15. "uiGridGroupingConstants",
  16. "Restangular",
  17. "api_user_data",
  18. "api_wechatfile",
  19. function (
  20. $rootScope,
  21. $scope,
  22. $state,
  23. $timeout,
  24. $interval,
  25. $modal,
  26. SweetAlert,
  27. i18nService,
  28. uiGridConstants,
  29. uiGridGroupingConstants,
  30. Restangular,
  31. api_user_data,
  32. api_wechatfile
  33. ) {
  34. $scope.langs = i18nService.getAllLangs();
  35. $scope.lang = "zh-cn";
  36. i18nService.setCurrentLang($scope.lang);
  37. var loginUser = $rootScope.user;
  38. $scope.xinzeng = true;
  39. $scope.shanchu = true;
  40. $scope.bianji = true;
  41. $scope.days60 = false;
  42. $scope.changeDays60 = function(){
  43. $scope.refreshData("expand-right", $scope.fileData)
  44. }
  45. for (var i = 0; i < loginUser.menu.length; i++) {
  46. if (loginUser.menu[i].link == "add") {
  47. $scope.xinzeng = true;
  48. }
  49. if (loginUser.menu[i].link == "del") {
  50. $scope.shanchu = true;
  51. }
  52. if (loginUser.menu[i].link == "yuyue") {
  53. $scope.yuyue = true;
  54. }
  55. }
  56. $scope.gridOptions = {};
  57. $scope.gridOptions.data = "myData";
  58. $scope.gridOptions.enableColumnResizing = true;
  59. $scope.gridOptions.enableFiltering = true;
  60. $scope.gridOptions.enableGridMenu = true;
  61. $scope.gridOptions.enableRowSelection = true;
  62. $scope.gridOptions.showGridFooter = true;
  63. $scope.gridOptions.showColumnFooter = false;
  64. $scope.gridOptions.fastWatch = true;
  65. $scope.gridOptions.useExternalFiltering = true;
  66. $scope.gridOptions.useExternalPagination = true;
  67. $scope.gridOptions.paginationPageSizes = [10, 20, 50, 100];
  68. $scope.gridOptions.paginationPageSize = 10;
  69. $scope.gridOptions.multiSelect = false;
  70. // $scope.gridOptions.rowTemplate =
  71. // '<div ng-dblclick="grid.appScope.onDblClick(row)" ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.uid" ui-grid-one-bind-id-grid="rowRenderIndex + \'-\' + col.uid + \'-cell\'" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader }" role="{{col.isRowHeader ? \'rowheader\' : \'gridcell\'}}" ui-grid-cell></div>';
  72. $scope.gridOptions.rowIdentity = function (row) {
  73. return row.id;
  74. };
  75. $scope.gridOptions.getRowIdentity = function (row) {
  76. return row.id;
  77. };
  78. $scope.gridOptions.columnDefs = [
  79. {
  80. name: "item",
  81. displayName: "序号",
  82. width: 50,
  83. enableFiltering: false,
  84. },
  85. {
  86. name: "contractCode",
  87. displayName: "合同编号",
  88. width: "200",
  89. enableFiltering: false,
  90. },
  91. {
  92. name: "contractName",
  93. displayName: "合同名称",
  94. width: "200",
  95. enableFiltering: false,
  96. },
  97. {
  98. name: "company",
  99. displayName: "乙方",
  100. width: "200",
  101. enableFiltering: false,
  102. cellTemplate:
  103. "<div>" +
  104. '<div class="ui-grid-cell-contents">{{row.entity.company ? row.entity.company.name : ""}}</div>' +
  105. "</div>",
  106. },
  107. {
  108. name: "departmentDTO",
  109. displayName: "使用方",
  110. width: "200",
  111. enableFiltering: false,
  112. cellTemplate:
  113. "<div>" +
  114. '<div class="ui-grid-cell-contents">{{row.entity.departmentDTO ? row.entity.departmentDTO.dept : ""}}</div>' +
  115. "</div>",
  116. },
  117. {
  118. name: "startTime",
  119. displayName: "维保开始时间",
  120. width: "100",
  121. enableFiltering: false,
  122. cellTemplate:
  123. "<div>" +
  124. '<div class="ui-grid-cell-contents">{{row.entity.startTime | date:"yyyy-MM-dd"}}</div>' +
  125. "</div>",
  126. },
  127. {
  128. name: "totalYear",
  129. displayName: "维保年限",
  130. width: "100",
  131. enableFiltering: false,
  132. },
  133. {
  134. name: "endTime",
  135. displayName: "维保结束时间",
  136. width: "100",
  137. enableFiltering: false,
  138. cellTemplate:
  139. "<div>" +
  140. '<div class="ui-grid-cell-contents">{{row.entity.endTime | date:"yyyy-MM-dd"}}</div>' +
  141. "</div>",
  142. },
  143. {
  144. name: "status",
  145. displayName: "状态",
  146. width: "90",
  147. enableFiltering: false,
  148. cellTemplate:
  149. "<div>" +
  150. '<div class="ui-grid-cell-contents">{{row.entity.status ? row.entity.status.desc : ""}}</div>' +
  151. "</div>",
  152. },
  153. {
  154. name: "remainingDay",
  155. displayName: "倒计时(天)",
  156. width: "100",
  157. enableFiltering: false,
  158. cellTemplate:
  159. "<div>" +
  160. '<div class="ui-grid-cell-contents" ng-if="row.entity.remainingDay <= 60" style="color:red;">{{row.entity.remainingDay}}</div>' +
  161. '<div class="ui-grid-cell-contents" ng-if="row.entity.remainingDay > 60 && row.entity.remainingDay <= 90" style="color:orange;">{{row.entity.remainingDay}}</div>' +
  162. '<div class="ui-grid-cell-contents" ng-if="row.entity.remainingDay > 90">{{row.entity.remainingDay}}</div>' +
  163. "</div>",
  164. },
  165. {
  166. name: "操作",
  167. width: "200",
  168. cellTemplate:
  169. '<div><div class="cl-effect-1 ui-grid-cell-contents pull-left" >' +
  170. '<a ng-click="grid.appScope.saveData(row.entity)" ng-show="grid.appScope.yuyue" class="bianjifont">快速续保</a>' +
  171. '<a ng-click="grid.appScope.removeData(row.entity)" ng-show="grid.appScope.shanchu" class="bianjifont">删除</a>' +
  172. "</div></div>",
  173. enableFiltering: false,
  174. },
  175. ];
  176. $scope.transferDept = function (data) {
  177. if (data) {
  178. return data;
  179. } else {
  180. return "无";
  181. }
  182. };
  183. // 快速续保
  184. $scope.saveData = function (selectdata) {
  185. console.log(selectdata);
  186. var modalInstance = $modal.open({
  187. templateUrl: "assets/views/system/tpl/maintenancechange.html",
  188. controller: function ($scope, $rootScope, $modalInstance, api_user_data, api_wechatfile) {
  189. $scope.title = "快速续保";
  190. $scope.isAdd = false;
  191. $scope.cancel = function () {
  192. $modalInstance.dismiss("cancel");
  193. };
  194. console.log(selectdata);
  195. $scope.maintenance = {
  196. id: selectdata.id,
  197. branch: selectdata.branch,
  198. contractCode: selectdata.contractCode,
  199. contractName: selectdata.contractName,
  200. company: selectdata.company,
  201. department: selectdata.departmentDTO,
  202. startTime: new Date(selectdata.startTime),
  203. totalYear: null,
  204. endTime: new Date(selectdata.endTime)
  205. };
  206. console.log($scope.maintenance);
  207. $scope.minYYtime = null;
  208. $scope.maxYYtime = null;
  209. // 修改维保开始时间
  210. $scope.changeStartTime = function(){
  211. $scope.minYYtime = $scope.maintenance.startTime;
  212. if($scope.maintenance.startTime && $scope.maintenance.totalYear !== null){
  213. $scope.maintenance.endTime = new Date(moment($scope.maintenance.startTime).add($scope.maintenance.totalYear,'years'));
  214. }
  215. }
  216. // 修改维保结束时间
  217. $scope.changeEndTime = function(){
  218. $scope.maxYYtime = $scope.maintenance.endTime;
  219. }
  220. // 修改维保年限
  221. $scope.changeTotalYear = function(){
  222. if($scope.maintenance.totalYear !== null){
  223. $scope.maintenance.endTime = new Date(moment(new Date(selectdata.endTime)).add($scope.maintenance.totalYear,'years'));
  224. }
  225. }
  226. // 查询乙方
  227. $scope.companyList = [];
  228. $scope.searchCompany = function(keyword = ''){
  229. var postData = {
  230. idx: 0,
  231. sum: 10,
  232. company: {
  233. name: keyword,
  234. selectType: "pinyin_qs",
  235. },
  236. };
  237. api_user_data.fetchDataList("company", postData).then(function (data) {
  238. $scope.companyList = data.list || [];
  239. });
  240. }
  241. $scope.searchCompany();
  242. // 查询使用方
  243. $scope.departmentList = [];
  244. $scope.searchDepartment = function(keyword = ''){
  245. var postData = {
  246. idx: 0,
  247. sum: 10,
  248. department: {
  249. dept: keyword,
  250. selectType: "pinyin_qs",
  251. },
  252. };
  253. api_user_data.fetchDataList("department", postData).then(function (data) {
  254. $scope.departmentList = data.list || [];
  255. });
  256. }
  257. // 查询状态
  258. $scope.statusList = [];
  259. $scope.searchStatus= function(){
  260. api_wechatfile.getDictionary({
  261. "key": "maintenance_state",
  262. "type": "list"
  263. }).then(function (response) {
  264. $scope.statusList = response || [];
  265. $scope.searchDepartment();
  266. })
  267. }
  268. $scope.searchStatus();
  269. // 保存
  270. $scope.savercode = function (maintenance) {
  271. console.log(maintenance);
  272. if (maintenance && maintenance.contractCode && maintenance.contractName && maintenance.company && maintenance.department && maintenance.startTime && maintenance.totalYear && maintenance.endTime) {
  273. $modalInstance.close({maintenance: maintenance, $scope: $scope, $rootScope: $rootScope});
  274. } else {
  275. SweetAlert.swal(
  276. {
  277. title: "失败!",
  278. text: "请填写必填项!",
  279. type: "error",
  280. confirmButtonColor: "#DD6B55",
  281. },
  282. function () {}
  283. );
  284. }
  285. };
  286. },
  287. resolve: {
  288. scope: function () {
  289. return $scope;
  290. },
  291. },
  292. });
  293. modalInstance.result.then(function (selectedItems) {
  294. var selectedItem = selectedItems.maintenance;
  295. var scope = selectedItems.$scope;
  296. var rootScope = selectedItems.$rootScope;
  297. // var diffDay = moment(selectedItem.endTime).diff(moment(), 'days');
  298. // var statusDTO;
  299. // if(diffDay < 0){
  300. // statusDTO = scope.statusList.find(function(v){return v.value == 2});
  301. // }else if(diffDay == 0){
  302. // var diffHour = moment(selectedItem.endTime).diff(moment(), 'hours');
  303. // if(diffHour > 0){
  304. // statusDTO = scope.statusList.find(function(v){return v.value == 3});
  305. // }else{
  306. // statusDTO = scope.statusList.find(function(v){return v.value == 2});
  307. // }
  308. // }else if(diffDay <= 60){
  309. // statusDTO = scope.statusList.find(function(v){return v.value == 3});
  310. // }else{
  311. // statusDTO = scope.statusList.find(function(v){return v.value == 1});
  312. // }
  313. var fildata = {
  314. maintenance: {
  315. id: selectedItem.id,
  316. contractCode: selectedItem.contractCode,
  317. contractName: selectedItem.contractName,
  318. company: selectedItem.company,
  319. department: selectedItem.department.id,
  320. startTime: moment(selectedItem.startTime).startOf('day').format('YYYY-MM-DD HH:mm:ss'),
  321. totalYear: selectdata.totalYear + selectedItem.totalYear,
  322. endTime: moment(selectedItem.endTime).startOf('day').format('YYYY-MM-DD HH:mm:ss'),
  323. // status: statusDTO,
  324. branch: selectedItem.branch,
  325. deleteFlag: 0,
  326. },
  327. };
  328. console.log(fildata);
  329. api_user_data.addData("maintenance", fildata).then(function (response) {
  330. if (response) {
  331. if (response.status == 200) {
  332. SweetAlert.swal(
  333. {
  334. title: "成功!",
  335. type: "success",
  336. },
  337. function () {
  338. $scope.refreshData("expand-right", $scope.fileData);
  339. }
  340. );
  341. } else {
  342. SweetAlert.swal({
  343. title: "失败!",
  344. text: response.msg,
  345. type: "error",
  346. });
  347. }
  348. }
  349. });
  350. });
  351. };
  352. // 新增
  353. $scope.addData = function () {
  354. var modalInstance = $modal.open({
  355. templateUrl: "assets/views/system/tpl/maintenancechange.html",
  356. controller: function ($scope, $rootScope, $modalInstance, api_user_data, api_wechatfile) {
  357. $scope.title = "新增";
  358. $scope.isAdd = true;
  359. $scope.cancel = function () {
  360. $modalInstance.dismiss("cancel");
  361. };
  362. $scope.maintenance = {
  363. contractCode: '',
  364. contractName: '',
  365. company: null,
  366. department: null,
  367. startTime:null,
  368. totalYear: null,
  369. endTime: null
  370. };
  371. $scope.minYYtime = null;
  372. $scope.maxYYtime = null;
  373. // 修改维保开始时间
  374. $scope.changeStartTime = function(){
  375. $scope.minYYtime = $scope.maintenance.startTime;
  376. if($scope.maintenance.startTime && $scope.maintenance.totalYear !== null){
  377. $scope.maintenance.endTime = new Date(moment($scope.maintenance.startTime).add($scope.maintenance.totalYear,'years'));
  378. }
  379. }
  380. // 修改维保结束时间
  381. $scope.changeEndTime = function(){
  382. $scope.maxYYtime = $scope.maintenance.endTime;
  383. }
  384. // 修改维保年限
  385. $scope.changeTotalYear = function(){
  386. if($scope.maintenance.startTime && $scope.maintenance.totalYear !== null){
  387. $scope.maintenance.endTime = new Date(moment($scope.maintenance.startTime).add($scope.maintenance.totalYear,'years'));
  388. }
  389. }
  390. // 查询乙方
  391. $scope.companyList = [];
  392. $scope.searchCompany = function(keyword = ''){
  393. var postData = {
  394. idx: 0,
  395. sum: 10,
  396. company: {
  397. name: keyword,
  398. selectType: "pinyin_qs",
  399. },
  400. };
  401. api_user_data.fetchDataList("company", postData).then(function (data) {
  402. $scope.companyList = data.list || [];
  403. });
  404. }
  405. $scope.searchCompany();
  406. // 查询使用方
  407. $scope.departmentList = [];
  408. $scope.searchDepartment = function(keyword = ''){
  409. var postData = {
  410. idx: 0,
  411. sum: 10,
  412. department: {
  413. dept: keyword,
  414. selectType: "pinyin_qs",
  415. },
  416. };
  417. api_user_data.fetchDataList("department", postData).then(function (data) {
  418. $scope.departmentList = data.list || [];
  419. });
  420. }
  421. // 查询状态
  422. $scope.statusList = [];
  423. $scope.searchStatus= function(){
  424. api_wechatfile.getDictionary({
  425. "key": "maintenance_state",
  426. "type": "list"
  427. }).then(function (response) {
  428. $scope.statusList = response || [];
  429. $scope.searchDepartment();
  430. })
  431. }
  432. $scope.searchStatus();
  433. // 保存
  434. $scope.savercode = function (maintenance) {
  435. console.log(maintenance);
  436. if (maintenance && maintenance.contractCode && maintenance.contractName && maintenance.company && maintenance.department && maintenance.startTime && maintenance.totalYear && maintenance.endTime) {
  437. $modalInstance.close({maintenance: maintenance, $scope: $scope, $rootScope: $rootScope});
  438. } else {
  439. SweetAlert.swal(
  440. {
  441. title: "新增失败!",
  442. text: "请填写必填项!",
  443. type: "error",
  444. confirmButtonColor: "#DD6B55",
  445. },
  446. function () {}
  447. );
  448. }
  449. };
  450. },
  451. });
  452. modalInstance.result.then(function (selectedItems) {
  453. var selectedItem = selectedItems.maintenance;
  454. var scope = selectedItems.$scope;
  455. var rootScope = selectedItems.$rootScope;
  456. var branchId;
  457. if(rootScope.user.duty){
  458. branchId = rootScope.user.duty.branch;
  459. }else if(rootScope.user.branch){
  460. branchId = rootScope.user.branch.id;
  461. }
  462. // var diffDay = moment(selectedItem.endTime).diff(moment(), 'days');
  463. // var statusDTO;
  464. // if(diffDay < 0){
  465. // statusDTO = scope.statusList.find(function(v){return v.value == 2});
  466. // }else if(diffDay == 0){
  467. // var diffHour = moment(selectedItem.endTime).diff(moment(), 'hours');
  468. // if(diffHour > 0){
  469. // statusDTO = scope.statusList.find(function(v){return v.value == 3});
  470. // }else{
  471. // statusDTO = scope.statusList.find(function(v){return v.value == 2});
  472. // }
  473. // }else if(diffDay <= 60){
  474. // statusDTO = scope.statusList.find(function(v){return v.value == 3});
  475. // }else{
  476. // statusDTO = scope.statusList.find(function(v){return v.value == 1});
  477. // }
  478. var fildata = {
  479. maintenance: {
  480. contractCode:selectedItem.contractCode,
  481. contractName: selectedItem.contractName,
  482. company: selectedItem.company,
  483. department: selectedItem.department.id,
  484. startTime: moment(selectedItem.startTime).startOf('day').format('YYYY-MM-DD HH:mm:ss'),
  485. totalYear: selectedItem.totalYear,
  486. endTime: moment(selectedItem.endTime).startOf('day').format('YYYY-MM-DD HH:mm:ss'),
  487. // status: statusDTO,
  488. branch: branchId,
  489. deleteFlag: 0,
  490. },
  491. };
  492. console.log(fildata);
  493. api_user_data.addData("maintenance", fildata).then(function (response) {
  494. if (response) {
  495. if (response.status == 200) {
  496. SweetAlert.swal(
  497. {
  498. title: "新增成功!",
  499. type: "success",
  500. },
  501. function () {
  502. $scope.refreshData("expand-right", $scope.fileData);
  503. }
  504. );
  505. } else {
  506. SweetAlert.swal({
  507. title: "新增失败!",
  508. text: response.msg,
  509. type: "error",
  510. });
  511. }
  512. }
  513. });
  514. });
  515. };
  516. // 删除
  517. $scope.removeData = function (rmData) {
  518. var modalInstance = $modal.open({
  519. templateUrl: "assets/views/incident/tpl/acceptTask.tpl.html",
  520. controller: function ($scope, scope, $modalInstance, api_bpm_data) {
  521. var rmvList = [];
  522. $scope.title = "删除";
  523. $scope.connect = "确定要删除?";
  524. rmvList.push(rmData);
  525. $scope.ok = function () {
  526. $modalInstance.close(rmvList);
  527. };
  528. $scope.cancel = function () {
  529. $modalInstance.dismiss("cancel");
  530. };
  531. },
  532. size: "sm",
  533. resolve: {
  534. scope: function () {
  535. return $scope;
  536. },
  537. },
  538. });
  539. modalInstance.result.then(function (selectedItem) {
  540. if (selectedItem) {
  541. if (selectedItem.length > 0) {
  542. console.log(selectedItem);
  543. api_user_data
  544. .rmvData("maintenance", [selectedItem[0].id])
  545. .then(function (response) {
  546. if (response.status == 200) {
  547. SweetAlert.swal(
  548. {
  549. title: "删除成功!",
  550. type: "success",
  551. confirmButtonColor: "#007AFF",
  552. },
  553. function () {
  554. $scope.myData = _.reject($scope.myData, function (o) {
  555. return _.includes(selectedItem, o.id);
  556. });
  557. $scope.selected = {
  558. items: [],
  559. };
  560. $scope.gridOptions.totalItems =
  561. $scope.gridOptions.totalItems - selectedItem.length;
  562. $scope.gridApi.grid.selection.selectedCount = 0;
  563. $scope.refreshData("expand-right", $scope.fileData);
  564. }
  565. );
  566. } else {
  567. SweetAlert.swal({
  568. title: "操作异常!",
  569. text: "系统异常,请稍后重试,或者联系管理员!",
  570. type: "error",
  571. });
  572. }
  573. });
  574. }
  575. }
  576. });
  577. };
  578. $scope.selected = {
  579. items: [],
  580. };
  581. $scope.editted = {
  582. items: [],
  583. };
  584. $scope.gridOptions.onRegisterApi = function (gridApi) {
  585. $scope.gridApi = gridApi;
  586. gridApi.pagination.on.paginationChanged(
  587. $scope,
  588. function (newPage, pageSize) {
  589. var filtersData = $scope.memoryfilterData;
  590. filtersData.idx = newPage - 1;
  591. filtersData.sum = pageSize;
  592. $scope.fileData.idx = newPage - 1;
  593. $scope.fileData.sum = pageSize;
  594. defaultFilterData = filtersData;
  595. $scope.refreshData("expand-right", $scope.fileData);
  596. }
  597. );
  598. gridApi.selection.on.rowSelectionChanged($scope, function (scope) {
  599. scope.grid.appScope.selected.items = scope.entity;
  600. });
  601. };
  602. var defaultFilterData = {
  603. idx: 0,
  604. sum: 10,
  605. };
  606. $scope.memoryfilterData = {
  607. idx: 0,
  608. sum: 10,
  609. };
  610. $scope.fileData = {
  611. idx: 0,
  612. sum: 10,
  613. maintenance: {},
  614. };
  615. $scope.ldloading = {};
  616. $scope.listData = [];
  617. $scope.refreshData = function (style, filterData) {
  618. $scope.selected.items = {};
  619. $scope.ldloading[style.replace("-", "_")] = true;
  620. if (angular.isUndefined(filterData)) {
  621. filterData = defaultFilterData;
  622. }
  623. $scope.myData = [];
  624. $scope.selected = { items: [] };
  625. if ($scope.gridApi) {
  626. $scope.gridApi.grid.selection.selectedCount = 0;
  627. }
  628. api_user_data.fetchDataList("maintenance", filterData).then(
  629. function (data) {
  630. var myData = Restangular.stripRestangular(data);
  631. $scope.gridOptions.totalItems = myData.totalNum;
  632. $scope.myData = myData.list;
  633. for (var i = 0; i < $scope.myData.length; i++) {
  634. $scope.myData[i]["item"] = i + 1 + filterData.idx * filterData.sum;
  635. // var diffDay = moment($scope.myData[i].endTime).diff(moment(), 'days');
  636. // var diffHour = moment($scope.myData[i].endTime).diff(moment(), 'hours');
  637. // if(diffDay > 0 || (diffDay == 0 && diffHour > 0)){
  638. // $scope.myData[i]["countdown"] = diffDay;
  639. // }
  640. }
  641. $scope.ldloading[style.replace("-", "_")] = false;
  642. },
  643. function () {
  644. $scope.ldloading[style.replace("-", "_")] = false;
  645. }
  646. );
  647. };
  648. $scope.refreshData2 = function (style, filterData) {
  649. $scope.selected.items = {};
  650. $scope.ldloading[style.replace("-", "_")] = true;
  651. if (angular.isUndefined(filterData)) {
  652. filterData = defaultFilterData;
  653. }
  654. // $scope.myData = [];
  655. $scope.selected = { items: [] };
  656. if ($scope.gridApi) {
  657. $scope.gridApi.grid.selection.selectedCount = 0;
  658. }
  659. api_user_data.fetchDataList("maintenance", filterData).then(
  660. function (data) {
  661. var myData = Restangular.stripRestangular(data);
  662. $scope.gridOptions.totalItems = myData.totalNum;
  663. $scope.myData = myData.list;
  664. for (var i = 0; i < $scope.myData.length; i++) {
  665. $scope.myData[i]["item"] = i + 1 + filterData.idx * filterData.sum;
  666. // var diffDay = moment($scope.myData[i].endTime).diff(moment(), 'days');
  667. // var diffHour = moment($scope.myData[i].endTime).diff(moment(), 'hours');
  668. // if(diffDay > 0 || (diffDay == 0 && diffHour > 0)){
  669. // $scope.myData[i]["countdown"] = diffDay;
  670. // }
  671. }
  672. $scope.ldloading[style.replace("-", "_")] = false;
  673. },
  674. function () {
  675. $scope.ldloading[style.replace("-", "_")] = false;
  676. }
  677. );
  678. };
  679. // 搜索
  680. $scope.searchData = function () {
  681. $scope.refreshData("expand-right", $scope.fileData);
  682. };
  683. // 清空
  684. $scope.clean = function () {
  685. delete $scope.fileData.branch.dept;
  686. delete $scope.fileData.branch.address;
  687. delete $scope.fileData.branch.phone;
  688. delete $scope.fileData.branch.parent;
  689. delete $scope.fileData.branch.area;
  690. delete $scope.fileData.branch.place;
  691. $scope.refreshData("expand-right", $scope.fileData);
  692. };
  693. // 获取单位下拉
  694. $scope.model = {};
  695. $scope.deptData = {};
  696. // $scope.getDeptData=function(){
  697. // var data={
  698. // "idx":0,
  699. // "sum":1000
  700. // }
  701. // api_user_data.fetchDataList('branch',data).then(function(res){
  702. // $scope.deptData=res.list;
  703. // // console.log($scope.deptData)
  704. // })
  705. // }
  706. // $scope.getDeptData();
  707. $scope.refreshData("expand-right", $scope.fileData);
  708. $scope.timer = $interval(function () {
  709. $scope.refreshData2("expand-right", $scope.fileData);
  710. }, $rootScope.refreshTime);
  711. $scope.$on("$destroy", function () {
  712. $interval.cancel($scope.timer);
  713. });
  714. },
  715. ]);