Merge remote-tracking branch 'origin/lyq_battery_shop' into lyq_battery_shop
New file |
| | |
| | | package com.panzhihua.applets.api; |
| | | |
| | | import com.panzhihua.common.controller.BaseController; |
| | | import com.panzhihua.common.model.dtos.common.AddComBatteryCommodityActivityDto; |
| | | import com.panzhihua.common.model.dtos.common.EditComBatteryCommodityActivityDto; |
| | | import com.panzhihua.common.model.dtos.common.PageComBatteryCommodityActivityDto; |
| | | import com.panzhihua.common.model.dtos.common.PageComBatteryCommodityOrderCollageTeamDto; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.common.ComBatteryCommodityActivityVo; |
| | | import com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamVo; |
| | | import com.panzhihua.common.service.community.ComBatteryCommodityActivityFeign; |
| | | import com.panzhihua.common.service.community.ComBatteryCommodityOrderCollageTeamFeign; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * title: 电动车商城-商家活动表(ComBatteryCommodityActivity) 表控制层 |
| | | * <p> |
| | | * projectName 成都呐喊信息技术有限公司-智慧社区项目 |
| | | * <p> |
| | | * description: 电动车商城-商家活动表 |
| | | * |
| | | * @author lyq |
| | | * @date 2022-03-29 13:17:38 |
| | | */ |
| | | @Slf4j |
| | | @Api(tags = {"电动车商城-活动管理"}) |
| | | @RestController |
| | | @RequestMapping("/comBatteryCommodityActivity") |
| | | public class ComBatteryCommodityActivityApi extends BaseController { |
| | | |
| | | @Resource |
| | | private ComBatteryCommodityActivityFeign comBatteryCommodityActivityService; |
| | | @Resource |
| | | private ComBatteryCommodityOrderCollageTeamFeign orderCollageTeamService; |
| | | |
| | | /** |
| | | * description queryByPage 分页查询 |
| | | * |
| | | * @param comBatteryCommodityActivity 请求参数 |
| | | * @return 分页查询返回参数 |
| | | * @author lyq |
| | | * @date 2022-03-29 13:17:38 |
| | | */ |
| | | @ApiOperation(value = "分页查询活动列表",response = ComBatteryCommodityActivityVo.class) |
| | | @PostMapping("/page") |
| | | public R queryByPage(@RequestBody PageComBatteryCommodityActivityDto comBatteryCommodityActivity) { |
| | | comBatteryCommodityActivity.setStatus(1); |
| | | return this.comBatteryCommodityActivityService.queryByPage(comBatteryCommodityActivity); |
| | | } |
| | | |
| | | /** |
| | | * description detailById 查询详情 |
| | | * |
| | | * @param id 主键id |
| | | * @return 详情数据 |
| | | * @author lyq |
| | | * @date 2022-03-29 13:17:38 |
| | | */ |
| | | @ApiOperation(value = "查询活动详情",response = ComBatteryCommodityActivityVo.class) |
| | | @GetMapping("/detail") |
| | | public R detailById(@RequestParam("id") Long id) { |
| | | return this.comBatteryCommodityActivityService.detailById(id); |
| | | } |
| | | |
| | | /** |
| | | * description queryByPage 查询列表 |
| | | * |
| | | * @param comBatteryCommodityActivity 请求参数 |
| | | * @return 列表数据 |
| | | * @author lyq |
| | | * @date 2022-03-29 13:17:38 |
| | | */ |
| | | @ApiOperation(value = "查询活动列表",response = ComBatteryCommodityActivityVo.class) |
| | | @PostMapping("/list") |
| | | public R queryByList(@RequestBody PageComBatteryCommodityActivityDto comBatteryCommodityActivity) { |
| | | comBatteryCommodityActivity.setStatus(1); |
| | | return this.comBatteryCommodityActivityService.queryByList(comBatteryCommodityActivity); |
| | | } |
| | | |
| | | @ApiOperation(value = "查询拼团团队列表",response = ComBatteryCommodityOrderCollageTeamVo.class) |
| | | @PostMapping("/assorted/dough") |
| | | public R queryByAssortedDoughList(@RequestBody PageComBatteryCommodityOrderCollageTeamDto orderCollageTeamDto) { |
| | | orderCollageTeamDto.setStatus(1); |
| | | return this.orderCollageTeamService.queryByPage(orderCollageTeamDto); |
| | | } |
| | | |
| | | @ApiOperation(value = "查询拼团团队详情",response = ComBatteryCommodityOrderCollageTeamVo.class) |
| | | @PostMapping("/assorted/dough/detail") |
| | | public R queryByAssortedDoughDetail(@RequestParam("id") Long id) { |
| | | return this.orderCollageTeamService.detailById(id); |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | @PostMapping("/batteryActivityPayNotify") |
| | | public void batteryActivityPayNotify(HttpServletRequest request, HttpServletResponse response) { |
| | | log.info("购买活动商品微信支付回调start"); |
| | | String inputLine = ""; |
| | | String notityXml = ""; |
| | | try { |
| | | while ((inputLine = request.getReader().readLine()) != null) { |
| | | notityXml += inputLine; |
| | | } |
| | | // 关闭流 |
| | | request.getReader().close(); |
| | | log.info("购买活动商品微信回调内容信息:" + notityXml); |
| | | // 解析成Json |
| | | org.json.JSONObject xmlJson = XML.toJSONObject(notityXml); |
| | | if (StringUtils.isNotEmpty(xmlJson.toString())) { |
| | | JSONObject resultData = JSON.parseObject(xmlJson.get("xml").toString()); |
| | | // 成功支付订单 |
| | | if (SUCCESS.equals(resultData.getString("result_code")) && SUCCESS.equals(resultData.getString("result_code"))){ |
| | | WxPayNotifyOrderDTO notifyOrderDTO = getWxNotify(resultData); |
| | | |
| | | // 根据订单号修改订单信息 |
| | | commodityOrderFeign.batteryActivityPayNotify(notifyOrderDTO); |
| | | // 给微信服务器返回 成功标示 否则会一直询问 咱们服务器 是否回调成功 |
| | | PrintWriter writer = response.getWriter(); |
| | | // 返回 |
| | | writer.print(getWxSuccessString()); |
| | | } else {// 未成功支付订单 |
| | | // 给微信服务器返回 成功标示 否则会一直询问 咱们服务器 是否回调成功 |
| | | PrintWriter writer = response.getWriter(); |
| | | // 返回 |
| | | writer.print(getWxFailString()); |
| | | } |
| | | } |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 将微信支付回调的请求参数转义为对象 |
| | | * @param resultData 微信支付回调请求参数 |
| | |
| | | // 现金支付金额 |
| | | String cashFee = resultData.getString("cash_fee"); |
| | | notifyOrderDTO.setCashFee(cashFee); |
| | | //附加数据 |
| | | String attach = resultData.getString("attach"); |
| | | notifyOrderDTO.setAttach(attach); |
| | | return notifyOrderDTO; |
| | | } |
| | | |
| | |
| | | * 电动车商城购买商品支付回调地址 |
| | | */ |
| | | public static final String BATTERY_STORE_PAY_NOTIFY_URL = "/api/applets/wx/batteryPayNotify"; |
| | | /** |
| | | * 电动车商城活动订单支付回调地址 |
| | | */ |
| | | public static final String BATTERY_STORE_ACTIVITY_PAY_NOTIFY_URL = "/api/applets/wx/batteryActivityPayNotify"; |
| | | } |
| | |
| | | @ApiModelProperty(value = "更新人id") |
| | | private Long updateBy; |
| | | |
| | | |
| | | /** |
| | | * 商品规格id |
| | | */ |
| | | @ApiModelProperty(value = "商品规格id") |
| | | private Long specsId; |
| | | } |
| | | |
| | |
| | | * 活动id |
| | | */ |
| | | @ApiModelProperty(value = "活动id") |
| | | private Long acctivityId; |
| | | private Long activityId; |
| | | |
| | | /** |
| | | * 订单id |
| | |
| | | @ApiModelProperty(value = "更新人id") |
| | | private Long updateBy; |
| | | |
| | | /** |
| | | * 商品规格id |
| | | */ |
| | | @ApiModelProperty(value = "商品规格id") |
| | | private Long specsId; |
| | | } |
| | | |
| | |
| | | * 活动id |
| | | */ |
| | | @ApiModelProperty(value = "活动id") |
| | | private Long acctivityId; |
| | | private Long activityId; |
| | | /** |
| | | * 订单id |
| | | */ |
| | |
| | | * 活动id |
| | | */ |
| | | @ApiModelProperty(value = "活动id") |
| | | private Long acctivityId; |
| | | private Long activityId; |
| | | /** |
| | | * 订单id |
| | | */ |
New file |
| | |
| | | package com.panzhihua.common.model.dtos.common; |
| | | |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author lyq |
| | | * 发起拼团订单请求参数 |
| | | */ |
| | | @Data |
| | | @ApiModel("发起拼团订单请求参数") |
| | | public class StartFightOrderDto { |
| | | |
| | | @ApiModelProperty(value = "用户id",hidden = true) |
| | | private Long userId; |
| | | |
| | | @ApiModelProperty(value = "用户openId",hidden = true) |
| | | private String openId; |
| | | |
| | | @ApiModelProperty(value = "商品id") |
| | | private Long commodityId; |
| | | |
| | | @ApiModelProperty(value = "活动id") |
| | | private Long activityId; |
| | | |
| | | @ApiModelProperty(value = "用户收货地址id") |
| | | private Long addressId; |
| | | |
| | | @ApiModelProperty(value = "购买商品数量") |
| | | private Integer count; |
| | | |
| | | @ApiModelProperty(value = "订单备注") |
| | | private String remark; |
| | | |
| | | @ApiModelProperty(value = "拼团类型(1.开团 2.参团)") |
| | | private Integer type; |
| | | |
| | | @ApiModelProperty(value = "拼团团队id") |
| | | private Long teamId; |
| | | |
| | | /** |
| | | * 拼团类型(1.开团 2.参团) |
| | | */ |
| | | public interface Type{ |
| | | int KT = 1; |
| | | int PT = 2; |
| | | } |
| | | } |
| | |
| | | |
| | | @ApiModelProperty(value = "支付返回参数信息") |
| | | private String result; |
| | | |
| | | @ApiModelProperty(value = "支付附加数据") |
| | | private String attach; |
| | | } |
| | |
| | | |
| | | @ApiModelProperty(value = "商户名称") |
| | | private String storeName; |
| | | |
| | | @ApiModelProperty(value = "商户规格id") |
| | | private Long specsId; |
| | | |
| | | @ApiModelProperty(value = "商户规格名称") |
| | | private Long specsName; |
| | | } |
| | |
| | | @ApiModelProperty(value = "创建人id") |
| | | private Long createBy; |
| | | |
| | | @ApiModelProperty(value = "用户头像") |
| | | private String images; |
| | | |
| | | @ApiModelProperty(value = "用户昵称") |
| | | private String nickName; |
| | | } |
| | |
| | | package com.panzhihua.common.model.vos.common; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import org.springframework.format.annotation.DateTimeFormat; |
| | |
| | | * 活动id |
| | | */ |
| | | @ApiModelProperty(value = "活动id") |
| | | private Long acctivityId; |
| | | private Long activityId; |
| | | /** |
| | | * 订单id |
| | | */ |
| | |
| | | @ApiModelProperty(value = "创建时间") |
| | | private Date createAt; |
| | | |
| | | @ApiModelProperty(value = "已拼人数") |
| | | private Integer spelledNum; |
| | | |
| | | @ApiModelProperty(value = "成团人数") |
| | | private Integer collagePeopleNum; |
| | | |
| | | @ApiModelProperty(value = "团长头像") |
| | | private String images; |
| | | |
| | | @ApiModelProperty(value = "团长昵称") |
| | | private String nickName; |
| | | |
| | | @ApiModelProperty(value = "拼团人员列表") |
| | | private List<ComBatteryCommodityOrderCollageTeamPeopleVo> orderCollageTeamPeopleList; |
| | | } |
| | |
| | | */ |
| | | @PostMapping("/deliver") |
| | | R orderDeliver(@RequestBody OrderDeliverAdminDto deliverAdminDto); |
| | | |
| | | /** |
| | | * 电动车商城购买活动商品支付回调 |
| | | * @param notifyOrderDTO 请求参数 |
| | | * @return 购买商品支付回调 |
| | | */ |
| | | @PostMapping("/batteryActivityPayNotify") |
| | | R batteryActivityPayNotify(@RequestBody WxPayNotifyOrderDTO notifyOrderDTO); |
| | | } |
| | |
| | | public class WxPayUtils { |
| | | |
| | | public static String getUnifiedorder(String appid, String mchId, String payKey, String notifyUrl, String body, |
| | | String openid, String outTradeNo, BigDecimal money) { |
| | | String openid, String outTradeNo, BigDecimal money,String attach) { |
| | | String nonceStr = PayUtil.makeUUID(32); |
| | | SortedMap<Object, Object> params = new TreeMap<>(); |
| | | params.put("appid", appid); |
| | |
| | | params.put("nonce_str", nonceStr); |
| | | params.put("notify_url", notifyUrl); |
| | | params.put("openid", openid); |
| | | //附加数据 |
| | | if(StringUtils.isNotEmpty(attach)){ |
| | | params.put("attach", attach); |
| | | } |
| | | params.put("out_trade_no", outTradeNo);// 商品订单号 |
| | | params.put("spbill_create_ip", PayUtil.getLocalIp());// 服务部署的ip |
| | | params.put("total_fee", PayUtil.moneyToIntegerStr(money));// 费用的参数转型 |
| | |
| | | import com.panzhihua.service_community.service.ComBatteryCommodityActivityService; |
| | | import com.panzhihua.common.model.dtos.common.*; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.service_community.service.ComBatteryCommodityOrderCollageTeamService; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | |
| | | @Resource |
| | | private ComBatteryCommodityActivityService comBatteryCommodityActivityService; |
| | | @Resource |
| | | private ComBatteryCommodityOrderCollageTeamService orderCollageTeamService; |
| | | |
| | | /** |
| | | * description queryByPage 分页查询 |
| | |
| | | return this.comBatteryCommodityActivityService.updateStatus(id,status); |
| | | } |
| | | |
| | | /** |
| | | * 创建拼团订单 |
| | | * @param orderDto 请求参数 |
| | | * @return 创建订单结果 |
| | | */ |
| | | @PostMapping("/start/fight") |
| | | public R startFight(@RequestBody StartFightOrderDto orderDto){ |
| | | return this.orderCollageTeamService.startFight(orderDto); |
| | | } |
| | | } |
| | | |
| | |
| | | return this.comBatteryCommodityOrderService.orderDeliver(deliverAdminDto); |
| | | } |
| | | |
| | | /** |
| | | * 电动车商城购买活动商品支付回调 |
| | | * @param notifyOrderDTO 请求参数 |
| | | * @return 购买商品支付回调 |
| | | */ |
| | | @PostMapping("/batteryActivityPayNotify") |
| | | public R batteryActivityPayNotify(@RequestBody WxPayNotifyOrderDTO notifyOrderDTO){ |
| | | return this.comBatteryCommodityOrderService.batteryActivityPayNotify(notifyOrderDTO); |
| | | } |
| | | |
| | | } |
| | | |
| | |
| | | * @date 2022-03-29 16:07:08 |
| | | */ |
| | | List<ComBatteryCommodityOrderCollageTeamPeopleVo> queryAllByList(@Param("dto") PageComBatteryCommodityOrderCollageTeamPeopleDto comBatteryCommodityOrderCollageTeamPeople); |
| | | |
| | | /** |
| | | * 根据拼团团队id查询团队人员信息 |
| | | * @param teamId 团队id |
| | | * @return 团队人员信息 |
| | | */ |
| | | List<ComBatteryCommodityOrderCollageTeamPeopleVo> queryAllByTeamId(@Param("teamId") Long teamId); |
| | | } |
| | | |
| | |
| | | * 更新人id |
| | | */ |
| | | private Long updateBy; |
| | | |
| | | /** |
| | | * 活动商品已卖出数量 |
| | | */ |
| | | private Integer commoditySaleNum; |
| | | /** |
| | | * 商品规格id |
| | | */ |
| | | private Long specsId; |
| | | /** |
| | | * 是否删除枚举(1.是 2.否) |
| | | */ |
| | |
| | | int YES = 1; |
| | | int NO = 2; |
| | | } |
| | | /** |
| | | * 状态(1.进行中 2.已下架 3.已结束) |
| | | */ |
| | | public interface Status{ |
| | | int JXZ = 1; |
| | | int YXJ = 2; |
| | | int YJS = 3; |
| | | } |
| | | } |
| | | |
| | |
| | | * 收货地区编码 |
| | | */ |
| | | private String receivingRegionCode; |
| | | |
| | | /** |
| | | * 拼团id |
| | | */ |
| | | private Long teamId; |
| | | /** |
| | | * 是否删除枚举(1.是 2.否) |
| | | */ |
| | |
| | | public interface PayType{ |
| | | int WX = 1; |
| | | } |
| | | |
| | | /** |
| | | * 活动状态(1.拼团活动 2.砍价活动 3.限时秒杀) |
| | | */ |
| | | public interface ActivityType{ |
| | | int PT = 1; |
| | | int KJ = 2; |
| | | int MS = 3; |
| | | } |
| | | |
| | | /** |
| | | * 拼团状态(1.拼团中 2.拼团成功 3.拼团失败) |
| | | */ |
| | | public interface CollageStatus{ |
| | | int PTZ = 1; |
| | | int PTCG = 2; |
| | | int PTSB = 3; |
| | | } |
| | | |
| | | /** |
| | | * 砍价状态(1.砍价中 2.砍价成功 3.砍价失败) |
| | | */ |
| | | public interface BargainStatus{ |
| | | int KJZ = 1; |
| | | int KJCG = 2; |
| | | int KJSB = 3; |
| | | } |
| | | } |
| | | |
| | |
| | | /** |
| | | * 活动id |
| | | */ |
| | | private Long acctivityId; |
| | | private Long activityId; |
| | | /** |
| | | * 订单id |
| | | */ |
| | |
| | | * 创建时间 |
| | | */ |
| | | private Date createAt; |
| | | |
| | | |
| | | /** |
| | | * 状态(1.等待拼团 2.拼团成功 3.拼团失败 4.已退款) |
| | | */ |
| | | public interface Status{ |
| | | int DDPT = 1; |
| | | int PTCG = 2; |
| | | int PTSB = 3; |
| | | int YTK = 4; |
| | | } |
| | | } |
| | | |
| | |
| | | */ |
| | | R queryByList(PageComBatteryCommodityOrderCollageTeamDto comBatteryCommodityOrderCollageTeam); |
| | | |
| | | /** |
| | | * 创建拼团订单 |
| | | * @param orderDto 请求参数 |
| | | * @return 创建订单结果 |
| | | */ |
| | | R startFight(StartFightOrderDto orderDto); |
| | | |
| | | } |
| | |
| | | * @return 发货结果 |
| | | */ |
| | | R orderDeliver(OrderDeliverAdminDto deliverAdminDto); |
| | | |
| | | /** |
| | | * 电动车商城购买活动商品支付回调 |
| | | * @param notifyOrderDTO 请求参数 |
| | | * @return 购买商品支付回调 |
| | | */ |
| | | R batteryActivityPayNotify(WxPayNotifyOrderDTO notifyOrderDTO); |
| | | } |
| | |
| | | package com.panzhihua.service_community.service.impl; |
| | | |
| | | import com.panzhihua.service_community.entity.ComBatteryCommodityOrderCollageTeam; |
| | | import com.panzhihua.service_community.dao.ComBatteryCommodityOrderCollageTeamMapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.panzhihua.common.constants.PayCpmstant; |
| | | import com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamPeopleVo; |
| | | import com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamVo; |
| | | import com.panzhihua.common.utlis.Snowflake; |
| | | import com.panzhihua.common.utlis.WxPayUtils; |
| | | import com.panzhihua.service_community.dao.*; |
| | | import com.panzhihua.service_community.entity.*; |
| | | import com.panzhihua.service_community.service.ComBatteryCommodityOrderCollageTeamService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.panzhihua.service_community.service.ComBatteryTradeOrderService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.BeanUtils; |
| | | import com.panzhihua.common.model.dtos.common.*; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.stereotype.Service; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * title: 电动车商城-拼团订单团队表表服务实现类 |
| | |
| | | * @author lyq |
| | | * @date 2022-03-29 16:06:58 |
| | | */ |
| | | @Slf4j |
| | | @Service("comBatteryCommodityOrderCollageTeamService") |
| | | public class ComBatteryCommodityOrderCollageTeamServiceImpl extends ServiceImpl<ComBatteryCommodityOrderCollageTeamMapper, ComBatteryCommodityOrderCollageTeam> implements ComBatteryCommodityOrderCollageTeamService { |
| | | |
| | | @Resource |
| | | private ComBatteryCommodityActivityMapper commodityActivityMapper; |
| | | @Resource |
| | | private ComBatteryCommodityOrderCollageTeamMapper orderCollageTeamMapper; |
| | | @Resource |
| | | private ComBatteryCommodityOrderCollageTeamPeopleMapper orderCollageTeamPeopleMapper; |
| | | @Resource |
| | | private ComBatteryUserAddressMapper userAddressMapper; |
| | | @Resource |
| | | private SysUserMapper userMapper; |
| | | @Resource |
| | | private ComBatteryTradeOrderService tradeOrderService; |
| | | @Value("${min.app.isTest}") |
| | | private Boolean isTest; |
| | | @Value("${min.app.isRefundTest}") |
| | | private Boolean isRefundTest; |
| | | @Value("${min.app.appid}") |
| | | private String appid; |
| | | @Value("${min.app.payKey}") |
| | | private String payKey; |
| | | @Value("${min.app.mchId}") |
| | | private String mchId; |
| | | @Value("${min.app.currencyNotifyUrl}") |
| | | private String currencyNotifyUrl; |
| | | @Resource |
| | | private ComBatteryCommodityMapper commodityMapper; |
| | | @Resource |
| | | private ComBatteryCommoditySpecsMapper commoditySpecsMapper; |
| | | @Resource |
| | | private ComBatteryCommodityOrderMapper commodityOrderMapper; |
| | | |
| | | /** |
| | | * description queryByPage 分页查询 |
| | |
| | | */ |
| | | @Override |
| | | public R detailById(Long id) { |
| | | return R.ok(this.baseMapper.queryById(id)); |
| | | ComBatteryCommodityOrderCollageTeamVo orderCollageTeamVo = this.baseMapper.queryById(id); |
| | | if(orderCollageTeamVo != null){ |
| | | List<ComBatteryCommodityOrderCollageTeamPeopleVo> collageTeamPeopleList = orderCollageTeamPeopleMapper.queryAllByTeamId(id); |
| | | orderCollageTeamVo.setOrderCollageTeamPeopleList(collageTeamPeopleList); |
| | | } |
| | | return R.ok(orderCollageTeamVo); |
| | | } |
| | | |
| | | /** |
| | |
| | | public R queryByList(PageComBatteryCommodityOrderCollageTeamDto comBatteryCommodityOrderCollageTeam) { |
| | | return R.ok(this.baseMapper.queryAllByList(comBatteryCommodityOrderCollageTeam)); |
| | | } |
| | | |
| | | /** |
| | | * 创建拼团订单 |
| | | * @param orderDto 请求参数 |
| | | * @return 创建订单结果 |
| | | */ |
| | | @Override |
| | | public synchronized R startFight(StartFightOrderDto orderDto) { |
| | | //查询拼团活动 |
| | | ComBatteryCommodityActivity commodityActivity = commodityActivityMapper.selectById(orderDto.getActivityId()); |
| | | if(commodityActivity == null){ |
| | | return R.fail("未查询到拼团活动"); |
| | | } |
| | | if(commodityActivity.getStatus().equals(ComBatteryCommodityActivity.Status.YXJ)){ |
| | | return R.fail("该活动已下架"); |
| | | } |
| | | if(commodityActivity.getEndTime().getTime() - System.currentTimeMillis() <= 0 |
| | | || commodityActivity.getStatus().equals(ComBatteryCommodityActivity.Status.YJS)){ |
| | | return R.fail("该活动已结束"); |
| | | } |
| | | if(commodityActivity.getCommodityNum() <= commodityActivity.getCommoditySaleNum()){ |
| | | return R.fail("活动商品已售空"); |
| | | } |
| | | if(orderDto.getType().equals(StartFightOrderDto.Type.PT)){ |
| | | //判断该团队人数是否已满 |
| | | Integer count = orderCollageTeamPeopleMapper.selectCount(new QueryWrapper<ComBatteryCommodityOrderCollageTeamPeople>().lambda() |
| | | .eq(ComBatteryCommodityOrderCollageTeamPeople::getTeamId,orderDto.getTeamId())); |
| | | if(count >= commodityActivity.getCollagePeopleNum()){ |
| | | return R.fail("拼团人数已满"); |
| | | } |
| | | //查询拼团团队 |
| | | ComBatteryCommodityOrderCollageTeam orderCollageTeam = orderCollageTeamMapper.selectById(orderDto.getTeamId()); |
| | | if(orderCollageTeam == null){ |
| | | return R.fail("该拼团不存在"); |
| | | } |
| | | if(!orderCollageTeam.getStatus().equals(ComBatteryCommodityOrderCollageTeam.Status.DDPT)){ |
| | | return R.fail("该拼团已成功"); |
| | | } |
| | | }else{ |
| | | Integer count = orderCollageTeamMapper.selectCount(new QueryWrapper<ComBatteryCommodityOrderCollageTeam>().lambda() |
| | | .eq(ComBatteryCommodityOrderCollageTeam::getActivityId,orderDto.getActivityId()) |
| | | .eq(ComBatteryCommodityOrderCollageTeam::getStatus,ComBatteryCommodityOrderCollageTeam.Status.DDPT)); |
| | | if(count >= commodityActivity.getCollageNum()){ |
| | | return R.fail("当前正在拼团的数量已达到最大值,不可在开团"); |
| | | } |
| | | } |
| | | //查询商品 |
| | | ComBatteryCommodity commodity = commodityMapper.selectById(orderDto.getCommodityId()); |
| | | if(commodity == null){ |
| | | return R.fail("未查询到商品信息"); |
| | | } |
| | | //查询用户信息 |
| | | SysUser user = userMapper.selectById(orderDto.getUserId()); |
| | | if(user == null){ |
| | | return R.fail("未查询到用户信息"); |
| | | } |
| | | //查询商品规格信息 |
| | | ComBatteryCommoditySpecs commoditySpecs = commoditySpecsMapper.selectById(commodityActivity.getSpecsId()); |
| | | if(commoditySpecs == null){ |
| | | return R.fail("未查询到商品规格信息"); |
| | | } |
| | | if(commoditySpecs.getStock() < orderDto.getCount()){ |
| | | return R.fail("该商品库存不足,无法下单"); |
| | | } |
| | | //查询用户收货地址 |
| | | ComBatteryUserAddress userAddress = userAddressMapper.selectById(orderDto.getAddressId()); |
| | | if(userAddress == null){ |
| | | return R.fail("未查询到用户收货地址"); |
| | | } |
| | | Date nowDate = new Date(); |
| | | //初始化订单数据 |
| | | ComBatteryCommodityOrder commodityOrder = getCreateOrder(commodity,userAddress,user,commoditySpecs,orderDto,nowDate,commodityActivity); |
| | | Map<String,Object> resultMap = new HashMap<>(2); |
| | | if(commodityOrderMapper.insert(commodityOrder) > 0){ |
| | | //更新商品库存 |
| | | commoditySpecs.setStock(commoditySpecs.getStock() - orderDto.getCount()); |
| | | commoditySpecsMapper.updateById(commoditySpecs); |
| | | |
| | | //微信支付需要调取小程序微信支付 |
| | | String result = getWxPayResult(commodityOrder.getFinalAmount(),commodityOrder.getOpenId() |
| | | ,commodityOrder.getOrderNo(),"购买商品",orderDto.getType().toString()); |
| | | resultMap.put("payResult",result); |
| | | resultMap.put("orderId",commodityOrder.getId()); |
| | | // 添加微信支付交易流水 |
| | | String wxTradeOrderNo = "wx" + Snowflake.getId(); |
| | | tradeOrderService.addOrderTradeRecord(user.getUserId(), user.getOpenid(), wxTradeOrderNo, ComBatteryTradeOrder.PayType.WX, |
| | | commodityOrder.getFinalAmount(), ComBatteryTradeOrder.TradeType.DDC_SHOP, commodityOrder.getId(), |
| | | commodityOrder.getOrderNo(), user.getUserId(), nowDate); |
| | | } |
| | | return R.ok(resultMap); |
| | | } |
| | | |
| | | /** |
| | | * 小程序唤起微信支付 |
| | | * |
| | | * @param money |
| | | * 需要支付的金额 |
| | | * @param openId |
| | | * 用户唤起微信支付的openid |
| | | * @param orderNo |
| | | * 业务订单号 |
| | | * @param remark |
| | | * 交易备注 |
| | | * @return 小程序支付参数 |
| | | */ |
| | | private String getWxPayResult(BigDecimal money, String openId, String orderNo, String remark,String type) { |
| | | String result = ""; |
| | | // 将剩余金额调起微信支付 |
| | | if (isTest) { |
| | | money = BigDecimal.valueOf(0.01); |
| | | } |
| | | // 调用wx支付 |
| | | result = WxPayUtils.getUnifiedorder(appid, mchId, payKey, currencyNotifyUrl + PayCpmstant.BATTERY_STORE_ACTIVITY_PAY_NOTIFY_URL |
| | | , remark, openId, orderNo, money,type); |
| | | log.info("用户购买商品微信支付返回参数:" + result); |
| | | return result; |
| | | } |
| | | |
| | | /** |
| | | * 初始化订单数据 |
| | | * @param commodity 商品数据 |
| | | * @param userAddress 用户收货地址信息 |
| | | * @param user 用户数据 |
| | | * @param commoditySpecs 商品规格数据 |
| | | * @param orderDto 用户请求参数 |
| | | * @param nowDate 操作时间 |
| | | * @param commodityActivity 拼团活动数据 |
| | | * @return 初始化订单数据 |
| | | */ |
| | | public static ComBatteryCommodityOrder getCreateOrder(ComBatteryCommodity commodity, ComBatteryUserAddress userAddress |
| | | , SysUser user, ComBatteryCommoditySpecs commoditySpecs, StartFightOrderDto orderDto, Date nowDate |
| | | ,ComBatteryCommodityActivity commodityActivity){ |
| | | ComBatteryCommodityOrder commodityOrder = new ComBatteryCommodityOrder(); |
| | | commodityOrder.setUserId(user.getUserId()); |
| | | commodityOrder.setOpenId(user.getOpenid()); |
| | | commodityOrder.setStoreId(commodity.getStoreId()); |
| | | commodityOrder.setActivityId(commodityActivity.getId()); |
| | | commodityOrder.setCommodityId(commodity.getId()); |
| | | commodityOrder.setSpecsId(commoditySpecs.getId()); |
| | | commodityOrder.setOrderNo("PT" + Snowflake.getId()); |
| | | commodityOrder.setActivityType(commodityActivity.getType()); |
| | | commodityOrder.setStatus(ComBatteryCommodityOrder.Status.DFK); |
| | | commodityOrder.setPayStatus(ComBatteryCommodityOrder.PayStatus.WZF); |
| | | commodityOrder.setIsDel(ComBatteryCommodityOrder.IsDel.NO); |
| | | commodityOrder.setPayType(ComBatteryCommodityOrder.PayType.WX); |
| | | commodityOrder.setCount(orderDto.getCount()); |
| | | commodityOrder.setPrice(commodityActivity.getPrice()); |
| | | commodityOrder.setAmount(commodityActivity.getPrice().multiply(BigDecimal.valueOf(orderDto.getCount()))); |
| | | commodityOrder.setFreight(commodity.getPostage()); |
| | | commodityOrder.setFinalAmount(commodityOrder.getAmount().add(commodityOrder.getFreight())); |
| | | commodityOrder.setCreateAt(nowDate); |
| | | commodityOrder.setCreateBy(user.getUserId()); |
| | | commodityOrder.setRemark(orderDto.getRemark()); |
| | | //收货地址 |
| | | commodityOrder.setAddressId(userAddress.getId()); |
| | | commodityOrder.setReceivingName(userAddress.getName()); |
| | | commodityOrder.setReceivingPhone(userAddress.getPhone()); |
| | | commodityOrder.setReceivingRegionCode(userAddress.getProvinceAdcode() + "-" + userAddress.getCityAdcode() + "-" + userAddress.getDistrictAdcode()); |
| | | commodityOrder.setReceivingRegion(userAddress.getProvinceName() + userAddress.getCityName() + userAddress.getDistrictName()); |
| | | commodityOrder.setReceivingAddress(userAddress.getAddress()); |
| | | if(orderDto.getTeamId() != null){ |
| | | commodityOrder.setTeamId(orderDto.getTeamId()); |
| | | } |
| | | return commodityOrder; |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | private String mchId; |
| | | @Value("${min.app.currencyNotifyUrl}") |
| | | private String currencyNotifyUrl; |
| | | @Resource |
| | | private ComBatteryCommodityOrderCollageTeamMapper orderCollageTeamMapper; |
| | | @Resource |
| | | private ComBatteryCommodityOrderCollageTeamPeopleMapper orderCollageTeamPeopleMapper; |
| | | @Resource |
| | | private ComBatteryCommodityActivityMapper commodityActivityMapper; |
| | | |
| | | /** |
| | | * description queryByPage 分页查询 |
| | |
| | | |
| | | /** |
| | | * 修改订单收货地址 |
| | | * |
| | | * @param editOrderAddressDto 请求参数 |
| | | * @return 修改结果 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 修改订单物流信息 |
| | | * |
| | | * @param editOrderLogisticsDto 请求参数 |
| | | * @return 修改结果 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 电动车商城购买商品支付回调 |
| | | * |
| | | * @param notifyOrderDTO 请求参数 |
| | | * @return 购买商品支付回调 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 小程序用户创建订单 |
| | | * |
| | | * @param createOrderDto 请求参数 |
| | | * @return 创建结果 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 初始化订单数据 |
| | | * |
| | | * @param commodity 商品数据 |
| | | * @param userAddress 用户收货地址信息 |
| | | * @param user 用户数据 |
| | |
| | | * @param nowDate 操作时间 |
| | | * @return 初始化订单数据 |
| | | */ |
| | | private ComBatteryCommodityOrder getCreateOrder(ComBatteryCommodity commodity, ComBatteryUserAddress userAddress |
| | | public static ComBatteryCommodityOrder getCreateOrder(ComBatteryCommodity commodity, ComBatteryUserAddress userAddress |
| | | , SysUser user, ComBatteryCommoditySpecs commoditySpecs, UserCreateOrderDto createOrderDto, Date nowDate){ |
| | | ComBatteryCommodityOrder commodityOrder = new ComBatteryCommodityOrder(); |
| | | commodityOrder.setUserId(user.getUserId()); |
| | |
| | | /** |
| | | * 小程序唤起微信支付 |
| | | * |
| | | * @param money |
| | | * 需要支付的金额 |
| | | * @param openId |
| | | * 用户唤起微信支付的openid |
| | | * @param orderNo |
| | | * 业务订单号 |
| | | * @param remark |
| | | * 交易备注 |
| | | * @param money 需要支付的金额 |
| | | * @param openId 用户唤起微信支付的openid |
| | | * @param orderNo 业务订单号 |
| | | * @param remark 交易备注 |
| | | * @return 小程序支付参数 |
| | | */ |
| | | private String getWxPayResult(BigDecimal money, String openId, String orderNo, String remark) { |
| | |
| | | money = BigDecimal.valueOf(0.01); |
| | | } |
| | | // 调用wx支付 |
| | | result = WxPayUtils.getUnifiedorder(appid, mchId, payKey, currencyNotifyUrl + PayCpmstant.BATTERY_STORE_PAY_NOTIFY_URL, remark, openId, orderNo, money); |
| | | result = WxPayUtils.getUnifiedorder(appid, mchId, payKey, currencyNotifyUrl + PayCpmstant.BATTERY_STORE_PAY_NOTIFY_URL |
| | | , remark, openId, orderNo, money,null); |
| | | log.info("用户购买商品微信支付返回参数:" + result); |
| | | return result; |
| | | } |
| | | |
| | | /** |
| | | * 定时关闭5分钟未支付订单 |
| | | * |
| | | * @return 操作结果 |
| | | */ |
| | | @Override |
| | |
| | | |
| | | /** |
| | | * 电动车商城用户确认收货 |
| | | * |
| | | * @param id 订单id |
| | | * @param userId 用户id |
| | | * @return 确认结果 |
| | |
| | | |
| | | /** |
| | | * 后台订单发货 |
| | | * |
| | | * @param deliverAdminDto 请求参数 |
| | | * @return 发货结果 |
| | | */ |
| | |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 电动车商城购买活动商品支付回调 |
| | | * |
| | | * @param notifyOrderDTO 请求参数 |
| | | * @return 购买商品支付回调 |
| | | */ |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public synchronized R batteryActivityPayNotify(WxPayNotifyOrderDTO notifyOrderDTO) { |
| | | Date payTime = DateUtils.stringToDate(notifyOrderDTO.getPayTime(), new SimpleDateFormat("yyyyMMddHHmmss")); |
| | | Date nowDate = new Date(); |
| | | String orderNo = notifyOrderDTO.getOrderTradeNo(); |
| | | String payNo = notifyOrderDTO.getWxTradeNo(); |
| | | BigDecimal cashFee = new BigDecimal(notifyOrderDTO.getCashFee()); |
| | | //查询该订单数据 |
| | | ComBatteryCommodityOrder commodityOrder = this.baseMapper.selectOne(new QueryWrapper<ComBatteryCommodityOrder>().lambda() |
| | | .eq(ComBatteryCommodityOrder::getOrderNo, orderNo)); |
| | | if (commodityOrder == null) { |
| | | log.error("用户购买商品订单微信支付回调错误,未查询到支付订单记录,支付订单号:" + orderNo); |
| | | return R.fail("未查询到用户购买商品支付订单记录"); |
| | | } |
| | | if (!commodityOrder.getPayStatus().equals(ComBatteryCommodityOrder.PayStatus.WZF)) { |
| | | log.error("用户购买商品订单微信支付回调错误,错误原因:支付订单状态已发生改变,不可重复回调,订单号:" + orderNo); |
| | | return R.fail("支付订单状态已发生改变,不可重复回调"); |
| | | } |
| | | //更新订单 |
| | | if (commodityOrder.getActivityId() != null) { |
| | | switch (commodityOrder.getActivityType()) { |
| | | case ComBatteryCommodityOrder.ActivityType.PT: |
| | | //拼团订单成功支付处理 |
| | | commodityOrder.setCollageStatus(ComBatteryCommodityOrder.CollageStatus.PTZ); |
| | | commodityOrder.setStatus(ComBatteryCommodityOrder.Status.DPT); |
| | | ComBatteryCommodityOrderCollageTeam orderCollageTeam = null; |
| | | if(notifyOrderDTO.getAttach() != null && notifyOrderDTO.getAttach().equals("1")){ |
| | | //用户开团,创建团队信息 |
| | | orderCollageTeam = getOrderCollageTeam(commodityOrder,nowDate); |
| | | orderCollageTeamMapper.insert(orderCollageTeam); |
| | | }else{ |
| | | //用户参团,查询参加的团队信息 |
| | | orderCollageTeam = orderCollageTeamMapper.selectById(commodityOrder.getTeamId()); |
| | | //判断当前拼团人员是否已足够成团 |
| | | syncAssortedDoughStatus(orderCollageTeam.getId(),nowDate); |
| | | //判断当前拼团活动是否已完成 |
| | | syncAssortedDoughActivityStatus(commodityOrder.getActivityId(),nowDate); |
| | | } |
| | | if(orderCollageTeam != null){ |
| | | //创建用户开团人员记录 |
| | | ComBatteryCommodityOrderCollageTeamPeople orderCollageTeamPeople = getOrderCollageTeamPeople(commodityOrder.getUserId() |
| | | ,nowDate,orderCollageTeam,notifyOrderDTO.getAttach()); |
| | | orderCollageTeamPeopleMapper.insert(orderCollageTeamPeople); |
| | | } |
| | | break; |
| | | case ComBatteryCommodityOrder.ActivityType.KJ: |
| | | break; |
| | | case ComBatteryCommodityOrder.ActivityType.MS: |
| | | commodityOrder.setStatus(ComBatteryCommodityOrder.Status.DFH); |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | } |
| | | // 更新微信支付流水记录 |
| | | tradeOrderService.renewPayTrade(commodityOrder.getId(), cashFee, notifyOrderDTO.getWxTradeNo(), payTime, nowDate); |
| | | |
| | | commodityOrder.setPayStatus(ComBatteryCommodityOrder.PayStatus.YZF); |
| | | commodityOrder.setPayNo(payNo); |
| | | commodityOrder.setPayAmount(cashFee); |
| | | commodityOrder.setUpdateAt(nowDate); |
| | | commodityOrder.setPayTime(payTime); |
| | | this.baseMapper.updateById(commodityOrder); |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 初始化拼团团队数据 |
| | | * @param commodityOrder 用户订单数据 |
| | | * @param nowDate 操作时间 |
| | | * @return 拼团团队数据 |
| | | */ |
| | | private ComBatteryCommodityOrderCollageTeam getOrderCollageTeam(ComBatteryCommodityOrder commodityOrder,Date nowDate){ |
| | | ComBatteryCommodityOrderCollageTeam orderCollageTeam = new ComBatteryCommodityOrderCollageTeam(); |
| | | orderCollageTeam.setActivityId(commodityOrder.getActivityId()); |
| | | orderCollageTeam.setOrderId(commodityOrder.getId()); |
| | | orderCollageTeam.setOrderNo(commodityOrder.getOrderNo()); |
| | | orderCollageTeam.setUserId(commodityOrder.getUserId()); |
| | | orderCollageTeam.setStatus(ComBatteryCommodityOrderCollageTeam.Status.DDPT); |
| | | orderCollageTeam.setCreateAt(nowDate); |
| | | return orderCollageTeam; |
| | | } |
| | | |
| | | /** |
| | | * 初始化拼团团队人员数据 |
| | | * @param userId 用户id |
| | | * @param nowDate 操作时间 |
| | | * @param orderCollageTeam 拼团团队数据 |
| | | * @param type 拼团类型(1.开团 2.参团) |
| | | * @return 拼团团队人员数据 |
| | | */ |
| | | private ComBatteryCommodityOrderCollageTeamPeople getOrderCollageTeamPeople(Long userId |
| | | ,Date nowDate,ComBatteryCommodityOrderCollageTeam orderCollageTeam,String type){ |
| | | ComBatteryCommodityOrderCollageTeamPeople orderCollageTeamPeople = new ComBatteryCommodityOrderCollageTeamPeople(); |
| | | orderCollageTeamPeople.setUserId(userId); |
| | | orderCollageTeamPeople.setTeamId(orderCollageTeam.getId()); |
| | | orderCollageTeamPeople.setHeadUserId(orderCollageTeam.getUserId()); |
| | | orderCollageTeamPeople.setType(Integer.parseInt(type)); |
| | | orderCollageTeamPeople.setCreateAt(nowDate); |
| | | orderCollageTeamPeople.setCreateBy(userId); |
| | | return orderCollageTeamPeople; |
| | | } |
| | | |
| | | /** |
| | | * 同步拼团活动状态 |
| | | * @param activityId 活动id |
| | | */ |
| | | private void syncAssortedDoughActivityStatus(Long activityId,Date nowDate){ |
| | | ComBatteryCommodityActivity commodityActivity = commodityActivityMapper.selectById(activityId); |
| | | if(commodityActivity != null){ |
| | | //查询该活动已成团数量 |
| | | Integer count = orderCollageTeamMapper.selectCount(new QueryWrapper<ComBatteryCommodityOrderCollageTeam>().lambda() |
| | | .eq(ComBatteryCommodityOrderCollageTeam::getActivityId,activityId) |
| | | .eq(ComBatteryCommodityOrderCollageTeam::getStatus,ComBatteryCommodityOrderCollageTeam.Status.PTCG)); |
| | | if(count >= commodityActivity.getCollageNum()){ |
| | | //该活动已达到活动拼团数量,修改为已结束状态 |
| | | commodityActivity.setStatus(ComBatteryCommodityActivity.Status.YJS); |
| | | commodityActivity.setUpdateAt(nowDate); |
| | | commodityActivityMapper.updateById(commodityActivity); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 判断当前拼团团队是否已满足拼团条件 |
| | | * @param teamId 拼团团队id |
| | | * @param nowDate 操作时间 |
| | | */ |
| | | private void syncAssortedDoughStatus(Long teamId,Date nowDate){ |
| | | //查询拼团团队id |
| | | ComBatteryCommodityOrderCollageTeam orderCollageTeam = orderCollageTeamMapper.selectById(teamId); |
| | | if(orderCollageTeam != null){ |
| | | ComBatteryCommodityActivity commodityActivity = commodityActivityMapper.selectById(orderCollageTeam.getActivityId()); |
| | | if(commodityActivity != null){ |
| | | Integer count = orderCollageTeamPeopleMapper.selectCount(new QueryWrapper<ComBatteryCommodityOrderCollageTeamPeople>() |
| | | .lambda().eq(ComBatteryCommodityOrderCollageTeamPeople::getTeamId,teamId)); |
| | | if(count >= commodityActivity.getCollageNum()){ |
| | | //拼团条件满足,将所有已拼单的用户的订单更新为待发货状态 |
| | | //更新拼团团队记录 |
| | | orderCollageTeam.setStatus(ComBatteryCommodityOrderCollageTeam.Status.PTCG); |
| | | orderCollageTeamMapper.updateById(orderCollageTeam); |
| | | //查询拼团订单并进行更新 |
| | | List<ComBatteryCommodityOrder> commodityOrderList = this.baseMapper.selectList(new QueryWrapper<ComBatteryCommodityOrder>().lambda() |
| | | .eq(ComBatteryCommodityOrder::getTeamId,teamId).eq(ComBatteryCommodityOrder::getStatus,ComBatteryCommodityOrder.Status.DPT) |
| | | .eq(ComBatteryCommodityOrder::getCollageStatus,ComBatteryCommodityOrder.CollageStatus.PTZ) |
| | | .eq(ComBatteryCommodityOrder::getActivityType,ComBatteryCommodityOrder.ActivityType.PT)); |
| | | commodityOrderList.forEach(commodityOrder -> { |
| | | commodityOrder.setStatus(ComBatteryCommodityOrder.Status.DFH); |
| | | commodityOrder.setCollageStatus(ComBatteryCommodityOrder.CollageStatus.PTCG); |
| | | commodityOrder.setUpdateAt(nowDate); |
| | | this.baseMapper.updateById(commodityOrder); |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | // 调用wx支付 |
| | | String xml = WxPayUtils.getUnifiedorder(appid, mchId, payKey, notifyUrl, "商品购买", orderCreateDTO.getOpenId(), |
| | | orderNo, money); |
| | | orderNo, money,null); |
| | | log.info("微信支付返回参数:" + xml); |
| | | shopOrderVO.setPayResult(xml); |
| | | } catch (Exception e) { |
| | |
| | | } |
| | | // 调用wx支付 |
| | | String xml = WxPayUtils.getUnifiedorder(appid, mchId, payKey, notifyUrl, "商品购买", orderPayDTO.getOpenId(), |
| | | orderDO.getOrderNo(), money); |
| | | orderDO.getOrderNo(), money,null); |
| | | log.info("微信支付返回参数:" + xml); |
| | | shopOrderVO.setPayResult(xml); |
| | | } catch (Exception e) { |
| | |
| | | } |
| | | // 调用wx支付 |
| | | WxPayUtils.getUnifiedorder(appid, mchId, payKey, notifyUrl, "签订租房合同", wxPayOrderVO.getOpenId(), |
| | | wxPayOrderVO.getOrderSn(), money); |
| | | wxPayOrderVO.getOrderSn(), money,null); |
| | | return R.ok(); |
| | | } catch (Exception e) { |
| | | log.error("调用微信支付异常,异常原因:" + e.getMessage()); |
| | |
| | | } |
| | | // 调用wx支付 |
| | | WxPayUtils.getUnifiedorder(appid, mchId, payKey, notifyUrl, "定金支付", wxPayOrderVO.getOpenId(), |
| | | wxPayOrderVO.getOrderSn(), money); |
| | | wxPayOrderVO.getOrderSn(), money,null); |
| | | return R.ok(); |
| | | } catch (Exception e) { |
| | | log.error("调用微信支付异常,异常原因:" + e.getMessage()); |
| | |
| | | <result property="name" column="name" jdbcType="VARCHAR"/> |
| | | <result property="type" column="type" jdbcType="INTEGER"/> |
| | | <result property="commodityId" column="commodity_id" jdbcType="INTEGER"/> |
| | | <result property="specsId" column="specs_id" jdbcType="INTEGER"/> |
| | | <result property="storeId" column="store_id" jdbcType="INTEGER"/> |
| | | <result property="status" column="status" jdbcType="INTEGER"/> |
| | | <result property="isDel" column="is_del" jdbcType="INTEGER"/> |
| | |
| | | cbca.create_by, |
| | | cbca.update_at, |
| | | cbca.update_by, |
| | | cbca.specs_id, |
| | | cbcs.`name` as specsName, |
| | | cbc.`name` as commodityName, |
| | | cbc.`code` as commodityCode, |
| | | cbs.`name` as storeName |
| | |
| | | com_battery_commodity_activity AS cbca |
| | | left join com_battery_commodity as cbc on cbc.id = cbca.commodity_id |
| | | left join com_battery_store as cbs on cbs.id = cbca.store_id |
| | | left join com_battery_commodity_specs as cbcs on cbcs.id = cbca.specs_id |
| | | where cbca.id = #{id} |
| | | </select> |
| | | |
| | |
| | | cbca.create_by, |
| | | cbca.update_at, |
| | | cbca.update_by, |
| | | cbca.specs_id, |
| | | cbcs.`name` as specsName, |
| | | cbc.`name` as commodityName, |
| | | cbc.`code` as commodityCode, |
| | | cbs.`name` as storeName |
| | |
| | | com_battery_commodity_activity AS cbca |
| | | left join com_battery_commodity as cbc on cbc.id = cbca.commodity_id |
| | | left join com_battery_store as cbs on cbs.id = cbca.store_id |
| | | left join com_battery_commodity_specs as cbcs on cbcs.id = cbca.specs_id |
| | | <where> |
| | | and cbca.is_del = 2 |
| | | <if test="dto.id != null"> |
| | |
| | | </if> |
| | | <if test="dto.keyWord != null and dto.keyWord != ''"> |
| | | and ( |
| | | cbca.`name` like concat ('%',#{statisticsAdminDTO.nickName},'%') or |
| | | cbc.`name` like concat ('%',#{statisticsAdminDTO.nickName},'%') or |
| | | cbc.`code` like concat ('%',#{statisticsAdminDTO.nickName},'%') |
| | | cbca.`name` like concat ('%',#{statisticsAdminDTO.keyWord},'%') or |
| | | cbc.`name` like concat ('%',#{statisticsAdminDTO.keyWord},'%') or |
| | | cbc.`code` like concat ('%',#{statisticsAdminDTO.keyWord},'%') |
| | | ) |
| | | </if> |
| | | </where> |
| | |
| | | cbca.create_by, |
| | | cbca.update_at, |
| | | cbca.update_by, |
| | | cbca.specs_id, |
| | | cbcs.`name` as specsName, |
| | | cbc.`name` as commodityName, |
| | | cbc.`code` as commodityCode, |
| | | cbs.`name` as storeName |
| | |
| | | com_battery_commodity_activity AS cbca |
| | | left join com_battery_commodity as cbc on cbc.id = cbca.commodity_id |
| | | left join com_battery_store as cbs on cbs.id = cbca.store_id |
| | | left join com_battery_commodity_specs as cbcs on cbcs.id = cbca.specs_id |
| | | <where> |
| | | and cbca.is_del = 2 |
| | | <if test="dto.id != null"> |
| | |
| | | </if> |
| | | <if test="dto.keyWord != null and dto.keyWord != ''"> |
| | | and ( |
| | | cbca.`name` like concat ('%',#{statisticsAdminDTO.nickName},'%') or |
| | | cbc.`name` like concat ('%',#{statisticsAdminDTO.nickName},'%') or |
| | | cbc.`code` like concat ('%',#{statisticsAdminDTO.nickName},'%') |
| | | cbca.`name` like concat ('%',#{statisticsAdminDTO.keyWord},'%') or |
| | | cbc.`name` like concat ('%',#{statisticsAdminDTO.keyWord},'%') or |
| | | cbc.`code` like concat ('%',#{statisticsAdminDTO.keyWord},'%') |
| | | ) |
| | | </if> |
| | | </where> |
| | |
| | | <resultMap type="com.panzhihua.service_community.entity.ComBatteryCommodityOrderCollageTeam" |
| | | id="ComBatteryCommodityOrderCollageTeamMap"> |
| | | <result property="id" column="id" jdbcType="INTEGER"/> |
| | | <result property="acctivityId" column="acctivity_id" jdbcType="INTEGER"/> |
| | | <result property="activityId" column="activity_id" jdbcType="INTEGER"/> |
| | | <result property="orderId" column="order_id" jdbcType="INTEGER"/> |
| | | <result property="orderNo" column="order_no" jdbcType="VARCHAR"/> |
| | | <result property="userId" column="user_id" jdbcType="INTEGER"/> |
| | |
| | | </resultMap> |
| | | |
| | | <!--查询单个--> |
| | | <select id="queryById" resultMap="ComBatteryCommodityOrderCollageTeamMap"> |
| | | select |
| | | id, acctivity_id, order_id, order_no, user_id, status, create_at |
| | | from com_battery_commodity_order_collage_team |
| | | where id = #{id} |
| | | <select id="queryById" resultType="com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamVo"> |
| | | SELECT |
| | | cbcoot.id, |
| | | cbcoot.activity_id, |
| | | cbcoot.order_id, |
| | | cbcoot.order_no, |
| | | cbcoot.user_id, |
| | | cbcoot.`status`, |
| | | cbcoot.create_at, |
| | | (select count(id) from com_battery_commodity_order_collage_team_people where team_id = cbcoot.id) as spelledNum, |
| | | cbca.collage_people_num, |
| | | su.image_url as images, |
| | | su.`nick_name` |
| | | FROM |
| | | com_battery_commodity_order_collage_team as cbcoot |
| | | left join sys_user as su on su.user_id = cbcoot.user_id |
| | | left join com_battery_commodity_activity as cbca on cbca.id = cbcoot.activity_id |
| | | where cbcoot.id = #{id} |
| | | </select> |
| | | |
| | | <!--查询指定行数据--> |
| | | <select id="queryAllByLimit" resultMap="ComBatteryCommodityOrderCollageTeamMap"> |
| | | select |
| | | id, acctivity_id, order_id, order_no, user_id, status, create_at |
| | | from com_battery_commodity_order_collage_team |
| | | <select id="queryAllByLimit" resultType="com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamVo"> |
| | | SELECT |
| | | cbcoot.id, |
| | | cbcoot.activity_id, |
| | | cbcoot.order_id, |
| | | cbcoot.order_no, |
| | | cbcoot.user_id, |
| | | cbcoot.`status`, |
| | | cbcoot.create_at, |
| | | (select count(id) from com_battery_commodity_order_collage_team_people where team_id = cbcoot.id) as spelledNum, |
| | | cbca.collage_people_num, |
| | | su.image_url as images, |
| | | su.`nick_name` |
| | | FROM |
| | | com_battery_commodity_order_collage_team as cbcoot |
| | | left join sys_user as su on su.user_id = cbcoot.user_id |
| | | left join com_battery_commodity_activity as cbca on cbca.id = cbcoot.activity_id |
| | | <where> |
| | | <if test="dto.id != null"> |
| | | and id = #{dto.id} |
| | | and cbcoot.id = #{dto.id} |
| | | </if> |
| | | <if test="dto.acctivityId != null"> |
| | | and acctivity_id = #{dto.acctivityId} |
| | | <if test="dto.activityId != null"> |
| | | and cbcoot.activity_id = #{dto.activityId} |
| | | </if> |
| | | <if test="dto.orderId != null"> |
| | | and order_id = #{dto.orderId} |
| | | and cbcoot.order_id = #{dto.orderId} |
| | | </if> |
| | | <if test="dto.orderNo != null and dto.orderNo != ''"> |
| | | and order_no = #{dto.orderNo} |
| | | and cbcoot.order_no = #{dto.orderNo} |
| | | </if> |
| | | <if test="dto.userId != null"> |
| | | and user_id = #{dto.userId} |
| | | and cbcoot.user_id = #{dto.userId} |
| | | </if> |
| | | <if test="dto.status != null"> |
| | | and status = #{dto.status} |
| | | </if> |
| | | <if test="dto.createAt != null"> |
| | | and create_at = #{dto.createAt} |
| | | and cbcoot.status = #{dto.status} |
| | | </if> |
| | | </where> |
| | | order by create_at desc |
| | | order by cbcoot.create_at desc |
| | | </select> |
| | | |
| | | <!--查询所有数据--> |
| | | <select id="queryAllByList" resultMap="ComBatteryCommodityOrderCollageTeamMap"> |
| | | select |
| | | id, acctivity_id, order_id, order_no, user_id, status, create_at |
| | | from com_battery_commodity_order_collage_team |
| | | <select id="queryAllByList" resultType="com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamVo"> |
| | | SELECT |
| | | cbcoot.id, |
| | | cbcoot.activity_id, |
| | | cbcoot.order_id, |
| | | cbcoot.order_no, |
| | | cbcoot.user_id, |
| | | cbcoot.`status`, |
| | | cbcoot.create_at, |
| | | (select count(id) from com_battery_commodity_order_collage_team_people where team_id = cbcoot.id) as spelledNum, |
| | | cbca.collage_people_num, |
| | | su.image_url as images, |
| | | su.`nick_name` |
| | | FROM |
| | | com_battery_commodity_order_collage_team as cbcoot |
| | | left join sys_user as su on su.user_id = cbcoot.user_id |
| | | left join com_battery_commodity_activity as cbca on cbca.id = cbcoot.activity_id |
| | | <where> |
| | | <if test="dto.id != null"> |
| | | and id = #{dto.id} |
| | | and cbcoot.id = #{dto.id} |
| | | </if> |
| | | <if test="dto.acctivityId != null"> |
| | | and acctivity_id = #{dto.acctivityId} |
| | | <if test="dto.activityId != null"> |
| | | and cbcoot.activity_id = #{dto.activityId} |
| | | </if> |
| | | <if test="dto.orderId != null"> |
| | | and order_id = #{dto.orderId} |
| | | and cbcoot.order_id = #{dto.orderId} |
| | | </if> |
| | | <if test="dto.orderNo != null and dto.orderNo != ''"> |
| | | and order_no = #{dto.orderNo} |
| | | and cbcoot.order_no = #{dto.orderNo} |
| | | </if> |
| | | <if test="dto.userId != null"> |
| | | and user_id = #{dto.userId} |
| | | and cbcoot.user_id = #{dto.userId} |
| | | </if> |
| | | <if test="dto.status != null"> |
| | | and status = #{dto.status} |
| | | </if> |
| | | <if test="dto.createAt != null"> |
| | | and create_at = #{dto.createAt} |
| | | and cbcoot.status = #{dto.status} |
| | | </if> |
| | | </where> |
| | | order by create_at desc |
| | | order by cbcoot.create_at desc |
| | | </select> |
| | | |
| | | </mapper> |
| | |
| | | </resultMap> |
| | | |
| | | <!--查询单个--> |
| | | <select id="queryById" resultMap="ComBatteryCommodityOrderCollageTeamPeopleMap"> |
| | | <select id="queryById" resultType="com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamPeopleVo"> |
| | | select |
| | | id, team_id, head_user_id, user_id, type, create_at, create_by |
| | | from com_battery_commodity_order_collage_team_people |
| | |
| | | </select> |
| | | |
| | | <!--查询指定行数据--> |
| | | <select id="queryAllByLimit" resultMap="ComBatteryCommodityOrderCollageTeamPeopleMap"> |
| | | <select id="queryAllByLimit" resultType="com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamPeopleVo"> |
| | | select |
| | | id, team_id, head_user_id, user_id, type, create_at, create_by |
| | | from com_battery_commodity_order_collage_team_people |
| | |
| | | </select> |
| | | |
| | | <!--查询所有数据--> |
| | | <select id="queryAllByList" resultMap="ComBatteryCommodityOrderCollageTeamPeopleMap"> |
| | | <select id="queryAllByList" resultType="com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamPeopleVo"> |
| | | select |
| | | id, team_id, head_user_id, user_id, type, create_at, create_by |
| | | from com_battery_commodity_order_collage_team_people |
| | |
| | | order by create_at desc |
| | | </select> |
| | | |
| | | <select id="queryAllByTeamId" resultType="com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamPeopleVo"> |
| | | SELECT |
| | | cbcootp.id, |
| | | cbcootp.team_id, |
| | | cbcootp.head_user_id, |
| | | cbcootp.user_id, |
| | | cbcootp.type, |
| | | cbcootp.create_at, |
| | | cbcootp.create_by, |
| | | su.nick_name, |
| | | su.image_url as images |
| | | FROM |
| | | com_battery_commodity_order_collage_team_people as cbcootp |
| | | left join sys_user as su on su.user_id = cbcootp.user_id |
| | | where cbcootp.team_id = #{teamId} |
| | | order by cbcootp.create_at |
| | | </select> |
| | | |
| | | </mapper> |
| | | |