cb71162c5fd535964f413d7a73a0df6cc8429605.svn-base 2.95 KB
/**
 * Copyright &copy; 2012-2014 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.reg.service.bus;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.thinkgem.jeesite.common.persistence.Page;
import com.thinkgem.jeesite.common.service.CrudService;
import com.thinkgem.jeesite.common.utils.StringUtils;
import com.thinkgem.jeesite.modules.reg.entity.bus.RegBusSjmain;
import com.thinkgem.jeesite.modules.reg.dao.bus.RegBusSjmainDao;
import com.thinkgem.jeesite.modules.reg.entity.bus.RegBusSjchild;
import com.thinkgem.jeesite.modules.reg.dao.bus.RegBusSjchildDao;

/**
 * 收件信息(主子表)维护Service
 * @author xuyg
 * @version 2015-11-24
 */
@Service
@Transactional(readOnly = true)
public class RegBusSjmainService extends CrudService<RegBusSjmainDao, RegBusSjmain> {

	@Autowired
	private RegBusSjchildDao regBusSjchildDao;
	
	public RegBusSjmain get(String id) {
		RegBusSjmain regBusSjmain = super.get(id);
		regBusSjmain.setRegBusSjchildList(regBusSjchildDao.findList(new RegBusSjchild(regBusSjmain)));
		return regBusSjmain;
	}
	
	public List<RegBusSjmain> findList(RegBusSjmain regBusSjmain) {
		return super.findList(regBusSjmain);
	}
	
	public Page<RegBusSjmain> findPage(Page<RegBusSjmain> page, RegBusSjmain regBusSjmain) {
		return super.findPage(page, regBusSjmain);
	}
	
	@Transactional(readOnly = false)
	public void save(RegBusSjmain regBusSjmain) {
		super.save(regBusSjmain);
		for (RegBusSjchild regBusSjchild : regBusSjmain.getRegBusSjchildList()){
			if (regBusSjchild.getId() == null){
				continue;
			}
			if (RegBusSjchild.DEL_FLAG_NORMAL.equals(regBusSjchild.getDelFlag())){
				if (StringUtils.isBlank(regBusSjchild.getId())){
					regBusSjchild.setMainId(regBusSjmain);
					regBusSjchild.preInsert();
					regBusSjchildDao.insert(regBusSjchild);
				}else{
					regBusSjchild.preUpdate();
					regBusSjchildDao.update(regBusSjchild);
				}
			}else{
				regBusSjchildDao.delete(regBusSjchild);
			}
		}
	}
	
	public void savesjmain(RegBusSjmain regBusSjmain) {
		super.save(regBusSjmain);
	}
	
	public void savesjchild(RegBusSjchild regBusSjchild) {
		if (StringUtils.isBlank(regBusSjchild.getId())){
			regBusSjchild.preInsert();
			regBusSjchildDao.insertsjchild(regBusSjchild);
		}else{
			regBusSjchild.preUpdate();
			regBusSjchildDao.update(regBusSjchild);
		}
	}
	
	@Transactional(readOnly = false)
	public void delete(RegBusSjmain regBusSjmain) {
		super.delete(regBusSjmain);
		regBusSjchildDao.delete(new RegBusSjchild(regBusSjmain));
	}
	
	@Transactional(readOnly = false)
	public void deletesjchild(RegBusSjmain regBusSjmain) {
		regBusSjchildDao.deletesjchild(new RegBusSjchild(regBusSjmain));
	}
	
	public  List<RegBusSjchild> findlistsjchild(RegBusSjchild regBusSjchild) {
		return regBusSjchildDao.findList(regBusSjchild);
	}
}