10,607
社区成员
发帖
与我相关
我的任务
分享
package com.tyjrailsdata.vehicle.web.vehicle.base;
import java.sql.Date;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
import net.sf.json.JSONArray;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;
import org.springframework.beans.factory.annotation.Autowired;
import AFT.base.entity.security.Department;
import AFT.base.entity.security.UserInfo;
import AFT.base.web.base.vo.BaseQueryData;
import AFT.framework.orm.hibernate.Page;
import AFT.framework.web.struts2.CRUDActionSupport;
import AFT.utils.AOFUtil;
import AFT.utils.SessionManager;
import AFT.utils.UtilFuns;
import com.tyjrailsdata.vehicle.entity.base.CarType;
import com.tyjrailsdata.vehicle.service.base.CarTypeManager;
/**
* @author Administrator 动车情况Action
*/
@ParentPackage("crud-default")
@Results({
@Result(name = "tolist", location = "${ctx}/vehicle/base/cartype!list.action?page.pageNo=${page.pageNo}", type = "redirect"),
@Result(name = "totaskslist", location = "${ctx}/vehicle/base/cartype!list.action?page.pageNo=${page.pageNo}&queryData.schedule=1", type = "redirect") })
public class CartypeAction extends CRUDActionSupport<CarType> {
private static final long serialVersionUID = 1L;
private Long id;
private UserInfo userInfo;
// 现场检查服务注入
@Autowired
private CarTypeManager carTypeManager;
// 现场检查vo
private CarType entity = new CarType();
private Page<CarType> page = new Page<CarType>(10, true);
// 公共查询条件类
private BaseQueryData queryData = new BaseQueryData();
// 部门类
private Department department = new Department();
private Page<Department> depts = new Page<Department>(10, true);
// 回显下拉列表
private Integer state = 0;
// 车型下拉列表
private List<String> listType = new ArrayList<String>();
public List<String> getListType() {
return listType;
}
public void setListType(List<String> listType) {
this.listType = listType;
}
private List<String> getType() {
List<String> listType = new ArrayList<String>();
listType.add("C63");
listType.add("C76");
listType.add("C80");
listType.add("C80H");
listType.add("C80B");
listType.add("C80BH");
listType.add("C80F");
listType.add("C80E");
return listType;
}
@Override
public CarType getModel() {
// TODO Auto-generated method stub
return entity;
}
@Override
public String list() throws Exception {
listType = getType();
if (null != queryData.getStartDateHMS()
|| null != queryData.getEndDateHMS()) {
state++;
}
page = carTypeManager.getObjects(page, entity, queryData);
// 当前页大于分页记录数置1
if (page.getPageNo() > page.getTotalPages()) {
page.setPageNo(1);
}
return LIST;
}
@Override
public String input() throws Exception {
// TODO Auto-generated method stub
listType = getType();
UserInfo userInfo = new UserInfo();
userInfo.setName(SessionManager.getLoginUserName());
entity.setUserInfo(userInfo);
return INPUT;
}
@Override
public String save() throws Exception {
// TODO Auto-generated method stub
Date sqlDate = AOFUtil.getCurrentSqlDate(0);
if (entity.getCreateTime() == null) {
entity.setCreateTime(sqlDate);
}
// 判断如果用户为空,则使用登陆用户保存
if (entity.getUserInfo() != null
&& entity.getUserInfo().getId() != null) {
} else {
UserInfo userInfo = new UserInfo();
userInfo.setId(SessionManager.getLoginUserId());
entity.setUserInfo(userInfo);
}
carTypeManager.save(entity);
if (UtilFuns.isNotEmpty(queryData.getSchedule())) {
return "totaskslist";
} else {
return "tolist";
}
}
@Override
public String update() throws Exception {
entity = carTypeManager.getObjectById(id);
listType = getType();
return INPUT;
}
@Override
public String view() throws Exception {
// TODO Auto-generated method stub
entity = carTypeManager.getObjectById(id);
return VIEW;
}
@Override
public String delete() throws Exception {
// TODO Auto-generated method stub
StringTokenizer delTokens = new StringTokenizer(getAssembleDelId(), ",");
while (delTokens.hasMoreTokens()) {
Long id = Long.valueOf(delTokens.nextToken());
carTypeManager.remove(id);
}
renderText("true");
return null;
}
public String deleteByID() throws Exception {
// TODO Auto-generated method stub
carTypeManager.remove(id);
return list();
}
/**
* 通过deptId来判断用户是否有权限来进行修改
*
* @return
*/
public String updateOperateByAjax() {
CarType carType = carTypeManager
.getObjectById(id);
Long deptId = SessionManager.getDepartmentId();
boolean workState = false;
if (carType != null && carType.getDept() != null) {
if (deptId != null) {
if (deptId.equals(carType.getDept().getId())) {
workState = true;
}
}
}
JSONArray jsonArray = JSONArray.fromObject(workState);
renderTextJSONGBK(jsonArray.toString());
return null;
}
/**
* 通过deptId来判断用户是否有权限来进行删除
*
* @return
*/
public String deloperateByAjax() {
StringTokenizer delTokens = new StringTokenizer(getAssembleDelId(), ",");
Long deptId = SessionManager.getDepartmentId();
boolean workState = true;
while (delTokens.hasMoreTokens()) {
Long id = Long.valueOf(delTokens.nextToken());
CarType carType = carTypeManager
.getObjectById(id);
if (carType != null && carType.getDept() != null) {
if (deptId != null) {
if (!deptId.equals(carType.getDept().getId())) {
workState = false;
break;
}
}
}
}
JSONArray jsonArray = JSONArray.fromObject(workState);
renderTextJSONGBK(jsonArray.toString());
return null;
}
@Override
protected void prepareModel() throws Exception {
// TODO Auto-generated method stub
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public CarType getEntity() {
return entity;
}
public void setEntity(CarType entity) {
this.entity = entity;
}
public Page<CarType> getPage() {
return page;
}
public void setPage(Page<CarType> page) {
this.page = page;
}
public Page<Department> getDepts() {
return depts;
}
public void setDepts(Page<Department> depts) {
this.depts = depts;
}
public Department getDepartment() {
return department;
}
public void setDepartment(Department department) {
this.department = department;
}
public Integer getState() {
return state;
}
public void setState(Integer state) {
this.state = state;
}
public BaseQueryData getQueryData() {
return queryData;
}
public void setQueryData(BaseQueryData queryData) {
this.queryData = queryData;
}
public UserInfo getUserInfo() {
return userInfo;
}
public void setUserInfo(UserInfo userInfo) {
this.userInfo = userInfo;
}
}
package com.tyjrailsdata.vehicle.service.base;
import java.util.List;
import java.util.SortedSet;
import org.hibernate.Criteria;
import org.hibernate.SessionFactory;
import org.hibernate.criterion.MatchMode;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import AFT.base.entity.security.Department;
import AFT.base.web.base.vo.BaseQueryData;
import AFT.framework.orm.hibernate.Page;
import AFT.framework.orm.hibernate.SimpleHibernateTemplate;
import AFT.framework.utils.StrUtils;
import AFT.utils.PermissionsManager;
import AFT.utils.SessionManager;
import AFT.utils.UtilFuns;
import com.tyjrailsdata.vehicle.entity.base.CarType;
@Service
// 默认将类中的所有函数纳入事务管理.
@Transactional
public class CarTypeManager {
private SimpleHibernateTemplate<CarType, Long> dao;
private SimpleHibernateTemplate<Department, Long> deptDao;
@Autowired
private PermissionsManager permissionsManager;
@Autowired
public void setSessionFactory(SessionFactory sessionFactory) {
dao = new SimpleHibernateTemplate<CarType, Long>(sessionFactory,
CarType.class);
deptDao = new SimpleHibernateTemplate<Department, Long>(sessionFactory,
Department.class);
}
public void save(CarType entity) {
//当前部门
Department dept = SessionManager.getLoginUserDept();
entity.setDept(dept);
dao.save(entity);
}
public CarType getCarType(Long id) {
return dao.findUniqueByProperty("carNumber", id);
}
public CarType getCarTypeById(Long id) {
return dao.get(id);
}
public List<CarType> getCarType() {
return dao.findAll();
}
public Page<CarType> getObjects(Page<CarType> page, CarType entity,BaseQueryData queryData) {
Criteria critera = dao.getSession().createCriteria(CarType.class);
critera.createAlias("userInfo", "u");
if(UtilFuns.isNotEmpty(queryData.getStartDateHMS())) {
critera.add(Restrictions.ge("createTime", queryData.getStartDateHMS()));
}
if(UtilFuns.isNotEmpty(queryData.getEndDateHMS())) {
critera.add(Restrictions.le("createTime", queryData.getEndDateHMS()));
}
if(null!=entity.getUserInfo()&&null != entity.getUserInfo().getName() && !"".equals(entity.getUserInfo().getName())){
critera.add(Restrictions.like("u.name", entity.getUserInfo().getName(),MatchMode.ANYWHERE));
}
critera.addOrder(Order.desc("createTime"));
return dao.findByCriteria(page, critera);
}
public List<CarType> getObjectsList(Page<CarType> page, CarType entity,BaseQueryData queryData) {
Criteria critera = dao.getSession().createCriteria(CarType.class);
critera.createAlias("syszd2", "zd2");
critera.createAlias("syszd1", "zd1");
//当前部门ID
Long deptId = SessionManager.getDepartmentId();
//排除session失效、超级用户、管理员情况
if(null != deptId && 1 != deptId) {
SortedSet<Long> dataAuthority = permissionsManager.dataAuthority(deptId, 10250l);
Object[] deptids = dataAuthority.toArray();
critera.add(Restrictions.in("dept.id", UtilFuns.stringToLong(deptids)));
}
critera.addOrder(Order.desc("id"));
return dao.findByCriteria(critera);
}
public Page<Department> getDepts(Page<Department> page, Department entity) {
Criteria critera = deptDao.getSession().createCriteria(Department.class);
critera.add(Restrictions.eq("grade.id", Long.valueOf(102)));
critera.addOrder(Order.asc("createTime"));
if (StrUtils.stringQuery(entity.getName()))
critera.add(Restrictions.like("name",
'%' + StrUtils.removedPercent(entity.getName()) + '%'));
return deptDao.findByCriteria(page, critera);
}
public CarType getObjectById(Long id) {
return dao.get(id);
}
public List<CarType> getObjects() {
Criteria critera = dao.getSession().createCriteria(CarType.class);
critera.addOrder(Order.desc("id"));
return dao.findByCriteria(critera);
}
public List<CarType> getpra() {
Criteria critera = dao.getSession().createCriteria(CarType.class);
return dao.findByCriteria(critera);
}
public void remove(Long id) {
dao.delete(id);
}
}
package com.tyjrailsdata.vehicle.entity.base;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.TableGenerator;
import AFT.base.entity.security.Department;
import AFT.base.entity.security.UserInfo;
@Entity
@Table(name = "VEHICLE_CAR_TYPE")
public class CarType {
private Long Id; // 主键
private String carType;// 车辆类型
private Long carNumber;// 车辆数量
private Date createTime;// 创建时间
// 外键关联
private UserInfo userInfo;// 用户表
private Department dept;// 部门权限
@Id
@TableGenerator(name = "tab_pk", table = "PKS_RMDM", pkColumnName = "G_KEY", pkColumnValue = "VEHICLE_BULLET_TRAIN_INFO", valueColumnName = "G_VALUE", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.TABLE, generator = "tab_pk")
public Date getCreateTime() {
return createTime;
}
public Long getId() {
return Id;
}
public void setId(Long id) {
Id = id;
}
public String getCarType() {
return carType;
}
public void setCarType(String carType) {
this.carType = carType;
}
public Long getCarNumber() {
return carNumber;
}
public void setCarNumber(Long carNumber) {
this.carNumber = carNumber;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
@ManyToOne
@JoinColumn(name="userid")
public UserInfo getUserInfo() {
return userInfo;
}
public void setUserInfo(UserInfo userInfo) {
this.userInfo = userInfo;
}
@ManyToOne
@JoinColumn(name="deptid")
public Department getDept() {
return dept;
}
public void setDept(Department dept) {
this.dept = dept;
}
}