📄 adressoperation.java
字号:
package tarena.action;
import java.util.Set;
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.MappingDispatchAction;
import tarena.dao.CountryareaDAO;
import tarena.dao.ReceiveaddressDAO;
import tarena.dao.UserDAO;
import tarena.entity.Countryarea;
import tarena.entity.Receiveaddress;
import tarena.entity.User;
import tarena.form.AddressForm;
import tarena.global.CookieOperate;
import tarena.global.PublicParameter;
import tarena.global.Transform;
@SuppressWarnings("unchecked")
public class AdressOperation extends MappingDispatchAction {
/**
* 查询显示收货地址
*/
public ActionForward usercpaddress(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
//查询所有的收货地址
User user = new UserDAO().findUserByUsername(CookieOperate.FindCookie(PublicParameter.cookie_user, request.getCookies()).getValue());
Set<Receiveaddress> receiveaddress = user.getReceiveaddresses();
System.out.println(receiveaddress);
request.setAttribute("receiveaddress", receiveaddress);
//查询指定id的收货地址
int id = Transform.StringToInteger(request.getParameter("aid"));
try {
if(id != -1){
ReceiveaddressDAO rdao = new ReceiveaddressDAO();
Receiveaddress address = rdao.findById(id);
request.setAttribute("address", address);
}
} catch (RuntimeException e) {}
return mapping.findForward("usercpaddress");
}
/**
* 修改收货地址
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws Exception
*/
public ActionForward modifyAddress(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
//查询指定id的收货地址
int id = Transform.StringToInteger(request.getParameter("tbId"));
//表单数据
AddressForm aform = (AddressForm)form;
//数据访问对象
ReceiveaddressDAO rdao = new ReceiveaddressDAO();
CountryareaDAO cdao = new CountryareaDAO();
//查找国家地区对象
Countryarea province = cdao.findById(Transform.StringToInteger(aform.getDdlProvince()));
Countryarea area = cdao.findById(Transform.StringToInteger(aform.getDdlCity()));
Countryarea city = cdao.findById(Transform.StringToInteger(aform.getDdlCounty()));
//收货地址对象
Receiveaddress address = rdao.findById(id);
//如果参数传递错误,转向错误页面
if(id==-1|| province==null || area==null || city==null || address==null){
Transform.setAttribute(request, "参数错误 -", "送货地址修改", "参数错误!", "");
return mapping.findForward("message");
}
//修改属性
address.setAddress(aform.getTbAddress());
address.setReceivename(aform.getTbName());
address.setProvince(province);
address.setCity(city);
address.setArea(area);
address.setIsuserdel(new Byte(1+""));
address.setMobile(aform.getTbMobile());
address.setPhone(aform.getTbPhone());
address.setZip(aform.getTbZip());
rdao.save(address);
//显示收货地址
return usercpaddress(mapping, form, request, response);
}
/**
* 删除收货地址
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws Exception
*/
public ActionForward deleteAddress(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
//查询指定id的收货地址
int id = Transform.StringToInteger(request.getParameter("aid"));
if(id==-1){
Transform.setAttribute(request, "参数错误 -", "送货地址修改", "参数错误!", "");
}
ReceiveaddressDAO rdao = new ReceiveaddressDAO();
Receiveaddress radrs = rdao.findById(id);
rdao.delete(radrs);
//显示收货地址
return usercpaddress(mapping, form, request, response);
}
/**
* 保存收货地址
*/
public ActionForward send_address(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
//表单数据
AddressForm aform = (AddressForm)form;
//数据访问对象
ReceiveaddressDAO addressDAO = new ReceiveaddressDAO();
CountryareaDAO cdao = new CountryareaDAO();
//收货地址对象
Receiveaddress address = new Receiveaddress();
//查找国家地区对象
Countryarea province = cdao.findById(Transform.StringToInteger(aform.getDdlProvince()));
Countryarea area = cdao.findById(Transform.StringToInteger(aform.getDdlCity()));
Countryarea city = cdao.findById(Transform.StringToInteger(aform.getDdlCounty()));
// 保存收货地址
address.setAddress(aform.getTbAddress());
address.setReceivename(aform.getTbName());
address.setProvince(province);
address.setCity(city);
address.setArea(area);
address.setIsuserdel(new Byte(1+""));
address.setMobile(aform.getTbMobile());
address.setPhone(aform.getTbPhone());
address.setZip(aform.getTbZip());
try {
address.setUser(new UserDAO().findUserByUsername(CookieOperate.FindCookie(PublicParameter.cookie_user, request.getCookies()).getValue()));
} catch (RuntimeException e) {
// 如果获取用户异常
Transform.setAttribute(request, "用户错误", "不存在此用户", "不存在此用户", "");
return mapping.findForward("message");
}
addressDAO.save(address);
//显示收货地址
return usercpaddress(mapping, form, request, response);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -