StudentBusinessImpl.java 3.88 KB
Newer Older
罗绍泽 committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
package com.gaowj.business.student;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;

import org.apache.commons.lang.StringUtils;
import org.apache.ibatis.session.RowBounds;

import com.gaowj.business.StudentBusiness;
import com.gaowj.business.exception.BusinessException;
import com.gaowj.business.util.Page;
import com.gaowj.business.util.SessionUtil;
import com.gaowj.standard.utils.CacheKit;

public class StudentBusinessImpl implements StudentBusiness {
	
	private studentDAO studentDAO;

	public studentDAO getStudentDAO() {
		return studentDAO;
	}

	public void setStudentDAO(studentDAO studentDAO) {
		this.studentDAO = studentDAO;
	}

	@Override
	public void insert_student(Map<String, Object> entity) throws BusinessException {
		if(entity.get("UUID")==null){
			entity.put("UUID", java.util.UUID.randomUUID().toString());
		}
		if(entity.get("CREATE_TIME")==null){
			entity.put("CREATE_TIME", new Date());
		}
		if(entity.get("STATUS")==null){
			entity.put("STATUS", "0");
		}
		if(entity.get("CREATE_ID")==null){
			entity.put("CREATE_ID", SessionUtil.getCode());
		}
//		if(entity.get("SAVEDAYS")==null){
//			String ls_savedays = PropUtil.getValue("set_savedays", "quartz_service", "14");
//			entity.put("SAVEDAYS", Integer.parseInt(ls_savedays));
//		}
		//动态传值插入
		List<String> infoListKey = new ArrayList<String>();
        List<Object> infoList = new ArrayList<Object>();
        if(entity.keySet()!=null){
          Set<String> key  = entity.keySet();
          // 将map集合中的key和value 取出来分别放到list集合里
          for (String str : key) {
            infoList.add(entity.get(str));
            infoListKey.add(str);
          }
          entity.put("infoListKey", infoListKey);
          entity.put("infoList", infoList);
          // 插入
          studentDAO.insert_student(entity);
        }
	}

	@Override
	public void update_student(Map<String, Object> entity) throws BusinessException {
		//动态传值修改
		List<Map<String, Object>> updateList = new ArrayList<Map<String, Object>>();
		if(entity.keySet()!=null){
			Set<String> key = entity.keySet();
            // 将map集合中的key和value 取出来分别放到list集合里
		    for (String str : key) {
			   Map<String, Object> updateMap = new HashMap<String, Object>();
			   if (StringUtils.equalsIgnoreCase("UUID",str)) continue;
			   updateMap.put("key", str);
			   updateMap.put("value", entity.get(str));

			   updateList.add(updateMap);
		    }
		    entity.put("info", updateList);
            //
		    studentDAO.update_student(entity);
		}

	}

	@Override
	public void delete_student(List<String> list) throws BusinessException {
		studentDAO.delete_student(list);
		
	}

	@Override
	public Page<Map<String, Object>> list_student(int pageNo, int pageSize,Map<String, Object> query) throws BusinessException {
		//计算起始记录
  		int pageStart = (pageNo - 1) * pageSize;
  		
  		//获取列表
  		List<Map<String, Object>> items = studentDAO.list_student(new RowBounds(pageStart, pageSize), query);
  		//获取列表个数
  		int count = listCount_student(query);
  		
  		//创建分页对象
  		Page<Map<String, Object>> page = new Page<Map<String, Object>>();
  		page.setStart(pageStart);
  		page.setLimit(pageSize);
  		page.setCount(count);
  		page.setItems(items);

  		return page;
	}

	@Override
	public List<Map<String, Object>> list_student(Map<String, Object> query) throws BusinessException {
		List<Map<String, Object>> list_data = CacheKit.get("ehcache10", "student"+query);
		if(list_data==null || list_data.size()==0){
			list_data=studentDAO.list_student(query);
			CacheKit.put("ehcache10", "student"+query, list_data);
		}
		return list_data;
	}

	@Override
	public int listCount_student(Map<String, Object> query) throws BusinessException {
		return studentDAO.listCount_student(query);
	}

}