Merge branch 'dev' into pre

dev-discount
胡锐 3 years ago
commit 605237d1b5
  1. 108
      hai-bweb/src/main/java/com/bweb/controller/HighAgentController.java
  2. 85
      hai-bweb/src/main/java/com/bweb/controller/HighCouponAgentController.java
  3. 9
      hai-bweb/src/main/java/com/bweb/controller/HighOrderController.java
  4. 5
      hai-bweb/src/main/java/com/bweb/controller/LoginController.java
  5. 2
      hai-cweb/src/main/java/com/cweb/controller/HighTestController.java
  6. 38
      hai-cweb/src/main/java/com/cweb/controller/pay/UnionPayController.java
  7. 4
      hai-schedule/src/main/java/com/hai/schedule/HighGasSchedule.java
  8. 2
      hai-service/src/main/java/com/hai/config/MqttProviderCallBack.java
  9. 15
      hai-service/src/main/java/com/hai/config/MqttProviderConfig.java
  10. 354
      hai-service/src/main/java/com/hai/config/ZkcPrinterTemplate.java
  11. 17
      hai-service/src/main/java/com/hai/dao/HighAgentMapper.java
  12. 28
      hai-service/src/main/java/com/hai/dao/HighAgentSqlProvider.java
  13. 34
      hai-service/src/main/java/com/hai/dao/HighCouponAgentCodeMapper.java
  14. 42
      hai-service/src/main/java/com/hai/dao/HighCouponAgentCodeSqlProvider.java
  15. 38
      hai-service/src/main/java/com/hai/dao/HighCouponAgentRelMapper.java
  16. 14
      hai-service/src/main/java/com/hai/dao/HighCouponAgentRelSqlProvider.java
  17. 35
      hai-service/src/main/java/com/hai/entity/HighAgent.java
  18. 130
      hai-service/src/main/java/com/hai/entity/HighAgentExample.java
  19. 50
      hai-service/src/main/java/com/hai/entity/HighCouponAgentCode.java
  20. 190
      hai-service/src/main/java/com/hai/entity/HighCouponAgentCodeExample.java
  21. 16
      hai-service/src/main/java/com/hai/entity/HighCouponAgentRel.java
  22. 60
      hai-service/src/main/java/com/hai/entity/HighCouponAgentRelExample.java
  23. 13
      hai-service/src/main/java/com/hai/service/HighAgentService.java
  24. 14
      hai-service/src/main/java/com/hai/service/HighCouponAgentService.java
  25. 5
      hai-service/src/main/java/com/hai/service/HighOrderService.java
  26. 51
      hai-service/src/main/java/com/hai/service/impl/HighAgentServiceImpl.java
  27. 136
      hai-service/src/main/java/com/hai/service/impl/HighCouponAgentServiceImpl.java
  28. 204
      hai-service/src/main/java/com/hai/service/impl/HighOrderServiceImpl.java
  29. 37
      hai-service/src/main/java/com/hai/service/pay/impl/GoodsOrderServiceImpl.java

