|
@@ -9,19 +9,27 @@
|
|
|
package com.zskk.shop.service;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.math.RoundingMode;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Calendar;
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import com.alibaba.druid.util.FnvHash;
|
|
|
import com.zskk.shop.controller.bean.BuyOrderBean;
|
|
|
import com.zskk.shop.controller.bean.BuyOrderItemBean;
|
|
|
+import com.zskk.shop.controller.bean.BuyUserBean;
|
|
|
+import com.zskk.shop.controller.bean.FamilyPeopleBean;
|
|
|
+import com.zskk.shop.controller.bean.IncomeBean;
|
|
|
import com.zskk.shop.dao.BuyOrderMapper;
|
|
|
import com.zskk.shop.dao.entry.BuyOrder;
|
|
|
import com.zskk.shop.dao.entry.BuyOrderItem;
|
|
|
+import com.zskk.shop.dao.entry.FamilyPeopleAppointment;
|
|
|
import com.zskk.shop.dao.entry.GoodBase;
|
|
|
import com.zskk.shop.dao.entry.GoodPrice;
|
|
|
import com.zskk.shop.exception.ErrorConstant;
|
|
@@ -218,8 +226,9 @@ public class BuyOrderService {
|
|
|
* @param orderid
|
|
|
* @return
|
|
|
*/
|
|
|
- public Integer saveOrderId(BuyOrder buyOrder, String orderid){
|
|
|
+ public Integer saveOrderId(BuyOrder buyOrder, String orderid, Integer paytype){
|
|
|
buyOrder.setOrderid(orderid);
|
|
|
+ buyOrder.setPaytype(paytype);
|
|
|
return buyOrderMapper.setOrderid(buyOrder);
|
|
|
}
|
|
|
|
|
@@ -312,4 +321,98 @@ public class BuyOrderService {
|
|
|
|
|
|
return bean;
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询已支付订单
|
|
|
+ * @param stime
|
|
|
+ * @param etime
|
|
|
+ * @param page
|
|
|
+ * @param pageSize
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public List<BuyOrderItem> queryPayedOrderItems(Integer stime, Integer etime, Integer page, Integer pageSize){
|
|
|
+ return buyOrderMapper.queryPayedOrderItems(stime, etime, (page-1) * pageSize, pageSize);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询已支付订单 数量
|
|
|
+ * @param stime
|
|
|
+ * @param etime
|
|
|
+ * @param page
|
|
|
+ * @param pageSize
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public Integer queryPayedOrderItemCount(Integer stime, Integer etime){
|
|
|
+ return buyOrderMapper.queryPayedOrderItemCount(stime, etime);
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<IncomeBean> toIncomeBeans(List<BuyOrderItem> items, SimpleDateFormat format){
|
|
|
+ List<IncomeBean> beans = new ArrayList<>(items.size());
|
|
|
+ for (BuyOrderItem item: items){
|
|
|
+ beans.add(this.toIncomeBean(item, format));
|
|
|
+ }
|
|
|
+ return beans;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 对象转换
|
|
|
+ * @param item
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public IncomeBean toIncomeBean(BuyOrderItem item, SimpleDateFormat format){
|
|
|
+ BuyOrder order = this.queryBuyOrder(item.getBid());
|
|
|
+ GoodBase good = goodService.queryOneGoodBase(item.getGid());
|
|
|
+ FamilyPeopleAppointment familyPeople = familyPeopleService.getAppointmentFamilyPeoples(item.getBid(), item.getId());
|
|
|
+
|
|
|
+ IncomeBean bean = new IncomeBean();
|
|
|
+ bean.setId(item.getId());
|
|
|
+ bean.setIsRefund(item.getIsRefund());
|
|
|
+ if (item.getIsRefund().equals(1)){
|
|
|
+ bean.setRefundTime(this.getDate(item.getRefundTime(), format));
|
|
|
+ }
|
|
|
+ bean.setPaytime(getDate(order.getPtime(), format));
|
|
|
+ bean.setPackageid(good.getPackageid());
|
|
|
+ bean.setPackageName(good.getPackageName());
|
|
|
+ bean.setPaytype(order.getPaytype());
|
|
|
+ bean.setPaytypeName(this.getPaytypeNmae(order.getPaytype()));
|
|
|
+ bean.setTotalPrice(item.getTotalPrice().setScale(2, RoundingMode.HALF_UP).toString());
|
|
|
+
|
|
|
+ BuyUserBean buyUser = new BuyUserBean();
|
|
|
+ buyUser.setUid(order.getUid());
|
|
|
+ buyUser.setUname(order.getUname());
|
|
|
+ buyUser.setUphone(order.getUphone());
|
|
|
+ bean.setBuyUser(buyUser);
|
|
|
+
|
|
|
+ if (familyPeople != null){
|
|
|
+ FamilyPeopleBean fbean = new FamilyPeopleBean();
|
|
|
+ fbean.setAddress(familyPeople.getAddress());
|
|
|
+ fbean.setBirth(familyPeople.getBirth());
|
|
|
+ fbean.setId(familyPeople.getId());
|
|
|
+ fbean.setIdcard(familyPeople.getIdcard());
|
|
|
+ fbean.setName(familyPeople.getName());
|
|
|
+ fbean.setPhone(familyPeople.getPhone());
|
|
|
+ fbean.setSex(familyPeople.getSex());
|
|
|
+ bean.setAppointmentUser(fbean);
|
|
|
+ }
|
|
|
+
|
|
|
+ return bean;
|
|
|
+ }
|
|
|
+
|
|
|
+ private String getDate(Integer time, SimpleDateFormat format){
|
|
|
+ return format.format(new Date(time * 1000L));
|
|
|
+ }
|
|
|
+
|
|
|
+ private String getPaytypeNmae(Integer paytype){
|
|
|
+ if (paytype == null){
|
|
|
+ return "未知";
|
|
|
+ }
|
|
|
+ switch(paytype){
|
|
|
+ case 1:
|
|
|
+ return "支付宝";
|
|
|
+ case 2:
|
|
|
+ return "微信";
|
|
|
+ default:
|
|
|
+ return "未知";
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|