yuhaitao14 7 years ago
parent
commit
7810c898ba
23 changed files with 760 additions and 376 deletions
  1. 0 26
      shop/src/main/java/com/zskk/shop/config/ErrorPageConfig.java
  2. 4 0
      shop/src/main/java/com/zskk/shop/controller/AbstractController.java
  3. 14 16
      shop/src/main/java/com/zskk/shop/controller/bean/BuyOrderBean.java
  4. 9 0
      shop/src/main/java/com/zskk/shop/controller/bean/BuyOrderItemBean.java
  5. 33 0
      shop/src/main/java/com/zskk/shop/controller/bean/FamilyPeopleAppointmentBean.java
  6. 21 1
      shop/src/main/java/com/zskk/shop/controller/bean/FamilyPeopleBean.java
  7. 54 14
      shop/src/main/java/com/zskk/shop/controller/web/AppointmentController.java
  8. 4 5
      shop/src/main/java/com/zskk/shop/controller/web/BuyOrderController.java
  9. 0 16
      shop/src/main/java/com/zskk/shop/controller/web/FamilyPeopleController.java
  10. 2 0
      shop/src/main/java/com/zskk/shop/dao/BuyOrderMapper.java
  11. 3 1
      shop/src/main/java/com/zskk/shop/dao/FamilyPeopleMapper.java
  12. 13 6
      shop/src/main/java/com/zskk/shop/dao/entry/Appointment.java
  13. 14 2
      shop/src/main/java/com/zskk/shop/dao/entry/FamilyPeopleAppointment.java
  14. 33 3
      shop/src/main/java/com/zskk/shop/service/BuyOrderService.java
  15. 26 7
      shop/src/main/java/com/zskk/shop/service/FamilyPeopleService.java
  16. 4 0
      shop/src/main/java/com/zskk/shop/utils/ToolsUtil.java
  17. 11 0
      shop/src/main/resource/mapper/BuyOrderMapper.xml
  18. 5 4
      shop/src/main/resource/mapper/FamilyPeopleMapper.xml
  19. 357 113
      shop/src/main/resource/templates/appointment.html
  20. 4 1
      shop/src/main/resource/templates/detail.html
  21. 0 160
      shop/src/main/resource/templates/myorders.html
  22. 148 0
      shop/src/main/resource/templates/mypayedorders.html
  23. 1 1
      shop/src/main/resource/templates/shop.html

+ 0 - 26
shop/src/main/java/com/zskk/shop/config/ErrorPageConfig.java

@@ -1,26 +0,0 @@
-/**
-* @版权信息 (@copyright Copyright 2017-XXXX JDJR.COM All Right Reserved);
-* @see
-* @author 于海涛 京东金融【技术研发部-证券及营销平台研发部-营销平台研发部】
-* @version 1.0
-* @date 2018年5月29日
-*/
-
-package com.zskk.shop.config;
-
-import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
-import org.springframework.boot.web.servlet.ErrorPage;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.http.HttpStatus;
-
-//@Configuration
-public class ErrorPageConfig {
-	//@Bean
-	public EmbeddedServletContainerCustomizer containerCustomizer(){
-		return container->{
-			ErrorPage error500Page = new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/error");
-			container.addErrorPages(error500Page);
-		};
-	}
-}	

+ 4 - 0
shop/src/main/java/com/zskk/shop/controller/AbstractController.java

@@ -82,6 +82,10 @@ public class AbstractController {
 		return test().getAccount();
 	}
 	
