From 4e6d6e7c8e4ca42e96528a71162f5e58e473f652 Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期五, 11 七月 2025 09:37:15 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java | 84 +++++++++++++++++++++++++++++++++++------ 1 files changed, 71 insertions(+), 13 deletions(-) diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java index d911a32..09313f2 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/ActivityServiceImpl.java @@ -3,16 +3,19 @@ import cn.lili.base.Result; import cn.lili.common.enums.ActivityCoverTypeEnum; import cn.lili.common.enums.ActivityStatusEnum; +import cn.lili.common.security.context.UserContext; import cn.lili.modules.lmk.domain.entity.Activity; +import cn.lili.modules.lmk.domain.form.ActivityAuditRecordForm; import cn.lili.modules.lmk.domain.form.ActivityForm; +import cn.lili.modules.lmk.domain.query.ActivityAuditRecordQuery; import cn.lili.modules.lmk.domain.query.ActivityMembersQuery; import cn.lili.modules.lmk.domain.query.ActivityQuery; +import cn.lili.modules.lmk.domain.vo.ActivityAuditRecordVO; import cn.lili.modules.lmk.domain.vo.ActivityVO; import cn.lili.modules.lmk.mapper.ActivityMapper; -import cn.lili.modules.lmk.mapper.ActivityReportMapper; +import cn.lili.modules.lmk.service.ActivityAuditRecordService; import cn.lili.modules.lmk.service.ActivityService; import cn.lili.modules.lmk.service.LmkFileService; -import cn.lili.modules.lmk.service.MyActivityService; import cn.lili.modules.member.entity.vo.MemberVO; import cn.lili.utils.COSUtil; import cn.lili.utils.PageUtil; @@ -34,27 +37,31 @@ private final LmkFileService lmkFileService; - private final MyActivityService activityService; - - private final ActivityReportMapper activityReportMapper; private final COSUtil cOSUtil; + private final ActivityAuditRecordService activityAuditRecordService; + + @Override - public Result add(ActivityForm form) { + public Result add(ActivityForm form,Boolean isManager) { + Activity entity = ActivityForm.getEntityByForm(form, null); + System.out.println(entity); //榛樿鏂板娲诲姩涓� entity.setStatus(ActivityStatusEnum.NOT_STARTED.getType()); //榛樿涓嶄负鎺ㄨ崘 entity.setRecommend(false); //榛樿鏈彂甯� entity.setPublish(false); - + //璁剧疆鐢宠浜篿d + entity.setMemberId(UserContext.getCurrentUserId()); baseMapper.insert(entity); + mangerSaveOrUpdate(isManager,entity); return Result.ok("娣诲姞鎴愬姛"); } @Override - public Result update(ActivityForm form) { + public Result update(ActivityForm form,Boolean isManager) { Activity entity = baseMapper.selectById(form.getId()); //鍒ゆ柇淇敼鍓嶇殑灏侀潰绫诲瀷鏄惁涓烘枃鏈紝鏂囨湰涓嶉渶瑕佸垹闄ゆ枃浠� @@ -70,10 +77,25 @@ Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); BeanUtils.copyProperties(form, entity); + mangerSaveOrUpdate(isManager,entity); baseMapper.updateById(entity); + + //鐩存帴閲嶆柊鐢熸垚涓�鏉″鏍歌褰� + BeanUtils.copyProperties(form, entity); + return Result.ok("淇敼鎴愬姛"); } - + public void mangerSaveOrUpdate(Boolean isManager,Activity entity){ + ActivityAuditRecordForm activityAuditRecordForm; + //娣诲姞瀹℃牳璁板綍 + if (isManager){ + //鐩存帴閫氳繃 + activityAuditRecordForm = ActivityAuditRecordForm.getEntityByManagerBuildForm(entity.getId()); + }else { + activityAuditRecordForm = ActivityAuditRecordForm.getEntityByBuyerBuildForm(entity.getId()); + } + activityAuditRecordService.addOrUpdateAuditActivity(activityAuditRecordForm); + } @Override public Result remove(List<String> ids) { baseMapper.deleteBatchIds(ids); @@ -82,14 +104,20 @@ @Override public Result removeById(String id) { - //TODO 鍏堝垽鏂椿鍔ㄦ槸鍚︽湁鎶ュ悕浜哄憳 - //鏈夌殑璇濅笉鍙垹闄� 鑱斾腑闂磋〃鏌ヨ + //鍏堝垽鏂椿鍔ㄦ槸鍚︽湁鎶ュ悕浜哄憳 + ActivityMembersQuery activityMembersQuery = new ActivityMembersQuery(); + activityMembersQuery.setId(id); + if((long)activityMembersPage(activityMembersQuery).get("total") > 0){ + return Result.error("璇ユ椿鍔ㄦ棤娉曚笅鏋讹紝宸插瓨鍦ㄦ姤鍚嶄汉鍛�"); + } //鍒犻櫎锛屽悓鏃跺垽鏂瀵硅薄鐨勫皝闈㈡槸鍚﹀瓨鍦� 锛屽瓨鍦ㄥ垯鍦ㄤ簯鏈嶅姟鍣ㄥ垹闄� ActivityVO vo = baseMapper.getById(id); if (StringUtils.isNotEmpty(vo.getCover())){ lmkFileService.deleteObject(vo.getCover()); } baseMapper.deleteById(id); + //鍒犻櫎瀹℃牳璁板綍 + activityAuditRecordService.delActivityAuditById(id); return Result.ok("鍒犻櫎鎴愬姛"); } @@ -108,6 +136,23 @@ } @Override + public Result getMyApplyActivityPage(ActivityQuery query){ + System.out.println(query); + + //浼犲叆褰撳墠璇锋眰鐢ㄦ埛鐨刬d + query.setMemberId(UserContext.getCurrentUserId()); + //鏇村叿鐢ㄦ埛id鑾峰緱娲诲姩 + IPage<ActivityVO> page = PageUtil.getPage(query, ActivityVO.class); + baseMapper.getPage(page, query); + for (ActivityVO vo : page.getRecords()) { + if (!ActivityCoverTypeEnum.TEXT.getType().equals(vo.getCoverType())){ + vo.setUrl(cOSUtil.getPreviewUrl(vo.getCover())); + } + } + return Result.ok().data(page.getRecords()).total(page.getTotal()); + } + + @Override public Result detail(String id) { ActivityVO vo = baseMapper.getById(id); Assert.notNull(vo, "璁板綍涓嶅瓨鍦�"); @@ -115,6 +160,7 @@ } @Override public Result getCanReportPage(ActivityQuery query){ + //鏌ヨ鍒扮殑缁撴灉宸茬粡瀹℃牳涓斿彂甯� IPage<ActivityVO> page = PageUtil.getPage(query, ActivityVO.class); //宸插彂甯冪殑娲诲姩 baseMapper.getCanReportPage(page, query); @@ -163,10 +209,22 @@ if((long)activityMembersPage(activityMembersQuery).get("total") > 0){ return Result.error("璇ユ椿鍔ㄦ棤娉曚笅鏋讹紝宸插瓨鍦ㄦ姤鍚嶄汉鍛�"); } + return Result.ok(); + }else { + //鍒ゆ柇璇ユ椿鍔ㄦ槸鍚﹀鏍搁�氳繃 + if(activityAuditRecordService.getActivityActivityIsAudit(form.getId())){ + baseMapper.updateById(entity); + return Result.ok(); + }else { + return Result.error("娲诲姩鏈�氳繃瀹℃牳"); + } + + } - baseMapper.updateById(entity); - return Result.ok(); + + + } @Override -- Gitblit v1.8.0