Commit 73e9b29b authored by liuyang's avatar liuyang

Merge branch 'master' of http://192.168.10.120:8080/other-project/tjmdp

# Conflicts:
#	src/main/java/com/qiankun/service/ActivityService.java
parents 3f62affd 005579a2
...@@ -3,6 +3,7 @@ package com.qiankun.controller; ...@@ -3,6 +3,7 @@ package com.qiankun.controller;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
...@@ -21,11 +22,10 @@ import com.qiankun.annotation.Auth; ...@@ -21,11 +22,10 @@ import com.qiankun.annotation.Auth;
import com.qiankun.controller.base.BaseController; import com.qiankun.controller.base.BaseController;
import com.qiankun.dao.core.Hints; import com.qiankun.dao.core.Hints;
import com.qiankun.entity.Activity; import com.qiankun.entity.Activity;
import com.qiankun.entity.User; import com.qiankun.entity.ActivityType;
import com.qiankun.pages.IPageList; import com.qiankun.pages.IPageList;
import com.qiankun.service.ActivityService; import com.qiankun.service.ActivityService;
import com.qiankun.vo.ActivityVo; import com.qiankun.vo.ActivityVo;
import com.qiankun.vo.UserVo;
@Controller @Controller
public class ActivityController extends BaseController<Object>{ public class ActivityController extends BaseController<Object>{
...@@ -33,6 +33,34 @@ public class ActivityController extends BaseController<Object>{ ...@@ -33,6 +33,34 @@ public class ActivityController extends BaseController<Object>{
@Autowired @Autowired
private ActivityService activityService; private ActivityService activityService;
@Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/wx/api/activity/list", method = RequestMethod.POST)
public @ResponseBody Map<String, Object> listformWX(@RequestBody ActivityVo activityVo, HttpServletResponse response, HttpServletRequest request) throws Exception {
IPageList<Activity> userPage = activityService.findByActivitys(activityVo.getSearchStr(), activityVo.getType(), activityVo.getOrder(), activityVo.getSort(),
new Hints(getStartRow(request), getPageCount(request)));
Map<String, Object> map = new HashMap<>();
map.put("activityData", userPage);
map.put("pageCount", getPageCount(request));
map.put("pageNumber", getPageNumber(request));
map.put("activityVo", activityVo);
return map;
}
@Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/wx/api/activity", method = RequestMethod.POST)
public @ResponseBody Activity entityformWX(@RequestBody ActivityVo activityVo, HttpServletResponse response, HttpServletRequest request) throws Exception {
Activity activity = activityService.findById(activityVo.getId());
return activity;
}
@Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/wx/api/activity/type/list", method = RequestMethod.GET)
public @ResponseBody List<ActivityType> typesformWX(HttpServletResponse response, HttpServletRequest request) throws Exception {
return activityService.findActivitysTypes();
}
@RequestMapping("/activity/list") @RequestMapping("/activity/list")
public ModelAndView list(ActivityVo activityVo, HttpServletResponse response, HttpServletRequest request) throws Exception { public ModelAndView list(ActivityVo activityVo, HttpServletResponse response, HttpServletRequest request) throws Exception {
ModelAndView view = new ModelAndView(); ModelAndView view = new ModelAndView();
...@@ -49,8 +77,30 @@ public class ActivityController extends BaseController<Object>{ ...@@ -49,8 +77,30 @@ public class ActivityController extends BaseController<Object>{
return view; return view;
} }
@RequestMapping("/activity/type/list")
public ModelAndView typelist(HttpServletResponse response, HttpServletRequest request) throws Exception {
ModelAndView view = new ModelAndView();
view.getModelMap().addAttribute("typelist", activityService.findActivitysTypes());
view.setViewName("activity/typelist");
return view;
}
@RequestMapping("/activity/type/add")
public ModelAndView typeAdd(String id) throws Exception {
ModelAndView view = new ModelAndView();
Activity activity = new Activity();
if(StringUtils.isNotBlank(id)) {
activity = activityService.findById(id);
}
view.setViewName("activity/saveactivity");
view.getModel().put("activity", activity);
return view;
}
@RequestMapping("/activity/add") @RequestMapping("/activity/add")
public ModelAndView userAdd(String id) throws Exception { public ModelAndView activityAdd(String id) throws Exception {
ModelAndView view = new ModelAndView(); ModelAndView view = new ModelAndView();
Activity activity = new Activity(); Activity activity = new Activity();
if(StringUtils.isNotBlank(id)) { if(StringUtils.isNotBlank(id)) {
...@@ -62,6 +112,15 @@ public class ActivityController extends BaseController<Object>{ ...@@ -62,6 +112,15 @@ public class ActivityController extends BaseController<Object>{
return view; return view;
} }
@RequestMapping("/api/activity/type/save")
public void saveType(String id, String name, HttpServletResponse response, HttpServletRequest request) throws Exception {
ActivityType type = new ActivityType();
type.setName(name);
type.setId(id);
activityService.saveType(type);
}
@Auth(verifyLogin = false,verifyURL = false) @Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/wx/api/activity/save",method = RequestMethod.POST) @RequestMapping(value = "/wx/api/activity/save",method = RequestMethod.POST)
public @ResponseBody Map<String,Object> saveUserFormWX(@RequestBody ActivityVo activityVo, HttpServletResponse response, HttpServletRequest request) throws Exception{ public @ResponseBody Map<String,Object> saveUserFormWX(@RequestBody ActivityVo activityVo, HttpServletResponse response, HttpServletRequest request) throws Exception{
...@@ -94,7 +153,7 @@ public class ActivityController extends BaseController<Object>{ ...@@ -94,7 +153,7 @@ public class ActivityController extends BaseController<Object>{
activity.setMax(activityVo.getMax()); activity.setMax(activityVo.getMax());
activity.setName(activityVo.getName()); activity.setName(activityVo.getName());
activity.setTel(activityVo.getTel()); activity.setTel(activityVo.getTel());
activity.setType(activityVo.getType()); //activity.setType(activityVo.getType());
Activity a = activityService.save(activity); Activity a = activityService.save(activity);
......
...@@ -120,7 +120,7 @@ public class UserController extends BaseController<Object>{ ...@@ -120,7 +120,7 @@ public class UserController extends BaseController<Object>{
@Auth(verifyLogin = false,verifyURL = false) @Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/wx/api/user/save",method = RequestMethod.POST) @RequestMapping(value = "/wx/api/user/save",method = RequestMethod.POST)
public @ResponseBody Map<String,Object> saveUserFormWX(@RequestBody UserVo userVo, HttpServletResponse response, HttpServletRequest request) throws Exception{ public @ResponseBody Map<String,Object> saveUserformWX(@RequestBody UserVo userVo, HttpServletResponse response, HttpServletRequest request) throws Exception{
return this.saveUser(userVo, response, request); return this.saveUser(userVo, response, request);
} }
......
package com.qiankun.dao;
import com.qiankun.dao.core.IDao;
import com.qiankun.entity.ActivityType;
public interface ActivityTypeDao extends IDao<ActivityType, String> {
}
package com.qiankun.dao;
import org.springframework.stereotype.Repository;
import com.qiankun.dao.core.AbsDao;
import com.qiankun.entity.ActivityType;
@Repository
public class ActivityTypeDaoImpl extends AbsDao<ActivityType, String> implements ActivityTypeDao {
}
...@@ -64,7 +64,6 @@ public class UserDaoImpl extends AbsDao<User, String> implements UserDao { ...@@ -64,7 +64,6 @@ public class UserDaoImpl extends AbsDao<User, String> implements UserDao {
@Override @Override
public IPageList<User> findUserPage(String searchStr, String role, String order, String sort, Hints hints) { public IPageList<User> findUserPage(String searchStr, String role, String order, String sort, Hints hints) {
if (order == null){ if (order == null){
order = " createTime "; order = " createTime ";
} }
......
...@@ -12,6 +12,7 @@ import org.hibernate.Query; ...@@ -12,6 +12,7 @@ import org.hibernate.Query;
import org.hibernate.SQLQuery; import org.hibernate.SQLQuery;
import org.hibernate.Session; import org.hibernate.Session;
import org.hibernate.SessionFactory; import org.hibernate.SessionFactory;
import org.hibernate.criterion.CriteriaSpecification;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
public class AbsDao<E, K extends Serializable> implements IDao<E, K> { public class AbsDao<E, K extends Serializable> implements IDao<E, K> {
...@@ -183,4 +184,14 @@ public class AbsDao<E, K extends Serializable> implements IDao<E, K> { ...@@ -183,4 +184,14 @@ public class AbsDao<E, K extends Serializable> implements IDao<E, K> {
query.executeUpdate(); query.executeUpdate();
} }
public List<E> excuteBySqlReturnList(String sql, final Hints hints) {
SQLQuery query = this.getSession().createSQLQuery(sql);
query.setResultTransformer(CriteriaSpecification.ALIAS_TO_ENTITY_MAP);
if (hints.getOffset() > 0)
query.setFirstResult(hints.getOffset());
if (hints.getLength() > 0)
query.setMaxResults(hints.getLength());
return query.list();
}
} }
...@@ -12,8 +12,6 @@ import javax.persistence.Id; ...@@ -12,8 +12,6 @@ import javax.persistence.Id;
import javax.persistence.Inheritance; import javax.persistence.Inheritance;
import javax.persistence.InheritanceType; import javax.persistence.InheritanceType;
import javax.persistence.Lob; import javax.persistence.Lob;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import org.hibernate.annotations.Cache; import org.hibernate.annotations.Cache;
...@@ -34,7 +32,10 @@ public class Activity { ...@@ -34,7 +32,10 @@ public class Activity {
private String name; //活动名称 private String name; //活动名称
private String type; //活动类型 1.采血 2.公益 3.彩虹 // @ManyToOne
// private ActivityType type = new ActivityType(); //活动类型
private String type; //活动类型
@Lob @Lob
private String addr; //地点 private String addr; //地点
......
package com.qiankun.entity;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.OneToMany;
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
import org.hibernate.annotations.GenericGenerator;
import com.fasterxml.jackson.annotation.JsonIgnore;
@Entity
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public class ActivityType {
@Id
@GenericGenerator(name = "systemUUID", strategy = "uuid2")
@GeneratedValue(generator = "systemUUID")
private String id;
private String name; //类别名称
// @OneToMany(fetch = FetchType.LAZY, cascade = { CascadeType.ALL}, orphanRemoval = true, mappedBy = "type")
// @JsonIgnore
// private Set<Activity> activity = new HashSet<Activity>();
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
// public Set<Activity> getActivity() {
// return activity;
// }
//
//
// public void setActivity(Set<Activity> activity) {
// this.activity = activity;
// }
//
}
...@@ -68,7 +68,7 @@ public class User { ...@@ -68,7 +68,7 @@ public class User {
private String pwd; //密码 private String pwd; //密码
private String role; //角色 1.管理员 2.志愿者 private String role; //角色 1.管理员 2.志愿者
private String status; //状态 0.未采血 1.已采血 private String status; //状态 0.未采血 1.已采血 2退库 3 再次采血
private Date createTime = new Date(); private Date createTime = new Date();
private Date updateTime = new Date(); private Date updateTime = new Date();
......
package com.qiankun.service; package com.qiankun.service;
import com.google.common.collect.Collections2;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.qiankun.dao.ActivityDao; import com.qiankun.dao.ActivityDao;
import com.qiankun.dao.ActivityTypeDao;
import com.qiankun.dao.core.Hints; import com.qiankun.dao.core.Hints;
import com.qiankun.entity.Activity; import com.qiankun.entity.Activity;
import com.qiankun.entity.ActivityType;
import com.qiankun.pages.IPageList; import com.qiankun.pages.IPageList;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collections;
import java.util.List; import java.util.List;
@Service @Service
...@@ -20,6 +19,9 @@ public class ActivityService { ...@@ -20,6 +19,9 @@ public class ActivityService {
@Autowired @Autowired
private ActivityDao activityDao; private ActivityDao activityDao;
@Autowired
private ActivityTypeDao activityTypeDao;
public Activity findById(String id) { public Activity findById(String id) {
Activity activity = activityDao.find(id); Activity activity = activityDao.find(id);
return activity; return activity;
...@@ -41,6 +43,7 @@ public class ActivityService { ...@@ -41,6 +43,7 @@ public class ActivityService {
return activitys; return activitys;
} }
public Activity findByAavailableAndType(String type) { public Activity findByAavailableAndType(String type) {
List<Activity> activities = activityDao.findByAvailableAndType(type); List<Activity> activities = activityDao.findByAvailableAndType(type);
if (!CollectionUtils.isEmpty(activities)){ if (!CollectionUtils.isEmpty(activities)){
...@@ -48,4 +51,26 @@ public class ActivityService { ...@@ -48,4 +51,26 @@ public class ActivityService {
} }
return null; return null;
} }
@Transactional
public ActivityType saveType(ActivityType type) {
return activityTypeDao.save(type);
}
@Transactional
public void removeType(String id) {
activityTypeDao.remove(id);
}
public List<ActivityType> findActivitysTypes(){
return activityTypeDao.findAll();
}
public ActivityType findTypeById(String id) {
ActivityType type = activityTypeDao.find(id);
return type;
}
} }
...@@ -238,11 +238,11 @@ ...@@ -238,11 +238,11 @@
</li> </li>
<li> <li>
<a href="#" class="dropdown-toggle"> <a href="<webpath:path/>/activity/list" class="">
<i class="icon-group"></i> <i class="icon-group"></i>
<span class="menu-text"> 活动管理 </span> <span class="menu-text"> 活动管理 </span>
<b class="arrow icon-angle-down"></b> <!-- <b class="arrow icon-angle-down"></b> -->
</a> </a>
<ul class="submenu"> <ul class="submenu">
......
...@@ -42,14 +42,11 @@ ...@@ -42,14 +42,11 @@
禁用 禁用
</button> </button>
<button class="btn btn-sm btn-danger">
<i class="icon-trash bigger-110"></i>
删除
</button>
</div> </div>
</div> </div>
<div class="pull-left">共条</div> <div class="pull-left">共${activityPage.recordTotal}条</div>
<table id="table-data" class="table table-bordered "> <table id="table-data" class="table table-bordered ">
<thead> <thead>
<tr class=""> <tr class="">
...@@ -59,15 +56,16 @@ ...@@ -59,15 +56,16 @@
<span class="lbl"></span> <span class="lbl"></span>
</label> </label>
</th> </th>
<th>活动名称</th> <th width="8%">活动名称</th>
<th>活动类型</th> <th width="8%">活动类型</th>
<th>活动地址</th> <th width="">活动地址</th>
<th>活动时间</th> <th width="8%">活动时间</th>
<th>最大人数</th> <th width="8%">最大人数</th>
<th>适用人群</th> <th width="8%">适用人群</th>
<th>联系人</th> <th width="8%">联系人</th>
<th>联系电话</th> <th width="8%">联系电话</th>
<th class="hidden-480">状态</th> <th width="8%" class="">状态</th>
<th width="8%" class="">发布时间</th>
<th width="100">操作</th> <th width="100">操作</th>
</tr> </tr>
...@@ -85,7 +83,12 @@ ...@@ -85,7 +83,12 @@
</td> </td>
<td title="">${activity.name}</td> <td title="">${activity.name}</td>
<td title="">${activity.type}</td> <td title="">
<c:if test="${activity.type==1}">采血</c:if>
<c:if test="${activity.type==2}">公益</c:if>
<c:if test="${activity.type==3}">彩虹</c:if>
<c:if test="${activity.type==4}">其他</c:if>
</td>
<td title="">${activity.addr}</td> <td title="">${activity.addr}</td>
<td title=""><fmt:formatDate value='${activity.day}' pattern='yyyy-MM-dd HH:mm' /></td> <td title=""><fmt:formatDate value='${activity.day}' pattern='yyyy-MM-dd HH:mm' /></td>
<td title="">${activity.max}</td> <td title="">${activity.max}</td>
...@@ -93,7 +96,7 @@ ...@@ -93,7 +96,7 @@
<td title="">${activity.contacts}</td> <td title="">${activity.contacts}</td>
<td title="">${activity.tel}</td> <td title="">${activity.tel}</td>
<td title=""> <c:if test="${activity.available}"><font color=green>正常</font></c:if><c:if test="${!activity.available}"><font color=red>关闭</font></c:if></td> <td title=""> <c:if test="${activity.available}"><font color=green>正常</font></c:if><c:if test="${!activity.available}"><font color=red>关闭</font></c:if></td>
<td title=""><fmt:formatDate value='${activity.createTime}' pattern='yyyy-MM-dd HH:mm' /></td>
<td> <td>
<div class="visible-md visible-lg hidden-sm hidden-xs btn-group"> <div class="visible-md visible-lg hidden-sm hidden-xs btn-group">
......
...@@ -50,6 +50,7 @@ ...@@ -50,6 +50,7 @@
<option value="1" <c:if test="${activity.type==1}">selected</c:if>>采血</option> <option value="1" <c:if test="${activity.type==1}">selected</c:if>>采血</option>
<option value="2" <c:if test="${activity.type==2}">selected</c:if>>公益</option> <option value="2" <c:if test="${activity.type==2}">selected</c:if>>公益</option>
<option value="3" <c:if test="${activity.type==3}">selected</c:if>>彩虹</option> <option value="3" <c:if test="${activity.type==3}">selected</c:if>>彩虹</option>
<option value="4" <c:if test="${activity.type==4}">selected</c:if>>其他</option>
</select> </select>
</div> </div>
...@@ -171,10 +172,10 @@ ...@@ -171,10 +172,10 @@
</button> </button>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
<button class="btn btn-sm btn-success"> <a class="btn btn-sm btn-success" href="javascript:history.go(-1)">
<i class="icon-reply bigger-110"></i> <i class="icon-reply bigger-110"></i>
返回 返回
</button> </a>
</div> </div>
......
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="webpath" uri="/WEB-INF/tlds/path.tld"%>
<%@ taglib prefix="webpage" uri="/WEB-INF/tlds/pageview.tld"%>
<head>
</head>
<div class="main-content">
<div class="breadcrumbs" id="breadcrumbs">
<ul class="breadcrumb">
<li>
<i class="icon-home home-icon"></i>
<a href="#">首页</a>
</li>
<li class="active">活动管理</li>
<li class="active">活动类别</li>
</ul><!-- .breadcrumb -->
</div>
<div class="page-content">
<div class="row">
<div class="col-xs-12">
<div class="widget-toolbox">
<div class="btn-group">
<button class="btn btn-sm btn-success" onclick="">
<i class="icon-plus-sign-alt bigger-110"></i>
新增
</button>
</div>
</div>
<div class="pull-left">共条</div>
<table id="table-data" class="table table-bordered ">
<thead>
<tr class="">
<th class="center">
<label>
<input type="checkbox" class="ace">
<span class="lbl"></span>
</label>
</th>
<th>活动类别名称</th>
<th width="100">操作</th>
</tr>
</thead>
<tbody>
<c:forEach var="activity" items="${typelist}">
<tr class="tr-highlight">
<td class="center" width=10>
<label>
<input type="checkbox" class="ace">
<span class="lbl"></span>
</label>
</td>
<td title="">${activity.name}</td>
<td title="">${activity.type}</td>
<td title="">${activity.addr}</td>
<td title=""><fmt:formatDate value='${activity.day}' pattern='yyyy-MM-dd HH:mm' /></td>
<td title="">${activity.max}</td>
<td title="">${activity.crowd}</td>
<td title="">${activity.contacts}</td>
<td title="">${activity.tel}</td>
<td title=""> <c:if test="${activity.available}"><font color=green>正常</font></c:if><c:if test="${!activity.available}"><font color=red>关闭</font></c:if></td>
<td>
<div class="visible-md visible-lg hidden-sm hidden-xs btn-group">
<button class="btn btn-xs btn-info" onclick="window.location.href='<webpath:path/>/activity/add?id=${activity.id}'">
<i class="icon-edit bigger-120"></i>
</button>
&nbsp;
<button class="btn btn-xs btn-danger">
<i class="icon-trash bigger-120"></i>
</button>
</div>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
</div>
</div>
...@@ -504,10 +504,10 @@ ...@@ -504,10 +504,10 @@
</button> </button>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
<button class="btn btn-sm btn-success"> <a class="btn btn-sm btn-success" href="javascript:history.go(-1)">
<i class="icon-reply bigger-110"></i> <i class="icon-reply bigger-110"></i>
返回 返回
</button> </a>
</div> </div>
......
...@@ -46,6 +46,17 @@ ...@@ -46,6 +46,17 @@
<i class="icon-trash bigger-110"></i> <i class="icon-trash bigger-110"></i>
删除 删除
</button> </button>
</div>
<div class="nav-search" id="nav-search">
<form class="form-search">
<span class="input-icon">
<input type="text" placeholder="查询" class="nav-search-input" id="searchStr" autocomplete="off">
<i class="icon-search nav-search-icon"></i>
</span>
</form>
</div> </div>
</div> </div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment