⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 serviceorderdaoimpl.java

📁 基于Sturts+Spring+Hibernate的一个高级销售管理系统。内容丰富
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
		return serviceOrderList;
	}
	
	// 通过状态和显示条数取得服务单个数
	public int getServiceOrderCount(int userId,String userIds, Set<UserFilter> userFilterSet) {
		int count = 0;
		StringBuffer hql = new StringBuffer(
				"select count(*) from ServiceOrder as so where 1=1 and (so.engineer.id in ("
						+ userIds + ") or so.engineer.id = null or so.createrId = "+userId+")");
		this.copyFilter(hql, userFilterSet);
		hql.append(" order By so.createTime");
		logger.debug("打印hql语句:" + hql);
		try {
			Query query = super.getSession().createQuery(hql.toString());
			List list = query.list();
			Object o = (Object)list.get(0);
			logger.debug("sssss"+o.toString());
			count = Integer.parseInt(o.toString());
		} catch (RuntimeException re) {
			log.error("find by property name failed", re);
			throw re;
		}
		return count;
	}

	// 通过过滤条件搜索服务单
	public List<ServiceOrder> searchServiceOrder(int userId,String userIds,
			Set<UserFilter> userFilterSet, String path, int currentPage,
			int rowsPerPage) {
		List<ServiceOrder> serviceOrderList = null;
		StringBuffer hql = new StringBuffer(
				"from ServiceOrder as so where 1=1 and (so.engineer.id in ("
						+ userIds + ") or so.engineer.id = null or so.createrId = "+userId+")");
		this.copyFilter(hql, userFilterSet);
		logger.debug("搜索的hql======" + hql.toString());
		try {
			Query query = super.getSession().createQuery(hql.toString());
			query.setFirstResult((currentPage - 1) * rowsPerPage);
			query.setMaxResults(rowsPerPage);
			serviceOrderList = query.list();
		} catch (RuntimeException re) {
			log.error("find by property name failed", re);
			throw re;
		}
		return serviceOrderList;
	}
	// 通过过滤条件搜索服务单个数
	public int searchServiceOrderCount(int userId,String userIds,
			Set<UserFilter> userFilterSet) {
		int count = 0;
		StringBuffer hql = new StringBuffer(
				"select count(*) from ServiceOrder as so where 1=1 and (so.engineer.id in ("
						+ userIds + ") or so.engineer.id = null or so.createrId = "+userId+")");
		this.copyFilter(hql, userFilterSet);
		logger.debug("搜索的hql======" + hql.toString());
		try {
			Query query = super.getSession().createQuery(hql.toString());
			List list = query.list();
			Object o = (Object)list.get(0);
			count = Integer.parseInt(o.toString());
		} catch (RuntimeException re) {
			log.error("find by property name failed", re);
			throw re;
		}
		return count;
	}



	// 保存处理过程
	public void saveProcessCource(ProcessCource processCource) {
		log.debug("saving processCource instance");
		try {
			getHibernateTemplate().save(processCource);
		} catch (RuntimeException re) {
			log.error("save failed", re);
			throw re;
		}
	}

	// 更新处理过程
	public void updateProcessCource(ProcessCource processCource) {
		log.debug("saving processCource instance");
		try {
			getHibernateTemplate().saveOrUpdate(processCource);
		} catch (RuntimeException re) {
			log.error("update failed", re);
			throw re;
		}
	}

	// 通过ID查找附件
	public ServiceOrderFile getSOFileById(int soFileId) {
		try {
			return (ServiceOrderFile) getHibernateTemplate().get(
					"com.yuanchung.sales.model.service.ServiceOrderFile",
					soFileId);
		} catch (RuntimeException re) {
			log.error("update failed", re);
			throw re;
		}
	}

	// 通过ID删除附件
	public void deleteSOFileById(int soFileId) {
		try {
			getHibernateTemplate().delete(getSOFileById(soFileId));
		} catch (RuntimeException re) {
			log.error("delete failed", re);
			throw re;
		}
	}
	
	
	//***************************************自定义搜索选项调用的方法********************************************//
	// 保存服务单自定义选项
	public void saveUserDefined(UserDefined userDefined) {
		try {
			getHibernateTemplate().save(userDefined);
			log.debug("attach successful");
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}
	
	// 更新服务单自定义选项
	public void updateUserDefined(UserDefined userDefined) {
		try {
			getHibernateTemplate().saveOrUpdate(userDefined);
			log.debug("attach successful");
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}

	// 保存服务单文件
	public void saveSOFile(ServiceOrderFile soFile) {
		try {
			getHibernateTemplate().save(soFile);
			log.debug("attach successful");
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}

	// 保存服务单自定义选项
	public void saveUserFilter(UserFilter userFilter) {
		try {
			getHibernateTemplate().save(userFilter);
			log.debug("attach successful");
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}

	// 保存服务单自定义选项
	public void saveUserField(UserField userField) {
		try {
			getHibernateTemplate().save(userField);
			log.debug("attach successful");
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}

	// 获取服务单自定义选项
	public List getUserDefined(int type, User user) {
		try {
			String queryString = "from UserDefined as ud where ud.type=" + type
					+ " and ud.user=?";
			return getHibernateTemplate().find(queryString, user);
		} catch (RuntimeException re) {
			log.error("find by property name failed", re);
			throw re;
		}
	}

	// 通过ID取得服务单自定义选 项
	public UserDefined getUserDefinedById(int userDefinedId) {
		try {
			return (UserDefined) getHibernateTemplate().get(
					"com.yuanchung.sales.model.userDefined.UserDefined",
					userDefinedId);
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}

	// 根据选项查找服务单过滤条件
	public List getServiceOrderUserFilter(UserDefined userDefined)
			throws DataAccessException {
		try {
			return getHibernateTemplate()
					.find("from UserFilter as uf where uf.userDefined=?",
							userDefined);
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}

	// 根据选项搜索显示服务单字段
	public UserField getServiceOrderUserField(UserDefined userDefined)
			throws DataAccessException {
		UserField userField = null;
		List<UserField> userFieldList = null;
		try {
			userFieldList = getHibernateTemplate().find(
					"from UserField as uf where uf.userDefined=?", userDefined);
			if (userFieldList.size() > 0) {
				userField = userFieldList.get(0);
			}
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
		return userField;
	}

	// 修改服务单自定义选项
	public void modifySOUserDefined(UserDefined soUserDefined) {
		try {
			getHibernateTemplate().saveOrUpdate(soUserDefined);
			log.debug("attach successful");
		} catch (RuntimeException re) {
			log.error("attach failed", re);
			throw re;
		}
	}

	// 取得用户定义的默认显示选项
	public UserDefined getUserDefinedOption(int isDefined, User user) {
		UserDefined userDefined = null;
		String queryString = "from UserDefined as ud where ud.isDefined="
				+ isDefined + " and ud.user=?";
		List<UserDefined> userDefinedList = null;
		try {
			userDefinedList = getHibernateTemplate().find(queryString, user);
			if (userDefinedList.size() > 0) {
				userDefined = userDefinedList.get(0);
			}
		} catch (RuntimeException re) {
			log.error("get failed", re);
			throw re;
		}
		return userDefined;
	}

	// 通地userDefinedId删除所有userFilter
	public void deleteAllUserFilter(int userDefinedId) {
		String hql = "delete UserFilter as uf where uf.userDefined.id = "+userDefinedId;
		try {
			Query query = super.getSession().createQuery(hql);
			query.executeUpdate();
			log.debug("delete successful");
		} catch (RuntimeException re) {
			log.error("delete failed", re);
			throw re;
		}
	}
	
	// 通地userDefinedId删除所有userField
	public void deleteAllUserField(int userDefinedId) {
		String hql = "delete UserField as uf where uf.userDefined.id = "+userDefinedId;
		try {
			Query query = super.getSession().createQuery(hql);
			query.executeUpdate();
			log.debug("delete successful");
		} catch (RuntimeException re) {
			log.error("delete failed", re);
			throw re;
		}
	}
	
	public void copyFilter(StringBuffer hql, Set<UserFilter> userFilterSet) {
		Iterator<UserFilter> ufIterator = userFilterSet.iterator();
		while (ufIterator.hasNext()) {
			UserFilter userFilter = ufIterator.next();
			logger.debug("过滤名是:" + userFilter.getFilterName()
					+ userFilter.getOperator() + userFilter.getFilterValue());
			if (userFilter.getFilterName().equals(
					StringTool.getSOFieldName("1"))) {
				logger.debug(userFilter.getFilterName());
				hql.append(" and so." + StringTool.getSOFieldName("1") + " "
						+ userFilter.getOperator() + " "
						+ userFilter.getFilterValue());
			} else if (userFilter.getFilterName().equals(
					StringTool.getSOFieldName("2"))) {
				hql.append(" and so." + StringTool.getSOFieldName("2") + " "
						+ userFilter.getOperator() + " "
						+ userFilter.getFilterValue());
			} else if (userFilter.getFilterName().equals(
					StringTool.getSOFieldName("3"))) {
				hql.append(" and so." + StringTool.getSOFieldName("3") + " "
						+ userFilter.getOperator() + " "
						+ userFilter.getFilterValue());
			} else if (userFilter.getFilterName().equals(
					StringTool.getSOFieldName("4"))) {
				hql.append(" and so." + StringTool.getSOFieldName("4") + " "
						+ userFilter.getOperator() + " "
						+ userFilter.getFilterValue());
			} else if (userFilter.getFilterName().equals(
					StringTool.getSOFieldName("5"))) {
				hql.append(" and so." + StringTool.getSOFieldName("5") + " "
						+ userFilter.getOperator() + " "
						+ userFilter.getFilterValue());
			} else if (userFilter.getFilterName().equals(
					StringTool.getSOFieldName("6"))) {
				hql.append(" and so.customer." + StringTool.getSOFieldName("6")
						+ " " + userFilter.getOperator() + " "
						+ userFilter.getFilterValue());
			} else if (userFilter.getFilterName().equals(
					StringTool.getSOFieldName("7"))) {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -