Просмотр исходного кода

fix 积分变更历史

release_toaliyun_real
winter 4 лет назад
Родитель
Сommit
13b9bd591f
9 измененных файлов: 322 добавлений и 63 удалений
  1. +20
    -21
      mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java
  2. +12
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java
  3. +18
    -0
      mallinkService/src/main/java/com/iformall/domain/vo/WxCreditHistoryVo.java
  4. +1
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java
  5. +1
    -1
      mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java
  6. +2
    -0
      mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java
  7. +208
    -5
      mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java
  8. +8
    -6
      mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml
  9. +52
    -30
      mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml

+ 20
- 21
mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java Просмотреть файл

@@ -144,26 +144,25 @@ public class WxCreditHistoryController extends BaseController {
}
}

//TODO 待优化数据
// @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 WxCreditHistory wxCreditHistory, Integer pageNum, Integer pageSize) {
// log.debug("[" + getIpAddr() + "] WxCreditHistoryController::list");
// if (null == wxCreditHistory) wxCreditHistory = new WxCreditHistory();
// wxCreditHistory.setTenantId(getTenantInfo().getFinalTenantId());
// wxCreditHistory.setFinalTenantId(getTenantInfo().getFinalTenantId());
// WxMerchantBUser bUser = getLoginBUser();
// WxMerchant merchant = wxMerchantService.getById(wxCreditHistory.getMerchantId());
// if (merchant != null && merchant.getIsAdmin() != null && merchant.getIsAdmin() == 1) {
// wxCreditHistory.setOperatorId(bUser.getId());
// wxCreditHistory.setOperatorType(EnumUserType.BUSER.getCode());
// wxCreditHistory.setMerchantId(null);
// }
// final PageInfo<WxCreditHistoryVo> page = wxCreditHistoryService.listAsPageMore(wxCreditHistory, pageNum, pageSize);
// return new ResultData(page);
// }
@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 WxCreditHistory wxCreditHistory, Integer pageNum, Integer pageSize) {
log.debug("[" + getIpAddr() + "] WxCreditHistoryController::list");
if (null == wxCreditHistory) wxCreditHistory = new WxCreditHistory();
wxCreditHistory.setTenantId(getTenantInfo().getFinalTenantId());
wxCreditHistory.setFinalTenantId(getTenantInfo().getFinalTenantId());
WxMerchantBUser bUser = getLoginBUser();
WxMerchant merchant = wxMerchantService.getById(wxCreditHistory.getMerchantId());
if (merchant != null && merchant.getIsAdmin() != null && merchant.getIsAdmin() == 1) {
wxCreditHistory.setOperatorId(bUser.getId());
wxCreditHistory.setOperatorType(EnumUserType.BUSER.getCode());
wxCreditHistory.setMerchantId(null);
}
final PageInfo<WxCreditHistoryVo> page = wxCreditHistoryService.listAsPageMore(wxCreditHistory, pageNum, pageSize);
return new ResultData(page);
}

}

+ 12
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java Просмотреть файл

