AreaService.js 685 B

1234567891011121314151617181920
  1. const areaRepository = require('../../repository/sales/AreaRepository.js');
  2. const { SearchFilter } = require('../../utils/SearchFilter.js');
  3. const prisma = require('../../prisma/PrismaClient.js');
  4. exports.getAllAreaByUserService = async ({ page, limit, search, sortBy, orderBy }, req) => {
  5. const skip = (page - 1) * limit;
  6. const where = {
  7. user_id: req.user.id,
  8. deletedAt: null,
  9. ...SearchFilter(search, ['province.name']),
  10. };
  11. const [areas, total] = await Promise.all([
  12. areaRepository.findAll({ skip, take: limit, where, orderBy: { [sortBy]: orderBy } }),
  13. areaRepository.countAll(where),
  14. ]);
  15. return { areas, total };
  16. };