修改话费订单导出

袁野 3 years ago
commit eff9736db2
  1. 1
      .gitignore
  2. 37
      hai-bweb/src/main/java/com/bweb/controller/CommonController.java
  3. 249
      hai-bweb/src/main/java/com/bweb/controller/HighDeviceController.java
  4. 60
      hai-bweb/src/main/java/com/bweb/controller/HighGasController.java
  5. 42
      hai-bweb/src/main/java/com/bweb/controller/HighMerchantTripartitePlatformController.java
  6. 3
      hai-bweb/src/main/java/com/bweb/controller/HighOpenApiController.java
  7. 3
      hai-bweb/src/main/java/com/bweb/controller/HighOrderController.java
  8. 2
      hai-bweb/src/main/java/com/bweb/controller/HighTestController.java
  9. 1
      hai-bweb/src/main/java/com/bweb/controller/OutRechargeOrderController.java
  10. 3
      hai-bweb/src/main/java/com/bweb/excelListener/ImportRechargeOrderListener.java
  11. 22
      hai-bweb/src/main/java/com/bweb/model/ExportOutRechargeOrder.java
  12. 14
      hai-bweb/src/main/resources/dev/application.yml
  13. 32
      hai-cweb/src/main/java/com/cweb/controller/HighGasController.java
  14. 2
      hai-cweb/src/main/java/com/cweb/controller/HighTestController.java
  15. 15
      hai-cweb/src/main/java/com/cweb/controller/pay/OrderController.java
  16. 68
      hai-cweb/src/main/java/com/cweb/controller/pay/UnionPayController.java
  17. 5
      hai-cweb/src/main/java/com/cweb/controller/pay/WechatPayController.java
  18. 15
      hai-cweb/src/main/resources/dev/application.yml
  19. 4
      hai-service/pom.xml
  20. 4
      hai-service/src/main/java/com/hai/common/utils/HttpsUtils.java
  21. 6
      hai-service/src/main/java/com/hai/config/CommonSysConfig.java
  22. 35
      hai-service/src/main/java/com/hai/config/HuiLianTongConfig.java
  23. 39
      hai-service/src/main/java/com/hai/config/MqttProviderCallBack.java
  24. 208
      hai-service/src/main/java/com/hai/config/MqttProviderConfig.java
  25. 219
      hai-service/src/main/java/com/hai/config/PrintDemo.java
  26. 5
      hai-service/src/main/java/com/hai/config/RechargeConfig.java
  27. 4
      hai-service/src/main/java/com/hai/config/SpPrinterConfig.java
  28. 6
      hai-service/src/main/java/com/hai/config/WxOrderConfig.java
  29. 155
      hai-service/src/main/java/com/hai/dao/HighDeviceMapper.java
  30. 7
      hai-service/src/main/java/com/hai/dao/HighDeviceMapperExt.java
  31. 430
      hai-service/src/main/java/com/hai/dao/HighDeviceSqlProvider.java
  32. 11
      hai-service/src/main/java/com/hai/dao/HighMerchantTripartitePlatformMapper.java
  33. 28
      hai-service/src/main/java/com/hai/dao/HighMerchantTripartitePlatformSqlProvider.java
  34. 2
      hai-service/src/main/java/com/hai/dao/HighOrderMapperExt.java
  35. 2
      hai-service/src/main/java/com/hai/dao/OutRechargeOrderMapperExt.java
  36. 344
      hai-service/src/main/java/com/hai/entity/HighDevice.java
  37. 1473
      hai-service/src/main/java/com/hai/entity/HighDeviceExample.java
  38. 32
      hai-service/src/main/java/com/hai/entity/HighMerchantTripartitePlatform.java
  39. 140
      hai-service/src/main/java/com/hai/entity/HighMerchantTripartitePlatformExample.java
  40. 44
      hai-service/src/main/java/com/hai/enum_type/DeviceTypeEnum.java
  41. 22
      hai-service/src/main/java/com/hai/model/OutRechargeOrderModel.java
  42. 42
      hai-service/src/main/java/com/hai/service/HighDeviceService.java
  43. 7
      hai-service/src/main/java/com/hai/service/HighMerchantStoreService.java
  44. 9
      hai-service/src/main/java/com/hai/service/SecConfigService.java
  45. 77
      hai-service/src/main/java/com/hai/service/impl/HighDeviceServiceImpl.java
  46. 2
      hai-service/src/main/java/com/hai/service/impl/HighGasOilPriceOfficialServiceImpl.java
  47. 2
      hai-service/src/main/java/com/hai/service/impl/HighGasOilPriceTaskServiceImpl.java
  48. 7
      hai-service/src/main/java/com/hai/service/impl/HighMerchantStoreServiceImpl.java
  49. 20
      hai-service/src/main/java/com/hai/service/impl/HighOrderServiceImpl.java
  50. 3
      hai-service/src/main/java/com/hai/service/impl/HltUnionCardVipServiceImpl.java
  51. 71
      hai-service/src/main/java/com/hai/service/impl/OutRechargeOrderServiceImpl.java
  52. 5
      hai-service/src/main/java/com/hai/service/impl/SecConfigServiceImpl.java
  53. 6
      hai-service/src/main/java/com/hai/service/pay/impl/GoodsOrderServiceImpl.java

1
.gitignore vendored

