app.controller('userConsumeCtrl', ['$scope', '$filter', '$http', '$stateParams', '$timeout', 'uiGridConstants', 'i18nService', 'toaster', function ($scope, $filter, $http, $stateParams, $timeout, uiGridConstants, i18nService, toaster,) { i18nService.setCurrentLang("zh-cn"); $scope.gridOptions = { data: 'myData', showGridFooter: true, //是否显示grid footer // rowHeight: 80, //-------- 分页属性 ---------------- paginationPageSizes: [10, 20, 50, 100], //每页显示个数可选项 paginationCurrentPage: 1, //当前页码 paginationPageSize: 10, //每页显示个数 totalItems: 0,// 总数量 useExternalPagination: true,//是否使用分页按钮 //过滤 // enableFiltering: true, columnDefs: [], //---------------api--------------------- onRegisterApi: function (gridApi) { $scope.gridApi = gridApi; gridApi.pagination.on.paginationChanged($scope, function (newPage, pageSize) { if ($scope.setPagingData) { $scope.getPagedDataAsync(newPage, pageSize, true);//翻页是强制刷新 } }); } }; function getOneRow() { var rows = $scope.gridApi.selection.getSelectedRows(); if (rows.length === 0) { toaster.pop("info", "提示", "请选择数据!"); return false; } if (rows.length > 1) { toaster.pop("info", "提示", "只能选中编辑一条数据"); return false; } return rows[0] } //枚举常量 $scope.enum = {}; var searchType = $scope.enum.searchType = [ {value: 'wxOrderNo', label: "按订单编号查询充值订单", desc: '输入订单编号'}, {value: 'orderNo', label: "按交易编号查询充值订单", desc: '输入交易编号'}, {value: 'consumeOrderNo', label: "按消费编号查询消费订单", desc: '输入消费订单'}, {value: 'logicalCodeRecharge', label: "按设备编号查询充值订单", desc: '输入设备编号'}, {value: 'logicalCodeConsume', label: "按设备编号查询消费订单", desc: '输入设备编号'}, ]; //查询条件 var condition = $scope.condition = { searchType: searchType[0], searchKey: '', }; //事件 $scope.event = { statusChange: function (key, item) { condition[key] = {} condition[key].value = item.value; condition[key].label = item.label; condition[key].desc = item.desc; }, search: function () { // 就在当前 厂商|代理商|经销商的域下进行搜索 if (condition.searchKey === "") { $.confirm({ content: '条件为空,数据量较大,确定继续?', buttons: { ok: { text: '搜索', action: function () { $scope.getPagedDataAsync(1, $scope.gridOptions.paginationPageSize, true); } }, } }); } else { $scope.getPagedDataAsync(1, $scope.gridOptions.paginationPageSize); } }, refundCash: function () { var entity = getOneRow(); if (!entity) { return } $.confirm({ content: `输入退费金额:`, buttons: { ok: { btnClass: 'btn-red', action: function () { var refundMoney = $('#refundMoney').val() if(!refundMoney){ return false } $http({ method: 'POST', url: '/superadmin/refundCashFromRecharge', data: {money: refundMoney, orderNo: entity.orderNo} }).then(function (response) { if (response.data.result) { toaster.pop("success", "提示", "退费成功!"); } else { toaster.pop("error", "提示", "退费失败!"); } }, function (response) { toaster.pop("error", "提示", "操作失败!"); }); } }, } }); }, }; function setColumnDefs() { $scope.gridOptions.columnDefs = [ { field: 'wxOrderNo', displayName: '订单编号', cellTemplate: '
{{row.entity.wxOrderNo}}
' }, { field: 'orderNo', displayName: '交易编号', cellTemplate: '
{{row.entity.orderNo}}
' }, { field: 'orderResult', displayName: '订单状态', }, {field: 'rechargeUser', displayName: '充值客户',}, {field: 'rechargeType', displayName: '充值类型',}, {field: 'money', displayName: '支付金额',}, {field: 'coins', displayName: '购买金币',}, { field: 'orderDetail', displayName: '订单明细', cellTemplate: '
{{row.entity.orderDetail}}
' }, {field: 'orderCreateTime', displayName: '订单创建时间',}, {field: 'logicalCode', displayName: '设备编号',}, {field: 'devNo', displayName: '设备IMEI',}, {field: 'devTypeCode', displayName: '设备类型',}, {field: 'consumeOrderNo', displayName: '消费订单编号',}, {field: 'consumeUser', displayName: '消费客户',}, {field: 'consumeCoins', displayName: '消费金币',}, {field: 'consumeResult', displayName: '消费订单状态',}, {field: 'failedReason', displayName: '消费失败原因',}, {field: 'consumeOrderCreateTime', displayName: '消费订单创建时间',}, { field: 'consumeDetail', displayName: '消费明细', cellTemplate: '
{{row.entity.consumeDetail}}
' }, { field: 'consumeDict', displayName: '消费详情', cellTemplate: '
{{row.entity.consumeDict}}
' }, ]; var fields = $scope.gridOptions.columnDefs; for (var index in fields) { var item = fields[index]; if (item && item['minWidth'] == null) { item['minWidth'] = 100; } } } $scope.setPagingData = function (data) { var pagedData = data.data.dataList; $scope.myData = pagedData; $scope.gridOptions.totalItems = data.data.total; }; $scope.getPagedDataAsync = function (curPage, pageSize, force) { if ($scope.gridOptionsLoading) { return; } var params = { pageSize: pageSize, pageIndex: curPage, }; if (condition.searchType.value !== '') { params.searchType = condition.searchType.value } if (condition.searchKey !== "") { params.searchKey = condition.searchKey } // 如果没有条件,则不查询,因为数据量太大,加载太卡! if (force) { // nothing } else if (!params.searchKey) { toaster.pop("info", "温馨提示", "请输入查询条件进行查询"); return } $scope.gridOptionsLoading = true; $http.get('/superadmin/getOrderDetailList', { params: params }).then(function (data) { data = data.data $scope.gridOptionsLoading = false; $scope.setPagingData(data, curPage, pageSize); }).catch(function (data) { toaster.pop("error", "提示", "获取数据列表失败"); }); }; function initDataGrid() { //首次加载表格 $scope.getPagedDataAsync($scope.gridOptions.paginationCurrentPage, $scope.gridOptions.paginationPageSize); } setColumnDefs(); initDataGrid(); $scope.showInfoDetailInfo = function (title, key, content) { var detail = content[key] $scope.infoDetail = {title: title, content: detail}; $(".devManageMain #detailInfoPanel").modal(); }; $scope.closeDetailPanel = function () { $(".devManageMain #detailInfoPanel").modal("hide"); }; }]);