|
@@ -80,6 +80,39 @@ export class ContactApplyController {
|
|
|
return { data: nd, total };
|
|
|
}
|
|
|
|
|
|
+ @Post('/sign', { routerName: `申请${namePrefix}-项目路演` })
|
|
|
+ @ApiTags('创建数据-申请路演')
|
|
|
+ async meetingCreate(@Body() data: any) {
|
|
|
+ /** 获取报名id(source_id),source为sign */
|
|
|
+ const source = get(data, 'source', 'sign');
|
|
|
+ let source_id: any = get(data, 'source_id');
|
|
|
+ const otherData = await this.service.searchCompleteData(source, source_id);
|
|
|
+ const sourceData = get(otherData, 'sourceData');
|
|
|
+ const source_user = get(sourceData, 'user');
|
|
|
+ const user_id = get(this.ctx, 'user.id');
|
|
|
+ if (user_id === source_user) throw new ServiceError(ErrorCode.CONTACTAPPLY_IS_THIS_USER_DATA); // 抛出异常: 来源数据是当前用户的数据
|
|
|
+ data.apply_user = user_id;
|
|
|
+ const userData = get(otherData, 'userData');
|
|
|
+ const target_user = get(userData, 'id');
|
|
|
+ data['target_user'] = target_user;
|
|
|
+ // 检查是否有未审核的申请
|
|
|
+ await this.service.checkHasApply(data);
|
|
|
+ /**创建申请数据 */
|
|
|
+ const dbData = await this.service.create(data);
|
|
|
+ const adminIds = await this.service.getSourceDept(source);
|
|
|
+ if (!adminIds) return; // 部门下无管理人员,请联系平台维护人员
|
|
|
+ try {
|
|
|
+ /**给这些管理员发送消息,通知他们去个人审核这个信息 */
|
|
|
+ const messageData = await this.service.getAdminToExamData(data, adminIds);
|
|
|
+ /**创建消息数据 */
|
|
|
+ const messageResult = await this.msgService.create(messageData);
|
|
|
+ const msgId = get(messageResult, 'id');
|
|
|
+ this.msgService.toSendMsg(msgId);
|
|
|
+ } catch (error) {
|
|
|
+ console.error('申请联系方式 消息创建失败');
|
|
|
+ }
|
|
|
+ return dbData;
|
|
|
+ }
|
|
|
@Post('/', { routerName: `申请${namePrefix}` })
|
|
|
@ApiTags('创建数据')
|
|
|
@Validate()
|