package com.tencent.service.impl; import javax.annotation.Resource; import org.apache.log4j.Logger; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.tencent.dao.IActivityDAO; import com.tencent.dao.IProjectDAO; import com.tencent.dao.IResourceDAO; import com.tencent.dao.impl.ActivityDAOImpl; import com.tencent.dao.impl.ProjectDAOImpl; import com.tencent.dao.impl.UserDAOImpl; import com.tencent.model.Activity; import com.tencent.model.Project; import com.tencent.model.User; import com.tencent.service.IResourceService; public class ResourceServiceImpl extends ServiceImpl<com.tencent.model.Resource> implements IResourceService { public static Logger log = Logger.getLogger(ResourceServiceImpl.class); @Override public com.tencent.model.Resource implementResource(Activity activity, String title) { com.tencent.model.Resource resource = ((IResourceDAO) dao).findByTitle(title); super.dao.update(resource); activity.getResoures().add(resource); ActivityDAOImpl a = new ActivityDAOImpl(); a.update(activity); return resource; } @Override public com.tencent.model.Resource borrowBooks(User user, String title) { com.tencent.model.Resource resource = ((IResourceDAO) dao).findByTitle(title); super.dao.update(resource); user.getResources().add(resource); UserDAOImpl u = new UserDAOImpl(); u.update(user); return resource; } @Override public com.tencent.model.Resource implementResource(Project project, String title) { com.tencent.model.Resource resource = ((IResourceDAO) dao).findByTitle(title); super.dao.update(resource); project.getResources().add(resource); ProjectDAOImpl p = new ProjectDAOImpl(); p.update(project); return resource; } @Override public void returnResource(User user, com.tencent.model.Resource resource) { resource.setStatus(0); super.dao.update(resource); user.getResources().remove(resource); UserDAOImpl u = new UserDAOImpl(); u.update(user); } @Override public void returnResource(Project project, com.tencent.model.Resource resource) { resource.setStatus(0); super.dao.update(resource); project.getResources().remove(resource); IProjectDAO p = new ProjectDAOImpl(); p.update(project); } @Override public void returnResource(Activity activity, com.tencent.model.Resource resource) { resource.setStatus(0); super.dao.update(resource); activity.getResoures().remove(resource); ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext"); IActivityDAO a = (IActivityDAO) ctx.getBean("activityDao"); a.update(activity); } @Override public com.tencent.model.Resource findBytitle(String title) { return ((IResourceDAO) dao).findByTitle(title); } @Resource(name="resourceDao") public void setDao(IResourceDAO dao) { this.dao = dao; } public IResourceDAO getDao(){ return (IResourceDAO) this.dao; } }