licailing vor 4 Jahren
Ursprung
Commit
9bfe508cbb

+ 3 - 0
src/main/java/com/izouma/uwip/repo/MaintenanceRepo.java

@@ -7,6 +7,7 @@ import org.springframework.data.jpa.repository.Modifying;
 import org.springframework.data.jpa.repository.Query;
 
 import javax.transaction.Transactional;
+import javax.validation.constraints.Size;
 import java.util.List;
 
 public interface MaintenanceRepo extends JpaRepository<Maintenance, Long>, JpaSpecificationExecutor<Maintenance> {
@@ -17,5 +18,7 @@ public interface MaintenanceRepo extends JpaRepository<Maintenance, Long>, JpaSp
 
     List<Maintenance> findAllByFlag(String description);
 
+    Maintenance findByFlagAndName(@Size(min = 1, max = 50) String flag, String name);
+
 
 }

+ 7 - 7
src/main/java/com/izouma/uwip/service/CountryPatentService.java

@@ -5,10 +5,8 @@ import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import com.izouma.uwip.domain.CountryPatent;
 import com.izouma.uwip.domain.Handle;
-import com.izouma.uwip.domain.InternationalPatent;
 import com.izouma.uwip.domain.Patent;
 import com.izouma.uwip.dto.CountryPatentDTO;
-import com.izouma.uwip.dto.InternationalPatentDTO;
 import com.izouma.uwip.dto.PageQuery;
 import com.izouma.uwip.enums.*;
 import com.izouma.uwip.exception.BusinessException;
@@ -82,7 +80,8 @@ public class CountryPatentService {
 
         //寰球案号
         PatentType type = patent.getType();
-        patent.setUwNo(partnerService.getUwNo(patent.getClientPartnerId(), CaseType.valueOf(type.name()), CaseStage.PCT, patent
+        patent.setUwNo(partnerService.getUwNo(patent.getClientPartnerId(), CaseType.valueOf(type.name()), CaseStage.COUNTRY, record
+                .getCountry(), patent
                 .getSort()));
         patent.setApplyStatus(ApplyStatus.APPLY_STAGE);
         patent = patentRepo.save(patent);
@@ -103,18 +102,19 @@ public class CountryPatentService {
             case APPLY_TRANSLATION://申请翻译文稿
             case TRANSLATION_DOCUMENTS://上传翻译文稿
             case FINALIZED_TRANSLATION://上传翻译定稿
-                return ApplyStatus.APPLY_STAGE;//申请阶段
             case ADD_SUPPLIERS://供应商
             case SUPPLIER_MATERIALS://供应商材料
             case MAINTAIN_CASE://案件信息
+                return ApplyStatus.APPLY_STAGE;//申请阶段
             case REPLY_NOTIFICATION://答复通知
             case DETERMINED_REPLY://答复意向
             case UPLOADED_REPLY://答复意见书
             case RESPONSE_RESULT://答复结果
+                return ApplyStatus.SUBSTANTIVE_STAGE;//审查
             case PENDING_REGISTER://办登通知日
             case AUTHORIZE_REGISTER://办登凭证
             case AUTHORIZATION_INFORMATION://授权号
-                return ApplyStatus.SUBSTANTIVE_STAGE;// 实审阶段
+                return ApplyStatus.GRANT_STAGE;
             default://不答复终止
                 return ApplyStatus.COMPLETED;
         }
@@ -132,8 +132,8 @@ public class CountryPatentService {
             }
             Map<String, Object> query = pageQuery.getQuery();
             query.keySet().forEach(key -> {
-                if (JpaUtils.isExistField(key, InternationalPatent.class)) {
-                    Predicate predicate = JpaUtils.getPredicate(key, query.get(key), InternationalPatent.class, root, criteriaBuilder, false);
+                if (JpaUtils.isExistField(key, CountryPatent.class)) {
+                    Predicate predicate = JpaUtils.getPredicate(key, query.get(key), CountryPatent.class, root, criteriaBuilder, false);
                     if (ObjectUtil.isNotNull(predicate)) {
                         and.add(predicate);
                     }

+ 8 - 7
src/main/java/com/izouma/uwip/service/DomesticPatentService.java

@@ -18,6 +18,7 @@ import lombok.AllArgsConstructor;
 import org.apache.commons.collections.CollectionUtils;
 import org.springframework.data.domain.Page;
 import org.springframework.stereotype.Service;
+
 import javax.persistence.criteria.Path;
 import javax.persistence.criteria.Predicate;
 import java.time.LocalDateTime;
@@ -75,7 +76,7 @@ public class DomesticPatentService {
 
         //寰球案号
         PatentType type = patent.getType();
-        patent.setUwNo(partnerService.getUwNo(patent.getClientPartnerId(), CaseType.valueOf(type.name()), CaseStage.DOMESTIC, patent
+        patent.setUwNo(partnerService.getUwNo(patent.getClientPartnerId(), CaseType.valueOf(type.name()), CaseStage.DOMESTIC, null, patent
                 .getSort()));
         patent.setApplyStatus(ApplyStatus.APPLY_STAGE);
         patent = patentRepo.save(patent);
@@ -114,7 +115,7 @@ public class DomesticPatentService {
     }
 
     public Page<DomesticPatent> allDTO(PageQuery pageQuery) {
-       return domesticPatentRepo.findAll(((root, criteriaQuery, criteriaBuilder) -> {
+        return domesticPatentRepo.findAll(((root, criteriaQuery, criteriaBuilder) -> {
             List<Predicate> and = new ArrayList<>();
             Path<Object> patent = root.get("patent");
             if (StrUtil.isNotBlank(pageQuery.getSearch())) {
@@ -126,18 +127,18 @@ public class DomesticPatentService {
             Map<String, Object> query = pageQuery.getQuery();
             query.keySet().forEach(key -> {
                 if (JpaUtils.isExistField(key, DomesticPatent.class)) {
-                    Predicate predicate = JpaUtils.getPredicate(key, query.get(key), DomesticPatent.class, root, criteriaBuilder,false);
-                    if (ObjectUtil.isNotNull(predicate)){
+                    Predicate predicate = JpaUtils.getPredicate(key, query.get(key), DomesticPatent.class, root, criteriaBuilder, false);
+                    if (ObjectUtil.isNotNull(predicate)) {
                         and.add(predicate);
                     }
                 } else {
-                    Predicate predicate = JpaUtils.getPredicate(key, query.get(key), Patent.class, root, criteriaBuilder,true);
-                    if (ObjectUtil.isNotNull(predicate)){
+                    Predicate predicate = JpaUtils.getPredicate(key, query.get(key), Patent.class, root, criteriaBuilder, true);
+                    if (ObjectUtil.isNotNull(predicate)) {
                         and.add(predicate);
                     }
                 }
             });
             return criteriaBuilder.and(and.toArray(new Predicate[0]));
-        }),JpaUtils.toPageRequest(pageQuery));
+        }), JpaUtils.toPageRequest(pageQuery));
     }
 }

+ 1 - 1
src/main/java/com/izouma/uwip/service/InternationalPatentService.java

@@ -79,7 +79,7 @@ public class InternationalPatentService {
 
         //寰球案号
         PatentType type = patent.getType();
-        patent.setUwNo(partnerService.getUwNo(patent.getClientPartnerId(), CaseType.valueOf(type.name()), CaseStage.PCT, patent
+        patent.setUwNo(partnerService.getUwNo(patent.getClientPartnerId(), CaseType.valueOf(type.name()), CaseStage.PCT, null, patent
                 .getSort()));
         patent.setApplyStatus(ApplyStatus.APPLY_STAGE);
         patent = patentRepo.save(patent);

+ 2 - 1
src/main/java/com/izouma/uwip/service/LogoPatentService.java

@@ -57,7 +57,8 @@ public class LogoPatentService {
         if (record.getSort() == 0) {
             record.setSort(logoPatentRepo.findMax());
         }
-        record.setUwNo(partnerService.getUwNo(record.getClientPartnerId(), CaseType.LOGO, CaseStage.DOMESTIC, record.getSort()));
+        record.setUwNo(partnerService.getUwNo(record.getClientPartnerId(), CaseType.LOGO, CaseStage.DOMESTIC, null, record
+                .getSort()));
         record.setLogoWorkflow(LogoWorkflow.IS_CONTRACT);
         record.setApplyStatus(ApplyStatus.APPLY_STAGE);
         record = logoPatentRepo.save(record);

+ 11 - 2
src/main/java/com/izouma/uwip/service/PartnerService.java

@@ -1,10 +1,13 @@
 package com.izouma.uwip.service;
 
+import cn.hutool.core.util.StrUtil;
+import com.izouma.uwip.domain.Maintenance;
 import com.izouma.uwip.domain.Partner;
 import com.izouma.uwip.dto.PageQuery;
 import com.izouma.uwip.enums.CaseStage;
 import com.izouma.uwip.enums.CaseType;
 import com.izouma.uwip.exception.BusinessException;
+import com.izouma.uwip.repo.MaintenanceRepo;
 import com.izouma.uwip.repo.PartnerRepo;
 import com.izouma.uwip.utils.JpaUtils;
 import lombok.AllArgsConstructor;
@@ -17,16 +20,22 @@ import java.time.LocalDate;
 @AllArgsConstructor
 public class PartnerService {
 
-    private final PartnerRepo partnerRepo;
+    private final PartnerRepo     partnerRepo;
+    private final MaintenanceRepo maintenanceRepo;
 
     public Page<Partner> all(PageQuery pageQuery) {
         return partnerRepo.findAll(JpaUtils.toSpecification(pageQuery, Partner.class), JpaUtils.toPageRequest(pageQuery));
     }
 
-    public String getUwNo(Long partnerId, CaseType type, CaseStage stage, int sort) {
+    public String getUwNo(Long partnerId, CaseType type, CaseStage stage, String country, int sort) {
 //        客户编码(由客户经理填写)+年份+案件类型+连接符+案件阶段[+国家]+序列号
         Partner partner = partnerRepo.findById(partnerId).orElseThrow(new BusinessException("客户不存在"));
         int y = LocalDate.now().getYear() - 2000;
+        if (StrUtil.isNotBlank(country)) {
+            Maintenance maintenance = maintenanceRepo.findByFlagAndName("Country", country);
+            return partner.getCode() + y + type.getValue() + "——" + stage.getValue() + maintenance.getDescription() + String
+                    .format("%03d", sort);
+        }
         return partner.getCode() + y + type.getValue() + "——" + stage.getValue() + String.format("%03d", sort);
     }
 }

+ 28 - 0
src/test/java/com/izouma/uwip/service/CountryPatentServiceTest.java

@@ -0,0 +1,28 @@
+package com.izouma.uwip.service;
+
+import com.izouma.uwip.ApplicationTests;
+import com.izouma.uwip.dto.CountryPatentDTO;
+import com.izouma.uwip.enums.ApplyRoute;
+import com.izouma.uwip.enums.PatentType;
+import org.junit.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+
+public class CountryPatentServiceTest extends ApplicationTests {
+
+    @Autowired
+    private CountryPatentService countryPatentService;
+
+    @Test
+    public void saveDTO() {
+        CountryPatentDTO dto = CountryPatentDTO.builder()
+                .name("视频监控分析法")
+                .type(PatentType.INVENTION)
+                .applyRoute(ApplyRoute.SINGLE)
+                .build();
+        countryPatentService.saveDTO(dto, 1L);
+    }
+
+    @Test
+    public void allDTO() {
+    }
+}

+ 1 - 1
src/test/java/com/izouma/uwip/service/LogoPatentServiceTest.java

@@ -22,7 +22,7 @@ public class LogoPatentServiceTest extends ApplicationTests {
     @Test
     public void getUwNo() {
         LogoPatent patent = logoPatentRepo.findById(44L).orElseThrow(new BusinessException("wu"));
-        System.out.println(partnerService.getUwNo(patent.getClientPartnerId(), CaseType.LOGO, CaseStage.DOMESTIC, patent
+        System.out.println(partnerService.getUwNo(patent.getClientPartnerId(), CaseType.LOGO, CaseStage.DOMESTIC, null, patent
                 .getSort()));
     }
 }