合并代码

dev-discount
袁野 3 years ago
commit 9b8f834d54
  1. 163
      hai-bweb/src/main/java/com/bweb/controller/HighGasController.java
  2. 234
      hai-bweb/src/main/java/com/bweb/controller/HighGasStaffController.java
  3. 10
      hai-bweb/src/main/java/com/bweb/controller/HighTyAgentOilStationController.java
  4. 28
      hai-bweb/src/main/java/com/bweb/controller/LoginController.java
  5. 2
      hai-bweb/src/main/resources/pre/application.yml
  6. 144
      hai-cweb/src/main/java/com/cweb/controller/HighGasController.java
  7. 159
      hai-cweb/src/main/java/com/cweb/controller/pay/OrderController.java
  8. 2
      hai-cweb/src/main/resources/pre/application.yml
  9. 2
      hai-schedule/src/main/java/com/hai/schedule/HighGasSchedule.java
  10. 5
      hai-service/src/main/java/com/hai/dao/HighGasOilPriceMapperExt.java
  11. 130
      hai-service/src/main/java/com/hai/dao/HighGasStaffMapper.java
  12. 7
      hai-service/src/main/java/com/hai/dao/HighGasStaffMapperExt.java
  13. 346
      hai-service/src/main/java/com/hai/dao/HighGasStaffSqlProvider.java
  14. 11
      hai-service/src/main/java/com/hai/dao/HighOrderMapperExt.java
  15. 248
      hai-service/src/main/java/com/hai/entity/HighGasStaff.java
  16. 1073
      hai-service/src/main/java/com/hai/entity/HighGasStaffExample.java
  17. 34
      hai-service/src/main/java/com/hai/enum_type/GasPositionType.java
  18. 36
      hai-service/src/main/java/com/hai/enum_type/GasStaffStatus.java
  19. 47
      hai-service/src/main/java/com/hai/enum_type/OrderStatusEnum.java
  20. 9
      hai-service/src/main/java/com/hai/model/TyOrderModel.java
  21. 10
      hai-service/src/main/java/com/hai/model/UserInfoModel.java
  22. 8
      hai-service/src/main/java/com/hai/service/HighGasOilPriceService.java
  23. 51
      hai-service/src/main/java/com/hai/service/HighGasStaffService.java
  24. 10
      hai-service/src/main/java/com/hai/service/HighOrderService.java
  25. 5
      hai-service/src/main/java/com/hai/service/impl/HighGasOilPriceServiceImpl.java
  26. 159
      hai-service/src/main/java/com/hai/service/impl/HighGasStaffServiceImpl.java
  27. 8
      hai-service/src/main/java/com/hai/service/impl/HighOilCardRecordServiceImpl.java
  28. 13
      hai-service/src/main/java/com/hai/service/impl/HighOrderServiceImpl.java

