package cn.ksource.web.controller.business.pages.xtpz.sjzd.industry; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.apache.commons.collections.map.HashedMap; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.propertyeditors.StringTrimmerEditor; import org.springframework.stereotype.Service; import cn.ksource.beans.CONFIG_DICTIONARY_INDUSTRY; import cn.ksource.core.dao.BaseDao; import cn.ksource.core.dao.SqlParameter; import cn.ksource.core.util.ConvertUtil; import cn.ksource.core.web.TreeNode; import cn.ksource.web.service.DataDictionaryService; @Service("industryFacade") public class IndustryFacadeImpl implements IndustryFacade { @Autowired private BaseDao baseDao; @Autowired private DataDictionaryService dataDictionaryService; @Override public void delIndustry(String id) { CONFIG_DICTIONARY_INDUSTRY industry = new CONFIG_DICTIONARY_INDUSTRY(id).getInstanceById(); industry.deleteById(); } @Override public Map getIndustryById(String id) { String sql="SELECT * FROM CONFIG_DICTIONARY_INDUSTRY WHERE Id=:id"; Map map = baseDao.queryForMap(sql, new SqlParameter().addValue("id", id)); return map; } @Override public List getIndustryList(String up_id) { String sql = "SELECT * FROM CONFIG_DICTIONARY_INDUSTRY WHERE 1=1" ; if (StringUtils.isNotBlank(up_id) && !up_id.toString().equalsIgnoreCase("0")) { sql += " AND UP_ID=:up_id "; } else { sql += " AND UP_ID IS NULL "; } sql += " ORDER BY SN ASC "; Map paramMap = new HashedMap(); paramMap.put("up_id", up_id); List list = baseDao.queryForList(sql,paramMap); return list; } @Override public Map getIndustryListForPagination(HttpServletRequest request) { String up_id = request.getParameter("up_id"); int pageindex = ConvertUtil.obj2Integer(request.getParameter("page")); //当前页码 int pagesize = ConvertUtil.obj2Integer(request.getParameter("rows")); //每页展示数量 int begin = (pageindex-1)* pagesize ; int end = (pageindex-1)* pagesize + pagesize; int infoCount = getIndustryList(up_id).size();//获取总条数 String sql = "SELECT * FROM CONFIG_DICTIONARY_INDUSTRY WHERE 1=1" ; if (StringUtils.isNotBlank(up_id) && !up_id.toString().equalsIgnoreCase("0")) { sql += " AND UP_ID=:up_id "; } else { sql += " AND UP_ID IS NULL "; } sql += " ORDER BY SN ASC LIMIT :begin,:end"; Map paramMap = new HashedMap(); paramMap.put("up_id", up_id); paramMap.put("begin", begin); paramMap.put("end", end); List list = baseDao.queryForList(sql,paramMap); Map rootMap = new HashMap(); rootMap.put("total", infoCount); //信息总数 rootMap.put("rows", list); return rootMap; } @Override public TreeNode getIndustryTree(String id) { TreeNode root = new TreeNode("0","行业字典"); String sql = "select * from CONFIG_DICTIONARY_INDUSTRY where STATUS=1 "; if (StringUtils.isNotBlank(id)) { sql += " and up_id = :id "; } else { sql += " and level=1 "; } sql += " order by SN asc "; List addressList = baseDao.queryForList(sql, new SqlParameter("id",id)); for (Map map : addressList) { TreeNode tree = new TreeNode(map.get("ID").toString(),map.get("INDUSTRY_NAME").toString()); tree.setIsOpen(false); root.addChild(tree); continue; } return root; } @Override public void saveIndustry(CONFIG_DICTIONARY_INDUSTRY industry) { industry.insertOrUpdate(); } @Override public void updateIndustryStatus(String id, int status) { String sql = "UPDATE CONFIG_DICTIONARY_INDUSTRY SET STATUS = :status WHERE ID = :id"; Map paramMap = new HashMap(); paramMap.put("id", id); paramMap.put("status", status); baseDao.execute(sql, paramMap); } }