From 5c27fe8745c29adcb86c110872ce9e10fc6bd218 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Thu, 22 Aug 2019 10:53:12 +0800 Subject: [PATCH] =?UTF-8?q?[POS][=E4=BF=AE=E6=94=B9]:POS=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=8F=8APOS=E6=94=AF=E4=BB=98=E8=AE=A2=E5=8D=95=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../db/migration/V201908221020__POS_ORDER.sql | 39 ++++++ .../controller/PosOrderController.java | 71 ++++++++++ .../controller/PosPayOrderController.java | 73 +++++++++++ .../iformall/controller/WxPosController.java | 2 +- .../java/com/iformall/domain/po/PosOrder.java | 39 ++++++ .../com/iformall/domain/po/PosPayOrder.java | 69 ++++++++++ .../com/iformall/mapper/PosOrderMapper.java | 17 +++ .../iformall/mapper/PosPayOrderMapper.java | 17 +++ .../com/iformall/service/PosOrderService.java | 48 +++++++ .../iformall/service/PosPayOrderService.java | 48 +++++++ .../service/impl/PosOrderServiceImpl.java | 54 ++++++++ .../service/impl/PosPayOrderServiceImpl.java | 54 ++++++++ .../main/resources/mapper/PosOrderMapper.xml | 64 +++++++++ .../resources/mapper/PosPayOrderMapper.xml | 124 ++++++++++++++++++ 14 files changed, 718 insertions(+), 1 deletion(-) create mode 100644 mallinkAdmin/src/main/resources/db/migration/V201908221020__POS_ORDER.sql create mode 100644 mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java create mode 100644 mallinkBApi/src/main/java/com/iformall/controller/PosPayOrderController.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/PosOrder.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/PosPayOrder.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/PosOrderMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/PosPayOrderMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/service/PosOrderService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/PosPayOrderService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/PosOrderServiceImpl.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/PosPayOrderServiceImpl.java create mode 100644 mallinkService/src/main/resources/mapper/PosOrderMapper.xml create mode 100644 mallinkService/src/main/resources/mapper/PosPayOrderMapper.xml diff --git a/mallinkAdmin/src/main/resources/db/migration/V201908221020__POS_ORDER.sql b/mallinkAdmin/src/main/resources/db/migration/V201908221020__POS_ORDER.sql new file mode 100644 index 000000000..d85becbaa --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201908221020__POS_ORDER.sql @@ -0,0 +1,39 @@ +create table `pos_order` ( + `id` bigint(20) NOT NULL COMMENT '主键ID', + `tenant_id` varchar(10) NOT NULL COMMENT '租户ID', + `pos_order_no` varchar(20) NULL COMMENT 'POS订单ID', + `type` tinyint(6) NOT NULL DEFAULT 0 COMMENT '支付类型(1: 独立核销, 2:支付)', + `order_status` tinyint(6) NOT NULL DEFAULT '0' COMMENT '订单状态:0-待付款;1-已支付;2-已取消(限定时间内未付款);3-待退款;4-已退款;5-退款失败', + `bu_user_id` bigint(20) DEFAULT NULL COMMENT 'b端用户', + `create_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `update_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='POS订单'; + +CREATE TABLE `pos_pay_order` ( + `id` bigint(20) NOT NULL COMMENT '主键ID', + `tenant_id` varchar(10) NOT NULL COMMENT '租户ID', + `create_time` datetime NOT NULL COMMENT '创建时间', + `update_time` datetime NOT NULL COMMENT '更新时间', + `order_id` bigint(20) NOT NULL COMMENT '订单ID', + `bu_user_id` bigint(20) DEFAULT NULL COMMENT 'b端用户', + `type` tinyint(6) NOT NULL DEFAULT 0 COMMENT '支付类型(1:独立核销 2:支付核销 3:现金支付)', + `pay_from` tinyint(6) NOT NULL DEFAULT 0 COMMENT '支付来源(0: 现金, 1:微信 2:支付核销 3:现金支付)', + `pay_amount` int(11) NOT NULL COMMENT '支付金额(分)', + `pay_time_start` datetime NOT NULL COMMENT '支付发起时间', + `pay_time_end` datetime NOT NULL COMMENT '支付结束时间', + `prepay_id` varchar(64) DEFAULT NULL COMMENT '微信预支付交易会话标识-发模板信息使用', + `transaction_id` varchar(36) DEFAULT NULL COMMENT '微信生成的订单号', + `pay_vendor` int(11) NOT NULL DEFAULT 0 COMMENT '支付渠道: 0-微信 1-支付宝 2-银联 ', + `pay_order_no` varchar(36) DEFAULT '' COMMENT '支付订单号', + `pay_order_status` int(11) NOT NULL DEFAULT 0 COMMENT '支付状态: 0-支付中;1-支付成功;2-支付失败', + `share` smallint(2) DEFAULT NULL COMMENT '是否支持分账(0:不支持,1:支持)', + `share_amount` int(11) DEFAULT NULL COMMENT '分账金额(总金额扣掉手续费后的金额)', + `rate_amount` int(11) DEFAULT NULL COMMENT '分账实际通道费', + `fail_reason` varchar(50) DEFAULT '' COMMENT '支付失败原因', + `auth_code` varchar(128) DEFAULT NULL COMMENT '扫码支付授权码', + `open_id` varchar(128) DEFAULT NULL COMMENT '微信支付后获取的open_id', + `pay_end_from` smallint(2) DEFAULT NULL COMMENT '支付后结果来源(0:callback, 1:query)', + PRIMARY KEY (`id`), + UNIQUE `id_UNIQUE` USING BTREE (`id`) comment '' +) ENGINE=`InnoDB` DEFAULT CHARSET=utf8mb4 COMMENT='POS支付订单'; \ No newline at end of file diff --git a/mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java b/mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java new file mode 100644 index 000000000..5b6695529 --- /dev/null +++ b/mallinkBApi/src/main/java/com/iformall/controller/PosOrderController.java @@ -0,0 +1,71 @@ +package com.iformall.controller; + +import io.swagger.annotations.Api; +import lombok.AllArgsConstructor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.*; + +import com.github.pagehelper.PageInfo; +import com.iformall.common.Result; +import com.iformall.common.ResultData; + +import com.iformall.domain.po.PosOrder; +import com.iformall.service.PosOrderService; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; + + +@RestController +@RequestMapping("/api/posOrder") +@AllArgsConstructor +@Api(description = "POS订单接口") +public class PosOrderController extends BaseController { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + private final PosOrderService posOrderService; + + @ApiOperation("分页列表接口") + @GetMapping("list") + @ApiImplicitParams({ + @ApiImplicitParam(name="pageNum",value="页数",dataType="int", paramType = "query",required=true), + @ApiImplicitParam(name="pageSize",value="每页条数",dataType="int", paramType = "query",required=true)}) + public ResultData list(@ModelAttribute PosOrder posOrder,Integer pageNum, Integer pageSize) { + if (null == posOrder) posOrder = new PosOrder(); + final PageInfo page = posOrderService.listAsPage(posOrder, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("新增POS订单接口") + @PostMapping("add") + public ResultData add(@RequestBody PosOrder posOrder) { + posOrderService.saveOrUpdate(posOrder); + return new ResultData(); + } + + @ApiOperation("根据id更新接口") + @PostMapping("update") + public ResultData update(@RequestBody PosOrder posOrder) { + posOrderService.saveOrUpdate(posOrder); + return new ResultData(); + } + + @ApiOperation("根据id删除接口") + @GetMapping("/del") + @ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true) + public ResultData delete(Long id) { + posOrderService.deleteById(id); + return new ResultData(Result.SUCCESS, "删除成功", null); + } + + @ApiOperation("根据id查询接口") + @GetMapping("/findById") + @ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true) + public ResultData findById(Long id) { + return new ResultData(Result.SUCCESS,"查询成功",posOrderService.getById(id)); + } + + + +} diff --git a/mallinkBApi/src/main/java/com/iformall/controller/PosPayOrderController.java b/mallinkBApi/src/main/java/com/iformall/controller/PosPayOrderController.java new file mode 100644 index 000000000..cd7805928 --- /dev/null +++ b/mallinkBApi/src/main/java/com/iformall/controller/PosPayOrderController.java @@ -0,0 +1,73 @@ +package com.iformall.controller; + +import io.swagger.annotations.Api; +import lombok.AllArgsConstructor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.*; + +import com.github.pagehelper.PageInfo; +import com.iformall.common.Result; +import com.iformall.common.ResultData; + +import com.iformall.domain.po.PosPayOrder; +import com.iformall.service.PosPayOrderService; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; + +@RestController +@RequestMapping("/api/posPayOrder") +@AllArgsConstructor +@Api(description = "POS支付订单接口") +public class PosPayOrderController extends BaseController { + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + private final PosPayOrderService posPayOrderService; + + + @ApiOperation("分页列表接口") + @GetMapping("list") + @ApiImplicitParams({ + @ApiImplicitParam(name="pageNum",value="页数",dataType="int", paramType = "query",required=true), + @ApiImplicitParam(name="pageSize",value="每页条数",dataType="int", paramType = "query",required=true)}) + public ResultData list(@ModelAttribute PosPayOrder posPayOrder,Integer pageNum, Integer pageSize) { + if (null == posPayOrder) posPayOrder = new PosPayOrder(); + final PageInfo page = posPayOrderService.listAsPage(posPayOrder, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("新增POS订单接口") + @PostMapping("add") + public ResultData add(@RequestBody PosPayOrder posPayOrder) { + //Assert.notNull(posPayOrder.getName(), "角色名不能为空"); + //Assert.isTrue(!checkUnique(sysRole.getName(), null), "重复的角色名"); + posPayOrderService.saveOrUpdate(posPayOrder); + return new ResultData(); + } + + @ApiOperation("根据id更新接口") + @PostMapping("update") + public ResultData update(@RequestBody PosPayOrder posPayOrder) { + posPayOrderService.saveOrUpdate(posPayOrder); + return new ResultData(); + } + + @ApiOperation("根据id删除接口") + @GetMapping("/del") + @ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true) + public ResultData delete(Long id) { + posPayOrderService.deleteById(id); + return new ResultData(Result.SUCCESS, "删除成功", null); + } + + @ApiOperation("根据id查询接口") + @GetMapping("/findById") + @ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true) + public ResultData findById(Long id) { + return new ResultData(Result.SUCCESS,"查询成功",posPayOrderService.getById(id)); + } + + + +} diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxPosController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxPosController.java index 62c73fcb4..ee5072ee7 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxPosController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxPosController.java @@ -22,7 +22,7 @@ import java.util.Map; @RestController @RequestMapping("/api/pos") -@Api(description = "卡券相关接口") +@Api(description = "POS服务相关接口") public class WxPosController extends BaseController { private final Logger logger = LoggerFactory.getLogger(this.getClass()); diff --git a/mallinkService/src/main/java/com/iformall/domain/po/PosOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/PosOrder.java new file mode 100644 index 000000000..31bdcc489 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/PosOrder.java @@ -0,0 +1,39 @@ +package com.iformall.domain.po; + +import lombok.Data; +import javax.persistence.*; +import java.util.*; +import java.math.*; +import javax.persistence.Transient; +import java.util.List; +import javax.persistence.Id; +import java.io.Serializable; + +@Table(name = "pos_order") +@Data +public class PosOrder implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + protected Long id; + + @Transient + protected List ids; + + @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") + private String tenantId; + @io.swagger.annotations.ApiModelProperty(value="POS订单ID",name="posOrderNo") + private String posOrderNo; + @io.swagger.annotations.ApiModelProperty(value="支付类型(1: 独立核销, 2:支付)",name="type") + private Integer type; + @io.swagger.annotations.ApiModelProperty(value="订单状态:0-待付款;1-已支付;2-已取消(限定时间内未付款);3-待退款;4-已退款;5-退款失败",name="orderStatus") + private Integer orderStatus; + @io.swagger.annotations.ApiModelProperty(value="b端用户",name="buUserId") + private Long buUserId; + @io.swagger.annotations.ApiModelProperty(value="创建时间",name="createDate") + private Date createDate; + @io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateDate") + private Date updateDate; + + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/PosPayOrder.java b/mallinkService/src/main/java/com/iformall/domain/po/PosPayOrder.java new file mode 100644 index 000000000..afe44f95f --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/PosPayOrder.java @@ -0,0 +1,69 @@ +package com.iformall.domain.po; + +import lombok.Data; +import javax.persistence.*; +import java.util.*; +import java.math.*; +import javax.persistence.Transient; +import java.util.List; +import javax.persistence.Id; +import java.io.Serializable; + +@Table(name = "pos_pay_order") +@Data +public class PosPayOrder implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + protected Long id; + + @Transient + protected List ids; + + @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") + private String tenantId; + @io.swagger.annotations.ApiModelProperty(value="创建时间",name="createTime") + private Date createTime; + @io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateTime") + private Date updateTime; + @io.swagger.annotations.ApiModelProperty(value="订单ID",name="orderId") + private Long orderId; + @io.swagger.annotations.ApiModelProperty(value="b端用户",name="buUserId") + private Long buUserId; + @io.swagger.annotations.ApiModelProperty(value="支付类型(1:独立核销 2:支付核销 3:现金支付)",name="type") + private Integer type; + @io.swagger.annotations.ApiModelProperty(value="支付来源(0: 现金, 1:微信 2:支付核销 3:现金支付)",name="payFrom") + private Integer payFrom; + @io.swagger.annotations.ApiModelProperty(value="支付金额(分)",name="payAmount") + private Integer payAmount; + @io.swagger.annotations.ApiModelProperty(value="支付发起时间",name="payTimeStart") + private Date payTimeStart; + @io.swagger.annotations.ApiModelProperty(value="支付结束时间",name="payTimeEnd") + private Date payTimeEnd; + @io.swagger.annotations.ApiModelProperty(value="微信预支付交易会话标识-发模板信息使用",name="prepayId") + private String prepayId; + @io.swagger.annotations.ApiModelProperty(value="微信生成的订单号",name="transactionId") + private String transactionId; + @io.swagger.annotations.ApiModelProperty(value="支付渠道: 0-微信 1-支付宝 2-银联 ",name="payVendor") + private Integer payVendor; + @io.swagger.annotations.ApiModelProperty(value="支付订单号",name="payOrderNo") + private String payOrderNo; + @io.swagger.annotations.ApiModelProperty(value="支付状态: 0-支付中;1-支付成功;2-支付失败",name="payOrderStatus") + private Integer payOrderStatus; + @io.swagger.annotations.ApiModelProperty(value="是否支持分账(0:不支持,1:支持)",name="share") + private Integer share; + @io.swagger.annotations.ApiModelProperty(value="分账金额(总金额扣掉手续费后的金额)",name="shareAmount") + private Integer shareAmount; + @io.swagger.annotations.ApiModelProperty(value="分账实际通道费",name="rateAmount") + private Integer rateAmount; + @io.swagger.annotations.ApiModelProperty(value="支付失败原因",name="failReason") + private String failReason; + @io.swagger.annotations.ApiModelProperty(value="扫码支付授权码",name="authCode") + private String authCode; + @io.swagger.annotations.ApiModelProperty(value="微信支付后获取的open_id",name="openId") + private String openId; + @io.swagger.annotations.ApiModelProperty(value="支付后结果来源(0:callback, 1:query)",name="payEndFrom") + private Integer payEndFrom; + + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/PosOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/PosOrderMapper.java new file mode 100644 index 000000000..120bccc68 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/PosOrderMapper.java @@ -0,0 +1,17 @@ +package com.iformall.mapper; + +import java.util.*; +import com.iformall.common.CommonMapper; +import org.apache.ibatis.annotations.Param; +import com.iformall.domain.po.PosOrder; + +public interface PosOrderMapper extends CommonMapper { + + List findList(PosOrder posOrder); + + + + + + +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/PosPayOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/PosPayOrderMapper.java new file mode 100644 index 000000000..e34479bfa --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/PosPayOrderMapper.java @@ -0,0 +1,17 @@ +package com.iformall.mapper; + +import java.util.*; +import com.iformall.common.CommonMapper; +import org.apache.ibatis.annotations.Param; +import com.iformall.domain.po.PosPayOrder; + +public interface PosPayOrderMapper extends CommonMapper { + + List findList(PosPayOrder posPayOrder); + + + + + + +} diff --git a/mallinkService/src/main/java/com/iformall/service/PosOrderService.java b/mallinkService/src/main/java/com/iformall/service/PosOrderService.java new file mode 100644 index 000000000..e739d52d1 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/PosOrderService.java @@ -0,0 +1,48 @@ +package com.iformall.service; + +import java.util.*; +import com.github.pagehelper.PageInfo; +import com.iformall.domain.po.PosOrder; + +public interface PosOrderService { + + /** + * 根据实体查询分页列表 + * + * @param record + * @param pageIndex + * @param pageSize + * @return + */ + PageInfo listAsPage(PosOrder record, Integer pageIndex, Integer pageSize); + + /** + * 根据Id获得实体 + * + * @param id + * @return + */ + PosOrder getById(Long id); + + /** + * 保存或更新实体 + * + * @param record + */ + void saveOrUpdate(PosOrder record); + + /** + * 根据Id删除实体 + * + * @param id + */ + void deleteById(Long id); + + + + + + + + +} diff --git a/mallinkService/src/main/java/com/iformall/service/PosPayOrderService.java b/mallinkService/src/main/java/com/iformall/service/PosPayOrderService.java new file mode 100644 index 000000000..823e36ab3 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/PosPayOrderService.java @@ -0,0 +1,48 @@ +package com.iformall.service; + +import java.util.*; +import com.github.pagehelper.PageInfo; +import com.iformall.domain.po.PosPayOrder; + +public interface PosPayOrderService { + + /** + * 根据实体查询分页列表 + * + * @param record + * @param pageIndex + * @param pageSize + * @return + */ + PageInfo listAsPage(PosPayOrder record, Integer pageIndex, Integer pageSize); + + /** + * 根据Id获得实体 + * + * @param id + * @return + */ + PosPayOrder getById(Long id); + + /** + * 保存或更新实体 + * + * @param record + */ + void saveOrUpdate(PosPayOrder record); + + /** + * 根据Id删除实体 + * + * @param id + */ + void deleteById(Long id); + + + + + + + + +} diff --git a/mallinkService/src/main/java/com/iformall/service/impl/PosOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/PosOrderServiceImpl.java new file mode 100644 index 000000000..18d0393f2 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/PosOrderServiceImpl.java @@ -0,0 +1,54 @@ +package com.iformall.service.impl; + +import java.util.*; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.iformall.domain.po.PosOrder; +import com.iformall.mapper.PosOrderMapper; +import com.iformall.service.PosOrderService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.iformall.common.IdWorker; + +@Service +public class PosOrderServiceImpl implements PosOrderService { + + @Autowired + PosOrderMapper posOrderMapper; + + + @Override + public PageInfo listAsPage(PosOrder record, Integer pageIndex, Integer pageSize) { + return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> posOrderMapper.findList(record)); + } + + @Override + public PosOrder getById(Long id) { + return posOrderMapper.selectByPrimaryKey(id); + } + + @Override + public void saveOrUpdate(PosOrder record) { + if (record.getId() == null) { + //record.setId(UUID.randomUUID().toString().replaceAll("-", "")); + final IdWorker idWorker = IdWorker.get(); + record.setId(idWorker.nextId()); + posOrderMapper.insertSelective(record); + } else { + posOrderMapper.updateByPrimaryKeySelective(record); + } + } + + @Override + public void deleteById(Long id) { + posOrderMapper.deleteByPrimaryKey(id); + } + + + + + + + + +} diff --git a/mallinkService/src/main/java/com/iformall/service/impl/PosPayOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/PosPayOrderServiceImpl.java new file mode 100644 index 000000000..457077ccb --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/PosPayOrderServiceImpl.java @@ -0,0 +1,54 @@ +package com.iformall.service.impl; + +import java.util.*; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.iformall.domain.po.PosPayOrder; +import com.iformall.mapper.PosPayOrderMapper; +import com.iformall.service.PosPayOrderService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.iformall.common.IdWorker; + +@Service +public class PosPayOrderServiceImpl implements PosPayOrderService { + + @Autowired + PosPayOrderMapper posPayOrderMapper; + + + @Override + public PageInfo listAsPage(PosPayOrder record, Integer pageIndex, Integer pageSize) { + return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> posPayOrderMapper.findList(record)); + } + + @Override + public PosPayOrder getById(Long id) { + return posPayOrderMapper.selectByPrimaryKey(id); + } + + @Override + public void saveOrUpdate(PosPayOrder record) { + if (record.getId() == null) { + //record.setId(UUID.randomUUID().toString().replaceAll("-", "")); + final IdWorker idWorker = IdWorker.get(); + record.setId(idWorker.nextId()); + posPayOrderMapper.insertSelective(record); + } else { + posPayOrderMapper.updateByPrimaryKeySelective(record); + } + } + + @Override + public void deleteById(Long id) { + posPayOrderMapper.deleteByPrimaryKey(id); + } + + + + + + + + +} diff --git a/mallinkService/src/main/resources/mapper/PosOrderMapper.xml b/mallinkService/src/main/resources/mapper/PosOrderMapper.xml new file mode 100644 index 000000000..a006ce4e2 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/PosOrderMapper.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + `id`,`tenant_id`,`pos_order_no`,`type`,`order_status`,`bu_user_id`,`create_date`,`update_date` + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` like concat('%', #{tenantId},'%') + + + and `pos_order_no` like concat('%', #{posOrderNo},'%') + + + and `type` = #{type} + + + and `order_status` = #{orderStatus} + + + and `bu_user_id` = #{buUserId} + + + and `create_date` = #{createDate} + + + and `update_date` = #{updateDate} + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + + + diff --git a/mallinkService/src/main/resources/mapper/PosPayOrderMapper.xml b/mallinkService/src/main/resources/mapper/PosPayOrderMapper.xml new file mode 100644 index 000000000..8b4b28166 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/PosPayOrderMapper.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + `id`,`tenant_id`,`create_time`,`update_time`,`order_id`,`bu_user_id`,`type`,`pay_from`,`pay_amount`,`pay_time_start`,`pay_time_end`,`prepay_id`,`transaction_id`,`pay_vendor`,`pay_order_no`,`pay_order_status`,`share`,`share_amount`,`rate_amount`,`fail_reason`,`auth_code`,`open_id`,`pay_end_from` + + + + where 1 = 1 + + and `id` = #{id} + + + and `tenant_id` like concat('%', #{tenantId},'%') + + + and `create_time` = #{createTime} + + + and `update_time` = #{updateTime} + + + and `order_id` = #{orderId} + + + and `bu_user_id` = #{buUserId} + + + and `type` = #{type} + + + and `pay_from` = #{payFrom} + + + and `pay_amount` = #{payAmount} + + + and `pay_time_start` = #{payTimeStart} + + + and `pay_time_end` = #{payTimeEnd} + + + and `prepay_id` like concat('%', #{prepayId},'%') + + + and `transaction_id` like concat('%', #{transactionId},'%') + + + and `pay_vendor` = #{payVendor} + + + and `pay_order_no` like concat('%', #{payOrderNo},'%') + + + and `pay_order_status` = #{payOrderStatus} + + + and `share` = #{share} + + + and `share_amount` = #{shareAmount} + + + and `rate_amount` = #{rateAmount} + + + and `fail_reason` like concat('%', #{failReason},'%') + + + and `auth_code` like concat('%', #{authCode},'%') + + + and `open_id` like concat('%', #{openId},'%') + + + and `pay_end_from` = #{payEndFrom} + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + + + + + + +