目录
1,说明
2,修改pickExpress.html
3,修改wx/expressController处理上面添加的请求
4,依次处理service-》dao接口-》dao实现类
完整项目在这里实时更新<( ̄︶ ̄)↗[GO!]:
GitHub - GoodbyeFirefly/ExpressManagementSystem: 用GitHub一步步记录编码过程,实现一个相对完整的快递管理项目https://github.com/GoodbyeFirefly/ExpressManagementSystemhttps://github.com/GoodbyeFirefly/ExpressManagementSystem
1,说明
由于域名相关问题处理起来比较繁琐,而没有合法域名就无法对微信扫码功能进行正确配置。
所以这里暂时只提供一种取件方式:用户登录,找到快件列表,并提供想要取出的快递的取件码。快递员登录,选择快递助手,输入取件码,点击确认收货,交易完成。这时用户的快件列表中会显示刚刚取件成功的快递信息。(在网页端验证,需要开两个网页)
所有和二维码相关的功能全部pass(无限阉割)
2,修改pickExpress.html
1,注释掉原模板中和微信扫描相关的代码
2,为“取货码输入”,“列表展示”组件添加id
3,为查找按钮添加函数find()
function updateStatus(code,type){
//alert("点击的取件码是:"+code);
var windowId = layer.load();
$.getJSON("/wx/updateStatus.do",{code:code},function(data){
layer.msg(data.result);
$("#expUserInfoCont").html("");
layer.close(windowId);
if(type ==0){
getExpress();
}
})
}
function find() {
var windowId = layer.load();
var code = $("#expPickUserId").val();
$.getJSON("/wx/findExpressByCode.do", {code:code}, function (data) {
layer.close(windowId);
layer.msg(data.result);
if (data.status == 0) {
$("#expUserInfoCont").html("");
var express = data.data;
var item = "n" +
"ttt| 快递公司: | "+express.company+" | n" + "tttt
| 快递单号: | "+express.number+" | n" + "tttt
| 到件时间: | "+express.intime+" | n" + "tttt
| 取件码: | "+express.code+" | n" + "tttt
3,修改wx/expressController处理上面添加的请求
@ResponseBody("/wx/updateStatus.do")
public String updateExpressStatus(HttpServletRequest request,HttpServletResponse response){
String code = request.getParameter("code");
boolean flag = ExpressService.updateStatus(code);
Message msg = new Message();
if(flag){
msg.setStatus(0);
msg.setResult("取件成功");
}else{
msg.setStatus(-1);
msg.setResult("取件码不存在,请用户更新二维码");
}
String json = JSONUtil.toJSON(msg);
return json;
}
@ResponseBody("/wx/findExpressByCode.do")
public String findExpressByCode(HttpServletRequest request, HttpServletResponse response) {
String code = request.getParameter("code");
Express e = ExpressService.findByCode(code);
BootstrapTableExpress e2 =null;
if(e!=null){
e2 = new BootstrapTableExpress(e.getId(), e.getNumber(), e.getUsername()
, e.getUserphone(), e.getCompany(), e.getCode(),
DateFormatUtil.format(e.getIntime()), e.getOuttime()==null?"未出库":DateFormatUtil.format(e.getOuttime()),e.getStatus()==0?"待取件":"已取件", e.getSysPhone());
}
Message msg = new Message();
if (e == null) {
msg.setStatus(-1);
msg.setResult("取件码不存在");
} else {
msg.setStatus(0);
msg.setResult("查询成功");
msg.setData(e2);
}
return JSONUtil.toJSON(msg);
}
4,依次处理service-》dao接口-》dao实现类
由于controller中用到了新的service方法,所以需要修改与之相关的一系列方法。
采用自上而下的方法。先用它,然后哪里飘红再逐层修改,这样不容易出错。
章节汇总在这里(づ ̄3 ̄)づ╭❤~@&再见萤火虫&【07-项目训练】
对学习Java感兴趣的同学欢迎加入QQ学习交流群:1126298731
有问题欢迎提问,大家一起在学习Java的路上打怪升级!(o゜▽゜)o☆[BINGO!]



