Kaynağa Gözat

企业端增加数据字典查询。

tomatozq 5 yıl önce
ebeveyn
işleme
ad8f17c275

+ 5 - 0
picc-admin-server/src/main/java/com/jpsoft/picc/modules/sys/controller/DataDictionaryController.java

@@ -196,6 +196,7 @@ public class DataDictionaryController {
     public MessageResult<Map> pageList(
             String id,
             String name,
+            String parentId,
             @RequestParam(name="pageIndex",defaultValue = "1") int pageIndex,
             @RequestParam(name="pageSize",defaultValue = "10") int pageSize,
             @RequestAttribute String subject){
@@ -210,6 +211,10 @@ public class DataDictionaryController {
         List<Sort> sortList = new ArrayList<>();
         sortList.add(new Sort("sort_no","asc"));
 
+        if (StringUtils.isNotEmpty(parentId)) {
+            searchParams.put("parentId",parentId);
+        }
+
         if (StringUtils.isNotEmpty(id)) {
             searchParams.put("id",id);
         }

+ 2 - 0
picc-common/src/main/java/com/jpsoft/picc/modules/sys/dao/DataDictionaryDAO.java

@@ -21,4 +21,6 @@ public interface DataDictionaryDAO {
 	String findParentId(String parentId,String value);
 	List<Map<String, Object>> queryChildren(String parentId);
 	List<DataDictionary> search(Map<String, Object> searchParams, List<Sort> sortList);
+
+    List<DataDictionary> findByCatalogName(String catalogName);
 }

+ 1 - 0
picc-common/src/main/java/com/jpsoft/picc/modules/sys/service/DataDictionaryService.java

@@ -19,4 +19,5 @@ public interface DataDictionaryService {
 	String findParentId(String parentId,String value);
 	List<Map<String, Object>> queryChildren(String parentId);
 	Page<DataDictionary> pageSearch(Map<String, Object> searchParams, int pageNum, int pageSize, List<Sort> sortList);
+    List<DataDictionary> findByCatalogName(String catalogName);
 }

+ 5 - 0
picc-common/src/main/java/com/jpsoft/picc/modules/sys/service/impl/DataDictionaryServiceImpl.java

@@ -86,4 +86,9 @@ public class DataDictionaryServiceImpl implements DataDictionaryService {
         
         return page;
 	}
+
+	@Override
+	public List<DataDictionary> findByCatalogName(String catalogName) {
+		return dataDictionaryDAO.findByCatalogName(catalogName);
+	}
 }

+ 11 - 0
picc-common/src/main/resources/mapper/sys/DataDictionary.xml

@@ -110,6 +110,9 @@
             <if test="searchParams.id != null">
                 and a.ID_ like #{searchParams.id}
             </if>
+            <if test="searchParams.parentId != null">
+                and a.parent_id = #{searchParams.parentId}
+            </if>
             <if test="searchParams.name != null">
                 and a.name_ like #{searchParams.name}
             </if>
@@ -151,5 +154,13 @@
         select a.name_ as name
         from sys_data_dictionary a
         where a.parent_id =#{parentId} and a.value_=#{value} and a.del_flag = 0
+        order by a.sort_no asc
+    </select>
+    <select id="findByCatalogName" resultMap="DataDictionaryMap">
+        select a.*
+        from sys_data_dictionary a,sys_data_dictionary b
+        where a.parent_id =b.id_ and b.name_=#{0}
+        and a.del_flag = 0
+        order by a.sort_no asc
     </select>
 </mapper>

+ 32 - 0
picc-enterprise-server/src/main/java/com/jpsoft/picc/config/CasConfig.java

@@ -6,6 +6,8 @@ import net.unicon.cas.client.configuration.EnableCasClient;
 import org.jasig.cas.client.authentication.AuthenticationFilter;
 import org.jasig.cas.client.proxy.ProxyGrantingTicketStorageImpl;
 import org.jasig.cas.client.util.HttpServletRequestWrapperFilter;
+import org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter;
+import org.jasig.cas.client.validation.Cas20ServiceTicketValidator;
 import org.jasig.cas.client.validation.Cas30ProxyTicketValidator;
 import org.jasig.cas.client.validation.TicketValidator;
 import org.springframework.beans.factory.annotation.Value;
@@ -57,4 +59,34 @@ public class CasConfig {
 
         return registration;
     }
+
+    /**
+     * 配置ticket校验器
+     *
+     * @return
+     */
+    @Bean
+    public Cas20ServiceTicketValidator cas20ServiceTicketValidator() {
+        // 配置上服务端的校验ticket地址
+        Cas20ServiceTicketValidator validator =  new Cas20ServiceTicketValidator(serverUrlPrefix);
+        validator.setEncoding("UTF-8");
+
+        return validator;
+    }
+
+    @Bean
+    public FilterRegistrationBean filterCasTicketValidationRegistration() {
+        Cas20ProxyReceivingTicketValidationFilter filter = new Cas20ProxyReceivingTicketValidationFilter();
+        filter.setServerName(clientHostUrl);
+        filter.setTicketValidator(cas20ServiceTicketValidator());
+
+        FilterRegistrationBean registration = new FilterRegistrationBean();
+
+        registration.setFilter(filter);
+
+        // 设定匹配的路径
+        registration.addUrlPatterns("/auth/*");
+
+        return registration;
+    }
 }

+ 46 - 0
picc-enterprise-server/src/main/java/com/jpsoft/picc/modules/auth/controller/DataDictionaryController.java

@@ -0,0 +1,46 @@
+package com.jpsoft.picc.modules.auth.controller;
+
+import com.jpsoft.picc.modules.common.dto.MessageResult;
+import com.jpsoft.picc.modules.sys.entity.DataDictionary;
+import com.jpsoft.picc.modules.sys.service.DataDictionaryService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@Api(description = "数据字典")
+@RestController
+@RequestMapping("/auth/dataDictionary")
+public class DataDictionaryController {
+    @Autowired
+    private DataDictionaryService dataDictionaryService;
+
+    @PostMapping("findByCatalogName")
+    @ApiOperation(value = "根据目录名称查询数据列表")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "catalogName",value = "数据目录名称", required = true, paramType = "form",dataType = "String"),
+    })
+    public MessageResult<List> findByCatalogName(String catalogName){
+        MessageResult<List> messageResult = new MessageResult<>();
+
+        try {
+            //todo
+            List<DataDictionary> list = dataDictionaryService.findByCatalogName(catalogName);
+            messageResult.setData(list);
+
+            messageResult.setResult(true);
+        }
+        catch (Exception ex){
+            messageResult.setResult(false);
+            messageResult.setMessage(ex.getMessage());
+        }
+
+        return messageResult;
+    }
+}

+ 2 - 0
picc-enterprise-server/src/main/java/com/jpsoft/picc/modules/pub/controller/UserController.java

@@ -17,6 +17,7 @@ import org.apache.commons.httpclient.NameValuePair;
 import org.apache.commons.httpclient.methods.DeleteMethod;
 import org.apache.commons.httpclient.methods.GetMethod;
 import org.apache.commons.httpclient.methods.PostMethod;
+import org.apache.commons.httpclient.params.HttpMethodParams;
 import org.apache.commons.lang3.StringUtils;
 import org.jasig.cas.client.authentication.AttributePrincipal;
 import org.jasig.cas.client.util.AbstractCasFilter;
@@ -413,6 +414,7 @@ public class UserController {
         HttpClient client = new HttpClient();
 
         PostMethod post = new PostMethod(casServerTicketUrl);
+        post.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"utf-8");
 
         post.setRequestBody(
                 new NameValuePair[] {