保誠-保戶業務員媒合平台
wayne
2022-02-17 a3716f72066d25d745f4d5103ff23a553c3e102b
pamapi/src/main/java/com/pollex/pam/web/rest/PersonalNotificationResource.java
比對新檔案
@@ -0,0 +1,55 @@
package com.pollex.pam.web.rest;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.pollex.pam.domain.Consultant;
import com.pollex.pam.domain.PersonalNotification;
import com.pollex.pam.enums.NotificationTypeEnum;
import com.pollex.pam.enums.PersonalNotificationRoleEnum;
import com.pollex.pam.repository.PersonalNotificationRepository;
import com.pollex.pam.security.SecurityUtils;
import com.pollex.pam.service.ConsultantService;
import com.pollex.pam.service.PersonalNotificationService;
@RestController
@RequestMapping("/api/personal_notification")
public class PersonalNotificationResource {
   @Autowired
   PersonalNotificationService personalNotificationService;
   @Autowired
   PersonalNotificationRepository personalNotificationRepository;
   @Autowired
   ConsultantService consultantService;
   @GetMapping("/getMyPersonalNotification")
   public ResponseEntity<List<PersonalNotification>> getMyPersonalNotification() {
      List<PersonalNotification> personalNotificationList = new ArrayList<>();
      if(StringUtils.hasText(SecurityUtils.getAgentNo())) {
         Consultant consultant = consultantService.findByAgentNo(SecurityUtils.getAgentNo());
         personalNotificationList = personalNotificationService.getMyPersonalNotification(consultant.getId(), PersonalNotificationRoleEnum.CONSULTANT);
      }else if(SecurityUtils.getCustomerDBId()!=null){
         personalNotificationList = personalNotificationService.getMyPersonalNotification(SecurityUtils.getCustomerDBId(), PersonalNotificationRoleEnum.CUSTOMER);
      }
      return new ResponseEntity<>(personalNotificationList, HttpStatus.OK);
   }
   @PostMapping("/readAllMyNotification")
   public void readAll() {
      personalNotificationService.readAllMyNotification();
   }
}