24282 hai 1 ano
pai
achega
8ffd1a7dc3

+ 2 - 2
sd-business/src/main/java/com/sd/business/service/sku/impl/SkuServiceImpl.java

@@ -94,8 +94,8 @@ public class SkuServiceImpl extends ServiceImpl<SkuMapper, Sku> implements SkuSe
         // 赋值sku规格
         List<SkuSpecVo> skuSpecList = Sql.create(SkuSpecVo.class)
                 .selectAll(SkuSpec.class)
-                .select(ArtworkLibrary::getImgUrl, SkuSpecVo::getDesignImgUrl)
-                .select(ArtworkLibrary::getFileUrl, SkuSpecVo::getSharedFolder)
+                .selectAs(ArtworkLibrary::getImgUrl, SkuSpecVo::getDesignImgUrl)
+                .selectAs(ArtworkLibrary::getFileUrl, SkuSpecVo::getSharedFolder)
                 .from(SkuSpecVo.class)
                 .leftJoin(ArtworkLibrary.class, ArtworkLibrary::getId, SkuSpec::getArtworkLibraryId)
                 .eq(SkuSpec::getSkuId, id)

+ 0 - 30
sd-framework/src/main/java/com/sd/framework/util/sql/MybatisConstant.java

@@ -1,30 +0,0 @@
-package com.sd.framework.util.sql;
-
-
-import com.baomidou.mybatisplus.core.assist.ISqlRunner;
-import com.baomidou.mybatisplus.core.toolkit.Constants;
-import com.baomidou.mybatisplus.core.toolkit.StringPool;
-
-public interface MybatisConstant {
-
-    /**
-     * mp wrapper
-     */
-    String WRAPPER = Constants.WRAPPER;
-
-    /**
-     * mp page
-     */
-    String PAGE = ISqlRunner.PAGE;
-
-    /**
-     * mp page
-     */
-    String SQL = ISqlRunner.SQL;
-
-    /**
-     * mp page
-     */
-    String SQL_SCRIPT = ISqlRunner.SQL_SCRIPT + StringPool.SPACE + "${ew.customSqlSegment}";
-
-}

+ 38 - 40
sd-framework/src/main/java/com/sd/framework/util/sql/Select.java

@@ -27,18 +27,6 @@ public class Select<T> {
         return this;
     }
 
