mirror of
				https://gitee.com/binary/weixin-java-tools.git
				synced 2025-11-01 03:25:35 +08:00 
			
		
		
		
	#456 企业微信获取部门列表接口方法listAll修改为list,以支持按部分id获取其下属部门列表
This commit is contained in:
		| @ -29,11 +29,12 @@ public interface WxCpDepartmentService { | ||||
|  | ||||
|   /** | ||||
|    * <pre> | ||||
|    * 部门管理接口 - 查询所有部门 | ||||
|    * 详情请见: http://mp.weixin.qq.com/wiki/index.php?title=部门管理接口 | ||||
|    * 部门管理接口 - 查询部门 | ||||
|    * 详情请见: http://qydev.weixin.qq.com/wiki/index.php?title=%E7%AE%A1%E7%90%86%E9%83%A8%E9%97%A8#.E8.8E.B7.E5.8F.96.E9.83.A8.E9.97.A8.E5.88.97.E8.A1.A8 | ||||
|    * </pre> | ||||
|    * @param id 部门id。获取指定部门及其下的子部门。非必需,可为null | ||||
|    */ | ||||
|   List<WxCpDepart> listAll() throws WxErrorException; | ||||
|   List<WxCpDepart> list(Integer id) throws WxErrorException; | ||||
|  | ||||
|   /** | ||||
|    * <pre> | ||||
|  | ||||
| @ -48,13 +48,13 @@ public class WxCpDepartmentServiceImpl implements WxCpDepartmentService { | ||||
|   } | ||||
|  | ||||
|   @Override | ||||
|   public List<WxCpDepart> listAll() throws WxErrorException { | ||||
|   public List<WxCpDepart> list(Integer id) throws WxErrorException { | ||||
|     String url = "https://qyapi.weixin.qq.com/cgi-bin/department/list"; | ||||
|     if (id != null) { | ||||
|       url += "?id=" + id; | ||||
|     } | ||||
|  | ||||
|     String responseContent = this.mainService.get(url, null); | ||||
|     /* | ||||
|      * 操蛋的微信API,创建时返回的是 { group : { id : ..., name : ...} } | ||||
|      * 查询时返回的是 { groups : [ { id : ..., name : ..., count : ... }, ... ] } | ||||
|      */ | ||||
|     JsonElement tmpJsonElement = new JsonParser().parse(responseContent); | ||||
|     return WxCpGsonBuilder.INSTANCE.create() | ||||
|       .fromJson(tmpJsonElement.getAsJsonObject().get("department"), | ||||
|  | ||||
| @ -8,6 +8,7 @@ import org.testng.annotations.*; | ||||
|  | ||||
| import java.util.List; | ||||
|  | ||||
| import static org.assertj.core.api.Assertions.assertThat; | ||||
| import static org.testng.Assert.*; | ||||
|  | ||||
| /** | ||||
| @ -34,16 +35,24 @@ public class WxCpDepartmentServiceImplTest { | ||||
|     System.out.println(departId); | ||||
|   } | ||||
|  | ||||
|   @Test | ||||
|   public void testListAll() throws Exception { | ||||
|   @DataProvider | ||||
|   public Object[][] departIds(){ | ||||
|     return new Object[][]{ | ||||
|       {null}, | ||||
|       {1}, | ||||
|       {5} | ||||
|     }; | ||||
|   } | ||||
|  | ||||
|   @Test(dataProvider = "departIds") | ||||
|   public void testList(Integer id) throws Exception { | ||||
|     System.out.println("=================获取部门"); | ||||
|     List<WxCpDepart> departList = this.wxCpService.getDepartmentService().listAll(); | ||||
|     assertNotNull(departList); | ||||
|     assertTrue(departList.size() > 0); | ||||
|     List<WxCpDepart> departList = this.wxCpService.getDepartmentService().list(id); | ||||
|     assertThat(departList).isNotEmpty(); | ||||
|     for (WxCpDepart g : departList) { | ||||
|       this.depart = g; | ||||
|       System.out.println(this.depart.getId() + ":" + this.depart.getName()); | ||||
|       assertNotNull(g.getName()); | ||||
|       assertThat(g.getName()).isNotBlank(); | ||||
|     } | ||||
|   } | ||||
|  | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Binary Wang
					Binary Wang