@ -27,6 +27,7 @@ hai-schedule/target/*
hai-schedule/log/*
hai-schedule/hai-schedule.iml
v1/target/*
v1/log/*
v1/hai-schedule.iml

@ -1,6 +1,9 @@
package com.bweb.controller;
import com.alibaba.fastjson.JSONObject;
import com.hai.common.exception.ErrorCode;
import com.hai.common.exception.ErrorHelp;
import com.hai.common.exception.SysCode;
import com.hai.common.utils.DateUtil;
import com.hai.common.utils.ResponseMsgUtil;
import com.hai.config.TuanYouConfig;
@ -11,6 +14,7 @@ import com.hai.service.CommonService;
import com.hai.service.SecConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.*;
@ -144,6 +148,39 @@ public class CommonController {
}
}
@RequestMapping(value="/editConfig",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "添加配置")
public ResponseData editConfig(@RequestBody JSONObject body) {
try {
if (body == null
|| StringUtils.isBlank(body.getString("codeType"))
|| StringUtils.isBlank(body.getString("codeValue"))
) {
log.error("OrderController --> orderToPay() ERROR", "");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
SecConfig config = secConfigService.findByCodeType(body.getString("codeType"));
if (config == null) {
config = new SecConfig();
config.setCodeType(body.getString("codeType"));
config.setCodeValue(body.getString("codeValue"));
secConfigService.insertSecConfig(config);
} else {
config.setCodeValue(body.getString("codeValue"));
secConfigService.updateSecConfig(config);
}
return ResponseMsgUtil.success("修改成功");
} catch (Exception e) {
log.error("CommonController --> editConfig() error!", e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/updateDictionary",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "根据 码值类型 查询数据字典")

@ -0,0 +1,249 @@
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.config.SpPrinterConfig;
import com.hai.entity.*;
import com.hai.enum_type.DeviceTypeEnum;
import com.hai.model.ResponseData;
import com.hai.model.UserInfoModel;
import com.hai.service.BsCompanyService;
import com.hai.service.HighDeviceService;
import com.hai.service.HighMerchantService;
import com.hai.service.HighMerchantStoreService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.Map;
@Controller
@RequestMapping(value = "/device")
@Api(value = "卡卷接口")
public class HighDeviceController {
private static Logger log = LoggerFactory.getLogger(HighCouponController.class);
@Resource
private UserCenter userCenter;
@Resource
private HighDeviceService deviceService;
@Resource
private HighMerchantService merchantService;
@Resource
private HighMerchantStoreService merchantStoreService;
@Resource
private BsCompanyService companyService;
@RequestMapping(value="/editDevice",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "编辑设备")
public ResponseData editDevice(@RequestBody HighDevice body) {
try {
if (body.getMerStoreId() == null
|| body.getType() == null
|| StringUtils.isBlank(body.getDeviceName())
) {
log.error("HighDeviceController -> editDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
if (DeviceTypeEnum.getNameByType(body.getType()) == null) {
log.error("HighDeviceController -> editDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的设备类型");
}
if (body.getType().equals(DeviceTypeEnum.type1.getType())
&& (StringUtils.isBlank(body.getDeviceSn()) || StringUtils.isBlank(body.getDeviceKey()))) {
log.error("HighDeviceController -> editDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
} else if (body.getType().equals(DeviceTypeEnum.type2.getType())
&& (StringUtils.isBlank(body.getDeviceImei()) || StringUtils.isBlank(body.getDeviceIccid()))) {
log.error("HighDeviceController -> editDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
HighDevice device;
if (body.getId() != null) {
// 查询设备
device = deviceService.getDetailById(body.getId());
if (device == null) {
log.error("HighDeviceController -> editDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
} else {
device = new HighDevice();
}
// 查询门店
HighMerchantStore store = merchantStoreService.getDetailById(body.getMerStoreId());
if (store == null) {
log.error("HighDeviceController -> editDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的门店");
}
// 查询商户
HighMerchant merchant = merchantService.getDetailById(store.getMerchantId());
if (merchant == null) {
log.error("HighDeviceController -> editDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的商户");
}
// 查询分公司
BsCompany company = companyService.getCompanyById(merchant.getCompanyId());
if (company == null) {
log.error("HighDeviceController -> editDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的分公司");
}
if (body.getType().equals(DeviceTypeEnum.type1.getType())) {
SpPrinterConfig sp = new SpPrinterConfig();
JSONObject jsonObject = JSONObject.parseObject(sp.addPrinter(body.getDeviceSn(), body.getDeviceKey(), body.getDeviceName()));
if (!jsonObject.getInteger("errorcode").equals(0)) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, jsonObject.getString("errormsg"));
}
}
device.setCompanyId(company.getId());
device.setCompanyName(company.getName());
device.setMerId(merchant.getId());
device.setMerName(merchant.getMerchantName());
device.setMerStoreId(store.getId());
device.setMerStoreName(store.getStoreName());
device.setType(body.getType());
device.setDeviceName(body.getDeviceName());
device.setDeviceSn(body.getDeviceSn());
device.setDeviceKey(body.getDeviceKey());
device.setDeviceImei(body.getDeviceImei());
device.setDeviceIccid(body.getDeviceIccid());
deviceService.editDevice(device);
return ResponseMsgUtil.success("操作成功");
} catch (Exception e) {
log.error("HighDeviceController -> editDevice() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/delDevice",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "删除设备")
public ResponseData delDevice(@RequestBody JSONObject body) {
try {
if (body.getLong("deviceId") == null) {
log.error("HighDeviceController -> delDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
// 查询设备
HighDevice device = deviceService.getDetailById(body.getLong("deviceId"));
if (device == null) {
log.error("HighDeviceController -> delDevice() error!","参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
if (device.getType().equals(DeviceTypeEnum.type1.getType())) {
SpPrinterConfig sp = new SpPrinterConfig();
JSONObject jsonObject = JSONObject.parseObject(sp.deletePrinter(device.getDeviceSn()));
if (!jsonObject.getInteger("errorcode").equals(0)) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, jsonObject.getString("errormsg"));
}
}
device.setStatus(0);
deviceService.editDevice(device);
return ResponseMsgUtil.success("操作成功");
} catch (Exception e) {
log.error("HighDeviceController -> delDevice() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/getDetailById",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "根据id查询设备详情")
public ResponseData getDetailById(@RequestParam(name = "deviceId", required = true) Long deviceId) {
try {
return ResponseMsgUtil.success(deviceService.getDetailById(deviceId));
} catch (Exception e) {
log.error("HighDeviceController -> getDetailById() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/getDeviceList",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "根据id查询设备详情")
public ResponseData getDeviceList(@RequestParam(name = "companyId", required = false) Long companyId,
@RequestParam(name = "merId", required = false) Long merId,
@RequestParam(name = "storeId", required = false) Long storeId,
@RequestParam(name = "deviceName", required = false) String deviceName,
@RequestParam(name = "pageNum", required = true) Integer pageNum,
@RequestParam(name = "pageSize", required = true) Integer pageSize) {
try {
UserInfoModel sessionModel = userCenter.getSessionModel(UserInfoModel.class);
if (sessionModel == null) {
log.error("HighDeviceController -> getDeviceList() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到");
}
Map<String, Object> param = new HashMap<>();
param.put("deviceName", deviceName);
if (sessionModel.getSecUser().getObjectType().equals(0)) {
param.put("companyId", companyId);
param.put("merId", merId);
param.put("storeId", storeId);
} else if (sessionModel.getSecUser().getObjectType().equals(1)) {
param.put("companyId", sessionModel.getBsCompany().getId());
param.put("merId", merId);
param.put("storeId", storeId);
} else if (sessionModel.getSecUser().getObjectType().equals(2)) {
param.put("merId", sessionModel.getMerchant().getId());
param.put("storeId", storeId);
} else if (sessionModel.getSecUser().getObjectType().equals(3)) {
param.put("storeId", sessionModel.getMerchantStore().getId());
} else {
log.error("HighDeviceController -> getDeviceList() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
PageHelper.startPage(pageNum, pageSize);
return ResponseMsgUtil.success(new PageInfo<>(deviceService.getDeviceList(param)));
} catch (Exception e) {
log.error("HighDeviceController -> getDeviceList() error!",e);
return ResponseMsgUtil.exception(e);
}
}
}

@ -173,11 +173,33 @@ public class HighGasController {
Map<String, Object> param = new HashMap<>();;
// 用户来源 0:超级管理员 1:公司 2:商户 3:门店 4. 代理商 5.充值后台工商 6.团油代理商 7.团油业务员 8. 加油站员工
if (userInfoModel.getSecUser().getObjectType().equals(2)) {
if (storeId != null) {
param.put("storeId", storeId);
} else {
String storeIdStr = "";
List<HighMerchantStore> storeList = merchantStoreService.getStoreListByMer(userInfoModel.getMerchant().getId());
for (HighMerchantStore store : storeList) {
if (StringUtils.isBlank(storeIdStr)) {
storeIdStr += store.getId().toString();
} else {
storeIdStr += "," + store.getId().toString();
}
}
if (StringUtils.isNotBlank(storeIdStr)) {
param.put("storeId", storeIdStr);
} else {
param.put("storeId", 0);
}
}
} else if (userInfoModel.getSecUser().getObjectType().equals(3)) {
param.put("storeId", userInfoModel.getMerchantStore().getId());
} else if (userInfoModel.getSecUser().getObjectType().equals(8)) {
param.put("storeId", userInfoModel.getMerchantStore().getId());
} else {
log.error("HighGasController -> disabledOil() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
@ -237,17 +259,51 @@ public class HighGasController {
@ResponseBody
@ApiOperation(value = "导出油站订单")
public ResponseData exportGasOrder(@RequestParam(name = "orderNo", required = false) String orderNo,
@RequestParam(name = "storeId", required = false) Long storeId,
@RequestParam(name = "status", required = false) Integer status,
@RequestParam(name = "createTimeS", required = false) Long createTimeS,
@RequestParam(name = "createTimeE", required = false) Long createTimeE) {
try {
UserInfoModel userInfoModel = userCenter.getSessionModel(UserInfoModel.class);
if (userInfoModel == null || userInfoModel.getMerchantStore() == null) {
if (userInfoModel == null) {
log.error("HighGasController -> disabledOil() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
Map<String, Object> param = new HashMap<>();;
Map<String, Object> param = new HashMap<>();
// 用户来源 0:超级管理员 1:公司 2:商户 3:门店 4. 代理商 5.充值后台工商 6.团油代理商 7.团油业务员 8. 加油站员工
if (userInfoModel.getSecUser().getObjectType().equals(2)) {
if (storeId != null) {
param.put("storeId", storeId);
} else {
String storeIdStr = "";
List<HighMerchantStore> storeList = merchantStoreService.getStoreListByMer(userInfoModel.getMerchant().getId());
for (HighMerchantStore store : storeList) {
if (StringUtils.isBlank(storeIdStr)) {
storeIdStr += store.getId().toString();
} else {
storeIdStr += "," + store.getId().toString();
}
}
if (StringUtils.isNotBlank(storeIdStr)) {
param.put("storeId", storeIdStr);
} else {
param.put("storeId", 0);
}
}
} else if (userInfoModel.getSecUser().getObjectType().equals(3)) {
param.put("storeId", userInfoModel.getMerchantStore().getId());
} else if (userInfoModel.getSecUser().getObjectType().equals(8)) {
param.put("storeId", userInfoModel.getMerchantStore().getId());
} else {
log.error("HighGasController -> disabledOil() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
param.put("orderNo", orderNo);
param.put("createTimeS", createTimeS);
param.put("createTimeE", createTimeE);

@ -4,9 +4,14 @@ import com.alibaba.fastjson.JSONObject;
import com.hai.common.exception.ErrorCode;
import com.hai.common.exception.ErrorHelp;
import com.hai.common.exception.SysCode;
import com.hai.common.pay.util.XmlUtil;
import com.hai.common.pay.util.sdk.WXPayConstants;
import com.hai.common.utils.HttpsUtils;
import com.hai.common.utils.ResponseMsgUtil;
import com.hai.common.utils.WxUtils;
import com.hai.entity.HighMerchantTripartitePlatform;
import com.hai.model.ResponseData;
import com.hai.model.WxSharingReceiversVO;
import com.hai.service.HighMerchantTripartitePlatformService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -18,6 +23,9 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.Map;
import java.util.SortedMap;
@Controller
@RequestMapping(value = "/merchantTripartitePlatform")
@ -45,14 +53,17 @@ public class HighMerchantTripartitePlatformController {
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
if (body.getBoolean("profitSharingStatus") == true && body.getBigDecimal("profitSharingRatio") == null) {
if (body.getBoolean("profitSharingStatus") == true &&
(body.getBigDecimal("profitSharingRatio") == null ||
StringUtils.isBlank(body.getString("profitSharingReceiversNumber")) ||
StringUtils.isBlank(body.getString("profitSharingReceiversName")))) {
log.error("HighMerchantController -> insertMerchantStore() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
HighMerchantTripartitePlatform platform = tripartitePlatformService.getDetail(body.getLong("merId"), body.getInteger("platformType"));
if (platform == null) {
platform = new HighMerchantTripartitePlatform();
}
platform.setMerId(body.getLong("merId"));
platform.setPlatformType(body.getInteger("platformType"));
@ -60,6 +71,33 @@ public class HighMerchantTripartitePlatformController {
platform.setPlatformMerNumber(body.getString("platformMerNumber"));
platform.setProfitSharingStatus(body.getBoolean("profitSharingStatus"));
platform.setProfitSharingRatio(body.getBigDecimal("profitSharingRatio"));
platform.setProfitSharingReceiversNumber(body.getString("profitSharingReceiversNumber"));
platform.setProfitSharingReceiversName(body.getString("profitSharingReceiversName"));
// 微信平台 增加分账关系
if (platform.getPlatformType().equals(1) && platform.getProfitSharingStatus().equals(true)) {
WxSharingReceiversVO receiversVO = new WxSharingReceiversVO();
receiversVO.setAccount(platform.getProfitSharingReceiversNumber());
receiversVO.setType("MERCHANT_ID");
receiversVO.setName(platform.getProfitSharingReceiversName());
receiversVO.setRelation_type("SERVICE_PROVIDER");
Map<String , String> map = new HashMap<>();
map.put("mch_id" , "1289663601"); // 服务商
map.put("sub_mch_id" , platform.getPlatformMerNumber());
map.put("appid" , "wxa075e8509802f826");
map.put("nonce_str" , WxUtils.makeNonStr());
map.put("sign_type" , "HMAC-SHA256");
map.put("receiver" , JSONObject.toJSONString(receiversVO));
String sign = WxUtils.generateSignature(map, "Skufk5oi85wDFGl888i6wsRSTkdd5df5" , WXPayConstants.SignType.HMACSHA256);
map.put("sign" , sign);
String notifyXml = HttpsUtils.postData("https://api.mch.weixin.qq.com/pay/profitsharingaddreceiver", WxUtils.mapToXml(map));
SortedMap<String, String> postData = XmlUtil.parseXmlToTreeMap(notifyXml, "UTF-8");
if (!postData.get("result_code").equals("SUCCESS")) {
log.error("HighMerchantController -> editTripartitePlatform() error!", postData.get("err_code_des"));
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, postData.get("err_code_des"));
}
}
tripartitePlatformService.editDate(platform);
return ResponseMsgUtil.success("操作成功");

@ -55,6 +55,9 @@ public class HighOpenApiController {
@Resource
private HighUserService highUserService;
@Resource
private HighGasOrderPushMapper highGasOrderPushMapper;
@Resource
private SecConfigService secConfigService;

@ -346,6 +346,9 @@ public class HighOrderController {
} else if (userInfoModel.getSecUser().getObjectType() == 2) {
map.put("merchantId", userInfoModel.getMerchant().getId());
} else {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
map.put("orderNo", orderNo);

File diff suppressed because one or more lines are too long

@ -221,6 +221,7 @@ public class OutRechargeOrderController {
Map<String, Object> map = new HashMap<>();
if (companyId != null) {
map.put("companyId", companyId);
} else if (userInfoModel.getSecRole().getRoleType() != 1){

@ -40,7 +40,7 @@ public class ImportRechargeOrderListener extends AnalysisEventListener<ExportOut
OutRechargeOrder rechargeOrder = outRechargeOrderService.findByOrderNo(data.getOrderNo());
if (rechargeOrder.getRechargeStatus() != 201 || rechargeOrder.getRechargeType() != 2) {
if (rechargeOrder.getRechargeStatus() != 203 || rechargeOrder.getRechargeType() != 2) {
data.setErrorMessage("当前订单状态错误。");
errorData.add(data);
return;
@ -56,7 +56,6 @@ public class ImportRechargeOrderListener extends AnalysisEventListener<ExportOut
errorData.add(data);
return;
}
}

@ -19,6 +19,9 @@ public class ExportOutRechargeOrder {
@ExcelProperty("支付方式")
private String payTypeName;
@ExcelProperty("工会卡")
private String laborUnionCard;
@ExcelProperty("充值内容")
private String rechargeContent;
@ -55,6 +58,9 @@ public class ExportOutRechargeOrder {
@ExcelProperty("充值状态")
private String rechargeStatusName;
@ExcelProperty("退款时间")
private Date refundTime;
// 错误消息
private String errorMessage;
@ -187,6 +193,14 @@ public class ExportOutRechargeOrder {
this.rechargeStatusName = rechargeStatusName;
}
public String getLaborUnionCard() {
return laborUnionCard;
}
public void setLaborUnionCard(String laborUnionCard) {
this.laborUnionCard = laborUnionCard;
}
public String getErrorMessage() {
return errorMessage;
}
@ -194,4 +208,12 @@ public class ExportOutRechargeOrder {
public void setErrorMessage(String errorMessage) {
this.errorMessage = errorMessage;
}
public Date getRefundTime() {
return refundTime;
}
public void setRefundTime(Date refundTime) {
this.refundTime = refundTime;
}
}

@ -39,6 +39,20 @@ spring:
max-wait: -1
max-idle: 10
min-idle: 0
#MQTT配置信息
mqtt:
#MQTT服务地址
url: ws://139.159.177.244:8083/mqtt
#用户名
username: printer_provider
#密码
password: 123654
#客户端id(不能重复)
# client:
# id: provider-id
#MQTT默认的消息推送主题,实际可在调用接口是指定
# default:
# topic: topic
#配置日期返回至前台为时间戳
jackson:
serialization:

@ -79,8 +79,8 @@ public class HighGasController {
@RequestParam(name = "distance", required = true) Integer distanceRecent,
@RequestParam(name = "regionId", required = true) Long regionId,
@RequestParam(name = "oilNoName", required = true) String oilNoName,
@RequestParam(name = "longitude", required = true) String longitude,
@RequestParam(name = "latitude", required = true) String latitude,
@RequestParam(name = "longitude", required = false) String longitude,
@RequestParam(name = "latitude", required = false) String latitude,
@RequestParam(name = "pageNum", required = true) Integer pageNum,
@RequestParam(name = "pageSize", required = true) Integer pageSize
) {
@ -99,9 +99,17 @@ public class HighGasController {
store.put("store_logo", null);
}
}
if (StringUtils.isNotBlank(longitude) && StringUtils.isNotBlank(latitude)) {
double distance = CoordCommonUtil.getDistance(Double.valueOf(store.get("latitude").toString()), Double.valueOf(store.get("longitude").toString()), Double.valueOf(latitude), Double.valueOf(longitude));
store.put("distance", Math.round(distance/100d)/10d);
} else {
store.put("distance", null);
}
}
PageInfo<Map<String, Object>> mapPageInfo;
if (StringUtils.isNotBlank(longitude) && StringUtils.isNotBlank(latitude)) {
List<Map<String, Object>> distance = storeList.stream().sorted(Comparator.comparingDouble(entry -> Double.valueOf(entry.get("distance").toString()))).collect(Collectors.toList());
Iterator<Map<String, Object>> iterator = distance.iterator();
while (iterator.hasNext()) {
@ -109,7 +117,11 @@ public class HighGasController {
iterator.remove();
}
}
PageInfo<Map<String, Object>> mapPageInfo = PageUtil.initPageInfoObj(pageNum, distance.size(), pageSize, new PageInfo<>(distance));
mapPageInfo = PageUtil.initPageInfoObj(pageNum, distance.size(), pageSize, new PageInfo<>(distance));
} else {
mapPageInfo = PageUtil.initPageInfoObj(pageNum, storeList.size(), pageSize, new PageInfo<>(storeList));
}
for (Map<String, Object> map : mapPageInfo.getList()) {
if (StringUtils.isNotBlank(MapUtils.getString(map, "oil_no"))) {
@ -250,8 +262,8 @@ public class HighGasController {
@ResponseBody
@ApiOperation(value = "根据门店key 查询")
public ResponseData getGasDetailByStoreKey(@RequestParam(name = "storeKey", required = true) String storeKey,
@RequestParam(name = "longitude", required = true) String longitude,
@RequestParam(name = "latitude", required = true) String latitude,
@RequestParam(name = "longitude", required = false) String longitude,
@RequestParam(name = "latitude", required = false) String latitude,
@RequestParam(name = "isTyAgent", required = false) Boolean isTyAgent) {
try {
@ -280,9 +292,14 @@ public class HighGasController {
param.put("gasLogoSmall", CommonSysConst.getSysConfig().getHsgDomainName()+"/filesystem/"+store.getStoreLogo());
param.put("gasAddressLatitude", store.getLatitude());
param.put("gasAddressLongitude", store.getLongitude());
if (StringUtils.isNotBlank(longitude) && StringUtils.isNotBlank(latitude)) {
// 距离
double distance = CoordCommonUtil.getDistance(Double.valueOf(param.get("gasAddressLatitude").toString()), Double.valueOf(param.get("gasAddressLongitude").toString()), Double.valueOf(latitude), Double.valueOf(longitude));
param.put("distance", Math.round(distance/100d)/10d);
} else {
param.put("distance", null);
}
// 查询油枪
List<Map<String, Object>> gasGunMapList = new ArrayList<>();
@ -407,8 +424,13 @@ public class HighGasController {
}
result.put("oilPriceList", newOilPriceList);
if (StringUtils.isNotBlank(longitude) && StringUtils.isNotBlank(latitude)) {
// 距离
double distance = CoordCommonUtil.getDistance(Double.valueOf(result.get("gasAddressLatitude").toString()), Double.valueOf(result.get("gasAddressLongitude").toString()), Double.valueOf(latitude), Double.valueOf(longitude));
result.put("distance", Math.round(distance/100d)/10d);
} else {
result.put("distance", null);
}
return ResponseMsgUtil.success(jsonObject.get("result"));
}
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, jsonObject.getString("message"));

File diff suppressed because one or more lines are too long

@ -108,6 +108,9 @@ public class OrderController {
@Resource
private UnionStagingPayConfig unionStagingPayConfig;
@Resource
private SecConfigService configService;
/**
*
* @Title: orderToPay
@ -214,7 +217,12 @@ public class OrderController {
weChatPayReqInfo.setSub_mch_id(SysConst.getSysConfig().getWxGzSubMchId());//商户号
} else if (order.getHighChildOrderList().get(0).getGoodsType() == 3) {
weChatPayReqInfo.setSub_mch_id("1624126902"); // 浩联商户号
SecConfig wxMerNumber = configService.findByCodeType("OIL_WX_MER");
if (wxMerNumber == null) {
weChatPayReqInfo.setSub_mch_id(WxOrderConfig.MCH_ID_1624126902); // 浩联商户号
} else {
weChatPayReqInfo.setSub_mch_id(wxMerNumber.getCodeValue());
}
profitSharing = "Y";
// 查询油站
@ -225,14 +233,13 @@ public class OrderController {
profitSharing = "N";
// 第三方平台
HighMerchantTripartitePlatform merTripartitePlatform = tripartitePlatformService.getDetail(store.getId(), 1);
HighMerchantTripartitePlatform merTripartitePlatform = tripartitePlatformService.getDetail(store.getMerchantId(), 1);
if (merTripartitePlatform != null) {
weChatPayReqInfo.setSub_mch_id(merTripartitePlatform.getPlatformMerNumber());
if (merTripartitePlatform.getProfitSharingRatio().compareTo(new BigDecimal("0")) == 1) {
// 是否分账
profitSharing = merTripartitePlatform.getProfitSharingStatus().equals(true)?"Y":"N";
}
}
}
if (store.getPrestoreType().equals(1)) {
profitSharing = "N";
}

@ -9,18 +9,18 @@ import com.hai.common.exception.SysCode;
import com.hai.common.utils.DateUtil;
import com.hai.common.utils.IDGenerator;
import com.hai.common.utils.ResponseMsgUtil;
import com.hai.config.CommonSysConst;
import com.hai.config.HuiLianTongConfig;
import com.hai.config.TuanYouConfig;
import com.hai.config.UnionStagingPayConfig;
import com.hai.config.*;
import com.hai.dao.HighCouponCodeOtherMapper;
import com.hai.dao.HighGasOrderPushMapper;
import com.hai.dao.HighPayRecordMapper;
import com.hai.dao.HighUserCouponMapper;
import com.hai.entity.*;
import com.hai.enum_type.MerStoreAmountSourceTypeEnum;
import com.hai.enum_type.MerStoreAmountTypeEnum;
import com.hai.enum_type.OrderPushType;
import com.hai.model.HighMerchantStoreModel;
import com.hai.model.ResponseData;
import com.hai.msg.entity.MsgTopic;
import com.hai.service.*;
import com.hai.service.pay.NotifyService;
import io.swagger.annotations.Api;
@ -29,6 +29,7 @@ import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
@ -47,6 +48,9 @@ public class UnionPayController {
private static Logger log = LoggerFactory.getLogger(UnionPayController.class);
@Resource
private RedisTemplate redisTemplate;
@Resource
private HighOrderService highOrderService;
@ -280,7 +284,62 @@ public class UnionPayController {
if (highChildOrder.getGoodsType() == 3) {
highChildOrder.setChildOrdeStatus(3);
order.setOrderStatus(3);
HighMerchantStoreModel store = highMerchantStoreService.getMerchantStoreById(highChildOrder.getGoodsId());
// 来源类型 1:平台自建 2:团油
if (store.getSourceType().equals(1)) {
// 预存类型 0:非预存 1:预存门店
if (store.getPrestoreType() != null && store.getPrestoreType().equals(1)) {
Map<String, Object> pushParam = new HashMap<>();
pushParam.put("businessType", MerStoreAmountTypeEnum.type2.getType());
pushParam.put("storeId", highChildOrder.getGoodsId());
pushParam.put("price", order.getTotalPrice());
pushParam.put("sourceType", MerStoreAmountSourceTypeEnum.type2.getType());
pushParam.put("sourceId", order.getId());
pushParam.put("sourceContent", "订单号:" + order.getOrderNo() + ",加油金额:¥" + order.getTotalPrice());
pushParam.put("opUserId", order.getMemId());
pushParam.put("opUserName", order.getMemName());
// 扣预存款
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();
}
} else if (store.getSourceType().equals(2)) {
// 推送团油订单
Map<String,Object> paramMap = new HashMap<>();
paramMap.put("gasId", store.getStoreKey());
@ -315,6 +374,7 @@ public class UnionPayController {
highChildOrder.setGasOrderNo(orderPushObject.getJSONObject("result").getString("orderNo"));
}
}
}
if (highChildOrder.getGoodsType() == 7) {
HighDiscountPackageActual actual = discountPackageActualService.getDetailByChildOrderId(highChildOrder.getId());

@ -144,7 +144,8 @@ public class WechatPayController {
@RequestMapping(value = "/addLedgerReceiver", method = RequestMethod.POST)
@ApiOperation(value = "微信支付 -> 添加分账接收方")
public void addLedgerReceiver(HttpServletRequest request, HttpServletResponse response) {
public void addLedgerReceiver(@RequestParam(name = "sub_mch_id", required = true) String sub_mch_id,
HttpServletRequest request, HttpServletResponse response) {
try {
WxSharingReceiversVO receiversVO = new WxSharingReceiversVO();
@ -156,7 +157,7 @@ public class WechatPayController {
Map<String , String> map = new HashMap<>();
map.put("mch_id" , "1289663601");
map.put("sub_mch_id" , "1624126902");
map.put("sub_mch_id" , sub_mch_id);
map.put("appid" , "wxa075e8509802f826");
map.put("nonce_str" , WxUtils.makeNonStr());
map.put("sign_type" , "HMAC-SHA256");

@ -39,6 +39,21 @@ spring:
max-wait: -1
max-idle: 10
min-idle: 0
#MQTT配置信息
mqtt:
#MQTT服务地址
url: ws://139.159.177.244:8083/mqtt
#用户名
username: printer_provider
#密码
password: 123654
#客户端id(不能重复)
# client:
# id: provider-id
#MQTT默认的消息推送主题,实际可在调用接口是指定
# default:
# topic: topic
#配置日期返回至前台为时间戳
jackson:
serialization:

@ -264,6 +264,10 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.integration</groupId>
<artifactId>spring-integration-mqtt</artifactId>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>

@ -753,7 +753,7 @@ public class HttpsUtils {
* @Param [url, str]
* @return com.alibaba.fastjson.JSONObject
**/
public static JSONObject postData(String url, String str) {
public static String postData(String url, String str) {
CloseableHttpClient httpClient = null;
if (url.startsWith("https")) {
httpClient = HttpClients.custom().setSSLSocketFactory(createSSLConnSocketFactory())
@ -775,7 +775,7 @@ public class HttpsUtils {
response = httpClient.execute(httpPost);
HttpEntity entity = response.getEntity();
httpStr = EntityUtils.toString(entity, "UTF-8");
return JSON.parseObject(httpStr);
return httpStr;
} catch (Exception e) {
log.error(e.getMessage(),e);
} finally {

@ -61,7 +61,7 @@ public class CommonSysConfig {
private String czOrderNotify;
private String lyApiKey;
private String lyNotifyUrl;
private String LyNotifyUrl;
private String lyMemberId;
private String LyPostUrl;
@ -467,10 +467,10 @@ public class CommonSysConfig {
}
public String getLyNotifyUrl() {
return lyNotifyUrl;
return LyNotifyUrl;
}
public void setLyNotifyUrl(String lyNotifyUrl) {
this.lyNotifyUrl = lyNotifyUrl;
LyNotifyUrl = lyNotifyUrl;
}
}

@ -1,6 +1,7 @@
package com.hai.config;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.hai.common.exception.ErrorCode;
import com.hai.common.exception.ErrorHelp;
@ -9,7 +10,10 @@ import com.hai.common.utils.HttpsUtils;
import com.hai.common.utils.MD5Util;
import com.hai.common.utils.RedisUtil;
import com.hai.dao.HighGasOrderPushMapper;
import com.hai.entity.HighCouponCodeOther;
import com.hai.entity.HighGasOrderPush;
import com.hai.entity.HighUserCoupon;
import com.hai.enum_type.OrderPushType;
import org.apache.commons.collections4.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
@ -130,7 +134,36 @@ public class HuiLianTongConfig {
map.put("sign", md5Capital(joiner.toString()));
String paramStr = "token="+MapUtils.getString(map, "token")+"&sign=" + MapUtils.getString(map, "sign")+"&jsonData=" + URLEncoder.encode(MapUtils.getString(map, "jsonData"),"UTF-8");
return HttpsUtils.doHuiLianTongPost(CommonSysConst.getSysConfig().getHuiliantongUrl() + "/coupon/api/coupon_corp/couJointDist?" + paramStr);
JSONObject object1 = HttpsUtils.doHuiLianTongPost(CommonSysConst.getSysConfig().getHuiliantongUrl() + "/coupon/api/coupon_corp/couJointDist?" + paramStr);
new Thread(() -> {
try {
if (object1 != null && object1.getString("result").equals("success")) {
JSONArray dataArray = object1.getJSONArray("data");
for (Object data : dataArray) {
JSONObject dataObject = (JSONObject) data;
Map<String, Object> mapPost = new HashMap<>();
mapPost.put("orderNo" , orderNo);
mapPost.put("distCouCount" , "1");
mapPost.put("phone" , userPhone);
mapPost.put("distributorId" , "1JnL8YMV");
mapPost.put("couNo" , dataObject.getString("couNo"));
mapPost.put("status" , "20");
mapPost.put("couTypeCode" , dataObject.getString("couTypeCode"));
mapPost.put("validStartDate" , dataObject.getDate("validStartDate"));
mapPost.put("validEndDate" , dataObject.getDate("validEndDate"));
JSONObject o = HuiLianTongUnionCardConfig.syncPayOrder(mapPost);
System.out.println("订单同步请求参数---------" + mapPost);
System.out.println("订单同步请求结果---------" + o);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}).start();
return object1;
}

@ -0,0 +1,39 @@
package com.hai.config;
import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;
import org.eclipse.paho.client.mqttv3.MqttCallback;
import org.eclipse.paho.client.mqttv3.MqttMessage;
import org.springframework.context.annotation.Configuration;
@Configuration
public class MqttProviderCallBack implements MqttCallback {
/**
* 与服务器断开
* @param throwable
*/
@Override
public void connectionLost(Throwable throwable) {
}
/**
* 消息到达回调
* @param s
* @param mqttMessage
* @throws Exception
*/
@Override
public void messageArrived(String s, MqttMessage mqttMessage) throws Exception {
System.out.println("消息到达");
}
/**
* 消息发布成功回调
* @param iMqttDeliveryToken
*/
@Override
public void deliveryComplete(IMqttDeliveryToken iMqttDeliveryToken) {
System.out.println("消息发布");
}
}

@ -0,0 +1,208 @@
package com.hai.config;
import io.netty.handler.codec.mqtt.MqttConnAckVariableHeader;
import io.netty.handler.codec.mqtt.MqttConnectVariableHeader;
import io.netty.handler.codec.mqtt.MqttMessageIdVariableHeader;
import io.netty.handler.codec.mqtt.MqttPublishVariableHeader;
import lombok.extern.slf4j.Slf4j;
import javax.annotation.PostConstruct;
import org.eclipse.paho.client.mqttv3.*;
import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
@Configuration
@Slf4j
public class MqttProviderConfig {
// @Value("${spring.mqtt.username}")
private String username;
// @Value("${spring.mqtt.password}")
private String password;
// @Value("${spring.mqtt.url}")
private String hostUrl;
/* @Value("${spring.mqtt.client.id}")
private String clientId;
@Value("${spring.mqtt.default.topic}")
private String defaultTopic;*/
/**
* 客户端对象
*/
private MqttClient client;
/**
* 在bean初始化后连接到服务器
*/
// @PostConstruct
public void init() {
connect("provider-" + System.currentTimeMillis());
}
/*
@PostConstruct
public void init(String clientId) {
connect(clientId);
}*/
/**
* 客户端连接服务端
*/
public void connect(String clientId){
try{
//创建MQTT客户端对象
client = new MqttClient(hostUrl,clientId,new MemoryPersistence());
//连接设置
MqttConnectOptions options = new MqttConnectOptions();
//是否清空session,设置false表示服务器会保留客户端的连接记录(订阅主题,qos),客户端重连之后能获取到服务器在客户端断开连接期间推送的消息
//设置为true表示每次连接服务器都是以新的身份
options.setCleanSession(true);
//设置连接用户名
options.setUserName(username);
//设置连接密码
options.setPassword(password.toCharArray());
//设置超时时间,单位为秒
options.setConnectionTimeout(100);
//设置心跳时间 单位为秒,表示服务器每隔 1.5*20秒的时间向客户端发送心跳判断客户端是否在线
options.setKeepAliveInterval(20);
// 设置遗嘱消息的话题,若客户端和服务器之间的连接意外断开,服务器将发布客户端的遗嘱信息
// options.setWill("willTopic",(clientId + "与服务器断开连接").getBytes(),0,false);
//设置回调
client.setCallback(new MqttProviderCallBack());
client.connect(options);
} catch(MqttException e){
e.printStackTrace();
}
}
public void publish(int qos,boolean retained,String topic,String message) {
if (client == null) {
init();
}
try {
MqttMessage mqttMessage = new MqttMessage();
mqttMessage.setQos(qos);
mqttMessage.setRetained(retained);
mqttMessage.setPayload(message.getBytes("UTF-8"));
// 主题的目的地,用于发布/订阅信息
MqttTopic mqttTopic = client.getTopic(topic);
//提供一种机制来跟踪消息的传递进度
//用于在以非阻塞方式(在后台运行)执行发布是跟踪消息的传递进度
MqttDeliveryToken token;
//将指定消息发布到主题,但不等待消息传递完成,返回的token可用于跟踪消息的传递状态
//一旦此方法干净地返回,消息就已被客户端接受发布,当连接可用,将在后台完成消息传递。
token = mqttTopic.publish(mqttMessage);
token.waitForCompletion();
} catch (MqttException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
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();
byte[] msgByte = new byte[by.length + 16];
// 写入缓存
msgByte[0] = 29;
msgByte[1] = 40;
msgByte[2] = 107;
msgByte[3] = (byte)(by.length+3);
msgByte[4] = 0;
msgByte[5] = 49;
msgByte[6] = 80;
msgByte[7] = 48; // (byte)0x30);
int index = 7;
for (int i = 0; i < by.length; i++)
{
index = index+1;
msgByte[index] = by[i];
}
// 打印缓存中的数据
msgByte[index + 1] = 29;
msgByte[index + 2] = 40;
msgByte[index + 3] = 107;
msgByte[index + 4] = (byte)(by.length+3);
msgByte[index + 5] = 0;
msgByte[index + 6] = 49;
msgByte[index + 7] = 81;
msgByte[index + 8] = 48; // (byte)0x30);
byte[] array = new byte[msgByte.length + 9];
array[0] = 30;
array[1] = 16;
array[2] =(byte) pageCount;//打印份数
int num = array.length - 5;
array[3] = (byte)(num >> 8);
//array[4] = (byte)((uint)num & 0xFFu);
array[4] = (byte)(num & 0xFF);
for (int i = 0; i < msgByte.length; i++)
{
array[i+ 5] = msgByte[i];
}
array[array.length - 4] = 27;
array[array.length - 3] = 99;
byte[] crc16CodeArray = getCRC(msgByte);
array[array.length - 2] = crc16CodeArray[0];
array[array.length - 1] = crc16CodeArray[1];
return array;
} catch (Exception ex) {
System.out.println(ex.getStackTrace());
}
return null;
}
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 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 };
}

@ -0,0 +1,219 @@
package com.hai.config;
import org.junit.Test;
import java.io.UnsupportedEncodingException;
public class PrintDemo {
private String accessKeyId = "LTAI5tHHL3z6gpJbMmCg3zt2";
private String accessKeySecret = "CC9kAuqgdjKiE6jxSQHddFxGDCTpBQ";
private String instanceId = "post-cn-i7m2558ze01";
private String topic = "Box";
private String groupId= "GID_BOX";
private String endpoint= "onsmqtt.mq-internet-access.aliyuncs.com";
public static final int PAYTYPE_VOICE_NULL=2000;
public static final int PAYTYPE_VOICE_ALI=2001;
public static final int PAYTYPE_VOICE_QQ=2002;
public static final int PAYTYPE_VOICE_WECHAT=2003;
public static final int PAYTYPE_VOICE_JD=2004;
public static final int PAYTYPE_VOICE_UNION=2005;
public static final int PAYTYPE_VOICE_DIY7570=7570;
public static final int PAYTYPE_VOICE_DIY7571=7571;
public static final int PAYTYPE_VOICE_DIY7572=7572;
public static final int PAYTYPE_VOICE_DIY7573=7573;
public static final int PAYTYPE_VOICE_DIY7574=7574;
public static final int PAYTYPE_VOICE_DIY7575=7575;
public static final int PAYTYPE_VOICE_DIY7576=7576;
public static final int PAYTYPE_VOICE_DIY7577=7577;
public static final int PAYTYPE_VOICE_DIY7578=7578;
public static final int PAYTYPE_VOICE_DIY7579=7579;
@Test
public void Test(){
String imeiStr="352736082440754";//设备IMEI
String printText="1234\r\n";//打印文本
String voiceMsgId="2019022611153312312345";//消息ID
String voiceMsgMoney="1234";//播报金额
//获取打印内容
byte[] printData = getPrinterBytes(printText, 1, "");
System.out.println(bytes2Hex(printData));
//获取播报字符串
System.out.println(getStaticVoiceStr(imeiStr,voiceMsgId,voiceMsgMoney,PAYTYPE_VOICE_ALI));
//获取播报打印机指令
printData=getPrinterVoiceBytes(printText,1,"",imeiStr,voiceMsgId,voiceMsgMoney,PAYTYPE_VOICE_ALI);
System.out.println(bytes2Hex(printData));
/*
try {
com.aliyun.onsmqtt20200420.Client client = createClient(accessKeyId, accessKeySecret);
SendMessageRequest sendMessageRequest = new SendMessageRequest()
.setInstanceId("post-cn-i7m2558ze01")
.setMqttTopic("Box/p2p/GID_BOX@@@359ac67b25c11b8")
.setPayload(bytes2Hex(printData));
SendMessageResponse sendMessageResponse = client.sendMessage(sendMessageRequest);
System.out.println(sendMessageResponse.getBody().msgId);
} catch (Exception e) {
e.printStackTrace();
}*/
}
/**
* 使用AK&SK初始化账号Client
* @param accessKeyId
* @param accessKeySecret
* @return Client
* @throws Exception
*/
/* public com.aliyun.onsmqtt20200420.Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
Config config = new Config()
// 您的AccessKey ID
.setAccessKeyId(accessKeyId)
// 您的AccessKey Secret
.setAccessKeySecret(accessKeySecret);
// 访问的域名
config.endpoint = endpoint;
return new com.aliyun.onsmqtt20200420.Client(config);
}*/
/**
* 支付播报固定语音字节数组
* @param imeiStr IMEI设备唯一标识
* @param msgId 交易序列号不大于32字节保证唯一
* @param moneyStr 播报金额最多两位小数
* @param payType 支付类型
* @return
*/
public static byte[] getStaticVoiceBytes(String imeiStr,String msgId,String moneyStr,int payType){
return getStaticVoiceStr(imeiStr,msgId,moneyStr,payType).getBytes();
}
/**
* 支付播报固定语音字符串
* @param imeiStr IMEI设备唯一标识
* @param msgId 交易序列号不大于32字节保证唯一
* @param moneyStr 播报金额最多两位小数
* @param payType 支付类型
* @return
*/
public static String getStaticVoiceStr(String imeiStr,String msgId,String moneyStr,int payType){
String str=imeiStr+"|1007|"+msgId+"|"+moneyStr+"|"+payType;
return str;
}
/**
* 获取打印内容适用于云打印机
* @param printText 打印文本
* @param pageCount 打印联数
* @param encodingStr 编码方式默认UTF-8
* @return
*/
public static 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;
}
public static byte[] getPrinterVoiceBytes(String printTxt,int pageCount,String encodingStr,String imeiStr,String msgId,String moneyStr,int payType){
byte[] voiceArray=getStaticVoiceBytes(imeiStr, msgId, moneyStr, payType);
byte[] printerArray=getPrinterBytes(printTxt,pageCount,encodingStr);
byte[] data=new byte[voiceArray.length+printerArray.length];
System.arraycopy(printerArray, 0, data, 0, printerArray.length);
System.arraycopy(voiceArray, 0, data, printerArray.length, voiceArray.length);
return data;
}
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();
}
}

@ -63,7 +63,7 @@ public class RechargeConfig {
paramMap.put("out_trade_num" , object.getString("out_trade_num"));
paramMap.put("product_id" , object.getString("product_id"));
paramMap.put("mobile" , object.getString("mobile"));
paramMap.put("notify_url" , CommonSysConst.getSysConfig().getLyNotifyUrl());
paramMap.put("notify_url" , object.getString("notifyUrl"));
paramMap.put("userid" , CommonSysConst.getSysConfig().getLyMemberId());
paramMap.put("sign", WxUtils.generateSignatureLy(paramMap , CommonSysConst.getSysConfig().getLyApiKey() , WXPayConstants.SignType.MD5));
return HttpsUtils.doPost(CommonSysConst.getSysConfig().getLyPostUrl()+ "index/recharge", paramMap);
@ -108,8 +108,7 @@ public class RechargeConfig {
map.put("app_key" , CommonSysConst.getSysConfig().getJjAppKey());
map.put("timestamp" , timestamp.substring(0,timestamp.length()-3));
map.put("is_fast" , object.getString("is_fast"));
map.put("notify_url" , CommonSysConst.getSysConfig().getJjNotifyUrl());
map.put("notify_url" , object.getString("notifyUrl"));
String signStr = WxUtils.generateSignatureAppSecret(map, CommonSysConst.getSysConfig().getJjAppSecret() , WXPayConstants.SignType.MD5);
map.put("sign" , signStr);

@ -162,9 +162,9 @@ public class SpPrinterConfig {
throw new ClientProtocolException();
}
if (response.getStatusLine().getStatusCode() != 200) {
/* if (response.getStatusLine().getStatusCode() != 200) {
throw new ClientProtocolException(EntityUtils.toString(httpEntity));
}
}*/
return EntityUtils.toString(httpEntity);
}

@ -62,6 +62,12 @@ public class WxOrderConfig {
*/
public static final String MCH_ID_1619676214 = "1619676214";
/**
* 微信支付商户号
* 渝北区浩联物资经营部
*/
public static final String MCH_ID_1624126902 = "1624126902";
public static OrderRefundModel orderToRefund(String paySerialNo,BigDecimal totalFee,BigDecimal refundFee) throws Exception {
Map<String,String> param = new HashMap<>();

@ -0,0 +1,155 @@
package com.hai.dao;
import com.hai.entity.HighDevice;
import com.hai.entity.HighDeviceExample;
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 HighDeviceMapper extends HighDeviceMapperExt {
@SelectProvider(type=HighDeviceSqlProvider.class, method="countByExample")
long countByExample(HighDeviceExample example);
@DeleteProvider(type=HighDeviceSqlProvider.class, method="deleteByExample")
int deleteByExample(HighDeviceExample example);
@Delete({
"delete from high_device",
"where id = #{id,jdbcType=BIGINT}"
})
int deleteByPrimaryKey(Long id);
@Insert({
"insert into high_device (`type`, company_id, ",
"company_name, mer_id, ",
"mer_name, mer_store_id, ",
"mer_store_name, device_name, ",
"device_sn, device_key, ",
"device_imei, device_iccid, ",
"`status`, create_time, ",
"update_time, ext_1, ",
"ext_2, ext_3)",
"values (#{type,jdbcType=INTEGER}, #{companyId,jdbcType=BIGINT}, ",
"#{companyName,jdbcType=VARCHAR}, #{merId,jdbcType=BIGINT}, ",
"#{merName,jdbcType=VARCHAR}, #{merStoreId,jdbcType=BIGINT}, ",
"#{merStoreName,jdbcType=VARCHAR}, #{deviceName,jdbcType=VARCHAR}, ",
"#{deviceSn,jdbcType=VARCHAR}, #{deviceKey,jdbcType=VARCHAR}, ",
"#{deviceImei,jdbcType=VARCHAR}, #{deviceIccid,jdbcType=VARCHAR}, ",
"#{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(HighDevice record);
@InsertProvider(type=HighDeviceSqlProvider.class, method="insertSelective")
@Options(useGeneratedKeys=true,keyProperty="id")
int insertSelective(HighDevice record);
@SelectProvider(type=HighDeviceSqlProvider.class, method="selectByExample")
@Results({
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),
@Result(column="type", property="type", jdbcType=JdbcType.INTEGER),
@Result(column="company_id", property="companyId", jdbcType=JdbcType.BIGINT),
@Result(column="company_name", property="companyName", jdbcType=JdbcType.VARCHAR),
@Result(column="mer_id", property="merId", jdbcType=JdbcType.BIGINT),
@Result(column="mer_name", property="merName", jdbcType=JdbcType.VARCHAR),
@Result(column="mer_store_id", property="merStoreId", jdbcType=JdbcType.BIGINT),
@Result(column="mer_store_name", property="merStoreName", jdbcType=JdbcType.VARCHAR),
@Result(column="device_name", property="deviceName", jdbcType=JdbcType.VARCHAR),
@Result(column="device_sn", property="deviceSn", jdbcType=JdbcType.VARCHAR),
@Result(column="device_key", property="deviceKey", jdbcType=JdbcType.VARCHAR),
@Result(column="device_imei", property="deviceImei", jdbcType=JdbcType.VARCHAR),
@Result(column="device_iccid", property="deviceIccid", jdbcType=JdbcType.VARCHAR),
@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<HighDevice> selectByExample(HighDeviceExample example);
@Select({
"select",
"id, `type`, company_id, company_name, mer_id, mer_name, mer_store_id, mer_store_name, ",
"device_name, device_sn, device_key, device_imei, device_iccid, `status`, create_time, ",
"update_time, ext_1, ext_2, ext_3",
"from high_device",
"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="company_id", property="companyId", jdbcType=JdbcType.BIGINT),
@Result(column="company_name", property="companyName", jdbcType=JdbcType.VARCHAR),
@Result(column="mer_id", property="merId", jdbcType=JdbcType.BIGINT),
@Result(column="mer_name", property="merName", jdbcType=JdbcType.VARCHAR),
@Result(column="mer_store_id", property="merStoreId", jdbcType=JdbcType.BIGINT),
@Result(column="mer_store_name", property="merStoreName", jdbcType=JdbcType.VARCHAR),
@Result(column="device_name", property="deviceName", jdbcType=JdbcType.VARCHAR),
@Result(column="device_sn", property="deviceSn", jdbcType=JdbcType.VARCHAR),
@Result(column="device_key", property="deviceKey", jdbcType=JdbcType.VARCHAR),
@Result(column="device_imei", property="deviceImei", jdbcType=JdbcType.VARCHAR),
@Result(column="device_iccid", property="deviceIccid", jdbcType=JdbcType.VARCHAR),
@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)
})
HighDevice selectByPrimaryKey(Long id);
@UpdateProvider(type=HighDeviceSqlProvider.class, method="updateByExampleSelective")
int updateByExampleSelective(@Param("record") HighDevice record, @Param("example") HighDeviceExample example);
@UpdateProvider(type=HighDeviceSqlProvider.class, method="updateByExample")
int updateByExample(@Param("record") HighDevice record, @Param("example") HighDeviceExample example);
@UpdateProvider(type=HighDeviceSqlProvider.class, method="updateByPrimaryKeySelective")
int updateByPrimaryKeySelective(HighDevice record);
@Update({
"update high_device",
"set `type` = #{type,jdbcType=INTEGER},",
"company_id = #{companyId,jdbcType=BIGINT},",
"company_name = #{companyName,jdbcType=VARCHAR},",
"mer_id = #{merId,jdbcType=BIGINT},",
"mer_name = #{merName,jdbcType=VARCHAR},",
"mer_store_id = #{merStoreId,jdbcType=BIGINT},",
"mer_store_name = #{merStoreName,jdbcType=VARCHAR},",
"device_name = #{deviceName,jdbcType=VARCHAR},",
"device_sn = #{deviceSn,jdbcType=VARCHAR},",
"device_key = #{deviceKey,jdbcType=VARCHAR},",
"device_imei = #{deviceImei,jdbcType=VARCHAR},",
"device_iccid = #{deviceIccid,jdbcType=VARCHAR},",
"`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(HighDevice record);
}

@ -0,0 +1,7 @@
package com.hai.dao;
/**
* mapper扩展类
*/
public interface HighDeviceMapperExt {
}

@ -0,0 +1,430 @@
package com.hai.dao;
import com.hai.entity.HighDevice;
import com.hai.entity.HighDeviceExample.Criteria;
import com.hai.entity.HighDeviceExample.Criterion;
import com.hai.entity.HighDeviceExample;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.jdbc.SQL;
public class HighDeviceSqlProvider {
public String countByExample(HighDeviceExample example) {
SQL sql = new SQL();
sql.SELECT("count(*)").FROM("high_device");
applyWhere(sql, example, false);
return sql.toString();
}
public String deleteByExample(HighDeviceExample example) {
SQL sql = new SQL();
sql.DELETE_FROM("high_device");
applyWhere(sql, example, false);
return sql.toString();
}
public String insertSelective(HighDevice record) {
SQL sql = new SQL();
sql.INSERT_INTO("high_device");
if (record.getType() != null) {
sql.VALUES("`type`", "#{type,jdbcType=INTEGER}");
}
if (record.getCompanyId() != null) {
sql.VALUES("company_id", "#{companyId,jdbcType=BIGINT}");
}
if (record.getCompanyName() != null) {
sql.VALUES("company_name", "#{companyName,jdbcType=VARCHAR}");
}
if (record.getMerId() != null) {
sql.VALUES("mer_id", "#{merId,jdbcType=BIGINT}");
}
if (record.getMerName() != null) {
sql.VALUES("mer_name", "#{merName,jdbcType=VARCHAR}");
}
if (record.getMerStoreId() != null) {
sql.VALUES("mer_store_id", "#{merStoreId,jdbcType=BIGINT}");
}
if (record.getMerStoreName() != null) {
sql.VALUES("mer_store_name", "#{merStoreName,jdbcType=VARCHAR}");
}
if (record.getDeviceName() != null) {
sql.VALUES("device_name", "#{deviceName,jdbcType=VARCHAR}");
}
if (record.getDeviceSn() != null) {
sql.VALUES("device_sn", "#{deviceSn,jdbcType=VARCHAR}");
}
if (record.getDeviceKey() != null) {
sql.VALUES("device_key", "#{deviceKey,jdbcType=VARCHAR}");
}
if (record.getDeviceImei() != null) {
sql.VALUES("device_imei", "#{deviceImei,jdbcType=VARCHAR}");
}
if (record.getDeviceIccid() != null) {
sql.VALUES("device_iccid", "#{deviceIccid,jdbcType=VARCHAR}");
}
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(HighDeviceExample example) {
SQL sql = new SQL();
if (example != null && example.isDistinct()) {
sql.SELECT_DISTINCT("id");
} else {
sql.SELECT("id");
}
sql.SELECT("`type`");
sql.SELECT("company_id");
sql.SELECT("company_name");
sql.SELECT("mer_id");
sql.SELECT("mer_name");
sql.SELECT("mer_store_id");
sql.SELECT("mer_store_name");
sql.SELECT("device_name");
sql.SELECT("device_sn");
sql.SELECT("device_key");
sql.SELECT("device_imei");
sql.SELECT("device_iccid");
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_device");
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) {
HighDevice record = (HighDevice) parameter.get("record");
HighDeviceExample example = (HighDeviceExample) parameter.get("example");
SQL sql = new SQL();
sql.UPDATE("high_device");
if (record.getId() != null) {
sql.SET("id = #{record.id,jdbcType=BIGINT}");
}
if (record.getType() != null) {
sql.SET("`type` = #{record.type,jdbcType=INTEGER}");
}
if (record.getCompanyId() != null) {
sql.SET("company_id = #{record.companyId,jdbcType=BIGINT}");
}
if (record.getCompanyName() != null) {
sql.SET("company_name = #{record.companyName,jdbcType=VARCHAR}");
}
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.getMerStoreId() != null) {
sql.SET("mer_store_id = #{record.merStoreId,jdbcType=BIGINT}");
}
if (record.getMerStoreName() != null) {
sql.SET("mer_store_name = #{record.merStoreName,jdbcType=VARCHAR}");
}
if (record.getDeviceName() != null) {
sql.SET("device_name = #{record.deviceName,jdbcType=VARCHAR}");
}
if (record.getDeviceSn() != null) {
sql.SET("device_sn = #{record.deviceSn,jdbcType=VARCHAR}");
}
if (record.getDeviceKey() != null) {
sql.SET("device_key = #{record.deviceKey,jdbcType=VARCHAR}");
}
if (record.getDeviceImei() != null) {
sql.SET("device_imei = #{record.deviceImei,jdbcType=VARCHAR}");
}
if (record.getDeviceIccid() != null) {
sql.SET("device_iccid = #{record.deviceIccid,jdbcType=VARCHAR}");
}
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_device");
sql.SET("id = #{record.id,jdbcType=BIGINT}");
sql.SET("`type` = #{record.type,jdbcType=INTEGER}");
sql.SET("company_id = #{record.companyId,jdbcType=BIGINT}");
sql.SET("company_name = #{record.companyName,jdbcType=VARCHAR}");
sql.SET("mer_id = #{record.merId,jdbcType=BIGINT}");
sql.SET("mer_name = #{record.merName,jdbcType=VARCHAR}");
sql.SET("mer_store_id = #{record.merStoreId,jdbcType=BIGINT}");
sql.SET("mer_store_name = #{record.merStoreName,jdbcType=VARCHAR}");
sql.SET("device_name = #{record.deviceName,jdbcType=VARCHAR}");
sql.SET("device_sn = #{record.deviceSn,jdbcType=VARCHAR}");
sql.SET("device_key = #{record.deviceKey,jdbcType=VARCHAR}");
sql.SET("device_imei = #{record.deviceImei,jdbcType=VARCHAR}");
sql.SET("device_iccid = #{record.deviceIccid,jdbcType=VARCHAR}");
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}");
HighDeviceExample example = (HighDeviceExample) parameter.get("example");
applyWhere(sql, example, true);
return sql.toString();
}
public String updateByPrimaryKeySelective(HighDevice record) {
SQL sql = new SQL();
sql.UPDATE("high_device");
if (record.getType() != null) {
sql.SET("`type` = #{type,jdbcType=INTEGER}");
}
if (record.getCompanyId() != null) {
sql.SET("company_id = #{companyId,jdbcType=BIGINT}");
}
if (record.getCompanyName() != null) {
sql.SET("company_name = #{companyName,jdbcType=VARCHAR}");
}
if (record.getMerId() != null) {
sql.SET("mer_id = #{merId,jdbcType=BIGINT}");
}
if (record.getMerName() != null) {
sql.SET("mer_name = #{merName,jdbcType=VARCHAR}");
}
if (record.getMerStoreId() != null) {
sql.SET("mer_store_id = #{merStoreId,jdbcType=BIGINT}");
}
if (record.getMerStoreName() != null) {
sql.SET("mer_store_name = #{merStoreName,jdbcType=VARCHAR}");
}
if (record.getDeviceName() != null) {
sql.SET("device_name = #{deviceName,jdbcType=VARCHAR}");
}
if (record.getDeviceSn() != null) {
sql.SET("device_sn = #{deviceSn,jdbcType=VARCHAR}");
}
if (record.getDeviceKey() != null) {
sql.SET("device_key = #{deviceKey,jdbcType=VARCHAR}");
}
if (record.getDeviceImei() != null) {
sql.SET("device_imei = #{deviceImei,jdbcType=VARCHAR}");
}
if (record.getDeviceIccid() != null) {
sql.SET("device_iccid = #{deviceIccid,jdbcType=VARCHAR}");
}
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, HighDeviceExample 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());
}
}
}

@ -42,12 +42,14 @@ public interface HighMerchantTripartitePlatformMapper extends HighMerchantTripar
"insert into high_merchant_tripartite_platform (mer_id, platform_type, ",
"platform_mer_name, platform_mer_number, ",
"profit_sharing_status, profit_sharing_ratio, ",
"profit_sharing_receivers_number, profit_sharing_receivers_name, ",
"`status`, create_time, ",
"update_time, ext_1, ",
"ext_2, ext_3)",
"values (#{merId,jdbcType=BIGINT}, #{platformType,jdbcType=INTEGER}, ",
"#{platformMerName,jdbcType=VARCHAR}, #{platformMerNumber,jdbcType=VARCHAR}, ",
"#{profitSharingStatus,jdbcType=BIT}, #{profitSharingRatio,jdbcType=DECIMAL}, ",
"#{profitSharingReceiversNumber,jdbcType=VARCHAR}, #{profitSharingReceiversName,jdbcType=VARCHAR}, ",
"#{status,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, ",
"#{updateTime,jdbcType=TIMESTAMP}, #{ext1,jdbcType=VARCHAR}, ",
"#{ext2,jdbcType=VARCHAR}, #{ext3,jdbcType=VARCHAR})"
@ -68,6 +70,8 @@ public interface HighMerchantTripartitePlatformMapper extends HighMerchantTripar
@Result(column="platform_mer_number", property="platformMerNumber", jdbcType=JdbcType.VARCHAR),
@Result(column="profit_sharing_status", property="profitSharingStatus", jdbcType=JdbcType.BIT),
@Result(column="profit_sharing_ratio", property="profitSharingRatio", jdbcType=JdbcType.DECIMAL),
@Result(column="profit_sharing_receivers_number", property="profitSharingReceiversNumber", jdbcType=JdbcType.VARCHAR),
@Result(column="profit_sharing_receivers_name", property="profitSharingReceiversName", jdbcType=JdbcType.VARCHAR),
@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),
@ -80,7 +84,8 @@ public interface HighMerchantTripartitePlatformMapper extends HighMerchantTripar
@Select({
"select",
"id, mer_id, platform_type, platform_mer_name, platform_mer_number, profit_sharing_status, ",
"profit_sharing_ratio, `status`, create_time, update_time, ext_1, ext_2, ext_3",
"profit_sharing_ratio, profit_sharing_receivers_number, profit_sharing_receivers_name, ",
"`status`, create_time, update_time, ext_1, ext_2, ext_3",
"from high_merchant_tripartite_platform",
"where id = #{id,jdbcType=BIGINT}"
})
@ -92,6 +97,8 @@ public interface HighMerchantTripartitePlatformMapper extends HighMerchantTripar
@Result(column="platform_mer_number", property="platformMerNumber", jdbcType=JdbcType.VARCHAR),
@Result(column="profit_sharing_status", property="profitSharingStatus", jdbcType=JdbcType.BIT),
@Result(column="profit_sharing_ratio", property="profitSharingRatio", jdbcType=JdbcType.DECIMAL),
@Result(column="profit_sharing_receivers_number", property="profitSharingReceiversNumber", jdbcType=JdbcType.VARCHAR),
@Result(column="profit_sharing_receivers_name", property="profitSharingReceiversName", jdbcType=JdbcType.VARCHAR),
@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),
@ -118,6 +125,8 @@ public interface HighMerchantTripartitePlatformMapper extends HighMerchantTripar
"platform_mer_number = #{platformMerNumber,jdbcType=VARCHAR},",
"profit_sharing_status = #{profitSharingStatus,jdbcType=BIT},",
"profit_sharing_ratio = #{profitSharingRatio,jdbcType=DECIMAL},",
"profit_sharing_receivers_number = #{profitSharingReceiversNumber,jdbcType=VARCHAR},",
"profit_sharing_receivers_name = #{profitSharingReceiversName,jdbcType=VARCHAR},",
"`status` = #{status,jdbcType=INTEGER},",
"create_time = #{createTime,jdbcType=TIMESTAMP},",
"update_time = #{updateTime,jdbcType=TIMESTAMP},",

@ -52,6 +52,14 @@ public class HighMerchantTripartitePlatformSqlProvider {
sql.VALUES("profit_sharing_ratio", "#{profitSharingRatio,jdbcType=DECIMAL}");
}
if (record.getProfitSharingReceiversNumber() != null) {
sql.VALUES("profit_sharing_receivers_number", "#{profitSharingReceiversNumber,jdbcType=VARCHAR}");
}
if (record.getProfitSharingReceiversName() != null) {
sql.VALUES("profit_sharing_receivers_name", "#{profitSharingReceiversName,jdbcType=VARCHAR}");
}
if (record.getStatus() != null) {
sql.VALUES("`status`", "#{status,jdbcType=INTEGER}");
}
@ -92,6 +100,8 @@ public class HighMerchantTripartitePlatformSqlProvider {
sql.SELECT("platform_mer_number");
sql.SELECT("profit_sharing_status");
sql.SELECT("profit_sharing_ratio");
sql.SELECT("profit_sharing_receivers_number");
sql.SELECT("profit_sharing_receivers_name");
sql.SELECT("`status`");
sql.SELECT("create_time");
sql.SELECT("update_time");
@ -143,6 +153,14 @@ public class HighMerchantTripartitePlatformSqlProvider {
sql.SET("profit_sharing_ratio = #{record.profitSharingRatio,jdbcType=DECIMAL}");
}
if (record.getProfitSharingReceiversNumber() != null) {
sql.SET("profit_sharing_receivers_number = #{record.profitSharingReceiversNumber,jdbcType=VARCHAR}");
}
if (record.getProfitSharingReceiversName() != null) {
sql.SET("profit_sharing_receivers_name = #{record.profitSharingReceiversName,jdbcType=VARCHAR}");
}
if (record.getStatus() != null) {
sql.SET("`status` = #{record.status,jdbcType=INTEGER}");
}
@ -182,6 +200,8 @@ public class HighMerchantTripartitePlatformSqlProvider {
sql.SET("platform_mer_number = #{record.platformMerNumber,jdbcType=VARCHAR}");
sql.SET("profit_sharing_status = #{record.profitSharingStatus,jdbcType=BIT}");
sql.SET("profit_sharing_ratio = #{record.profitSharingRatio,jdbcType=DECIMAL}");
sql.SET("profit_sharing_receivers_number = #{record.profitSharingReceiversNumber,jdbcType=VARCHAR}");
sql.SET("profit_sharing_receivers_name = #{record.profitSharingReceiversName,jdbcType=VARCHAR}");
sql.SET("`status` = #{record.status,jdbcType=INTEGER}");
sql.SET("create_time = #{record.createTime,jdbcType=TIMESTAMP}");
sql.SET("update_time = #{record.updateTime,jdbcType=TIMESTAMP}");
@ -222,6 +242,14 @@ public class HighMerchantTripartitePlatformSqlProvider {
sql.SET("profit_sharing_ratio = #{profitSharingRatio,jdbcType=DECIMAL}");
}
if (record.getProfitSharingReceiversNumber() != null) {
sql.SET("profit_sharing_receivers_number = #{profitSharingReceiversNumber,jdbcType=VARCHAR}");
}
if (record.getProfitSharingReceiversName() != null) {
sql.SET("profit_sharing_receivers_name = #{profitSharingReceiversName,jdbcType=VARCHAR}");
}
if (record.getStatus() != null) {
sql.SET("`status` = #{status,jdbcType=INTEGER}");
}

@ -1121,7 +1121,7 @@ public interface HighOrderMapperExt {
" from high_child_order a,high_order b " +
" where a.order_id = b.id " +
" and goods_type = 3 " +
"<if test='param.storeId != null'> and goods_id = #{param.storeId} </if>" +
"<if test='param.storeId != null'> and goods_id in (${param.storeId}) </if>" +
"<if test='param.status != null'> and b.order_status in (${param.status})</if>" +
"<if test='param.createTimeS != null'> <![CDATA[ and b.create_time >= #{param.createTimeS} ]]> </if>",
"<if test='param.createTimeE != null'> <![CDATA[ and b.create_time <= #{param.createTimeE} ]]> </if>",

@ -66,6 +66,8 @@ public interface OutRechargeOrderMapperExt {
"SELECT" +
" order_no as orderNo," +
" operator_name as operatorName," +
" labor_union_card as laborUnionCard," +
" refund_time as refundTime," +
" case recharge_type when 1 then '快充' when 2 then '慢充' end rechargeTypeName ," +
" case pay_type when 2 then '微信支付' when 3 then '工会卡支付' when 4 then '银联支付' when null then '积分抵扣' end payTypeName," +
" recharge_content as rechargeContent,recharge_price as rechargePrice,pay_price as payPrice,discount_deduction_price as discountDeductionPrice,integral_deduction_price as integralDeductionPrice,pay_real_price as payRealPrice," +

@ -0,0 +1,344 @@
package com.hai.entity;
import java.io.Serializable;
import java.util.Date;
/**
* high_device
* @author
*/
/**
*
* 代码由工具生成
*
**/
public class HighDevice implements Serializable {
/**
* 主键
*/
private Long id;
/**
* 设备类型 1. 商鹏4G 2. 4G打印机
*/
private Integer type;
/**
* 公司id
*/
private Long companyId;
/**
* 公司名称
*/
private String companyName;
/**
* 商户id
*/
private Long merId;
/**
* 商户名称
*/
private String merName;
/**
* 门店id
*/
private Long merStoreId;
/**
* 门店名称
*/
private String merStoreName;
/**
* 设备名称
*/
private String deviceName;
/**
* 设备SN编号
*/
private String deviceSn;
/**
* 设备KEY编号
*/
private String deviceKey;
/**
* 设备IMEI
*/
private String deviceImei;
/**
* 设备ICCID
*/
private String deviceIccid;
/**
* 状态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 Integer getType() {
return type;
}
public void setType(Integer type) {
this.type = type;
}
public Long getCompanyId() {
return companyId;
}
public void setCompanyId(Long companyId) {
this.companyId = companyId;
}
public String getCompanyName() {
return companyName;
}
public void setCompanyName(String companyName) {
this.companyName = companyName;
}
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 Long getMerStoreId() {
return merStoreId;
}
public void setMerStoreId(Long merStoreId) {
this.merStoreId = merStoreId;
}
public String getMerStoreName() {
return merStoreName;
}
public void setMerStoreName(String merStoreName) {
this.merStoreName = merStoreName;
}
public String getDeviceName() {
return deviceName;
}
public void setDeviceName(String deviceName) {
this.deviceName = deviceName;
}
public String getDeviceSn() {
return deviceSn;
}
public void setDeviceSn(String deviceSn) {
this.deviceSn = deviceSn;
}
public String getDeviceKey() {
return deviceKey;
}
public void setDeviceKey(String deviceKey) {
this.deviceKey = deviceKey;
}
public String getDeviceImei() {
return deviceImei;
}
public void setDeviceImei(String deviceImei) {
this.deviceImei = deviceImei;
}
public String getDeviceIccid() {
return deviceIccid;
}
public void setDeviceIccid(String deviceIccid) {
this.deviceIccid = deviceIccid;
}
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;
}
HighDevice other = (HighDevice) 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.getCompanyId() == null ? other.getCompanyId() == null : this.getCompanyId().equals(other.getCompanyId()))
&& (this.getCompanyName() == null ? other.getCompanyName() == null : this.getCompanyName().equals(other.getCompanyName()))
&& (this.getMerId() == null ? other.getMerId() == null : this.getMerId().equals(other.getMerId()))
&& (this.getMerName() == null ? other.getMerName() == null : this.getMerName().equals(other.getMerName()))
&& (this.getMerStoreId() == null ? other.getMerStoreId() == null : this.getMerStoreId().equals(other.getMerStoreId()))
&& (this.getMerStoreName() == null ? other.getMerStoreName() == null : this.getMerStoreName().equals(other.getMerStoreName()))
&& (this.getDeviceName() == null ? other.getDeviceName() == null : this.getDeviceName().equals(other.getDeviceName()))
&& (this.getDeviceSn() == null ? other.getDeviceSn() == null : this.getDeviceSn().equals(other.getDeviceSn()))
&& (this.getDeviceKey() == null ? other.getDeviceKey() == null : this.getDeviceKey().equals(other.getDeviceKey()))
&& (this.getDeviceImei() == null ? other.getDeviceImei() == null : this.getDeviceImei().equals(other.getDeviceImei()))
&& (this.getDeviceIccid() == null ? other.getDeviceIccid() == null : this.getDeviceIccid().equals(other.getDeviceIccid()))
&& (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 + ((getType() == null) ? 0 : getType().hashCode());
result = prime * result + ((getCompanyId() == null) ? 0 : getCompanyId().hashCode());
result = prime * result + ((getCompanyName() == null) ? 0 : getCompanyName().hashCode());
result = prime * result + ((getMerId() == null) ? 0 : getMerId().hashCode());
result = prime * result + ((getMerName() == null) ? 0 : getMerName().hashCode());
result = prime * result + ((getMerStoreId() == null) ? 0 : getMerStoreId().hashCode());
result = prime * result + ((getMerStoreName() == null) ? 0 : getMerStoreName().hashCode());
result = prime * result + ((getDeviceName() == null) ? 0 : getDeviceName().hashCode());
result = prime * result + ((getDeviceSn() == null) ? 0 : getDeviceSn().hashCode());
result = prime * result + ((getDeviceKey() == null) ? 0 : getDeviceKey().hashCode());
result = prime * result + ((getDeviceImei() == null) ? 0 : getDeviceImei().hashCode());
result = prime * result + ((getDeviceIccid() == null) ? 0 : getDeviceIccid().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(", type=").append(type);
sb.append(", companyId=").append(companyId);
sb.append(", companyName=").append(companyName);
sb.append(", merId=").append(merId);
sb.append(", merName=").append(merName);
sb.append(", merStoreId=").append(merStoreId);
sb.append(", merStoreName=").append(merStoreName);
sb.append(", deviceName=").append(deviceName);
sb.append(", deviceSn=").append(deviceSn);
sb.append(", deviceKey=").append(deviceKey);
sb.append(", deviceImei=").append(deviceImei);
sb.append(", deviceIccid=").append(deviceIccid);
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();
}
}

@ -46,6 +46,16 @@ public class HighMerchantTripartitePlatform implements Serializable {
*/
private BigDecimal profitSharingRatio;
/**
* 分账接收方账户
*/
private String profitSharingReceiversNumber;
/**
* 分账接收方名称
*/
private String profitSharingReceiversName;
/**
* 状态 0删除 1正常
*/
@ -125,6 +135,22 @@ public class HighMerchantTripartitePlatform implements Serializable {
this.profitSharingRatio = profitSharingRatio;
}
public String getProfitSharingReceiversNumber() {
return profitSharingReceiversNumber;
}
public void setProfitSharingReceiversNumber(String profitSharingReceiversNumber) {
this.profitSharingReceiversNumber = profitSharingReceiversNumber;
}
public String getProfitSharingReceiversName() {
return profitSharingReceiversName;
}
public void setProfitSharingReceiversName(String profitSharingReceiversName) {
this.profitSharingReceiversName = profitSharingReceiversName;
}
public Integer getStatus() {
return status;
}
@ -192,6 +218,8 @@ public class HighMerchantTripartitePlatform implements Serializable {
&& (this.getPlatformMerNumber() == null ? other.getPlatformMerNumber() == null : this.getPlatformMerNumber().equals(other.getPlatformMerNumber()))
&& (this.getProfitSharingStatus() == null ? other.getProfitSharingStatus() == null : this.getProfitSharingStatus().equals(other.getProfitSharingStatus()))
&& (this.getProfitSharingRatio() == null ? other.getProfitSharingRatio() == null : this.getProfitSharingRatio().equals(other.getProfitSharingRatio()))
&& (this.getProfitSharingReceiversNumber() == null ? other.getProfitSharingReceiversNumber() == null : this.getProfitSharingReceiversNumber().equals(other.getProfitSharingReceiversNumber()))
&& (this.getProfitSharingReceiversName() == null ? other.getProfitSharingReceiversName() == null : this.getProfitSharingReceiversName().equals(other.getProfitSharingReceiversName()))
&& (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()))
@ -211,6 +239,8 @@ public class HighMerchantTripartitePlatform implements Serializable {
result = prime * result + ((getPlatformMerNumber() == null) ? 0 : getPlatformMerNumber().hashCode());
result = prime * result + ((getProfitSharingStatus() == null) ? 0 : getProfitSharingStatus().hashCode());
result = prime * result + ((getProfitSharingRatio() == null) ? 0 : getProfitSharingRatio().hashCode());
result = prime * result + ((getProfitSharingReceiversNumber() == null) ? 0 : getProfitSharingReceiversNumber().hashCode());
result = prime * result + ((getProfitSharingReceiversName() == null) ? 0 : getProfitSharingReceiversName().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());
@ -233,6 +263,8 @@ public class HighMerchantTripartitePlatform implements Serializable {
sb.append(", platformMerNumber=").append(platformMerNumber);
sb.append(", profitSharingStatus=").append(profitSharingStatus);
sb.append(", profitSharingRatio=").append(profitSharingRatio);
sb.append(", profitSharingReceiversNumber=").append(profitSharingReceiversNumber);
sb.append(", profitSharingReceiversName=").append(profitSharingReceiversName);
sb.append(", status=").append(status);
sb.append(", createTime=").append(createTime);
sb.append(", updateTime=").append(updateTime);

@ -566,6 +566,146 @@ public class HighMerchantTripartitePlatformExample {
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberIsNull() {
addCriterion("profit_sharing_receivers_number is null");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberIsNotNull() {
addCriterion("profit_sharing_receivers_number is not null");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberEqualTo(String value) {
addCriterion("profit_sharing_receivers_number =", value, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberNotEqualTo(String value) {
addCriterion("profit_sharing_receivers_number <>", value, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberGreaterThan(String value) {
addCriterion("profit_sharing_receivers_number >", value, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberGreaterThanOrEqualTo(String value) {
addCriterion("profit_sharing_receivers_number >=", value, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberLessThan(String value) {
addCriterion("profit_sharing_receivers_number <", value, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberLessThanOrEqualTo(String value) {
addCriterion("profit_sharing_receivers_number <=", value, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberLike(String value) {
addCriterion("profit_sharing_receivers_number like", value, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberNotLike(String value) {
addCriterion("profit_sharing_receivers_number not like", value, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberIn(List<String> values) {
addCriterion("profit_sharing_receivers_number in", values, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberNotIn(List<String> values) {
addCriterion("profit_sharing_receivers_number not in", values, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberBetween(String value1, String value2) {
addCriterion("profit_sharing_receivers_number between", value1, value2, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNumberNotBetween(String value1, String value2) {
addCriterion("profit_sharing_receivers_number not between", value1, value2, "profitSharingReceiversNumber");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameIsNull() {
addCriterion("profit_sharing_receivers_name is null");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameIsNotNull() {
addCriterion("profit_sharing_receivers_name is not null");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameEqualTo(String value) {
addCriterion("profit_sharing_receivers_name =", value, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameNotEqualTo(String value) {
addCriterion("profit_sharing_receivers_name <>", value, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameGreaterThan(String value) {
addCriterion("profit_sharing_receivers_name >", value, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameGreaterThanOrEqualTo(String value) {
addCriterion("profit_sharing_receivers_name >=", value, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameLessThan(String value) {
addCriterion("profit_sharing_receivers_name <", value, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameLessThanOrEqualTo(String value) {
addCriterion("profit_sharing_receivers_name <=", value, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameLike(String value) {
addCriterion("profit_sharing_receivers_name like", value, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameNotLike(String value) {
addCriterion("profit_sharing_receivers_name not like", value, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameIn(List<String> values) {
addCriterion("profit_sharing_receivers_name in", values, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameNotIn(List<String> values) {
addCriterion("profit_sharing_receivers_name not in", values, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameBetween(String value1, String value2) {
addCriterion("profit_sharing_receivers_name between", value1, value2, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andProfitSharingReceiversNameNotBetween(String value1, String value2) {
addCriterion("profit_sharing_receivers_name not between", value1, value2, "profitSharingReceiversName");
return (Criteria) this;
}
public Criteria andStatusIsNull() {
addCriterion("`status` is null");
return (Criteria) this;

@ -0,0 +1,44 @@
package com.hai.enum_type;
import java.util.Objects;
/**
* 设备类型
* @author hurui
*/
public enum DeviceTypeEnum {
type1(1 , "商鹏云打印"),
type2(2, "ZKC云打印"),
;
private Integer type;
private String name;
DeviceTypeEnum(int type , String name) {
this.type = type;
this.name = name;
}
public static String getNameByType(Integer type) {
for (DeviceTypeEnum ele : values()) {
if(Objects.equals(type,ele.getType())) return ele.getName();
}
return null;
}
public Integer getType() {
return type;
}
public void setType(Integer type) {
this.type = type;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

@ -23,6 +23,8 @@ public class OutRechargeOrderModel extends OutRechargeOrder {
private Date payTime;
private String payStatusName;
private String rechargeStatusName;
private String laborUnionCard;
private Date refundTime;
@Override
public String getOrderNo() {
@ -174,4 +176,24 @@ public class OutRechargeOrderModel extends OutRechargeOrder {
public void setRechargeStatusName(String rechargeStatusName) {
this.rechargeStatusName = rechargeStatusName;
}
@Override
public String getLaborUnionCard() {
return laborUnionCard;
}
@Override
public void setLaborUnionCard(String laborUnionCard) {
this.laborUnionCard = laborUnionCard;
}
@Override
public Date getRefundTime() {
return refundTime;
}
@Override
public void setRefundTime(Date refundTime) {
this.refundTime = refundTime;
}
}

@ -0,0 +1,42 @@
package com.hai.service;
import com.hai.entity.HighDevice;
import java.util.List;
import java.util.Map;
/**
* 设备管理
* @author hurui
*/
public interface HighDeviceService {
/**
* 编辑设备
* @param device
*/
void editDevice(HighDevice device);
/**
* 查询设备详情
* @param deviceId
* @return
*/
HighDevice getDetailById(Long deviceId);
/**
* 查询设备列表
* @param param
* @return
*/
List<HighDevice> getDeviceList(Map<String, Object> param);
/**
* 根据门店id查询设备列表
* @param storeId
* @return
*/
List<HighDevice> getDeviceListByStoreId(Long storeId);
}

@ -70,6 +70,13 @@ public interface HighMerchantStoreService {
*/
HighMerchantStore getDetailById(Long id);
/**
* 查询门店列表
* @param merId
* @return
*/
List<HighMerchantStore> getStoreListByMer(Long merId);
/**
* @Author 胡锐
* @Description 查询门店列表

@ -23,6 +23,15 @@ public interface SecConfigService {
**/
SecConfig findById(Integer id);
/**
* @ClassName SecConfigService.java
* @author Sum1Dream
* @version 1.0.0
* @Description //TODO
* @createTime 17:31 2021/6/23
**/
void insertSecConfig(SecConfig secConfig);
/**
* @ClassName SecConfigService.java
* @author Sum1Dream

@ -0,0 +1,77 @@
package com.hai.service.impl;
import com.hai.dao.HighDeviceMapper;
import com.hai.entity.HighDevice;
import com.hai.entity.HighDeviceExample;
import com.hai.service.HighDeviceService;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service("deviceService")
public class HighDeviceServiceImpl implements HighDeviceService {
@Resource
private HighDeviceMapper deviceMapper;
@Override
public void editDevice(HighDevice device) {
if (device.getId() == null) {
device.setCreateTime(new Date());
device.setUpdateTime(new Date());
device.setStatus(1);
deviceMapper.insert(device);
} else {
device.setUpdateTime(new Date());
deviceMapper.updateByPrimaryKey(device);
}
}
@Override
public HighDevice getDetailById(Long deviceId) {
return deviceMapper.selectByPrimaryKey(deviceId);
}
@Override
public List<HighDevice> getDeviceList(Map<String, Object> param) {
HighDeviceExample example = new HighDeviceExample();
HighDeviceExample.Criteria criteria = example.createCriteria().andStatusNotEqualTo(0);
if (MapUtils.getInteger(param, "type") != null) {
criteria.andTypeEqualTo(MapUtils.getInteger(param, "type"));
}
if (MapUtils.getLong(param, "companyId") != null) {
criteria.andCompanyIdEqualTo(MapUtils.getLong(param, "companyId"));
}
if (MapUtils.getLong(param, "merId") != null) {
criteria.andMerIdEqualTo(MapUtils.getLong(param, "merId"));
}
if (MapUtils.getLong(param, "storeId") != null) {
criteria.andMerStoreIdEqualTo(MapUtils.getLong(param, "storeId"));
}
if (StringUtils.isNotBlank(MapUtils.getString(param, "deviceName"))) {
criteria.andDeviceNameLike("%" + MapUtils.getString(param, "deviceName") + "%");
}
example.setOrderByClause("create_time desc");
return deviceMapper.selectByExample(example);
}
@Override
public List<HighDevice> getDeviceListByStoreId(Long storeId) {
HighDeviceExample example = new HighDeviceExample();
example.createCriteria()
.andMerStoreIdEqualTo(storeId)
.andStatusNotEqualTo(0);
return deviceMapper.selectByExample(example);
}
}

@ -142,6 +142,8 @@ public class HighGasOilPriceOfficialServiceImpl implements HighGasOilPriceOffici
List<HighGasOilPrice> list = highGasOilPriceService.getPriceListByRegionAndOilNo(priceOfficial.getRegionId(), priceOfficial.getOilNo());
for (HighGasOilPrice gasOilPrice : list) {
gasOilPrice.setPriceOfficial(priceOfficial.getPriceOfficial());
gasOilPrice.setPriceGun(priceOfficial.getPriceOfficial());
gasOilPrice.setPriceVip(priceOfficial.getPriceOfficial().subtract(gasOilPrice.getPreferentialMargin()));
highGasOilPriceService.editGasOilPrice(gasOilPrice);
}
}

@ -98,9 +98,7 @@ public class HighGasOilPriceTaskServiceImpl implements HighGasOilPriceTaskServic
}
gasOilPriceOfficialService.editPrice(gasOilPriceTask.getRegionId(), gasOilPriceTask.getOilNo(), gasOilPriceTask.getPrice());
new Thread(() -> {
gasOilPriceOfficialService.refreshGasPriceOfficial(gasOilPriceTask.getRegionId(), gasOilPriceTask.getOilNo());
}).start();
}
// 油站价

@ -170,6 +170,13 @@ public class HighMerchantStoreServiceImpl implements HighMerchantStoreService {
return highMerchantStoreMapper.selectByPrimaryKey(id);
}
@Override
public List<HighMerchantStore> getStoreListByMer(Long merId) {
HighMerchantStoreExample example = new HighMerchantStoreExample();
example.createCriteria().andMerchantIdEqualTo(merId);
return highMerchantStoreMapper.selectByExample(example);
}
@Override
public List<HighMerchantStore> getMerchantStoreList(Map<String, Object> map) {
HighMerchantStoreExample example = new HighMerchantStoreExample();

@ -378,6 +378,7 @@ 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();
@ -392,7 +393,9 @@ public class HighOrderServiceImpl implements HighOrderService {
highChildOrder.getGasOilLiters().toString(),
highOrder.getTotalPrice().toString()
), 1);
Thread.sleep(3000);
Thread.sleep(6000);
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
highChildOrder.getGoodsName(),
@ -408,6 +411,7 @@ public class HighOrderServiceImpl implements HighOrderService {
e.printStackTrace();
}
}).start();
}
} else if (store.getSourceType().equals(2)) {
// 推送团油订单
Map<String,Object> paramMap = new HashMap<>();
@ -673,6 +677,7 @@ 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();
@ -687,7 +692,7 @@ public class HighOrderServiceImpl implements HighOrderService {
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
Thread.sleep(3000);
Thread.sleep(6000);
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
highChildOrder.getGoodsName(),
@ -703,6 +708,8 @@ public class HighOrderServiceImpl implements HighOrderService {
e.printStackTrace();
}
}).start();
}
} else if (store.getSourceType().equals(2)) {
// 推送团油订单
Map<String,Object> paramMap = new HashMap<>();
@ -772,11 +779,11 @@ public class HighOrderServiceImpl implements HighOrderService {
}
String goodsDesc = "";
String tranDesc = "";
String instCode = "11101290";
String instCode = "11101527";
String businessType = "hisen_consume";
if (order.getHighChildOrderList().get(0).getGoodsType() == 1) {
instCode = "11101291";
instCode = "11101526";
businessType = "sinopec_oil_code";
goodsDesc = "购买加油券";
tranDesc = order.getHighChildOrderList().get(0).getGoodsName();
@ -1005,6 +1012,7 @@ 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();
@ -1019,7 +1027,7 @@ public class HighOrderServiceImpl implements HighOrderService {
highChildOrder.getGasOilLiters().toString(),
order.getTotalPrice().toString()
), 1);
Thread.sleep(3000);
Thread.sleep(6000);
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
highChildOrder.getGoodsName(),
@ -1035,6 +1043,8 @@ public class HighOrderServiceImpl implements HighOrderService {
e.printStackTrace();
}
}).start();
}
} else if (store.getSourceType().equals(2)) {
// 推送团油订单
Map<String,Object> paramMap = new HashMap<>();

@ -83,6 +83,7 @@ public class HltUnionCardVipServiceImpl implements HltUnionCardVipService {
// 1: 1-E信通会员权益,2-工会卡会员权益
int equityLevel = 0;
if (cardInfoObject != null) {
// 判断用户是否有会员权益
for (Object dataObject : cardInfoObject.getJSONArray("data")) {
JSONObject d = (JSONObject) dataObject;
@ -98,6 +99,7 @@ public class HltUnionCardVipServiceImpl implements HltUnionCardVipService {
equityLevel = 1;
}
}
}
// 判断汇联通会员等级 1-E信通会员,2-工会卡会员,12-E信通和工会卡会员
if (isVip) {
@ -199,7 +201,6 @@ public class HltUnionCardVipServiceImpl implements HltUnionCardVipService {
if (equityLevel == 1) {
HuiLianTongUnionCardConfig.submitSms(phone , "“E信通会员专属”3张4元话费券、2张96折加油券已到账,打开“嗨森逛”微信小程序>我的>我的优惠券即可直接使用,到账之日起1月内(30天)有效。");
} else {
HuiLianTongUnionCardConfig.submitSms(phone , "“工会卡用户专属”2元话费券、2张96折加油券已到账,打开“嗨森逛”微信小程序>我的>我的优惠券即可直接使用,到账之日起1月内(30天)有效。");
}
}

@ -427,19 +427,19 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService {
if (MapUtils.getLong(map, "createTimeS") != null) {
map.put("createTimeS", DateUtil.date2String(new Date(MapUtils.getLong(map, "createTimeS")), "yyyy-MM-dd HH:mm:ss"));
map.put("createTimeS", MapUtils.getString(map, "createTimeS"));
}
if (MapUtils.getLong(map, "createTimeE") != null) {
map.put("createTimeE", DateUtil.date2String(new Date(MapUtils.getLong(map, "createTimeE")), "yyyy-MM-dd HH:mm:ss"));
map.put("createTimeE", MapUtils.getString(map, "createTimeE"));
}
if (MapUtils.getLong(map, "payTimeS") != null) {
map.put("payTimeS", DateUtil.date2String(new Date(MapUtils.getLong(map, "payTimeS")), "yyyy-MM-dd HH:mm:ss"));
map.put("payTimeS", MapUtils.getString(map, "payTimeS"));
}
if (MapUtils.getLong(map, "payTimeE") != null) {
map.put("payTimeE", DateUtil.date2String(new Date(MapUtils.getLong(map, "payTimeE")), "yyyy-MM-dd HH:mm:ss"));
map.put("payTimeE", MapUtils.getString(map, "payTimeE"));
}
return outRechargeOrderMapper.selectOrderCount(map);
@ -535,7 +535,7 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService {
String goodsDesc = "充值话费";
String tranDesc = order.getRechargeContent() + "充值" + order.getPayRealPrice() + "元话费";
String instCode = "11101290";
String instCode = "11101527";
String businessType = "hisen_consume";
// 工会卡支付
@ -605,9 +605,6 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService {
if (order.getRechargeStatus() == 201) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法退款,订单处于充值中状态");
}
// 1:支付宝 2:微信 3:汇联通工会卡 4:银联 5:银联分期
if (order.getPayType() == null) {
// 退还积分
if (order.getIntegralNum() != null) {
highUserService.goldHandle(order.getUserId(), order.getIntegralNum().intValue(), 1, 3, order.getId());
@ -618,7 +615,6 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService {
outRechargeOrderService.updateOrder(order);
}
}
} else {
// 微信退款
if (order.getPayType() == 2) {
Map<String, String> param = new HashMap<>();
@ -672,22 +668,6 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService {
} else {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, dataObject.getString("message"));
}
}
// 银联退款
if (order.getPayType() == 4) {
// 订单退款
JSONObject refund = UnionPayConfig.zwrefund(UnionPayConfig.MER_ID2, UnionPayConfig.TERM_ID2, order.getOrderNo(), order.getPaySerialNo(), order.getPayRealPrice().multiply(new BigDecimal("100")).longValue());
if (!refund.getString("resultcode").equals("W6")) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, refund.getString("returnmsg"));
}
order.setPayStatus(105);
order.setRechargeStatus(203);
order.setRefundTime(new Date());
order.setOutRefundNo(refund.getString("oriwtorderid"));
order.setRefundFee(order.getPayRealPrice());
outRechargeOrderService.updateOrder(order);
}
// 商户预充值 帐户退款
if (order.getPayType() == 6) {
@ -742,6 +722,21 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService {
}
}
// 银联退款
if (order.getPayType() == 4) {
// 订单退款
JSONObject refund = UnionPayConfig.zwrefund(UnionPayConfig.MER_ID2, UnionPayConfig.TERM_ID2, order.getOrderNo(), order.getPaySerialNo(), order.getPayRealPrice().multiply(new BigDecimal("100")).longValue());
if (!refund.getString("resultcode").equals("W6")) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, refund.getString("returnmsg"));
}
order.setPayStatus(105);
order.setRechargeStatus(203);
order.setRefundTime(new Date());
order.setOutRefundNo(refund.getString("oriwtorderid"));
order.setRefundFee(order.getPayRealPrice());
outRechargeOrderService.updateOrder(order);
}
if (order.getMemDiscountId() != null) {
HighDiscountUserRel rel = highDiscountUserRelService.getRelById(order.getMemDiscountId());
@ -816,6 +811,23 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService {
outRechargeChildOrderService.updateOrder(childOrder);
type = childOrder.getRechargePlatform();
} else {
// 查询充值子订单
Map<String, Object> childOrderMap103 = new HashMap<>();
childOrderMap.put("parent_order_id", outRechargeOrder.getId());
childOrderMap.put("status", 103);
List<OutRechargeChildOrder> childOrderList103 = outRechargeChildOrderService.getListRechargeChildOrder(childOrderMap103);
if (childOrderList103.size() > 0) {
type = childOrderList103.get(0).getRechargePlatform();
}
}
if (type == 2) {
type = 1;
} else {
type++;
}
JSONObject object = new JSONObject();
@ -826,10 +838,12 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService {
for (String s : rechargePlatform) {
// 尖椒充值
if (s.equals("1") && (type == 2 || type == 0)) {
if (s.equals("1") && type == 1) {
object.put("out_order_id", orderNo);
object.put("amount", outRechargePrice.getRechargePrice());
object.put("mobile", outRechargeOrder.getRechargeContent());
object.put("notifyUrl", CommonSysConst.getSysConfig().getJjNotifyUrl());
System.out.println("尖椒请求回调地址---------------------" + CommonSysConst.getSysConfig().getJjNotifyUrl());
if (outRechargePrice.getRechargeType() == 1) {
object.put("is_fast", 1);
}
@ -843,11 +857,14 @@ public class OutRechargeOrderServiceImpl implements OutRechargeOrderService {
rechargePlatformType = 1;
break;
}
if (s.equals("2") && (type == 1 || type == 0)) {
// 龙阅充值
if (s.equals("2") && type == 2) {
object.put("out_trade_num", orderNo);
object.put("product_id", outRechargePrice.getGoodsId());
object.put("mobile", outRechargeOrder.getRechargeContent());
object.put("notifyUrl", CommonSysConst.getSysConfig().getLyNotifyUrl());
JSONObject returnObject = RechargeConfig.rechargeOrderByLy(object);
System.out.println("龙阅请求回调地址---------------------" + CommonSysConst.getSysConfig().getLyNotifyUrl());
object.put("return_content", returnObject);
if (returnObject != null && returnObject.getLong("errno") == 0) {
childOrder.setStatus(102);

@ -32,6 +32,11 @@ public class SecConfigServiceImpl implements SecConfigService {
return secConfigMapper.selectByPrimaryKey(id);
}
@Override
public void insertSecConfig(SecConfig secConfig) {
secConfigMapper.insert(secConfig);
}
@Override
public void updateSecConfig(SecConfig secConfig) {
secConfigMapper.updateByPrimaryKeySelective(secConfig);

@ -25,6 +25,7 @@ import com.hai.service.*;
import com.hai.service.pay.NotifyService;
import com.hai.service.pay.PayService;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
@ -298,6 +299,7 @@ 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();
@ -313,7 +315,7 @@ public class GoodsOrderServiceImpl implements PayService {
order.getTotalPrice().toString()
), 1);
Thread.sleep(3000);
Thread.sleep(6000);
sp.print(store.getDeviceSn(),
SpPrinterTemplate.oilClientStubTemp(
@ -330,6 +332,8 @@ public class GoodsOrderServiceImpl implements PayService {
e.printStackTrace();
}
}).start();
}
} else if (store.getSourceType().equals(2)) {
// 推送团油订单
Map<String,Object> paramMap = new HashMap<>();

Loading…
Cancel
Save