Commit 714d59a2 authored by renjie's avatar renjie

Merge branch 'dev-zrj' into 'staging'

admin增加花费统计

See merge request !124
parents f8c68a35 db2924cc
......@@ -171,6 +171,7 @@ public class AdministratorController {
return userPrePaidBillingService.findUserBillingByUnpaid(username, BillStatus.UNPAID);
}
//--------------------------------系统--------------------------------------//
//查询某时段内用户的账单,tested
@PreAuthorize("hasRole('ADMIN')")
......@@ -195,6 +196,14 @@ public class AdministratorController {
return administratorService.searchCreateAccountBetween(pageable,strDate1,strDate2,isAuthorized);
}
// 查询所有用户消费
@PreAuthorize(Securitys.ADMIN_EL)
@RequestMapping(path = "/0xadministrator/allused", method = RequestMethod.GET)
public Page<UserBalance> findAllused(@RequestParam(value="page")int page , @RequestParam(value="size")int size) {
Pageable pageable = PageRequest.of(page, size);
return administratorService.getAllUserUsed(pageable);
}
//search company earnings detail by month tested
@PreAuthorize("hasRole('ADMIN')")
@RequestMapping(path ="/0xadministrator/companyearning/{stringdate}",method = RequestMethod.GET)
......
package com.edgec.browserbackend.account.repository;
import com.edgec.browserbackend.account.domain.UserBalance;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface UserBalanceRepository extends MongoRepository<UserBalance, String>, UserBalanceRepositoryCustom {
}
package com.edgec.browserbackend.account.repository;
import com.edgec.browserbackend.account.domain.UserBalance;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
public interface UserBalanceRepositoryCustom {
void incrementBalance(UserBalance balance, float balancedIcrement, float usedIncrement);
Page<UserBalance> findAllOrderByUsedDesc(Pageable pageable);
}
......@@ -3,10 +3,16 @@ package com.edgec.browserbackend.account.repository;
import com.edgec.browserbackend.account.domain.UserBalance;
import org.bson.Document;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.BasicQuery;
import org.springframework.data.mongodb.core.query.Update;
import java.util.List;
import static org.springframework.data.mongodb.core.query.Criteria.where;
public class UserBalanceRepositoryCustomImpl implements UserBalanceRepositoryCustom {
......@@ -24,4 +30,14 @@ public class UserBalanceRepositoryCustomImpl implements UserBalanceRepositoryCus
mongoTemplate.updateFirst(basicQuery, update, UserBalance.class);
}
@Override
public Page<UserBalance> findAllOrderByUsedDesc(Pageable pageable) {
Document doc = new Document();
BasicQuery basicQuery = new BasicQuery(doc);
basicQuery.with(Sort.by(Sort.Direction.DESC, "used"));
List<UserBalance> userBalances = mongoTemplate.find(basicQuery, UserBalance.class);
Page<UserBalance> userBalancePage = new PageImpl<>(userBalances, pageable, userBalances.size());
return userBalancePage;
}
}
......@@ -65,4 +65,6 @@ public interface AdministratorService {
void addUserWhiteList(String username, String website);
File getProxyConfig();
Page<UserBalance> getAllUserUsed(Pageable pageable);
}
......@@ -513,6 +513,12 @@ public class AdministratorServiceImpl implements AdministratorService {
return null;
}
@Override
public Page<UserBalance> getAllUserUsed(Pageable pageable) {
Page<UserBalance> userBalances = userBalanceRepository.findAllOrderByUsedDesc(pageable);
return userBalances;
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment