From 932777e9d6dc8dc5d9edbfc9117639ae02d96956 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 14 十月 2021 11:55:07 +0800
Subject: [PATCH] 自动化代码生成优化

---
 src/main/java/org/yeshi/utils/generater/vo/service/ServiceImplInfoVO.java |   43 ++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 42 insertions(+), 1 deletions(-)

diff --git a/src/main/java/org/yeshi/utils/generater/vo/service/ServiceImplInfoVO.java b/src/main/java/org/yeshi/utils/generater/vo/service/ServiceImplInfoVO.java
index 0920e4f..775ce18 100644
--- a/src/main/java/org/yeshi/utils/generater/vo/service/ServiceImplInfoVO.java
+++ b/src/main/java/org/yeshi/utils/generater/vo/service/ServiceImplInfoVO.java
@@ -1,16 +1,22 @@
 package org.yeshi.utils.generater.vo.service;
 
+import org.springframework.stereotype.Service;
 import org.yeshi.utils.FreemarkerUtils;
 import org.yeshi.utils.StringUtil;
+import org.yeshi.utils.bean.BeanUtil;
 import org.yeshi.utils.generater.entity.BaseData;
 import org.yeshi.utils.generater.entity.ClassInfo;
 import org.yeshi.utils.generater.util.EntityUtil;
 
+import javax.annotation.Resource;
 import java.lang.reflect.Field;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 
 public class ServiceImplInfoVO extends BaseData {
+
+    private List<String> importList;
     private ClassInfo service;
     private ClassInfo dao;
     //鏂规硶鍒楄〃
@@ -26,6 +32,12 @@
         private ClassInfo service;
         private ClassInfo query;
         private ClassInfo daoQuery;
+        private ClassInfo exception;
+
+        public Builder setException(ClassInfo exception) {
+            this.exception = exception;
+            return this;
+        }
 
         public Builder setEntity(Class entity) {
             this.entity = entity;
@@ -119,7 +131,7 @@
             serviceData.setPackageName(packageName);
             serviceData.setDaoQuery(daoQuery);
             serviceData.setQuery(query);
-
+            List<String> importList = new ArrayList<>();
             //璁剧疆鎺ュ彛
             List<ServiceMetodInfoVO> metodInfoVOList = new ArrayList<>();
             /*******娣诲姞鏂规硶寮�濮�*******/
@@ -149,6 +161,13 @@
             params = new ArrayList<>();
             params.add(serviceData.getEntity().getName() + " " + StringUtil.firstCharToLower(serviceData.getEntity().getName()));
             metodInfo = new ServiceMetodInfoVO("public", "void", "add", StringUtil.concat(params, ","));
+            if (exception != null) {
+                metodInfo.setExceptions(exception.getName());
+                importList.add(exception.getClazz());
+            } else {
+                metodInfo.setExceptions("Exception");
+                importList.add(Exception.class.getName());
+            }
             metodInfo.setContent(FreemarkerUtils.generateInputStream(serviceData, getClass().getClassLoader().getResourceAsStream(getMethodContentTemplatePath("add"))));
             metodInfoVOList.add(metodInfo);
             //update鏂规硶
@@ -165,6 +184,20 @@
             metodInfoVOList.add(metodInfo);
 
             /*******娣诲姞鏂规硶缁撴潫*******/
+
+
+            importList.add(Resource.class.getName());
+            importList.add(Service.class.getName());
+            importList.add(Date.class.getName());
+            importList.add(BeanUtil.class.getName());
+            importList.add(List.class.getName());
+            importList.add(serviceData.getDao().getClazz());
+            importList.add(entity.getName());
+            importList.add(service.getClazz());
+            importList.add(query.getClazz());
+            importList.add(daoQuery.getClazz());
+
+            serviceData.setImportList(importList);
             serviceData.setMetodInfoList(metodInfoVOList);
             return serviceData;
         }
@@ -210,5 +243,13 @@
     public void setQuery(ClassInfo query) {
         this.query = query;
     }
+
+    public List<String> getImportList() {
+        return importList;
+    }
+
+    public void setImportList(List<String> importList) {
+        this.importList = importList;
+    }
 }
 

--
Gitblit v1.8.0