| | |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.annotation.trace.Trace; |
| | | import com.doumee.core.constants.Constants; |
| | | import com.doumee.core.model.ApiResponse; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.core.utils.aliyun.ALiYunUtil; |
| | | import com.doumee.core.wx.WxMiniUtilService; |
| | | import com.doumee.dao.business.model.Locks; |
| | | import com.doumee.service.business.DeviceService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiImplicitParam; |
| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestParam; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | import org.springframework.web.multipart.MultipartHttpServletRequest; |
| | | import org.springframework.web.multipart.commons.CommonsMultipartResolver; |
| | |
| | | |
| | | |
| | | @Autowired |
| | | private WxMiniUtilService wxMiniUtilService; |
| | | @Autowired |
| | | private DeviceService deviceService; |
| | | |
| | | |
| | |
| | | deviceService.testPush(topic,json); |
| | | } |
| | | |
| | | |
| | | @ApiOperation(value = "测试生成二维码", notes = "小程序端") |
| | | @GetMapping("/getCode") |
| | | public ApiResponse<Locks> generateWXMiniCode() { |
| | | Locks locks = new Locks(); |
| | | locks.setCode(12); |
| | | locks.setSiteId("1005"); |
| | | wxMiniUtilService.generateWXMiniCode(locks); |
| | | return ApiResponse.success("操作成功",locks); |
| | | } |
| | | |
| | | } |
| | |
| | | import com.github.binarywang.wxpay.bean.request.WxPayRefundRequest; |
| | | import com.github.binarywang.wxpay.bean.result.WxPayRefundResult; |
| | | import com.github.binarywang.wxpay.exception.WxPayException; |
| | | import io.netty.handler.codec.base64.Base64Decoder; |
| | | import io.netty.handler.codec.base64.Base64Encoder; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import okhttp3.OkHttpClient; |
| | | import okhttp3.Request; |
| | | import okhttp3.Response; |
| | | import org.apache.commons.io.IOUtils; |
| | | import org.checkerframework.checker.units.qual.A; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import sun.misc.BASE64Decoder; |
| | | |
| | | import java.io.ByteArrayInputStream; |
| | | import java.io.ByteArrayOutputStream; |
| | |
| | | Response response = client.newCall(request).execute(); |
| | | if (response.isSuccessful()) { |
| | | InputStream inputStream = new ByteArrayInputStream(response.body().bytes()); |
| | | int i = inputStream.available(); // 得到文件大小 |
| | | byte[] mFileBody = new byte[i]; |
| | | inputStream.read(mFileBody); // 读数据 |
| | | locks.setInfo("data:image/Jpeg;base64," + Base64.getEncoder().encodeToString(mFileBody)); |
| | | /* |
| | | ByteArrayOutputStream baos = new ByteArrayOutputStream(); |
| | | byte[] buffer = new byte[1024]; |
| | | int len = -1; |
| | | while ((len = inputStream.read(buffer)) != -1) { |
| | | baos.write(buffer, 0, len); |
| | | } |
| | | }*/ |
| | | |
| | | locks.setInfo("data:mediatype;base64," + Base64.getEncoder().encodeToString(baos.toByteArray())); |
| | | |
| | | // FileOutputStream out = new FileOutputStream("d:\\test.png"); |
| | | // byte[] buffer = new byte[8192]; |
| | |
| | | queryWrapper.le(pageWrap.getModel().getEndDate()!=null, ActionLog::getCreateDate,pageWrap.getModel().getEndDate()); |
| | | queryWrapper.eq(pageWrap.getModel().getCreator()!=null, ActionLog::getCreator,pageWrap.getModel().getCreator()); |
| | | queryWrapper.in(pageWrap.getModel().getTypeList()!=null && pageWrap.getModel().getTypeList().size()>0, ActionLog::getType,pageWrap.getModel().getTypeList()); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getBikeCode()),ActionLog::getBeforeContent,"%"+pageWrap.getModel().getBikeCode()+"%"); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getBikeCode()),ActionLog::getBeforeContent,"%"+pageWrap.getModel().getOpenid()+"%"); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getBikeCode()),ActionLog::getBeforeContent, pageWrap.getModel().getBikeCode() ); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getOpenid()),ActionLog::getBeforeContent, pageWrap.getModel().getOpenid() ); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCreatorName()),SystemUser::getRealname, pageWrap.getModel().getCreatorName()); |
| | | queryWrapper.eq(ActionLog::getObjType,Constants.ActionLogObjType.memberrides); |
| | | queryWrapper |
| | | .selectAll(ActionLog.class) |
| | |
| | | queryWrapper.lambda().eq(Ad::getIsdeleted, pageWrap.getModel().getIsdeleted()); |
| | | } |
| | | if (pageWrap.getModel().getName() != null) { |
| | | queryWrapper.lambda().eq(Ad::getName, pageWrap.getModel().getName()); |
| | | queryWrapper.lambda().like(Ad::getName, pageWrap.getModel().getName()); |
| | | } |
| | | if (pageWrap.getModel().getSortnum() != null) { |
| | | queryWrapper.lambda().eq(Ad::getSortnum, pageWrap.getModel().getSortnum()); |
| | |
| | | .like(StringUtils.isNotBlank(pageWrap.getModel().getSiteId()),Bikes::getSiteId,pageWrap.getModel().getSiteId()) |
| | | .like(StringUtils.isNotBlank(pageWrap.getModel().getSiteName()), Sites::getName,pageWrap.getModel().getSiteName()) |
| | | .like( pageWrap.getModel().getLockId() !=null,Bikes::getLockId,pageWrap.getModel().getLockId()) |
| | | .ne(Bikes::getLockId,collect.get(Constants.FORCE_BACK_LOCK).getCode()) |
| | | .ne(Bikes::getLockId,Constants.formatIntegerFromStr(collect.get(Constants.FORCE_BACK_LOCK).getCode())) |
| | | .ne(Bikes::getSiteId,collect.get(Constants.FORCE_BACK_SITE).getCode()) |
| | | .and(Constants.formatIntegerNum(pageWrap.getModel().getHasBike()) == Constants.ONE, |
| | | s->s.isNull(Bikes::getCode) |
| | |
| | | topRides = rides; |
| | | } |
| | | } |
| | | // MemberRides topRides =memberRides.get(0); |
| | | // MemberRides topRides =memberRides.get(0); |
| | | if(durationSum > 0 && topRides != null){ |
| | | int baseTime =Constants.formatIntegerNum(topRides.getBaseTime()); |
| | | closeMoney = Constants.formatDecimalNum(topRides.getBasePrice()); |
| | |
| | | queryWrapper.lambda().eq(Member::getInfo, pageWrap.getModel().getInfo()); |
| | | } |
| | | if (pageWrap.getModel().getName() != null) { |
| | | queryWrapper.lambda().eq(Member::getName, pageWrap.getModel().getName()); |
| | | queryWrapper.lambda().like(Member::getName, pageWrap.getModel().getName()); |
| | | } |
| | | if (pageWrap.getModel().getNickname() != null) { |
| | | queryWrapper.lambda().eq(Member::getNickname, pageWrap.getModel().getNickname()); |
| | |
| | | //参数错误 |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | pricingDetail.setUnitPrice(Constants.formatDecimalNum(pricingDetail.getUnitPrice())); |
| | | pricingDetail.setHolidayUnitPrice(Constants.formatDecimalNum(pricingDetail.getHolidayUnitPrice())); |
| | | pricingDetail.setUnitTime(Constants.formatIntegerNum(pricingDetail.getUnitTime())); |
| | | pricingDetail.setHolidayUnitTime(Constants.formatIntegerNum(pricingDetail.getHolidayUnitTime())); |
| | | if ( pricingDetail.getBaseTime() < 0){ |
| | | pricingDetail.setBaseTime(-1); |
| | | } |
| | |
| | | pageWrap.getModel().setStatus(Constants.TWO); |
| | | IPage<Goodsorder> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | MPJLambdaWrapper<Refund> queryWrapper = initQueryParamByModel(pageWrap.getModel()); |
| | | queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getCreatorName()) |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCreatorName()) |
| | | ,SystemUser::getRealname |
| | | ,pageWrap.getModel().getCreatorName()); |
| | | IPage<Refund> refundIPage = refundJoinMapper.selectJoinPage(page, Refund.class, queryWrapper); |
| | |
| | | queryWrapper.like(model.getPayOnlineOrderid() !=null,Goodsorder::getOnlineOrderid,model.getPayOnlineOrderid()); |
| | | queryWrapper.like(model.getOnlineOrderid() !=null,Refund::getOnlineOrderid,model.getOnlineOrderid()); |
| | | queryWrapper.like(model.getOpenid() !=null,Member::getOpenid,model.getOpenid()); |
| | | queryWrapper.like(model.getCreatorName() !=null,SystemUser::getRealname,model.getCreatorName()); |
| | | queryWrapper.eq(Goodsorder::getIsdeleted,Constants.ZERO); |
| | | queryWrapper.orderByDesc(Refund::getDoneDate); |
| | | return queryWrapper; |
| | |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.util.*; |
| | | |
| | | /** |
| | |
| | | //只能同步昨天10之前的数据 |
| | | Calendar caln = Calendar.getInstance(); |
| | | caln.setTime(ydate); |
| | | // System.out.println(caln.get(Calendar.HOUR_OF_DAY) ); |
| | | if(caln.get(Calendar.HOUR_OF_DAY) <= 10){ |
| | | if(caln.get(Calendar.HOUR_OF_DAY) > 10){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,最近同步时间只能截止到昨天10点前!"); |
| | | } |
| | | } |
| | |
| | | //计算自行车收入,匹配来自自行车小程序的所有支付成功和退款成功的金额,作为自行车收入(累计收款金额-累计退款成功金额) |
| | | if(StringUtils.equals(detail.getAppid(), WxMiniConfig.wxPayService.getConfig().getAppId())){ |
| | | //自行车收入累计收款金额(支付成功总金额-退款总金额) |
| | | if(StringUtils.equals(detail.getBillType(),"SUCCESS")){ |
| | | if(StringUtils.equals(info.getTradeState(),"SUCCESS")){ |
| | | //如果是交易 |
| | | bill.setBikeFee(bill.getBikeFee().add(detail.getSettlementTotalFee())); |
| | | }else if(StringUtils.equals(info.getTradeType(),"REFUND" )){ |
| | | bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) ); |
| | | }else if(StringUtils.equals(info.getTradeState(),"REFUND" )){ |
| | | //如果退款成功,扣除退款金额 |
| | | bill.setBikeFee(bill.getBikeFee().subtract(detail.getApplyRefundFee())); |
| | | bill.setBikeFee(bill.getBikeFee().subtract(detail.getRefundFee()) ); |
| | | bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) ); |
| | | } |
| | | } |
| | | |