@ -1,6 +1,8 @@
package com.bweb.controller;
import com.alibaba.excel.EasyExcel;
import com.alibaba.fastjson.JSONObject;
import com.bweb.config.SysConst;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.hai.common.exception.ErrorCode;
@ -8,27 +10,20 @@ import com.hai.common.exception.ErrorHelp;
import com.hai.common.exception.SysCode;
import com.hai.common.security.UserCenter;
import com.hai.common.utils.CoordCommonUtil;
import com.hai.common.utils.DateUtil;
import com.hai.common.utils.PageUtil;
import com.hai.common.utils.ResponseMsgUtil;
import com.hai.config.HuiLianTongUnionCardConfig;
import com.hai.config.TuanYouConfig;
import com.hai.config.WxOrderConfig;
import com.hai.entity.HighChildOrder;
import com.hai.entity.HighGasOilPrice;
import com.hai.entity.HighMerchantStore;
import com.hai.entity.HighOrder;
import com.hai.enum_type.GasOilPriceStatusEnum;
import com.hai.enum_type.MerStoreAmountSourceTypeEnum;
import com.hai.enum_type.MerStoreAmountTypeEnum;
import com.hai.enum_type.OrderPayTypeEnum;
import com.hai.model.HighMerchantStoreModel;
import com.hai.model.OrderRefundModel;
import com.hai.model.ResponseData;
import com.hai.model.UserInfoModel;
import com.hai.entity.*;
import com.hai.enum_type.*;
import com.hai.model.*;
import com.hai.msg.entity.MsgTopic;
import com.hai.service.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -38,6 +33,7 @@ import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.File;
import java.util.*;
import java.util.stream.Collectors;
@ -82,15 +78,39 @@ public class HighGasController {
Map<String, Object> param = new HashMap<>();;
param.put("gasName", userInfoModel.getMerchantStore().getStoreName());
Map<String, Object> today = new HashMap<>();
Map<String, Object> history = new HashMap<>();
// 历史加油总金额
Map<String, Object> historyTotal = highOrderService.getGasHistoryOrderCount(userInfoModel.getMerchantStore().getId(), "2,3,4,6,7");
history.put("totalPrice", historyTotal.get("price"));
history.put("totalCount", historyTotal.get("count"));
// 历史加油金额
Map<String, Object> historyIncomet = highOrderService.getGasHistoryOrderCount(userInfoModel.getMerchantStore().getId(), "2,3,6,7");
history.put("incomePrice", historyIncomet.get("price"));
history.put("incomeCount", historyIncomet.get("count"));
// 历史退款
Map<String, Object> historyRefund = highOrderService.getGasHistoryOrderCount(userInfoModel.getMerchantStore().getId(), "4");
history.put("refundPrice", historyRefund.get("price"));
history.put("refundCount", historyRefund.get("count"));
param.put("history", history);
Map<String, Object> incometObject = highOrderService.getGasTheDayOrderCount(userInfoModel.getMerchantStore().getId(), "2,3,6,7");
today.put("incomePrice", incometObject.get("price"));
today.put("incomeCount", incometObject.get("count"));
Map<String, Object> refundObject = highOrderService.getGasTheDayOrderCount(userInfoModel.getMerchantStore().getId(), "4");
today.put("refundPrice", refundObject.get("price"));
today.put("refundCount", refundObject.get("count"));
Map<String, Object> today = new HashMap<>();
// 今日加油总金额
Map<String, Object> todayTotal = highOrderService.getGasTheDayOrderCount(userInfoModel.getMerchantStore().getId(), "2,3,4,6,7");
today.put("totalPrice", todayTotal.get("price"));
today.put("totalCount", todayTotal.get("count"));
// 今日加油金额
Map<String, Object> todayIncomet = highOrderService.getGasTheDayOrderCount(userInfoModel.getMerchantStore().getId(), "2,3,6,7");
today.put("incomePrice", todayIncomet.get("price"));
today.put("incomeCount", todayIncomet.get("count"));
// 今日退款
Map<String, Object> todayRefund = highOrderService.getGasTheDayOrderCount(userInfoModel.getMerchantStore().getId(), "4");
today.put("refundPrice", todayRefund.get("price"));
today.put("refundCount", todayRefund.get("count"));
param.put("today", today);
return ResponseMsgUtil.success(param);
@ -106,6 +126,8 @@ public class HighGasController {
@ApiOperation(value = "查询油站订单列表")
public ResponseData getGasOrderList(@RequestParam(name = "orderNo", required = false) String orderNo,
@RequestParam(name = "status", required = false) Integer status,
@RequestParam(name = "createTimeS", required = false) Long createTimeS,
@RequestParam(name = "createTimeE", required = false) Long createTimeE,
@RequestParam(name = "pageNum", required = true) Integer pageNum,
@RequestParam(name = "pageSize", required = true) Integer pageSize) {
try {
@ -117,6 +139,8 @@ public class HighGasController {
Map<String, Object> param = new HashMap<>();;
param.put("storeId", userInfoModel.getMerchantStore().getId());
param.put("orderNo", orderNo);
param.put("createTimeS", createTimeS);
param.put("createTimeE", createTimeE);
if (status == null) {
param.put("status", "2,3,4,6,7");
@ -133,6 +157,84 @@ public class HighGasController {
}
}
@RequestMapping(value="/exportGasOrder",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "导出油站订单")
public ResponseData exportGasOrder(@RequestParam(name = "orderNo", required = false) String orderNo,
@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) {
log.error("HighGasController -> disabledOil() error!","");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
Map<String, Object> param = new HashMap<>();;
param.put("storeId", userInfoModel.getMerchantStore().getId());
param.put("orderNo", orderNo);
param.put("createTimeS", createTimeS);
param.put("createTimeE", createTimeE);
if (status == null) {
param.put("status", "2,3,4,6,7");
} else {
param.put("status", status);
}
List<String> headList = new ArrayList<>();
headList.add("订单号");
headList.add("油站名称");
headList.add("油品类型");
headList.add("油品油号");
headList.add("油枪号");
headList.add("油枪价");
headList.add("优惠价");
headList.add("加油升数");
headList.add("加油金额");
headList.add("支付金额");
headList.add("优惠金额");
headList.add("创建时间");
headList.add("状态");
List<List<Object>> dataList = new ArrayList<>();
List<Object> data;
List<GasOrderModel> orderList = highOrderService.getGasOrderList(param);
for (GasOrderModel orderModel: orderList) {
data = new ArrayList<>();
data.add(orderModel.getOrderNo());
data.add(orderModel.getGasName());
data.add(orderModel.getGasOilType().equals("1") ? "汽油": "柴油");
data.add(orderModel.getGasOilNo() + "#");
data.add(orderModel.getGasGunNo() + "号");
data.add(orderModel.getGasPriceGun());
data.add(orderModel.getGasPricePreferences());
data.add(orderModel.getGasOilLiters());
data.add(orderModel.getTotalPrice());
data.add(orderModel.getPayRealPrice());
data.add(orderModel.getDeductionPrice());
data.add(DateUtil.date2String(orderModel.getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
data.add(OrderStatusEnum.getNameByType(orderModel.getStatus()));
dataList.add(data);
}
String fileUrl = SysConst.getSysConfig().getFileUrl() + "/temporary/";
String pathName = System.currentTimeMillis()+".xlsx";
File file = new File(fileUrl);
if (!file.exists()) {
file.mkdirs();
}
EasyExcel.write(fileUrl+pathName).head(generationHead(headList)).sheet("油卡").doWrite(dataList);
return ResponseMsgUtil.success(pathName);
} catch (Exception e) {
log.error("HighGasController -> getGasOrderList() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/getGasOrderDetail",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "查询油站订单详情")
@ -286,6 +388,11 @@ public class HighGasController {
public ResponseData refuelingOrderRefund(@RequestBody JSONObject body) {
try {
UserInfoModel userInfoModel = userCenter.getSessionModel(UserInfoModel.class);
if (userInfoModel == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
if(body == null && body.getLong("orderId") == null && StringUtils.isBlank(body.getString("refundContent"))) {
log.error("HighOrderController --> refuelingOrderRefund() error!", "参数错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
@ -359,6 +466,8 @@ public class HighGasController {
pushParam.put("sourceType", MerStoreAmountSourceTypeEnum.type3.getType());
pushParam.put("sourceId", order.getId());
pushParam.put("sourceContent", "订单号:" + order.getOrderNo() + ",退款金额:¥" + order.getTotalPrice());
pushParam.put("opUserId", userInfoModel.getSecUser().getId());
pushParam.put("opUserName", userInfoModel.getSecUser().getUserName());
// 退款到预存余额
this.redisTemplate.boundListOps(MsgTopic.MerStoreAccount.getName()).leftPush(pushParam);
@ -385,6 +494,22 @@ public class HighGasController {
}
}
/**
* 生成头部
* @param headList
* @return
*/
private static List<List<String>> generationHead(List<String> headList) {
List<List<String>> list = new ArrayList<>();
List<String> head;
for (String headStr : headList) {
head = new ArrayList<>();
head.add(headStr);
list.add(head);
}
return list;
}
/* @RequestMapping(value="/refuelingOrderPush",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "推送订单")

@ -0,0 +1,234 @@
package com.bweb.controller;
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.hai.common.exception.ErrorCode;
import com.hai.common.exception.ErrorHelp;
import com.hai.common.exception.SysCode;
import com.hai.common.security.UserCenter;
import com.hai.common.utils.ResponseMsgUtil;
import com.hai.entity.HighGasStaff;
import com.hai.enum_type.GasStaffStatus;
import com.hai.model.ResponseData;
import com.hai.model.UserInfoModel;
import com.hai.service.CommonService;
import com.hai.service.HighGasStaffService;
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 = "/gasStaff")
@Api(value = "加油站员工管理")
public class HighGasStaffController {
private static Logger log = LoggerFactory.getLogger(HighGasStaffController.class);
@Resource
private HighGasStaffService gasStaffService;
@Resource
private CommonService commonService;
@Resource
private UserCenter userCenter;
@RequestMapping(value="/addGasStaff",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "增加员工")
public ResponseData addStaff(@RequestBody JSONObject body) {
try {
UserInfoModel userInfoModel = userCenter.getSessionModel(UserInfoModel.class);
if (userInfoModel == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
if (userInfoModel.getMerchantStore() == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
if (StringUtils.isBlank(body.getString("name"))
|| StringUtils.isBlank(body.getString("telephone"))
|| StringUtils.isBlank(body.getString("positionType"))
) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
HighGasStaff gasStaff = new HighGasStaff();
gasStaff.setMerchantStoreId(userInfoModel.getMerchantStore().getId());
gasStaff.setAvatar(body.getString("avatar"));
gasStaff.setName(body.getString("name"));
gasStaff.setTelephone(body.getString("telephone"));
gasStaff.setPositionType(body.getInteger("positionType"));
gasStaff.setPositionName(commonService.getDictionaryCodeName("GAS_STAFF_POSITION_TYPE", body.getString("positionType")));
gasStaffService.addStaff(gasStaff);
return ResponseMsgUtil.success("操作成功");
} catch (Exception e) {
log.error("HighGasStaffController -> addStaff() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/updateGasStaff",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "修改员工")
public ResponseData updateGasStaff(@RequestBody JSONObject body) {
try {
if (body.getLong("id") == null
|| StringUtils.isBlank(body.getString("name"))
|| StringUtils.isBlank(body.getString("telephone"))
|| StringUtils.isBlank(body.getString("positionType"))
) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
// 查询员工信息
HighGasStaff gasStaff = gasStaffService.getStaffDetailById(body.getLong("id"));
if (gasStaff == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到员工信息");
}
gasStaff.setAvatar(body.getString("avatar"));
gasStaff.setName(body.getString("name"));
gasStaff.setTelephone(body.getString("telephone"));
gasStaff.setPositionType(body.getInteger("positionType"));
gasStaff.setPositionName(commonService.getDictionaryCodeName("GAS_STAFF_POSITION_TYPE", body.getString("positionType")));
gasStaffService.updateStaff(gasStaff);
return ResponseMsgUtil.success("操作成功");
} catch (Exception e) {
log.error("HighGasStaffController -> updateGasStaff() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/disabled",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "禁用员工")
public ResponseData disabled(@RequestBody JSONObject body) {
try {
if (body.getLong("staffId") == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
// 查询油站员工
HighGasStaff gasStaff = gasStaffService.getStaffDetailById(body.getLong("staffId"));
if (gasStaff == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.MERCHANT_NOF_FOUND, "未找到员工");
}
gasStaff.setStatus(GasStaffStatus.status2.getStatus());
gasStaffService.editData(gasStaff);
return ResponseMsgUtil.success("操作成功");
} catch (Exception e) {
log.error("HighGasStaffController -> disabled() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/recover",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "恢复正常")
public ResponseData recover(@RequestBody JSONObject body) {
try {
if (body.getLong("staffId") == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
// 查询油站员工
HighGasStaff gasStaff = gasStaffService.getStaffDetailById(body.getLong("staffId"));
if (gasStaff == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.MERCHANT_NOF_FOUND, "未找到员工");
}
gasStaff.setStatus(GasStaffStatus.status1.getStatus());
gasStaffService.editData(gasStaff);
return ResponseMsgUtil.success("操作成功");
} catch (Exception e) {
log.error("HighGasStaffController -> delStaff() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/delStaff",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "删除员工")
public ResponseData delStaff(@RequestBody JSONObject body) {
try {
if (body.getLong("staffId") == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
gasStaffService.delStaff(body.getLong("staffId"));
return ResponseMsgUtil.success("操作成功");
} catch (Exception e) {
log.error("HighGasStaffController -> delStaff() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/getStaffDetail",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "查询员工详情")
public ResponseData getStaffDetail(@RequestParam(name = "staffId", required = true) Long staffId) {
try {
return ResponseMsgUtil.success(gasStaffService.getStaffDetailById(staffId));
} catch (Exception e) {
log.error("HighGasStaffController -> getStaffDetail() error!",e);
return ResponseMsgUtil.exception(e);
}
}
@RequestMapping(value="/getStaffList",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "查询员工列表")
public ResponseData getStaffList(@RequestParam(name = "merchantStoreId", required = false) Long merchantStoreId,
@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "telephone", required = false) String telephone,
@RequestParam(name = "positionType", required = false) Integer positionType,
@RequestParam(name = "status", required = false) Integer status,
@RequestParam(name = "pageNum", required = true) Integer pageNum,
@RequestParam(name = "pageSize", required = true) Integer pageSize) {
try {
Map<String, Object> param = new HashMap<>();
if (merchantStoreId == null) {
UserInfoModel userInfoModel = userCenter.getSessionModel(UserInfoModel.class);
if (userInfoModel == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
if (userInfoModel.getMerchantStore() == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMPETENCE_INSUFFICIENT, "");
}
param.put("merchantStoreId", userInfoModel.getMerchantStore().getId());
} else {
param.put("merchantStoreId", merchantStoreId);
}
param.put("name", name);
param.put("telephone", telephone);
param.put("positionType", positionType);
param.put("status", status);
PageHelper.startPage(pageNum,pageSize);
return ResponseMsgUtil.success(new PageInfo<>(gasStaffService.getStaffList(param)));
} catch (Exception e) {
log.error("HighGasStaffController -> getStaffList() error!",e);
return ResponseMsgUtil.exception(e);
}
}
}

@ -30,6 +30,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.File;
import java.math.BigDecimal;
import java.util.*;
@Controller
@ -385,7 +386,12 @@ public class HighTyAgentOilStationController {
}
PageHelper.startPage(pageNum,pageSize);
return ResponseMsgUtil.success(new PageInfo<>(highTyAgentOilStationService.getOrderList(param)));
PageInfo<TyOrderModel> pageInfo = new PageInfo<>(highTyAgentOilStationService.getOrderList(param));
for (TyOrderModel orderModel : pageInfo.getList()) {
orderModel.setOilLiters(orderModel.getTotalPrice().divide(orderModel.getGasPriceGun(), 2, BigDecimal.ROUND_HALF_DOWN));
}
return ResponseMsgUtil.success(pageInfo);
} catch (Exception e) {
log.error("HighTyAgentController --> getAgentList() error!", e);
@ -471,6 +477,7 @@ public class HighTyAgentOilStationController {
headList.add("团油订单号");
headList.add("支付类型");
headList.add("加油金额");
headList.add("加油升数");
headList.add("优惠金额");
headList.add("实付金额");
headList.add("油号");
@ -502,6 +509,7 @@ public class HighTyAgentOilStationController {
data.add(orderModel.getGasOrderNo());
data.add(orderModel.getPayType());
data.add(orderModel.getTotalPrice());
data.add(orderModel.getTotalPrice().divide(orderModel.getGasPriceGun(), 2, BigDecimal.ROUND_HALF_DOWN));
data.add(orderModel.getDeductionPrice());
data.add(orderModel.getPayRealPrice());
data.add(orderModel.getGasOilNo());

@ -68,6 +68,9 @@ public class LoginController {
@Resource
private HighAgentService highAgentService;
@Resource
private HighGasStaffService gasStaffService;
@RequestMapping(value="/userLogin",method = RequestMethod.POST)
@ResponseBody
@ApiOperation(value = "机构用户登录({'loginName':'','password':''})")
@ -205,6 +208,31 @@ public class LoginController {
throw ErrorHelp.genException(SysCode.System, ErrorCode.NOT_FOUND_AGENT, "业务员状态错误");
}
userInfoModel.setHighTySalesman(tySalesman);
} else if (secUser.getObjectType() == 8) {
// 查询加油站员工信息
HighGasStaff gasStaff = gasStaffService.getStaffDetailById(secUser.getObjectId());
if (gasStaff == null) {
log.error("login error!","未找到员工信息");
throw ErrorHelp.genException(SysCode.System, ErrorCode.NOT_FOUND_AGENT, "未找到员工信息");
}
if (!gasStaff.getStatus().equals(1)) {
log.error("login error!","账户状态异常");
throw ErrorHelp.genException(SysCode.System, ErrorCode.NOT_FOUND_AGENT, "账户状态异常");
}
userInfoModel.setGasStaff(gasStaff);
// 查询门店
HighMerchantStore merchantStore = highMerchantStoreService.getMerchantStoreById(gasStaff.getMerchantStoreId());
if(merchantStore == null) {
log.error("login error!","未找到商户门店");
throw ErrorHelp.genException(SysCode.System, ErrorCode.MERCHANT_STORE_NOF_FOUND, "");
}
if(merchantStore.getStatus() != 1) {
log.error("login error!","未找到商户门店");
throw ErrorHelp.genException(SysCode.System, ErrorCode.MERCHANT_STORE_NOF_FOUND, "");
}
userInfoModel.setMerchantStore(merchantStore);
} else {
log.error("login error!","用户信息错误");
throw ErrorHelp.genException(SysCode.System, ErrorCode.SEC_USER_EXPIRED, "");

@ -9,7 +9,7 @@ debug: false
#datasource数据源设置
spring:
datasource:
url: jdbc:mysql://122.9.135.148:3306/hsg?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false
url: jdbc:mysql://139.159.177.244:3306/hsg_pre?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false
username: root
password: HF123456.
type: com.alibaba.druid.pool.DruidDataSource

@ -142,6 +142,7 @@ public class HighGasController {
}
}
}
return ResponseMsgUtil.success(mapPageInfo);
}
return ResponseMsgUtil.success(new PageInfo<>());
@ -342,6 +343,149 @@ public class HighGasController {
}
}
@RequestMapping(value="/recentGasStation",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "查询最近的油站")
public ResponseData recentGasStation(@RequestParam(name = "longitude", required = true) String longitude,
@RequestParam(name = "latitude", required = true) String latitude,
@RequestParam(name = "isTyAgent", required = false) Boolean isTyAgent) {
try {
Map<String, Object> station = gasOilPriceService.recentGasStation(longitude, latitude);
if (station == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "附近没有加油站哦");
}
// 商户门店
HighMerchantStoreModel store = merchantStoreService.getMerchantStoreByKey(MapUtils.getString(station, "storeKey"));
if (store == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到加油站");
}
if (!store.getType().equals(1)) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到加油站");
}
if (store.getSourceType() == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知来源的加油站");
}
// 来源类型 1:平台自建 2:团油
if (store.getSourceType().equals(1)) {
Map<String, Object> param = new HashMap<>();
param.put("provinceName", null);
param.put("provinceCode", null);
param.put("cityCode", null);
param.put("cityName", null);
param.put("countyCode", null);
param.put("countyName", null);
param.put("gasId", store.getStoreKey());
param.put("gasName", store.getStoreName());
param.put("gasAddress", store.getAddress());
param.put("gasLogoBig", CommonSysConst.getSysConfig().getHsgDomainName()+"/filesystem/"+store.getStoreLogo());
param.put("gasLogoSmall", CommonSysConst.getSysConfig().getHsgDomainName()+"/filesystem/"+store.getStoreLogo());
param.put("gasAddressLatitude", store.getLatitude());
param.put("gasAddressLongitude", store.getLongitude());
// 距离
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);
// 查询油枪
List<Map<String, Object>> gasGunMapList = new ArrayList<>();
Map<String, Object> gasGunMap;
List<HighGasOilGunNo> oilGunNoList = gasOilGunNoService.getGunNoListByStoreId(store.getId());
for (HighGasOilGunNo oilGunNo : oilGunNoList) {
gasGunMap = new HashMap<>();
gasGunMap.put("gunNo", oilGunNo.getGunNo());
gasGunMap.put("oilNo", oilGunNo.getOilNo());
gasGunMap.put("oilNoName", oilGunNo.getOilNoName());
gasGunMapList.add(gasGunMap);
}
param.put("gasGunList", gasGunMapList);
// 查询油品
List<Map<String, Object>> oilPriceMapList = new ArrayList<>();
Map<String, Object> oilPriceMap;
List<HighGasOilPrice> oilPriceList = gasOilPriceService.getGasOilPriceByStore(store.getId());
for (HighGasOilPrice oilPrice : oilPriceList) {
oilPriceMap = new HashMap<>();
oilPriceMap.put("oilType", oilPrice.getOilType());
oilPriceMap.put("oilTypeName", oilPrice.getOilTypeName());
oilPriceMap.put("oilNo", oilPrice.getOilNo());
oilPriceMap.put("oilNoName", oilPrice.getOilNoName());
oilPriceMap.put("priceVip", oilPrice.getPriceVip());
oilPriceMap.put("priceGun", oilPrice.getPriceGun());
oilPriceMap.put("priceOfficial", oilPrice.getPriceOfficial());
oilPriceMapList.add(oilPriceMap);
}
param.put("oilPriceList", oilPriceMapList);
return ResponseMsgUtil.success(param);
} else if (store.getSourceType().equals(2)) {
JSONObject jsonObject = TuanYouConfig.queryGasInfoByGasId(MapUtils.getString(station, "storeKey"));
if (jsonObject != null && jsonObject.getString("code").equals("200")) {
JSONObject result = jsonObject.getJSONObject("result");
// 原始油品价格
JSONArray originalOilPriceList = result.getJSONArray("oilPriceList");
// 新油品价格
JSONArray newOilPriceList = new JSONArray();
// 处理油品价格
for (Object oilPriceObject : originalOilPriceList) {
JSONObject price = JSON.parseObject(JSONObject.toJSONString(oilPriceObject), JSONObject.class);
// 查询油站油品状态
HighGasOilPrice oilNo = highGasOilPriceService.getGasOilPriceByStoreAndOilNo(store.getId(), price.getInteger("oilNo"));
if (oilNo != null && !oilNo.getStatus().equals(GasOilPriceStatusEnum.status1.getStatus())) {
continue;
}
// 查询是否配置了【油站的】优惠比例
HighTyAgentPrice tyAgentPrice = tyAgentPriceService.getDetail(1, store.getId(), price.getString("oilNo"));
if (tyAgentPrice != null) {
// 优惠比例 / 100 = 最终优惠比例
BigDecimal priceRate = tyAgentPrice.getPriceRate().divide(new BigDecimal("100").setScale(2, BigDecimal.ROUND_DOWN));
// 油品国标价 * 最终优惠比例
price.put("priceVip", price.getBigDecimal("priceGun").multiply(priceRate).setScale(2, BigDecimal.ROUND_HALF_UP));
} else {
// 查询是否配置了【油品】优惠比例
HighGasDiscountOilPrice gasDiscountOilPrice = gasDiscountOilPriceService.getDetailByOilNo(price.getString("oilNo"));
if (gasDiscountOilPrice != null) {
// 优惠比例 / 100 = 最终优惠比例
BigDecimal priceRate = gasDiscountOilPrice.getPriceRate().divide(new BigDecimal("100").setScale(2, BigDecimal.ROUND_DOWN));
// 油品国标价 * 最终优惠比例
price.put("priceVip", price.getBigDecimal("priceGun").multiply(priceRate).setScale(2, BigDecimal.ROUND_HALF_UP));
}
}
// 查询是否配置了【代理商油站】优惠比例
if (isTyAgent != null && isTyAgent == true) {
HighTyAgentPrice agentPrice = tyAgentPriceService.getDetail(2, store.getId(), price.getString("oilNo"));
if (agentPrice != null) {
// 优惠比例 / 100 = 最终优惠比例
BigDecimal priceRate = agentPrice.getPriceRate().divide(new BigDecimal("100").setScale(2, BigDecimal.ROUND_DOWN));
// 油品国标价 * 最终优惠比例
price.put("priceVip", price.getBigDecimal("priceGun").multiply(priceRate).setScale(2, BigDecimal.ROUND_HALF_UP));
}
}
newOilPriceList.add(price);
}
result.put("oilPriceList", newOilPriceList);
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);
return ResponseMsgUtil.success(jsonObject.get("result"));
}
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, jsonObject.getString("message"));
}
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到加油站");
} catch (Exception e) {
log.error("HighGasController -> getGasDetailByStoreKey() error!",e);
return ResponseMsgUtil.exception(e);
}
}
/* @RequestMapping(value="/getGasPriceDetail",method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "根据门店key和油号 查询油价")

@ -21,10 +21,7 @@ import com.hai.config.*;
import com.hai.entity.*;
import com.hai.enum_type.GoodsType;
import com.hai.enum_type.PayType;
import com.hai.model.HighCouponModel;
import com.hai.model.HighUserModel;
import com.hai.model.ResponseData;
import com.hai.model.UserInfoModel;
import com.hai.model.*;
import com.hai.service.*;
import com.wechat.pay.contrib.apache.httpclient.WechatPayHttpClientBuilder;
import com.wechat.pay.contrib.apache.httpclient.auth.AutoUpdateCertificatesVerifier;
@ -87,6 +84,9 @@ public class OrderController {
@Resource
private HighCouponService highCouponService;
@Resource
private HighMerchantStoreService merchantStoreService;
@Resource
private HighQzOrderService highQzOrderService;
@ -159,17 +159,25 @@ public class OrderController {
if (highOrderService.getGasTheDayOrderNum(order.getMemId()) >= 1) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
// 查询加油站
HighMerchantStoreModel store = merchantStoreService.getMerchantStoreById(childOrder.getGoodsId());
if (store == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 来源类型 1:平台自建 2:团油
if (store.getSourceType().equals(2)) {
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
}
}
}
}
@ -300,17 +308,25 @@ public class OrderController {
if (highOrderService.getGasTheDayOrderNum(order.getMemId()) >= 1) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
// 查询加油站
HighMerchantStoreModel store = merchantStoreService.getMerchantStoreById(childOrder.getGoodsId());
if (store == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 来源类型 1:平台自建 2:团油
if (store.getSourceType().equals(2)) {
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
}
}
}
}
@ -404,17 +420,26 @@ public class OrderController {
if (highOrderService.getGasTheDayOrderNum(order.getMemId()) >= 1) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
// 查询加油站
HighMerchantStoreModel store = merchantStoreService.getMerchantStoreById(childOrder.getGoodsId());
if (store == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 来源类型 1:平台自建 2:团油
if (store.getSourceType().equals(2)) {
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
}
}
}
}
@ -508,17 +533,25 @@ public class OrderController {
if (highOrderService.getGasTheDayOrderNum(order.getMemId()) >= 1) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
// 查询加油站
HighMerchantStoreModel store = merchantStoreService.getMerchantStoreById(childOrder.getGoodsId());
if (store == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 来源类型 1:平台自建 2:团油
if (store.getSourceType().equals(2)) {
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
}
}
}
}
@ -592,17 +625,25 @@ public class OrderController {
if (highOrderService.getGasTheDayOrderNum(order.getMemId()) >= 1) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
// 查询加油站
HighMerchantStoreModel store = merchantStoreService.getMerchantStoreById(childOrder.getGoodsId());
if (store == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "已达到每日加油次数上限");
}
// 来源类型 1:平台自建 2:团油
if (store.getSourceType().equals(2)) {
// 查询账号余额
JSONObject accountInfo2JD = TuanYouConfig.queryCompanyAccountInfo2JD();
JSONArray result = accountInfo2JD.getJSONArray("result");
for (Object accountObject : result) {
JSONObject account = (JSONObject)accountObject;
// 1:汽油:2:柴油;3:天然气
if (account.getInteger("energyType") == childOrder.getGasOilType()) {
// 支付金额 大于 团油账号余额
if(order.getPayPrice().compareTo(account.getBigDecimal("accountBalance")) == 1){
log.error("OrderController --> orderToPay() ERROR", "无法进行支付,请联系平台客服");
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法进行支付,请联系平台客服");
}
}
}
}

@ -9,7 +9,7 @@ debug: false
#datasource数据源设置
spring:
datasource:
url: jdbc:mysql://139.159.177.244:3306/hfkj?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false
url: jdbc:mysql://139.159.177.244:3306/hsg_pre?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false
username: root
password: HF123456.
type: com.alibaba.druid.pool.DruidDataSource

@ -57,6 +57,7 @@ public class HighGasSchedule {
HighMerchantStoreModel store = highMerchantStoreService.getMerchantStoreByKey(object.getString("gasId"));
if (store != null) {
store.setType(1);
store.setSourceType(2);
store.setMerchantId(merchant.getId());
store.setCompanyId(merchant.getCompanyId());
store.setStoreKey(object.getString("gasId"));
@ -105,6 +106,7 @@ public class HighGasSchedule {
} else {
highMerchantStore = new HighMerchantStore();
highMerchantStore.setType(1);
highMerchantStore.setSourceType(2);
highMerchantStore.setMerchantId(merchant.getId());
highMerchantStore.setCompanyId(merchant.getCompanyId());
highMerchantStore.setStoreKey(object.getString("gasId"));

@ -32,4 +32,9 @@ public interface HighGasOilPriceMapperExt {
" </script>" )
List<Map<String,Object>> selectStoreListByOilNo(@Param("storeName") String storeName, @Param("regionId") Long regionId, @Param("oilNoName") String oilNoName);
@Select({" SELECT a.store_key storeKey,ROUND((st_distance_sphere(point(a.longitude, a.latitude) , point(${longitude},${latitude}))/1000),2) as distance" +
" FROM high_merchant_store a,high_gas_oil_price b where a.type = 1 and a.`status` = 1 and a.id = b.merchant_store_id and b.`status` = 1 GROUP BY a.id" +
" ORDER BY distance asc LIMIT 1 "})
Map<String,Object> recentGasStation(@Param("longitude") String longitude,@Param("latitude") String latitude);
}

@ -0,0 +1,130 @@
package com.hai.dao;
import com.hai.entity.HighGasStaff;
import com.hai.entity.HighGasStaffExample;
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 HighGasStaffMapper extends HighGasStaffMapperExt {
@SelectProvider(type=HighGasStaffSqlProvider.class, method="countByExample")
long countByExample(HighGasStaffExample example);
@DeleteProvider(type=HighGasStaffSqlProvider.class, method="deleteByExample")
int deleteByExample(HighGasStaffExample example);
@Delete({
"delete from high_gas_staff",
"where id = #{id,jdbcType=BIGINT}"
})
int deleteByPrimaryKey(Long id);
@Insert({
"insert into high_gas_staff (merchant_store_id, avatar, ",
"`name`, telephone, ",
"position_type, position_name, ",
"`status`, create_time, ",
"update_time, ext_1, ",
"ext_2, ext_3)",
"values (#{merchantStoreId,jdbcType=BIGINT}, #{avatar,jdbcType=VARCHAR}, ",
"#{name,jdbcType=VARCHAR}, #{telephone,jdbcType=VARCHAR}, ",
"#{positionType,jdbcType=INTEGER}, #{positionName,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(HighGasStaff record);
@InsertProvider(type=HighGasStaffSqlProvider.class, method="insertSelective")
@Options(useGeneratedKeys=true,keyProperty="id")
int insertSelective(HighGasStaff record);
@SelectProvider(type=HighGasStaffSqlProvider.class, method="selectByExample")
@Results({
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),
@Result(column="merchant_store_id", property="merchantStoreId", jdbcType=JdbcType.BIGINT),
@Result(column="avatar", property="avatar", jdbcType=JdbcType.VARCHAR),
@Result(column="name", property="name", jdbcType=JdbcType.VARCHAR),
@Result(column="telephone", property="telephone", jdbcType=JdbcType.VARCHAR),
@Result(column="position_type", property="positionType", jdbcType=JdbcType.INTEGER),
@Result(column="position_name", property="positionName", 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<HighGasStaff> selectByExample(HighGasStaffExample example);
@Select({
"select",
"id, merchant_store_id, avatar, `name`, telephone, position_type, position_name, ",
"`status`, create_time, update_time, ext_1, ext_2, ext_3",
"from high_gas_staff",
"where id = #{id,jdbcType=BIGINT}"
})
@Results({
@Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true),
@Result(column="merchant_store_id", property="merchantStoreId", jdbcType=JdbcType.BIGINT),
@Result(column="avatar", property="avatar", jdbcType=JdbcType.VARCHAR),
@Result(column="name", property="name", jdbcType=JdbcType.VARCHAR),
@Result(column="telephone", property="telephone", jdbcType=JdbcType.VARCHAR),
@Result(column="position_type", property="positionType", jdbcType=JdbcType.INTEGER),
@Result(column="position_name", property="positionName", 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)
})
HighGasStaff selectByPrimaryKey(Long id);
@UpdateProvider(type=HighGasStaffSqlProvider.class, method="updateByExampleSelective")
int updateByExampleSelective(@Param("record") HighGasStaff record, @Param("example") HighGasStaffExample example);
@UpdateProvider(type=HighGasStaffSqlProvider.class, method="updateByExample")
int updateByExample(@Param("record") HighGasStaff record, @Param("example") HighGasStaffExample example);
@UpdateProvider(type=HighGasStaffSqlProvider.class, method="updateByPrimaryKeySelective")
int updateByPrimaryKeySelective(HighGasStaff record);
@Update({
"update high_gas_staff",
"set merchant_store_id = #{merchantStoreId,jdbcType=BIGINT},",
"avatar = #{avatar,jdbcType=VARCHAR},",
"`name` = #{name,jdbcType=VARCHAR},",
"telephone = #{telephone,jdbcType=VARCHAR},",
"position_type = #{positionType,jdbcType=INTEGER},",
"position_name = #{positionName,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(HighGasStaff record);
}

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

@ -0,0 +1,346 @@
package com.hai.dao;
import com.hai.entity.HighGasStaff;
import com.hai.entity.HighGasStaffExample.Criteria;
import com.hai.entity.HighGasStaffExample.Criterion;
import com.hai.entity.HighGasStaffExample;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.jdbc.SQL;
public class HighGasStaffSqlProvider {
public String countByExample(HighGasStaffExample example) {
SQL sql = new SQL();
sql.SELECT("count(*)").FROM("high_gas_staff");
applyWhere(sql, example, false);
return sql.toString();
}
public String deleteByExample(HighGasStaffExample example) {
SQL sql = new SQL();
sql.DELETE_FROM("high_gas_staff");
applyWhere(sql, example, false);
return sql.toString();
}
public String insertSelective(HighGasStaff record) {
SQL sql = new SQL();
sql.INSERT_INTO("high_gas_staff");
if (record.getMerchantStoreId() != null) {
sql.VALUES("merchant_store_id", "#{merchantStoreId,jdbcType=BIGINT}");
}
if (record.getAvatar() != null) {
sql.VALUES("avatar", "#{avatar,jdbcType=VARCHAR}");
}
if (record.getName() != null) {
sql.VALUES("`name`", "#{name,jdbcType=VARCHAR}");
}
if (record.getTelephone() != null) {
sql.VALUES("telephone", "#{telephone,jdbcType=VARCHAR}");
}
if (record.getPositionType() != null) {
sql.VALUES("position_type", "#{positionType,jdbcType=INTEGER}");
}
if (record.getPositionName() != null) {
sql.VALUES("position_name", "#{positionName,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(HighGasStaffExample example) {
SQL sql = new SQL();
if (example != null && example.isDistinct()) {
sql.SELECT_DISTINCT("id");
} else {
sql.SELECT("id");
}
sql.SELECT("merchant_store_id");
sql.SELECT("avatar");
sql.SELECT("`name`");
sql.SELECT("telephone");
sql.SELECT("position_type");
sql.SELECT("position_name");
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_gas_staff");
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) {
HighGasStaff record = (HighGasStaff) parameter.get("record");
HighGasStaffExample example = (HighGasStaffExample) parameter.get("example");
SQL sql = new SQL();
sql.UPDATE("high_gas_staff");
if (record.getId() != null) {
sql.SET("id = #{record.id,jdbcType=BIGINT}");
}
if (record.getMerchantStoreId() != null) {
sql.SET("merchant_store_id = #{record.merchantStoreId,jdbcType=BIGINT}");
}
if (record.getAvatar() != null) {
sql.SET("avatar = #{record.avatar,jdbcType=VARCHAR}");
}
if (record.getName() != null) {
sql.SET("`name` = #{record.name,jdbcType=VARCHAR}");
}
if (record.getTelephone() != null) {
sql.SET("telephone = #{record.telephone,jdbcType=VARCHAR}");
}
if (record.getPositionType() != null) {
sql.SET("position_type = #{record.positionType,jdbcType=INTEGER}");
}
if (record.getPositionName() != null) {
sql.SET("position_name = #{record.positionName,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_gas_staff");
sql.SET("id = #{record.id,jdbcType=BIGINT}");
sql.SET("merchant_store_id = #{record.merchantStoreId,jdbcType=BIGINT}");
sql.SET("avatar = #{record.avatar,jdbcType=VARCHAR}");
sql.SET("`name` = #{record.name,jdbcType=VARCHAR}");
sql.SET("telephone = #{record.telephone,jdbcType=VARCHAR}");
sql.SET("position_type = #{record.positionType,jdbcType=INTEGER}");
sql.SET("position_name = #{record.positionName,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}");
HighGasStaffExample example = (HighGasStaffExample) parameter.get("example");
applyWhere(sql, example, true);
return sql.toString();
}
public String updateByPrimaryKeySelective(HighGasStaff record) {
SQL sql = new SQL();
sql.UPDATE("high_gas_staff");
if (record.getMerchantStoreId() != null) {
sql.SET("merchant_store_id = #{merchantStoreId,jdbcType=BIGINT}");
}
if (record.getAvatar() != null) {
sql.SET("avatar = #{avatar,jdbcType=VARCHAR}");
}
if (record.getName() != null) {
sql.SET("`name` = #{name,jdbcType=VARCHAR}");
}
if (record.getTelephone() != null) {
sql.SET("telephone = #{telephone,jdbcType=VARCHAR}");
}
if (record.getPositionType() != null) {
sql.SET("position_type = #{positionType,jdbcType=INTEGER}");
}
if (record.getPositionName() != null) {
sql.SET("position_name = #{positionName,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, HighGasStaffExample 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());
}
}
}

@ -1077,10 +1077,17 @@ public interface HighOrderMapperExt {
" case when SUM(b.total_price) is null then 0 else SUM(b.total_price) end price," +
" count(1) count" +
" from high_child_order a,high_order b " +
" where a.order_id = b.id and goods_type = 3 and goods_id = #{storeId} and b.order_status in (${storeId}) " +
" where a.order_id = b.id and goods_type = 3 and goods_id = #{storeId} and b.order_status in (${status}) " +
" and to_days(pay_time) = to_days(now())"})
Map<String, Object> selectGasTheDayOrderCount(@Param("storeId") Long storeId, @Param("status") String status);
@Select({" select" +
" case when SUM(b.total_price) is null then 0 else SUM(b.total_price) end price," +
" count(1) count" +
" from high_child_order a,high_order b " +
" where a.order_id = b.id and goods_type = 3 and goods_id = #{storeId} and b.order_status in (${status}) "})
Map<String, Object> selectGasHistoryOrderCount(@Param("storeId") Long storeId, @Param("status") String status);
@Select({
"<script> " +
" select " +
@ -1114,6 +1121,8 @@ public interface HighOrderMapperExt {
" and goods_type = 3 " +
"<if test='param.storeId != null'> and goods_id = #{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>",
"<if test='param.orderNo != null'> and b.order_no LIKE concat('%', #{param.orderNo}, '%')</if>" +
" ORDER BY create_time desc" +
"</script>"

@ -0,0 +1,248 @@
package com.hai.entity;
import java.io.Serializable;
import java.util.Date;
/**
* high_gas_staff
* @author
*/
/**
*
* 代码由工具生成
*
**/
public class HighGasStaff implements Serializable {
/**
* 主键
*/
private Long id;
/**
* 商户门店id
*/
private Long merchantStoreId;
/**
* 员工头像
*/
private String avatar;
/**
* 员工名称
*/
private String name;
/**
* 员工电话
*/
private String telephone;
/**
* 职位类型 1收银员
*/
private Integer positionType;
/**
* 职位类型名称
*/
private String positionName;
/**
* 状态 0删除 1正常 2禁用
*/
private Integer status;
/**
* 创建时间
*/
private Date createTime;
/**
* 修改时间
*/
private Date updateTime;
private String ext1;
private String ext2;
private String ext3;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Long getMerchantStoreId() {
return merchantStoreId;
}
public void setMerchantStoreId(Long merchantStoreId) {
this.merchantStoreId = merchantStoreId;
}
public String getAvatar() {
return avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getTelephone() {
return telephone;
}
public void setTelephone(String telephone) {
this.telephone = telephone;
}
public Integer getPositionType() {
return positionType;
}
public void setPositionType(Integer positionType) {
this.positionType = positionType;
}
public String getPositionName() {
return positionName;
}
public void setPositionName(String positionName) {
this.positionName = positionName;
}
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;
}
HighGasStaff other = (HighGasStaff) that;
return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
&& (this.getMerchantStoreId() == null ? other.getMerchantStoreId() == null : this.getMerchantStoreId().equals(other.getMerchantStoreId()))
&& (this.getAvatar() == null ? other.getAvatar() == null : this.getAvatar().equals(other.getAvatar()))
&& (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName()))
&& (this.getTelephone() == null ? other.getTelephone() == null : this.getTelephone().equals(other.getTelephone()))
&& (this.getPositionType() == null ? other.getPositionType() == null : this.getPositionType().equals(other.getPositionType()))
&& (this.getPositionName() == null ? other.getPositionName() == null : this.getPositionName().equals(other.getPositionName()))
&& (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 + ((getMerchantStoreId() == null) ? 0 : getMerchantStoreId().hashCode());
result = prime * result + ((getAvatar() == null) ? 0 : getAvatar().hashCode());
result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
result = prime * result + ((getTelephone() == null) ? 0 : getTelephone().hashCode());
result = prime * result + ((getPositionType() == null) ? 0 : getPositionType().hashCode());
result = prime * result + ((getPositionName() == null) ? 0 : getPositionName().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(", merchantStoreId=").append(merchantStoreId);
sb.append(", avatar=").append(avatar);
sb.append(", name=").append(name);
sb.append(", telephone=").append(telephone);
sb.append(", positionType=").append(positionType);
sb.append(", positionName=").append(positionName);
sb.append(", status=").append(status);
sb.append(", createTime=").append(createTime);
sb.append(", updateTime=").append(updateTime);
sb.append(", ext1=").append(ext1);
sb.append(", ext2=").append(ext2);
sb.append(", ext3=").append(ext3);
sb.append(", serialVersionUID=").append(serialVersionUID);
sb.append("]");
return sb.toString();
}
}

@ -0,0 +1,34 @@
package com.hai.enum_type;
/**
* 加油站员工状态
* @author hurui
*/
public enum GasPositionType {
status1(1 , "收银员"),
;
private Integer status;
private String name;
GasPositionType(int status , String name) {
this.status = status;
this.name = name;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

@ -0,0 +1,36 @@
package com.hai.enum_type;
/**
* 加油站员工状态
* @author hurui
*/
public enum GasStaffStatus {
status0(0 , "删除"),
status1(1 , "正常"),
status2(2 , "禁用"),
;
private Integer status;
private String name;
GasStaffStatus(int status , String name) {
this.status = status;
this.name = name;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}

@ -0,0 +1,47 @@
package com.hai.enum_type;
import java.util.Objects;
/**
* 订单状态
* @author hurui
*/
public enum OrderStatusEnum {
type1(1 , "待支付"),
type2(2 , "已支付"),
type3(3 , "已完成"),
type4(4 , "已退款"),
type5(5 , "已取消"),
type6(6 , "退款中"),
type7(7 , "拒绝退款"),
;
private Integer type;
private String name;
OrderStatusEnum(int type , String name) {
this.type = type;
this.name = name;
}
public static String getNameByType(Integer type) {
for (OrderStatusEnum 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;
}
}

@ -10,6 +10,7 @@ public class TyOrderModel {
private String gasOrderNo;
private String payType;
private BigDecimal totalPrice;
private BigDecimal oilLiters;
private BigDecimal deductionPrice;
private BigDecimal payRealPrice;
private String goodsName;
@ -24,6 +25,14 @@ public class TyOrderModel {
private String agentName;
private String salesmanName;
public BigDecimal getOilLiters() {
return oilLiters;
}
public void setOilLiters(BigDecimal oilLiters) {
this.oilLiters = oilLiters;
}
public String getMemPhone() {
return memPhone;
}

@ -34,6 +34,8 @@ public class UserInfoModel {
private HighTyAgent highTyAgent;
// 团油业务员
private HighTySalesman highTySalesman;
// 加油站员工
private HighGasStaff gasStaff;
// 权限列表
private List<SecPermission> permissionList;
// 菜单权限列表
@ -146,4 +148,12 @@ public class UserInfoModel {
public void setHighTySalesman(HighTySalesman highTySalesman) {
this.highTySalesman = highTySalesman;
}
public HighGasStaff getGasStaff() {
return gasStaff;
}
public void setGasStaff(HighGasStaff gasStaff) {
this.gasStaff = gasStaff;
}
}

@ -43,6 +43,14 @@ public interface HighGasOilPriceService {
*/
List<Map<String,Object>> getStoreListByOilNo(String storeName,Long regionId, String oilNoName);
/**
* 查询最近的油站
* @param longitude
* @param latitude
* @return
*/
Map<String,Object> recentGasStation(String longitude,String latitude);
}

@ -0,0 +1,51 @@
package com.hai.service;
import com.hai.entity.HighGasStaff;
import java.util.List;
import java.util.Map;
/**
* 加油站员工
* @author hurui
*/
public interface HighGasStaffService {
/**
* 编辑员工数据
* @param gasStaff
*/
void editData(HighGasStaff gasStaff);
/**
* 增加员工
* @param gasStaff
*/
void addStaff(HighGasStaff gasStaff) throws Exception;
/**
* 修改员工
* @param gasStaff
*/
void updateStaff(HighGasStaff gasStaff);
/**
* 删除员工
* @param id
*/
void delStaff(Long id);
/**
* 根据id查询
* @param id
* @return
*/
HighGasStaff getStaffDetailById(Long id);
/**
* 查询员工列表
* @param param
* @return
*/
List<HighGasStaff> getStaffList(Map<String, Object> param);
}

@ -406,12 +406,20 @@ public interface HighOrderService {
*/
Map<String, Object> getGasTheDayOrderCount(Long storeId, String status);
/**
* 查询加油站历史统计
* @param storeId
* @param status
* @return
*/
Map<String, Object> getGasHistoryOrderCount(Long storeId, String status);
/**
* 查询加油站订单列表
* @param param
* @return
*/
List<GasOrderModel> getGasOrderList(Map<String, Object> param);
List<GasOrderModel> getGasOrderList(Map<String, Object> param) throws Exception;
/**
* 查询加油站订单列表

@ -55,5 +55,10 @@ public class HighGasOilPriceServiceImpl implements HighGasOilPriceService {
return highGasOilPriceMapper.selectStoreListByOilNo(storeName,regionId,oilNoName);
}
@Override
public Map<String, Object> recentGasStation(String longitude, String latitude) {
return highGasOilPriceMapper.recentGasStation(longitude, latitude);
}
}

@ -0,0 +1,159 @@
package com.hai.service.impl;
import com.hai.common.exception.ErrorCode;
import com.hai.common.exception.ErrorHelp;
import com.hai.common.exception.SysCode;
import com.hai.common.utils.MD5Util;
import com.hai.dao.HighGasStaffMapper;
import com.hai.entity.HighGasStaff;
import com.hai.entity.HighGasStaffExample;
import com.hai.entity.SecUser;
import com.hai.enum_type.GasPositionType;
import com.hai.enum_type.GasStaffStatus;
import com.hai.service.HighGasStaffService;
import com.hai.service.SecUserService;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service("gasStaffService")
public class HighGasStaffServiceImpl implements HighGasStaffService {
@Resource
private HighGasStaffMapper gasStaffMapper;
@Resource
private SecUserService userService;
@Override
public void editData(HighGasStaff gasStaff) {
if (gasStaff.getId() == null) {
gasStaff.setCreateTime(new Date());
gasStaff.setUpdateTime(new Date());
gasStaff.setStatus(GasStaffStatus.status1.getStatus());
gasStaffMapper.insert(gasStaff);
} else {
gasStaff.setUpdateTime(new Date());
gasStaffMapper.updateByPrimaryKey(gasStaff);
}
}
@Override
@Transactional(propagation= Propagation.REQUIRES_NEW)
public void addStaff(HighGasStaff gasStaff) throws Exception {
if (userService.findByLoginName(gasStaff.getTelephone()) != null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "电话已存在,请更换");
}
editData(gasStaff);
Long roleId;
if (gasStaff.getPositionType().equals(GasPositionType.status1.getStatus())) {
roleId = 100L;
} else {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知角色");
}
SecUser secUser = new SecUser();
secUser.setAvatar(gasStaff.getAvatar());
secUser.setUserName(gasStaff.getName());
secUser.setLoginName(gasStaff.getTelephone());
secUser.setPassword(MD5Util.encode("123456".getBytes()));
secUser.setAdminFlag(1);
secUser.setStatus(1);
secUser.setRoleId(roleId);
secUser.setObjectType(8);
secUser.setObjectId(gasStaff.getId());
secUser.setCreateTime(new Date());
secUser.setUpdateTime(new Date());
userService.addUser(secUser);
}
@Override
@Transactional(propagation= Propagation.REQUIRES_NEW)
public void updateStaff(HighGasStaff gasStaff) {
HighGasStaff detail = getStaffDetailById(gasStaff.getId());
if (detail == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, "");
}
if (!detail.getTelephone().equals(gasStaff.getTelephone())) {
if (userService.findByLoginName(gasStaff.getTelephone()) != null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "电话已存在,请更换");
}
}
editData(gasStaff);
// 查询账户
SecUser account = userService.getMainAccount(8, gasStaff.getId());
if (account == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到账户");
}
account.setAvatar(gasStaff.getAvatar());
account.setUserName(gasStaff.getName());
account.setLoginName(gasStaff.getTelephone());
account.setUpdateTime(new Date());
userService.updateUser(account);
}
@Override
@Transactional(propagation= Propagation.REQUIRES_NEW)
public void delStaff(Long id) {
HighGasStaff gasStaff = getStaffDetailById(id);
if (gasStaff == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到员工");
}
gasStaff.setStatus(GasStaffStatus.status0.getStatus());
editData(gasStaff);
// 查询账户
SecUser account = userService.getMainAccount(8, gasStaff.getId());
if (account == null) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到账户");
}
account.setStatus(0);
userService.updateUser(account);
}
@Override
public HighGasStaff getStaffDetailById(Long id) {
return gasStaffMapper.selectByPrimaryKey(id);
}
@Override
public List<HighGasStaff> getStaffList(Map<String, Object> param) {
HighGasStaffExample example = new HighGasStaffExample();
HighGasStaffExample.Criteria criteria = example.createCriteria().andStatusNotEqualTo(0);
if (MapUtils.getLong(param, "merchantStoreId") != null) {
criteria.andMerchantStoreIdEqualTo(MapUtils.getLong(param, "merchantStoreId"));
}
if (StringUtils.isNotBlank(MapUtils.getString(param, "name"))) {
criteria.andNameLike("%" + MapUtils.getString(param, "name") + "%");
}
if (StringUtils.isNotBlank(MapUtils.getString(param, "telephone"))) {
criteria.andTelephoneLike("%" + MapUtils.getString(param, "telephone") + "%");
}
if (MapUtils.getInteger(param, "positionType") != null) {
criteria.andPositionTypeEqualTo(MapUtils.getInteger(param, "positionType"));
}
if (MapUtils.getInteger(param, "status") != null) {
criteria.andStatusEqualTo(MapUtils.getInteger(param, "status"));
}
example.setOrderByClause("create_time desc");
return gasStaffMapper.selectByExample(example);
}
}

@ -27,12 +27,16 @@ public class HighOilCardRecordServiceImpl implements HighOilCardRecordService {
@Override
public void insertRecord(HighOilCardRecord oilCardRecord) {
oilCardRecord.setOpUserId(0L);
oilCardRecord.setOpUserName("无");
UserInfoModel userInfoModel = userCenter.getSessionModel(UserInfoModel.class);
if (userInfoModel != null) {
oilCardRecord.setOpUserId(userInfoModel.getSecUser().getId());
oilCardRecord.setOpUserName(userInfoModel.getSecUser().getUserName());
} else {
HighUserModel userModel = userCenter.getSessionModel(HighUserModel.class);
}
HighUserModel userModel = userCenter.getSessionModel(HighUserModel.class);
if (userModel == null) {
oilCardRecord.setOpUserId(userModel.getHighUser().getId());
oilCardRecord.setOpUserName(userModel.getHighUser().getName());
}

@ -1706,7 +1706,18 @@ public class HighOrderServiceImpl implements HighOrderService {
}
@Override
public List<GasOrderModel> getGasOrderList(Map<String, Object> param) {
public Map<String, Object> getGasHistoryOrderCount(Long storeId, String status) {
return highOrderMapperExt.selectGasHistoryOrderCount(storeId,status);
}
@Override
public List<GasOrderModel> getGasOrderList(Map<String, Object> param) throws Exception {
if (MapUtils.getLong(param, "createTimeS") != null) {
param.put("createTimeS", DateUtil.date2String(new Date(MapUtils.getLong(param, "createTimeS")), "yyyy-MM-dd HH:mm:ss"));
}
if (MapUtils.getLong(param, "createTimeE") != null) {
param.put("createTimeE", DateUtil.date2String(new Date(MapUtils.getLong(param, "createTimeE")), "yyyy-MM-dd HH:mm:ss"));
}
return highOrderMapperExt.selectGasStoreOrderList(param);
}

Loading…
Cancel
Save