Parcourir la source

feat:通用批量查询下拉框数据接口

xuezizhuo il y a 1 an
Parent
commit
7c779f3275

+ 11 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/dragForm/CommonController.java

@@ -13,6 +13,7 @@ import com.ruoyi.system.service.*;
 import org.springframework.web.bind.annotation.*;
 import javax.annotation.Resource;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 @RestController
@@ -105,4 +106,14 @@ public class CommonController extends BaseController {
         return getDataTable(commonService.dragTablePreview(commonEntity));
     }
 
+    /**
+     * 通用批量查询下拉框数据接口
+     */
+    @PostMapping("/queryDropDownBoxData")
+    public AjaxResult queryDropDownBoxData(@RequestBody List<CommonEntity> commonEntityList){
+        return AjaxResult.success(commonService.queryDropDownBoxData(commonEntityList));
+    }
+
+
+
 }

+ 8 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/CommonMapper.java

@@ -58,4 +58,12 @@ public interface CommonMapper {
      */
     List<Map<String,Object>> executeSql(String sql);
 
+    /**
+     * 查询数据
+     * @param tableName 表名
+     * @param conditions key表字段 value字段值集合
+     * @return
+     */
+    List<Map<String,Object>> queryDropDownBoxData(@Param("tableName") String tableName, @Param("conditions") Map<String, Object> conditions);
+
 }

+ 6 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/ICommonService.java

@@ -6,6 +6,7 @@ import com.ruoyi.system.entity.TableSql;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.List;
+import java.util.Map;
 
 
 public interface ICommonService {
@@ -64,6 +65,11 @@ public interface ICommonService {
      */
     CommonEntity getInfoById(CommonEntity commonEntity);
 
+    /**
+     * 通用批量查询下拉框数据接口
+     */
+    CommonEntity queryDropDownBoxData(List<CommonEntity> commonEntityList);
+
 
 
 }

+ 19 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CommonServiceImpl.java

@@ -300,6 +300,25 @@ public class CommonServiceImpl implements ICommonService {
         return common;
     }
 
+    @Override
+    public CommonEntity queryDropDownBoxData(List<CommonEntity> commonEntityList) {
+        Map<String,Object> retMap = new HashMap<>();
+        for (CommonEntity commonEntity : commonEntityList){
+            String tableName = (String) commonEntity.getBasicMap().get("tableName");
+            Map<String, Object> conditions = JSONObject.parseObject(JSON.toJSONString(commonEntity.getConditionMap()));
+            List<Long> list = new ArrayList<>();
+            list.add(0L);
+            conditions.put("del_flag",list);
+            List<Map<String,Object>> mapList = commonMapper.queryDropDownBoxData(tableName,conditions);
+            retMap.put(tableName,mapList);
+        }
+        CommonEntity commonEntity = new CommonEntity();
+        commonEntity.setResultMap(retMap);
+        return commonEntity;
+    }
+
+
+
     public static String extractSubstring(String input, String identifier) {
         int startIndex = input.indexOf(identifier);
         if (startIndex == -1) {

+ 14 - 0
ruoyi-system/src/main/resources/mapper/common/CommonMapper.xml

@@ -96,4 +96,18 @@
         ${sql}
     </select>
 
+    <select id="queryDropDownBoxData" resultType="map">
+        select * from {DBNAME}.${tableName}
+        <where>
+            <if test="conditions != null">
+                <foreach collection="conditions" item="value" index="key" separator="and">
+                    ${key} in
+                    <foreach collection="value" item="v" open="(" close=")" separator=",">
+                        #{v}
+                    </foreach>
+                </foreach>
+            </if>
+        </where>
+    </select>
+
 </mapper>