HTML:
addCompany.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<html>
<base href="<%=basePath%>">
<head>
<title>编辑客户公司信息</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<script type="text/javascript" src="commons/javascript/jquery.js"></script>
<script type="text/javascript" src="commons/javascript/showTip.js"></script>
<script type="text/javascript">
$(document).ready(function(){
document.getElementById("btnAdd").disabled=true;
/*document.getElementById("btnUpdate").disabled=true;*/
});
$(function(){
$("#cityId").val($("#ct").val());
$("#area_Id").val($("#ar").val());
var isAdd=$("#isAdd").val();
if(isAdd==1)
{
$("#btnAdd").show();
$("#btnUpdate").hide();
}else if(isAdd==2)
{
$("#btnAdd").hide();
$("#btnUpdate").show();
}
});
function requiredField(myId,errorMessage)
{
document.getElementById("btnAdd").disabled=true;
document.getElementById("btnUpdate").disabled=true;
if(document.getElementById(myId).value == ""||document.getElementById(myId).value == "0")
{
window.alert(errorMessage);
document.getElementById(myId).focus();
return false;
}
document.getElementById("btnAdd").disabled=false;
document.getElementById("btnUpdate").disabled=false;
return true;
}
function validateForm(){
requiredField("companyName","公司名称不能为空!");
requiredField("phone1","至少要填写一个电话号码!");
requiredField("address","地址不能为空!");
requiredField("cityId","请选择城市!");
requiredField("area_Id","请选择区域!");
requiredField("scope","公司规模不能为空!");
requiredField("state","请选择状态!");
}
function selectCity(){
$.ajax({type:"post", dataType:"text", url:"area.do?op=doloadArea&cityId=" + $("#cityId").val(), global:false, success:function (data, textStatus) {
$("#area_Id").empty();
$("#area_Id").append(data);
}, beforeSend:function (xmlHttpReq) {
$("#area_Id").empty();
$("#area_Id").append("<img src='commons/images/loading.gif'></img>");
}});
}
</script>
</head>
<body>
<html:form action="/company" method="post">
<html:hidden property="op" value="${isAdd==1?'doAddCompany':'doUpdateCompany'}" />
<p>
*公司名称 :
<html:text property="companyName" styleId="companyName"
/>
</p>
<p>
*电话号码1 :
<html:text property="phone1" styleId="phone1" οnclick="javascript:return requiredField('companyName','公司名称不能为空!');" />
</p>
<p>
电话号码2 :
<html:text property="phone2" styleId="phone2" οnclick="javascript:return requiredField('phone1','至少要填写一个电话号码!');"/>
</p>
<p>
传真号码 :
<html:text property="fax" οnclick="javascript:return requiredField('phone1','至少要填写一个电话号码!');"/>
</p>
<p>
*地址:
<html:text property="address" styleId="address" οnclick="javascript:return requiredField('phone1','至少要填写一个电话号码!');"/>
</p>
<p>
*城市:
<select id="cityId" οnchange="selectCity()" οnclick="javascript:return requiredField('address','地址不能为空!');" >
<option value="0">
--请选择--
</option>
<logic:iterate id="city" name="cityList">
<option value="${city.id }">
${city.name }
</option>
</logic:iterate>
</select>
</p>
<p>
*区域:
<html:select property="area_Id" styleId="area_Id" οnclick="javascript:return requiredField('cityId','请选择城市!');"
>
<html:option value="0">--请选择--</html:option>
<logic:notEmpty name="aList">
<logic:iterate id="area" name="aList">
<option value="${area.id }">${area.name }</option>
</logic:iterate>
</logic:notEmpty>
</html:select>
</p>
<p>
*公司规模 :
<html:text property="scope" styleId="scope" οnclick="javascript:return requiredField('area_Id','请选择区域!');"
/>
</p>
<p>
网站url:
<html:text property="url" styleId="url" οnclick="javascript:return requiredField('scope','公司规模不能为空!');"/>
</p>
<p>
*状态 :
<html:select property="state" styleId="state" οnclick="javascript:return requiredField('scope','公司规模不能为空!');"
>
<html:option value="0">--请选择--</html:option>
<html:option value="1">意向中</html:option>
<html:option value="2">已预约</html:option>
<html:option value="3">已成交</html:option>
<html:option value="4">VIP</html:option>
<html:option value="5">已作废</html:option>
</html:select>
</p>
<p>
消息来源 :
<html:text property="source" styleId="source" οnclick="javascript:return requiredField('state','请选择状态!');"/>
</p>
<p>
描述 :
<html:textarea property="description" styleId="description" οnclick="javascript:return requiredField('state','请选择状态!');"/>
</p>
<p>
<html:submit value="添加" styleId="btnAdd" οnclick="javascript:return validateForm();" />
<html:submit value="修改" styleId="btnUpdate" οnclick="javascript:return validateForm();" />
<input type="reset" value="取消" />
<input type="hidden" id="ct" value="${ct }">
<input type="hidden" id="ar" value="${ar }">
<input type="hidden" id="isAdd" value="${isAdd }">
<input type="hidden" id="comId" name="comId" value="${comId }">
</p>
</html:form>
</body>
</html>
showCompany.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'showCompany.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<script type="text/javascript" src="commons/javascript/jquery.js"></script>
<script type="text/javascript" src="commons/javascript/showTip.js"></script>
<script type="text/javascript" src="commons/javascript/jquery.pager.js"></script>
<link rel="stylesheet" href="commons/css/Pager.css" type="text/css"></link>
<script type="text/javascript">
function selectCity(){
$.ajax({type:"post", dataType:"text", url:"area.do?op=doloadArea&cityId=" + $("#cityId").val(), global:false, success:function (data, textStatus) {
$("#area_Id").empty();
$("#area_Id").append(data);
}, beforeSend:function (xmlHttpReq) {
$("#area_Id").empty();
$("#area_Id").append("<img src='commons/images/loading.gif'></img>");
}});
}
$(function(){
$("#cityId").val($("#cId").val());
$("#area_Id").val($("#aId").val());
$("#state").val($("#st").val());
$("#employee_Id").val($("#eId").val());
$("#search").val($("#se").val());
$("#pager").pager({ pagenumber: $("#page").val(), pagecount: $("#count").val(), buttonClickCallback: PageClick });
});
PageClick = function(pageclickednumber) {
window.location.href="./company.do?op=toShowCompany&pageNum="+pageclickednumber+"&areaId="
+$("#aId").val()+"&state="+$("#st").val()+"&employee="+$("#eId").val()+"&search="+encodeURI($("#se").val())
+"&cityId="+$("#cId").val();
}
function selectByCondition(){
window.location.href="./company.do?op=toShowCompany&pageNum=1&areaId="
+$("#area_Id").val()+"&state="+$("#state").val()+"&employee="+$("#employee_Id").val()+"&search="+encodeURI($("#search").val())
+"&cityId="+$("#cityId").val();
}
</script>
</head>
<body>
<p>
城市:
<select id="cityId" name="cityId" οnchange="javascript:selectCity();">
<option value="0">
--请选择--
</option>
<logic:iterate id="city" name="cityList">
<option value="${city.id }">
${city.name }
</option>
</logic:iterate>
</select>
区域:
<select name="area_Id" id="area_Id">
<option value="0">--请选择--</option>
<logic:notEmpty name="aList">
<logic:iterate id="area" name="aList">
<option value="${area.id }">${area.name }</option>
</logic:iterate>
</logic:notEmpty>
</select>
状态 :<select name="state" id="state">
<option value="0">--请选择--</option>
<option value="1">意向中</option>
<option value="2">已预约</option>
<option value="3">已成交</option>
<option value="4">VIP</option>
<option value="5">已作废</option>
</select>
员工 :
<select id="employee_Id" name="employee_Id">
<option value="0">
--请选择--
</option>
<logic:iterate id="employee" name="employeeList">
<option value="${employee.id }">
${employee.name}
</option>
</logic:iterate>
</select>
关键词:<input type="text" name="search" id="search" value="" />
<input type="submit" value="查询" οnclick="javascript:selectByCondition();" />
</p>
<table>
<tr>
<th>
公司名称
</th>
<th>
电话号码1
</th>
<th>
电话号码2
</th>
<th>
传真
</th>
<th>
负责人
</th>
<th>
区域
</th>
<th>
状态
</th>
<th>
网站地址
</th>
<th>
规模
</th>
<th>
公司地址
</th>
<th>
消息来源
</th>
<th>
录入时间
</th>
<th>
最后访问时间
</th>
<th>
点击率
</th>
<th>
数据状态
</th>
<th>
描述
</th>
<th>
操作
</th>
</tr>
<logic:iterate id="company" name="companyList">
<tr>
<td>
<a href="">${company.companyName }</a>
</td>
<td>
${company.phone1 }
</td>
<td>
${company.phone2 }
</td>
<td>
${company.fax }
</td>
<td>
${company.employee.name }
</td>
<td>
${company.areaId.name }
</td>
<td>
${company.stateString }
</td>
<td>
${company.url }
</td>
<td>
${company.scope }
</td>
<td>
${company.address }
</td>
<td>
${company.source }
</td>
<td>
${company.inputTime }
</td>
<td>
${company.lastPassTime }
</td>
<td>
${company.click }
</td>
<td>
${company.showString }
</td>
<td>
${company.description }
</td>
<td>
<a href="company.do?op=doDelCompany&Id=${company.id }" οnclick="javascript:return confirm('您确定要删除吗?');">删除</a>
<a href="company.do?op=toUpdateCompany&Id=${company.id }">修改</a>
</td>
</tr>
</logic:iterate>
</table>
<input type="hidden" name="page" id="page" value="${page}" />
<input type="hidden" name="count" id="count" value="${count}" />
<input type="hidden" id="cId" value="${cId }">
<input type="hidden" id="aId" value="${aId }" />
<input type="hidden" id="st" value="${st }"/>
<input type="hidden" id="eId" value="${eId }"/>
<input type="hidden" id="se" value="${se}" />
<div id="pager" class="Pager"></div>
</body>
</html>
ACTION:
AreaAction:
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package zthh.manager.lwj.action;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import zthh.manager.entity.Area;
import zthh.manager.lwj.biz.IAreaBiz;
public class AreaAction extends DispatchAction {
private IAreaBiz areaBiz;
public void setAreaBiz(IAreaBiz areaBiz) {
this.areaBiz = areaBiz;
}
/**
* 加载区域信息
* @throws IOException
*/
public ActionForward doloadArea(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws IOException {
String cidString=request.getParameter("cityId");
Integer cityId=0;
if (cidString!=null&&!"".equals(cidString)) {
cityId=Integer.valueOf(cidString);
}
List<Area> areaList=areaBiz.getAreaByCityId(cityId);
PrintWriter out=response.getWriter();
out.print("<option value='0'>--请选择--</option>");
for (Area area : areaList) {
out.print("<option value='"+area.getId()+"'>"+area.getName()+"</option>");
}
return null;
}
}
CompanyAction:
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package zthh.manager.lwj.action;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import com.sun.java_cup.internal.internal_error;
import zthh.manager.commons.Pagination;
import zthh.manager.entity.Area;
import zthh.manager.entity.City;
import zthh.manager.entity.Company;
import zthh.manager.entity.Employee;
import zthh.manager.entity.Linkman;
import zthh.manager.lwj.biz.IAreaBiz;
import zthh.manager.lwj.biz.ICityBiz;
import zthh.manager.lwj.biz.ICompanyBiz;
import zthh.manager.lwj.biz.IEmployeeBiz;
import zthh.manager.lwj.biz.ILinkmanBiz;
import zthh.manager.lwj.form.CompanyForm;
/**
* 操作客户公司信息
*/
public class CompanyAction extends DispatchAction {
private ICompanyBiz companyBiz;
private ILinkmanBiz linkmanBiz;
private ICityBiz cityBiz;
private IEmployeeBiz employeeBiz;
private IAreaBiz areaBiz;
public void setAreaBiz(IAreaBiz areaBiz) {
this.areaBiz = areaBiz;
}
public void setEmployeeBiz(IEmployeeBiz employeeBiz) {
this.employeeBiz = employeeBiz;
}
public void setCityBiz(ICityBiz cityBiz) {
this.cityBiz = cityBiz;
}
public void setCompanyBiz(ICompanyBiz companyBiz) {
this.companyBiz = companyBiz;
}
public void setLinkmanBiz(ILinkmanBiz linkmanBiz) {
this.linkmanBiz = linkmanBiz;
}
/**
* 跳转到/sell/Company.jsp页面,加载区域到编辑页面下拉列表中
* @param mapping
* @param form
* @param request
* @param response
* @return
*/
public ActionForward toAddCompany(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
request.setAttribute("isAdd", 1);
List<City> cityList=cityBiz.getAllCity();
request.setAttribute("cityList", cityList);
return mapping.findForward("toCompany");
}
/**
* 加载区域显示页面到下拉列表中,并分页显示客户公司信息
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws IOException
*/
@SuppressWarnings("unchecked")
public ActionForward toShowCompany(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws IOException {
List<City> cityList=cityBiz.getAllCity();
request.setAttribute("cityList", cityList);
List<Employee> employeeList=employeeBiz.getAllEmployee();
request.setAttribute("employeeList", employeeList);
String pageNum = request.getParameter("pageNum");
String areaId = request.getParameter("areaId");
String stateId = request.getParameter("state");
String employeeId = request.getParameter("employee");
String search = request.getParameter("search");
String cityId=request.getParameter("cityId");
Integer pn = 1;
Integer area = 0;
Integer state = 0;
Integer employee=0;
Integer city=0;
if(cityId!=null&&!"".equals(cityId)&&!"0".equals(cityId)){
city=Integer.valueOf(cityId);
List<Area> aList=areaBiz.getAreaByCityId(city);
request.setAttribute("aList", aList);
}
if (pageNum != null && !"".equals(pageNum)) {
pn = Integer.valueOf(pageNum);
}
if (areaId != null && !"".equals(areaId)) {
area = Integer.valueOf(areaId);
}
if (stateId != null && !"".equals(stateId)) {
state = Integer.valueOf(stateId);
}
if (employeeId != null && !"".equals(employeeId)) {
employee = Integer.valueOf(employeeId);
}
if (search != null && !"".equals(search)&&!"0".equals(search)) {
search = new String(search.getBytes("ISO-8859-1"), "utf-8");
search = search.trim();
}
request.setAttribute("aId", areaId);
request.setAttribute("cId", cityId);
request.setAttribute("st", stateId);
request.setAttribute("eId", employeeId);
request.setAttribute("se", search);
Pagination pag=new Pagination(20);
pag.setCurrentPage(pn);
HttpSession session=request.getSession();
//获得Session中的值,
Employee employee1=(Employee) session.getAttribute("Employee");
//如果是总经理登录,查看全部信息;如果是普通的用户登录,就只查看自己负责的用户
if(employee1.getDepartmentType()!=1&&employee1.getPower()!=1){
employee=employee1.getId();//从Session中获取员工ID
}
pag.setRecordCount(companyBiz.getCompanyCountBySearch(search, area, state, employee,0,1));
List<Company> companyList = (List<Company>)companyBiz.getCompanyBySearch(search, area, state, employee, pag,0,1).getList();
for (Company company : companyList) {
if(company.getState()==1)company.setStateString("意向中");
if(company.getState()==2)company.setStateString("已预约");
if(company.getState()==3)company.setStateString("已成交");
if(company.getState()==4)company.setStateString("VIP");
if(company.getState()==5)company.setStateString("已作废");
List<Company> comList=companyBiz.getCompanyByOldIdAndIsShow((Integer)company.getId().intValue(), 2);
if(comList.size()<=1){company.setShowString("");}
if(comList.size()>1){company.setShowString("查看已修改的信息");}
}
request.setAttribute("companyList", companyList);
request.setAttribute("page", pn);
request.setAttribute("count", pag.getPageCount());
//如果是总经理登录,就跳转到/sell/gm/showCompany.jsp页面查看全部客户资料;
//如果是普通的用户登录,就跳转到/sell/sell/showCompany.jsp页面,用户只能查看自己负责的客户资料;
if(employee1.getDepartmentType()==1&&employee1.getPower()==1)
{
return mapping.findForward("toShowCompanyByGm");
}else {
return mapping.findForward("toShowCompanyBySell");
}
// return mapping.findForward("toShowCompany");
}
/**
* 添加客户公司信息
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws IOException
*/
public ActionForward doAddCompany(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws IOException {
CompanyForm companyForm =(CompanyForm)form;
Company company=new Company();
company.setCompanyName(companyForm.getCompanyName());
company.setAddress(companyForm.getAddress());
company.setPhone1(companyForm.getPhone1());
company.setPhone2(companyForm.getPhone2());
company.setFax(companyForm.getFax());
Area area1=new Area();
area1.setId(companyForm.getArea_Id());
company.setAreaId(area1);
company.setUrl(companyForm.getUrl());
company.setInputTime(new Date());
company.setLastPassTime(new Date());
HttpSession session=request.getSession();
//获得Session中的值,
Employee employee=(Employee) session.getAttribute("Employee");
employee.setId(employee.getId());//员工ID要从Session中获取
company.setEmployee(employee);
company.setClick(1);//新增信息点击率默认为1
company.setState(companyForm.getState());
company.setDescription(companyForm.getDescription());
company.setSource(companyForm.getSource());
company.setScope(companyForm.getScope());
company.setShow(1);//1为显示,2为修改过的
company.setOldId(0);
company.setReserved(1);
//执行添加客户信息的方法
Long companyId=companyBiz.addCompany(company);
//如果companyId大于0,则说明添加成功;
PrintWriter pw=response.getWriter();
if(companyId>0){
pw.write("<script language='javascript'>");
pw.write("alert('客户公司信息添加成功!');top.location='company.do?op=toShowCompany';");
pw.write("</script>");
//更新oldId为数据的ID
Company co=companyBiz.getCompanyById(companyId);
co.setOldId(company.getId().intValue());
Long num=companyBiz.addCompany(co);
Linkman linkman=new Linkman();
linkman.setName(companyForm.getCompanyName());
linkman.setSex(true);//true为男,false为女
linkman.setCompanyId(companyId);
linkman.setPhone(companyForm.getPhone1());
linkman.setMobile(companyForm.getPhone2());
linkman.setType(1);//1为公司联系人,2为个人联系人
linkman.setInputTime(new Date());
linkman.setShow(1);//1、显示(销售部)2、修改过的
linkman.setReserved(1);
//添加客户公司联系人
linkmanBiz.addLinkman(linkman);
}else {
pw.write("<script language='javascript'>");
pw.write("alert('客户公司信息添加失败!');top.location='company.do?op=toShowCompany';");
pw.write("</script>");
}
return null;
}
/**
* 删除客户公司资料
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws IOException
*/
public ActionForward doDelCompany(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws IOException {
String companyId=request.getParameter("Id");
PrintWriter pw=response.getWriter();
if(null!=companyId&&!"".equals(companyId))
{
if(companyBiz.delCompany(companyBiz.getCompanyById(Long.valueOf(companyId)))){
pw.write("<script language='javascript'>");
pw.write("alert('客户公司信息删除成功!');top.location='company.do?op=toShowCompany';");
pw.write("</script>");
}else {
pw.write("<script language='javascript'>");
pw.write("alert('客户公司信息删除失败!');top.location='company.do?op=toShowCompany';");
pw.write("</script>");
}
}
return null;
}
/**
* 加载修改页面的下拉框,并将数据填充到页面控件中
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws IOException
*/
public ActionForward toUpdateCompany(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws IOException {
CompanyForm companyForm =(CompanyForm)form;
request.setAttribute("isAdd", 2);
String companyId=request.getParameter("Id");
if(companyId!=null&&companyId!="")
{
//根据ID得到Company对象
Company company=companyBiz.getCompanyById(Long.valueOf(companyId));
//加载下拉列表框中的数据
List<City> cityList=cityBiz.getAllCity();
request.setAttribute("cityList", cityList);
//根据Area对象中的City对象的ID得到属于该城市的区域
List<Area> aList=areaBiz.getAreaByCityId(company.getAreaId().getCity().getId());
request.setAttribute("aList", aList);
request.setAttribute("ct",company.getAreaId().getCity().getId() );
request.setAttribute("ar",company.getAreaId().getId());
request.setAttribute("comId", company.getId());
companyForm.setCompanyName(company.getCompanyName());
companyForm.setAddress(company.getAddress());
companyForm.setPhone1(company.getPhone1());
companyForm.setPhone2(company.getPhone2());
companyForm.setFax(company.getFax());
companyForm.setArea_Id(company.getAreaId().getId());
companyForm.setUrl(company.getUrl());
companyForm.setState(company.getState());
companyForm.setDescription(company.getDescription());
companyForm.setSource(company.getSource());
companyForm.setScope(company.getScope());
}
return mapping.findForward("toCompany");
}
/**
* 修改客户公司信息
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws IOException
*/
public ActionForward doUpdateCompany(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws IOException {
CompanyForm companyForm =(CompanyForm)form;
if(null!=request.getParameter("comId")&&!"".equals(request.getParameter("comId")))
{
Integer comId=Integer.valueOf(request.getParameter("comId"));
Company com=companyBiz.getCompanyById(comId.longValue());
com.setOldId(comId);//1为显示,2为修改过的
com.setShow(2);//保存要修改的原始数据的ID
Company co=new Company();
co.setAddress(com.getAddress());
co.setAreaId(com.getAreaId());
co.setClick(com.getClick());
co.setCompanyName(com.getCompanyName());
co.setDescription(com.getDescription());
co.setEmployee(com.getEmployee());
co.setFax(com.getFax());
co.setInputTime(com.getInputTime());
co.setLastPassTime(com.getLastPassTime());
co.setOldId(com.getOldId());
co.setPhone1(com.getPhone1());
co.setPhone2(com.getPhone2());
co.setReserved(com.getReserved());
co.setScope(com.getScope());
co.setShow(com.getShow());
co.setSource(com.getSource());
co.setState(com.getState());
co.setUrl(com.getUrl());
Long num=companyBiz.addCompany(co);
//如果num大于0,则说明添加成功;
PrintWriter pw=response.getWriter();
if(num>0){
//添加成功后再做修改操作
com.setCompanyName(companyForm.getCompanyName());
com.setAddress(companyForm.getAddress());
com.setPhone1(companyForm.getPhone1());
com.setPhone2(companyForm.getPhone2());
com.setFax(companyForm.getFax());
Area area1=new Area();
area1.setId(companyForm.getArea_Id());
com.setAreaId(area1);
com.setUrl(companyForm.getUrl());
com.setInputTime(new Date());
com.setLastPassTime(new Date());
HttpSession session=request.getSession();
//获得Session中的值,
Employee employee=(Employee) session.getAttribute("Employee");
employee.setId(employee.getId());//员工ID要从Session中获取
com.setEmployee(employee);
com.setClick(1);//新增信息点击率默认为1
com.setState(companyForm.getState());
com.setDescription(companyForm.getDescription());
com.setSource(companyForm.getSource());
com.setScope(companyForm.getScope());
com.setShow(1);//1为显示,2为修改过的
com.setOldId(comId);//保存要修改的原始数据的ID
com.setReserved(1);
//执行添加客户信息的方法
num=companyBiz.addCompany(com);
if(num>0){
pw.write("<script language='javascript'>");
pw.write("alert('客户公司信息修改成功!');top.location='company.do?op=toShowCompany';");
pw.write("</script>");
}else {
pw.write("<script language='javascript'>");
pw.write("alert('客户公司信息修改失败!');top.location='company.do?op=toShowCompany';");
pw.write("</script>");
}
}
}
return null;
}
}
CompanyDaoImpl:
package zthh.manager.lwj.dao.impl;
import java.sql.SQLException;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.criterion.MatchMode;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions;
import org.springframework.dao.DataAccessException;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.sun.java_cup.internal.internal_error;
import zthh.manager.commons.Pagination;
import zthh.manager.entity.Company;
import zthh.manager.lwj.dao.ICompanyDao;
public class CompanyDaoImpl extends HibernateDaoSupport implements ICompanyDao {
public Long addCompany(Company company) {
return (Long) super.getHibernateTemplate().save(company);
}
/**
* 根据查询字符串和区域查找公司信息的总数
*/
public Integer getCompanyCountBySearch(final String search, final Integer areaId,final Integer stateId,
final Integer employeeId,final Integer oldId,final Integer isShow) {
return Integer.valueOf(super.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Criteria c = session.createCriteria(Company.class);
if(stateId!=0){
c.add(Restrictions.eq("state", stateId));
}
if(oldId!=0){
c.add(Restrictions.eq("oldId", oldId));
}
if(isShow!=0){
c.add(Restrictions.eq("show", isShow));
}
if(!"".equals(search)&&null!=search){
c.add(
Restrictions.or
(
Restrictions.or(
Restrictions.or(Restrictions.like("companyName", search,MatchMode.ANYWHERE),
Restrictions.like("address", search,MatchMode.ANYWHERE)),
Restrictions.or(Restrictions.like("url", search,MatchMode.ANYWHERE),
Restrictions.like("source", search,MatchMode.ANYWHERE))
),
Restrictions.or(
Restrictions.like("phone1",search,MatchMode.ANYWHERE),
Restrictions.like("phone2",search,MatchMode.ANYWHERE)
)
)
);
}
if(areaId!=0){
c.createCriteria("areaId").add(
Restrictions.idEq(areaId));
}
if(employeeId!=0)
{
c.createCriteria("employee").add(
Restrictions.idEq(employeeId));
}
return c.setProjection(Projections.rowCount())
.uniqueResult();
}
}).toString());
}
/**
* 根据查询字符串和区域查找公司信息
*/
@SuppressWarnings("unchecked")
public Pagination getCompanyBySearch(final String search,final Integer areaId,
final Integer stateId,final Integer employeeId,final Pagination pagination
,final Integer oldId,final Integer isShow) {
List<Company> list=super.getHibernateTemplate().executeFind(
new HibernateCallback(){
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Criteria c = session.createCriteria(Company.class);
int a=oldId;
int b=isShow;
if(stateId!=0){
c.add(Restrictions.eq("state", stateId));
}
if(oldId!=0){
c.add(Restrictions.eq("oldId", oldId));
}
if(isShow!=0){
c.add(Restrictions.eq("show", isShow));
}
if(!"".equals(search)&&null!=search){
c.add(
Restrictions.or
(
Restrictions.or(
Restrictions.or(Restrictions.like("companyName", search,MatchMode.ANYWHERE),
Restrictions.like("address", search,MatchMode.ANYWHERE)),
Restrictions.or(Restrictions.like("url", search,MatchMode.ANYWHERE),
Restrictions.like("source", search,MatchMode.ANYWHERE))
),
Restrictions.or(
Restrictions.like("phone1",search,MatchMode.ANYWHERE),
Restrictions.like("phone2",search,MatchMode.ANYWHERE)
)
)
);
}
if(areaId!=0){
c.createCriteria("areaId").add(
Restrictions.idEq(areaId));
}
if(employeeId!=0)
{
c.createCriteria("employee").add(
Restrictions.idEq(employeeId));
}
c.addOrder(Order.desc("lastPassTime"));
c.setFirstResult((pagination.getCurrentPage() - 1)
* pagination.getPageSize());
c.setMaxResults(pagination.getPageSize());
return c.list();
}
});
pagination.setList(list);
return pagination;
}
/**
* 根据OldId和IsShow查找公司信息
*/
@SuppressWarnings("unchecked")
public List<Company> getCompanyByOldIdAndIsShow(final Integer oldId,final Integer isShow) {
List<Company> list=super.getHibernateTemplate().executeFind(
new HibernateCallback(){
public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Criteria c = session.createCriteria(Company.class);
int a=oldId;
int b=isShow;
if(oldId!=0){
c.add(Restrictions.eq("oldId", oldId));
}
if(isShow!=0){
c.add(Restrictions.eq("show", isShow));
}
c.addOrder(Order.desc("lastPassTime"));
return c.list();
}
});
return list;
}
/**
* 删除客户公司信息
* @param id
* @return
*/
public Boolean delCompany(Company company) {
try {
super.getHibernateTemplate().delete(company);
} catch (DataAccessException e) {
return false;
}
return true;
}
/**
* 根据Id更新客户公司信息
* @param company
* @return
*/
public Boolean updateCompany(Company company) {
try {
super.getHibernateTemplate().update(company);
} catch (DataAccessException e) {
return false;
}
return true;
}
public Company getCompanyById(Long id) {
return (Company) super.getHibernateTemplate().get(Company.class, id);
}
}