| 
					
				 | 
			
			
				@ -1,12 +1,15 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				package com.yihu.jw.base.service.servicePackage; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.JSON; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.JSONObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.base.dao.servicePackage.ServicePackageSubItemDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.base.vo.excel.SubItemExcelVo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.servicePackage.ServicePackageSubItemDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.mysql.query.BaseJpaService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.restmodel.qvo.ParamQvo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.apache.commons.lang3.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.jdbc.core.BeanPropertyRowMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.*; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -26,26 +29,35 @@ public class ServicePackageSubItemService extends BaseJpaService<ServicePackageS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String detailSql = "select * "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String countSql = " select count(1) "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String pageSql = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = " FROM base_service_package_sub_item WHERE 1=1  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = " FROM base_service_package_sub_item a   "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getParentId())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " INNER JOIN base_service_package_item_relational b ON a.id = b.sub_item_id  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sql += " WHERE 1=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getId())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND id = '" + qvo.getId() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND a.id = '" + qvo.getId() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getLeasedCode())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND leased_code = '" + qvo.getLeasedCode() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND a.leased_code = '" + qvo.getLeasedCode() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getOrgCode())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND org_code = '" + qvo.getOrgCode() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND a.org_code = '" + qvo.getOrgCode() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getStatus())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND `status` = '" + qvo.getStatus() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND a.`status` = '" + qvo.getStatus() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getName())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND `name` like '%" + qvo.getName() + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND a.`name` like '%" + qvo.getName() + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getParentId())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND `item_id` = '" + qvo.getParentId() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //创建的服务项的id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += "AND b.`item_id` = '" + qvo.getParentId() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getDictItemId())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " and  a.dict_item_id='" + qvo.getDictItemId() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //分页 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getPageIf())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            pageSql += " limit " + (qvo.getPage() - 1) * qvo.getPageSize() + "," + qvo.getPageSize(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -60,6 +72,42 @@ public class ServicePackageSubItemService extends BaseJpaService<ServicePackageS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 用实体返回 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<SubItemExcelVo> getSubItemVoList(ParamQvo qvo) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String detailSql = "SELECT\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " c.`name`'itemName',a.`name` 'subItemName' ,a.*\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "FROM\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " base_service_package_sub_item a\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " INNER JOIN base_service_package_item_relational b ON a.id = b.sub_item_id \n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " INNER JOIN base_service_package_item c ON b.item_id=c.id\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "WHERE\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " 1 = 1;"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getId())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            detailSql += "AND a.id = '" + qvo.getId() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getLeasedCode())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            detailSql += "AND a.leased_code = '" + qvo.getLeasedCode() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getOrgCode())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            detailSql += "AND a.org_code = '" + qvo.getOrgCode() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getStatus())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            detailSql += "AND a.`status` = '" + qvo.getStatus() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getName())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            detailSql += "AND a.`name` like '%" + qvo.getName() + "%'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(qvo.getParentId())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            detailSql += "AND a.`item_id` = '" + qvo.getParentId() + "'"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<SubItemExcelVo> list = jdbcTemplate.query(detailSql, new BeanPropertyRowMapper<>(SubItemExcelVo.class)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return list; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject createSubItem(ServicePackageSubItemDO subItemDO) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        subItemDO.setCreateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ServicePackageSubItemDO entity = subItemDao.save(subItemDO); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -87,4 +135,54 @@ public class ServicePackageSubItemService extends BaseJpaService<ServicePackageS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        delSql += collect; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jdbcTemplate.execute(delSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void importSubItemExcel(List<SubItemExcelVo> list) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //查询出所有租户和机构 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql01 = " SELECT id,`name` FROM base_saas WHERE `status`='1' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql02 = " SELECT id,`code`,`name` FROM\tbase_org WHERE del='1' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql03 = " SELECT id,name FROM `base`.`wlyy_rehabilitation_service_item`  "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String, Object>> leasedList = jdbcTemplate.queryForList(sql01); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String, Object>> orgList = jdbcTemplate.queryForList(sql02); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String, Object>> itemList = jdbcTemplate.queryForList(sql03); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ArrayList<ServicePackageSubItemDO> resultList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (SubItemExcelVo vo : list) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ServicePackageSubItemDO entity = new ServicePackageSubItemDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            entity.setCreateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            entity.setName(vo.getItemName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            entity.setIntroduce(vo.getIntroduce()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            entity.setSort(vo.getSort()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNotBlank(vo.getStatus())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (vo.getStatus().equals("生效")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    entity.setStatus("1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    entity.setStatus("0"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (Map<String, Object> map : leasedList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (vo.getLeasedName().equals(map.get("name"))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    entity.setLeasedCode(map.get("id").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    entity.setLeasedName(map.get("name").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (Map<String, Object> map : orgList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (vo.getOrgName().equals(map.get("name"))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    entity.setOrgCode(map.get("id").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    entity.setOrgName(map.get("name").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (Map<String, Object> map : itemList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (vo.getItemName().equals(map.get("name"))) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    entity.setDictItemId(map.get("id").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            resultList.add(entity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            System.out.println(JSON.toJSONString(entity)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        subItemDao.saveAll(resultList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |