diff --git a/manage/ad-platform-management/src/main/java/com/baiye/modules/settlement/service/impl/CallCostServiceImpl.java b/manage/ad-platform-management/src/main/java/com/baiye/modules/settlement/service/impl/CallCostServiceImpl.java index d2919ac9..1536402b 100644 --- a/manage/ad-platform-management/src/main/java/com/baiye/modules/settlement/service/impl/CallCostServiceImpl.java +++ b/manage/ad-platform-management/src/main/java/com/baiye/modules/settlement/service/impl/CallCostServiceImpl.java @@ -11,6 +11,7 @@ import com.baiye.modules.settlement.dao.CallCostRepository; import com.baiye.modules.settlement.entity.CallSettlement; import com.baiye.modules.settlement.service.CallCostService; +import com.baiye.modules.system.domain.MessageNotification; import com.baiye.modules.system.domain.PayTemplate; import com.baiye.modules.system.domain.PayTemplateUser; import com.baiye.modules.system.domain.User; diff --git a/manage/ad-platform-management/src/main/java/com/baiye/modules/system/repository/UserRepository.java b/manage/ad-platform-management/src/main/java/com/baiye/modules/system/repository/UserRepository.java index 07d77ef3..c82c4627 100644 --- a/manage/ad-platform-management/src/main/java/com/baiye/modules/system/repository/UserRepository.java +++ b/manage/ad-platform-management/src/main/java/com/baiye/modules/system/repository/UserRepository.java @@ -22,6 +22,7 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; +import javax.xml.crypto.Data; import java.util.Date; import java.util.List; import java.util.Set; @@ -250,4 +251,14 @@ public interface UserRepository extends JpaRepository, JpaSpecificat @Modifying @Query(value = "update User set enabled = ?1 where id in ?2") void updateStatusByUserIds(Boolean flag, List ids); + + + /** + * id修改过期时间 + * @param expirationTime + * @param id + */ + @Modifying + @Query(value = "update User set expirationTime = ?1 where id = ?2") + void updateExpirationTimeById(Date expirationTime, Long id); } diff --git a/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/UserService.java b/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/UserService.java index fc41749c..fd916472 100644 --- a/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/UserService.java +++ b/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/UserService.java @@ -28,6 +28,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.io.IOException; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.Set; @@ -232,4 +233,12 @@ public interface UserService { * @param buyComboDTO 请求参数 */ void buyPackage(BuyComboDTO buyComboDTO); + + + /** + * 修改用户过期时间 + * @param userId + * @param newDate + */ + void updateUserExpirationTimeByUserId(Date newDate, Long userId); } diff --git a/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/PayTemplateUserServiceImpl.java b/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/PayTemplateUserServiceImpl.java index ab8c38f9..a9f8a1c1 100644 --- a/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/PayTemplateUserServiceImpl.java +++ b/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/PayTemplateUserServiceImpl.java @@ -7,7 +7,9 @@ import com.baiye.modules.system.domain.PayTemplate; import com.baiye.modules.system.domain.PayTemplateUser; import com.baiye.modules.system.repository.PayTemplateRepository; import com.baiye.modules.system.repository.PayTemplateUserRepository; +import com.baiye.modules.system.repository.UserRepository; import com.baiye.modules.system.service.PayTemplateUserService; +import com.baiye.modules.system.service.UserService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -25,9 +27,12 @@ import java.util.List; @Slf4j public class PayTemplateUserServiceImpl implements PayTemplateUserService { + private final PayTemplateUserRepository payTemplateUserRepository; private final PayTemplateRepository payTemplateRepository; + private final UserRepository userRepository; + @Override @Transactional(rollbackFor = Exception.class) public Boolean add(PayTemplateUser payTemplateUser) { @@ -46,13 +51,14 @@ public class PayTemplateUserServiceImpl implements PayTemplateUserService { //当createTime小于endTime时返回true,当大于等于时返回false if (createTime.before(endTime)) { //修改结束日期 - Date newDate2 = DateUtil.offset(payTemplateUserOne.getEndTime(), DateField.DAY_OF_MONTH, packageDay); - payTemplateUserOne.setEndTime(newDate2); + newDate = DateUtil.offset(payTemplateUserOne.getEndTime(), DateField.DAY_OF_MONTH, packageDay); + payTemplateUserOne.setEndTime(newDate); } else { //重置开始和结束日期 payTemplateUserOne.setBeginTime(createTime); payTemplateUserOne.setEndTime(newDate); } + userRepository.updateExpirationTimeById(newDate,userId); return payTemplateUserRepository.save(payTemplateUserOne).getId() != null; } else { PayTemplateUser addPayTemplateUser = new PayTemplateUser(); @@ -60,6 +66,7 @@ public class PayTemplateUserServiceImpl implements PayTemplateUserService { addPayTemplateUser.setUserId(userId); addPayTemplateUser.setBeginTime(createTime); addPayTemplateUser.setEndTime(newDate); + userRepository.updateExpirationTimeById(newDate, userId); return payTemplateUserRepository.save(addPayTemplateUser).getId() != null; } } diff --git a/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/UserServiceImpl.java b/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/UserServiceImpl.java index 49adfa93..07dbae05 100644 --- a/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/UserServiceImpl.java +++ b/manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/UserServiceImpl.java @@ -80,9 +80,9 @@ public class UserServiceImpl implements UserService { private final PasswordEncoder passwordEncoder; private final OnlineUserService onlineUserService; private final OrganizeRepository organizeRepository; - private final PayTemplateService payTemplateService; private final PayTemplateLogService payTemplateLogService; + private final PayTemplateUserService payTemplateUserService; private final OrganizeUserRepository organizeUserRepository; @@ -261,11 +261,7 @@ public class UserServiceImpl implements UserService { public Object queryAll(UserQueryCriteria criteria, Pageable pageable) { Page page = userRepository. findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root, criteria, criteriaBuilder), pageable); - page.getContent().forEach(user -> { - PayTemplateUser payTemplateUser = payTemplateUserService.queryUserByUserId(user.getId()); - user.setExpirationTime(payTemplateUser != null - && payTemplateUser.getEndTime() != null ? payTemplateUser.getEndTime() : user.getExpirationTime()); - }); + return PageUtil.toPage(page.map(userMapper::toDto)); } @@ -586,4 +582,11 @@ public class UserServiceImpl implements UserService { } } } + + @Override + public void updateUserExpirationTimeByUserId(Date newDate, Long userId) { + userRepository.updateExpirationTimeById(newDate, userId); + } + + }