|  | @ -1,9 +1,20 @@
 | 
	
		
			
				|  |  | package com.yihu.jw.base.service.org;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSON;
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSONArray;
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  | import com.google.gson.JsonObject;
 | 
	
		
			
				|  |  | import com.yihu.jw.base.dao.org.BaseOrgDao;
 | 
	
		
			
				|  |  | import com.yihu.jw.rm.base.BaseRequestMapping;
 | 
	
		
			
				|  |  | import com.yihu.mysql.query.BaseJpaService;
 | 
	
		
			
				|  |  | import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  | import com.yihu.jw.entity.base.org.BaseOrgDO;
 | 
	
		
			
				|  |  | import org.springframework.util.StringUtils;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import java.util.ArrayList;
 | 
	
		
			
				|  |  | import java.util.List;
 | 
	
		
			
				|  |  | import java.util.Map;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | /**
 | 
	
		
			
				|  |  |  * 
 | 
	
	
		
			
				|  | @ -19,4 +30,86 @@ import com.yihu.jw.entity.base.org.BaseOrgDO;
 | 
	
		
			
				|  |  |  */
 | 
	
		
			
				|  |  | @Service
 | 
	
		
			
				|  |  | public class BaseOrgService extends BaseJpaService<BaseOrgDO, BaseOrgDao> {
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     @Autowired
 | 
	
		
			
				|  |  |     private BaseOrgDao baseOrgDao;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 机构基础信息列表
 | 
	
		
			
				|  |  |      * @param orgCode
 | 
	
		
			
				|  |  |      * @param orgName
 | 
	
		
			
				|  |  |      * @param orgStatus
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public List<Map<String,Object>> queryOrgBaseInfoList(String orgCode,String orgName,String orgStatus,int page,int size,String sorts){
 | 
	
		
			
				|  |  |         List<Map<String,Object>> result = new ArrayList<>();
 | 
	
		
			
				|  |  |         if(StringUtils.endsWithIgnoreCase("1",orgStatus)){
 | 
	
		
			
				|  |  |             if(!StringUtils.isEmpty(orgCode) ){
 | 
	
		
			
				|  |  |                 result = baseOrgDao.findByCodeAndDel(orgCode,orgStatus,creatPage(page,size,sorts));
 | 
	
		
			
				|  |  |             }else if(!StringUtils.isEmpty(orgCode)){
 | 
	
		
			
				|  |  |                 result = baseOrgDao.findByNameAndDel(orgName,orgStatus,creatPage(page,size,sorts));
 | 
	
		
			
				|  |  |             }else{
 | 
	
		
			
				|  |  |                 result = baseOrgDao.findBaseInfoByDel(orgStatus,creatPage(page,size,sorts));
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }else{
 | 
	
		
			
				|  |  |             if(!StringUtils.isEmpty(orgCode) ){
 | 
	
		
			
				|  |  |                 result = baseOrgDao.findByCode(orgCode,creatPage(page,size,sorts));
 | 
	
		
			
				|  |  |             }else if(!StringUtils.isEmpty(orgCode)){
 | 
	
		
			
				|  |  |                 result = baseOrgDao.findByName(orgName,creatPage(page,size,sorts));
 | 
	
		
			
				|  |  |             }else{
 | 
	
		
			
				|  |  |                 result = baseOrgDao.findBaseInfo(creatPage(page,size,sorts));
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         return result;
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 构建机构区域树形结构
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public JSONObject getOrgByArea(){
 | 
	
		
			
				|  |  |         JSONObject result = new JSONObject();
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         JSONArray provinceArray = new JSONArray();
 | 
	
		
			
				|  |  |         JSONArray cityArray = new JSONArray();
 | 
	
		
			
				|  |  |         JSONArray townArray = new JSONArray();
 | 
	
		
			
				|  |  |         JSONArray orgArray = new JSONArray();
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         List<BaseOrgDO> list = baseOrgDao.findOrgByArea();
 | 
	
		
			
				|  |  |         list.forEach(baseOrgDO -> {
 | 
	
		
			
				|  |  |             JSONObject proJson = new JSONObject();
 | 
	
		
			
				|  |  |             proJson.put("provinceCode",baseOrgDO.getProvinceCode());
 | 
	
		
			
				|  |  |             proJson.put("provinceName",baseOrgDO.getProvinceName());
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             JSONObject cityJson = new JSONObject();
 | 
	
		
			
				|  |  |             cityJson.put("provinceCode",baseOrgDO.getProvinceCode());
 | 
	
		
			
				|  |  |             cityJson.put("provinceName",baseOrgDO.getProvinceName());
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             JSONObject townJson = new JSONObject();
 | 
	
		
			
				|  |  |             townJson.put("provinceCode",baseOrgDO.getProvinceCode());
 | 
	
		
			
				|  |  |             townJson.put("provinceName",baseOrgDO.getProvinceName());
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             JSONObject orgJson = new JSONObject();
 | 
	
		
			
				|  |  |             orgJson.put("provinceCode",baseOrgDO.getProvinceCode());
 | 
	
		
			
				|  |  |             orgJson.put("provinceName",baseOrgDO.getProvinceName());
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             provinceArray.add(proJson);
 | 
	
		
			
				|  |  |             cityArray.add(cityJson);
 | 
	
		
			
				|  |  |             townArray.add(townJson);
 | 
	
		
			
				|  |  |             orgArray.add(orgJson);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             JSONObject cityJsonAyy = new JSONObject();
 | 
	
		
			
				|  |  |             cityJsonAyy.put("city",cityArray);
 | 
	
		
			
				|  |  |             provinceArray.add(cityJsonAyy);
 | 
	
		
			
				|  |  |             JSONObject townJsonAyy = new JSONObject();
 | 
	
		
			
				|  |  |             townJsonAyy.put("town", townArray);
 | 
	
		
			
				|  |  |             cityArray.add(townJsonAyy);
 | 
	
		
			
				|  |  |             JSONObject orgJsonAyy = new JSONObject();
 | 
	
		
			
				|  |  |             orgJsonAyy.put("org",orgArray);
 | 
	
		
			
				|  |  |             townArray.add(orgJsonAyy);
 | 
	
		
			
				|  |  |         });
 | 
	
		
			
				|  |  |         result.put("province",provinceArray);
 | 
	
		
			
				|  |  |         return result;
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | }
 |