@@ -43,6 +43,9 @@ public class WxCreditHistory extends BaseTenantEntity {

@io.swagger.annotations.ApiModelProperty(value="用户ID",name="cUserId")
private Long cUserId;
@TableField(exist = false)
private List<Long> cUserIds;
@io.swagger.annotations.ApiModelProperty(value="总积分",name="creditAmount")
private Integer creditAmount;
@io.swagger.annotations.ApiModelProperty(value="每笔积分明细",name="creditNum")
@@ -57,8 +60,12 @@ public class WxCreditHistory extends BaseTenantEntity {
private Integer operatorType;
@io.swagger.annotations.ApiModelProperty(value="操作人ID",name="operatorId")
private Long operatorId;
@io.swagger.annotations.ApiModelProperty(value="商户ID",name="merchantId")
private Long merchantId;
@TableField(exist = false)
private List<Long> merchantIds;
@io.swagger.annotations.ApiModelProperty(value="券ID(积分兑换券时生成)",name="couponId")
private Long couponId;
@io.swagger.annotations.ApiModelProperty(value="业态ID(计算新增积分时使用)",name="businessId")
@@ -81,6 +88,11 @@ public class WxCreditHistory extends BaseTenantEntity {
@TableField(exist = false)
@io.swagger.annotations.ApiModelProperty(value = "标签", name = "tags")
private List<Long> tags;
@TableField(exist = false)
private Integer begin;
@TableField(exist = false)
private Integer limit;

public String getSpendStr() {
if(getSpend()!=null) {


+ 18
- 0
mallinkService/src/main/java/com/iformall/domain/vo/WxCreditHistoryVo.java Просмотреть файл

@@ -1,6 +1,8 @@
package com.iformall.domain.vo;

import cn.afterturn.easypoi.excel.annotation.Excel;

import com.iformall.domain.po.WxCreditHistory;
import com.iformall.domain.po.base.BaseTenantEntity;
import com.iformall.domain.po.base.TenantEntity;
import lombok.Data;
@@ -76,5 +78,21 @@ public class WxCreditHistoryVo extends BaseTenantEntity {
@Excel(name = "说明", width = 20, orderNum = "11")
@io.swagger.annotations.ApiModelProperty(value = "兑换用途", name = "changePurpose")
private String changePurpose;
public void initByCreditHistory(WxCreditHistory c) {
this.creditId = String.valueOf(c.getId());
this.tenantId = c.getTenantId();
this.cUserId = c.getCUserId();
this.creditAmount = c.getCreditAmount();
this.creditNum = c.getCreditNum();
this.createDate = c.getCreateDate();
this.creditType = c.getCreditType();
this.receiptUrl = c.getReceiptUrl();
this.operatorType = c.getOperatorType();
this.operatorId = c.getOperatorId();
this.merchantId = c.getMerchantId();
this.ticketNumber = c.getTicketNumber();
this.changePurpose = c.getChangePurpose();
}

}

+ 1
- 0
mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java Просмотреть файл

@@ -23,6 +23,7 @@ public interface WxCUserBasicInfoMapper extends CommonMapper<WxCUserBasicInfo, S
List<WxCUserBasicInfo> findList1(@Param("tenantInfo")TenantEntity tenantInfo, @Param("basicInfo")WxCUserBasicInfo wxCUserBasicInfo);
List<WxCUserBasicInfo> findListPhoneAndNameByIds(WxCUserBasicInfo wxCUserBasicInfo);
List<Long> findIdList(WxCUserBasicInfo wxCUserBasicInfo);
WxCUserBasicInfo selectById(@Param("id")Long id,@Param("finalTenantId")String finalTenantId);



+ 1
- 1
mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java Просмотреть файл

@@ -16,7 +16,7 @@ public interface WxCreditHistoryMapper extends CommonMapper<WxCreditHistory, Lon
List<WxCreditHistory> findList(WxCreditHistory wxCreditHistory);

List<WxCreditHistoryVo> findListMore(WxCreditHistory wxCreditHistory);
List<WxCreditHistory> findListMore(WxCreditHistory wxCreditHistory);

int loginCount(WxCreditHistory wxCreditHistory);



+ 2
- 0
mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java Просмотреть файл

@@ -87,4 +87,6 @@ public interface WxCreditHistoryService {
PageInfo<MerchantCreditRankingVo> listAsPageMcrv(WxCreditHistory record, Integer pageIndex, Integer pageSize);

long getIncrementCreditAmount(WxCreditHistory wxCreditHistory);
PageInfo<WxCreditHistoryVo> findListMorePage(WxCreditHistory wxCreditHistory,Integer pageIndex, Integer pageSize);
}

+ 208
- 5
mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java Просмотреть файл

@@ -10,6 +10,7 @@ import com.iformall.common.ErrorCode;
import com.iformall.common.IdWorker;
import com.iformall.common.ResultData;
import com.iformall.domain.po.*;
import com.iformall.domain.po.base.BaseTenantEntity;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.po.msg.WxMsg;
import com.iformall.domain.vo.MerchantCreditRankingVo;
@@ -22,6 +23,8 @@ import com.iformall.utils.CreditUtil;
import com.iformall.utils.RedisLock;
import com.iformall.utils.UserUtil;
import lombok.extern.slf4j.Slf4j;

import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -34,8 +37,11 @@ import org.springframework.transaction.annotation.Transactional;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -122,10 +128,209 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService {

@Override
public void exportData(HttpServletRequest request, HttpServletResponse response, WxCreditHistory wxCreditHistory) {
List<WxCreditHistoryVo> wxCreditHistoryVoList = wxCreditHistoryMapper.findListMore(wxCreditHistory);
excelService.exportExcel(wxCreditHistoryVoList, null, "积分变更记录", WxCreditHistoryVo.class, "积分变更记录.xlsx", response, false);
PageInfo<WxCreditHistoryVo> wxCreditHistoryVoList = findListMorePage(wxCreditHistory,0,50000);
excelService.exportExcel(wxCreditHistoryVoList.getList(), null, "积分变更记录", WxCreditHistoryVo.class, "积分变更记录.xlsx", response, false);

}
private Map<Long,WxCUserBasicInfo> getUserMap(BaseTenantEntity tenantEntity,List<Long> cUserIdList) {
Map<Long,WxCUserBasicInfo> userMap = new HashMap<Long,WxCUserBasicInfo>();
if (cUserIdList.size() > 0) {
WxCUserBasicInfo cUserBasicInfoQ = new WxCUserBasicInfo();
cUserBasicInfoQ.setFinalTenantId(tenantEntity.getFinalTenantId());
cUserBasicInfoQ.setIds(cUserIdList);
List<WxCUserBasicInfo> userList = wxCUserBasicInfoMapper.findListPhoneAndNameByIds(cUserBasicInfoQ);
if (null != userList) {
for (int i = 0 ; i < userList.size() ; i ++) {
WxCUserBasicInfo cbi = userList.get(i);
userMap.put(cbi.getId(), cbi);
}
}
}
return userMap;
}
private Map<Long,String> getMerchantNameMap(BaseTenantEntity tenantEntity,List<Long> merchantIdList) {
Map<Long,String> merchantNameMap = new HashMap<Long,String>();
if (merchantIdList.size() > 0) {
WxMerchant merchantQ = new WxMerchant();
merchantQ.updateTenantInfo(tenantEntity);
merchantQ.setIds(merchantIdList);
List<WxMerchant> merchantList = wxMerchantMapper.findIdNameList(merchantQ);
if (null != merchantList) {
for (int i = 0 ; i < merchantList.size() ; i ++) {
WxMerchant cbi = merchantList.get(i);
merchantNameMap.put(cbi.getId(), cbi.getName());
}
}
}
return merchantNameMap;
}
private Map<Long,String> getMallUserInfoOperatorMap(BaseTenantEntity tenantEntity,List<Long> mallUserInfoOperatorIdList) {
Map<Long,String> mallUserInfoOperatorMap = new HashMap<Long,String>();
if (mallUserInfoOperatorIdList.size() > 0) {
MallUserInfo mallUserInfoQ = new MallUserInfo();
mallUserInfoQ.updateTenantInfo(tenantEntity);
mallUserInfoQ.setIds(mallUserInfoOperatorIdList);
List<MallUserInfo> userList = mallUserInfoMapper.findList(mallUserInfoQ);
if (null != userList) {
for (int i = 0 ; i < userList.size() ; i ++) {
MallUserInfo cbi = userList.get(i);
mallUserInfoOperatorMap.put(cbi.getId(), cbi.getName());
}
}
}
return mallUserInfoOperatorMap;
}
private Map<Long,String> getMerchantBUserOperatorMap(BaseTenantEntity tenantEntity,List<Long> merchantBUserOperatorIdList) {
Map<Long,String> merchantBUserOperatorMap = new HashMap<Long,String>();
if (merchantBUserOperatorIdList.size() > 0) {
WxMerchantBUser merchantBUserQ = new WxMerchantBUser();
merchantBUserQ.updateTenantInfo(tenantEntity);
merchantBUserQ.setIds(merchantBUserOperatorIdList);
List<WxMerchantBUser> userList = wxMerchantBUserMapper.findSimpleList(null);
if (null != userList) {
for (int i = 0 ; i < userList.size() ; i ++) {
WxMerchantBUser cbi = userList.get(i);
merchantBUserOperatorMap.put(cbi.getId(), cbi.getName());
}
}
}
return merchantBUserOperatorMap;
}
private List<WxCreditHistoryVo> creditHistoryToVoList(BaseTenantEntity tenantEntity,List<WxCreditHistory> credithistoryList) {
if (null != credithistoryList) {
List<Long> merchantIdList = new ArrayList<Long>();
List<Long> cUserIdList = new ArrayList<Long>();
List<Long> mallUserInfoOperatorIdList = new ArrayList<Long>();
List<Long> merchantBUserOperatorIdList = new ArrayList<Long>();
List<Long> cUserBasicInfoOperatorIdList = new ArrayList<Long>();
for (int i = 0 ; i < credithistoryList.size() ; i++) {
WxCreditHistory creditHistory = credithistoryList.get(i);
Long cUserId = creditHistory.getCUserId();
Long merchantId = creditHistory.getMerchantId();
Long operatorId = creditHistory.getOperatorId();
if (null != cUserId) {
if (!cUserIdList.contains(cUserId)) {
cUserIdList.add(cUserId);
}
}
if (null != merchantId) {
if (!merchantIdList.contains(merchantId)) {
merchantIdList.add(merchantId);
}
}
if (null != operatorId && null != creditHistory.getOperatorType()) {
if (creditHistory.getOperatorType() == 4) {
if (!mallUserInfoOperatorIdList.contains(operatorId)) {
mallUserInfoOperatorIdList.add(operatorId);
}
}else if (creditHistory.getOperatorType() == 3) {
if (!merchantBUserOperatorIdList.contains(operatorId)) {
merchantBUserOperatorIdList.add(operatorId);
}
}else if (creditHistory.getOperatorType() == 2) {
if (!cUserBasicInfoOperatorIdList.contains(operatorId)) {
cUserBasicInfoOperatorIdList.add(operatorId);
}
}
}
}
Map<Long,WxCUserBasicInfo> userMap = getUserMap(tenantEntity,cUserIdList);
Map<Long,String> merchantNameMap = getMerchantNameMap(tenantEntity,merchantIdList);
Map<Long,String> mallUserInfoOperatorMap = getMallUserInfoOperatorMap(tenantEntity,mallUserInfoOperatorIdList);
Map<Long,String> merchantBUserOperatorMap = getMerchantBUserOperatorMap(tenantEntity,merchantBUserOperatorIdList);
Map<Long,WxCUserBasicInfo> cUserBasicInfoOperatorMap = getUserMap(tenantEntity,cUserBasicInfoOperatorIdList);
List<WxCreditHistoryVo> retList = new ArrayList<WxCreditHistoryVo>();
for (int i = 0 ; i < credithistoryList.size() ; i++) {
WxCreditHistory creditHistory = credithistoryList.get(i);
WxCreditHistoryVo vo = new WxCreditHistoryVo();
vo.initByCreditHistory(creditHistory);
if (null != vo.getCUserId()) {
WxCUserBasicInfo user = userMap.get(vo.getCUserId());
if (null != user) {
String name = user.getNickName();
if (StringUtils.isBlank(name)) {
name = user.getName();
}
vo.setName(name);
if (null != user.getSex()) {
vo.setSex(String.valueOf(user.getSex()));
}
vo.setPhone(user.getPhone());
}
}
vo.setMerchantName(merchantNameMap.get(vo.getMerchantId()));
if (null != vo.getOperatorId()) {
if (creditHistory.getOperatorType() == 4) {
vo.setOperator(mallUserInfoOperatorMap.get(vo.getOperatorId()));
}else if (creditHistory.getOperatorType() == 3) {
vo.setOperator(merchantBUserOperatorMap.get(vo.getOperatorId()));
}else if (creditHistory.getOperatorType() == 2) {
WxCUserBasicInfo bi = cUserBasicInfoOperatorMap.get(vo.getOperatorId());
if (null != bi) {
String name = bi.getNickName();
if (StringUtils.isBlank(name)) {
name = bi.getName();
}
vo.setOperator(name);
}
}else {
vo.setOperator("");
}
}
retList.add(vo);
}
return retList;
}
return null;
}
@Override
public PageInfo<WxCreditHistoryVo> findListMorePage(WxCreditHistory wxCreditHistory,Integer pageIndex, Integer pageSize) {
String merchantName = StringUtils.trimToNull(wxCreditHistory.getMerchantName());
if(!StringUtils.isBlank(merchantName)) {
WxMerchant merchantQ = new WxMerchant();
merchantQ.updateTenantInfo(wxCreditHistory);
merchantQ.setName(merchantName);
List<Long> merchantIds = wxMerchantMapper.findIdList(merchantQ);
if (null != merchantIds && merchantIds.size() > 0 ) {
wxCreditHistory.setMerchantIds(merchantIds);
}
}
String name = StringUtils.trimToNull(wxCreditHistory.getName());
String phone = StringUtils.trimToNull(wxCreditHistory.getPhone());
if (StringUtils.isBlank(name) && StringUtils.isBlank(phone)) {
}else {
WxCUserBasicInfo biq = new WxCUserBasicInfo();
biq.setFinalTenantId(wxCreditHistory.getFinalTenantId());
biq.setName(name);
biq.setPhone(phone);
List<Long> cUserIds = wxCUserBasicInfoMapper.findIdList(biq);
if (null != cUserIds && cUserIds.size() > 0 ) {
wxCreditHistory.setCUserIds(cUserIds);
}
}
PageInfo<WxCreditHistory> pageInfo = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCreditHistoryMapper.findListMore(wxCreditHistory));
PageInfo<WxCreditHistoryVo> retPageInfo = new PageInfo<WxCreditHistoryVo>();
retPageInfo.setPageNum(pageInfo.getPageNum());
retPageInfo.setPageSize(pageInfo.getPageSize());
retPageInfo.setPages(pageInfo.getPages());
retPageInfo.setList(creditHistoryToVoList(wxCreditHistory,pageInfo.getList()));
return retPageInfo;
}

@Override
public ResultData getCreditSummary(WxCreditHistory wxCreditHistory) {
@@ -168,9 +373,7 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService {

@Override
public PageInfo<WxCreditHistoryVo> listAsPageMore(WxCreditHistory record, Integer pageIndex, Integer pageSize) {
PageHelper.startPage(pageIndex, pageSize);
List<WxCreditHistoryVo> wxCreditHistoryVoList = wxCreditHistoryMapper.findListMore(record);
return new PageInfo<>(wxCreditHistoryVoList);
return findListMorePage(record,pageIndex,pageSize);
}

// public void supplyCreditInfo(List<WxCreditHistoryVo> wxCreditHistoryVoList) {


+ 8
- 6
mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml Просмотреть файл

@@ -45,16 +45,12 @@
</sql>

<sql id="dynamicWhereConditions">
where 1 = 1
where wcubi.`final_tenant_id` = #{finalTenantId}

<if test=" null != id ">
and wcubi.`id` = #{id}
</if>

<if test=" null != finalTenantId and '' != finalTenantId">
and wcubi.`final_tenant_id` = #{finalTenantId}
</if>

<if test=" null != phone ">
and wcubi.`phone` like concat('%', #{phone},'%')
</if>
@@ -244,7 +240,7 @@
</sql>

<select id="findListPhoneAndNameByIds" parameterType="com.iformall.domain.po.WxCUserBasicInfo" resultMap="BaseResultMap">
select id, phone, nick_name
select id, phone, nick_name, name, sex
from wx_c_user_basic_info wcubi
where wcubi.`final_tenant_id` = #{finalTenantId}
<if test=" null != ids ">
@@ -255,6 +251,12 @@
</if>
</select>
<select id="findIdList" parameterType="com.iformall.domain.po.WxCUserBasicInfo" resultType="Long">
select id
from wx_c_user_basic_info wcubi
<include refid="dynamicWhereConditions"/>
</select>
<select id="findList1" resultMap="BaseResultMap">
select
<include refid="allColumns"/>


+ 52
- 30
mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml Просмотреть файл

@@ -140,38 +140,60 @@
<include refid="dynamicWhereConditions" />
</select>

<select id="findListMore" parameterType="com.iformall.domain.po.WxCreditHistory" resultType="com.iformall.domain.vo.WxCreditHistoryVo">

<select id="findListMore" parameterType="com.iformall.domain.po.WxCreditHistory" resultMap="BaseResultMap">
SELECT
credit.id creditId,
case when basic.nick_name is null then basic.name else basic.nick_name end name,
basic.phone phone,
basic.sex sex,
credit.tenant_id tenantId,
credit.c_user_id cUserId,
credit.credit_amount creditAmount,
credit.credit_num creditNum,
credit.create_date createDate,
credit.credit_type creditType,
credit.receipt_url receiptUrl,
credit.operator_type operatorType,
credit.operator_id operatorId,
merchant.NAME merchantName,
credit.merchant_id merchantId,
credit.ticket_number ticketNumber,
case when credit.operator_type=4 then (select name from mall_user_info where id=credit.operator_id)
when credit.operator_type=3 then (select name from wx_merchant_b_user where id=credit.operator_id)
when credit.operator_type=2 then (select nick_name from wx_c_user_basic_info where id=credit.operator_id)
else '' end operator,
credit.change_purpose changePurpose
FROM
wx_c_user_basic_info basic
INNER JOIN wx_credit_history credit ON basic.id = credit.c_user_id
LEFT JOIN wx_merchant merchant ON credit.merchant_id = merchant.id
<include refid="customWhereConditions"/>
ORDER BY
credit.create_date desc,credit.id DESC
credit.id ,credit.tenant_id ,credit.c_user_id ,credit.credit_amount ,credit.credit_num,credit.create_date,credit.credit_type,credit.receipt_url ,
credit.operator_type,credit.operator_id,credit.merchant_id,credit.ticket_number,credit.change_purpose
FROM wx_credit_history credit
where credit.`tenant_id` = #{tenantId}
<if test=" null != startTime ">
and credit.create_date &gt;= #{startTime}
</if>
<if test=" null != endTime">
and credit.create_date &lt; #{endTime}
</if>
<if test=" null != operatorType ">
and credit.operator_type = #{operatorType}
</if>
<if test=" null != operatorId ">
and credit.operator_id = #{operatorId}
</if>
<if test=" null != creditType ">
and credit.credit_type = #{creditType}
</if>
<if test=" null != cUserId ">
and credit.c_user_id = #{cUserId}
</if>
<if test=" null != merchantId ">
and credit.merchant_id = #{merchantId}
</if>
<if test=" null != ticketNumber and ''!=ticketNumber ">
and credit.ticket_number like concat('%', #{ticketNumber},'%')
</if>
<if test=" null != buserId ">
and credit.buser_id = #{buserId}
</if>
<if test=" null != merchantIds ">
and credit.merchantId in
<foreach collection="merchantIds" index="index" item="merchantIdItem" open="(" separator="," close=")">
#{merchantIdItem}
</foreach>
</if>
<if test=" null != cUserIds ">
and credit.c_user_id in
<foreach collection="cUserIds" index="index" item="cUserIdItem" open="(" separator="," close=")">
#{cUserIdItem}
</foreach>
</if>
ORDER BY credit.id DESC
<if test=" null != begin ">
limit #{begin}, #{limit}
</if>
</select>

<select id="loginCount" parameterType="com.iformall.domain.po.WxCreditHistory" resultType="java.lang.Integer">
select COUNT(0) from wx_credit_history
where 1=1


Загрузка…
Отмена
Сохранить