'use strict'; app.controller('hc_consumablesCtrl', ["$scope", "$http", "i18nService", "$rootScope", "$state", "$timeout", "moment", "$interval", "$modal", "$stateParams", "SweetAlert", "uiGridConstants", "uiGridGroupingConstants", "Restangular", "api_bpm_domain", "api_text", "api_bpm_data", "api_user_data", "api_cmdb", "api_cmdb2", "api_cmdb3", "api_cmdb4", "api_wechatfile", "api_sysinfo", function ($scope, $http, i18nService, $rootScope, $state, $timeout, moment, $interval, $modal, $stateParams, SweetAlert, uiGridConstants, uiGridGroupingConstants, Restangular, api_bpm_domain, api_text, api_bpm_data, api_user_data, api_cmdb, api_cmdb2, api_cmdb3, api_cmdb4, api_wechatfile, api_sysinfo) { $scope.ceshi = "耗材系统"; $scope.langs = i18nService.getAllLangs(); $scope.lang = 'zh-cn'; i18nService.setCurrentLang($scope.lang); $scope.myData = []; var loginUser = $rootScope.user; // $scope.searchData = function(){ // $scope.fileData.consumable["name"] = $scope.select_val.search_data.name; // $scope.refreshData('expand-right', $scope.fileData); // } // 修改供货公司 $scope.changeCompany = function(e){ console.log(e) $scope.companyIds = e; } //修改开始价格和结束价格 $scope.changePrice = function(val,type){ $scope[type] = val?Math.abs(parseFloat(val.toFixed(2), 10)):val; } // 监听编辑在库数量 $scope.$watch('hc_eject_inventoryNum', function (val, oldval) { var zhengze = /^\w{0,5}$/; if (!zhengze.exec(val)) { $scope.hc_eject_inventoryNum = oldval; } }); $scope.fileData = { "idx": 0, "sum": 10, "consumable": {} } // 清空表单 $scope.clearForm = function(){ $rootScope.hc_eject_name_caozuo = ''; $rootScope.hc_eject_brandModel_caozuo = ''; $rootScope.hc_eject_specification_caozuo = ''; $rootScope.hc_eject_companyIds_caozuo = []; $rootScope.hc_eject_startPrice_caozuo = ''; $rootScope.hc_eject_endPrice_caozuo = ''; $rootScope.hc_eject_isWarehousing_caozuo = 0; $rootScope.hc_eject_inventoryNum_caozuo = ''; $rootScope.hc_eject_inventorySum_caozuo = ''; delete $rootScope.hc_eject_id_caozuo; // ------------------- $scope.select_updata_name.updata_name = {name:''}; $scope.select_updata_pinpai.updata_pinpai = {name:''}; $scope.select_updata_guige.updata_guige = {name:''}; $scope.hc_eject_inventoryNum = ''; $scope.hc_eject_inventorySum = ''; $scope.isWarehousing = 0; $scope.startPrice = ''; $scope.endPrice = ''; $scope.companyIds = null; } //新增 $rootScope.isAdds = false;//是否是新增 $scope.addData = function () { $scope.clearForm(); $rootScope.isAdds = true; $rootScope.hc_eject_big = true; //编辑弹出框 $rootScope.hc_eject_sma = true; //编辑弹出框 // $rootScope.hc_toedit = "new_after"; } // 监听下拉框搜索 $scope.$watch('select_val.search_data', function (val) { // if (val == undefined) { // $scope.wt_data_display = true; // } else if (val.name == '全部') { // wt_data = { consumable: {} }; // $scope.wt_data_display = false; // if ($scope.fenye == undefined) { // $scope.fenye = 0 // }; // $scope.memoryfilterData = { // idx: $scope.fenye, // sum: 10 // } // //获取列表数据 // $scope.refreshData = function(style, filterData) { // // var data1={idx: 0, sum: 10}; // var pdKey = "consumable"; // $scope.myData = []; // api_cmdb3.fetchDataList(pdKey, filterData).then(function(data) { // // console.log(data.list); // if (data.list) { // var myData = Restangular.stripRestangular(data); // var list = []; // $scope.gridOptions['totalItems'] = myData.totalNum; // $scope.myData = myData.list; // for (var i = 0; i < $scope.myData.length; i++) { // $scope.myData[i]['item'] = i + 1 + filterData.idx * filterData.sum // } // } else { // SweetAlert.swal({ // title: "系统错误", // text: "请稍后再试!", // type: "error" // }); // } // $scope.ldloading[style.replace('-', '_')] = false; // }, function() { // $scope.ldloading[style.replace('-', '_')] = false; // }); // }; // $scope.refreshData('expand-right', $scope.memoryfilterData); // } else { // wt_data = { consumable: { "name": val.name } }; // $scope.wt_data_display = false; // if ($scope.fenye == undefined) { // $scope.fenye = 0 // }; // $scope.memoryfilterData = { // idx: $scope.fenye, // sum: 10, // consumable: { "name": val.name } // } // //获取列表数据 // $scope.refreshData = function(style, filterData) { // var pdKey = "consumable"; // $scope.myData = []; // // $scope.gridOptions['sum'] = filterData.sum; // api_cmdb3.fetchDataList(pdKey, filterData).then(function(data) { // // console.log(data.list); // if (data.list) { // var myData = Restangular.stripRestangular(data); // var list = []; // $scope.gridOptions['totalItems'] = myData.totalNum; // $scope.myData = myData.list; // for (var i = 0; i < $scope.myData.length; i++) { // $scope.myData[i]['item'] = i + 1 + filterData.idx * filterData.sum // } // } else { // SweetAlert.swal({ // title: "系统错误", // text: "请稍后再试!", // type: "error" // }); // } // $scope.ldloading[style.replace('-', '_')] = false; // }, function() { // $scope.ldloading[style.replace('-', '_')] = false; // }); // }; // $scope.refreshData('expand-right', $scope.memoryfilterData); // } if (val) { $scope.fileData.consumable["keyWord"] = val.name; $scope.refreshData('expand-right', $scope.fileData); } }) $scope.new_data = function () { $scope.myData = []; $scope.refreshData('expand-right', $scope.memoryfilterData); } var pdKey = $state.current.pdKey; $rootScope.hc_eject_big = false; //编辑弹出框 $rootScope.hc_eject_sma = false; //编辑弹出框 // $rootScope.hc_toedit = "new_top"; // 关闭编辑弹出框 $scope.close = function () { $rootScope.hc_eject_name_caozuo = ''; $rootScope.hc_eject_brandModel_caozuo = ''; $rootScope.hc_eject_specification_caozuo = ''; $rootScope.hc_eject_companyIds_caozuo = []; $rootScope.hc_eject_startPrice_caozuo = ''; $rootScope.hc_eject_endPrice_caozuo = ''; $rootScope.hc_eject_isWarehousing_caozuo = 0; $rootScope.hc_eject_inventoryNum_caozuo = ''; $rootScope.hc_eject_inventorySum_caozuo = ''; delete $rootScope.hc_eject_id_caozuo; // ---------------------------------- $rootScope.hc_eject_big = false; //编辑弹出框 $rootScope.hc_eject_sma = false; //编辑弹出框 // $rootScope.hc_toedit = "new_top"; $scope.select_updata_name = {}; //编辑下拉框名称 $scope.select_updata_guige = {}; //编辑下拉框规格 $scope.select_updata_pinpai = {}; //编辑下拉框品牌 } $scope.select_updata_name = {}; //编辑下拉框名称 $scope.select_updata_guige = {}; //编辑下拉框规格 $scope.select_updata_pinpai = {}; //编辑下拉框品牌 // 名称 $scope.$watch('hc_eject_name_caozuo', function (val) { if (val != undefined) { console.log(val); // $scope.hc_eject_name = val; var dat = { "key": "haocaifenlei", "type": "tree" } api_wechatfile.getDictionary(dat).then(function (data) { data = data || []; $scope.select_updata_name.updata_name = data.find(v=>v.name == val); }); } }) // $scope.hc_eject_title = '';//耗材名称 // 下拉框名称 $scope.$watch('select_updata_name.updata_name', function (val) { // console.log(val); val = val || {name:''}; if (!val.name) { } else { // $scope.hc_eject_name = val.name; // // 耗材查询品牌 // $scope.refreshDat_pinpai = function() { // var dat = { // "key": "pinpai", // parent: val.id // } // api_cmdb4.fetchDataList(dat).then(function(data) { // $scope.updata_pinpai = data; // }); // } // $scope.refreshDat_pinpai(); // // 耗材查询规格 // $scope.refreshDat_guige = function() { // var dat = { // "key": "guige", // parent: val.id // } // api_cmdb4.fetchDataList(dat).then(function(data) { // $scope.updata_guige = data; // }); // } // $scope.refreshDat_guige(); $scope.hc_eject_name = val.name; // $scope.hc_eject_title = val.name; // 耗材查询品牌 $scope.refreshDat_pinpai = function () { var dat = { "dictionaryTree": { "key": "pinpai", parent: val.id }, "idx": 0, "sum": 999 } api_sysinfo.fetchDataList("dictionaryTree", dat).then(function (data) { if (data.status == 200) { $scope.updata_pinpai = data.list; var flag = data.list.find(v=>v.name == $scope.select_updata_pinpai.updata_pinpai.name); if(!flag){ $scope.select_updata_pinpai.updata_pinpai.name = ''; $scope.hc_eject_brandModel = ''; } } }); } $scope.refreshDat_pinpai(); // 耗材查询规格 $scope.refreshDat_guige = function () { // var dat = { // "key": "guige", // parent: val.id, // "type":"tree" // } // api_wechatfile.getDictionary(dat).then(function(data) { // $scope.updata_guige = data; // }); var dat = { "dictionaryTree": { "key": "guige", parent: val.id }, "idx": 0, "sum": 999 } api_sysinfo.fetchDataList("dictionaryTree", dat).then(function (data) { if (data.status == 200) { $scope.updata_guige = data.list; var flag = data.list.find(v=>v.name == $scope.select_updata_guige.updata_guige.name); if(!flag){ $scope.select_updata_guige.updata_guige.name = ''; $scope.hc_eject_specification = ''; } } }); } $scope.refreshDat_guige(); } }) $scope.selected = { items: [] } //删除 $scope.removeData = function () { var modalInstance = $modal.open({ templateUrl: 'assets/views/delete.html', controller: function ($scope, scope, $modalInstance, api_bpm_data) { var rmvList = []; $scope.title = '耗材删除'; $scope.connect = '确定要删除此耗材?'; angular.forEach(scope.selected.items, function (item) { rmvList.push(item.id); }); $scope.ok = function () { $modalInstance.close(rmvList); }; $scope.cancel = function () { $modalInstance.dismiss('cancel'); }; }, size: 'sm', resolve: { scope: function () { return $scope; } } }); modalInstance.result.then(function (selectedItem) { if (selectedItem) { if (selectedItem.length > 0) { api_user_data.rmvData('consumable', selectedItem).then(function (response) { if (response.data) { SweetAlert.swal({ title: "删除成功!", type: "success", confirmButtonColor: "#007AFF" }, function () { $scope.myData = _.reject($scope.myData, function (o) { return _.includes(selectedItem, o.id); }); $scope.selected = { items: [] }; $scope.gridOptions.totalItems = $scope.gridOptions.totalItems - selectedItem.length; $scope.gridApi.grid.selection.selectedCount = 0; $scope.refreshData('expand-right', $scope.fileData); }); } else { SweetAlert.swal({ title: "操作异常!", text: "系统异常,请稍后重试,或者联系管理员!", type: "error" }); } }) } } }) } // 第三方公司查询 $scope.refreshDat_company = function (name,companyIds=[]) { $scope.updata_company = []; name = name || ""; companyIds = companyIds || []; var dat = { "company": { serviceTypeIds:"1709", name:name }, "idx": 0, "sum": 999 } api_sysinfo.fetchDataList("company", dat).then(function (data) { if (data.status == 200) { if(companyIds.length){ companyIds.forEach(v=>{ data.list.forEach((v1,i)=>{ if(v.id == v1.id){ data.list.splice(i,1) } }) }) } $scope.updata_company = data.list; } }); } $scope.refreshDat_company(); // 规格 $scope.$watch('hc_eject_specification_caozuo', function (val) { // $scope.hc_eject_specification = val; $scope.select_updata_guige.updata_guige = {name:val} }) // 下拉框规格 $scope.$watch('select_updata_guige.updata_guige', function (val) { // console.log(val); if (val == undefined) { } else { $scope.hc_eject_specification = val.name; } }) // 品牌 $scope.$watch('hc_eject_brandModel_caozuo', function (val) { // $scope.hc_eject_brandModel = val; $scope.select_updata_pinpai.updata_pinpai = {name:val} }) // 下拉框品牌 $scope.$watch('select_updata_pinpai.updata_pinpai', function (val) { console.log(val); if (val == undefined) { } else { $scope.hc_eject_brandModel = val.name; } }) //供货公司hc_eject_companyIds_caozuo $scope.$watch('hc_eject_companyIds_caozuo', function (ids) { ids = ids || []; var dat = { "company": { serviceTypeIds:"1709", }, "idx": 0, "sum": 999 } api_sysinfo.fetchDataList("company", dat).then(function (data) { if (data.status == 200) { var arr = []; data.list.forEach(v=>{ ids.forEach(v1=>{ if(v.id == v1){ arr.push(v); } }) }) $scope.companyIds = arr; } }); }) // 费用区间开始hc_eject_startPrice_caozuo $scope.$watch('hc_eject_startPrice_caozuo', function (val) { $scope.startPrice = val; }) // 费用区间开始hc_eject_endPrice_caozuo $scope.$watch('hc_eject_endPrice_caozuo', function (val) { $scope.endPrice = val; }) // 是否库存hc_eject_isWarehousing_caozuo $scope.$watch('hc_eject_isWarehousing_caozuo', function (val) { $scope.isWarehousing = val; }) // 在库数量 $scope.$watch('hc_eject_inventoryNum_caozuo', function (val) { $scope.hc_eject_inventoryNum = val; }) // 入库数量 $scope.$watch('hc_eject_inventorySum_caozuo', function (val) { $scope.hc_eject_inventorySum = val; }) $scope.reset = function () { $scope.select_val = {}; $scope.fileData.consumable = {}; $scope.refreshData('expand-right', $scope.fileData); } // 是否库存 $scope.changeWarehousing = function(type){ $scope.isWarehousing = type; } // 编辑保存按钮 $scope.companyIds = null; $scope.startPrice = ''; $scope.endPrice = ''; $scope.isWarehousing = 0; $scope.hc_eject_inventorySum = ''; $scope.updata_company = []; $scope.preservation = function () { if (!$scope.select_updata_name.updata_name.name ||!$scope.select_updata_pinpai.updata_pinpai.name ||!$scope.select_updata_guige.updata_guige.name ||!$scope.companyIds ||(!$scope.startPrice&&$scope.startPrice!==0) ||(!$scope.endPrice&&$scope.endPrice!==0) ||($scope.isWarehousing == 1&&($scope.hc_eject_inventorySum===null||$scope.hc_eject_inventoryNum===null)) ) { SweetAlert.swal({ title: "保存失败", text: "必填数据不能为空!", type: "error" }); } else { var pdKey = "consumable"; var edit_data = { "consumable": { "name": $scope.select_updata_name.updata_name.name, "brandModel": $scope.select_updata_pinpai.updata_pinpai.name, "specification": $scope.select_updata_guige.updata_guige.name, isInventory:$scope.isWarehousing, startPrice:$scope.startPrice, endPrice:$scope.endPrice, companyIds:$scope.companyIds.map(v=>v.id).toString() } }; if($scope.isWarehousing == 1){ edit_data.consumable.inventoryNum = $scope.hc_eject_inventoryNum; edit_data.consumable.inventorySum = $scope.hc_eject_inventorySum; } if($rootScope.isAdds){ edit_data.consumable.inOutInventory = 1;//入库1,出库2 }else{ edit_data.consumable.id = $rootScope.hc_eject_id_caozuo; } api_cmdb3[$rootScope.isAdds?'addData':'preservation'](pdKey, edit_data).then(function (data) { if (data.status == 200) { // $scope.refreshData = function(style, filterData) { // var pdKey = "consumable"; // $scope.myData = []; // $scope.gridOptions['sum'] = filterData.sum; // api_cmdb3.fetchDataList(pdKey, filterData).then(function(data) { // // console.log(data.list); // if (data.list) { // var myData = Restangular.stripRestangular(data); // var list = []; // $scope.gridOptions['totalItems'] = myData.totalNum; // $scope.myData = myData.list; // for (var i = 0; i < $scope.myData.length; i++) { // $scope.myData[i]['item'] = i + 1 + filterData.idx * filterData.sum // } // } else { // SweetAlert.swal({ // title: "系统错误", // text: "请稍后再试!", // type: "error" // }); // } // $scope.ldloading[style.replace('-', '_')] = false; // }, function() { // $scope.ldloading[style.replace('-', '_')] = false; // }); // }; $scope.refreshData('expand-right', $scope.fileData); SweetAlert.swal({ title: ($rootScope.isAdds?'新增':'修改')+"成功", confirmButtonColor: "#007AFF", type: "success" }); $rootScope.hc_eject_big = false; //编辑弹出框 $rootScope.hc_eject_sma = false; //编辑弹出框 // $rootScope.hc_toedit = "new_top"; } }) } } $scope.gridOptions = {}; $scope.gridOptions.data = 'myData'; $scope.gridOptions.enableColumnResizing = true; $scope.gridOptions.enableFiltering = false; $scope.gridOptions.enableGridMenu = true; $scope.gridOptions.enableSelectAll = true; $scope.gridOptions.enableRowSelection = true; $scope.gridOptions.showGridFooter = true; $scope.gridOptions.showColumnFooter = false; $scope.gridOptions.fastWatch = true; $scope.gridOptions.enableSorting = true; $scope.gridOptions.useExternalSorting = true; $scope.gridOptions.useExternalFiltering = false; $scope.gridOptions.useExternalPagination = true; $scope.gridOptions.paginationPageSizes = [10, 20, 50, 100]; $scope.gridOptions.paginationPageSize = 10; $scope.gridOptions.multiSelect = true; var mun = $scope.gridOptions.paginationPageSize; $scope.gridOptions.rowTemplate = "
"; $scope.gridOptions.rowIdentity = function (row) { return row.id; }; $scope.gridOptions.getRowIdentity = function (row) { return row.id; }; $scope.transferColor = function (item) { var color = "icon iconfont icon-zhengchang greenfont"; if (item.colourInfo) { if (item.colourInfo.id == 1) { color = "icon iconfont icon-yiyuqi redfont"; } else if (item.colourInfo.id == 2) { color = "iconfont icon-yuqixinxiu yellofont"; } } else { // color = "white"; } return color; } $scope.transfertip = function (item) { var tip = "正常"; if (item.colourInfo) { if (item.colourInfo.id == 1) { tip = "逾期"; } else if (item.colourInfo.id == 2) { tip = "即将逾期"; } } else { // color = "white"; } return tip; } $scope.transferstatus = function (item) { var statecolor = "#fc4c58"; if (item.id == 2) { //待处理 statecolor = "#fc4c58"; } else if (item.id == 7) { //待审核 statecolor = "#fcb44c"; } else if (item.id == 3) { //请求重新指派 statecolor = "#ebf902"; } else if (item.id == 4) { //处理中 statecolor = "#0aa5f5"; } else if (item.id == 5) { //已解决 statecolor = "#2edbb8"; } else if (item.id == 6) { //已关闭 statecolor = "#bbbbbb"; } return statecolor; } // 双击查看 $scope.onDblClick = function (row) { $state.go('app.means.consumables_see', { idd: row.entity.id }) } $scope.gridOptions.columnDefs = [{ name: 'item', displayName: '序号', width: 49, cellTemplate: '
' + '
{{row.entity.item}}
' + '
' }, { name: 'pdCode', displayName: 'SPDCODE', width: '14%', }, { name: 'name', displayName: '耗材名称', width: '14%', cellTemplate: '
' + '
{{row.entity.name}}
' + '
' }, { name: 'brandModel', displayName: '品牌型号', width: '14%', cellTemplate: '
' + '
{{row.entity.brandModel}}
' + '
' }, { name: 'specification', displayName: '规格', width: '14%', cellTemplate: '
' + '
{{row.entity.specification}}
' + '
' }, { name: 'price', displayName: '费用区间', width: '12%', minWidth: '120', cellTemplate: '
' + '
{{row.entity.startPrice}} ~ {{row.entity.endPrice}}
' + '
' }, { name: 'companyIds', displayName: '供货公司', width: '14%', minWidth: '120', cellTemplate: '
' + '
{{row.entity.companyNames}}
' + '
' }, { name: 'isInventory', displayName: '是否库存', width: '14%', minWidth: '120', cellTemplate: '
' + '
{{row.entity.isInventory == 1 ? "是" : "否"}}
' + '
' }, { name: 'inventorySum', displayName: '入库总数量', width: '14%', minWidth: '120', cellTemplate: '
' + '
{{row.entity.inventorySum}}
' + '
' }, { name: 'inventoryNum', displayName: '在库数量', width: '12%', minWidth: '120', cellTemplate: '
' + '
{{row.entity.inventoryNum}}
' + '
' }, { name: 'updateTime', displayName: '最后更新时间', width: '14%', minWidth: '160', cellTemplate: '
' + '
{{grid.appScope.transferTime(row.entity.updateTime)}}
' + '
' }, { name: '操作', enableSorting: false, minWidth: 120, cellTemplate: '', enableFiltering: false }, ]; $scope.value = 10; $scope.decrement = function () { $scope.value = $scope.value - 1; }; $scope.transferTime = function (time) { return moment(time).format('YYYY-MM-DD HH:mm'); } $scope.record = function () { api_text.record($rootScope.takes).then(function (data) { if (data.errno == 0) { $scope.busy = false; } }) }; $scope.parameters = null; $scope.open = function ($event) { $event.preventDefault(); $event.stopPropagation(); $scope.opened = !$scope.opened; }; $scope.endOpen = function ($event) { $event.preventDefault(); $event.stopPropagation(); $scope.startOpened = false; $scope.endOpened = !$scope.endOpened; }; $scope.startOpen = function ($event) { $event.preventDefault(); $event.stopPropagation(); $scope.endOpened = false; $scope.startOpened = !$scope.startOpened; }; $scope.othcode = {}; var items = []; $scope.selected = { items: [] }; $scope.select_val = {}; //下拉框查询 //列表排序 $scope.gridOptions.onRegisterApi = function (gridApi) { $scope.gridApi = gridApi; var index = 0; var oldheader = {}; gridApi.grid.sortColumn = function (gridApi) { if (oldheader.field) { if (oldheader.field == gridApi.field) { // index = 0; } else { index = 0; } } index++; oldheader = gridApi; var fildata = $scope.memoryfilterData; if (index % 3 == 0) { delete $scope.memoryfilterData.incident; fildata = $scope.memoryfilterData; } else if (index % 3 == 1) { if (fildata.incident) { if (gridApi.field == "acceptDate") { angular.extend(fildata.incident, { "sort": gridApi.field }); } else { angular.extend(fildata.incident, { "sort": gridApi.field + " desc , _incident.acceptDate" }); } } else { if (gridApi.field == "acceptDate") { angular.extend(fildata, { 'incident': { "sort": gridApi.field } }); } else { angular.extend(fildata, { 'incident': { "sort": gridApi.field + " desc , _incident.acceptDate" } }); } } } else if (index % 3 == 2) { if (fildata.incident) { if (gridApi.field == "acceptDate") { angular.extend(fildata.incident, { "sort": gridApi.field, "order": "asc" }); } else { angular.extend(fildata.incident, { "sort": gridApi.field + " asc , _incident.acceptDate" }); } } else { if (gridApi.field == "acceptDate") { angular.extend(fildata, { 'incident': { "sort": gridApi.field, "order": "asc" } }); } else { angular.extend(fildata.incident, { "sort": gridApi.field + " asc , _incident.acceptDate" }); } } } $scope.refreshData('expand-right', $scope.fileData); } gridApi.pagination.on.paginationChanged($scope, function (newPage, pageSize) { $scope.fenye = newPage - 1; $scope.fileData.idx = newPage - 1; $scope.fileData.sum = pageSize; $scope.refreshData('expand-right', $scope.fileData); }); gridApi.core.on.filterChanged($scope, function () { var grid = this.grid; if ($rootScope.user.group) { var filtersData = { idx: 0, sum: mun }; } else { var filtersData = { idx: 0, sum: mun }; } angular.forEach(grid.columns, function (item) { if (item.enableFiltering) { if (angular.isDefined(item.filters[0].term) && item.filters[0].term != '') { filtersData = $scope.memoryfilterData if (angular.isUndefined(filtersData['incident'])) { filtersData['incident'] = {}; } if (item.field == 'requester.name') { filtersData['incident']['requester'] = {}; filtersData.incident.requester['accountName'] = item.filters[0].term; } else if (item.field == 'handlingPersonnelUser.name') { filtersData['incident']['handlingPersonnelUser'] = {}; filtersData.incident.handlingPersonnelUser['name'] = item.filters[0].term; } else if (item.field == 'requester.account') { filtersData['incident']['requester'] = {}; filtersData.incident.requester['account'] = item.filters[0].term; } else if (item.field == 'acceptUser.name') { filtersData['incident']['acceptUser'] = {}; filtersData.incident.acceptUser['name'] = item.filters[0].term; } else { filtersData['incident'][item.field] = item.filters[0].term; } } } }); filtersData.idx = 0; $scope.memoryfilterData = filtersData; $scope.refreshData('expand-right', $scope.fileData); }); gridApi.selection.on.rowSelectionChanged($scope, function (scope) { var j = 0; for (var i = 0; i <= scope.grid.appScope.selected.items.length; i++) { if (scope.grid.appScope.selected.items[i] == scope.entity) { j++; break; } } // console.log("j="+j) if (j == 1) { scope.grid.appScope.selected.items.splice(i, 1); } else { scope.grid.appScope.selected.items.push(scope.entity) } }); }; var items = []; //当前人是否分组 // if ($rootScope.user.group) { // if ($rootScope.user.group.length == 0) { // SweetAlert.swal("访问失败!", "当前登录人未分配工作组,无权限访问,请添加工作组后重试。", "error"); // } else { // $scope.memoryfilterData = defaultFilterData = { // "idx": 0, // "sum": mun // }; // } // } else { // $scope.memoryfilterData = defaultFilterData = { // "idx": 0, // "sum": mun // }; // } var wt_data = {}; //导出 $scope.hc_export = function () { if ($scope.wt_data_display == true) { SweetAlert.swal({ title: "导出失败", text: "请选择分类!", type: "error" }); } else { var filadata = angular.copy($scope.memoryfilterData); filadata.sum = 10000; var wt_url = api_cmdb3.exportData("downDataModel/consumable/1", wt_data).getRequestedUrl() $http({ url: wt_url, method: 'POST', data: JSON.stringify(wt_data), headers: { 'Accept': '*/*' }, responseType: 'arraybuffer' }).success(function (data, status, headers, config) { // $scope.ldloading.zoom_in = false; var file = new Blob([data], { type: 'application/vnd.ms-excel' }); var fileURL = URL.createObjectURL(file); var a = document.createElement('a'); a.href = fileURL; a.target = '_blank'; a.download = '耗材列表.xls'; document.body.appendChild(a); a.click(); }).error(function (data, status, headers, config) { // $scope.ldloading.zoom_in = false; console.log(data); }); } }; if ($stateParams.model) { if (JSON.parse($stateParams.model).searchType && JSON.parse($stateParams.model).searchType != null) { $scope.searchTypes = JSON.parse($stateParams.model).searchType; } else { $scope.searchTypes = "todo"; } } else { $scope.searchTypes = "todo"; } if ($rootScope.user.group) { var defaultFilterData = { "idx": 0, "sum": mun }; } else { var defaultFilterData = { "idx": 0, "sum": mun }; } if (angular.isDefined($rootScope.search) && angular.isDefined($rootScope.search.incident)) { defaultFilterData['searchType'] = $rootScope.search.incident; $scope.searchTypes = $rootScope.search.incident; } if ($rootScope['cmdbs'] != 'incident') { $rootScope.idx = 1 } if (angular.isDefined($rootScope.idx) && $rootScope.cmdbs != "false") { $rootScope['cmdbs'] = 'incident'; defaultFilterData.idx = $rootScope.idx - 1; } else { $rootScope.cmdbs = ""; } $scope.ldloading = {}; //获取列表数据 var pdKey = "consumable"; $scope.refreshData = function (style, filterData) { // var pdKey = "consumable"; $scope.myData = []; $scope.gridOptions['sum'] = filterData.sum; api_cmdb3.fetchDataList(pdKey, filterData).then(function (data) { // console.log(data.list); if (data.list) { var myData = Restangular.stripRestangular(data); $scope.gridOptions['totalItems'] = myData.totalNum; for (var i = 0; i < myData.list.length; i++) { myData.list[i]['item'] = i + 1 + filterData.idx * filterData.sum; } // ------------------ var dat = { "company": { serviceTypeIds:"1709", }, "idx": 0, "sum": 999 } api_sysinfo.fetchDataList("company", dat).then(function (data) { if (data.status == 200) { // data.list $scope.myData = myData.list; myData.list.map(v=>{ var ids = v.companyIds?v.companyIds.split(','):[]; var strArr = []; ids.forEach(v1=>{ data.list.forEach(v2=>{ if(v1 == v2.id){ strArr.push(v2.name); } }) }) v.companyNames = strArr.toString(); return v; }) } }); } else { SweetAlert.swal({ title: "系统错误", text: "请稍后再试!", type: "error" }); } $scope.ldloading[style.replace('-', '_')] = false; }, function () { $scope.ldloading[style.replace('-', '_')] = false; }); }; $scope.refreshData2 = function (style, filterData) { // var pdKey = "consumable"; // $scope.myData = []; $scope.gridOptions['sum'] = filterData.sum; api_cmdb3.fetchDataList(pdKey, filterData).then(function (data) { // console.log(data.list); if (data.list) { var myData = Restangular.stripRestangular(data); var list = []; $scope.gridOptions['totalItems'] = myData.totalNum; $scope.myData = myData.list; for (var i = 0; i < $scope.myData.length; i++) { $scope.myData[i]['item'] = i + 1 + filterData.idx * filterData.sum; } } else { SweetAlert.swal({ title: "系统错误", text: "请稍后再试!", type: "error" }); } $scope.ldloading[style.replace('-', '_')] = false; }, function () { $scope.ldloading[style.replace('-', '_')] = false; }); }; // 耗材查询分类 $scope.refreshDat_name = function () { // var dat = { // "key": "haocaifenlei", // } // api_cmdb4.fetchDataList(dat).then(function(data) { // $scope.search_data = data; // $scope.search_data.unshift({ 'name': '全部' }); // }); var dat = { "key": "haocaifenlei", "type": "tree" } api_wechatfile.getDictionary(dat).then(function (data) { $scope.search_data = data; // $scope.search_data.unshift({ 'name': '全部' }); }); }; // 耗材查询分类修改 $scope.refreshDat_name_updata = function () { var dat = { "key": "haocaifenlei", "type": "tree" } api_wechatfile.getDictionary(dat).then(function (data) { $scope.updata_name = data; }); }; $scope.refreshDat_name(); $scope.refreshDat_name_updata(); // $scope.refreshDat_pinpai(); // $scope.refreshDat_guige(); $scope.refreshData('expand-right', $scope.fileData); $scope.timer = $interval(function () { $scope.refreshData2('expand-right', $scope.fileData); }, $rootScope.refreshTime); $scope.$on('$destroy', function () { $interval.cancel($scope.timer) }); }]); //操作按钮权限控制 app.controller('hc_caozuoCtrl', ['$rootScope', '$http', '$scope', '$modal', '$state', function ($rootScope, $http, $scope, $modal, $state) { // 编辑按钮 $scope.edit = function () { // -------------------------------- console.log($scope.item) $rootScope.isAdds = false; $rootScope.hc_eject_big = true; //编辑弹出框 $rootScope.hc_eject_sma = true; //编辑弹出框 // $rootScope.hc_toedit = "new_after"; $rootScope.hc_eject_name_caozuo = $scope.item.name; //耗材名称 $rootScope.hc_eject_brandModel_caozuo = $scope.item.brandModel; //耗材品牌型号 $rootScope.hc_eject_specification_caozuo = $scope.item.specification; //耗材规格 $rootScope.hc_eject_companyIds_caozuo = $scope.item.companyIds.split(','); //供货公司 $rootScope.hc_eject_startPrice_caozuo = $scope.item.startPrice; //费用区间开始 $rootScope.hc_eject_endPrice_caozuo = $scope.item.endPrice; //费用区间结束 $rootScope.hc_eject_isWarehousing_caozuo = $scope.item.isInventory || 0; //是否库存 $rootScope.hc_eject_inventoryNum_caozuo = $scope.item.inventoryNum; //耗材在库数量 $rootScope.hc_eject_inventorySum_caozuo = $scope.item.inventorySum; //耗材入库数量 $rootScope.hc_eject_id_caozuo = $scope.item.id; //耗材id }; //查看按钮 $scope.see = function () { // console.log($scope.item.id); // idd=$scope.item.id; $state.go('app.means.consumables_see', { idd: $scope.item.id }) } }]); //操作 app.directive('wtt', function () { return { restrict: 'E', scope: { item: '=', colobject: '=' }, controller: 'hc_caozuoCtrl', template: '
' + '查看' + '编辑' + '
' }; });