Add salesperson commissions on issued invoices and a cheque register.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-11 01:09:59 +03:30
co-authored by Cursor
parent 535c428270
commit 9a991fc1f1
22 changed files with 1238 additions and 11 deletions
+16 -1
View File
@@ -12,7 +12,7 @@ import { JwtAuthGuard } from '../auth/jwt-auth.guard';
import { CurrentUser } from '../auth/current-user.decorator';
import { Roles } from '../auth/roles.decorator';
import { RolesGuard } from '../auth/roles.guard';
import { InviteUserDto, UpdateUserRoleDto } from './dto';
import { InviteUserDto, UpdateUserCommissionDto, UpdateUserRoleDto } from './dto';
import { UsersService } from './users.service';
@Controller('users')
@@ -34,6 +34,21 @@ export class UsersController {
return this.usersService.invite(user.organizationId, user.role, dto);
}
@Patch(':id/commission')
@Roles('owner', 'admin')
updateCommission(
@CurrentUser() user: { organizationId: string; role: UserRole },
@Param('id') id: string,
@Body() dto: UpdateUserCommissionDto,
) {
return this.usersService.updateCommission(
user.organizationId,
user.role,
id,
dto.commissionPercent,
);
}
@Patch(':id/role')
@Roles('owner', 'admin')
updateRole(