| | |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.doumee.core.constants.Constants; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.constants.Constants; |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.business.GoodsorderMapper; |
| | | import com.doumee.dao.business.MemberRidesMapper; |
| | | import com.doumee.dao.business.MemberRidesMapper; |
| | | import com.doumee.dao.business.RefundMapper; |
| | | import com.doumee.dao.business.join.GoodsorderJoinMapper; |
| | | import com.doumee.dao.business.model.Bikes; |
| | | import com.doumee.dao.business.model.Goodsorder; |
| | | import com.doumee.dao.business.model.Member; |
| | | import com.doumee.dao.business.model.MemberRides; |
| | | import com.doumee.dao.business.web.response.HomeResponse; |
| | | import com.doumee.dao.business.join.MemberRidesJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.business.web.response.GoodsorderDetailDTO; |
| | | import com.doumee.dao.business.web.response.PayOrderDTO; |
| | | import com.doumee.service.business.GoodsorderService; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.checkerframework.checker.units.qual.A; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | |
| | | @Service |
| | | public class GoodsorderServiceImpl implements GoodsorderService { |
| | |
| | | |
| | | @Autowired |
| | | GoodsorderJoinMapper goodsorderJoinMapper; |
| | | |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | |
| | | @Autowired |
| | | private MemberRidesMapper memberRidesMapper; |
| | | |
| | | |
| | | |
| | | |
| | | @Autowired |
| | | private RefundMapper refundMapper; |
| | | |
| | | @Autowired |
| | | private MemberRidesJoinMapper memberRidesJoinMapper; |
| | | |
| | | @Override |
| | | public String create(Goodsorder goodsorder) { |
| | |
| | | MPJLambdaWrapper<Goodsorder> queryWrapper = new MPJLambdaWrapper<>(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | |
| | | |
| | | if (pageWrap.getModel().getCode() != null) { |
| | | queryWrapper.like(Goodsorder::getCode, pageWrap.getModel().getCode()); |
| | | } |
| | |
| | | if (pageWrap.getModel().getStatus() != null) { |
| | | queryWrapper.eq(Goodsorder::getStatus, pageWrap.getModel().getStatus()); |
| | | } |
| | | |
| | | |
| | | if (pageWrap.getModel().getOnlineOrderid() != null) { |
| | | queryWrapper.eq(Goodsorder::getOnlineOrderid, pageWrap.getModel().getOnlineOrderid()); |
| | |
| | | .selectAs(Member::getName,Goodsorder::getMemberName) |
| | | .leftJoin(Member.class,Member::getId,Goodsorder::getMemberId) |
| | | .like(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()),Member::getName,pageWrap.getModel().getMemberName()); |
| | | |
| | | return PageData.from(goodsorderJoinMapper.selectJoinPage(page, Goodsorder.class,queryWrapper)); |
| | | } |
| | | |
| | |
| | | QueryWrapper<Goodsorder> wrapper = new QueryWrapper<>(goodsorder); |
| | | return goodsorderMapper.selectCount(wrapper); |
| | | } |
| | | |
| | | |
| | | |
| | | public HomeResponse getHome(String memberId){ |
| | | HomeResponse homeResponse = new HomeResponse(); |
| | | homeResponse.setParkName(systemDictDataBiz.queryByCode(Constants.MINI_PROGRAMME,Constants.PROJECT_NAME).getCode()); |
| | | homeResponse.setServerPhone(systemDictDataBiz.queryByCode(Constants.MINI_PROGRAMME,Constants.SERVER_PHONE).getCode()); |
| | | homeResponse.setLeaseNoticeUrl(systemDictDataBiz.queryByCode(Constants.MINI_PROGRAMME,Constants.LEASE_NOTICE_URL).getCode()); |
| | | homeResponse.setLeaseNotice(systemDictDataBiz.queryByCode(Constants.MINI_PROGRAMME,Constants.LEASE_NOTICE).getCode()); |
| | | homeResponse.setDeposit(new BigDecimal(systemDictDataBiz.queryByCode(Constants.MINI_PROGRAMME,Constants.RENT_DEPOSIT).getCode())); |
| | | homeResponse.setTips(systemDictDataBiz.queryByCode(Constants.MINI_PROGRAMME,Constants.TIPS).getCode()); |
| | | homeResponse.setLeaseVideoUrl(systemDictDataBiz.queryByCode(Constants.MINI_PROGRAMME,Constants.RENT_TIPS_VIDEO).getCode()); |
| | | homeResponse.setPricingRules(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.PRICING_RULE).getCode()); |
| | | //查询是否存在 已支付的 押金订单 |
| | | Integer status = this.goodsorderMapper.selectCount(new QueryWrapper<Goodsorder>() |
| | | .eq("member_id",memberId) |
| | | .eq("status",Constants.goodsorderStatus.pay)); |
| | | homeResponse.setDepositStatus(status); |
| | | if(homeResponse.getDepositStatus()==Constants.goodsorderStatus.pay) { |
| | | //查询当前骑行状态 |
| | | MemberRides memberRides = memberRidesMapper.selectOne(new QueryWrapper<MemberRides>().eq("member_id", memberId) |
| | | .orderByDesc(" create_date ") |
| | | .last(" limit 1 ")); |
| | | if (Objects.isNull(memberRides)) { |
| | | |
| | | } |
| | | } |
| | | return homeResponse; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @Override |
| | | public GoodsorderDetailDTO getGoodsorderDetailDTO(String id) { |
| | | |
| | | List<PayOrderDTO> payOrderDTOList = new ArrayList<>(); |
| | | Goodsorder goodsorder = goodsorderMapper.selectById(id); |
| | | QueryWrapper<Refund> refundQuery = new QueryWrapper<>(); |
| | | refundQuery.lambda() |
| | | .eq(Refund::getObjId,id); |
| | | List<Refund> refunds = refundMapper.selectList(refundQuery); |
| | | |
| | | PayOrderDTO payOrderDTO = new PayOrderDTO(); |
| | | payOrderDTO.setOrderCode(goodsorder.getCode()); |
| | | payOrderDTO.setPayType(goodsorder.getPayWay()); |
| | | payOrderDTO.setMoney(goodsorder.getMoney()); |
| | | payOrderDTO.setPayDate(goodsorder.getPayDate()); |
| | | payOrderDTOList.add(0,payOrderDTO); |
| | | if (!CollectionUtils.isEmpty(refunds)){ |
| | | refunds.forEach(s->{ |
| | | PayOrderDTO refundOrderDTO = new PayOrderDTO(); |
| | | refundOrderDTO.setOrderCode(s.getCode()); |
| | | refundOrderDTO.setPayType(s.getPayWay()); |
| | | refundOrderDTO.setMoney(s.getMoney()); |
| | | refundOrderDTO.setPayDate(s.getDoneDate()); |
| | | payOrderDTOList.add(refundOrderDTO); |
| | | }); |
| | | } |
| | | MPJLambdaWrapper<MemberRides> wrapper = new MPJLambdaWrapper<>(); |
| | | wrapper.leftJoin(BaseParam.class,BaseParam::getId,MemberRides::getParamId) |
| | | .eq(BaseParam::getType, Constants.THREE); |
| | | List<MemberRides> memberRides = memberRidesJoinMapper.selectJoinList(MemberRides.class, wrapper); |
| | | GoodsorderDetailDTO goodsorderDetailDTO = new GoodsorderDetailDTO(); |
| | | goodsorderDetailDTO.setPayOrderDTOList(payOrderDTOList); |
| | | goodsorderDetailDTO.setMemberRidesList(memberRides); |
| | | return goodsorderDetailDTO; |
| | | } |
| | | |
| | | @Override |
| | | public Goodsorder closerGoodsorder(String id) { |
| | | |
| | | Goodsorder goodsorder = goodsorderMapper.selectById(id); |
| | | |
| | | |
| | | |
| | | return null; |
| | | } |
| | | } |