+	public void isLogin(){
+		this.getUser();
+	}
+	
 	public void initUser(Model model){
 		UserBean user = getUserNoException();
 		model.addAttribute("islogin", user != null);

+ 14 - 16
shop/src/main/java/com/zskk/shop/controller/bean/BuyOrderBean.java

@@ -10,8 +10,6 @@ package com.zskk.shop.controller.bean;
 
 import java.util.List;
 
-import com.zskk.shop.dao.entry.FamilyPeopleAppointment;
-
 public class BuyOrderBean {
 	private Long id;
 	private String uid;
@@ -23,10 +21,10 @@ public class BuyOrderBean {
 	private Integer payStatus;
 	private Integer isDel;
 	private Integer appointmentNum;
-	private Integer ctime;
+	private String ctime;
+	private String etime;
 	private Integer ptime;
 	
-	private List<FamilyPeopleAppointment> peoples;
 	private List<BuyOrderItemBean> items;
 	
 	public Long getId() {
@@ -71,12 +69,6 @@ public class BuyOrderBean {
 	public void setIsDel(Integer isDel) {
 		this.isDel = isDel;
 	}
-	public Integer getCtime() {
-		return ctime;
-	}
-	public void setCtime(Integer ctime) {
-		this.ctime = ctime;
-	}
 	public Integer getPtime() {
 		return ptime;
 	}
@@ -95,12 +87,6 @@ public class BuyOrderBean {
 	public void setTotalPrice(String totalPrice) {
 		this.totalPrice = totalPrice;
 	}
-	public List<FamilyPeopleAppointment> getPeoples() {
-		return peoples;
-	}
-	public void setPeoples(List<FamilyPeopleAppointment> peoples) {
-		this.peoples = peoples;
-	}
 	public Integer getAppointmentNum() {
 		return appointmentNum;
 	}
@@ -113,4 +99,16 @@ public class BuyOrderBean {
 	public void setItems(List<BuyOrderItemBean> items) {
 		this.items = items;
 	}
+	public String getCtime() {
+		return ctime;
+	}
+	public void setCtime(String ctime) {
+		this.ctime = ctime;
+	}
+	public String getEtime() {
+		return etime;
+	}
+	public void setEtime(String etime) {
+		this.etime = etime;
+	}
 }

+ 9 - 0
shop/src/main/java/com/zskk/shop/controller/bean/BuyOrderItemBean.java

@@ -8,6 +8,8 @@
 
 package com.zskk.shop.controller.bean;
 
+import com.zskk.shop.dao.entry.FamilyPeopleAppointment;
+
 public class BuyOrderItemBean {
 	private Long id;
 	private Long bid;
@@ -18,6 +20,7 @@ public class BuyOrderItemBean {
 	private Integer ctime;
 	
 	private GoodBean good;
+	private FamilyPeopleAppointment fa;
 	
 	public Long getId() {
 		return id;
@@ -67,4 +70,10 @@ public class BuyOrderItemBean {
 	public void setGood(GoodBean good) {
 		this.good = good;
 	}
+	public FamilyPeopleAppointment getFa() {
+		return fa;
+	}
+	public void setFa(FamilyPeopleAppointment fa) {
+		this.fa = fa;
+	}
 }

+ 33 - 0
shop/src/main/java/com/zskk/shop/controller/bean/FamilyPeopleAppointmentBean.java

@@ -0,0 +1,33 @@
+/**
+* @版权信息 (@copyright Copyright 2017-XXXX JDJR.COM All Right Reserved);
+* @see
+* @author 于海涛 京东金融【技术研发部-证券及营销平台研发部-营销平台研发部】
+* @version 1.0
+* @date 2018年5月29日
+*/
+
+package com.zskk.shop.controller.bean;
+
+public class FamilyPeopleAppointmentBean extends FamilyPeopleBean{
+	private Integer aid;
+	private String atime;
+	private String extend;
+	public Integer getAid() {
+		return aid;
+	}
+	public void setAid(Integer aid) {
+		this.aid = aid;
+	}
+	public String getAtime() {
+		return atime;
+	}
+	public void setAtime(String atime) {
+		this.atime = atime;
+	}
+	public String getExtend() {
+		return extend;
+	}
+	public void setExtend(String extend) {
+		this.extend = extend;
+	}
+}

+ 21 - 1
shop/src/main/java/com/zskk/shop/controller/bean/FamilyPeopleBean.java

@@ -13,6 +13,9 @@ public class FamilyPeopleBean {
 	private String name;
 	private String phone;
 	private String idcard;
+	private Integer sex;
+	private String birth;
+	private String address;
 	public Integer getId() {
 		return id;
 	}
@@ -37,5 +40,22 @@ public class FamilyPeopleBean {
 	public void setIdcard(String idcard) {
 		this.idcard = idcard;
 	}
-	
+	public Integer getSex() {
+		return sex;
+	}
+	public void setSex(Integer sex) {
+		this.sex = sex;
+	}
+	public String getBirth() {
+		return birth;
+	}
+	public void setBirth(String birth) {
+		this.birth = birth;
+	}
+	public String getAddress() {
+		return address;
+	}
+	public void setAddress(String address) {
+		this.address = address;
+	}
 }

+ 54 - 14
shop/src/main/java/com/zskk/shop/controller/web/AppointmentController.java

@@ -10,6 +10,7 @@ package com.zskk.shop.controller.web;
 
 import java.util.List;
 
+import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
@@ -18,16 +19,22 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
+import com.alibaba.fastjson.JSON;
 import com.zskk.shop.controller.AbstractController;
 import com.zskk.shop.controller.bean.BuyOrderBean;
 import com.zskk.shop.controller.bean.ControllerResult;
 import com.zskk.shop.controller.bean.UserBean;
 import com.zskk.shop.dao.entry.BuyOrder;
+import com.zskk.shop.dao.entry.BuyOrderItem;
 import com.zskk.shop.dao.entry.FamilyPeople;
+import com.zskk.shop.dao.entry.FamilyPeopleAppointment;
 import com.zskk.shop.exception.ErrorConstant;
 import com.zskk.shop.exception.ZSKKException;
 import com.zskk.shop.service.BuyOrderService;
 import com.zskk.shop.service.FamilyPeopleService;
+import com.zskk.shop.service.GoodService;
+import com.zskk.shop.service.TJCenterService;
+import com.zskk.shop.utils.ToolsUtil;
 
 @Controller
 @RequestMapping("/appointment")
@@ -39,23 +46,42 @@ public class AppointmentController extends AbstractController {
 	@Autowired
 	private BuyOrderService buyOrderService;
 	
-	@RequestMapping("/go/{bid}")
-	public String go(Model model, @PathVariable("bid") Long bid){
+	@Autowired
+	private GoodService goodService;
+	
+	@Autowired
+	private TJCenterService tjCenterService;
+	
+	@RequestMapping("/goappointment/{bid}/{itemid}")
+	public String go(Model model, @PathVariable("bid") Long bid, @PathVariable("itemid") Long itemid){
 		UserBean userBean 			= this.getUser();
-		BuyOrder buyOrder 			= buyOrderService.queryBuyOrder(bid);
-		BuyOrderBean buyOrderBean 	= buyOrderService.toBuyOrderBean(buyOrder);
+		BuyOrderItem item			= buyOrderService.queryItem(itemid);
+		if (item == null){
+			throw new ZSKKException(ErrorConstant.PARAM_ERROR);
+		}
+		if (!item.getBid().equals(bid)){
+			throw new ZSKKException(ErrorConstant.PARAM_ERROR);
+		}
+		
+		List<String> tjCheckList	= tjCenterService.getDJDetail("49");
 		List<FamilyPeople> peoples	= familyPeopleService.queryMyPeoples(userBean.getUserid());
+
 		
-		model.addAttribute("buyOrder", buyOrderBean);
+		model.addAttribute("good", goodService.queryOneGoodBase(item.getGid()));
+		model.addAttribute("checklist", tjCheckList);
 		model.addAttribute("peoples", peoples);
+		model.addAttribute("peoplesJSON", JSON.toJSONString(peoples));
+		model.addAttribute("bid", bid);
+		model.addAttribute("itemid", itemid);
 		this.initUser(model);
 		return "/appointment";
 	}
 	
-	@RequestMapping("/start")
+	@RequestMapping("/save")
 	@ResponseBody
-	public ControllerResult start(Model model, @RequestParam("bid") Long bid, @RequestParam("fid") Integer fid, 
-			@RequestParam("atime") String atime, @RequestParam("extend") String extend){
+	public ControllerResult save(Model model, @RequestParam("bid") Long bid, @RequestParam("itemid") Long itemid, 
+			@RequestParam("fid") Integer fid, @RequestParam("idcard") String idcard, @RequestParam("name") String name, @RequestParam("sex") Integer sex,
+			@RequestParam("phone") String phone, @RequestParam("atime") String atime){
 		UserBean userBean 	= this.getUser();
 		BuyOrder buyOrder 	= buyOrderService.queryBuyOrder(bid);
 		if (buyOrder == null){
@@ -64,14 +90,28 @@ public class AppointmentController extends AbstractController {
 		if (!buyOrder.getPayStatus().equals(BuyOrderService.PAY_STATUS_PAYED)){
 			throw new ZSKKException(ErrorConstant.PARAM_ERROR);
 		}
-		FamilyPeople people = familyPeopleService.queryMyPeople(fid);
-		if (people == null){
-			throw new ZSKKException(ErrorConstant.PARAM_ERROR);
+		FamilyPeople people = null;
+		if (fid.equals(0)){ //新建
+			people = new FamilyPeople();
+			people.setAddress("");
+			people.setBirth("");
+			people.setCtime(ToolsUtil.getNow());
+			people.setIsDel(0);
+			people.setUid(userBean.getUserid());
+		}else{
+			people = familyPeopleService.queryMyPeople(fid);
+			if (people == null){
+				throw new ZSKKException(ErrorConstant.PARAM_ERROR);
+			}
 		}
+		people.setName(name);
+		people.setSex(sex);
+		people.setIdcard(idcard);
+		people.setPhone(phone);
+		BuyOrderItem item = buyOrderService.queryItem(itemid);
+		familyPeopleService.addAppointment(userBean, people, buyOrder, item, atime, "");
 		
-		familyPeopleService.addAppointment(userBean, people, buyOrder, atime, extend);
-		
-		return new ControllerResult(Boolean.TRUE);
+		return new ControllerResult(people);
 	}
 	
 }

+ 4 - 5
shop/src/main/java/com/zskk/shop/controller/web/BuyOrderController.java

@@ -53,20 +53,19 @@ public class BuyOrderController extends AbstractController {
 	@Autowired
 	private FamilyPeopleService familyPeopleService;
 	
-	@RequestMapping("/myorders")
+	@RequestMapping("/mypayedorders")
 	public String myorders(Model model){
 		UserBean userBean			= this.getUser();
 		String uid 					= userBean.getUserid();
-		List<BuyOrder> orders 		= buyOrderService.queryMyBuyOrders(uid);
+		List<BuyOrder> orders 		= buyOrderService.queryMyPayedOrders(uid);
 		List<BuyOrderBean> beans 	= new ArrayList<>(orders.size());
 		for (BuyOrder order: orders){
 			BuyOrderBean bean = buyOrderService.toBuyOrderBean(order);
-			bean.setPeoples(familyPeopleService.getAppointmentFamilyPeoples(bean.getId()));
 			beans.add(bean);
 		}
 		model.addAttribute("orders", beans);
 		this.initUser(model);
-		return "/myorders";
+		return "/mypayedorders";
 	}
 	
 	/**
@@ -87,7 +86,7 @@ public class BuyOrderController extends AbstractController {
 		
 		BuyOrder buyOrder = buyOrderService.buy(uid, uname, uphone, goodBase, goodPrice, num);
 		
-		return this.showPayOrdeDtail(model, buyOrder);
+		return "redirect:/pay/" + buyOrder.getId();
 	}
 	
 	@RequestMapping("/pay/{id}")

+ 0 - 16
shop/src/main/java/com/zskk/shop/controller/web/FamilyPeopleController.java

@@ -37,22 +37,6 @@ public class FamilyPeopleController extends AbstractController {
 		return JSON.toJSONString(beans);
 	}
 	
-	@RequestMapping("/add")
-	@ResponseBody
-	public String add(@RequestParam(name="name") String name, @RequestParam(name="phone") String phone, @RequestParam(name="idcard", required=false, defaultValue="") String idcard){
-		String uid = this.getUser().getUserid();
-		familyPeopleService.addMyPeople(uid, name, phone, idcard);
-		return this.index();
-	}
-	
-	@RequestMapping("/update")
-	@ResponseBody
-	public String update(@RequestParam(name="name") String name, @RequestParam("id") Integer id, @RequestParam("phone") String phone, @RequestParam(name="idcard", required=false, defaultValue="") String idcard){
-		String uid = this.getUser().getUserid();
-		familyPeopleService.updateMyPeople(uid, id, name, phone, idcard);
-		return this.index();
-	}
-	
 	@RequestMapping("/del")
 	@ResponseBody
 	public String del(@RequestParam("id") Integer id){

+ 2 - 0
shop/src/main/java/com/zskk/shop/dao/BuyOrderMapper.java

@@ -17,6 +17,7 @@ import com.zskk.shop.dao.entry.BuyOrderItem;
 
 public interface BuyOrderMapper {
 	List<BuyOrder> queryMyBuyOrders(String uid);
+	List<BuyOrder> queryMyPayedOrders(String uid);
 	
 	BuyOrder queryBuyOrder(Long id);
 	
@@ -27,5 +28,6 @@ public interface BuyOrderMapper {
 	int setBuyOrderAppointmentNum(@Param("id") Long id, @Param("appointmentNum") Integer appointmentNum, @Param("oldNum") Integer oldNum);
 
 	List<BuyOrderItem> queryItems(Long bid);
+	BuyOrderItem queryItem(Long id);
 	void addItems(@Param("items") List<BuyOrderItem> items);
 }

+ 3 - 1
shop/src/main/java/com/zskk/shop/dao/FamilyPeopleMapper.java

@@ -10,6 +10,8 @@ package com.zskk.shop.dao;
 
 import java.util.List;
 
+import org.apache.ibatis.annotations.Param;
+
 import com.zskk.shop.dao.entry.Appointment;
 import com.zskk.shop.dao.entry.FamilyPeople;
 import com.zskk.shop.dao.entry.FamilyPeopleAppointment;
@@ -27,5 +29,5 @@ public interface FamilyPeopleMapper {
 	int delMyPeople(FamilyPeople p);
 	
 	void insertAppointment(Appointment appointment);
-	List<FamilyPeopleAppointment> queryAppointmentFamily(Long bid);
+	FamilyPeopleAppointment queryAppointmentFamily(@Param("bid") Long bid, @Param("itemid") Long itemid);
 }

+ 13 - 6
shop/src/main/java/com/zskk/shop/dao/entry/Appointment.java

@@ -11,6 +11,7 @@ package com.zskk.shop.dao.entry;
 public class Appointment {
 	private Integer id;
 	private Long bid;
+	private Long itemid;
 	private Integer fid;
 	private String atime;
 	private String extend;
@@ -21,12 +22,6 @@ public class Appointment {
 	public void setId(Integer id) {
 		this.id = id;
 	}
-	public Long getBid() {
-		return bid;
-	}
-	public void setBid(Long bid) {
-		this.bid = bid;
-	}
 	public Integer getCtime() {
 		return ctime;
 	}
@@ -51,4 +46,16 @@ public class Appointment {
 	public void setFid(Integer fid) {
 		this.fid = fid;
 	}
+	public Long getItemid() {
+		return itemid;
+	}
+	public void setItemid(Long itemid) {
+		this.itemid = itemid;
+	}
+	public Long getBid() {
+		return bid;
+	}
+	public void setBid(Long bid) {
+		this.bid = bid;
+	}
 }

+ 14 - 2
shop/src/main/java/com/zskk/shop/dao/entry/FamilyPeopleAppointment.java

@@ -10,12 +10,24 @@ package com.zskk.shop.dao.entry;
 
 public class FamilyPeopleAppointment extends FamilyPeople {
 	private Integer aid;
-
+	private String atime;
+	private String extend;
 	public Integer getAid() {
 		return aid;
 	}
-
 	public void setAid(Integer aid) {
 		this.aid = aid;
 	}
+	public String getAtime() {
+		return atime;
+	}
+	public void setAtime(String atime) {
+		this.atime = atime;
+	}
+	public String getExtend() {
+		return extend;
+	}
+	public void setExtend(String extend) {
+		this.extend = extend;
+	}
 }

+ 33 - 3
shop/src/main/java/com/zskk/shop/service/BuyOrderService.java

@@ -10,6 +10,7 @@ package com.zskk.shop.service;
 
 import java.math.BigDecimal;
 import java.util.ArrayList;
+import java.util.Calendar;
 import java.util.List;
 
 import org.springframework.beans.factory.annotation.Autowired;
@@ -56,6 +57,9 @@ public class BuyOrderService {
 	@Autowired
 	private GoodService goodService;
 	
+	@Autowired
+	private FamilyPeopleService familyPeopleService;
+	
 	/**
 	 * 查询自己的订单
 	 * @param uid
@@ -65,6 +69,15 @@ public class BuyOrderService {
 		return buyOrderMapper.queryMyBuyOrders(uid);
 	}
 	
+	/**
+	 * 查询已支付的订单
+	 * @param uid
+	 * @return
+	 */
+	public List<BuyOrder> queryMyPayedOrders(String uid){
+		return buyOrderMapper.queryMyPayedOrders(uid);
+	}
+	
 	/**
 	 * 查询订单
 	 * @param id
@@ -77,8 +90,17 @@ public class BuyOrderService {
 	/**
 	 * 查询订单内容
 	 */
-	public List<BuyOrderItem> queryBuyOrderItems(Long id){
-		return buyOrderMapper.queryItems(id);
+	public List<BuyOrderItem> queryBuyOrderItems(Long bid){
+		return buyOrderMapper.queryItems(bid);
+	}
+	
+	/**
+	 * 查询订单内容
+	 * @param id
+	 * @return
+	 */
+	public BuyOrderItem queryItem(Long id){
+		return buyOrderMapper.queryItem(id);
 	}
 	
 	/**
@@ -175,8 +197,12 @@ public class BuyOrderService {
 	 * @return
 	 */
 	public BuyOrderBean toBuyOrderBean(BuyOrder buyOrder){
+		Calendar etime = Calendar.getInstance();
+		etime.setTimeInMillis(buyOrder.getCtime() * 1000L);
+		etime.add(Calendar.MONTH, 1);
+		
 		BuyOrderBean bean = new BuyOrderBean();
-		bean.setCtime(buyOrder.getCtime());
+		bean.setCtime(ToolsUtil.formatTime(buyOrder.getCtime(), ToolsUtil.getUseTimeFormat()));
 		bean.setId(buyOrder.getId());
 		bean.setIsDel(buyOrder.getIsDel());
 		bean.setPayStatus(buyOrder.getPayStatus());
@@ -186,6 +212,7 @@ public class BuyOrderService {
 		bean.setUname(buyOrder.getUname());
 		bean.setUphone(buyOrder.getUphone());
 		bean.setAppointmentNum(buyOrder.getAppointmentNum());
+		bean.setEtime(ToolsUtil.formatTime(etime.getTime(), ToolsUtil.getUseTimeFormat()));
 		
 		List<BuyOrderItem> items 	= this.queryBuyOrderItems(buyOrder.getId());
 		bean.setItems(this.toItemBeans(items));
@@ -212,6 +239,7 @@ public class BuyOrderService {
 	 */
 	public BuyOrderItemBean toItemBean(BuyOrderItem item){
 		BuyOrderItemBean bean = new BuyOrderItemBean();
+		bean.setId(item.getId());
 		bean.setBid(item.getBid());
 		bean.setCtime(item.getCtime());
 		bean.setGid(item.getGid());
@@ -221,6 +249,8 @@ public class BuyOrderService {
 		
 		GoodBase good = goodService.queryOneGoodBase(item.getGid());
 		bean.setGood(goodService.toBaseGoodBean(good));
+		bean.setFa(familyPeopleService.getAppointmentFamilyPeoples(item.getBid(), item.getId()));
+		
 		return bean;
 	}
 }

+ 26 - 7
shop/src/main/java/com/zskk/shop/service/FamilyPeopleService.java

@@ -22,6 +22,7 @@ import com.zskk.shop.controller.bean.UserBean;
 import com.zskk.shop.dao.FamilyPeopleMapper;
 import com.zskk.shop.dao.entry.Appointment;
 import com.zskk.shop.dao.entry.BuyOrder;
+import com.zskk.shop.dao.entry.BuyOrderItem;
 import com.zskk.shop.dao.entry.FamilyPeople;
 import com.zskk.shop.dao.entry.FamilyPeopleAppointment;
 import com.zskk.shop.exception.ErrorConstant;
@@ -66,13 +67,17 @@ public class FamilyPeopleService {
 	 * @param idcard
 	 * @return
 	 */
-	public FamilyPeople addMyPeople(String uid, String name, String phone, String idcard){
+	public FamilyPeople addMyPeople(String uid, String name, String phone, String idcard, Integer sex){
 		FamilyPeople p = new FamilyPeople();
 		p.setCtime(ToolsUtil.getNow());
 		p.setIdcard(idcard);
 		p.setName(name);
 		p.setPhone(phone);
 		p.setUid(uid);
+		p.setSex(sex);
+		p.setAddress("");
+		p.setBirth("");
+		p.setIsDel(0);
 		familyPeopleMapper.addMyPeople(p);
 		return p;
 	}
@@ -86,7 +91,7 @@ public class FamilyPeopleService {
 	 * @param idcard
 	 * @return
 	 */
-	public FamilyPeople updateMyPeople(String uid, Integer id, String name, String phone, String idcard){
+	public FamilyPeople updateMyPeople(String uid, Integer id, String name, String phone, String idcard, Integer sex){
 		FamilyPeople people = this.queryMyPeople(id);
 		if (people == null){
 			throw new ZSKKException(ErrorConstant.PARAM_ERROR);
@@ -97,6 +102,7 @@ public class FamilyPeopleService {
 		people.setName(name);
 		people.setPhone(phone);
 		people.setIdcard(idcard);
+		people.setSex(sex);
 		familyPeopleMapper.updateMyPeople(people);
 		return people;
 	}
@@ -128,11 +134,19 @@ public class FamilyPeopleService {
 	 * @param extend
 	 */
 	@Transactional
-	public void addAppointment(UserBean userBean, FamilyPeople people, BuyOrder order, String atime, String extend){
+	public void addAppointment(UserBean userBean, FamilyPeople people, BuyOrder order, BuyOrderItem item, String atime, String extend){
+		
+		//维护家人 
+		if (people.getId().equals(0)){
+			addMyPeople(userBean.getUserid(), people.getName(), people.getPhone(), people.getIdcard(), people.getSex());
+		}else{
+			updateMyPeople(userBean.getUserid(), people.getId(), people.getName(), people.getPhone(), people.getIdcard(), people.getSex());
+		}
 		
 		Appointment appointment = new Appointment();
-		appointment.setAtime(atime);
 		appointment.setBid(order.getId());
+		appointment.setAtime(atime);
+		appointment.setItemid(item.getId());
 		appointment.setExtend(extend);
 		appointment.setFid(people.getId());
 		appointment.setCtime(ToolsUtil.getNow());
@@ -146,7 +160,7 @@ public class FamilyPeopleService {
 		}
 
 		//向体检系统 发起体检请求
-		tjCenterService.appointment(people, order, atime, extend);
+		//tjCenterService.appointment(people, order, atime, extend);
 	}
 	
 	/**
@@ -154,8 +168,8 @@ public class FamilyPeopleService {
 	 * @param bid
 	 * @return
 	 */
-	public List<FamilyPeopleAppointment> getAppointmentFamilyPeoples(Long bid){
-		return familyPeopleMapper.queryAppointmentFamily(bid);
+	public FamilyPeopleAppointment getAppointmentFamilyPeoples(Long bid, Long itemid){
+		return familyPeopleMapper.queryAppointmentFamily(bid, itemid);
 	}
 	
 	/**
@@ -169,6 +183,9 @@ public class FamilyPeopleService {
 		bean.setIdcard(people.getIdcard());
 		bean.setName(people.getName());
 		bean.setPhone(people.getPhone());
+		bean.setSex(people.getSex());
+		bean.setBirth(people.getBirth());
+		bean.setAddress(people.getAddress());
 		return bean;
 	}
 	
@@ -179,4 +196,6 @@ public class FamilyPeopleService {
 		}
 		return beans;
 	}
+	
+	
 }

+ 4 - 0
shop/src/main/java/com/zskk/shop/utils/ToolsUtil.java

@@ -71,6 +71,10 @@ public class ToolsUtil {
 		return new SimpleDateFormat("yyyyMMddHHmmss");
 	}
 	
+	public static SimpleDateFormat getUseTimeFormat(){
+		return new SimpleDateFormat("yyyy年MM月dd日");
+	}
+	
 	public static SimpleDateFormat getAliBillFormat(){
 		return getBirthFormat();
 	}

+ 11 - 0
shop/src/main/resource/mapper/BuyOrderMapper.xml

@@ -11,6 +11,12 @@
 		where is_del=0 and uid=#{uid}
 		order by id desc
 	</select>
+	<select id="queryMyPayedOrders" resultType="com.zskk.shop.dao.entry.BuyOrder">
+		select <include refid="selectBuyOrder"></include>	
+		from buy_order
+		where uid=#{uid} and pay_status=1
+		order by id desc
+	</select>
 	<select id="queryBuyOrder" resultType="com.zskk.shop.dao.entry.BuyOrder">
 		select <include refid="selectBuyOrder"></include>	
 		from buy_order
@@ -41,6 +47,11 @@
 		from buy_order_item
 		where bid=#{bid}
 	</select>
+	<select id="queryItem" resultType="com.zskk.shop.dao.entry.BuyOrderItem">
+		select <include refid="items"></include>
+		from buy_order_item
+		where id=#{id}
+	</select>
 	<insert id="addItems">
 		insert into buy_order_item(bid, gid, num, price, total_price, ctime) values
 		<foreach collection="items" open="" close=";" separator="," item="item">

+ 5 - 4
shop/src/main/resource/mapper/FamilyPeopleMapper.xml

@@ -27,12 +27,13 @@
 	</update>
 	
 	<insert id="insertAppointment" parameterType="com.zskk.shop.dao.entry.Appointment">
-		insert into appointment(bid, fid, atime, extend, ctime)
-		values(#{bid}, #{fid}, #{atime}, #{extend}, #{ctime})
+		insert into appointment(bid, itemid, fid, atime, extend, ctime)
+		values(#{bid}, ${itemid}, #{fid}, #{atime}, #{extend}, #{ctime})
 	</insert>
 	<select id="queryAppointmentFamily" resultType="com.zskk.shop.dao.entry.FamilyPeopleAppointment">
-		select f.id, f.uid, f.name, f.phone, f.idcard, f.ctime, f.is_del as isDel,a.id as aid
+		select f.id, f.uid, f.name, f.phone, f.idcard, f.ctime, f.is_del as isDel,a.id as aid, a.atime, a.extend
 		from family_people f join appointment a on f.id=a.fid
-		where a.bid=#{bid}
+		where a.bid=#{bid} and a.itemid=${itemid}
+		limit 1
 	</select>
 </mapper>

+ 357 - 113
shop/src/main/resource/templates/appointment.html

@@ -1,131 +1,375 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
-
 <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-    <title>黑龙江昆仑盛和安体检中心</title>
-    <link rel="stylesheet" type="text/css" href="/style/common.css"/>
-    <link rel="stylesheet" type="text/css" href="/style/shop.css"/>
-    <!--[if lt IE 9]> 
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<title>黑龙江昆仑盛和安体检中心</title>
+<link rel="stylesheet" type="text/css" href="/style/common.css" />
+<link rel="stylesheet" type="text/css" href="/style/user.css" />
+<!--[if lt IE 9]> 
 <script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script> 
 <![endif]-->
-    <!--窗口自适应适配低端IE-->
-    <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
-    <style type="text/css">
+<!--窗口自适应适配低端IE-->
+<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
+<style type="text/css">
 	.show {
 		display: block;
 	}
+	.showtable {
+		display: table;
+	}
 	.hidden {
 		display: none;
 	}
-	.tab-1-EEE a {
-		color: #0FAFD4;
-		font-size: 16px;
-	}
 </style>
 </head>
 
 <body>
-    <div class="bgF4 h32 lh32">
-        <div class="wp">
-            <div class="top_z l">昆仑医疗集团</div>
-            <div class="topWx y">官方微信&nbsp;</div>
-            <div class="y"><a href="/myorders" class="mr20 topYy">预约体检</a><a href="#" class="mr20 topBg">报告查询</a></div>
-            <div class="y topLogin mr20">
-            	<a href="#">
-	            	<span th:if="${!islogin}">
-						<a href="http://testuc.pacsonline.cn/#/reg" class="reg" >注册</a>&nbsp;/&nbsp;
-						<a href="http://testuc.pacsonline.cn/">登录</a><span></span>
-					</span>
-					<span th:if="${islogin}">
-						<a href="#" th:text="${user.name}"></a>
-					</span>
-				</a>
-            </div>
-        </div>
-    </div>
-    <div class="h60 bgFF pt25 pb40">
-        <div class="wp h60 positionR">
-            <div class="logo l"><img src="/style/logo-n.png" /></div>
-            <div class="Cart y">
-                <!--当购物车大于0时	,输出class="Cart y"--><a href="#"><strong class="l">2</strong><span>我的购物车</span></a></div>
-            <div class="y mr40">
-                <div class="mt10 f12 c999 text-r">服务电话</div>
-                <div class="mt10 f14 c666">400-897-9898</div>
-            </div>
-            <div class="y mr40">
-                <div class="mt10 f12 c999 text-r">中心地址</div>
-                <div class="mt10 f14 c666">哈尔滨市南岗区学府路239号 / 英伦名邸1A栋</div>
-            </div>
+	<div class="bgF4 h32 lh32">
+		<div class="wp">
+			<div class="top_z l">昆仑医疗集团</div>
+			<div class="topWx y">官方微信&nbsp;</div>
+			<div class="y">
+				<a href="/mypayedorders" class="mr20 topYy">预约体检</a> <a href="#"
+					class="mr20 topBg">报告查询</a>
+			</div>
+			<div class="y topLogin mr20">
+				<div th:if="${!islogin}">
+					<a href="http://testuc.pacsonline.cn/#/reg" class="reg">注册</a>&nbsp;/&nbsp;
+					<a href="http://testuc.pacsonline.cn/">登录</a><span></span>
+				</div>
+				<div th:if="${islogin}">
+					<a class="reg" href="#" th:text="${user.name}"></a>
+				</div>
+			</div>
+		</div>
+	</div>
+	<div class="h60 bgFF pt25 pb40">
+		<div class="wp h60 positionR">
+			<div class="logo l">
+				<img src="/style/logo-n.png" />
+			</div>
+			<div class="Cart y">
+				<!--当购物车大于0时,输出class="Cart y"-->
+				<a href="#"><strong class="l">2</strong><span>我的购物车</span></a>
+			</div>
+			<div class="y mr40">
+				<div class="mt10 f12 c999 text-r">服务电话</div>
+				<div class="mt10 f14 c666">400-897-9898</div>
+			</div>
+			<div class="y mr40">
+				<div class="mt10 f12 c999 text-r">中心地址</div>
+				<div class="mt10 f14 c666">哈尔滨市南岗区学府路239号 / 英伦名邸1A栋</div>
+			</div>
 
-            <div class="nav wp">
-                <ul>
-                    <li><a href="#">首页</a></li>
-                    <li><a href="/">体检套餐</a></li>
-                    <li><a href="#">医技检查</a></li>
-                    <li><a href="#">中心专家</a></li>
-                    <li><a href="#">设备介绍</a></li>
-                </ul>
-            </div>
-        </div>
-    </div>
-    <div class="wp">
-        <div class="main bgFF">
-            <div class="d-view">
-                <div class="f14 bgF4 h32 lh32 pl20 mt20">预约体检</div>
-            </div>
-        </div>
-    </div>
+			<div class="nav wp">
+				<ul>
+					<li><a href="#">首页</a></li>
+					<li><a href="/">体检套餐</a></li>
+					<li><a href="#">医技检查</a></li>
+					<li><a href="#">中心专家</a></li>
+					<li><a href="#">设备介绍</a></li>
+				</ul>
+				<div class="search-box"></div>
+			</div>
+		</div>
+	</div>
+	<div class="wp">
+		<div class="main bgFF">
+			<ul class="subnav l mt20">
+				<li class="u2"><a href="/mypayedorders" class="ca">预约体检</a></li>
+				<li class="u3"><a href="####">报告查询</a></li>
+				<li class="u4"><a href="####">商城订单</a></li>
+				<li class="u6"><a href="####">常见问题</a></li>
+				<li class="u7"><a href="#">修改密码</a></li>
+				<li class="u8"><a href="#">退出登录</a></li>
+			</ul>
+			<div class="l" style="width: 80%;">
+				<div class="clearfix mt20">
+					<strong class="f16" th:text="${good.name}"></strong><span
+						class="y f12 cBlue">适应人群:*</span>
+				</div>
+				<div class="u-speed-bar">
+					<table>
+						 <td class="ing" id="step1"><div class="axis"></div><dl><dt  id="step1Num">1</dt><dd>查看套餐详情</dd></dl></td>
+                         <td class="soon" id="step2"><div class="axis"></div><dl><dt id="step2Num">2</dt><dd>填写体检人信息</dd></dl></td>
+                         <td class="soon" id="step3"><div class="axis"></div><dl><dt id="step3Num">3</dt><dd>完成预约</dd></dl></td>
+					</table>
+				</div>
+				<div id="step1Content">
+					<table class="tab-1-EEE mt20">
+					<thead>
+						<tr>
+							<td>项目</td>
+							<td>指标</td>
+						</tr>
+					</thead>
+					<tbody>
+						<tr th:each="name : ${checklist}">
+							<td width="90" th:text="${name}"></td>
+							<td></td>
+						</tr>
+					</tbody>
+					</table>
+					<div class="user_speed_nextBar">
+						<a href="javascript:step2();" class="nextBtn" >下一步</a>
+					</div>	
+				</div>
+				
+				<div id="step2Content" class="hidden">
+					<div class="u-form" >
+	                    <dl>
+	                    	<dt>选择体检人:</dt>
+	                    	<dd>
+                            <label class="label">
+                                <input class="radio" type="radio" name="people" checked="checked" value="0"/>
+                                <span class="radioInput"></span>
+                                <span>新建体检人</span>
+                            </label>
+                        	</dd>
+	                    	<dd th:each="people:${peoples}">
+	                        	<label class="label">
+	                        		<input class="radio" type="radio" name="people" th:attr="value=${people.id}"/>
+	                        		<span class="radioInput"></span>
+	                        		<span th:text="${people.name}"></span>
+	                        	</label>
+	                        </dd>
+	                    </dl><!--已做过体检则有记录,选择某人后自动填充-->
+	                    <div style="width:100%; height:1px; background-color:#EEE; font-size:0; "></div>
+	                  	<dl>
+	                  		<dt>体检人证件号:</dt>
+	                  		<dd>
+	                  			<select class="slt">
+	                  				<option>身份证</option>
+	                  			</select>
+	                  			<input id="idcard" type="text" class="txt ml5" style="width:231px; " placeholder="请输入身份证号码" maxlength="19"/>
+	                  		</dd>
+	                  	</dl>
+	                    <dl>
+	                    	<dt>姓名:</dt>
+	                    	<dd>
+	                    		<input id="name" type="text" class="txt" placeholder="请输入与证件上一致的体检人姓名" style="width:300px; " maxlength="32"/>
+	                    	</dd>
+	                    </dl>
+	                    <dl>
+	                    	<dt>性别:</dt>
+	                    	<dd>
+	                            <label class="label"><input id="sex1" class="radio" type="radio" name="sex" value="1"/><span class="radioInput"></span>男</label>
+	                        </dd>
+	                    	<dd>
+	                        	<label class="label"><input id="sex0" class="radio" type="radio" name="sex" value="0"/><span class="radioInput"></span>女</label>
+	                        </dd>
+	                    </dl>
+	                    <dl>
+	                    	<dt>手机号码:</dt>
+	                    	<dd>
+	                    		<input id="phone" type="text" class="txt" style="width:300px; " placeholder="此手机号用于接收体检报告及预约信息" maxlength="32"/>
+	                    	</dd>
+	                    </dl>
+	                    <div style="width:100%; height:1px; background-color:#EEE; font-size:0; "></div>
+	                    <dl>
+	                    	<dt>预约体检日期:</dt>
+	                    	<dd>
+	                    		<input id="atime" name="" type="text" class="txt" style="width:160px;" />
+	                    		<select name="" class="slt" style="width:130px; ">
+	                    			<option>预约时间</option>
+	                    			<option>8:00 - 8:30</option>
+	                    			<option>8:30 - 9:00</option>
+	                    		</select>
+	                    	</dd>
+	                    </dl>
+	                </div>
+	                <div class="user_speed_nextBar">
+						<a href="javascript:step3();" class="nextBtn" >下一步</a><a href="javascript:step1();" class="preBtn" >上一步</a>
+					</div>
+                </div>
+                <div class="hidden" id="step3Content">
+                <div class="u-speed-tips"><h1>预约成功!</h1></div>
+                <table class="tab-1-EEE mt20">
+                	<tr><td><span class="f14 c999 w100 dis-ile-blk">体检人:</span><span class="f14 c666" id="successName"></span></td></tr>
+                    <tr><td><span class="f14 c999 w100 dis-ile-blk">生份证号:</span><span class="f14 c666" id="successIdcard"></span></td></tr>
+					<tr><td><span class="f14 c999 w100 dis-ile-blk">手机号:</span><span class="f14 c666" id="successPhone"></span></td></tr>
+                    <tr><td><span class="f14 c999 w100 dis-ile-blk">体检日期:</span><span class="f14 c666" id="successAtime"></span></td></tr>
+                    <tr><td><p class="lh32 f14 cred"><strong>温馨提示:</strong></p><p class="lh32 f14 cred">1. 体检一般空腹</p><p class="lh32 f14 cred">2. 体检前一天请勿饮酒</p></td></tr>
+                </table>
+				<div class="user_speed_nextBar">
+					<a href="/mypayedorders" class="nextBtn" >完成</a>
+				</div>
+				</div>
+			</div>
+		</div>
+	</div>
+	<div class="wp">
+		<div class="links">
+			<p>
+				<strong>友情链接:</strong><a href="####">黑龙江省卫计委</a><a href="####">哈尔滨市卫计委</a>
+			</p>
+		</div>
+		<table class="footer">
+			<tr>
+				<td width="390">
+					<dl>
+						<dt>中心介绍</dt>
+						<dd>
+							<a href="#">关于我们</a>
+						</dd>
+						<dd>
+							<a href="#">设备介绍</a>
+						</dd>
+						<dd>
+							<a href="#">中心专家</a>
+						</dd>
+					</dl>
+					<dl>
+						<dt>顾客服务</dt>
+						<dd>
+							<a href="#">预约体检</a>
+						</dd>
+						<dd>
+							<a href="#">报告查询</a>
+						</dd>
+						<dd>
+							<a href="#">常见问题</a>
+						</dd>
+					</dl>
+					<dl>
+						<dt>官方商城</dt>
+						<dd>
+							<a href="#">体检套餐</a>
+						</dd>
+						<dd>
+							<a href="#">医技检查</a>
+						</dd>
+						<dd>
+							<a href="#">订单查询</a>
+						</dd>
+					</dl>
+				</td>
+				<td class="news">
+					<ul>
+						<li><a href="####">昆仑盛和安体检中心通过安全消防审查</a></li>
+						<li><a href="####">全国爱牙日来临之际,昆仑盛和安体检中心诚邀您关爱口腔健康</a></li>
+						<li><a href="####">昆仑医疗集团妇儿医院成功进行奠基仪式</a></li>
+					</ul>
+				</td>
+				<td width="140">
+					<div class="wx">
+						<img src="/images/qrcode.png" />
+						<p>官方微信</p>
+					</div>
+				</td>
+			</tr>
+		</table>
+		<div class="lineDDD mt30"></div>
+		<div class="bottom">
+			<p>
+				<strong>黑龙江昆仑盛和安体检中心</strong>
+			</p>
+			<p>黑ICP备 + 黑公网安备 + 黑卫网审</p>
+			<p>+ 互联网医疗保健信息服务相关证号 +</p>
+			<p>
+				信息化支持单位:<a href="http://www.pacsonline.cn" target="_blank">北京中世康恺科技有限公司</a>
+			</p>
+		</div>
+	</div>
+	<div class="wxPopup"></div>
 
-    <div class="wp">
-        <div class="links">
-            <p><strong>友情链接:</strong><a href="####">黑龙江省卫计委</a><a href="####">哈尔滨市卫计委</a></p>
-        </div>
-        <table class="footer">
-            <tr>
-                <td width="390">
-                    <dl>
-                        <dt>中心介绍</dt>
-                        <dd><a href="#">关于我们</a></dd>
-                        <dd><a href="#">设备介绍</a></dd>
-                        <dd><a href="#">中心专家</a></dd>
-                    </dl>
-                    <dl>
-                        <dt>顾客服务</dt>
-                        <dd><a href="#">预约体检</a></dd>
-                        <dd><a href="#">报告查询</a></dd>
-                        <dd><a href="#">常见问题</a></dd>
-                    </dl>
-                    <dl>
-                        <dt>官方商城</dt>
-                        <dd><a href="#">体检套餐</a></dd>
-                        <dd><a href="#">医技检查</a></dd>
-                        <dd><a href="#">订单查询</a></dd>
-                    </dl>
-                </td>
-                <td class="news">
-                    <ul>
-                        <li><a href="####">昆仑盛和安体检中心通过安全消防审查</a></li>
-                        <li><a href="####">全国爱牙日来临之际,昆仑盛和安体检中心诚邀您关爱口腔健康</a></li>
-                        <li><a href="####">昆仑医疗集团妇儿医院成功进行奠基仪式</a></li>
-                    </ul>
-                </td>
-                <td width="140">
-                    <div class="wx"><img src="../images/qrcode.png" />
-                        <p>官方微信</p>
-                    </div>
-                </td>
-            </tr>
-        </table>
-        <div class="lineDDD mt30"></div>
-        <div class="bottom">
-            <p><strong>黑龙江昆仑盛和安体检中心</strong></p>
-            <p>黑ICP备 + 黑公网安备 + 黑卫网审</p>
-            <p>+ 互联网医疗保健信息服务相关证号 +</p>
-            <p>信息化支持单位:<a href="http://www.pacsonline.cn" target="_blank">北京中世康恺科技有限公司</a></p>
-        </div>
-    </div>
-    
+	<script th:inline="javascript">
+		/* <![CDATA[ */
+		var peoples = JSON.parse([[${peoplesJSON}]])
+		var bid		= [[${bid}]]
+		var itemid	= [[${itemid}]]
+		$("input[name=people]").click(function(){
+			var id = $(this).val();
+			if (id == "0"){
+				$("#idcard").val("");
+				$("#name").val("");
+				$("#sex1").attr("checked","checked")
+				$("#phone").val("")
+			}else{
+				for (var i = 0; i < peoples.length; ++i){
+					var obj = peoples[i]
+					if (obj.id==id){
+						$("#idcard").val(obj.idcard);
+						$("#name").val(obj.name);
+						$("#sex" + obj.sex).attr("checked","checked")
+						$("#phone").val(obj.phone)
+					}
+				}
+			}
+		});
+		
+		function step1(){
+			clearStep();
+			$("#step1").addClass("ing");
+			$("#step2").addClass("soon");
+			$("#step3").addClass("soon");
+			
+			$("#step1Content").removeClass("hidden").addClass("show");
+			$("#step1Num").empty().append(1);
+			$("#step2Num").empty().append(2);
+			$("#step3Num").empty().append(3);
+		}
+		
+		function step2(){
+			clearStep();
+			$("#step1").addClass("ed");
+			$("#step2").addClass("ing");
+			$("#step3").addClass("soon");
+			
+			$("#step2Content").removeClass("hidden").addClass("show");
+			$("#step1Num").empty();
+			$("#step2Num").empty().append(2);
+			$("#step3Num").empty().append(3);
+		}
+		
+		function step3(){
+			var fid 	= $("input[name=people]:checked").val();
+			var idcard 	= $("#idcard").val();
+			var name	= $("#name").val();
+			var sex		= $("input[name='sex']:checked").val();
+			var phone 	= $("#phone").val();
+			var atime	= $("#atime").val();
+			$.post("/appointment/save", {
+				"bid":bid, 
+				"itemid":itemid, 
+				"fid":fid,
+				"idcard":idcard,
+				"name":name,
+				"sex":sex,
+				"phone":phone,
+				"atime":atime
+				},function(result){
+					$("#successName").append(name);
+					$("#successIdcard").append(idcard);
+					$("#successPhone").append(phone);
+					$("#successAtime").append(atime);
+					clearStep();
+					$("#step1").addClass("ed");
+					$("#step2").addClass("ed");
+					$("#step3").addClass("ing");
+					
+					$("#step3Content").removeClass("hidden").addClass("show");
+					$("#step1Num").empty();
+					$("#step2Num").empty();
+					$("#step3Num").empty().append(3);
+				}
+			);
+		}
+		
+		function clearStep(){
+			
+			for(var i = 1; i < 3; ++i){
+				$("#step" + i).removeClass("ed");
+				$("#step" + i).removeClass("ing");
+				$("#step" + i).removeClass("soon");
+				
+				
+				$("#step" + i + "Content").addClass("hidden");
+				$("#step" + i + "Content").addClass("hidden");
+				$("#step" + i + "Content").addClass("hidden");
+			}	
+		}
+		/* ]]> */
+	</script>
 </body>
-
-</html>
+</html>

+ 4 - 1
shop/src/main/resource/templates/detail.html

@@ -24,7 +24,10 @@
     	<div class="wp">
         	<div class="top_z l">昆仑医疗集团</div>
             <div class="topWx y">官方微信&nbsp;</div>
-            <div class="y"><a href="/myorders" class="mr20 topYy">预约体检</a><a href="#" class="mr20 topBg">报告查询</a></div>
+            <div class="y">
+            	<a href="/mypayedorders" class="mr20 topYy">预约体检</a>
+            	<a href="#" class="mr20 topBg">报告查询</a>
+            </div>
             <div class="y topLogin mr20">
             	<div th:if="${!islogin}">
 				<a href="http://testuc.pacsonline.cn/#/reg" class="reg" >注册</a>&nbsp;/&nbsp;

+ 0 - 160
shop/src/main/resource/templates/myorders.html

@@ -1,160 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-<head>
-    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-    <title>黑龙江昆仑盛和安体检中心</title>
-    <link rel="stylesheet" type="text/css" href="/style/common.css"/>
-    <link rel="stylesheet" type="text/css" href="/style/shop.css"/>
-    <!--[if lt IE 9]> 
-<script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script> 
-<![endif]-->
-    <!--窗口自适应适配低端IE-->
-    <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
-    <style type="text/css">
-	.show {
-		display: block;
-	}
-	.hidden {
-		display: none;
-	}
-	.tab-1-EEE a {
-		color: #0FAFD4;
-		font-size: 16px;
-	}
-</style>
-</head>
-
-<body>
-    <div class="bgF4 h32 lh32">
-        <div class="wp">
-            <div class="top_z l">昆仑医疗集团</div>
-            <div class="topWx y">官方微信&nbsp;</div>
-            <div class="y"><a href="/myorders" class="mr20 topYy">预约体检</a><a href="#" class="mr20 topBg">报告查询</a></div>
-            <div class="y topLogin mr20">
-            	<a href="#">
-	            	<span th:if="${!islogin}">
-						<a href="http://testuc.pacsonline.cn/#/reg" class="reg" >注册</a>&nbsp;/&nbsp;
-						<a href="http://testuc.pacsonline.cn/">登录</a><span></span>
-					</span>
-					<span th:if="${islogin}">
-						<a href="#" th:text="${user.name}"></a>
-					</span>
-				</a>
-            </div>
-        </div>
-    </div>
-    <div class="h60 bgFF pt25 pb40">
-        <div class="wp h60 positionR">
-            <div class="logo l"><img src="/style/logo-n.png" /></div>
-            <div class="Cart y">
-                <!--当购物车大于0时,输出class="Cart y"--><a href="#"><strong class="l">2</strong><span>我的购物车</span></a></div>
-            <div class="y mr40">
-                <div class="mt10 f12 c999 text-r">服务电话</div>
-                <div class="mt10 f14 c666">400-897-9898</div>
-            </div>
-            <div class="y mr40">
-                <div class="mt10 f12 c999 text-r">中心地址</div>
-                <div class="mt10 f14 c666">哈尔滨市南岗区学府路239号 / 英伦名邸1A栋</div>
-            </div>
-
-            <div class="nav wp">
-                <ul>
-                    <li><a href="#">首页</a></li>
-                    <li><a href="/">体检套餐</a></li>
-                    <li><a href="#">医技检查</a></li>
-                    <li><a href="#">中心专家</a></li>
-                    <li><a href="#">设备介绍</a></li>
-                </ul>
-            </div>
-        </div>
-    </div>
-    <div class="wp">
-        <div class="main bgFF">
-            <div class="d-view">
-                <div class="f14 bgF4 h32 lh32 pl20 mt20">已购买商品清单</div>
-                <table class="tab-1-EEE mt15">
-                    <thead>
-                        <tr>
-                            <td>商品</td>
-                            <td>单价</td>
-                            <td>数量</td>
-                            <td></td>
-                        </tr>
-                    </thead>
-                    <tbody>
-                        <tr th:each="order : ${orders}">
-                            <td>
-                            	<a th:attr="href='/good/detail/' + ${order.good.gid}">
-                            	<img th:attr="src=${order.good.icon}" class="bor-img w60 h60 l mr5" />
-                            	</a>
-                            	<span class="f12 c666" th:text="${order.good.name}"></span>
-                            </td>
-                            <td th:text="'¥' + ${order.good.price.discountPrice}"></td>
-                            <td th:text="x + ${order.num}"></td>
-                            <td th:if="${order.payStatus eq 0}">
-                            	待支付 <a th:attr="href='/pay/'+${order.id}">去支付</a>
-                            </td>
-                            <td th:if="${order.payStatus eq 1}">
-                            	<a th:each="people : ${order.peoples}" th:attr="href=/appointment/${people.aid}" th:text="${people.name}&nbsp;"></a>
-                            	<a th:attr="href='/appointment/'+${order.id}" th:if="${order.appointmentNum lt order.num}">预约</a>
-                            </td>
-                        </tr>
-                    </tbody>
-                </table>
-            </div>
-        </div>
-    </div>
-
-    <div class="wp">
-        <div class="links">
-            <p><strong>友情链接:</strong><a href="####">黑龙江省卫计委</a><a href="####">哈尔滨市卫计委</a></p>
-        </div>
-        <table class="footer">
-            <tr>
-                <td width="390">
-                    <dl>
-                        <dt>中心介绍</dt>
-                        <dd><a href="#">关于我们</a></dd>
-                        <dd><a href="#">设备介绍</a></dd>
-                        <dd><a href="#">中心专家</a></dd>
-                    </dl>
-                    <dl>
-                        <dt>顾客服务</dt>
-                        <dd><a href="#">预约体检</a></dd>
-                        <dd><a href="#">报告查询</a></dd>
-                        <dd><a href="#">常见问题</a></dd>
-                    </dl>
-                    <dl>
-                        <dt>官方商城</dt>
-                        <dd><a href="#">体检套餐</a></dd>
-                        <dd><a href="#">医技检查</a></dd>
-                        <dd><a href="#">订单查询</a></dd>
-                    </dl>
-                </td>
-                <td class="news">
-                    <ul>
-                        <li><a href="####">昆仑盛和安体检中心通过安全消防审查</a></li>
-                        <li><a href="####">全国爱牙日来临之际,昆仑盛和安体检中心诚邀您关爱口腔健康</a></li>
-                        <li><a href="####">昆仑医疗集团妇儿医院成功进行奠基仪式</a></li>
-                    </ul>
-                </td>
-                <td width="140">
-                    <div class="wx"><img src="../images/qrcode.png" />
-                        <p>官方微信</p>
-                    </div>
-                </td>
-            </tr>
-        </table>
-        <div class="lineDDD mt30"></div>
-        <div class="bottom">
-            <p><strong>黑龙江昆仑盛和安体检中心</strong></p>
-            <p>黑ICP备 + 黑公网安备 + 黑卫网审</p>
-            <p>+ 互联网医疗保健信息服务相关证号 +</p>
-            <p>信息化支持单位:<a href="http://www.pacsonline.cn" target="_blank">北京中世康恺科技有限公司</a></p>
-        </div>
-    </div>
-    
-</body>
-
-</html>

+ 148 - 0
shop/src/main/resource/templates/mypayedorders.html

@@ -0,0 +1,148 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<title>黑龙江昆仑盛和安体检中心</title>
+<link rel="stylesheet" type="text/css" href="../style/common.css"></link>
+<link rel="stylesheet" type="text/css" href="../style/user.css"></link>
+<!--[if lt IE 9]> 
+<script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script> 
+<![endif]--><!--窗口自适应适配低端IE-->
+<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
+</head>
+
+<body>
+	<div class="bgF4 h32 lh32">
+    	<div class="wp">
+        	<div class="top_z l">昆仑医疗集团</div>
+            <div class="topWx y">官方微信&nbsp;</div>
+            <div class="y">
+            	<a href="mypayedorders" class="mr20 topYy">预约体检</a>
+            	<a href="#" class="mr20 topBg">报告查询</a>
+            </div>
+            <div class="y topLogin mr20">
+            	<div th:if="${!islogin}">
+				<a href="http://testuc.pacsonline.cn/#/reg" class="reg" >注册</a>&nbsp;/&nbsp;
+				<a href="http://testuc.pacsonline.cn/">登录</a><span></span>
+				</div>
+				<div th:if="${islogin}">
+					<a class="reg" href="#" th:text="${user.name}"></a>
+				</div>
+            </div>
+        </div>
+    </div>
+    <div class="h60 bgFF pt25 pb40">
+    	<div class="wp h60 positionR">
+            <div class="logo l"><img src="../style/logo-n.png" /></div>
+            <div class="Cart y"><!--当购物车大于0时,输出class="Cart y"--><a href="#"><strong class="l">2</strong><span>我的购物车</span></a></div>
+            <div class="y mr40"><div class="mt10 f12 c999 text-r">服务电话</div><div class="mt10 f14 c666">400-897-9898</div></div>
+            <div class="y mr40"><div class="mt10 f12 c999 text-r">中心地址</div><div class="mt10 f14 c666">哈尔滨市南岗区学府路239号 / 英伦名邸1A栋</div></div>
+
+            <div class="nav wp">
+                <ul>
+                    <li><a href="#">首页</a></li>
+                    <li><a href="/">体检套餐</a></li>
+                    <li><a href="#">医技检查</a></li>
+                    <li><a href="#">中心专家</a></li>
+                    <li><a href="#">设备介绍</a></li>
+                </ul>
+                <div class="search-box">
+                    
+                </div>
+            </div>
+        </div>
+    </div>
+    <div class="wp">
+    	<div class="main bgFF">
+            <ul class="subnav l mt20">
+                <li class="u2"><a href="/mypayedorders" class="ca">预约体检</a></li>
+                <li class="u3"><a href="####">报告查询</a></li>
+                <li class="u4"><a href="####">商城订单</a></li>
+                <li class="u6"><a href="####">常见问题</a></li>
+                <li class="u7"><a href="#">修改密码</a></li>
+                <li class="u8"><a href="#">退出登录</a></li>
+            </ul>
+            <div class="l" style="width:80%; ">
+                <div class="f12 c999 mt20">请选择已购套餐项 *</div>
+                <div th:if="${orders.size() eq 0}">
+                    <table class="tab-1-EEE mt20">
+                        <tr>
+                            <td><div class="u-ready-none"><img src="/style/list_none.png" /><p>暂无有效订单,请选择 <a href="/">体检套餐</a></p></div></td>
+                        </tr>
+                    </table>
+                </div>
+                <table class="tab-1-EEE mt20" th:each="order : ${orders}">
+                    <thead>
+                        <tr>
+                            <td>购买日期:
+                            	<span th:text="${order.ctime}"></span>
+                            	<span class="y cOrange"><span th:text="${order.etime}"></span>前使用</span>
+                            </td>
+                        </tr>
+                    </thead>
+                    <tbody>
+                        <tr th:each="item : ${order.items}">
+                            <td>
+                            	<div class="l">
+                            		<strong class="f12" th:text="${item.good.name}"></strong>
+                            		<div class="cBlue mt10" th:if="${item.fa == null}">适应人群:<span>*</span></div>
+                            		<div class="cBlue mt10" th:if="${item.fa != null}" >体检人:<span th:text="${item.fa.name}"></span> 预约日期:<span th:text="${item.fa.atime}"></span></div>
+                            	</div>
+                            	<a th:attr="href='/appointment/goappointment/'+${item.bid}+'/'+${item.id}" class="btn-blue y" th:if="${item.fa == null}">预约体检</a>
+                            	<a th:attr="href='/appointment/gochangeappointment/'+${item.fa.aid}" class="btn-blue y" th:if="${item.fa != null}" >改约</a>
+                            </td>
+                        </tr>
+                    </tbody>
+                </table>
+            </div>
+        </div>
+    </div>
+    <div class="wp">
+        <div class="links">
+        	<p><strong>友情链接:</strong><a href="####">黑龙江省卫计委</a><a href="####">哈尔滨市卫计委</a></p>
+        </div>
+        <table class="footer">
+        	<tr>
+            	<td width="390">
+                	<dl>
+                        <dt>中心介绍</dt>
+                        <dd><a href="#">关于我们</a></dd>
+                        <dd><a href="#">设备介绍</a></dd>
+                        <dd><a href="#">中心专家</a></dd>
+                    </dl>
+                    <dl>
+                        <dt>顾客服务</dt>
+                        <dd><a href="#">预约体检</a></dd>
+                        <dd><a href="#">报告查询</a></dd>
+                        <dd><a href="#">常见问题</a></dd>
+                    </dl>
+                    <dl>
+                        <dt>官方商城</dt>
+                        <dd><a href="#">体检套餐</a></dd>
+                        <dd><a href="#">医技检查</a></dd>
+                        <dd><a href="#">订单查询</a></dd>
+                    </dl>
+                </td>
+                <td class="news">
+                    <ul>
+                        <li><a href="####">昆仑盛和安体检中心通过安全消防审查</a></li>
+                        <li><a href="####">全国爱牙日来临之际,昆仑盛和安体检中心诚邀您关爱口腔健康</a></li>
+                        <li><a href="####">昆仑医疗集团妇儿医院成功进行奠基仪式</a></li>
+                    </ul>
+                </td>
+                <td width="140">
+                	<div class="wx"><img src="../images/qrcode.png" /><p>官方微信</p></div>
+                </td>
+            </tr>
+        </table>
+        <div class="lineDDD mt30"></div>
+        <div class="bottom">
+            <p><strong>黑龙江昆仑盛和安体检中心</strong></p>
+            <p>黑ICP备 + 黑公网安备 + 黑卫网审</p>
+            <p>+ 互联网医疗保健信息服务相关证号 +</p>
+            <p>信息化支持单位:<a href="http://www.pacsonline.cn" target="_blank">北京中世康恺科技有限公司</a></p>
+        </div>
+    </div>
+    <div class="wxPopup"></div>
+</body>
+</html>

+ 1 - 1
shop/src/main/resource/templates/shop.html

@@ -27,7 +27,7 @@
 			<div class="top_z l">昆仑医疗集团</div>
 			<div class="topWx y">官方微信&nbsp;</div>
 			<div class="y">
-				<a href="/myorders" class="mr20 topYy">预约体检</a>
+				<a href="/mypayedorders" class="mr20 topYy">预约体检</a>
 				<a href="#" class="mr20 topBg">报告查询</a>
 			</div>
 			<div class="y topLogin mr20">