-    public <S, V> Select<T> select(SFunction<S, V> function, SFunction<T, ?> asFunction) {
-        String as = PropertyNamer.methodToProperty(LambdaUtils.extract(asFunction).getImplMethodName());
-        sql.selectList.add(sql.getSqlFieldName(function) + StringPool.SPACE + as);
-        return this;
-    }
-
-    public <S, V> Select<T> select(String alias, SFunction<S, V> function, SFunction<T, ?> asFunction) {
-        String as = PropertyNamer.methodToProperty(LambdaUtils.extract(asFunction).getImplMethodName());
-        sql.selectList.add(sql.getSqlFieldName(alias, function) + StringPool.SPACE + as);
-        return this;
-    }
-
     @SafeVarargs
     public final <S, V> Select<T> select(SFunction<S, V>... functions) {
         for (SFunction<S, V> function : functions) {
@@ -55,6 +43,44 @@ public class Select<T> {
         return this;
     }
 
+    public <S, V> Select<T> selectAs(SFunction<S, V> function, SFunction<T, ?> asFunction) {
+        String as = PropertyNamer.methodToProperty(LambdaUtils.extract(asFunction).getImplMethodName());
+        sql.selectList.add(sql.getSqlFieldName(function) + StringPool.SPACE + as);
+        return this;
+    }
+
+    public <S, V> Select<T> selectAs(String alias, SFunction<S, V> function, SFunction<T, ?> asFunction) {
+        String as = PropertyNamer.methodToProperty(LambdaUtils.extract(asFunction).getImplMethodName());
+        sql.selectList.add(sql.getSqlFieldName(alias, function) + StringPool.SPACE + as);
+        return this;
+    }
+
+    public Select<T> selectAll(Class<?> cls) {
+        return selectAll(sql.getTableAlias(cls), cls);
+    }
+
+    public Select<T> selectAll(String alias, Class<?> cls) {
+        Field[] fields = ReflectUtil.getFields(cls);
+        for (Field field : fields) {
+            String fieldName = ReflectUtil.getFieldName(field);
+            if ("serialVersionUID".equals(fieldName)) {
+                continue;
+            }
+            TableField tableField = field.getAnnotation(TableField.class);
+            if (tableField != null) {
+                if (!tableField.exist() || !tableField.select()) {
+                    continue;
+                }
+                String value = tableField.value();
+                if (StrUtil.isNotBlank(value)) {
+                    fieldName = value;
+                }
+            }
+            sql.selectList.add(alias + StringPool.DOT + StrUtil.toUnderlineCase(fieldName));
+        }
+        return this;
+    }
+
     public Select<T> distinct() {
         sql.distinct = true;
         return this;
@@ -108,34 +134,6 @@ public class Select<T> {
         return this;
     }
 
-    public Select<T> selectAll(Class<?> cls) {
-        return selectAll(sql.getTableAlias(cls), cls);
-    }
-
-    public Select<T> selectAll(String alias, Class<?> cls) {
-        Field[] fields = ReflectUtil.getFields(cls);
-        for (Field field : fields) {
-            String fieldName = ReflectUtil.getFieldName(field);
-            if ("serialVersionUID".equals(fieldName)) {
-                continue;
-            }
-
-            TableField tableField = field.getAnnotation(TableField.class);
-            if (tableField != null) {
-                if (!tableField.exist() || !tableField.select()) {
-                    continue;
-                }
-                String value = tableField.value();
-                if (StrUtil.isNotBlank(value)) {
-                    fieldName = value;
-                }
-            }
-
-            sql.selectList.add(alias + StringPool.DOT + StrUtil.toUnderlineCase(fieldName));
-        }
-        return this;
-    }
-
     public From<T> from(Class<?> cls) {
         String tableAlias = sql.getTableAlias(cls);
         return from(tableAlias, cls);

+ 1 - 1
sd-framework/src/main/java/com/sd/framework/util/sql/Sql.java

@@ -30,7 +30,7 @@ public class Sql<T> {
 
     protected Boolean distinct = false;
 
-    public Sql(Class<T> resultCls) {
+    protected Sql(Class<T> resultCls) {
         this.resultCls = resultCls;
     }
 

+ 27 - 11
sd-framework/src/main/java/com/sd/framework/util/sql/mapper/JoinMapper.java

@@ -1,7 +1,9 @@
 package com.sd.framework.util.sql.mapper;
 
+import com.baomidou.mybatisplus.core.assist.ISqlRunner;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.sd.framework.util.sql.MybatisConstant;
 import com.sd.framework.util.sql.Where;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
@@ -11,17 +13,31 @@ import java.util.Map;
 
 public interface JoinMapper {
 
-    @Select(MybatisConstant.SQL_SCRIPT)
-    List<Map<String, Object>> list(@Param(MybatisConstant.SQL) String sql,
-                                   @Param(MybatisConstant.WRAPPER) Where<?> wrapper);
+    /**
+     * mp page
+     */
+    String SQL_SCRIPT = ISqlRunner.SQL_SCRIPT + StringPool.SPACE + "${ew.customSqlSegment}";
 
-    @Select(MybatisConstant.SQL_SCRIPT)
-    Page<Map<String, Object>> page(@Param(MybatisConstant.SQL) String sql,
-                                   @Param(MybatisConstant.PAGE) Page<?> page,
-                                   @Param(MybatisConstant.WRAPPER) Where<?> wrapper);
+    /**
+     * 列表
+     */
+    @Select(SQL_SCRIPT)
+    List<Map<String, Object>> list(@Param(ISqlRunner.SQL) String sql,
+                                   @Param(Constants.WRAPPER) Where<?> wrapper);
 
-    @Select(MybatisConstant.SQL_SCRIPT)
-    Map<String, Object> one(@Param(MybatisConstant.SQL) String sql,
-                            @Param(MybatisConstant.WRAPPER) Where<?> wrapper);
+    /**
+     * 分页
+     */
+    @Select(SQL_SCRIPT)
+    Page<Map<String, Object>> page(@Param(ISqlRunner.SQL) String sql,
+                                   @Param(ISqlRunner.PAGE) Page<?> page,
+                                   @Param(Constants.WRAPPER) Where<?> wrapper);
+
+    /**
+     * 单条纪录
+     */
+    @Select(SQL_SCRIPT)
+    Map<String, Object> one(@Param(ISqlRunner.SQL) String sql,
+                            @Param(Constants.WRAPPER) Where<?> wrapper);
 
 }