@ -1,5 +1,6 @@
package com.bweb.controller;
import com.alibaba.fastjson.JSONObject;
import com.bweb.config.SysConst;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
@ -9,6 +10,7 @@ import com.hai.common.exception.ErrorHelp;
import com.hai.common.exception.SysCode;
import com.hai.common.security.SessionObject;
import com.hai.common.security.UserCenter;
import com.hai.common.utils.MemberValidateUtil;
import com.hai.common.utils.ResponseMsgUtil;
import com.hai.entity.HighAgent;
import com.hai.entity.SecUser;
@ -55,6 +57,109 @@ public class HighAgentController {
@Resource
private SecUserService secUserService;
@RequestMapping(value = "/insertChildAgent", method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "新增子级代理商")
public ResponseData insertChildAgent(@RequestBody JSONObject body) {
try {
//发布人员
UserInfoModel userInfoModel = userCenter.getSessionModel(UserInfoModel.class);
if (userInfoModel == null) {
log.error("HighAgentController -> insertAgent() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
if (body == null ||
StringUtils.isBlank(body.getString("agentName")) ||
StringUtils.isBlank(body.getString("agentPhone")) ||
StringUtils.isBlank(body.getString("agentAddress"))
) {
log.error("HighAgentController -> insertAgent() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
// 校验账户手机号
if (!MemberValidateUtil.validatePhone(body.getString("agentPhone"))) {
log.error("BsStudentController --> updateMerchant() error!", "请输入正确的手机号");
throw ErrorHelp.genException(SysCode.System, ErrorCode.PHONE_NUM_IS_ERROR, "");
}
// 校验账号用户名是否存在
if (secUserService.findByLoginName(body.getString("agentPhone")) != null) {
log.error("HighAgentController --> insertAgent() error!", "手机号已存在,请更换!");
throw ErrorHelp.genException(SysCode.System, ErrorCode.USER_LOGIN_NAME_IS_EXIST_ERROR, "");
}
HighAgent agent = new HighAgent();
agent.setParentId(userInfoModel.getHighAgent().getId());
agent.setParentName(userInfoModel.getHighAgent().getAgentName());
agent.setType(userInfoModel.getHighAgent().getType());
agent.setAgentName(body.getString("agentName"));
agent.setAgentAddress(body.getString("agentAddress"));
agent.setAgentPhone(body.getString("agentPhone"));
agent.setAgentKey(String.valueOf(System.currentTimeMillis()));
agent.setAgentUser(body.getString("agentName"));
agent.setStatus(1); // 状态:0:不可用,1:可用
agent.setCreateTime(new Date());
agent.setOperatorId(userInfoModel.getSecUser().getId());
agent.setOperatorName(userInfoModel.getSecUser().getUserName());
highAgentService.insertChildAgent(agent);
return ResponseMsgUtil.success("新增成功");
} catch (Exception e) {
log.error("HighAgentController --> insertChildAgent() error!", e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value = "/changeAgentStatus", method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "变更代理商状态")
public ResponseData changeAgentStatus(@RequestParam(value = "agentId" , required = true) Long agentId,
@RequestParam(value = "status" , required = true) Integer status) {
try {
HighAgent highAgent = highAgentService.findByAgentMsgId(agentId);
if (highAgent == null) {
log.error("HighAgentController --> changeAgentStatus() error!");
throw ErrorHelp.genException(SysCode.System, ErrorCode.NOT_FOUND_USER_ERROR, "");
}
highAgent.setStatus(status);
highAgentService.updateAgentDetail(highAgent);
return ResponseMsgUtil.success("操作成功");
} catch (Exception e) {
log.error("HighAgentController --> changeAgentStatus() error!", e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value = "/getChildAgentList", method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "查询子级代理商列表")
public ResponseData getChildAgentList(@RequestParam(value = "agentId" , required = true) Long agentId,
@RequestParam(value = "agentPhone" , required = false) String agentPhone,
@RequestParam(value = "agentName" , required = false) String agentName,
@RequestParam(value = "status" , required = false) Integer status,
@RequestParam(value = "pageNum" , required = true) Integer pageNum,
@RequestParam(value = "pageSize" , required = true) Integer pageSize) {
try {
Map<String, Object> param = new HashMap<>();
param.put("parentAgentId", agentId);
param.put("agentPhone", agentPhone);
param.put("agentName", agentName);
param.put("status", status);
PageHelper.startPage(pageNum, pageSize);
return ResponseMsgUtil.success(new PageInfo<>(highAgentService.getListAgentMsg(param)));
} catch (Exception e) {
log.error("HighAgentController --> changeAgentStatus() error!", e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value = "/insertAgent", method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "新增代理商")
@ -206,7 +311,7 @@ public class HighAgentController {
// throw ErrorHelp.genException(SysCode.System, ErrorCode.MENU_TREE_HAS_NOT_ERROR, "");
// }
Map<String, String> map = new HashMap<>();
Map<String, Object> map = new HashMap<>();
if (StringUtils.isNotBlank(agentName)) {
map.put("agentName", agentName);
@ -235,7 +340,6 @@ public class HighAgentController {
}
}
@RequestMapping(value = "/findByAgentId", method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "根据id查询详情")

@ -105,6 +105,90 @@ public class HighCouponAgentController {
}
}
@RequestMapping(value = "/assignCouponChildAgent", method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "分配卡券给子级代理商")
public ResponseData assignCouponChildAgent(@RequestBody JSONObject body, HttpServletRequest request) {
try {
UserInfoModel userInfoModel = userCenter.getSessionModel(UserInfoModel.class);
if (userInfoModel == null || userInfoModel.getHighAgent() == null) {
log.error("HighCouponAgentController -> assignCouponAgent() error!","该主角色没有权限");
throw ErrorHelp.genException(SysCode.System, ErrorCode.MENU_TREE_HAS_NOT_ERROR, "");
}
if(body == null
|| body.getLong("couponAgentRelId") == null
|| body.getLong("agentId") == null
|| body.getInteger("stockCount") == null
) {
log.error("HighCouponAgentController -> assignCouponAgent() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
// 查询父级代理商的卡券关系
HighCouponAgentRel rel = highCouponAgentService.getRelById(body.getLong("couponAgentRelId"));
if (rel == null) {
log.error("HighCouponAgentController -> assignCouponAgent() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
if (rel.getAgentId().equals(body.getLong("agentId") )) {
log.error("HighCouponAgentController -> assignCouponAgent() error!","不能给自己分配");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "不能给自己分配");
}
if (body.getInteger("stockCount").intValue() > rel.getStockCount().intValue()) {
log.error("HighCouponAgentController -> assignCouponAgent() error!","库存数量不足");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "库存数量不足");
}
// 查询卡券详情
HighCoupon coupon = highCouponService.getCouponById(rel.getCouponId());
if (coupon == null) {
log.error("HighCouponAgentController -> assignCouponAgent() error!","未找到卡券信息");
throw ErrorHelp.genException(SysCode.System, ErrorCode.NOT_FOUND_COUPON, "");
}
// 查询代理商
HighAgent highAgent = highAgentService.findByAgentMsgId(body.getLong("agentId"));
if (highAgent == null) {
log.error("HighCouponAgentController -> assignCouponAgent() error!", "未找到代理商信息");
throw ErrorHelp.genException(SysCode.System, ErrorCode.NOT_FOUND_AGENT, "");
}
if (highAgent.getParentId() == null) {
log.error("HighCouponAgentController -> assignCouponAgent() error!", "不是子级代理商");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "不是子级代理商");
}
// 校验是否分配过
HighCouponAgentRel couponAgent = highCouponAgentService.getRelByCouponAgent(rel.getCouponId(), body.getLong("agentId"), rel.getType());
if (couponAgent != null) {
couponAgent.setStockCount(couponAgent.getStockCount() + body.getInteger("stockCount"));
couponAgent.setOperatorId(userInfoModel.getSecUser().getId());
couponAgent.setOperatorName(userInfoModel.getSecUser().getUserName());
highCouponAgentService.assignCouponAgent(couponAgent, body.getInteger("stockCount"));
} else {
couponAgent = new HighCouponAgentRel();
couponAgent.setParentCouponAgentId(rel.getId());
couponAgent.setType(rel.getType());
couponAgent.setCouponId(rel.getCouponId());
couponAgent.setAgentId(body.getLong("agentId"));
couponAgent.setCouponName(coupon.getCouponName());
couponAgent.setSalesPrice(coupon.getSalesPrice());
couponAgent.setStatus(1); // 状态 0:删除 1:正常
couponAgent.setStockCount(body.getInteger("stockCount"));
couponAgent.setSalesCount(0);
couponAgent.setCreateTime(new Date());
couponAgent.setOperatorId(userInfoModel.getSecUser().getId());
couponAgent.setOperatorName(userInfoModel.getSecUser().getUserName());
highCouponAgentService.assignCouponAgent(couponAgent, body.getInteger("stockCount"));
}
return ResponseMsgUtil.success("分配成功");
} catch (Exception e) {
log.error("HighCouponAgentController --> assignCouponAgent() error!", e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value = "/getAgentSalesCodeList", method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "查询代理商已销售的卡券")
@ -259,7 +343,6 @@ public class HighCouponAgentController {
}
}
@RequestMapping(value = "/getCouponByAgent", method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "根据代理商 查询卡券")

@ -75,7 +75,8 @@ public class HighOrderController {
@RequestMapping(value = "/print", method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "打印")
public ResponseData print(@RequestParam(name = "orderId", required = true) Long orderId) {
public ResponseData print(@RequestParam(name = "orderId", required = true) Long orderId,
@RequestParam(name = "printType", required = true) Integer printType) {
try {
HighOrder order = highOrderService.getOrderById(orderId);
@ -83,11 +84,15 @@ public class HighOrderController {
log.error("HighCouponController -> getCouponList() error!","权限不足");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
order.setPrintStatus(true);
order.setPrintNum(order.getPrintNum() + 1);
highOrderService.updateOrderDetail(order);
// 1. 热敏打印机 2. 云打印机
if (printType == 2) {
highOrderService.printGasOrder(order.getHighChildOrderList().get(0).getGoodsId(), order.getOrderNo());
}
return ResponseMsgUtil.success("操作成功");
} catch (Exception e) {

@ -173,10 +173,9 @@ public class LoginController {
log.error("login error!","未找到代理商");
throw ErrorHelp.genException(SysCode.System, ErrorCode.NOT_FOUND_AGENT, "");
}
if(highAgent.getStatus() != 1) {
log.error("login error!","未找到代理商");
throw ErrorHelp.genException(SysCode.System, ErrorCode.NOT_FOUND_AGENT, "");
log.error("login error!","代理商状态异常,请联系管理员");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "代理商状态异常,请联系管理员");
}
userInfoModel.setHighAgent(highAgent);

File diff suppressed because one or more lines are too long

@ -304,40 +304,10 @@ public class UnionPayController {
// 扣预存款
this.redisTemplate.boundListOps(MsgTopic.MerStoreAccount.getName()).leftPush(pushParam);
}
if (StringUtils.isNotBlank(store.getDeviceSn())) {
new Thread(() -> {
try {
SpPrinterConfig sp = new SpPrinterConfig();
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilCashierStubTemp(
highChildOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
Thread.sleep(6000);
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
highChildOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
} catch (Exception e) {
e.printStackTrace();
}
}).start();
}
new Thread(() -> {
highOrderService.printGasOrder(store.getId(), order.getOrderNo());
}).start();
} else if (store.getSourceType().equals(2)) {
// 推送团油订单

@ -151,11 +151,11 @@ public class HighGasSchedule {
}
}
@Scheduled(cron = "0 30 7 * * ?") //每日7点1分执行一次
/* @Scheduled(cron = "0 30 7 * * ?") //每日7点1分执行一次
public void refreshPriceOfficial() throws Exception {
gasOilPriceOfficialService.refreshPriceOfficial();
gasOilPriceOfficialService.refreshGasPriceOfficial(null, null);
}
}*/
}

@ -2,6 +2,7 @@ package com.hai.config;
import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;
import org.eclipse.paho.client.mqttv3.MqttCallback;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.context.annotation.Configuration;
@ -26,6 +27,7 @@ public class MqttProviderCallBack implements MqttCallback {
@Override
public void messageArrived(String s, MqttMessage mqttMessage) throws Exception {
System.out.println("消息到达");
}
/**

@ -11,6 +11,8 @@ import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import java.util.Random;
@Configuration
@Slf4j
public class MqttProviderConfig {
@ -58,7 +60,7 @@ public class MqttProviderConfig {
MqttConnectOptions options = new MqttConnectOptions();
//是否清空session,设置false表示服务器会保留客户端的连接记录(订阅主题,qos),客户端重连之后能获取到服务器在客户端断开连接期间推送的消息
//设置为true表示每次连接服务器都是以新的身份
options.setCleanSession(true);
options.setCleanSession(false);
//设置连接用户名
options.setUserName(username);
//设置连接密码
@ -67,6 +69,8 @@ public class MqttProviderConfig {
options.setConnectionTimeout(100);
//设置心跳时间 单位为秒,表示服务器每隔 1.5*20秒的时间向客户端发送心跳判断客户端是否在线
options.setKeepAliveInterval(20);
options.setAutomaticReconnect(false);
// 设置遗嘱消息的话题,若客户端和服务器之间的连接意外断开,服务器将发布客户端的遗嘱信息
// options.setWill("willTopic",(clientId + "与服务器断开连接").getBytes(),0,false);
//设置回调
@ -81,11 +85,14 @@ public class MqttProviderConfig {
if (client == null) {
init();
}
if (!client.isConnected()) {
init();
}
try {
MqttMessage mqttMessage = new MqttMessage();
mqttMessage.setQos(qos);
mqttMessage.setRetained(retained);
mqttMessage.setPayload(message.getBytes("UTF-8"));
mqttMessage.setPayload(message.getBytes());
// 主题的目的地,用于发布/订阅信息
MqttTopic mqttTopic = client.getTopic(topic);
//提供一种机制来跟踪消息的传递进度
@ -103,10 +110,6 @@ public class MqttProviderConfig {
}
}
public static void main(String[] args) {
System.out.println(sendPrinterRrCodeBytest("1213131", 1));
}
public static byte[] sendPrinterRrCodeBytest(String printText, int pageCount) {
try {
byte[] by = printText.getBytes();

@ -0,0 +1,354 @@
package com.hai.config;
import com.hai.common.utils.DateUtil;
import java.io.ByteArrayOutputStream;
import java.util.Date;
/**
* ZKC云打印机模板
* @author hurui
*/
public class ZkcPrinterTemplate {
/**
* 加油站收银员存根模板
* @param gasName 油站名称
* @param orderNo 订单号
* @param payTime 支付时间
* @param source 来源
* @param gunNo 抢号
* @param oilNo 油号
* @param oilLiters 升数
* @param orderPrice 加油金额
* @return
*/
public static String oilCashierStubTemp(String gasName,
String orderNo,
String payTime,
String source,
String gunNo,
String oilNo,
String oilLiters,
String orderPrice) throws Exception {
ByteArrayOutputStream stream = new ByteArrayOutputStream();
// 居中
stream.write(0x1B);
stream.write(0x61);
stream.write(0x01);
stream.write(gasName.getBytes("UTF-8"));
stream.write(0x0A);
stream.write("(收银员存根)".getBytes("UTF-8"));
stream.write(0x0A);
// 左对齐
stream.write(0x1B);
stream.write(0x61);
stream.write(0x00);
stream.write("--------------------------------".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("流水号:" + orderNo).getBytes("UTF-8"));
stream.write(0x0A);
stream.write("--------------------------------".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("时间:" + payTime).getBytes("UTF-8"));
stream.write(0x0A);
stream.write("来源:嗨森逛".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("油枪:" + gunNo).getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("油品:" + oilNo).getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("升数:" + oilLiters + "升").getBytes("UTF-8"));
stream.write(0x0A);
stream.write("实际加油升数以加油机为准!".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(0x1B);
stream.write(0x0E);
stream.write("加油金额".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("¥" + orderPrice).getBytes("UTF-8"));
stream.write(0x0A);
stream.write(0x1B);
stream.write(0x21);
stream.write(0x00);
stream.write("--------------------------------".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(0x1B);
stream.write(0x61);
stream.write(0x01);
stream.write("开心又省钱;来“ 嗨森逛 ”".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(0x0A);
stream.write(0x0A);
stream.write(0x0A);
return bytes2Hex(getPrinterBytes(stream.toByteArray(), 1, "UTF-8"));
}
/**
* 加油站客户存根模板
* @param gasName 油站名称
* @param orderNo 订单号
* @param payTime 支付时间
* @param source 来源
* @param gunNo 抢号
* @param oilNo 油号
* @param oilLiters 升数
* @param orderPrice 加油金额
* @return
*/
public static String oilClientStubTemp(String gasName,
String orderNo,
String payTime,
String source,
String gunNo,
String oilNo,
String oilLiters,
String orderPrice) throws Exception {
ByteArrayOutputStream stream = new ByteArrayOutputStream();
// 居中
stream.write(0x1B);
stream.write(0x61);
stream.write(0x01);
stream.write(gasName.getBytes("UTF-8"));
stream.write(0x0A);
stream.write("(客户存根)".getBytes("UTF-8"));
stream.write(0x0A);
// 左对齐
stream.write(0x1B);
stream.write(0x61);
stream.write(0x00);
stream.write("--------------------------------".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("流水号:" + orderNo).getBytes("UTF-8"));
stream.write(0x0A);
stream.write("--------------------------------".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("时间:" + payTime).getBytes("UTF-8"));
stream.write(0x0A);
stream.write("来源:嗨森逛".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("油枪:" + gunNo).getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("油品:" + oilNo).getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("升数:" + oilLiters + "升").getBytes("UTF-8"));
stream.write(0x0A);
stream.write("实际加油升数以加油机为准!".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(0x1B);
stream.write(0x0E);
stream.write("加油金额".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(("¥" + orderPrice).getBytes("UTF-8"));
stream.write(0x0A);
stream.write(0x1B);
stream.write(0x21);
stream.write(0x00);
stream.write("--------------------------------".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(0x1B);
stream.write(0x61);
stream.write(0x01);
stream.write("开心又省钱;来“ 嗨森逛 ”".getBytes("UTF-8"));
stream.write(0x0A);
stream.write(0x0A);
stream.write(0x0A);
stream.write(0x0A);
return bytes2Hex(getPrinterBytes(stream.toByteArray(), 1, "UTF-8"));
}
public static String hexStringToString(String s) {
if (s == null || s.equals("")) {
return null;
}
s = s.replace(" ", "");
byte[] baKeyword = new byte[s.length() / 2];
for (int i = 0; i < baKeyword.length; i++) {
try {
baKeyword[i] = (byte) (0xff & Integer.parseInt(s.substring(i * 2, i * 2 + 2), 16));
} catch (Exception e) {
e.printStackTrace();
}
}
try {
s = new String(baKeyword, "UTF-8");
new String();
} catch (Exception e1) {
e1.printStackTrace();
}
return s;
}
/**
* 获取打印内容适用于云打印机
* @param printText 打印文本
* @param pageCount 打印联数
* @param encodingStr 编码方式默认UTF-8
* @return
*/
public static byte[] getPrinterBytes(final byte[] printText,
final int pageCount, String encodingStr) {
try {
if(encodingStr.equals("")){
encodingStr="UTF-8";
}
byte[] msgByte = printText;
// 消息数组
final byte[] dataByte = new byte[msgByte.length + 9];
dataByte[0] = 0x1E;
dataByte[1] = 0x10;
dataByte[2] = (byte) pageCount;// 打印多联
// 有效数据长度
final int len = dataByte.length - 5;
dataByte[3] = (byte) (len >> 8);
dataByte[4] = (byte) (len & 0xff);
// 数据内容
System.arraycopy(msgByte, 0, dataByte, 5, msgByte.length);
// 标识字节
dataByte[dataByte.length - 4] = 0x1b;
dataByte[dataByte.length - 3] = 0x63;
// 打印内容CRC校验
final byte[] dtCRC = getCRC(msgByte);
dataByte[dataByte.length - 2] = (byte) (dtCRC[0]);
dataByte[dataByte.length - 1] = (byte) (dtCRC[1]);
msgByte = dataByte;
return msgByte;
} catch (Exception ex) {
System.out.println(ex.getStackTrace());
}
return null;
}
/**
* 获取打印内容适用于云打印机
* @param printText 打印文本
* @param pageCount 打印联数
* @param encodingStr 编码方式默认UTF-8
* @return
*/
public byte[] getPrinterBytes(final String printText,
final int pageCount, String encodingStr) {
try {
if(encodingStr.equals("")){
encodingStr="UTF-8";
}
byte[] msgByte = printText.getBytes(encodingStr);
// 消息数组
final byte[] dataByte = new byte[msgByte.length + 9];
dataByte[0] = 0x1E;
dataByte[1] = 0x10;
dataByte[2] = (byte) pageCount;// 打印多联
// 有效数据长度
final int len = dataByte.length - 5;
dataByte[3] = (byte) (len >> 8);
dataByte[4] = (byte) (len & 0xff);
// 数据内容
System.arraycopy(msgByte, 0, dataByte, 5, msgByte.length);
// 标识字节
dataByte[dataByte.length - 4] = 0x1b;
dataByte[dataByte.length - 3] = 0x63;
// 打印内容CRC校验
final byte[] dtCRC = getCRC(msgByte);
dataByte[dataByte.length - 2] = (byte) (dtCRC[0]);
dataByte[dataByte.length - 1] = (byte) (dtCRC[1]);
msgByte = dataByte;
return msgByte;
} catch (Exception ex) {
System.out.println(ex.getStackTrace());
}
return null;
}
private static int[] CRC16Table = { 0x0000, 0x1189, 0x2312, 0x329b, 0x4624,
0x57ad, 0x6536, 0x74bf, 0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c,
0xdbe5, 0xe97e, 0xf8f7, 0x1081, 0x0108, 0x3393, 0x221a, 0x56a5,
0x472c, 0x75b7, 0x643e, 0x9cc9, 0x8d40, 0xbfdb, 0xae52, 0xdaed,
0xcb64, 0xf9ff, 0xe876, 0x2102, 0x308b, 0x0210, 0x1399, 0x6726,
0x76af, 0x4434, 0x55bd, 0xad4a, 0xbcc3, 0x8e58, 0x9fd1, 0xeb6e,
0xfae7, 0xc87c, 0xd9f5, 0x3183, 0x200a, 0x1291, 0x0318, 0x77a7,
0x662e, 0x54b5, 0x453c, 0xbdcb, 0xac42, 0x9ed9, 0x8f50, 0xfbef,
0xea66, 0xd8fd, 0xc974, 0x4204, 0x538d, 0x6116, 0x709f, 0x0420,
0x15a9, 0x2732, 0x36bb, 0xce4c, 0xdfc5, 0xed5e, 0xfcd7, 0x8868,
0x99e1, 0xab7a, 0xbaf3, 0x5285, 0x430c, 0x7197, 0x601e, 0x14a1,
0x0528, 0x37b3, 0x263a, 0xdecd, 0xcf44, 0xfddf, 0xec56, 0x98e9,
0x8960, 0xbbfb, 0xaa72, 0x6306, 0x728f, 0x4014, 0x519d, 0x2522,
0x34ab, 0x0630, 0x17b9, 0xef4e, 0xfec7, 0xcc5c, 0xddd5, 0xa96a,
0xb8e3, 0x8a78, 0x9bf1, 0x7387, 0x620e, 0x5095, 0x411c, 0x35a3,
0x242a, 0x16b1, 0x0738, 0xffcf, 0xee46, 0xdcdd, 0xcd54, 0xb9eb,
0xa862, 0x9af9, 0x8b70, 0x8408, 0x9581, 0xa71a, 0xb693, 0xc22c,
0xd3a5, 0xe13e, 0xf0b7, 0x0840, 0x19c9, 0x2b52, 0x3adb, 0x4e64,
0x5fed, 0x6d76, 0x7cff, 0x9489, 0x8500, 0xb79b, 0xa612, 0xd2ad,
0xc324, 0xf1bf, 0xe036, 0x18c1, 0x0948, 0x3bd3, 0x2a5a, 0x5ee5,
0x4f6c, 0x7df7, 0x6c7e, 0xa50a, 0xb483, 0x8618, 0x9791, 0xe32e,
0xf2a7, 0xc03c, 0xd1b5, 0x2942, 0x38cb, 0x0a50, 0x1bd9, 0x6f66,
0x7eef, 0x4c74, 0x5dfd, 0xb58b, 0xa402, 0x9699, 0x8710, 0xf3af,
0xe226, 0xd0bd, 0xc134, 0x39c3, 0x284a, 0x1ad1, 0x0b58, 0x7fe7,
0x6e6e, 0x5cf5, 0x4d7c, 0xc60c, 0xd785, 0xe51e, 0xf497, 0x8028,
0x91a1, 0xa33a, 0xb2b3, 0x4a44, 0x5bcd, 0x6956, 0x78df, 0x0c60,
0x1de9, 0x2f72, 0x3efb, 0xd68d, 0xc704, 0xf59f, 0xe416, 0x90a9,
0x8120, 0xb3bb, 0xa232, 0x5ac5, 0x4b4c, 0x79d7, 0x685e, 0x1ce1,
0x0d68, 0x3ff3, 0x2e7a, 0xe70e, 0xf687, 0xc41c, 0xd595, 0xa12a,
0xb0a3, 0x8238, 0x93b1, 0x6b46, 0x7acf, 0x4854, 0x59dd, 0x2d62,
0x3ceb, 0x0e70, 0x1ff9, 0xf78f, 0xe606, 0xd49d, 0xc514, 0xb1ab,
0xa022, 0x92b9, 0x8330, 0x7bc7, 0x6a4e, 0x58d5, 0x495c, 0x3de3,
0x2c6a, 0x1ef1, 0x0f78 };
private static byte[] getCRC(byte[] bytes) {
int crc = 0xFFFF; // 初始值
for (byte b : bytes) {
crc = (crc >> 8) ^ CRC16Table[(crc ^ b) & 0xff];
}
byte[] b = new byte[2];
b[0] = (byte) ((crc >> 8)^0xff);
b[1] = (byte) ((crc & 0xff)^0xff);
return b;
}
private static final char[] HEXES = { '0', '1', '2', '3', '4', '5', '6',
'7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
/**
* byte数组 转换成 16进制小写字符串
*/
private static String bytes2Hex(byte[] bytes) {
if (bytes == null || bytes.length == 0) {
return null;
}
StringBuilder hex = new StringBuilder();
for (byte b : bytes) {
hex.append(HEXES[(b >> 4) & 0x0F]);
hex.append(HEXES[b & 0x0F]);
}
return hex.toString();
}
}

@ -39,14 +39,16 @@ public interface HighAgentMapper extends HighAgentMapperExt {
int deleteByPrimaryKey(Long id);
@Insert({
"insert into high_agent (`type`, agent_key, ",
"insert into high_agent (`type`, parent_id, ",
"parent_name, agent_key, ",
"agent_name, agent_address, ",
"agent_user, agent_phone, ",
"create_time, `status`, ",
"user_name, operator_id, ",
"operator_name, ext_1, ",
"ext_2, ext_3)",
"values (#{type,jdbcType=INTEGER}, #{agentKey,jdbcType=VARCHAR}, ",
"values (#{type,jdbcType=INTEGER}, #{parentId,jdbcType=BIGINT}, ",
"#{parentName,jdbcType=VARCHAR}, #{agentKey,jdbcType=VARCHAR}, ",
"#{agentName,jdbcType=VARCHAR}, #{agentAddress,jdbcType=VARCHAR}, ",
"#{agentUser,jdbcType=VARCHAR}, #{agentPhone,jdbcType=VARCHAR}, ",
"#{createTime,jdbcType=TIMESTAMP}, #{status,jdbcType=INTEGER}, ",
@ -65,6 +67,8 @@ public interface HighAgentMapper extends HighAgentMapperExt {
@Results({
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),
@Result(column="type", property="type", jdbcType=JdbcType.INTEGER),
@Result(column="parent_id", property="parentId", jdbcType=JdbcType.BIGINT),
@Result(column="parent_name", property="parentName", jdbcType=JdbcType.VARCHAR),
@Result(column="agent_key", property="agentKey", jdbcType=JdbcType.VARCHAR),
@Result(column="agent_name", property="agentName", jdbcType=JdbcType.VARCHAR),
@Result(column="agent_address", property="agentAddress", jdbcType=JdbcType.VARCHAR),
@ -83,14 +87,17 @@ public interface HighAgentMapper extends HighAgentMapperExt {
@Select({
"select",
"id, `type`, agent_key, agent_name, agent_address, agent_user, agent_phone, create_time, ",
"`status`, user_name, operator_id, operator_name, ext_1, ext_2, ext_3",
"id, `type`, parent_id, parent_name, agent_key, agent_name, agent_address, agent_user, ",
"agent_phone, create_time, `status`, user_name, operator_id, operator_name, ext_1, ",
"ext_2, ext_3",
"from high_agent",
"where id = #{id,jdbcType=BIGINT}"
})
@Results({
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),
@Result(column="type", property="type", jdbcType=JdbcType.INTEGER),
@Result(column="parent_id", property="parentId", jdbcType=JdbcType.BIGINT),
@Result(column="parent_name", property="parentName", jdbcType=JdbcType.VARCHAR),
@Result(column="agent_key", property="agentKey", jdbcType=JdbcType.VARCHAR),
@Result(column="agent_name", property="agentName", jdbcType=JdbcType.VARCHAR),
@Result(column="agent_address", property="agentAddress", jdbcType=JdbcType.VARCHAR),
@ -119,6 +126,8 @@ public interface HighAgentMapper extends HighAgentMapperExt {
@Update({
"update high_agent",
"set `type` = #{type,jdbcType=INTEGER},",
"parent_id = #{parentId,jdbcType=BIGINT},",
"parent_name = #{parentName,jdbcType=VARCHAR},",
"agent_key = #{agentKey,jdbcType=VARCHAR},",
"agent_name = #{agentName,jdbcType=VARCHAR},",
"agent_address = #{agentAddress,jdbcType=VARCHAR},",

@ -32,6 +32,14 @@ public class HighAgentSqlProvider {
sql.VALUES("`type`", "#{type,jdbcType=INTEGER}");
}
if (record.getParentId() != null) {
sql.VALUES("parent_id", "#{parentId,jdbcType=BIGINT}");
}
if (record.getParentName() != null) {
sql.VALUES("parent_name", "#{parentName,jdbcType=VARCHAR}");
}
if (record.getAgentKey() != null) {
sql.VALUES("agent_key", "#{agentKey,jdbcType=VARCHAR}");
}
@ -95,6 +103,8 @@ public class HighAgentSqlProvider {
sql.SELECT("id");
}
sql.SELECT("`type`");
sql.SELECT("parent_id");
sql.SELECT("parent_name");
sql.SELECT("agent_key");
sql.SELECT("agent_name");
sql.SELECT("agent_address");
@ -133,6 +143,14 @@ public class HighAgentSqlProvider {
sql.SET("`type` = #{record.type,jdbcType=INTEGER}");
}
if (record.getParentId() != null) {
sql.SET("parent_id = #{record.parentId,jdbcType=BIGINT}");
}
if (record.getParentName() != null) {
sql.SET("parent_name = #{record.parentName,jdbcType=VARCHAR}");
}
if (record.getAgentKey() != null) {
sql.SET("agent_key = #{record.agentKey,jdbcType=VARCHAR}");
}
@ -195,6 +213,8 @@ public class HighAgentSqlProvider {
sql.SET("id = #{record.id,jdbcType=BIGINT}");
sql.SET("`type` = #{record.type,jdbcType=INTEGER}");
sql.SET("parent_id = #{record.parentId,jdbcType=BIGINT}");
sql.SET("parent_name = #{record.parentName,jdbcType=VARCHAR}");
sql.SET("agent_key = #{record.agentKey,jdbcType=VARCHAR}");
sql.SET("agent_name = #{record.agentName,jdbcType=VARCHAR}");
sql.SET("agent_address = #{record.agentAddress,jdbcType=VARCHAR}");
@ -222,6 +242,14 @@ public class HighAgentSqlProvider {
sql.SET("`type` = #{type,jdbcType=INTEGER}");
}
if (record.getParentId() != null) {
sql.SET("parent_id = #{parentId,jdbcType=BIGINT}");
}
if (record.getParentName() != null) {
sql.SET("parent_name = #{parentName,jdbcType=VARCHAR}");
}
if (record.getAgentKey() != null) {
sql.SET("agent_key = #{agentKey,jdbcType=VARCHAR}");
}

@ -44,19 +44,23 @@ public interface HighCouponAgentCodeMapper extends HighCouponAgentCodeMapperExt
"coupon_agent_record_id, convert_user_phone, ",
"convert_code, coupon_code_id, ",
"coupon_code, qr_code, ",
"`status`, remark, ",
"create_time, sales_time, ",
"operator_id, operator_name, ",
"ext_1, ext_2, ext_3)",
"`status`, assign_coupon_agent_id, ",
"assign_agent_id, assign_agent_name, ",
"remark, create_time, ",
"sales_time, operator_id, ",
"operator_name, ext_1, ",
"ext_2, ext_3)",
"values (#{type,jdbcType=INTEGER}, #{couponAgentId,jdbcType=BIGINT}, ",
"#{couponId,jdbcType=BIGINT}, #{agentId,jdbcType=BIGINT}, ",
"#{couponAgentRecordId,jdbcType=BIGINT}, #{convertUserPhone,jdbcType=VARCHAR}, ",
"#{convertCode,jdbcType=VARCHAR}, #{couponCodeId,jdbcType=BIGINT}, ",
"#{couponCode,jdbcType=VARCHAR}, #{qrCode,jdbcType=VARCHAR}, ",
"#{status,jdbcType=INTEGER}, #{remark,jdbcType=VARCHAR}, ",
"#{createTime,jdbcType=TIMESTAMP}, #{salesTime,jdbcType=TIMESTAMP}, ",
"#{operatorId,jdbcType=BIGINT}, #{operatorName,jdbcType=VARCHAR}, ",
"#{ext1,jdbcType=VARCHAR}, #{ext2,jdbcType=VARCHAR}, #{ext3,jdbcType=VARCHAR})"
"#{status,jdbcType=INTEGER}, #{assignCouponAgentId,jdbcType=BIGINT}, ",
"#{assignAgentId,jdbcType=BIGINT}, #{assignAgentName,jdbcType=VARCHAR}, ",
"#{remark,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, ",
"#{salesTime,jdbcType=TIMESTAMP}, #{operatorId,jdbcType=BIGINT}, ",
"#{operatorName,jdbcType=VARCHAR}, #{ext1,jdbcType=VARCHAR}, ",
"#{ext2,jdbcType=VARCHAR}, #{ext3,jdbcType=VARCHAR})"
})
@Options(useGeneratedKeys=true,keyProperty="id")
int insert(HighCouponAgentCode record);
@ -79,6 +83,9 @@ public interface HighCouponAgentCodeMapper extends HighCouponAgentCodeMapperExt
@Result(column="coupon_code", property="couponCode", jdbcType=JdbcType.VARCHAR),
@Result(column="qr_code", property="qrCode", jdbcType=JdbcType.VARCHAR),
@Result(column="status", property="status", jdbcType=JdbcType.INTEGER),
@Result(column="assign_coupon_agent_id", property="assignCouponAgentId", jdbcType=JdbcType.BIGINT),
@Result(column="assign_agent_id", property="assignAgentId", jdbcType=JdbcType.BIGINT),
@Result(column="assign_agent_name", property="assignAgentName", jdbcType=JdbcType.VARCHAR),
@Result(column="remark", property="remark", jdbcType=JdbcType.VARCHAR),
@Result(column="create_time", property="createTime", jdbcType=JdbcType.TIMESTAMP),
@Result(column="sales_time", property="salesTime", jdbcType=JdbcType.TIMESTAMP),
@ -93,8 +100,9 @@ public interface HighCouponAgentCodeMapper extends HighCouponAgentCodeMapperExt
@Select({
"select",
"id, `type`, coupon_agent_id, coupon_id, agent_id, coupon_agent_record_id, convert_user_phone, ",
"convert_code, coupon_code_id, coupon_code, qr_code, `status`, remark, create_time, ",
"sales_time, operator_id, operator_name, ext_1, ext_2, ext_3",
"convert_code, coupon_code_id, coupon_code, qr_code, `status`, assign_coupon_agent_id, ",
"assign_agent_id, assign_agent_name, remark, create_time, sales_time, operator_id, ",
"operator_name, ext_1, ext_2, ext_3",
"from high_coupon_agent_code",
"where id = #{id,jdbcType=BIGINT}"
})
@ -111,6 +119,9 @@ public interface HighCouponAgentCodeMapper extends HighCouponAgentCodeMapperExt
@Result(column="coupon_code", property="couponCode", jdbcType=JdbcType.VARCHAR),
@Result(column="qr_code", property="qrCode", jdbcType=JdbcType.VARCHAR),
@Result(column="status", property="status", jdbcType=JdbcType.INTEGER),
@Result(column="assign_coupon_agent_id", property="assignCouponAgentId", jdbcType=JdbcType.BIGINT),
@Result(column="assign_agent_id", property="assignAgentId", jdbcType=JdbcType.BIGINT),
@Result(column="assign_agent_name", property="assignAgentName", jdbcType=JdbcType.VARCHAR),
@Result(column="remark", property="remark", jdbcType=JdbcType.VARCHAR),
@Result(column="create_time", property="createTime", jdbcType=JdbcType.TIMESTAMP),
@Result(column="sales_time", property="salesTime", jdbcType=JdbcType.TIMESTAMP),
@ -144,6 +155,9 @@ public interface HighCouponAgentCodeMapper extends HighCouponAgentCodeMapperExt
"coupon_code = #{couponCode,jdbcType=VARCHAR},",
"qr_code = #{qrCode,jdbcType=VARCHAR},",
"`status` = #{status,jdbcType=INTEGER},",
"assign_coupon_agent_id = #{assignCouponAgentId,jdbcType=BIGINT},",
"assign_agent_id = #{assignAgentId,jdbcType=BIGINT},",
"assign_agent_name = #{assignAgentName,jdbcType=VARCHAR},",
"remark = #{remark,jdbcType=VARCHAR},",
"create_time = #{createTime,jdbcType=TIMESTAMP},",
"sales_time = #{salesTime,jdbcType=TIMESTAMP},",

@ -72,6 +72,18 @@ public class HighCouponAgentCodeSqlProvider {
sql.VALUES("`status`", "#{status,jdbcType=INTEGER}");
}
if (record.getAssignCouponAgentId() != null) {
sql.VALUES("assign_coupon_agent_id", "#{assignCouponAgentId,jdbcType=BIGINT}");
}
if (record.getAssignAgentId() != null) {
sql.VALUES("assign_agent_id", "#{assignAgentId,jdbcType=BIGINT}");
}
if (record.getAssignAgentName() != null) {
sql.VALUES("assign_agent_name", "#{assignAgentName,jdbcType=VARCHAR}");
}
if (record.getRemark() != null) {
sql.VALUES("remark", "#{remark,jdbcType=VARCHAR}");
}
@ -125,6 +137,9 @@ public class HighCouponAgentCodeSqlProvider {
sql.SELECT("coupon_code");
sql.SELECT("qr_code");
sql.SELECT("`status`");
sql.SELECT("assign_coupon_agent_id");
sql.SELECT("assign_agent_id");
sql.SELECT("assign_agent_name");
sql.SELECT("remark");
sql.SELECT("create_time");
sql.SELECT("sales_time");
@ -198,6 +213,18 @@ public class HighCouponAgentCodeSqlProvider {
sql.SET("`status` = #{record.status,jdbcType=INTEGER}");
}
if (record.getAssignCouponAgentId() != null) {
sql.SET("assign_coupon_agent_id = #{record.assignCouponAgentId,jdbcType=BIGINT}");
}
if (record.getAssignAgentId() != null) {
sql.SET("assign_agent_id = #{record.assignAgentId,jdbcType=BIGINT}");
}
if (record.getAssignAgentName() != null) {
sql.SET("assign_agent_name = #{record.assignAgentName,jdbcType=VARCHAR}");
}
if (record.getRemark() != null) {
sql.SET("remark = #{record.remark,jdbcType=VARCHAR}");
}
@ -250,6 +277,9 @@ public class HighCouponAgentCodeSqlProvider {
sql.SET("coupon_code = #{record.couponCode,jdbcType=VARCHAR}");
sql.SET("qr_code = #{record.qrCode,jdbcType=VARCHAR}");
sql.SET("`status` = #{record.status,jdbcType=INTEGER}");
sql.SET("assign_coupon_agent_id = #{record.assignCouponAgentId,jdbcType=BIGINT}");
sql.SET("assign_agent_id = #{record.assignAgentId,jdbcType=BIGINT}");
sql.SET("assign_agent_name = #{record.assignAgentName,jdbcType=VARCHAR}");
sql.SET("remark = #{record.remark,jdbcType=VARCHAR}");
sql.SET("create_time = #{record.createTime,jdbcType=TIMESTAMP}");
sql.SET("sales_time = #{record.salesTime,jdbcType=TIMESTAMP}");
@ -312,6 +342,18 @@ public class HighCouponAgentCodeSqlProvider {
sql.SET("`status` = #{status,jdbcType=INTEGER}");
}
if (record.getAssignCouponAgentId() != null) {
sql.SET("assign_coupon_agent_id = #{assignCouponAgentId,jdbcType=BIGINT}");
}
if (record.getAssignAgentId() != null) {
sql.SET("assign_agent_id = #{assignAgentId,jdbcType=BIGINT}");
}
if (record.getAssignAgentName() != null) {
sql.SET("assign_agent_name = #{assignAgentName,jdbcType=VARCHAR}");
}
if (record.getRemark() != null) {
sql.SET("remark = #{remark,jdbcType=VARCHAR}");
}

@ -39,20 +39,20 @@ public interface HighCouponAgentRelMapper extends HighCouponAgentRelMapperExt {
int deleteByPrimaryKey(Long id);
@Insert({
"insert into high_coupon_agent_rel (`type`, coupon_name, ",
"sales_price, coupon_id, ",
"agent_id, stock_count, ",
"sales_count, create_time, ",
"`status`, operator_id, ",
"operator_name, ext_1, ",
"ext_2, ext_3)",
"values (#{type,jdbcType=INTEGER}, #{couponName,jdbcType=VARCHAR}, ",
"#{salesPrice,jdbcType=DECIMAL}, #{couponId,jdbcType=BIGINT}, ",
"#{agentId,jdbcType=BIGINT}, #{stockCount,jdbcType=INTEGER}, ",
"#{salesCount,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, ",
"#{status,jdbcType=INTEGER}, #{operatorId,jdbcType=BIGINT}, ",
"#{operatorName,jdbcType=VARCHAR}, #{ext1,jdbcType=VARCHAR}, ",
"#{ext2,jdbcType=VARCHAR}, #{ext3,jdbcType=VARCHAR})"
"insert into high_coupon_agent_rel (parent_coupon_agent_id, `type`, ",
"coupon_name, sales_price, ",
"coupon_id, agent_id, ",
"stock_count, sales_count, ",
"create_time, `status`, ",
"operator_id, operator_name, ",
"ext_1, ext_2, ext_3)",
"values (#{parentCouponAgentId,jdbcType=BIGINT}, #{type,jdbcType=INTEGER}, ",
"#{couponName,jdbcType=VARCHAR}, #{salesPrice,jdbcType=DECIMAL}, ",
"#{couponId,jdbcType=BIGINT}, #{agentId,jdbcType=BIGINT}, ",
"#{stockCount,jdbcType=INTEGER}, #{salesCount,jdbcType=INTEGER}, ",
"#{createTime,jdbcType=TIMESTAMP}, #{status,jdbcType=INTEGER}, ",
"#{operatorId,jdbcType=BIGINT}, #{operatorName,jdbcType=VARCHAR}, ",
"#{ext1,jdbcType=VARCHAR}, #{ext2,jdbcType=VARCHAR}, #{ext3,jdbcType=VARCHAR})"
})
@Options(useGeneratedKeys=true,keyProperty="id")
int insert(HighCouponAgentRel record);
@ -64,6 +64,7 @@ public interface HighCouponAgentRelMapper extends HighCouponAgentRelMapperExt {
@SelectProvider(type=HighCouponAgentRelSqlProvider.class, method="selectByExample")
@Results({
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),
@Result(column="parent_coupon_agent_id", property="parentCouponAgentId", jdbcType=JdbcType.BIGINT),
@Result(column="type", property="type", jdbcType=JdbcType.INTEGER),
@Result(column="coupon_name", property="couponName", jdbcType=JdbcType.VARCHAR),
@Result(column="sales_price", property="salesPrice", jdbcType=JdbcType.DECIMAL),
@ -83,13 +84,15 @@ public interface HighCouponAgentRelMapper extends HighCouponAgentRelMapperExt {
@Select({
"select",
"id, `type`, coupon_name, sales_price, coupon_id, agent_id, stock_count, sales_count, ",
"create_time, `status`, operator_id, operator_name, ext_1, ext_2, ext_3",
"id, parent_coupon_agent_id, `type`, coupon_name, sales_price, coupon_id, agent_id, ",
"stock_count, sales_count, create_time, `status`, operator_id, operator_name, ",
"ext_1, ext_2, ext_3",
"from high_coupon_agent_rel",
"where id = #{id,jdbcType=BIGINT}"
})
@Results({
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),
@Result(column="parent_coupon_agent_id", property="parentCouponAgentId", jdbcType=JdbcType.BIGINT),
@Result(column="type", property="type", jdbcType=JdbcType.INTEGER),
@Result(column="coupon_name", property="couponName", jdbcType=JdbcType.VARCHAR),
@Result(column="sales_price", property="salesPrice", jdbcType=JdbcType.DECIMAL),
@ -118,7 +121,8 @@ public interface HighCouponAgentRelMapper extends HighCouponAgentRelMapperExt {
@Update({
"update high_coupon_agent_rel",
"set `type` = #{type,jdbcType=INTEGER},",
"set parent_coupon_agent_id = #{parentCouponAgentId,jdbcType=BIGINT},",
"`type` = #{type,jdbcType=INTEGER},",
"coupon_name = #{couponName,jdbcType=VARCHAR},",
"sales_price = #{salesPrice,jdbcType=DECIMAL},",
"coupon_id = #{couponId,jdbcType=BIGINT},",

@ -28,6 +28,10 @@ public class HighCouponAgentRelSqlProvider {
SQL sql = new SQL();
sql.INSERT_INTO("high_coupon_agent_rel");
if (record.getParentCouponAgentId() != null) {
sql.VALUES("parent_coupon_agent_id", "#{parentCouponAgentId,jdbcType=BIGINT}");
}
if (record.getType() != null) {
sql.VALUES("`type`", "#{type,jdbcType=INTEGER}");
}
@ -94,6 +98,7 @@ public class HighCouponAgentRelSqlProvider {
} else {
sql.SELECT("id");
}
sql.SELECT("parent_coupon_agent_id");
sql.SELECT("`type`");
sql.SELECT("coupon_name");
sql.SELECT("sales_price");
@ -129,6 +134,10 @@ public class HighCouponAgentRelSqlProvider {
sql.SET("id = #{record.id,jdbcType=BIGINT}");
}
if (record.getParentCouponAgentId() != null) {
sql.SET("parent_coupon_agent_id = #{record.parentCouponAgentId,jdbcType=BIGINT}");
}
if (record.getType() != null) {
sql.SET("`type` = #{record.type,jdbcType=INTEGER}");
}
@ -194,6 +203,7 @@ public class HighCouponAgentRelSqlProvider {
sql.UPDATE("high_coupon_agent_rel");
sql.SET("id = #{record.id,jdbcType=BIGINT}");
sql.SET("parent_coupon_agent_id = #{record.parentCouponAgentId,jdbcType=BIGINT}");
sql.SET("`type` = #{record.type,jdbcType=INTEGER}");
sql.SET("coupon_name = #{record.couponName,jdbcType=VARCHAR}");
sql.SET("sales_price = #{record.salesPrice,jdbcType=DECIMAL}");
@ -218,6 +228,10 @@ public class HighCouponAgentRelSqlProvider {
SQL sql = new SQL();
sql.UPDATE("high_coupon_agent_rel");
if (record.getParentCouponAgentId() != null) {
sql.SET("parent_coupon_agent_id = #{parentCouponAgentId,jdbcType=BIGINT}");
}
if (record.getType() != null) {
sql.SET("`type` = #{type,jdbcType=INTEGER}");
}

@ -20,6 +20,16 @@ public class HighAgent implements Serializable {
*/
private Integer type;
/**
* 上级代理商id
*/
private Long parentId;
/**
* 上级代理商名称
*/
private String parentName;
/**
* 代理商编号
*/
@ -50,6 +60,9 @@ public class HighAgent implements Serializable {
*/
private Date createTime;
/**
* 状态0不可用1可用 2禁用
*/
private Integer status;
/**
@ -91,6 +104,22 @@ public class HighAgent implements Serializable {
this.type = type;
}
public Long getParentId() {
return parentId;
}
public void setParentId(Long parentId) {
this.parentId = parentId;
}
public String getParentName() {
return parentName;
}
public void setParentName(String parentName) {
this.parentName = parentName;
}
public String getAgentKey() {
return agentKey;
}
@ -209,6 +238,8 @@ public class HighAgent implements Serializable {
HighAgent other = (HighAgent) that;
return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
&& (this.getType() == null ? other.getType() == null : this.getType().equals(other.getType()))
&& (this.getParentId() == null ? other.getParentId() == null : this.getParentId().equals(other.getParentId()))
&& (this.getParentName() == null ? other.getParentName() == null : this.getParentName().equals(other.getParentName()))
&& (this.getAgentKey() == null ? other.getAgentKey() == null : this.getAgentKey().equals(other.getAgentKey()))
&& (this.getAgentName() == null ? other.getAgentName() == null : this.getAgentName().equals(other.getAgentName()))
&& (this.getAgentAddress() == null ? other.getAgentAddress() == null : this.getAgentAddress().equals(other.getAgentAddress()))
@ -230,6 +261,8 @@ public class HighAgent implements Serializable {
int result = 1;
result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
result = prime * result + ((getType() == null) ? 0 : getType().hashCode());
result = prime * result + ((getParentId() == null) ? 0 : getParentId().hashCode());
result = prime * result + ((getParentName() == null) ? 0 : getParentName().hashCode());
result = prime * result + ((getAgentKey() == null) ? 0 : getAgentKey().hashCode());
result = prime * result + ((getAgentName() == null) ? 0 : getAgentName().hashCode());
result = prime * result + ((getAgentAddress() == null) ? 0 : getAgentAddress().hashCode());
@ -254,6 +287,8 @@ public class HighAgent implements Serializable {
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", type=").append(type);
sb.append(", parentId=").append(parentId);
sb.append(", parentName=").append(parentName);
sb.append(", agentKey=").append(agentKey);
sb.append(", agentName=").append(agentName);
sb.append(", agentAddress=").append(agentAddress);

@ -245,6 +245,136 @@ public class HighAgentExample {
return (Criteria) this;
}
public Criteria andParentIdIsNull() {
addCriterion("parent_id is null");
return (Criteria) this;
}
public Criteria andParentIdIsNotNull() {
addCriterion("parent_id is not null");
return (Criteria) this;
}
public Criteria andParentIdEqualTo(Long value) {
addCriterion("parent_id =", value, "parentId");
return (Criteria) this;
}
public Criteria andParentIdNotEqualTo(Long value) {
addCriterion("parent_id <>", value, "parentId");
return (Criteria) this;
}
public Criteria andParentIdGreaterThan(Long value) {
addCriterion("parent_id >", value, "parentId");
return (Criteria) this;
}
public Criteria andParentIdGreaterThanOrEqualTo(Long value) {
addCriterion("parent_id >=", value, "parentId");
return (Criteria) this;
}
public Criteria andParentIdLessThan(Long value) {
addCriterion("parent_id <", value, "parentId");
return (Criteria) this;
}
public Criteria andParentIdLessThanOrEqualTo(Long value) {
addCriterion("parent_id <=", value, "parentId");
return (Criteria) this;
}
public Criteria andParentIdIn(List<Long> values) {
addCriterion("parent_id in", values, "parentId");
return (Criteria) this;
}
public Criteria andParentIdNotIn(List<Long> values) {
addCriterion("parent_id not in", values, "parentId");
return (Criteria) this;
}
public Criteria andParentIdBetween(Long value1, Long value2) {
addCriterion("parent_id between", value1, value2, "parentId");
return (Criteria) this;
}
public Criteria andParentIdNotBetween(Long value1, Long value2) {
addCriterion("parent_id not between", value1, value2, "parentId");
return (Criteria) this;
}
public Criteria andParentNameIsNull() {
addCriterion("parent_name is null");
return (Criteria) this;
}
public Criteria andParentNameIsNotNull() {
addCriterion("parent_name is not null");
return (Criteria) this;
}
public Criteria andParentNameEqualTo(String value) {
addCriterion("parent_name =", value, "parentName");
return (Criteria) this;
}
public Criteria andParentNameNotEqualTo(String value) {
addCriterion("parent_name <>", value, "parentName");
return (Criteria) this;
}
public Criteria andParentNameGreaterThan(String value) {
addCriterion("parent_name >", value, "parentName");
return (Criteria) this;
}
public Criteria andParentNameGreaterThanOrEqualTo(String value) {
addCriterion("parent_name >=", value, "parentName");
return (Criteria) this;
}
public Criteria andParentNameLessThan(String value) {
addCriterion("parent_name <", value, "parentName");
return (Criteria) this;
}
public Criteria andParentNameLessThanOrEqualTo(String value) {
addCriterion("parent_name <=", value, "parentName");
return (Criteria) this;
}
public Criteria andParentNameLike(String value) {
addCriterion("parent_name like", value, "parentName");
return (Criteria) this;
}
public Criteria andParentNameNotLike(String value) {
addCriterion("parent_name not like", value, "parentName");
return (Criteria) this;
}
public Criteria andParentNameIn(List<String> values) {
addCriterion("parent_name in", values, "parentName");
return (Criteria) this;
}
public Criteria andParentNameNotIn(List<String> values) {
addCriterion("parent_name not in", values, "parentName");
return (Criteria) this;
}
public Criteria andParentNameBetween(String value1, String value2) {
addCriterion("parent_name between", value1, value2, "parentName");
return (Criteria) this;
}
public Criteria andParentNameNotBetween(String value1, String value2) {
addCriterion("parent_name not between", value1, value2, "parentName");
return (Criteria) this;
}
public Criteria andAgentKeyIsNull() {
addCriterion("agent_key is null");
return (Criteria) this;

@ -71,10 +71,25 @@ public class HighCouponAgentCode extends HighCouponAgentCodeModel implements Ser
private String qrCode;
/**
* 状态1.待销售 2.未使用 3.已使用
* 状态0.删除 1.待销售 2.未使用 3.已使用 4. 分发代理商
*/
private Integer status;
/**
* 分配给卡券和代理商的id
*/
private Long assignCouponAgentId;
/**
* 分配代理商id
*/
private Long assignAgentId;
/**
* 分配代理商名称
*/
private String assignAgentName;
/**
* 备注
*/
@ -204,6 +219,30 @@ public class HighCouponAgentCode extends HighCouponAgentCodeModel implements Ser
this.status = status;
}
public Long getAssignCouponAgentId() {
return assignCouponAgentId;
}
public void setAssignCouponAgentId(Long assignCouponAgentId) {
this.assignCouponAgentId = assignCouponAgentId;
}
public Long getAssignAgentId() {
return assignAgentId;
}
public void setAssignAgentId(Long assignAgentId) {
this.assignAgentId = assignAgentId;
}
public String getAssignAgentName() {
return assignAgentName;
}
public void setAssignAgentName(String assignAgentName) {
this.assignAgentName = assignAgentName;
}
public String getRemark() {
return remark;
}
@ -292,6 +331,9 @@ public class HighCouponAgentCode extends HighCouponAgentCodeModel implements Ser
&& (this.getCouponCode() == null ? other.getCouponCode() == null : this.getCouponCode().equals(other.getCouponCode()))
&& (this.getQrCode() == null ? other.getQrCode() == null : this.getQrCode().equals(other.getQrCode()))
&& (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
&& (this.getAssignCouponAgentId() == null ? other.getAssignCouponAgentId() == null : this.getAssignCouponAgentId().equals(other.getAssignCouponAgentId()))
&& (this.getAssignAgentId() == null ? other.getAssignAgentId() == null : this.getAssignAgentId().equals(other.getAssignAgentId()))
&& (this.getAssignAgentName() == null ? other.getAssignAgentName() == null : this.getAssignAgentName().equals(other.getAssignAgentName()))
&& (this.getRemark() == null ? other.getRemark() == null : this.getRemark().equals(other.getRemark()))
&& (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
&& (this.getSalesTime() == null ? other.getSalesTime() == null : this.getSalesTime().equals(other.getSalesTime()))
@ -318,6 +360,9 @@ public class HighCouponAgentCode extends HighCouponAgentCodeModel implements Ser
result = prime * result + ((getCouponCode() == null) ? 0 : getCouponCode().hashCode());
result = prime * result + ((getQrCode() == null) ? 0 : getQrCode().hashCode());
result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
result = prime * result + ((getAssignCouponAgentId() == null) ? 0 : getAssignCouponAgentId().hashCode());
result = prime * result + ((getAssignAgentId() == null) ? 0 : getAssignAgentId().hashCode());
result = prime * result + ((getAssignAgentName() == null) ? 0 : getAssignAgentName().hashCode());
result = prime * result + ((getRemark() == null) ? 0 : getRemark().hashCode());
result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
result = prime * result + ((getSalesTime() == null) ? 0 : getSalesTime().hashCode());
@ -347,6 +392,9 @@ public class HighCouponAgentCode extends HighCouponAgentCodeModel implements Ser
sb.append(", couponCode=").append(couponCode);
sb.append(", qrCode=").append(qrCode);
sb.append(", status=").append(status);
sb.append(", assignCouponAgentId=").append(assignCouponAgentId);
sb.append(", assignAgentId=").append(assignAgentId);
sb.append(", assignAgentName=").append(assignAgentName);
sb.append(", remark=").append(remark);
sb.append(", createTime=").append(createTime);
sb.append(", salesTime=").append(salesTime);

@ -885,6 +885,196 @@ public class HighCouponAgentCodeExample {
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdIsNull() {
addCriterion("assign_coupon_agent_id is null");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdIsNotNull() {
addCriterion("assign_coupon_agent_id is not null");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdEqualTo(Long value) {
addCriterion("assign_coupon_agent_id =", value, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdNotEqualTo(Long value) {
addCriterion("assign_coupon_agent_id <>", value, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdGreaterThan(Long value) {
addCriterion("assign_coupon_agent_id >", value, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdGreaterThanOrEqualTo(Long value) {
addCriterion("assign_coupon_agent_id >=", value, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdLessThan(Long value) {
addCriterion("assign_coupon_agent_id <", value, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdLessThanOrEqualTo(Long value) {
addCriterion("assign_coupon_agent_id <=", value, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdIn(List<Long> values) {
addCriterion("assign_coupon_agent_id in", values, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdNotIn(List<Long> values) {
addCriterion("assign_coupon_agent_id not in", values, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdBetween(Long value1, Long value2) {
addCriterion("assign_coupon_agent_id between", value1, value2, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignCouponAgentIdNotBetween(Long value1, Long value2) {
addCriterion("assign_coupon_agent_id not between", value1, value2, "assignCouponAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdIsNull() {
addCriterion("assign_agent_id is null");
return (Criteria) this;
}
public Criteria andAssignAgentIdIsNotNull() {
addCriterion("assign_agent_id is not null");
return (Criteria) this;
}
public Criteria andAssignAgentIdEqualTo(Long value) {
addCriterion("assign_agent_id =", value, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdNotEqualTo(Long value) {
addCriterion("assign_agent_id <>", value, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdGreaterThan(Long value) {
addCriterion("assign_agent_id >", value, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdGreaterThanOrEqualTo(Long value) {
addCriterion("assign_agent_id >=", value, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdLessThan(Long value) {
addCriterion("assign_agent_id <", value, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdLessThanOrEqualTo(Long value) {
addCriterion("assign_agent_id <=", value, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdIn(List<Long> values) {
addCriterion("assign_agent_id in", values, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdNotIn(List<Long> values) {
addCriterion("assign_agent_id not in", values, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdBetween(Long value1, Long value2) {
addCriterion("assign_agent_id between", value1, value2, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentIdNotBetween(Long value1, Long value2) {
addCriterion("assign_agent_id not between", value1, value2, "assignAgentId");
return (Criteria) this;
}
public Criteria andAssignAgentNameIsNull() {
addCriterion("assign_agent_name is null");
return (Criteria) this;
}
public Criteria andAssignAgentNameIsNotNull() {
addCriterion("assign_agent_name is not null");
return (Criteria) this;
}
public Criteria andAssignAgentNameEqualTo(String value) {
addCriterion("assign_agent_name =", value, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameNotEqualTo(String value) {
addCriterion("assign_agent_name <>", value, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameGreaterThan(String value) {
addCriterion("assign_agent_name >", value, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameGreaterThanOrEqualTo(String value) {
addCriterion("assign_agent_name >=", value, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameLessThan(String value) {
addCriterion("assign_agent_name <", value, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameLessThanOrEqualTo(String value) {
addCriterion("assign_agent_name <=", value, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameLike(String value) {
addCriterion("assign_agent_name like", value, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameNotLike(String value) {
addCriterion("assign_agent_name not like", value, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameIn(List<String> values) {
addCriterion("assign_agent_name in", values, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameNotIn(List<String> values) {
addCriterion("assign_agent_name not in", values, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameBetween(String value1, String value2) {
addCriterion("assign_agent_name between", value1, value2, "assignAgentName");
return (Criteria) this;
}
public Criteria andAssignAgentNameNotBetween(String value1, String value2) {
addCriterion("assign_agent_name not between", value1, value2, "assignAgentName");
return (Criteria) this;
}
public Criteria andRemarkIsNull() {
addCriterion("remark is null");
return (Criteria) this;

@ -21,6 +21,11 @@ public class HighCouponAgentRel extends HighCouponAgentRelModel implements Seria
*/
private Long id;
/**
* 上级关系
*/
private Long parentCouponAgentId;
/**
* 类型 1销售码 2兑换码
*/
@ -92,6 +97,14 @@ public class HighCouponAgentRel extends HighCouponAgentRelModel implements Seria
this.id = id;
}
public Long getParentCouponAgentId() {
return parentCouponAgentId;
}
public void setParentCouponAgentId(Long parentCouponAgentId) {
this.parentCouponAgentId = parentCouponAgentId;
}
public Integer getType() {
return type;
}
@ -217,6 +230,7 @@ public class HighCouponAgentRel extends HighCouponAgentRelModel implements Seria
}
HighCouponAgentRel other = (HighCouponAgentRel) that;
return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
&& (this.getParentCouponAgentId() == null ? other.getParentCouponAgentId() == null : this.getParentCouponAgentId().equals(other.getParentCouponAgentId()))
&& (this.getType() == null ? other.getType() == null : this.getType().equals(other.getType()))
&& (this.getCouponName() == null ? other.getCouponName() == null : this.getCouponName().equals(other.getCouponName()))
&& (this.getSalesPrice() == null ? other.getSalesPrice() == null : this.getSalesPrice().equals(other.getSalesPrice()))
@ -238,6 +252,7 @@ public class HighCouponAgentRel extends HighCouponAgentRelModel implements Seria
final int prime = 31;
int result = 1;
result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
result = prime * result + ((getParentCouponAgentId() == null) ? 0 : getParentCouponAgentId().hashCode());
result = prime * result + ((getType() == null) ? 0 : getType().hashCode());
result = prime * result + ((getCouponName() == null) ? 0 : getCouponName().hashCode());
result = prime * result + ((getSalesPrice() == null) ? 0 : getSalesPrice().hashCode());
@ -262,6 +277,7 @@ public class HighCouponAgentRel extends HighCouponAgentRelModel implements Seria
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", parentCouponAgentId=").append(parentCouponAgentId);
sb.append(", type=").append(type);
sb.append(", couponName=").append(couponName);
sb.append(", salesPrice=").append(salesPrice);

@ -186,6 +186,66 @@ public class HighCouponAgentRelExample {
return (Criteria) this;
}
public Criteria andParentCouponAgentIdIsNull() {
addCriterion("parent_coupon_agent_id is null");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdIsNotNull() {
addCriterion("parent_coupon_agent_id is not null");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdEqualTo(Long value) {
addCriterion("parent_coupon_agent_id =", value, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdNotEqualTo(Long value) {
addCriterion("parent_coupon_agent_id <>", value, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdGreaterThan(Long value) {
addCriterion("parent_coupon_agent_id >", value, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdGreaterThanOrEqualTo(Long value) {
addCriterion("parent_coupon_agent_id >=", value, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdLessThan(Long value) {
addCriterion("parent_coupon_agent_id <", value, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdLessThanOrEqualTo(Long value) {
addCriterion("parent_coupon_agent_id <=", value, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdIn(List<Long> values) {
addCriterion("parent_coupon_agent_id in", values, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdNotIn(List<Long> values) {
addCriterion("parent_coupon_agent_id not in", values, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdBetween(Long value1, Long value2) {
addCriterion("parent_coupon_agent_id between", value1, value2, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andParentCouponAgentIdNotBetween(Long value1, Long value2) {
addCriterion("parent_coupon_agent_id not between", value1, value2, "parentCouponAgentId");
return (Criteria) this;
}
public Criteria andTypeIsNull() {
addCriterion("`type` is null");
return (Criteria) this;

@ -25,7 +25,7 @@ public interface HighAgentService {
* @throws Exception 抛出异常
*/
List<HighAgent> getListAgentMsg(Map<String , String> map) throws Exception;
List<HighAgent> getListAgentMsg(Map<String , Object> map) throws Exception;
/**
*
@ -61,6 +61,17 @@ public interface HighAgentService {
*/
void updateAgentMsg(HighAgentModel highAgentModel) throws Exception;
/**
*
* @Title: insertUser
* @Description: 新增代理商信息
* @author: Sum1Dream
* @Date: 2021/03/09 11:23
* @param: [highUser] 用户信息
* @return: com.hai.entity.HighAgentMsg
*/
void insertChildAgent(HighAgent agent) throws Exception ;
/**
*
* @Title: insertUser

@ -3,6 +3,7 @@ package com.hai.service;
import com.hai.entity.HighCouponAgentCode;
import com.hai.entity.HighCouponAgentRecord;
import com.hai.entity.HighCouponAgentRel;
import com.hai.entity.HighCouponCode;
import org.apache.ibatis.annotations.Param;
import java.security.PrivateKey;
@ -37,6 +38,13 @@ public interface HighCouponAgentService {
**/
HighCouponAgentRel getRelByCouponAgent(Long couponId,Long agentId, Integer type);
/**
* 根据id查询关系
* @param couponAgentRelId
* @return
*/
HighCouponAgentRel getRelById(Long couponAgentRelId);
/**
* @Author 胡锐
* @Description 查询卡券与代理商关系列表
@ -135,4 +143,10 @@ public interface HighCouponAgentService {
*/
Map<String, Object> pushGzSinopec(Long couponAgentRelId, String phone, String remark) throws Exception;
/**
* 查询代理商未分配的 销售码兑换码
* @param couponAgentRelId
* @return
*/
List<HighCouponAgentCode> getNoSaleCode(Long couponAgentRelId);
}

@ -428,4 +428,9 @@ public interface HighOrderService {
*/
GasOrderModel getGasOrderDetail(String orderNo);
/**
* 打印加油订单
* @param gasId
*/
void printGasOrder(Long gasId, String orderNo);
}

@ -8,8 +8,11 @@ import com.hai.entity.SecUser;
import com.hai.model.HighAgentModel;
import com.hai.service.HighAgentService;
import com.hai.service.SecUserService;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
@ -31,27 +34,36 @@ public class HighAgentServiceImpl implements HighAgentService {
private SecUserService secUserService;
@Override
public List<HighAgent> getListAgentMsg(Map<String, String> map) throws Exception {
public List<HighAgent> getListAgentMsg(Map<String, Object> map) throws Exception {
HighAgentExample example = new HighAgentExample();
HighAgentExample.Criteria criteria = example.createCriteria();
if (StringUtils.isNotBlank(map.get("agentName"))) {
if (MapUtils.getLong(map, "parentAgentId") != null) {
criteria.andParentIdEqualTo(MapUtils.getLong(map, "parentAgentId"));
}
if (StringUtils.isNotBlank(MapUtils.getString(map, "agentName"))) {
criteria.andAgentNameLike("%" + map.get("agentName") + "%");
}
if (StringUtils.isNotBlank(map.get("agentPhone"))) {
criteria.andAgentPhoneEqualTo( map.get("agentPhone"));
if (StringUtils.isNotBlank(MapUtils.getString(map, "agentPhone"))) {
criteria.andAgentPhoneEqualTo(MapUtils.getString(map, "agentPhone"));
}
if (StringUtils.isNotBlank(map.get("status"))) {
criteria.andStatusEqualTo(Integer.valueOf(map.get("status")));
if (MapUtils.getInteger(map, "status") != null) {
criteria.andStatusEqualTo(MapUtils.getInteger(map, "status"));
}
if (StringUtils.isNotBlank(map.get("type"))) {
criteria.andTypeEqualTo(Integer.valueOf(map.get("type")));
if (MapUtils.getInteger(map, "type") != null) {
criteria.andTypeEqualTo(MapUtils.getInteger(map, "type"));
}
if (StringUtils.isNotBlank(map.get("operatorId"))) {
criteria.andOperatorIdEqualTo(Long.valueOf(map.get("operatorId")));
if (MapUtils.getLong(map, "operatorId") != null) {
criteria.andOperatorIdEqualTo(MapUtils.getLong(map, "operatorId"));
}
example.setOrderByClause("create_time desc");
return highAgentMapper.selectByExample(example);
}
@ -89,6 +101,25 @@ public class HighAgentServiceImpl implements HighAgentService {
}
}
@Override
@Transactional(propagation= Propagation.REQUIRES_NEW)
public void insertChildAgent(HighAgent agent) throws Exception {
highAgentMapper.insert(agent);
SecUser secUser = new SecUser();
secUser.setUserName(agent.getUserName());
secUser.setLoginName(agent.getAgentPhone());
secUser.setPassword(MD5Util.encode("123456".getBytes()));
secUser.setAdminFlag(1);
secUser.setStatus(1);
secUser.setRoleId(6L);
secUser.setObjectType(4);
secUser.setObjectId(agent.getId());
secUser.setCreateTime(new Date());
secUser.setUpdateTime(new Date());
secUserService.addUser(secUser);
}
@Override
public void insertAgentMsg(HighAgentModel highAgentModel) throws Exception {
highAgentMapper.insert(highAgentModel);

@ -72,7 +72,6 @@ public class HighCouponAgentServiceImpl implements HighCouponAgentService {
@Override
@Transactional(propagation= Propagation.REQUIRES_NEW)
public void assignCouponAgent(HighCouponAgentRel highCouponAgentRel,Integer stockCount) {
if (highCouponAgentRel.getId() != null) {
highCouponAgentRelMapper.updateByPrimaryKey(highCouponAgentRel);
} else {
@ -99,51 +98,92 @@ public class HighCouponAgentServiceImpl implements HighCouponAgentService {
record.setCreateTime(new Date());
highCouponAgentRecordMapper.insert(record);
if (highCouponAgentRel.getType() == 1) {
// 查询未销售的卡券
List<HighCouponCode> codeList = highCouponCodeService.getNoSaleCode(highCouponAgentRel.getCouponId());
if (stockCount > codeList.size()) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法分配,分配数量超过库存数量");
if (highCouponAgentRel.getParentCouponAgentId() == null) {
if (highCouponAgentRel.getType() == 1) {
// 查询未销售的卡券
List<HighCouponCode> codeList = highCouponCodeService.getNoSaleCode(highCouponAgentRel.getCouponId());
if (stockCount > codeList.size()) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法分配,分配数量超过库存数量");
}
List<HighCouponCode> assignCouponCodeList = codeList.stream().limit(stockCount).collect(Collectors.toList());
HighCouponAgentCode highCouponAgentCode;
for (HighCouponCode code : assignCouponCodeList) {
code.setAgentId(highCouponAgentRel.getAgentId());
code.setIsAssignAgent(true);
highCouponCodeService.updateCouponCode(code);
highCouponAgentCode = new HighCouponAgentCode();
highCouponAgentCode.setType(highCouponAgentRel.getType());
highCouponAgentCode.setCouponAgentId(highCouponAgentRel.getId());
highCouponAgentCode.setCouponAgentRecordId(record.getId());
highCouponAgentCode.setCouponId(code.getCouponId());
highCouponAgentCode.setAgentId(highCouponAgentRel.getAgentId());
highCouponAgentCode.setCouponCodeId(code.getId());
highCouponAgentCode.setCouponCode(code.getSalesCode());
highCouponAgentCode.setQrCode(code.getExt1());
highCouponAgentCode.setStatus(1);
highCouponAgentCode.setCreateTime(new Date());
highCouponAgentCode.setOperatorId(highCouponAgentRel.getOperatorId());
highCouponAgentCode.setOperatorName(highCouponAgentRel.getOperatorName());
highCouponAgentCodeMapper.insert(highCouponAgentCode);
}
}
List<HighCouponCode> assignCouponCodeList = codeList.stream().limit(stockCount).collect(Collectors.toList());
HighCouponAgentCode highCouponAgentCode;
for (HighCouponCode code : assignCouponCodeList) {
code.setAgentId(highCouponAgentRel.getAgentId());
code.setIsAssignAgent(true);
highCouponCodeService.updateCouponCode(code);
highCouponAgentCode = new HighCouponAgentCode();
highCouponAgentCode.setType(highCouponAgentRel.getType());
highCouponAgentCode.setCouponAgentId(highCouponAgentRel.getId());
highCouponAgentCode.setCouponAgentRecordId(record.getId());
highCouponAgentCode.setCouponId(code.getCouponId());
highCouponAgentCode.setAgentId(highCouponAgentRel.getAgentId());
highCouponAgentCode.setCouponCodeId(code.getId());
highCouponAgentCode.setCouponCode(code.getSalesCode());
highCouponAgentCode.setQrCode(code.getExt1());
highCouponAgentCode.setStatus(1);
highCouponAgentCode.setCreateTime(new Date());
highCouponAgentCode.setOperatorId(highCouponAgentRel.getOperatorId());
highCouponAgentCode.setOperatorName(highCouponAgentRel.getOperatorName());
highCouponAgentCodeMapper.insert(highCouponAgentCode);
if (highCouponAgentRel.getType() == 2) {
HighCouponAgentCode highCouponAgentCode;
for (int i = 0; i < stockCount; i++) {
highCouponAgentCode = new HighCouponAgentCode();
highCouponAgentCode.setType(highCouponAgentRel.getType());
highCouponAgentCode.setCouponAgentId(highCouponAgentRel.getId());
highCouponAgentCode.setCouponAgentRecordId(record.getId());
highCouponAgentCode.setCouponId(highCoupon.getId());
highCouponAgentCode.setAgentId(highCouponAgentRel.getAgentId());
highCouponAgentCode.setConvertCode(generateConvertCode(highCouponAgentRel.getId()));
highCouponAgentCode.setStatus(1);
highCouponAgentCode.setCreateTime(new Date());
highCouponAgentCode.setOperatorId(highCouponAgentRel.getOperatorId());
highCouponAgentCode.setOperatorName(highCouponAgentRel.getOperatorName());
highCouponAgentCodeMapper.insert(highCouponAgentCode);
}
}
}
if (highCouponAgentRel.getType() == 2) {
HighCouponAgentCode highCouponAgentCode;
if (highCouponAgentRel.getParentCouponAgentId() != null) {
// 父级代理商库存
HighCouponAgentRel parentRel = getRelById(highCouponAgentRel.getParentCouponAgentId());
if (parentRel == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到代理商");
}
parentRel.setStockCount(parentRel.getStockCount() - stockCount);
parentRel.setSalesCount(parentRel.getSalesCount() + stockCount);
highCouponAgentRelMapper.updateByPrimaryKey(parentRel);
// 查询父代理商未分配的码值
List<HighCouponAgentCode> codeList = getNoSaleCode(parentRel.getId());
if (codeList.size() < stockCount) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "库存数量不足");
}
for (int i = 0; i < stockCount; i++) {
highCouponAgentCode = new HighCouponAgentCode();
highCouponAgentCode.setType(highCouponAgentRel.getType());
highCouponAgentCode.setCouponAgentId(highCouponAgentRel.getId());
highCouponAgentCode.setCouponAgentRecordId(record.getId());
highCouponAgentCode.setCouponId(highCoupon.getId());
highCouponAgentCode.setAgentId(highCouponAgentRel.getAgentId());
highCouponAgentCode.setConvertCode(generateConvertCode(highCouponAgentRel.getId()));
highCouponAgentCode.setStatus(1);
highCouponAgentCode.setCreateTime(new Date());
highCouponAgentCode.setOperatorId(highCouponAgentRel.getOperatorId());
highCouponAgentCode.setOperatorName(highCouponAgentRel.getOperatorName());
highCouponAgentCodeMapper.insert(highCouponAgentCode);
HighCouponAgentCode code = codeList.get(i);
code.setAssignCouponAgentId(highCouponAgentRel.getId());
code.setAssignAgentId(highAgent.getId());
code.setAssignAgentName(highAgent.getAgentName());
code.setStatus(4);
highCouponAgentCodeMapper.updateByPrimaryKey(code);
code.setId(null);
code.setAssignCouponAgentId(null);
code.setAssignAgentId(null);
code.setAssignAgentName(null);
code.setStatus(1);
code.setAgentId(highCouponAgentRel.getAgentId());
code.setCouponAgentId(highCouponAgentRel.getId());
code.setCouponAgentRecordId(record.getId());
code.setCreateTime(new Date());
code.setOperatorId(highCouponAgentRel.getOperatorId());
code.setOperatorName(highCouponAgentRel.getOperatorName());
highCouponAgentCodeMapper.insert(code);
}
}
}
@ -164,6 +204,11 @@ public class HighCouponAgentServiceImpl implements HighCouponAgentService {
return null;
}
@Override
public HighCouponAgentRel getRelById(Long couponAgentRelId) {
return highCouponAgentRelMapper.selectByPrimaryKey(couponAgentRelId);
}
@Override
public List<HighCouponAgentRel> getCouponAgentList(Map<String, Object> map) {
HighCouponAgentRelExample example = new HighCouponAgentRelExample();
@ -617,4 +662,13 @@ public class HighCouponAgentServiceImpl implements HighCouponAgentService {
map.put("couponAgentCode", convertCode);
return map;
}
@Override
public List<HighCouponAgentCode> getNoSaleCode(Long couponAgentRelId) {
HighCouponAgentCodeExample example = new HighCouponAgentCodeExample();
example.createCriteria().andStatusEqualTo(1).andCouponAgentIdEqualTo(couponAgentRelId);
example.setOrderByClause("create_time desc");
return highCouponAgentCodeMapper.selectByExample(example);
}
}

@ -17,6 +17,7 @@ import com.hai.msg.entity.MsgTopic;
import com.hai.service.*;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.eclipse.paho.client.mqttv3.MqttClient;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation;
@ -39,6 +40,9 @@ public class HighOrderServiceImpl implements HighOrderService {
@Resource
private HighOrderMapper highOrderMapper;
@Resource
private HighDeviceService deviceService;
@Resource
private HighOrderMapperExt highOrderMapperExt;
@ -114,6 +118,9 @@ public class HighOrderServiceImpl implements HighOrderService {
@Resource
private RedisTemplate redisTemplate;
@Resource
private MqttProviderConfig mqttProviderConfig;
@Resource
private WebSocket webSocket;
@ -378,40 +385,9 @@ public class HighOrderServiceImpl implements HighOrderService {
// 扣预存款
this.redisTemplate.boundListOps(MsgTopic.MerStoreAccount.getName()).leftPush(pushParam);
}
if (StringUtils.isNotBlank(store.getDeviceSn())) {
new Thread(() -> {
try {
SpPrinterConfig sp = new SpPrinterConfig();
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilCashierStubTemp(
highChildOrder.getGoodsName(),
highOrder.getOrderNo(),
DateUtil.date2String(highOrder.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
highOrder.getTotalPrice().toString()
), 1);
Thread.sleep(6000);
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
highChildOrder.getGoodsName(),
highOrder.getOrderNo(),
DateUtil.date2String(highOrder.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
highOrder.getTotalPrice().toString()
), 1);
} catch (Exception e) {
e.printStackTrace();
}
}).start();
}
new Thread(() -> {
printGasOrder(store.getId(), highOrder.getOrderNo());
}).start();
} else if (store.getSourceType().equals(2)) {
// 推送团油订单
Map<String,Object> paramMap = new HashMap<>();
@ -677,38 +653,9 @@ public class HighOrderServiceImpl implements HighOrderService {
// 扣预存款
this.redisTemplate.boundListOps(MsgTopic.MerStoreAccount.getName()).leftPush(pushParam);
}
if (StringUtils.isNotBlank(store.getDeviceSn())) {
new Thread(() -> {
try {
SpPrinterConfig sp = new SpPrinterConfig();
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilCashierStubTemp(
highChildOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
Thread.sleep(6000);
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
highChildOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
} catch (Exception e) {
e.printStackTrace();
}
}).start();
}
new Thread(() -> {
printGasOrder(store.getId(), order.getOrderNo());
}).start();
} else if (store.getSourceType().equals(2)) {
// 推送团油订单
@ -1012,38 +959,10 @@ public class HighOrderServiceImpl implements HighOrderService {
// 扣预存款
this.redisTemplate.boundListOps(MsgTopic.MerStoreAccount.getName()).leftPush(pushParam);
}
if (StringUtils.isNotBlank(store.getDeviceSn())) {
new Thread(() -> {
try {
SpPrinterConfig sp = new SpPrinterConfig();
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilCashierStubTemp(
highChildOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
Thread.sleep(6000);
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
highChildOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
} catch (Exception e) {
e.printStackTrace();
}
}).start();
}
new Thread(() -> {
printGasOrder(store.getId(), order.getOrderNo());
}).start();
} else if (store.getSourceType().equals(2)) {
// 推送团油订单
@ -1742,6 +1661,95 @@ public class HighOrderServiceImpl implements HighOrderService {
return null;
}
@Override
public void printGasOrder(Long gasId, String orderNo) {
// 查询订单
HighOrder order = getOrderByOrderNo(orderNo);
if (order == null) {
return;
}
for (HighChildOrder childOrder : order.getHighChildOrderList()) {
if (childOrder.getGoodsType().equals(3)) {
// 查询油站云打印设备
List<HighDevice> deviceList = deviceService.getDeviceListByStoreId(gasId);
for (HighDevice device : deviceList) {
if (device.getType().equals(DeviceTypeEnum.type1.getType())) {
new Thread(() -> {
try {
SpPrinterConfig sp = new SpPrinterConfig();
sp.print(device.getDeviceSn(),
SpPrinterTemplate.oilCashierStubTemp(
childOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
childOrder.getGasGunNo(),
childOrder.getGasOilNo(),
childOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
Thread.sleep(6000);
sp.print(device.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
childOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
childOrder.getGasGunNo(),
childOrder.getGasOilNo(),
childOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
} catch (Exception e) {
e.printStackTrace();
}
}).start();
}
if (device.getType().equals(DeviceTypeEnum.type2.getType())) {
new Thread(() -> {
try {
String oilCashierStubTempText = ZkcPrinterTemplate.oilCashierStubTemp(
childOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
childOrder.getGasGunNo(),
childOrder.getGasOilNo(),
childOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
);
mqttProviderConfig.publish(2, false, device.getDeviceImei(), ZkcPrinterTemplate.hexStringToString(oilCashierStubTempText));
String oilClientStubTempText = ZkcPrinterTemplate.oilClientStubTemp(
childOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
childOrder.getGasGunNo(),
childOrder.getGasOilNo(),
childOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
);
mqttProviderConfig.publish(2, false, device.getDeviceImei(), ZkcPrinterTemplate.hexStringToString(oilClientStubTempText));
} catch (Exception e) {
e.getMessage();
}
}).start();
}
}
}
}
}
public String priceName(Integer num) {
switch (num) {

@ -299,40 +299,9 @@ public class GoodsOrderServiceImpl implements PayService {
// 扣预存款
this.redisTemplate.boundListOps(MsgTopic.MerStoreAccount.getName()).leftPush(pushParam);
}
if (StringUtils.isNotBlank(store.getDeviceSn())) {
new Thread(() -> {
try {
SpPrinterConfig sp = new SpPrinterConfig();
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilCashierStubTemp(
highChildOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
Thread.sleep(6000);
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
highChildOrder.getGoodsName(),
order.getOrderNo(),
DateUtil.date2String(order.getPayTime(), "yyyy-MM-dd HH:mm:ss"),
"嗨森逛",
highChildOrder.getGasGunNo(),
highChildOrder.getGasOilNo(),
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
} catch (Exception e) {
e.printStackTrace();
}
}).start();
}
new Thread(() -> {
highOrderService.printGasOrder(store.getId(), order.getOrderNo());
}).start();
} else if (store.getSourceType().equals(2)) {
// 推送团油订单

Loading…
Cancel
Save