| | |
| | | package com.panzhihua.service_dangjian.service.impl; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.panzhihua.common.model.dtos.partybuilding.NewFightIntegral; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.building.NewFightShoppingOrderVO; |
| | | import com.panzhihua.common.model.vos.user.SysUserNoticeVO; |
| | | import com.panzhihua.common.service.user.UserService; |
| | | import com.panzhihua.common.utlis.Snowflake; |
| | | import com.panzhihua.service_dangjian.dao.NewFightShoppingOrderDao; |
| | | import com.panzhihua.service_dangjian.entity.ComActIntegralUser; |
| | |
| | | import com.panzhihua.service_dangjian.service.*; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.ibatis.annotations.Param; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | @Resource |
| | | private ComActIntegralUsersService integralUsersService; |
| | | |
| | | @Resource |
| | | private UserService userService; |
| | | |
| | | @Override |
| | | public R getList(int pageNum,int pageSize,String userId,String goodsId,String orderNumber, |
| | | String goodName,String name,String cancelType,String communityId) |
| | | String goodName,String name,String cancelType,String communityId,String merchantId,String orderType) |
| | | { |
| | | Page page = new Page<NewFightShopping>(pageNum,pageSize); |
| | | return R.ok(baseMapper.getList(page,userId,goodsId,orderNumber,goodName,name,cancelType,communityId)); |
| | | return R.ok(baseMapper.getList(page,userId,goodsId,orderNumber,goodName,name,cancelType, |
| | | communityId, merchantId,orderType)); |
| | | } |
| | | |
| | | @Override |
| | |
| | | public R addData(NewFightShoppingOrderVO item) |
| | | { |
| | | item.setOrderNumber(Snowflake.getId()+""); |
| | | NewFightShopping goods=shoppingService.getDetails(item.getGoodsId()); |
| | | |
| | | int allMoney=0; |
| | | int getMoney=Integer.valueOf(goods.getGoodPrice()); |
| | | |
| | | |
| | | // 查询用户积分账户 |
| | |
| | | .eq(ComActIntegralUser::getUserId, item.getUserId()) |
| | | .eq(ComActIntegralUser::getCommunityId, item.getCommunityId())); |
| | | |
| | | int allMoney=0; |
| | | int getMoney=0; |
| | | |
| | | if(integralUserDO==null) |
| | | { |
| | | return R.fail("积分不足!"); |
| | | } |
| | | |
| | | allMoney=integralUserDO.getIntegralAvailableSum(); |
| | | |
| | | |
| | | //判断是线上下单 还是商家线下下单 1线上 2线下 |
| | | if(StringUtils.equals("2",item.getOrderType())) |
| | | { |
| | | getMoney=Integer.valueOf(item.getPalyMoney()); |
| | | } |
| | | else |
| | | { |
| | | NewFightShopping goods=shoppingService.getDetails(item.getGoodsId()); |
| | | getMoney=Integer.valueOf(goods.getGoodPrice()); |
| | | } |
| | | |
| | | |
| | | if(getMoney>allMoney) |
| | | { |
| | |
| | | } |
| | | |
| | | item.setCancelType("0"); |
| | | item.setPalyMoney(goods.getGoodPrice()); |
| | | item.setPalyMoney(getMoney+""); |
| | | int num= baseMapper.addData(item); |
| | | if(num>0) |
| | | { |
| | | //修改个人积分总额 |
| | | allMoney=allMoney-getMoney; |
| | | NewFightIntegral integral=new NewFightIntegral(); |
| | | |
| | | integral.setIntegralNum(allMoney+""); |
| | | integral.setAddOrReduce(2); |
| | | integral.setCommunityId(item.getCommunityId()); |
| | | integral.setUserId(item.getUserId()); |
| | | integral.setType("9"); |
| | | integral.setIdentityType("1"); |
| | | integral.setRemark("积分兑换商品"); |
| | | if(StringUtils.equals("1",item.getOrderType())) |
| | | { |
| | | |
| | | integral.setType("9"); |
| | | integral.setIdentityType("1"); |
| | | integral.setRemark("积分兑换商品"); |
| | | } |
| | | else |
| | | { |
| | | |
| | | integral.setType("10"); |
| | | integral.setIdentityType("1"); |
| | | integral.setRemark("商家兑换商品"); |
| | | integral.setMerchantId(item.getMerchantId()); |
| | | integral.setIntegralNum(item.getPalyMoney()); |
| | | |
| | | |
| | | |
| | | SysUserNoticeVO sysUserNoticeVO = new SysUserNoticeVO(); |
| | | sysUserNoticeVO.setUserId(Long.valueOf(item.getUserId())); |
| | | sysUserNoticeVO.setType(4); |
| | | sysUserNoticeVO.setTitle("商家兑换成功"); |
| | | sysUserNoticeVO.setBusinessType(14); |
| | | sysUserNoticeVO.setBusinessTitle(item.getRemark()); |
| | | sysUserNoticeVO |
| | | .setBusinessContent(String.format("兑换商品%s", item.getRemark())); |
| | | sysUserNoticeVO.setStatus(0); |
| | | sysUserNoticeVO.setBusinessStatus(1); |
| | | sysUserNoticeVO.setBusinessId(Long.valueOf(item.getId())); |
| | | sysUserNoticeVO.setActivityType(4); |
| | | R r2 = userService.addNotice(sysUserNoticeVO); |
| | | if (R.isOk(r2)) { |
| | | log.info("新增兑换商品通知成功【{}】", JSONObject.toJSONString(sysUserNoticeVO)); |
| | | } |
| | | } |
| | | integralUsersService.upIntegral(integral); |
| | | |
| | | return R.ok(); |
| | |
| | | { |
| | | return R.ok(); |
| | | } |
| | | return R.fail("添加失败"); |
| | | return R.fail("失败"); |
| | | } |
| | | |
| | | @Override |
| | |
| | | int num=baseMapper.editData(orderVO); |
| | | if(num>0) |
| | | { |
| | | // JinhuiCoinGeneralTable generalTable=tableService.getDetails(order.getUserId()); |
| | | // |
| | | // int allMoney=0; |
| | | // int getMoney=Integer.valueOf(order.getPalyMoney()); |
| | | // |
| | | // if(!StringUtils.isEmpty(generalTable.getGoldCoin())) |
| | | // { |
| | | // allMoney=Integer.valueOf(generalTable.getGoldCoin()); |
| | | // } |
| | | // |
| | | // //修改个人金汇币总额 |
| | | // allMoney=allMoney+getMoney; |
| | | // JinhuiCoinGeneralTableVO generalTableVO=new JinhuiCoinGeneralTableVO(); |
| | | // generalTableVO.setId(generalTable.getId()); |
| | | // generalTableVO.setGoldCoin(allMoney+""); |
| | | // tableService.editData(generalTableVO); |
| | | // |
| | | // //增加兑换记录 |
| | | // JinhuiGoldCoinRecordVO recordVO=new JinhuiGoldCoinRecordVO(); |
| | | // recordVO.setTitle("商品订单取消"); |
| | | // recordVO.setType("3"); |
| | | // recordVO.setUserId(order.getUserId()); |
| | | // recordVO.setGoldCoin(getMoney+""); |
| | | // goldCoinRecordService.addData(recordVO); |
| | | // 查询用户积分账户 |
| | | ComActIntegralUser integralUserDO = |
| | | integralUsersService.getOne(new QueryWrapper<ComActIntegralUser>().lambda() |
| | | .eq(ComActIntegralUser::getUserId, order.getUserId()) |
| | | .eq(ComActIntegralUser::getCommunityId, order.getCommunityId())); |
| | | |
| | | int allMoney=0; |
| | | int getMoney=Integer.valueOf(order.getPalyMoney()); |
| | | |
| | | allMoney=integralUserDO.getIntegralAvailableSum(); |
| | | |
| | | //修改个人金汇币总额 |
| | | allMoney=allMoney+getMoney; |
| | | |
| | | NewFightIntegral integral=new NewFightIntegral(); |
| | | |
| | | integral.setIntegralNum(allMoney+""); |
| | | integral.setAddOrReduce(1); |
| | | integral.setCommunityId(order.getCommunityId()); |
| | | integral.setUserId(order.getUserId()); |
| | | |
| | | if(StringUtils.equals("1",order.getOrderType())) |
| | | { |
| | | integral.setType("9"); |
| | | integral.setIdentityType("1"); |
| | | integral.setRemark("积分兑换商品取消"); |
| | | } |
| | | else |
| | | { |
| | | integral.setType("10"); |
| | | integral.setIdentityType("1"); |
| | | integral.setRemark("商家兑换商品取消"); |
| | | integral.setMerchantId(order.getMerchantId()); |
| | | integral.setIntegralNum(order.getPalyMoney()); |
| | | } |
| | | integralUsersService.upIntegral(integral); |
| | | |
| | | return R.ok(); |
| | | } |