提交代码

dev-discount
胡锐 3 years ago
parent 350564ad31
commit e3f0131316
  1. 33
      hai-bweb/src/main/java/com/bweb/controller/HighGasController.java
  2. 1
      hai-bweb/src/main/java/com/bweb/controller/HighGasOilPriceTaskController.java
  3. 82
      hai-bweb/src/main/java/com/bweb/controller/HighMerAmountController.java
  4. 1
      hai-bweb/src/main/java/com/bweb/controller/HighMerchantController.java
  5. 122
      hai-service/src/main/java/com/hai/dao/HighMerchantAccountMapper.java
  6. 36
      hai-service/src/main/java/com/hai/dao/HighMerchantAccountMapperExt.java
  7. 318
      hai-service/src/main/java/com/hai/dao/HighMerchantAccountSqlProvider.java
  8. 214
      hai-service/src/main/java/com/hai/entity/HighMerchantAccount.java
  9. 934
      hai-service/src/main/java/com/hai/entity/HighMerchantAccountExample.java
  10. 45
      hai-service/src/main/java/com/hai/service/HighMerchantAccountService.java
  11. 93
      hai-service/src/main/java/com/hai/service/impl/HighMerchantAccountServiceImpl.java

@ -34,6 +34,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.File;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
@ -53,6 +54,9 @@ public class HighGasController {
@Resource
private HighMerchantStoreService merchantStoreService;
@Resource
private HighMerchantAccountService merchantAccountService;
@Resource
private HighUserService highUserService;
@ -65,6 +69,35 @@ public class HighGasController {
@Resource
private RedisTemplate redisTemplate;
@RequestMapping(value="/getMerGasStatistical",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "查询商户油站统计")
public ResponseData getMerGasStatistical() {
try {
UserInfoModel userInfoModel = userCenter.getSessionModel(UserInfoModel.class);
if (userInfoModel == null || userInfoModel.getMerchant() == null) {
log.error("HighGasController -> getMerGasStatistical() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
BigDecimal account = new BigDecimal("0");
// 查询商户余额
HighMerchantAccount merchantAccount = merchantAccountService.getStoreAccountDetail(userInfoModel.getMerchant().getId());
if (merchantAccount != null) {
account = merchantAccount.getAmounts();
}
Map<String, Object> param = new HashMap<>();
param.put("amount", account.subtract(merchantAccountService.countMerGasOilAmount(userInfoModel.getMerchant().getId())));
param.put("storeList", merchantAccountService.getStoreGasOilAmountByMer(userInfoModel.getMerchant().getId()));
return ResponseMsgUtil.success(param);
} catch (Exception e) {
log.error("HighGasController -> getMerGasStatistical() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/getGasStatistical",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "查询油站统计")

@ -104,7 +104,6 @@ public class HighGasOilPriceTaskController {
param.put("regionId", regionId);
param.put("regionName", regionName);
param.put("status", status);
param.put("status", status);
PageHelper.startPage(pageNum,pageSize);
return ResponseMsgUtil.success(new PageInfo<>(gasOilPriceTaskService.getTaskList(param)));

@ -0,0 +1,82 @@
package com.bweb.controller;
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.hai.common.exception.ErrorCode;
import com.hai.common.exception.ErrorHelp;
import com.hai.common.exception.SysCode;
import com.hai.common.security.UserCenter;
import com.hai.common.utils.ResponseMsgUtil;
import com.hai.entity.HighMerchantStoreAccount;
import com.hai.enum_type.MerStoreAmountSourceTypeEnum;
import com.hai.model.ResponseData;
import com.hai.model.UserInfoModel;
import com.hai.service.HighCompanyTwoPwdService;
import com.hai.service.HighMerchantAccountService;
import com.hai.service.HighMerchantStoreAccountRecordService;
import com.hai.service.HighMerchantStoreAccountService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.dao.DeadlockLoserDataAccessException;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;
@Controller
@RequestMapping(value = "/merAccount")
@Api(value = "商户门店接口")
public class HighMerAmountController {
private static Logger log = LoggerFactory.getLogger(HighMerAmountController.class);
@Resource
private HighMerchantAccountService merchantAccountService;
@Resource
private UserCenter userCenter;
@RequestMapping(value = "/recharge", method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "余额充值")
public synchronized ResponseData recharge(@RequestBody JSONObject body) {
try {
UserInfoModel userInfoModel = userCenter.getSessionModel(UserInfoModel.class);
if (userInfoModel == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.SEC_USER_EXPIRED, "");
}
if (userInfoModel.getBsCompany() == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.SEC_USER_EXPIRED, "");
}
if (body.getLong("merId") == null || body.getBigDecimal("amount") == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
if (body.getBigDecimal("amount").compareTo(new BigDecimal("0")) == -1) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "充值金额不能小于0");
}
Map<String, Object> map = new HashMap<>();
map.put("sourceType", MerStoreAmountSourceTypeEnum.type1.getType());
map.put("sourceContent", "充值额度:" + body.getBigDecimal("amount") + " 元");
map.put("opUserId", userInfoModel.getSecUser().getId());
map.put("opUserName", userInfoModel.getSecUser().getUserName());
merchantAccountService.recharge(body.getLong("merId"), body.getBigDecimal("amount"), map);
return ResponseMsgUtil.success("操作成功");
} catch (DeadlockLoserDataAccessException deadlockLoserDataAccessException) {
log.error("HighActivityController -> userLottery() error!", "服务器繁忙");
return ResponseMsgUtil.builderResponse(ErrorCode.SERVER_BUSY_ERROR.getCode(),ErrorCode.SERVER_BUSY_ERROR.getMsg(),null);
} catch (Exception e) {
log.error("HighCompanyAmountController --> recharge() error!", e);
return ResponseMsgUtil.exception(e);
}
}
}

@ -101,7 +101,6 @@ public class HighMerchantController {
}
}
@RequestMapping(value="/updateMerchant",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "修改商户")

@ -0,0 +1,122 @@
package com.hai.dao;
import com.hai.entity.HighMerchantAccount;
import com.hai.entity.HighMerchantAccountExample;
import java.util.List;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.DeleteProvider;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.InsertProvider;
import org.apache.ibatis.annotations.Options;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.Results;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.SelectProvider;
import org.apache.ibatis.annotations.Update;
import org.apache.ibatis.annotations.UpdateProvider;
import org.apache.ibatis.type.JdbcType;
import org.springframework.stereotype.Repository;
/**
*
* 代码由工具生成,请勿修改!!!
* 如果需要扩展请在其父类进行扩展
*
**/
@Repository
public interface HighMerchantAccountMapper extends HighMerchantAccountMapperExt {
@SelectProvider(type=HighMerchantAccountSqlProvider.class, method="countByExample")
long countByExample(HighMerchantAccountExample example);
@DeleteProvider(type=HighMerchantAccountSqlProvider.class, method="deleteByExample")
int deleteByExample(HighMerchantAccountExample example);
@Delete({
"delete from high_merchant_account",
"where id = #{id,jdbcType=BIGINT}"
})
int deleteByPrimaryKey(Long id);
@Insert({
"insert into high_merchant_account (mer_id, mer_name, ",
"account_no, amounts, ",
"`status`, create_time, ",
"update_time, ext_1, ",
"ext_2, ext_3)",
"values (#{merId,jdbcType=BIGINT}, #{merName,jdbcType=VARCHAR}, ",
"#{accountNo,jdbcType=VARCHAR}, #{amounts,jdbcType=DECIMAL}, ",
"#{status,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, ",
"#{updateTime,jdbcType=TIMESTAMP}, #{ext1,jdbcType=VARCHAR}, ",
"#{ext2,jdbcType=VARCHAR}, #{ext3,jdbcType=VARCHAR})"
})
@Options(useGeneratedKeys=true,keyProperty="id")
int insert(HighMerchantAccount record);
@InsertProvider(type=HighMerchantAccountSqlProvider.class, method="insertSelective")
@Options(useGeneratedKeys=true,keyProperty="id")
int insertSelective(HighMerchantAccount record);
@SelectProvider(type=HighMerchantAccountSqlProvider.class, method="selectByExample")
@Results({
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),
@Result(column="mer_id", property="merId", jdbcType=JdbcType.BIGINT),
@Result(column="mer_name", property="merName", jdbcType=JdbcType.VARCHAR),
@Result(column="account_no", property="accountNo", jdbcType=JdbcType.VARCHAR),
@Result(column="amounts", property="amounts", jdbcType=JdbcType.DECIMAL),
@Result(column="status", property="status", jdbcType=JdbcType.INTEGER),
@Result(column="create_time", property="createTime", jdbcType=JdbcType.TIMESTAMP),
@Result(column="update_time", property="updateTime", jdbcType=JdbcType.TIMESTAMP),
@Result(column="ext_1", property="ext1", jdbcType=JdbcType.VARCHAR),
@Result(column="ext_2", property="ext2", jdbcType=JdbcType.VARCHAR),
@Result(column="ext_3", property="ext3", jdbcType=JdbcType.VARCHAR)
})
List<HighMerchantAccount> selectByExample(HighMerchantAccountExample example);
@Select({
"select",
"id, mer_id, mer_name, account_no, amounts, `status`, create_time, update_time, ",
"ext_1, ext_2, ext_3",
"from high_merchant_account",
"where id = #{id,jdbcType=BIGINT}"
})
@Results({
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),
@Result(column="mer_id", property="merId", jdbcType=JdbcType.BIGINT),
@Result(column="mer_name", property="merName", jdbcType=JdbcType.VARCHAR),
@Result(column="account_no", property="accountNo", jdbcType=JdbcType.VARCHAR),
@Result(column="amounts", property="amounts", jdbcType=JdbcType.DECIMAL),
@Result(column="status", property="status", jdbcType=JdbcType.INTEGER),
@Result(column="create_time", property="createTime", jdbcType=JdbcType.TIMESTAMP),
@Result(column="update_time", property="updateTime", jdbcType=JdbcType.TIMESTAMP),
@Result(column="ext_1", property="ext1", jdbcType=JdbcType.VARCHAR),
@Result(column="ext_2", property="ext2", jdbcType=JdbcType.VARCHAR),
@Result(column="ext_3", property="ext3", jdbcType=JdbcType.VARCHAR)
})
HighMerchantAccount selectByPrimaryKey(Long id);
@UpdateProvider(type=HighMerchantAccountSqlProvider.class, method="updateByExampleSelective")
int updateByExampleSelective(@Param("record") HighMerchantAccount record, @Param("example") HighMerchantAccountExample example);
@UpdateProvider(type=HighMerchantAccountSqlProvider.class, method="updateByExample")
int updateByExample(@Param("record") HighMerchantAccount record, @Param("example") HighMerchantAccountExample example);
@UpdateProvider(type=HighMerchantAccountSqlProvider.class, method="updateByPrimaryKeySelective")
int updateByPrimaryKeySelective(HighMerchantAccount record);
@Update({
"update high_merchant_account",
"set mer_id = #{merId,jdbcType=BIGINT},",
"mer_name = #{merName,jdbcType=VARCHAR},",
"account_no = #{accountNo,jdbcType=VARCHAR},",
"amounts = #{amounts,jdbcType=DECIMAL},",
"`status` = #{status,jdbcType=INTEGER},",
"create_time = #{createTime,jdbcType=TIMESTAMP},",
"update_time = #{updateTime,jdbcType=TIMESTAMP},",
"ext_1 = #{ext1,jdbcType=VARCHAR},",
"ext_2 = #{ext2,jdbcType=VARCHAR},",
"ext_3 = #{ext3,jdbcType=VARCHAR}",
"where id = #{id,jdbcType=BIGINT}"
})
int updateByPrimaryKey(HighMerchantAccount record);
}

@ -0,0 +1,36 @@
package com.hai.dao;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/**
* mapper扩展类
*/
public interface HighMerchantAccountMapperExt {
@Select({"select " +
"case when sum(total_price) is not null then sum(total_price) ELSE 0 end " +
"from high_child_order " +
"where goods_type = 3 " +
"and goods_id in (SELECT id from high_merchant_store where merchant_id = #{merId})" +
"and child_orde_status in (2,3)"})
BigDecimal countMerGasOilAmount(@Param("merId") Long merId);
@Select({
" SELECT a.id, a.store_name, a.address," +
" (select " +
" case when sum(total_price) is not null then sum(total_price) else 0 end " +
" from high_child_order " +
" where goods_type = 3 " +
" and goods_id = a.id" +
" and child_orde_status in (2,3)) countPrice" +
" from high_merchant_store a where a.merchant_id = #{merId}" +
" ORDER BY countPrice desc"
})
List<Map<String, Object>> selectStoreGasOilAmountByMer(@Param("merId") Long merId);
}

@ -0,0 +1,318 @@
package com.hai.dao;
import com.hai.entity.HighMerchantAccount;
import com.hai.entity.HighMerchantAccountExample.Criteria;
import com.hai.entity.HighMerchantAccountExample.Criterion;
import com.hai.entity.HighMerchantAccountExample;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.jdbc.SQL;
public class HighMerchantAccountSqlProvider {
public String countByExample(HighMerchantAccountExample example) {
SQL sql = new SQL();
sql.SELECT("count(*)").FROM("high_merchant_account");
applyWhere(sql, example, false);
return sql.toString();
}
public String deleteByExample(HighMerchantAccountExample example) {
SQL sql = new SQL();
sql.DELETE_FROM("high_merchant_account");
applyWhere(sql, example, false);
return sql.toString();
}
public String insertSelective(HighMerchantAccount record) {
SQL sql = new SQL();
sql.INSERT_INTO("high_merchant_account");
if (record.getMerId() != null) {
sql.VALUES("mer_id", "#{merId,jdbcType=BIGINT}");
}
if (record.getMerName() != null) {
sql.VALUES("mer_name", "#{merName,jdbcType=VARCHAR}");
}
if (record.getAccountNo() != null) {
sql.VALUES("account_no", "#{accountNo,jdbcType=VARCHAR}");
}
if (record.getAmounts() != null) {
sql.VALUES("amounts", "#{amounts,jdbcType=DECIMAL}");
}
if (record.getStatus() != null) {
sql.VALUES("`status`", "#{status,jdbcType=INTEGER}");
}
if (record.getCreateTime() != null) {
sql.VALUES("create_time", "#{createTime,jdbcType=TIMESTAMP}");
}
if (record.getUpdateTime() != null) {
sql.VALUES("update_time", "#{updateTime,jdbcType=TIMESTAMP}");
}
if (record.getExt1() != null) {
sql.VALUES("ext_1", "#{ext1,jdbcType=VARCHAR}");
}
if (record.getExt2() != null) {
sql.VALUES("ext_2", "#{ext2,jdbcType=VARCHAR}");
}
if (record.getExt3() != null) {
sql.VALUES("ext_3", "#{ext3,jdbcType=VARCHAR}");
}
return sql.toString();
}
public String selectByExample(HighMerchantAccountExample example) {
SQL sql = new SQL();
if (example != null && example.isDistinct()) {
sql.SELECT_DISTINCT("id");
} else {
sql.SELECT("id");
}
sql.SELECT("mer_id");
sql.SELECT("mer_name");
sql.SELECT("account_no");
sql.SELECT("amounts");
sql.SELECT("`status`");
sql.SELECT("create_time");
sql.SELECT("update_time");
sql.SELECT("ext_1");
sql.SELECT("ext_2");
sql.SELECT("ext_3");
sql.FROM("high_merchant_account");
applyWhere(sql, example, false);
if (example != null && example.getOrderByClause() != null) {
sql.ORDER_BY(example.getOrderByClause());
}
return sql.toString();
}
public String updateByExampleSelective(Map<String, Object> parameter) {
HighMerchantAccount record = (HighMerchantAccount) parameter.get("record");
HighMerchantAccountExample example = (HighMerchantAccountExample) parameter.get("example");
SQL sql = new SQL();
sql.UPDATE("high_merchant_account");
if (record.getId() != null) {
sql.SET("id = #{record.id,jdbcType=BIGINT}");
}
if (record.getMerId() != null) {
sql.SET("mer_id = #{record.merId,jdbcType=BIGINT}");
}
if (record.getMerName() != null) {
sql.SET("mer_name = #{record.merName,jdbcType=VARCHAR}");
}
if (record.getAccountNo() != null) {
sql.SET("account_no = #{record.accountNo,jdbcType=VARCHAR}");
}
if (record.getAmounts() != null) {
sql.SET("amounts = #{record.amounts,jdbcType=DECIMAL}");
}
if (record.getStatus() != null) {
sql.SET("`status` = #{record.status,jdbcType=INTEGER}");
}
if (record.getCreateTime() != null) {
sql.SET("create_time = #{record.createTime,jdbcType=TIMESTAMP}");
}
if (record.getUpdateTime() != null) {
sql.SET("update_time = #{record.updateTime,jdbcType=TIMESTAMP}");
}
if (record.getExt1() != null) {
sql.SET("ext_1 = #{record.ext1,jdbcType=VARCHAR}");
}
if (record.getExt2() != null) {
sql.SET("ext_2 = #{record.ext2,jdbcType=VARCHAR}");
}
if (record.getExt3() != null) {
sql.SET("ext_3 = #{record.ext3,jdbcType=VARCHAR}");
}
applyWhere(sql, example, true);
return sql.toString();
}
public String updateByExample(Map<String, Object> parameter) {
SQL sql = new SQL();
sql.UPDATE("high_merchant_account");
sql.SET("id = #{record.id,jdbcType=BIGINT}");
sql.SET("mer_id = #{record.merId,jdbcType=BIGINT}");
sql.SET("mer_name = #{record.merName,jdbcType=VARCHAR}");
sql.SET("account_no = #{record.accountNo,jdbcType=VARCHAR}");
sql.SET("amounts = #{record.amounts,jdbcType=DECIMAL}");
sql.SET("`status` = #{record.status,jdbcType=INTEGER}");
sql.SET("create_time = #{record.createTime,jdbcType=TIMESTAMP}");
sql.SET("update_time = #{record.updateTime,jdbcType=TIMESTAMP}");
sql.SET("ext_1 = #{record.ext1,jdbcType=VARCHAR}");
sql.SET("ext_2 = #{record.ext2,jdbcType=VARCHAR}");
sql.SET("ext_3 = #{record.ext3,jdbcType=VARCHAR}");
HighMerchantAccountExample example = (HighMerchantAccountExample) parameter.get("example");
applyWhere(sql, example, true);
return sql.toString();
}
public String updateByPrimaryKeySelective(HighMerchantAccount record) {
SQL sql = new SQL();
sql.UPDATE("high_merchant_account");
if (record.getMerId() != null) {
sql.SET("mer_id = #{merId,jdbcType=BIGINT}");
}
if (record.getMerName() != null) {
sql.SET("mer_name = #{merName,jdbcType=VARCHAR}");
}
if (record.getAccountNo() != null) {
sql.SET("account_no = #{accountNo,jdbcType=VARCHAR}");
}
if (record.getAmounts() != null) {
sql.SET("amounts = #{amounts,jdbcType=DECIMAL}");
}
if (record.getStatus() != null) {
sql.SET("`status` = #{status,jdbcType=INTEGER}");
}
if (record.getCreateTime() != null) {
sql.SET("create_time = #{createTime,jdbcType=TIMESTAMP}");
}
if (record.getUpdateTime() != null) {
sql.SET("update_time = #{updateTime,jdbcType=TIMESTAMP}");
}
if (record.getExt1() != null) {
sql.SET("ext_1 = #{ext1,jdbcType=VARCHAR}");
}
if (record.getExt2() != null) {
sql.SET("ext_2 = #{ext2,jdbcType=VARCHAR}");
}
if (record.getExt3() != null) {
sql.SET("ext_3 = #{ext3,jdbcType=VARCHAR}");
}
sql.WHERE("id = #{id,jdbcType=BIGINT}");
return sql.toString();
}
protected void applyWhere(SQL sql, HighMerchantAccountExample example, boolean includeExamplePhrase) {
if (example == null) {
return;
}
String parmPhrase1;
String parmPhrase1_th;
String parmPhrase2;
String parmPhrase2_th;
String parmPhrase3;
String parmPhrase3_th;
if (includeExamplePhrase) {
parmPhrase1 = "%s #{example.oredCriteria[%d].allCriteria[%d].value}";
parmPhrase1_th = "%s #{example.oredCriteria[%d].allCriteria[%d].value,typeHandler=%s}";
parmPhrase2 = "%s #{example.oredCriteria[%d].allCriteria[%d].value} and #{example.oredCriteria[%d].criteria[%d].secondValue}";
parmPhrase2_th = "%s #{example.oredCriteria[%d].allCriteria[%d].value,typeHandler=%s} and #{example.oredCriteria[%d].criteria[%d].secondValue,typeHandler=%s}";
parmPhrase3 = "#{example.oredCriteria[%d].allCriteria[%d].value[%d]}";
parmPhrase3_th = "#{example.oredCriteria[%d].allCriteria[%d].value[%d],typeHandler=%s}";
} else {
parmPhrase1 = "%s #{oredCriteria[%d].allCriteria[%d].value}";
parmPhrase1_th = "%s #{oredCriteria[%d].allCriteria[%d].value,typeHandler=%s}";
parmPhrase2 = "%s #{oredCriteria[%d].allCriteria[%d].value} and #{oredCriteria[%d].criteria[%d].secondValue}";
parmPhrase2_th = "%s #{oredCriteria[%d].allCriteria[%d].value,typeHandler=%s} and #{oredCriteria[%d].criteria[%d].secondValue,typeHandler=%s}";
parmPhrase3 = "#{oredCriteria[%d].allCriteria[%d].value[%d]}";
parmPhrase3_th = "#{oredCriteria[%d].allCriteria[%d].value[%d],typeHandler=%s}";
}
StringBuilder sb = new StringBuilder();
List<Criteria> oredCriteria = example.getOredCriteria();
boolean firstCriteria = true;
for (int i = 0; i < oredCriteria.size(); i++) {
Criteria criteria = oredCriteria.get(i);
if (criteria.isValid()) {
if (firstCriteria) {
firstCriteria = false;
} else {
sb.append(" or ");
}
sb.append('(');
List<Criterion> criterions = criteria.getAllCriteria();
boolean firstCriterion = true;
for (int j = 0; j < criterions.size(); j++) {
Criterion criterion = criterions.get(j);
if (firstCriterion) {
firstCriterion = false;
} else {
sb.append(" and ");
}
if (criterion.isNoValue()) {
sb.append(criterion.getCondition());
} else if (criterion.isSingleValue()) {
if (criterion.getTypeHandler() == null) {
sb.append(String.format(parmPhrase1, criterion.getCondition(), i, j));
} else {
sb.append(String.format(parmPhrase1_th, criterion.getCondition(), i, j,criterion.getTypeHandler()));
}
} else if (criterion.isBetweenValue()) {
if (criterion.getTypeHandler() == null) {
sb.append(String.format(parmPhrase2, criterion.getCondition(), i, j, i, j));
} else {
sb.append(String.format(parmPhrase2_th, criterion.getCondition(), i, j, criterion.getTypeHandler(), i, j, criterion.getTypeHandler()));
}
} else if (criterion.isListValue()) {
sb.append(criterion.getCondition());
sb.append(" (");
List<?> listItems = (List<?>) criterion.getValue();
boolean comma = false;
for (int k = 0; k < listItems.size(); k++) {
if (comma) {
sb.append(", ");
} else {
comma = true;
}
if (criterion.getTypeHandler() == null) {
sb.append(String.format(parmPhrase3, i, j, k));
} else {
sb.append(String.format(parmPhrase3_th, i, j, k, criterion.getTypeHandler()));
}
}
sb.append(')');
}
}
sb.append(')');
}
}
if (sb.length() > 0) {
sql.WHERE(sb.toString());
}
}
}

@ -0,0 +1,214 @@
package com.hai.entity;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* high_merchant_account
* @author
*/
/**
*
* 代码由工具生成
*
**/
public class HighMerchantAccount implements Serializable {
private Long id;
/**
* 商户id
*/
private Long merId;
/**
* 商户名称
*/
private String merName;
/**
* 账户号码
*/
private String accountNo;
/**
* 账户余额
*/
private BigDecimal amounts;
/**
* 状态 0删除 1正常
*/
private Integer status;
/**
* 创建时间
*/
private Date createTime;
/**
* 修改时间
*/
private Date updateTime;
private String ext1;
private String ext2;
private String ext3;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Long getMerId() {
return merId;
}
public void setMerId(Long merId) {
this.merId = merId;
}
public String getMerName() {
return merName;
}
public void setMerName(String merName) {
this.merName = merName;
}
public String getAccountNo() {
return accountNo;
}
public void setAccountNo(String accountNo) {
this.accountNo = accountNo;
}
public BigDecimal getAmounts() {
return amounts;
}
public void setAmounts(BigDecimal amounts) {
this.amounts = amounts;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public String getExt1() {
return ext1;
}
public void setExt1(String ext1) {
this.ext1 = ext1;
}
public String getExt2() {
return ext2;
}
public void setExt2(String ext2) {
this.ext2 = ext2;
}
public String getExt3() {
return ext3;
}
public void setExt3(String ext3) {
this.ext3 = ext3;
}
@Override
public boolean equals(Object that) {
if (this == that) {
return true;
}
if (that == null) {
return false;
}
if (getClass() != that.getClass()) {
return false;
}
HighMerchantAccount other = (HighMerchantAccount) that;
return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
&& (this.getMerId() == null ? other.getMerId() == null : this.getMerId().equals(other.getMerId()))
&& (this.getMerName() == null ? other.getMerName() == null : this.getMerName().equals(other.getMerName()))
&& (this.getAccountNo() == null ? other.getAccountNo() == null : this.getAccountNo().equals(other.getAccountNo()))
&& (this.getAmounts() == null ? other.getAmounts() == null : this.getAmounts().equals(other.getAmounts()))
&& (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
&& (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
&& (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()))
&& (this.getExt1() == null ? other.getExt1() == null : this.getExt1().equals(other.getExt1()))
&& (this.getExt2() == null ? other.getExt2() == null : this.getExt2().equals(other.getExt2()))
&& (this.getExt3() == null ? other.getExt3() == null : this.getExt3().equals(other.getExt3()));
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
result = prime * result + ((getMerId() == null) ? 0 : getMerId().hashCode());
result = prime * result + ((getMerName() == null) ? 0 : getMerName().hashCode());
result = prime * result + ((getAccountNo() == null) ? 0 : getAccountNo().hashCode());
result = prime * result + ((getAmounts() == null) ? 0 : getAmounts().hashCode());
result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
result = prime * result + ((getExt1() == null) ? 0 : getExt1().hashCode());
result = prime * result + ((getExt2() == null) ? 0 : getExt2().hashCode());
result = prime * result + ((getExt3() == null) ? 0 : getExt3().hashCode());
return result;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", merId=").append(merId);
sb.append(", merName=").append(merName);
sb.append(", accountNo=").append(accountNo);
sb.append(", amounts=").append(amounts);
sb.append(", status=").append(status);
sb.append(", createTime=").append(createTime);
sb.append(", updateTime=").append(updateTime);
sb.append(", ext1=").append(ext1);
sb.append(", ext2=").append(ext2);
sb.append(", ext3=").append(ext3);
sb.append(", serialVersionUID=").append(serialVersionUID);
sb.append("]");
return sb.toString();
}
}

@ -0,0 +1,934 @@
package com.hai.entity;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class HighMerchantAccountExample {
protected String orderByClause;
protected boolean distinct;
protected List<Criteria> oredCriteria;
private Integer limit;
private Long offset;
public HighMerchantAccountExample() {
oredCriteria = new ArrayList<Criteria>();
}
public void setOrderByClause(String orderByClause) {
this.orderByClause = orderByClause;
}
public String getOrderByClause() {
return orderByClause;
}
public void setDistinct(boolean distinct) {
this.distinct = distinct;
}
public boolean isDistinct() {
return distinct;
}
public List<Criteria> getOredCriteria() {
return oredCriteria;
}
public void or(Criteria criteria) {
oredCriteria.add(criteria);
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria();
return criteria;
}
public void clear() {
oredCriteria.clear();
orderByClause = null;
distinct = false;
}
public void setLimit(Integer limit) {
this.limit = limit;
}
public Integer getLimit() {
return limit;
}
public void setOffset(Long offset) {
this.offset = offset;
}
public Long getOffset() {
return offset;
}
protected abstract static class GeneratedCriteria {
protected List<Criterion> criteria;
protected GeneratedCriteria() {
super();
criteria = new ArrayList<Criterion>();
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public List<Criterion> getCriteria() {
return criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andIdIsNull() {
addCriterion("id is null");
return (Criteria) this;
}
public Criteria andIdIsNotNull() {
addCriterion("id is not null");
return (Criteria) this;
}
public Criteria andIdEqualTo(Long value) {
addCriterion("id =", value, "id");
return (Criteria) this;
}
public Criteria andIdNotEqualTo(Long value) {
addCriterion("id <>", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThan(Long value) {
addCriterion("id >", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThanOrEqualTo(Long value) {
addCriterion("id >=", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThan(Long value) {
addCriterion("id <", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThanOrEqualTo(Long value) {
addCriterion("id <=", value, "id");
return (Criteria) this;
}
public Criteria andIdIn(List<Long> values) {
addCriterion("id in", values, "id");
return (Criteria) this;
}
public Criteria andIdNotIn(List<Long> values) {
addCriterion("id not in", values, "id");
return (Criteria) this;
}
public Criteria andIdBetween(Long value1, Long value2) {
addCriterion("id between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andIdNotBetween(Long value1, Long value2) {
addCriterion("id not between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andMerIdIsNull() {
addCriterion("mer_id is null");
return (Criteria) this;
}
public Criteria andMerIdIsNotNull() {
addCriterion("mer_id is not null");
return (Criteria) this;
}
public Criteria andMerIdEqualTo(Long value) {
addCriterion("mer_id =", value, "merId");
return (Criteria) this;
}
public Criteria andMerIdNotEqualTo(Long value) {
addCriterion("mer_id <>", value, "merId");
return (Criteria) this;
}
public Criteria andMerIdGreaterThan(Long value) {
addCriterion("mer_id >", value, "merId");
return (Criteria) this;
}
public Criteria andMerIdGreaterThanOrEqualTo(Long value) {
addCriterion("mer_id >=", value, "merId");
return (Criteria) this;
}
public Criteria andMerIdLessThan(Long value) {
addCriterion("mer_id <", value, "merId");
return (Criteria) this;
}
public Criteria andMerIdLessThanOrEqualTo(Long value) {
addCriterion("mer_id <=", value, "merId");
return (Criteria) this;
}
public Criteria andMerIdIn(List<Long> values) {
addCriterion("mer_id in", values, "merId");
return (Criteria) this;
}
public Criteria andMerIdNotIn(List<Long> values) {
addCriterion("mer_id not in", values, "merId");
return (Criteria) this;
}
public Criteria andMerIdBetween(Long value1, Long value2) {
addCriterion("mer_id between", value1, value2, "merId");
return (Criteria) this;
}
public Criteria andMerIdNotBetween(Long value1, Long value2) {
addCriterion("mer_id not between", value1, value2, "merId");
return (Criteria) this;
}
public Criteria andMerNameIsNull() {
addCriterion("mer_name is null");
return (Criteria) this;
}
public Criteria andMerNameIsNotNull() {
addCriterion("mer_name is not null");
return (Criteria) this;
}
public Criteria andMerNameEqualTo(String value) {
addCriterion("mer_name =", value, "merName");
return (Criteria) this;
}
public Criteria andMerNameNotEqualTo(String value) {
addCriterion("mer_name <>", value, "merName");
return (Criteria) this;
}
public Criteria andMerNameGreaterThan(String value) {
addCriterion("mer_name >", value, "merName");
return (Criteria) this;
}
public Criteria andMerNameGreaterThanOrEqualTo(String value) {
addCriterion("mer_name >=", value, "merName");
return (Criteria) this;
}
public Criteria andMerNameLessThan(String value) {
addCriterion("mer_name <", value, "merName");
return (Criteria) this;
}
public Criteria andMerNameLessThanOrEqualTo(String value) {
addCriterion("mer_name <=", value, "merName");
return (Criteria) this;
}
public Criteria andMerNameLike(String value) {
addCriterion("mer_name like", value, "merName");
return (Criteria) this;
}
public Criteria andMerNameNotLike(String value) {
addCriterion("mer_name not like", value, "merName");
return (Criteria) this;
}
public Criteria andMerNameIn(List<String> values) {
addCriterion("mer_name in", values, "merName");
return (Criteria) this;
}
public Criteria andMerNameNotIn(List<String> values) {
addCriterion("mer_name not in", values, "merName");
return (Criteria) this;
}
public Criteria andMerNameBetween(String value1, String value2) {
addCriterion("mer_name between", value1, value2, "merName");
return (Criteria) this;
}
public Criteria andMerNameNotBetween(String value1, String value2) {
addCriterion("mer_name not between", value1, value2, "merName");
return (Criteria) this;
}
public Criteria andAccountNoIsNull() {
addCriterion("account_no is null");
return (Criteria) this;
}
public Criteria andAccountNoIsNotNull() {
addCriterion("account_no is not null");
return (Criteria) this;
}
public Criteria andAccountNoEqualTo(String value) {
addCriterion("account_no =", value, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoNotEqualTo(String value) {
addCriterion("account_no <>", value, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoGreaterThan(String value) {
addCriterion("account_no >", value, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoGreaterThanOrEqualTo(String value) {
addCriterion("account_no >=", value, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoLessThan(String value) {
addCriterion("account_no <", value, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoLessThanOrEqualTo(String value) {
addCriterion("account_no <=", value, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoLike(String value) {
addCriterion("account_no like", value, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoNotLike(String value) {
addCriterion("account_no not like", value, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoIn(List<String> values) {
addCriterion("account_no in", values, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoNotIn(List<String> values) {
addCriterion("account_no not in", values, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoBetween(String value1, String value2) {
addCriterion("account_no between", value1, value2, "accountNo");
return (Criteria) this;
}
public Criteria andAccountNoNotBetween(String value1, String value2) {
addCriterion("account_no not between", value1, value2, "accountNo");
return (Criteria) this;
}
public Criteria andAmountsIsNull() {
addCriterion("amounts is null");
return (Criteria) this;
}
public Criteria andAmountsIsNotNull() {
addCriterion("amounts is not null");
return (Criteria) this;
}
public Criteria andAmountsEqualTo(BigDecimal value) {
addCriterion("amounts =", value, "amounts");
return (Criteria) this;
}
public Criteria andAmountsNotEqualTo(BigDecimal value) {
addCriterion("amounts <>", value, "amounts");
return (Criteria) this;
}
public Criteria andAmountsGreaterThan(BigDecimal value) {
addCriterion("amounts >", value, "amounts");
return (Criteria) this;
}
public Criteria andAmountsGreaterThanOrEqualTo(BigDecimal value) {
addCriterion("amounts >=", value, "amounts");
return (Criteria) this;
}
public Criteria andAmountsLessThan(BigDecimal value) {
addCriterion("amounts <", value, "amounts");
return (Criteria) this;
}
public Criteria andAmountsLessThanOrEqualTo(BigDecimal value) {
addCriterion("amounts <=", value, "amounts");
return (Criteria) this;
}
public Criteria andAmountsIn(List<BigDecimal> values) {
addCriterion("amounts in", values, "amounts");
return (Criteria) this;
}
public Criteria andAmountsNotIn(List<BigDecimal> values) {
addCriterion("amounts not in", values, "amounts");
return (Criteria) this;
}
public Criteria andAmountsBetween(BigDecimal value1, BigDecimal value2) {
addCriterion("amounts between", value1, value2, "amounts");
return (Criteria) this;
}
public Criteria andAmountsNotBetween(BigDecimal value1, BigDecimal value2) {
addCriterion("amounts not between", value1, value2, "amounts");
return (Criteria) this;
}
public Criteria andStatusIsNull() {
addCriterion("`status` is null");
return (Criteria) this;
}
public Criteria andStatusIsNotNull() {
addCriterion("`status` is not null");
return (Criteria) this;
}
public Criteria andStatusEqualTo(Integer value) {
addCriterion("`status` =", value, "status");
return (Criteria) this;
}
public Criteria andStatusNotEqualTo(Integer value) {
addCriterion("`status` <>", value, "status");
return (Criteria) this;
}
public Criteria andStatusGreaterThan(Integer value) {
addCriterion("`status` >", value, "status");
return (Criteria) this;
}
public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
addCriterion("`status` >=", value, "status");
return (Criteria) this;
}
public Criteria andStatusLessThan(Integer value) {
addCriterion("`status` <", value, "status");
return (Criteria) this;
}
public Criteria andStatusLessThanOrEqualTo(Integer value) {
addCriterion("`status` <=", value, "status");
return (Criteria) this;
}
public Criteria andStatusIn(List<Integer> values) {
addCriterion("`status` in", values, "status");
return (Criteria) this;
}
public Criteria andStatusNotIn(List<Integer> values) {
addCriterion("`status` not in", values, "status");
return (Criteria) this;
}
public Criteria andStatusBetween(Integer value1, Integer value2) {
addCriterion("`status` between", value1, value2, "status");
return (Criteria) this;
}
public Criteria andStatusNotBetween(Integer value1, Integer value2) {
addCriterion("`status` not between", value1, value2, "status");
return (Criteria) this;
}
public Criteria andCreateTimeIsNull() {
addCriterion("create_time is null");
return (Criteria) this;
}
public Criteria andCreateTimeIsNotNull() {
addCriterion("create_time is not null");
return (Criteria) this;
}
public Criteria andCreateTimeEqualTo(Date value) {
addCriterion("create_time =", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotEqualTo(Date value) {
addCriterion("create_time <>", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeGreaterThan(Date value) {
addCriterion("create_time >", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
addCriterion("create_time >=", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeLessThan(Date value) {
addCriterion("create_time <", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
addCriterion("create_time <=", value, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeIn(List<Date> values) {
addCriterion("create_time in", values, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotIn(List<Date> values) {
addCriterion("create_time not in", values, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeBetween(Date value1, Date value2) {
addCriterion("create_time between", value1, value2, "createTime");
return (Criteria) this;
}
public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
addCriterion("create_time not between", value1, value2, "createTime");
return (Criteria) this;
}
public Criteria andUpdateTimeIsNull() {
addCriterion("update_time is null");
return (Criteria) this;
}
public Criteria andUpdateTimeIsNotNull() {
addCriterion("update_time is not null");
return (Criteria) this;
}
public Criteria andUpdateTimeEqualTo(Date value) {
addCriterion("update_time =", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeNotEqualTo(Date value) {
addCriterion("update_time <>", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeGreaterThan(Date value) {
addCriterion("update_time >", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
addCriterion("update_time >=", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeLessThan(Date value) {
addCriterion("update_time <", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
addCriterion("update_time <=", value, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeIn(List<Date> values) {
addCriterion("update_time in", values, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeNotIn(List<Date> values) {
addCriterion("update_time not in", values, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeBetween(Date value1, Date value2) {
addCriterion("update_time between", value1, value2, "updateTime");
return (Criteria) this;
}
public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
addCriterion("update_time not between", value1, value2, "updateTime");
return (Criteria) this;
}
public Criteria andExt1IsNull() {
addCriterion("ext_1 is null");
return (Criteria) this;
}
public Criteria andExt1IsNotNull() {
addCriterion("ext_1 is not null");
return (Criteria) this;
}
public Criteria andExt1EqualTo(String value) {
addCriterion("ext_1 =", value, "ext1");
return (Criteria) this;
}
public Criteria andExt1NotEqualTo(String value) {
addCriterion("ext_1 <>", value, "ext1");
return (Criteria) this;
}
public Criteria andExt1GreaterThan(String value) {
addCriterion("ext_1 >", value, "ext1");
return (Criteria) this;
}
public Criteria andExt1GreaterThanOrEqualTo(String value) {
addCriterion("ext_1 >=", value, "ext1");
return (Criteria) this;
}
public Criteria andExt1LessThan(String value) {
addCriterion("ext_1 <", value, "ext1");
return (Criteria) this;
}
public Criteria andExt1LessThanOrEqualTo(String value) {
addCriterion("ext_1 <=", value, "ext1");
return (Criteria) this;
}
public Criteria andExt1Like(String value) {
addCriterion("ext_1 like", value, "ext1");
return (Criteria) this;
}
public Criteria andExt1NotLike(String value) {
addCriterion("ext_1 not like", value, "ext1");
return (Criteria) this;
}
public Criteria andExt1In(List<String> values) {
addCriterion("ext_1 in", values, "ext1");
return (Criteria) this;
}
public Criteria andExt1NotIn(List<String> values) {
addCriterion("ext_1 not in", values, "ext1");
return (Criteria) this;
}
public Criteria andExt1Between(String value1, String value2) {
addCriterion("ext_1 between", value1, value2, "ext1");
return (Criteria) this;
}
public Criteria andExt1NotBetween(String value1, String value2) {
addCriterion("ext_1 not between", value1, value2, "ext1");
return (Criteria) this;
}
public Criteria andExt2IsNull() {
addCriterion("ext_2 is null");
return (Criteria) this;
}
public Criteria andExt2IsNotNull() {
addCriterion("ext_2 is not null");
return (Criteria) this;
}
public Criteria andExt2EqualTo(String value) {
addCriterion("ext_2 =", value, "ext2");
return (Criteria) this;
}
public Criteria andExt2NotEqualTo(String value) {
addCriterion("ext_2 <>", value, "ext2");
return (Criteria) this;
}
public Criteria andExt2GreaterThan(String value) {
addCriterion("ext_2 >", value, "ext2");
return (Criteria) this;
}
public Criteria andExt2GreaterThanOrEqualTo(String value) {
addCriterion("ext_2 >=", value, "ext2");
return (Criteria) this;
}
public Criteria andExt2LessThan(String value) {
addCriterion("ext_2 <", value, "ext2");
return (Criteria) this;
}
public Criteria andExt2LessThanOrEqualTo(String value) {
addCriterion("ext_2 <=", value, "ext2");
return (Criteria) this;
}
public Criteria andExt2Like(String value) {
addCriterion("ext_2 like", value, "ext2");
return (Criteria) this;
}
public Criteria andExt2NotLike(String value) {
addCriterion("ext_2 not like", value, "ext2");
return (Criteria) this;
}
public Criteria andExt2In(List<String> values) {
addCriterion("ext_2 in", values, "ext2");
return (Criteria) this;
}
public Criteria andExt2NotIn(List<String> values) {
addCriterion("ext_2 not in", values, "ext2");
return (Criteria) this;
}
public Criteria andExt2Between(String value1, String value2) {
addCriterion("ext_2 between", value1, value2, "ext2");
return (Criteria) this;
}
public Criteria andExt2NotBetween(String value1, String value2) {
addCriterion("ext_2 not between", value1, value2, "ext2");
return (Criteria) this;
}
public Criteria andExt3IsNull() {
addCriterion("ext_3 is null");
return (Criteria) this;
}
public Criteria andExt3IsNotNull() {
addCriterion("ext_3 is not null");
return (Criteria) this;
}
public Criteria andExt3EqualTo(String value) {
addCriterion("ext_3 =", value, "ext3");
return (Criteria) this;
}
public Criteria andExt3NotEqualTo(String value) {
addCriterion("ext_3 <>", value, "ext3");
return (Criteria) this;
}
public Criteria andExt3GreaterThan(String value) {
addCriterion("ext_3 >", value, "ext3");
return (Criteria) this;
}
public Criteria andExt3GreaterThanOrEqualTo(String value) {
addCriterion("ext_3 >=", value, "ext3");
return (Criteria) this;
}
public Criteria andExt3LessThan(String value) {
addCriterion("ext_3 <", value, "ext3");
return (Criteria) this;
}
public Criteria andExt3LessThanOrEqualTo(String value) {
addCriterion("ext_3 <=", value, "ext3");
return (Criteria) this;
}
public Criteria andExt3Like(String value) {
addCriterion("ext_3 like", value, "ext3");
return (Criteria) this;
}
public Criteria andExt3NotLike(String value) {
addCriterion("ext_3 not like", value, "ext3");
return (Criteria) this;
}
public Criteria andExt3In(List<String> values) {
addCriterion("ext_3 in", values, "ext3");
return (Criteria) this;
}
public Criteria andExt3NotIn(List<String> values) {
addCriterion("ext_3 not in", values, "ext3");
return (Criteria) this;
}
public Criteria andExt3Between(String value1, String value2) {
addCriterion("ext_3 between", value1, value2, "ext3");
return (Criteria) this;
}
public Criteria andExt3NotBetween(String value1, String value2) {
addCriterion("ext_3 not between", value1, value2, "ext3");
return (Criteria) this;
}
}
/**
*/
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
public static class Criterion {
private String condition;
private Object value;
private Object secondValue;
private boolean noValue;
private boolean singleValue;
private boolean betweenValue;
private boolean listValue;
private String typeHandler;
public String getCondition() {
return condition;
}
public Object getValue() {
return value;
}
public Object getSecondValue() {
return secondValue;
}
public boolean isNoValue() {
return noValue;
}
public boolean isSingleValue() {
return singleValue;
}
public boolean isBetweenValue() {
return betweenValue;
}
public boolean isListValue() {
return listValue;
}
public String getTypeHandler() {
return typeHandler;
}
protected Criterion(String condition) {
super();
this.condition = condition;
this.typeHandler = null;
this.noValue = true;
}
protected Criterion(String condition, Object value, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.typeHandler = typeHandler;
if (value instanceof List<?>) {
this.listValue = true;
} else {
this.singleValue = true;
}
}
protected Criterion(String condition, Object value) {
this(condition, value, null);
}
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.secondValue = secondValue;
this.typeHandler = typeHandler;
this.betweenValue = true;
}
protected Criterion(String condition, Object value, Object secondValue) {
this(condition, value, secondValue, null);
}
}
}

@ -0,0 +1,45 @@
package com.hai.service;
import com.hai.entity.HighMerchantAccount;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
public interface HighMerchantAccountService {
/**
* 编辑商户账户
* @param merchantAccount
*/
void editMerchantAccount(HighMerchantAccount merchantAccount);
/**
* 充值
* @param merId
* @param amount
* @param otherParam
*/
void recharge(Long merId, BigDecimal amount, Map<String, Object> otherParam);
/**
* 查询商户账户
* @param merId
* @return
*/
HighMerchantAccount getStoreAccountDetail(Long merId);
/**
* 统计商户加油金额
* @param merId
* @return
*/
BigDecimal countMerGasOilAmount(Long merId);
/**
* 查询门店加油金额
* @param merId
* @return
*/
List<Map<String, Object>> getStoreGasOilAmountByMer(Long merId);
}

@ -0,0 +1,93 @@
package com.hai.service.impl;
import com.hai.common.exception.ErrorCode;
import com.hai.common.exception.ErrorHelp;
import com.hai.common.exception.SysCode;
import com.hai.common.utils.BankNumberUtil;
import com.hai.dao.HighMerchantAccountMapper;
import com.hai.entity.HighMerchant;
import com.hai.entity.HighMerchantAccount;
import com.hai.entity.HighMerchantAccountExample;
import com.hai.entity.HighMerchantStoreAccount;
import com.hai.model.HighMerchantModel;
import com.hai.model.HighMerchantStoreModel;
import com.hai.service.HighMerchantAccountService;
import com.hai.service.HighMerchantService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service("merchantAccountService")
public class HighMerchantAccountServiceImpl implements HighMerchantAccountService {
@Resource
private HighMerchantAccountMapper merchantAccountMapper;
@Resource
private HighMerchantService merchantService;
@Override
public void editMerchantAccount(HighMerchantAccount merchantAccount) {
if (merchantAccount.getId() == null) {
merchantAccount.setAccountNo(BankNumberUtil.getBrankNumber("6"));
merchantAccount.setCreateTime(new Date());
merchantAccount.setUpdateTime(new Date());
merchantAccount.setStatus(1);
merchantAccountMapper.insert(merchantAccount);
} else {
merchantAccount.setUpdateTime(new Date());
merchantAccountMapper.updateByPrimaryKey(merchantAccount);
}
}
@Override
@Transactional(propagation= Propagation.REQUIRES_NEW)
public void recharge(Long merId, BigDecimal amount, Map<String, Object> otherParam) {
// 查询商户
HighMerchant merchant = merchantService.getDetailById(merId);
if (merchant == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的商户");
}
// 是否开通了账户
HighMerchantAccount account = getStoreAccountDetail(merId);
if (account == null) {
account = new HighMerchantAccount();
account.setMerId(merId);
account.setAmounts(new BigDecimal("0"));
}
// 变更前金额
BigDecimal beforeAmount = account.getAmounts();
// 计算金额
account.setAmounts(account.getAmounts().add(amount));
// 变更后金额
BigDecimal afterAmount = account.getAmounts();
editMerchantAccount(account);
}
@Override
public HighMerchantAccount getStoreAccountDetail(Long merId) {
HighMerchantAccountExample example = new HighMerchantAccountExample();
example.createCriteria().andStatusEqualTo(1).andMerIdEqualTo(merId);
List<HighMerchantAccount> list = merchantAccountMapper.selectByExample(example);
if (list.size() > 0) {
return list.get(0);
}
return null;
}
@Override
public BigDecimal countMerGasOilAmount(Long merId) {
return merchantAccountMapper.countMerGasOilAmount(merId);
}
@Override
public List<Map<String, Object>> getStoreGasOilAmountByMer(Long merId) {
return merchantAccountMapper.selectStoreGasOilAmountByMer(merId);
}
}
Loading…
Cancel
Save