diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/IndexApiServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/IndexApiServiceImpl.java new file mode 100644 index 0000000..c48a3da --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/IndexApiServiceImpl.java @@ -0,0 +1,315 @@ +package org.jeecg.modules.apiservice.impl; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult; +import org.apache.commons.lang.StringUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.util.RedisUtil; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiBean.ActorSetPageBean; +import org.jeecg.modules.apiBean.TrendsBean; +import org.jeecg.modules.apiUtils.printUtil; +import org.jeecg.modules.apiservice.IndexApiService; +import org.jeecg.modules.atActorCollection.entity.AtActorCollection; +import org.jeecg.modules.atActorCollection.service.IAtActorCollectionService; +import org.jeecg.modules.atComplaintReason.entity.AtComplaintReason; +import org.jeecg.modules.atComplaintReason.service.IAtComplaintReasonService; +import org.jeecg.modules.atMasterPiece.entity.AtMasterPiece; +import org.jeecg.modules.atMasterPiece.service.IAtMasterPieceService; +import org.jeecg.modules.atPerformer.entity.AtPerformer; +import org.jeecg.modules.atPerformer.service.IAtPerformerService; +import org.jeecg.modules.atPhoneOrder.entity.AtPhoneOrder; +import org.jeecg.modules.atPhoneOrder.service.IAtPhoneOrderService; +import org.jeecg.modules.atPromotion.service.IAtPromotionService; +import org.jeecg.modules.atThumbsLog.entity.AtThumbsLog; +import org.jeecg.modules.atThumbsLog.service.IAtThumbsLogService; +import org.jeecg.modules.atTopPrice.service.IAtTopPriceService; +import org.jeecg.modules.atTrends.entity.AtTrends; +import org.jeecg.modules.atTrends.service.IAtTrendsService; +import org.jeecg.modules.bean.WaterPageBean; +import org.jeecg.modules.hanHaiBanner.entity.HanHaiBanner; +import org.jeecg.modules.hanHaiBanner.service.IHanHaiBannerService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.jeecg.modules.pay.MpWxPayService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service +public class IndexApiServiceImpl implements IndexApiService { + + //缓存记录 + @Resource + private RedisUtil redisUtil; + //权限验证 + @Resource + private ShiroRealm shiroRealm; + //获取个人信息接口 + @Resource + private IHanHaiMemberService hanHaiMemberService; + //获取banner信息 + @Resource + private IHanHaiBannerService hanHaiBannerService; + //获取认证演员信息 + @Resource + private IAtPerformerService performerService; + //获取认证演员集 + @Resource + private IAtPromotionService promotionService; + //获取动态信息表 + @Resource + private IAtTrendsService atTrendsService; + //获取代表作品 + @Resource + private IAtMasterPieceService atMasterPieceService; + //获取投诉原因信息 + @Resource + private IAtComplaintReasonService atComplaintReasonService; + //获取演员集 + @Resource + private IAtActorCollectionService atActorCollectionService; + //支付接口 + @Autowired + private MpWxPayService mpWxPayService; + //获取置顶 + @Resource + private IAtTopPriceService atTopPriceService; + //点赞 + @Resource + private IAtThumbsLogService atThumbsLogService; + //付费记录 + @Resource + private IAtPhoneOrderService atPhoneOrderService; + + + + + + // 获取banner列表 + @Override + public Result getBanner(){ + List list = hanHaiBannerService.list(); + return Result.OK("轮播图列表",list); + } + //获取认证演员 + @Override + public Result getActorList(){ + List list = performerService + .lambdaQuery() + .orderByDesc(AtPerformer::getCreateTime) + .list(); + //创建一个新的集合 + List newList = new ArrayList<>(); + for (AtPerformer performer:list) { + performer.setUserId(hanHaiMemberService + .lambdaQuery() + .eq(HanHaiMember::getId,performer.getUserId()).one().getNickName()); + newList.add(performer); + } + return Result.OK("认证演员列表",newList); + } + + // 获取动态列表带分页 + @Override + public Result getTrendsPage(TrendsBean bean){ + Page page = new Page(bean.getPageNo(), bean.getPageSize()); + Page pageList = atTrendsService + .lambdaQuery() + .orderByDesc(AtTrends::getCreateTime) + .orderByDesc(AtTrends::getIsTop) + .page(page); + if(StringUtils.isNotBlank(bean.getTitle())){ + pageList = atTrendsService + .lambdaQuery() + .like(AtTrends::getTitle,bean.getTitle()) + .orderByDesc(AtTrends::getCreateTime) + .orderByDesc(AtTrends::getIsTop) + .page(page); + } + + + + List records = pageList.getRecords(); + //创建一个新的集合 + List recordsNew = new ArrayList<>(); + for (AtTrends atTrends:records) { + atTrends.setUserId(hanHaiMemberService + .lambdaQuery() + .eq(HanHaiMember::getId,atTrends.getUserId()).one().getNickName()); + recordsNew.add(atTrends); + } + pageList.setRecords(recordsNew); + return Result.OK("动态列表", pageList); + } + + //获取动态详情 + @Override + public Result getTrendsDetail(String id,String token){ + AtTrends byId = atTrendsService.getById(id); + //根据用户标识查询发布人信息 + HanHaiMember byId1 = hanHaiMemberService.getById(byId.getUserId()); + byId.setUserId(byId1.getNickName()); + + Map map = new HashMap<>(); + //作品0/演员1/动态2 + if (StringUtils.isNotBlank(token)){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + AtThumbsLog one = atThumbsLogService.lambdaQuery() + .eq(AtThumbsLog::getUserId, hanHaiMember.getId()) + .eq(AtThumbsLog::getType, "2") + .eq(AtThumbsLog::getIsState, "0") + .one(); + map.put("isThumbs_up", one); + AtThumbsLog one2 = atThumbsLogService.lambdaQuery() + .eq(AtThumbsLog::getUserId, hanHaiMember.getId()) + .eq(AtThumbsLog::getType, "2") + .eq(AtThumbsLog::getIsState, "1") + .one(); + map.put("isThumbs_down", one2); + + } + map.put("dayMoney",1000); + map.put("details", byId); + return Result.OK("动态详情", map); + } + + //获取代表作品带分页 + @Override + public Result getWorkPage(WaterPageBean bean){ + Page page = new Page(bean.getPageNo(), bean.getPageSize()); + Page pageList = atMasterPieceService + .lambdaQuery() + .orderByDesc(AtMasterPiece::getNum) + .page(page); + + + List records = pageList.getRecords(); + List recordsNew = new ArrayList<>(); + for (AtMasterPiece atMasterPiece:records) { + AtThumbsLog one = atThumbsLogService.lambdaQuery() + .eq(AtThumbsLog::getUserId, atMasterPiece.getUserId()) + .eq(AtThumbsLog::getType, "2") + .eq(AtThumbsLog::getIsState, "0") + .one(); + if (one != null){ + atMasterPiece.setThumbsUp(1); + }else{ + atMasterPiece.setThumbsUp(0); + } + atMasterPiece.setUserId(hanHaiMemberService. + lambdaQuery(). + eq(HanHaiMember::getId, atMasterPiece.getUserId()).one().getNickName() + ); + recordsNew.add(atMasterPiece); + + } + pageList.setRecords(recordsNew); + + + + return Result.OK("作品列表", pageList); + } + + //获取代表作品详情 + @Override + public Result getWorkDetail(String id,String token){ + AtMasterPiece byId = atMasterPieceService.getById(id); + Map map = new HashMap<>(); + //作品0/演员1/动态2 + if (StringUtils.isNotBlank(token)){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + AtThumbsLog one = atThumbsLogService.lambdaQuery() + .eq(AtThumbsLog::getUserId, hanHaiMember.getId()) + .eq(AtThumbsLog::getType, "0") + .eq(AtThumbsLog::getIsState, "0") + .one(); + map.put("isThumbs_up", one); + AtThumbsLog one2 = atThumbsLogService.lambdaQuery() + .eq(AtThumbsLog::getUserId, hanHaiMember.getId()) + .eq(AtThumbsLog::getType, "0") + .eq(AtThumbsLog::getIsState, "1") + .one(); + map.put("isThumbs_down", one2); + + + } + map.put("dayMoney",1000); + map.put("details", byId); + return Result.OK("作品详情", map); + } + + //获取投诉原因 + @Override + public Result getComplaintReason(){ + List list = atComplaintReasonService.list(); + return Result.OK("投诉原因", list); + } + + //获取演员集带分页 + @Override + public Result getActorSetPage(ActorSetPageBean bean){ + Page page = new Page(bean.getPageNo(), bean.getPageSize()); + Page pageList = atActorCollectionService + .page(page); + return Result.OK("演员集列表", pageList); + } + + + //获取演员集详情接口 + @Override + public Result getActorDetail(String id,String token){ + AtActorCollection byId = atActorCollectionService.getById(id); + //根据用户标识查询发布人信息 + HanHaiMember byId1 = hanHaiMemberService.getById(byId.getUserId()); + byId.setUserId(byId1.getNickName()); + + Map map = new HashMap<>(); + //作品0/演员1/动态2 + if (StringUtils.isNotBlank(token)){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + AtThumbsLog one = atThumbsLogService.lambdaQuery() + .eq(AtThumbsLog::getUserId, hanHaiMember.getId()) + .eq(AtThumbsLog::getType, "0") + .eq(AtThumbsLog::getIsState, "0") + .one(); + map.put("isThumbs_up", one); + AtThumbsLog one2 = atThumbsLogService.lambdaQuery() + .eq(AtThumbsLog::getUserId, hanHaiMember.getId()) + .eq(AtThumbsLog::getType, "0") + .eq(AtThumbsLog::getIsState, "1") + .one(); + map.put("isThumbs_down", one2); + } + //查询是订单支付记录 + AtPhoneOrder one = atPhoneOrderService.lambdaQuery() + .eq(AtPhoneOrder::getUserId, byId.getUserId()) + .eq(AtPhoneOrder::getOrderId, id) + .eq(AtPhoneOrder::getIsPay, "Y") + .one(); + + if(one==null){ + map.put("isPayPhone",0); + }else{ + map.put("isPayPhone",1); + } + + map.put("dayMoney",1000); + map.put("details", byId); + return Result.OK("演员集详情", map); + } + + + + //获取置顶信息类标 + @Override + public Result getTopPayList(){ + return Result.OK("置顶信息类标", atTopPriceService.list()); + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/InfoApiServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/InfoApiServiceImpl.java new file mode 100644 index 0000000..eb9b873 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/InfoApiServiceImpl.java @@ -0,0 +1,741 @@ +package org.jeecg.modules.apiservice.impl; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult; +import org.apache.commons.lang.StringUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.util.RedisUtil; +import org.jeecg.config.shiro.ShiroRealm; +import org.jeecg.modules.apiBean.*; +import org.jeecg.modules.apiservice.InfoApiService; +import org.jeecg.modules.atActorCollection.entity.AtActorCollection; +import org.jeecg.modules.atActorCollection.service.IAtActorCollectionService; +import org.jeecg.modules.atComplaintLog.entity.AtComplaintLog; +import org.jeecg.modules.atComplaintLog.service.IAtComplaintLogService; +import org.jeecg.modules.atMasterPiece.entity.AtMasterPiece; +import org.jeecg.modules.atMasterPiece.service.IAtMasterPieceService; +import org.jeecg.modules.atOrder.entity.AtOrder; +import org.jeecg.modules.atOrder.service.IAtOrderService; +import org.jeecg.modules.atPhoneOrder.entity.AtPhoneOrder; +import org.jeecg.modules.atPhoneOrder.service.IAtPhoneOrderService; +import org.jeecg.modules.atPromotion.entity.AtPromotion; +import org.jeecg.modules.atPromotion.service.IAtPromotionService; +import org.jeecg.modules.atThumbsLog.entity.AtThumbsLog; +import org.jeecg.modules.atThumbsLog.service.IAtThumbsLogService; +import org.jeecg.modules.atTopPrice.entity.AtTopPrice; +import org.jeecg.modules.atTopPrice.service.IAtTopPriceService; +import org.jeecg.modules.atTrends.entity.AtTrends; +import org.jeecg.modules.atTrends.service.IAtTrendsService; +import org.jeecg.modules.hanHaiBank.entity.HanHaiBank; +import org.jeecg.modules.hanHaiBank.service.IHanHaiBankService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService; +import org.jeecg.modules.hanHaiRealEnterprise.entity.HanHaiRealEnterprise; +import org.jeecg.modules.hanHaiRealEnterprise.service.IHanHaiRealEnterpriseService; +import org.jeecg.modules.hanHaiRealName.entity.HanHaiRealName; +import org.jeecg.modules.hanHaiRealName.service.IHanHaiRealNameService; +import org.jeecg.modules.hanHaiWater.entity.HanHaiWater; +import org.jeecg.modules.hanHaiWater.service.IHanHaiWaterService; +import org.jeecg.modules.pay.MpWxPayService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.*; + +@Service +public class InfoApiServiceImpl implements InfoApiService { + + //缓存记录 + @Resource + private RedisUtil redisUtil; + //权限验证 + @Resource + private ShiroRealm shiroRealm; + //获取个人信息接口 + @Resource + private IHanHaiMemberService hanHaiMemberService; + //获取个人认证信息 + @Resource + private IHanHaiRealNameService hanHaiRealNameService; + //获取企业认证信息 + @Resource + private IHanHaiRealEnterpriseService hanHaiRealEnterpriseService; + //获取流水信息 + @Resource + private IHanHaiWaterService hanHaiWaterService; + //获取推广记录信息 + @Resource + private IAtPromotionService atPromotionService; + //获取银行卡信息 + @Resource + private IHanHaiBankService hanHaiBankService; + //获取动态帖子 + @Resource + private IAtTrendsService atTrendsService; + //发布演员集 + @Resource + private IAtActorCollectionService atActorCollectionService; + + //支付接口 + @Autowired + private MpWxPayService mpWxPayService; + + //发布作品 + @Autowired + private IAtMasterPieceService iAtMasterpieceService; + //点赞 + @Resource + private IAtThumbsLogService atThumbsLogService; + //举报 + @Resource + private IAtComplaintLogService atComplaintLogService; + //置顶费用 + @Resource + private IAtTopPriceService atTopPriceService; + //推广记录 + @Resource + private IAtOrderService atOrderService; + //付费记录 + @Resource + private IAtPhoneOrderService atPhoneOrderService; + + + + + + //获取个人信息接口 + @Override + public Result getInfo(String token){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + return Result.OK("查询成功", hanHaiMember); + } + + + + //获取用户平台数据 + @Override + public Result getInfoMoney(String token){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + Map map = new HashMap(); + map.put("todayMoney",100); + map.put("userMoney",100); + map.put("userSumMoney",100); + map.put("money",88); + return Result.OK("查询成功", map); + } + + //修改个人信息接口 + @Override + public Result updateInfo(String token, HanHaiMember bean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + bean.setId(hanHaiMember.getId()); + hanHaiMemberService.updateById(bean); + return Result.OK("修改成功"); + } + + + //添加银行卡 + @Override + public Result addBankCard(String token, HanHaiBank bean){ + + String bankId = bean.getBankId(); + String name = bean.getName(); + String card = bean.getCard(); + + if(null == bankId){ + return Result.OK("银行卡号未上传!"); + }else if(null == name){ + return Result.OK("姓名未上传!"); + }else if(null == card){ + return Result.OK("身份证号未上传!"); + } + + boolean result = hanHaiBankService.save(bean); + + if(result){ + return Result.OK("银行卡添加成功!"); + }else { + return Result.OK("银行卡添加失败!"); + } + + } + + + + //获取银行卡列表带分页 + @Override + public Result getBankCardPage(String token, HanHaiBankBean bean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + Page page = new Page<>(bean.getPageNo(),bean.getPageSize()); + Page pageList = hanHaiBankService + .lambdaQuery() + .orderByDesc(HanHaiBank::getCreateTime) + .eq(HanHaiBank::getUserId,hanHaiMember.getId()) + .page(page); + + return Result.OK("银行卡列表", pageList); + } + + + //获取收益记录带分页 + @Override + public Result getIncomePage(String token, HanHaiWaterBean bean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + Page page = new Page(bean.getPageNo(), bean.getPageSize()); + Page pageList = hanHaiWaterService + .lambdaQuery() + .eq(HanHaiWater::getUserId,hanHaiMember.getId()) + .orderByDesc(HanHaiWater::getCreateTime) + .page(page); + return Result.OK("收益记录",pageList); + } + + //获取提现记录带分页 + @Override + public Result getWithdrawPage(String token, HanHaiWaterBean bean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + Page page = new Page(bean.getPageNo(), bean.getPageSize()); + Page pageList = hanHaiWaterService + .lambdaQuery() + .eq(HanHaiWater::getUserId,hanHaiMember.getId()) + .orderByDesc(HanHaiWater::getCreateTime) + .page(page); + return Result.OK("提现记录",pageList); + } + + + //个人认证提交 + @Override + public Result submitCertification(String token, HanHaiRealNameBean hanHaiRealNameBean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + String imageStraight = hanHaiRealNameBean.getImageStraight(); + String imageReverseSide = hanHaiRealNameBean.getImageReverseSide(); + String name = hanHaiRealNameBean.getName(); + String card = hanHaiRealNameBean.getCard(); + + HanHaiRealName haiRealName = new HanHaiRealName(); + if(null != imageStraight){ + haiRealName.setImageStraight(imageStraight); + }else{ + return Result.OK("身份证正面照未上传!"); + } + if(null != imageReverseSide){ + haiRealName.setImageReverseSide(imageReverseSide); + }else{ + return Result.OK("身份证反面照未上传!"); + } + if(null != name){ + haiRealName.setName(name); + }else{ + return Result.OK("姓名未上传!"); + } + if(null != card){ + haiRealName.setName(card); + }else{ + return Result.OK("身份证号码未上传!"); + } + + haiRealName.setUserId(hanHaiMember.getId()); + + boolean result = hanHaiRealNameService.save(haiRealName); + + + //创建支付订单 + + //获取当前置顶价格 + BigDecimal money = new BigDecimal("0.01"); + //吊起微信支付 + String s = money.multiply(new BigDecimal(100)).toString(); + int i1 = Double.valueOf(s).intValue(); + + + //创建支付订单 + Object appOrder = mpWxPayService.createOrder2( + "实名认证" , + "127.0.0.1", + System.currentTimeMillis()+"", + i1, + System.currentTimeMillis()+"", + hanHaiMember.getAppletOpenid(), + "{}"); + + + if(result){ + return Result.OK("个人认证提交成功!",appOrder); + }else { + return Result.OK("个人认证提交失败!"); + } + + } + + //企业认证提交 + @Override + public Result submitCompanyCertification(String token, HanHaiRealEnterpriseBean hanHaiRealEnterpriseBean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + String imageStraight = hanHaiRealEnterpriseBean.getImageStraight(); + String imageReverseSide = hanHaiRealEnterpriseBean.getImageReverseSide(); + String name = hanHaiRealEnterpriseBean.getName(); + String card = hanHaiRealEnterpriseBean.getCard(); + String tradeImage = hanHaiRealEnterpriseBean.getTradeImage(); + String otherImage = hanHaiRealEnterpriseBean.getOtherImage(); + + HanHaiRealEnterprise haiRealEnterprise = new HanHaiRealEnterprise(); + if(null != imageStraight){ + haiRealEnterprise.setImageStraight(imageStraight); + }else { + return Result.OK("身份证正面照未上传!"); + } + if(null != imageReverseSide){ + haiRealEnterprise.setImageReverseSide(imageReverseSide); + }else { + return Result.OK("身份证反面照未上传!"); + } + if(null != name){ + haiRealEnterprise.setName(name); + }else{ + return Result.OK("法人真实姓名未上传!"); + } + if(null != card){ + haiRealEnterprise.setName(card); + }else{ + return Result.OK("法人身份证号码未上传!"); + } + if(null != card){ + haiRealEnterprise.setTradeImage(tradeImage); + }else{ + return Result.OK("营业执照未上传!"); + } + if(null != card){ + haiRealEnterprise.setOtherImage(otherImage); + }else{ + return Result.OK("其他资质未上传!"); + } + + haiRealEnterprise.setUserId(hanHaiMember.getId()); + + Boolean result = hanHaiRealEnterpriseService.save(haiRealEnterprise); + + + //获取当前置顶价格 + BigDecimal money = new BigDecimal("0.01"); + //吊起微信支付 + String s = money.multiply(new BigDecimal(100)).toString(); + int i1 = Double.valueOf(s).intValue(); + + + //创建支付订单 + Object appOrder = mpWxPayService.createOrder2( + "实名认证" , + "127.0.0.1", + System.currentTimeMillis()+"", + i1, + System.currentTimeMillis()+"", + hanHaiMember.getAppletOpenid(), + "{}"); + + + if(result){ + return Result.OK("个人认证提交成功!",appOrder); + }else { + return Result.OK("企业认证提交失败!"); + } + } + + //获取个人认证信息 + @Override + public Result getCertification(String token){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + HanHaiRealName one = hanHaiRealNameService + .lambdaQuery() + .eq(HanHaiRealName::getUserId, hanHaiMember.getId()) + .one(); + return Result.OK("个人认证信息", one); + } + + //获取企业认证信息 + @Override + public Result getCompanyCertification(String token){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + List list = hanHaiRealEnterpriseService + .lambdaQuery() + .eq(HanHaiRealEnterprise::getUserId, hanHaiMember.getId()) + .list(); + return Result.OK("企业认证信息", list); + } + + //获取我的发布列表 + @Override + public Result getMyReleasePage(String token,MyReleasePageBean bean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + + if(bean.getState() == 0){ + Page page = new Page(bean.getPageNo(), bean.getPageSize()); + Page pageList = atTrendsService.lambdaQuery() + .eq(AtTrends::getUserId, hanHaiMember.getId()) + .eq(AtTrends::getIsCard,"N") + .orderByDesc(AtTrends::getCreateTime) + .page(page); + return Result.OK("我的发布帖子", pageList); + }else{ + Page page = new Page(bean.getPageNo(), bean.getPageSize()); + Page page1 = atActorCollectionService.lambdaQuery() + .eq(AtActorCollection::getUserId, hanHaiMember.getId()) + .orderByDesc(AtActorCollection::getCreateTime) + .page(page); + return Result.OK("我的发布名片", page1); + + + } + + } + + //获取我的发布详情 + @Override + public Result getMyReleaseDetail(String token,String id){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + AtTrends one = atTrendsService.lambdaQuery() + .eq(AtTrends::getId, id) + .one(); + one.setUserId(hanHaiMemberService.lambdaQuery().eq(HanHaiMember::getId, one.getUserId()).one().getNickName()); + + return Result.OK("发布详情", one); + } + + //获取推广记录列表 + @Override + public Result getPromotionPage(String token, PromotionPageBean bean){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + Page page = new Page(bean.getPageNo(), bean.getPageSize()); + Page page1 = atOrderService.lambdaQuery() + .orderByDesc(AtOrder::getCreateTime) + .eq(AtOrder::getUserId,hanHaiMember.getId()) + .page(page); + return Result.OK("推广记录",page1); + } + + //获取推广记录详情 + @Override + public Result getPromotionDetail(String token,String id){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + if(StringUtils.isBlank(id)){ + return Result.error("参数错误!标识不能为空"); + } + AtOrder one = atOrderService.lambdaQuery() + .eq(AtOrder::getId, id) + .one(); + + + + return Result.OK("推广记录详情", one); + } + + + //用户提现 + @Override + public Result withdraw(String token, BigDecimal price){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + //金额不能为空 + if(price == null){ + return Result.error("参数错误!提现金额不能为空"); + } + if(hanHaiMember.getPrice().compareTo(price) < 0){ + return Result.error("参数错误!提现金额不能大于用户余额"); + } + hanHaiMember.setPrice(hanHaiMember.getPrice().subtract(price)); + hanHaiMemberService.updateById(hanHaiMember); + HanHaiWater hanHaiWater = new HanHaiWater(); + hanHaiWater.setUserId(hanHaiMember.getId()); + hanHaiWater.setPrice(price); + hanHaiWater.setType(1); + hanHaiWater.setState(0); + hanHaiWater.setCreateTime(new Date()); + hanHaiWaterService.save(hanHaiWater); + + return Result.OK("提现提交成功,等待审核"); + } + + + //发布动态 + @Override + public Result releaseTrends(String token, AtTrends atTrends){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + atTrends.setUserId(hanHaiMember.getId()); + atTrendsService.save(atTrends); + //置顶支付置顶费用 + if(atTrends.getIsTop().equals("Y")){ + //根据置顶标识查询置顶费用 + AtTopPrice one = atTopPriceService.lambdaQuery() + .eq(AtTopPrice::getId, atTrends.getTopId()) + .one(); + //获取当前置顶价格 + BigDecimal money = one.getMoney(); + //吊起微信支付 + String s = money.multiply(new BigDecimal(100)).toString(); + int i1 = Double.valueOf(s).intValue(); + + //创建推广记录订单 + AtOrder atOrder = new AtOrder(); + String id = ""+System.currentTimeMillis(); + atOrder.setId(id); + atOrder.setName(atTrends.getTitle()+"置顶"); + atOrder.setImage(atTrends.getImage()); + atOrder.setPrice(money); + atOrder.setCreateTime(new Date()); + atOrder.setUserId(hanHaiMember.getId()); + atOrder.setOrderId(atTrends.getId()); + atOrderService.save(atOrder); + + Object appOrder = mpWxPayService.createOrder( + "购买"+atTrends.getTitle()+"置顶" , + "127.0.0.1", + id, + i1, + id, + hanHaiMember.getAppletOpenid(), + "{}"); + + return Result.OK("微信支付回调成功", appOrder); + } + return Result.OK("动态发布成功"); + } + + + //发布演员集 + @Override + public Result releaseActorSet(String token, AtActorCollection atActorCollection){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + atActorCollection.setUserId(hanHaiMember.getId()); + atActorCollectionService.save(atActorCollection); + return Result.OK("动态发布成功"); + } + + + //发布作品 + @Override + public Result releaseWorks(String token, AtMasterPiece atWorks){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + atWorks.setUserId(hanHaiMember.getId()); + atWorks.setUserImage(hanHaiMember.getHeadImage()); + iAtMasterpieceService.save(atWorks); + return Result.OK("作品发布成功"); + } + + + //点赞小程序-点赞type-作品0/演员1/动态2 + @Override + public Result like(String token, String id, Integer type){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + AtThumbsLog one = atThumbsLogService + .lambdaQuery() + .eq(AtThumbsLog::getUserId, hanHaiMember.getId()) + .eq(AtThumbsLog::getType, type) + .eq(AtThumbsLog::getIsState, "0") + .one(); + if (one != null){ + atThumbsLogService.removeById(one.getId()); + + //减少点赞数 + if (type == 1){ + AtTrends atTrends = atTrendsService.lambdaQuery() + .eq(AtTrends::getId, id) + .one(); + atTrends.setDropNum(atTrends.getDropNum() - 1); + atTrendsService.updateById(atTrends); + }else if (type == 2) { + AtTrends atTrends = atTrendsService.lambdaQuery() + .eq(AtTrends::getId, id) + .one(); + atTrends.setDropNum(atTrends.getDropNum() - 1); + atTrendsService.updateById(atTrends); + }else{ + AtMasterPiece atMasterPiece = iAtMasterpieceService.lambdaQuery() + .eq(AtMasterPiece::getId, id) + .one(); + atMasterPiece.setNum(atMasterPiece.getNum() - 1); + atMasterPiece.setThumbsUp(atMasterPiece.getThumbsUp() - 1); + iAtMasterpieceService.updateById(atMasterPiece); + } + return Result.ok("取消点赞"); + } + AtThumbsLog newOne = new AtThumbsLog(); + newOne.setUserId(hanHaiMember.getId()); + newOne.setType(type); + newOne.setOrderId(id); + newOne.setIsState("0"); + newOne.setCreateTime(new Date()); + atThumbsLogService.save(newOne); + //增加点赞数 + if (type == 1){ + AtTrends atTrends = atTrendsService.lambdaQuery() + .eq(AtTrends::getId, id) + .one(); + //数据不能为空 + if (atTrends == null){ + return Result.error("数据为空:Id不存在"); + } + atTrends.setDropNum(atTrends.getDropNum() + 1); + atTrendsService.updateById(atTrends); + }else if (type == 2) { + AtTrends atTrends = atTrendsService.lambdaQuery() + .eq(AtTrends::getId, id) + .one(); + if (atTrends == null){ + return Result.error("数据为空:Id不存在"); + } + atTrends.setDropNum(atTrends.getDropNum() + 1); + atTrendsService.updateById(atTrends); + }else{ + AtMasterPiece atMasterPiece = iAtMasterpieceService.lambdaQuery() + .eq(AtMasterPiece::getId, id) + .one(); + atMasterPiece.setNum(atMasterPiece.getNum() + 1); + atMasterPiece.setThumbsUp(atMasterPiece.getThumbsUp() + 1); + iAtMasterpieceService.updateById(atMasterPiece); + } + return Result.OK("点赞成功"); + } + + + //踩 + @Override + public Result dislike(String token, String id, Integer type){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + AtThumbsLog one = atThumbsLogService + .lambdaQuery() + .eq(AtThumbsLog::getUserId, hanHaiMember.getId()) + .eq(AtThumbsLog::getType, type) + .eq(AtThumbsLog::getIsState, "1") + .one(); + if (one != null){ + return Result.error("您已经踩过了"); + } + AtThumbsLog newOne = new AtThumbsLog(); + newOne.setUserId(hanHaiMember.getId()); + newOne.setType(type); + newOne.setOrderId(id); + newOne.setIsState("1"); + newOne.setCreateTime(new Date()); + atThumbsLogService.save(newOne); + return Result.OK("踩成功"); + } + + + //举报 + @Override + public Result report( String token, String id, Integer type){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + AtComplaintLog newOne = new AtComplaintLog(); + newOne.setUserId(hanHaiMember.getId()); + newOne.setType(type); + newOne.setOrderId(id); + newOne.setCreateTime(new Date()); + atComplaintLogService.save(newOne); + return Result.OK("踩成功"); + } + + @Override + public Result getContact( String token, String id){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + + + + //根据置顶标识查询置顶费用 + AtActorCollection one = atActorCollectionService.lambdaQuery() + .eq(AtActorCollection::getId, id) + .one(); + if (one == null){ + return Result.error("数据不存在"); + } + + //根据用户标识以及演员标识查询当前是否以存在支付记录 + AtPhoneOrder one1 = atPhoneOrderService.lambdaQuery() + .eq(AtPhoneOrder::getUserId, hanHaiMember.getId()) + .eq(AtPhoneOrder::getOrderId, id) + .eq(AtPhoneOrder::getIsPay, "Y") + .one(); + + //如果存在并且支付状态为Y则返回已支付 + if (one1 != null){ + return Result.OK("已支付,请不要重复支付"); + } + + + + //获取当前置顶价格 + BigDecimal money = one.getMoney(); + //吊起微信支付 + String s = money.multiply(new BigDecimal(100)).toString(); + int i1 = Double.valueOf(s).intValue(); + + + + AtPhoneOrder phoneOrder = new AtPhoneOrder(); + String idStr = ""+System.currentTimeMillis(); + phoneOrder.setId(idStr); + phoneOrder.setUserId(hanHaiMember.getId()); + phoneOrder.setOrderId(id); + phoneOrder.setCreateTime(new Date()); + phoneOrder.setPrice(money); + + atPhoneOrderService.save(phoneOrder); + + Object appOrder = mpWxPayService.createOrder2( + "购买"+one.getTitle()+"联系方式" , + "127.0.0.1", + idStr, + i1, + idStr, + hanHaiMember.getAppletOpenid(), + "{}"); + return Result.OK("吊起微信支付",appOrder); + } + + + //确认推广接口 + @Override + public Result confirmPromotion(String token, String id,String dayId){ + HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token); + + //查询推广记录 + AtOrder one1 = atOrderService.lambdaQuery() + .eq(AtOrder::getOrderId, id) + .one(); + + AtTopPrice one = atTopPriceService.lambdaQuery() + .eq(AtTopPrice::getId, dayId) + .one(); + if (one == null){ + return Result.error("数据不存在"); + } + + //获取当前置顶价格 + BigDecimal money = one.getMoney(); + //吊起微信支付 + String s = money.multiply(new BigDecimal(100)).toString(); + int i1 = Double.valueOf(s).intValue(); + + + //创建支付订单 + Object appOrder = mpWxPayService.createOrder2( + "再次推广" , + "127.0.0.1", + System.currentTimeMillis()+"", + i1, + System.currentTimeMillis()+"", + hanHaiMember.getAppletOpenid(), + "{}"); + + + + + + return Result.OK("吊起微信支付",appOrder); + } +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/LoginApiServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/LoginApiServiceImpl.java new file mode 100644 index 0000000..a8d9ab4 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/LoginApiServiceImpl.java @@ -0,0 +1,57 @@ +package org.jeecg.modules.apiservice.impl; + +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiservice.LoginApiService; +import org.jeecg.modules.bean.LoginReq; +import org.jeecg.modules.hanHaiConf.entity.HanHaiConf; +import org.jeecg.modules.hanHaiConf.service.IHanHaiConfService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.service.AppletLoginService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +@Service +public class LoginApiServiceImpl implements LoginApiService { + + @Resource + private AppletLoginService appletLoginService; + //协议接口 + @Resource + private IHanHaiConfService hanHaiConfService; + + //小程序-登录接口 + @Override + public Result login(LoginReq loginReq) + { + return appletLoginService.appletLogin(loginReq); + } + + + //小程序-获取用户协议 + @Override + public Result getUserAgreement() + { + + HanHaiConf user_xy = hanHaiConfService.lambdaQuery().eq(HanHaiConf::getKeyValue, "user_xy").one(); + return Result.OK(user_xy.getContent()); + } + + //获取隐私政策 + @Override + public Result getPrivacyPolicy() + { + + HanHaiConf user_ys = hanHaiConfService.lambdaQuery().eq(HanHaiConf::getKeyValue, "user_ys").one(); + return Result.OK(user_ys.getContent()); + } + + + //获取发布帖子发布需知 + @Override + public Result getPublishPostNotice(){ + HanHaiConf user_tz = hanHaiConfService.lambdaQuery().eq(HanHaiConf::getKeyValue, "user_tz").one(); + return Result.OK(user_tz.getContent()); + } + +} diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/OrderApiServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/OrderApiServiceImpl.java new file mode 100644 index 0000000..f0051b1 --- /dev/null +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiservice/impl/OrderApiServiceImpl.java @@ -0,0 +1,119 @@ +package org.jeecg.modules.apiservice.impl; + +import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.apiUtils.printUtil; +import org.jeecg.modules.apiservice.OrderApiService; +import org.jeecg.modules.atOrder.entity.AtOrder; +import org.jeecg.modules.atOrder.service.IAtOrderService; +import org.jeecg.modules.atPhoneOrder.entity.AtPhoneOrder; +import org.jeecg.modules.atPhoneOrder.service.IAtPhoneOrderService; +import org.jeecg.modules.atTrends.entity.AtTrends; +import org.jeecg.modules.atTrends.service.IAtTrendsService; +import org.jeecg.modules.hanHaiMember.entity.HanHaiMember; +import org.jeecg.modules.pay.MpWxPayService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.math.BigDecimal; + + +@Service +public class OrderApiServiceImpl implements OrderApiService { + + + //支付接口 + @Autowired + private MpWxPayService mpWxPayService; + //推广记录 + @Resource + private IAtOrderService atOrderService; + @Resource + private IAtPhoneOrderService atPhoneOrderService; + //获取动态帖子 + @Resource + private IAtTrendsService atTrendsService; + + + + //创建订单 + @Override + public Result createOrder() + { + return null; + } + + //立即支付 + @Override + public Result payOrder() + { + + String s = new BigDecimal(0.01).multiply(new BigDecimal(100)).toString(); + int i1 = Double.valueOf(s).intValue(); + Object appOrder = mpWxPayService.createOrder( + "购买测试" , + "127.0.0.1", + System.currentTimeMillis()+"", + i1, + System.currentTimeMillis()+"", + "ozfsp7eFo_CvJdX5jl5fi4pR5AhI", + "{}"); + //返回支付结果 + return Result.OK("微信支付回调成功",appOrder); + } + + + //支付回调 + @Override + public Object createNotify(String requestBody){ + WxPayOrderNotifyResult notify = mpWxPayService.notify(requestBody); + String outTradeNo = notify.getOutTradeNo(); + AtOrder byId = atOrderService.getById(outTradeNo); + System.out.println("进入了支付回调"); + System.out.println(byId); + //如果不为空则修改支付状态 + if(byId!=null) + { + if ("N".equals(byId.getIsPay())){ + byId.setIsPay("Y"); + atOrderService.updateById(byId); + + //修改我的推广的的推广状态 + AtTrends byId1 = atTrendsService.getById(byId.getOrderId()); + byId1.setIsPay("Y"); + atTrendsService.updateById(byId1); + + } + } + + return null; + } + + + + //支付回调 + @Override + public Object createNotify2(String requestBody){ + WxPayOrderNotifyResult notify = mpWxPayService.notify(requestBody); + String outTradeNo = notify.getOutTradeNo(); + AtPhoneOrder byId = atPhoneOrderService.getById(outTradeNo); + System.out.println("进入了支付回调"); + System.out.println(byId); + //如果不为空则修改支付状态 + if(byId!=null) + { + if ("N".equals(byId.getIsPay())){ + byId.setIsPay("Y"); + atPhoneOrderService.updateById(byId); + } + } + + return null; + } + + + + + +}