This commit is contained in:
wucongxing8150 2025-08-12 13:44:55 +08:00
parent fd9ae57649
commit 6bd9ab31b6
2 changed files with 29 additions and 24 deletions

View File

@ -175,7 +175,7 @@ public class CaseClinicalService {
// 新增医院统计
@Transactional
public StatsCaseClinicalHospitalModel IncStatsCaseClinicalHospital(String hospitalId,Integer type,LocalDateTime lastPushDate){
public StatsCaseClinicalHospitalModel IncStatsCaseClinicalHospital(String hospitalId,Integer type,LocalDateTime lastPushDate,Integer num){
LambdaQueryWrapper<StatsCaseClinicalHospitalModel> mapQueryWrapper = new LambdaQueryWrapper<>();
mapQueryWrapper.eq(StatsCaseClinicalHospitalModel::getHospitalId, hospitalId);
StatsCaseClinicalHospitalModel statsCaseClinicalHospital = statsCaseClinicalHospitalDao.selectOne(mapQueryWrapper);
@ -184,9 +184,9 @@ public class CaseClinicalService {
statsCaseClinicalHospital.setHospitalId(Long.valueOf(hospitalId));
if (type == 1){
statsCaseClinicalHospital.setArticleNum(1);
statsCaseClinicalHospital.setArticleNum(num);
}else if(type == 2){
statsCaseClinicalHospital.setVideoNum(1);
statsCaseClinicalHospital.setVideoNum(num);
}
if (lastPushDate!=null){
@ -195,9 +195,14 @@ public class CaseClinicalService {
statsCaseClinicalHospitalDao.insert(statsCaseClinicalHospital);
}else{
if (type == 1){
statsCaseClinicalHospitalDao.inc(statsCaseClinicalHospital.getHospitalId(),"article_num",1);
if (lastPushDate!=null){
statsCaseClinicalHospital.setLastPushDate(lastPushDate);
statsCaseClinicalHospitalDao.updateById(statsCaseClinicalHospital);
}
statsCaseClinicalHospitalDao.inc(statsCaseClinicalHospital.getHospitalId(),"article_num",num);
}else{
statsCaseClinicalHospitalDao.inc(statsCaseClinicalHospital.getHospitalId(),"video_num",1);
statsCaseClinicalHospitalDao.inc(statsCaseClinicalHospital.getHospitalId(),"video_num",num);
}
}
@ -211,7 +216,7 @@ public class CaseClinicalService {
* @return
*/
@Transactional
public StatsCaseClinicalHospitalModel DecStatsCaseClinicalHospital(String hospitalId,Integer type){
public StatsCaseClinicalHospitalModel DecStatsCaseClinicalHospital(String hospitalId,Integer type,Integer num){
LambdaQueryWrapper<StatsCaseClinicalHospitalModel> mapQueryWrapper = new LambdaQueryWrapper<>();
mapQueryWrapper.eq(StatsCaseClinicalHospitalModel::getHospitalId, hospitalId);
StatsCaseClinicalHospitalModel statsCaseClinicalHospital = statsCaseClinicalHospitalDao.selectOne(mapQueryWrapper);
@ -226,7 +231,7 @@ public class CaseClinicalService {
statsCaseClinicalHospitalDao.updateById(statsCaseClinicalHospital);
}
statsCaseClinicalHospitalDao.dec(statsCaseClinicalHospital.getHospitalId(),"article_num",1);
statsCaseClinicalHospitalDao.dec(statsCaseClinicalHospital.getHospitalId(),"article_num",num);
}else{
// 最后一篇文章发表时间
LocalDateTime lastPushDate = caseClinicalVideoDao.selectLastVideoPushDateByHospitalId(Long.valueOf(hospitalId));
@ -234,7 +239,7 @@ public class CaseClinicalService {
statsCaseClinicalHospital.setLastPushDate(lastPushDate);
statsCaseClinicalHospitalDao.updateById(statsCaseClinicalHospital);
}
statsCaseClinicalHospitalDao.dec(statsCaseClinicalHospital.getHospitalId(),"video_num",1);
statsCaseClinicalHospitalDao.dec(statsCaseClinicalHospital.getHospitalId(),"video_num",num);
}
}

View File

@ -600,7 +600,7 @@ public class CaseClinicalVideoService {
if (caseClinicalVideo != null){
if (caseClinicalVideo.getDeleteStatus() == 1){
caseClinicalVideo.setDeleteStatus(0);
caseClinicalVideo.setVideoTitle(r.getVideoTitle());
caseClinicalVideo.setVideoNo(r.getVideoNo());
@ -666,7 +666,7 @@ public class CaseClinicalVideoService {
caseClinicalService.IncStatsCaseClinicalDoctor(String.valueOf(caseClinicalDoctor.getDoctorId()),2,lastPushDate);
// 新增医院统计
caseClinicalService.IncStatsCaseClinicalHospital(String.valueOf(caseClinicalDoctor.getHospitalId()),2,lastPushDate);
caseClinicalService.IncStatsCaseClinicalHospital(String.valueOf(caseClinicalDoctor.getHospitalId()),2,lastPushDate,1);
}
}
@ -674,6 +674,10 @@ public class CaseClinicalVideoService {
if (r.getLabel() != null) {
AddClinicalVideoAppLabel(caseClinicalVideo,r);
}
// 最后处理删除状态可能存在删除过的此处标签和作者就不需要再次扣减统计值
caseClinicalVideo.setDeleteStatus(0);
caseClinicalVideoDao.updateById(caseClinicalVideo);
}
// 修改
@ -682,11 +686,6 @@ public class CaseClinicalVideoService {
throw new BusinessException("-1", "无法完成此操作");
}
// 文章主体
if (!Objects.equals(caseClinicalVideo.getVideoNo(), r.getVideoNo())){
caseClinicalVideo.setVideoNo(r.getVideoNo());
}
if (!Objects.equals(caseClinicalVideo.getIsLink(), r.getIsLink())){
caseClinicalVideo.setIsLink(r.getIsLink());
@ -876,7 +875,7 @@ public class CaseClinicalVideoService {
if (!deleteHospitalSet.isEmpty()){
// 减少医院统计
for (String hospitalId : deleteHospitalSet ){
caseClinicalService.DecStatsCaseClinicalHospital(hospitalId,2);
caseClinicalService.DecStatsCaseClinicalHospital(hospitalId,2,1);
}
}
@ -897,7 +896,6 @@ public class CaseClinicalVideoService {
CaseClinicalDoctorModel caseClinicalDoctor = userService.GetAppCaseClinicalDoctor(result);
CaseClinicalVideoAuthorModel caseClinicalVideoAuthor = new CaseClinicalVideoAuthorModel();
caseClinicalVideoAuthor.setVideoId(caseClinicalVideo.getVideoId());
caseClinicalVideoAuthor.setDoctorId(String.valueOf(caseClinicalDoctor.getDoctorId()));
@ -965,7 +963,7 @@ public class CaseClinicalVideoService {
// 新增医院统计
caseClinicalService.IncStatsCaseClinicalHospital(hospitalId,2,
lastPushDate);
lastPushDate,1);
}
}
@ -1094,12 +1092,14 @@ public class CaseClinicalVideoService {
LambdaQueryWrapper<CaseClinicalVideoLabelModel> labelQueryWrapper = new LambdaQueryWrapper<>();
labelQueryWrapper.eq(CaseClinicalVideoLabelModel::getVideoId, caseClinicalVideo.getVideoId());
List<CaseClinicalVideoLabelModel> caseClinicalVideoLabels = caseClinicalVideoLabelDao.selectList(labelQueryWrapper);
for (CaseClinicalVideoLabelModel label : caseClinicalVideoLabels){
// 减少标签统计
caseClinicalService.DecStatsCaseClinicalLabel(label.getAppIden(),2);
if (caseClinicalVideo.getDeleteStatus() == 0){
for (CaseClinicalVideoLabelModel label : caseClinicalVideoLabels){
// 减少标签统计
caseClinicalService.DecStatsCaseClinicalLabel(label.getAppIden(),2);
// 删除视频标签
caseClinicalVideoLabelDao.deleteById(label.getVideoLabelId());
// 删除视频标签
caseClinicalVideoLabelDao.deleteById(label.getVideoLabelId());
}
}
for (addClinicalVideoApp.Label label : r.getLabel()){
@ -1152,7 +1152,7 @@ public class CaseClinicalVideoService {
caseClinicalService.DecStatsCaseClinicalDoctor(author.getDoctorId(),2);
// 减少医院统计
caseClinicalService.DecStatsCaseClinicalHospital(String.valueOf(caseClinicalDoctor.getHospitalId()),2);
caseClinicalService.DecStatsCaseClinicalHospital(String.valueOf(caseClinicalDoctor.getHospitalId()),2,1);
}
}
}