|  | @ -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);
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | }
 |