Commit 8c8e8d72 by weijiguang

添加错误日志

parent 0e6988c6
......@@ -56,28 +56,28 @@ public class MachineApiServiceImpl {
List<String> skuIds = JSONObject.parseArray(skuIDs, String.class);
String robotID = jsonObject.getString("robotId");
String status = jsonObject.getString("status");
if(StringUtils.isEmpty(skuIDs)){
if (StringUtils.isEmpty(skuIDs)) {
throw new ServiceException("sku不能为空");
}
ShopGoodsSku shopGoodsSku = new ShopGoodsSku();
shopGoodsSku.setShopId(Long.parseLong(shopID));
Map<Long,List<Long>> map = new HashMap<>();
Map<Long, List<Long>> map = new HashMap<>();
for (String skuId : skuIds) {
shopGoodsSku.setSkuId(Long.parseLong(skuId));
List<ShopGoodsSku> shopGoodsSkus = shopGoodsSkuMapper.selectShopGoodsSkuList(shopGoodsSku);
if(CollectionUtils.isEmpty(shopGoodsSkus)){
log.info(skuId+"不存在");
if (CollectionUtils.isEmpty(shopGoodsSkus)) {
log.info(skuId + "不存在");
continue;
// throw new ServiceException(skuId+"不存在");
}
for (ShopGoodsSku goodsSkus : shopGoodsSkus) {
Long goodsId = goodsSkus.getGoodsId();
List<Long> strings = map.get(goodsId);
if(strings ==null){
if (strings == null) {
strings = new ArrayList<>();
}
strings.add(goodsSkus.getSkuId());
map.put(goodsId,strings);
map.put(goodsId, strings);
}
}
int i = shopGoodsSkuMapper.updateSkuStatus(skuIds, robotID, shopID, status);
......@@ -85,24 +85,25 @@ public class MachineApiServiceImpl {
Machine machine = machineMapper.selectMachineById(robotID);
this.push(machine, status, map);
return ""+i;
return "" + i;
}
/**
* {
* "action": "SKU_STATE_CHANGED",
* "timestamp": 1390010203013,
* "data": {
* "machineCode": "SN010293123",
* "goodsId": 100,
* "skuIds": [
* 200,
* 300
* ],
* "state": 2
* }
* "action": "SKU_STATE_CHANGED",
* "timestamp": 1390010203013,
* "data": {
* "machineCode": "SN010293123",
* "goodsId": 100,
* "skuIds": [
* 200,
* 300
* ],
* "state": 2
* }
* }
*
* @param machine
* @param status
* @param map
......@@ -128,27 +129,27 @@ public class MachineApiServiceImpl {
Long orderID = jsonObject.getLong("orderId");
String status = jsonObject.getString("status");
Order order1 = orderService.selectById(orderID);
if(order1==null){
if (order1 == null) {
throw new ServiceException("该订单不存在");
}
order1.setState(status);
order1.setUpdatedAt(new Date());
if(OrderStatusConstant.completed.equals(status)){
if (OrderStatusConstant.completed.equals(status)) {
order1.setFinishTime(new Date());
}
int i = orderService.updateOrder(order1);
return i+"";
return i + "";
}
public void testOrder(Long orderId) {
try{
if(orderId == null){
try {
if (orderId == null) {
orderId = 8L;
}
Order order = orderService.selectById(orderId);
OrderDetail orderDetail =new OrderDetail();
OrderDetail orderDetail = new OrderDetail();
orderDetail.setOrderId(order.getId());
List<OrderDetail> orderDetails = orderDetailMapper.selectOrderDetailList(orderDetail);
for (OrderDetail detail : orderDetails) {
......@@ -156,27 +157,27 @@ public class MachineApiServiceImpl {
detail.setGoods(goods);
}
order.setOrderDetails(orderDetails);
createOrder(order);
}catch (Exception e){
log.error("",e);
createOrder(order);
} catch (Exception e) {
log.error("", e);
}
}
public ResultVo createOrder(Order order){
public ResultVo createOrder(Order order) {
String orderInfo = null;
JSONObject orderJson =null;
try{
JSONObject orderJson = null;
try {
ObjectMapper objectMapper = new ObjectMapper();
orderInfo = objectMapper.writeValueAsString(order);
log.info("创建订单数据为:【{}】",orderInfo);
log.info("创建订单数据为:【{}】", orderInfo);
orderJson = JSONObject.parseObject(orderInfo);
orderJson.put("goodsNum",orderJson.getLong("goodsNum"));
orderJson.put("machineId",orderJson.getLong("machineId"));
orderJson.put("shopId",orderJson.getLong("shopId"));
orderJson.put("state",orderJson.getLong("state"));
List<JSONObject> goodsList =new ArrayList<>();
orderJson.put("goodsList",goodsList);
orderJson.put("goodsNum", orderJson.getLong("goodsNum"));
orderJson.put("machineId", orderJson.getLong("machineId"));
orderJson.put("shopId", orderJson.getLong("shopId"));
orderJson.put("state", orderJson.getLong("state"));
List<JSONObject> goodsList = new ArrayList<>();
orderJson.put("goodsList", goodsList);
List<OrderDetail> orderDetails = order.getOrderDetails();
for (OrderDetail detail : orderDetails) {
JSONObject jsonObject = new JSONObject();
......@@ -196,56 +197,54 @@ public class MachineApiServiceImpl {
// }
}
}catch (Exception e){
log.error("初始化订单发生异常",e);
} catch (Exception e) {
log.error("初始化订单发生异常", e);
throw new ServiceException("初始订单数据异常,请重试");
}
ResultVo resultVo =sendRequest(orderJson.toJSONString(),"/v1/order");
ResultVo resultVo = sendRequest(orderJson.toJSONString(), "/v1/order");
String code = resultVo.getCode();
if("2001".equals(code)){
throw new ServiceException("库存不足");
}else if("3001".equals(code)){
throw new ServiceException("机器繁忙");
if ("2001".equals(code)) {
throw new ServiceException("库存不足");
} else if ("3001".equals(code)) {
throw new ServiceException("机器繁忙");
}
return resultVo;
}
public ResultVo sendRequest(String param,String interfaceName){
try{
String postUrl = url+interfaceName;
log.info("请求订单接口[{}]:【{}】",postUrl,param);
public ResultVo sendRequest(String param, String interfaceName) {
try {
String postUrl = url + interfaceName;
log.info("请求订单接口[{}]:【{}】", postUrl, param);
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.setContentType(MediaType.APPLICATION_JSON);
HttpEntity requestEntity = new HttpEntity(param,requestHeaders);
HttpEntity requestEntity = new HttpEntity(param, requestHeaders);
JSONObject.toJSONString(param);
ResponseEntity<String> stringResponseEntity = restTemplate.postForEntity(postUrl, requestEntity, String.class);
log.info("请求接口返回结果为[{}]:【{}】",postUrl,stringResponseEntity.getBody());
log.info("请求接口返回结果为[{}]:【{}】", postUrl, stringResponseEntity.getBody());
ResultVo resultVo = JSONObject.parseObject(stringResponseEntity.getBody(), ResultVo.class);
return resultVo;
}catch (Exception e){
log.error("请求发生异常:",e);
throw new ServiceException("服务器繁忙,请重试");
} catch (Exception e) {
log.error("请求发生异常:", e);
throw new ServiceException("服务器繁忙,请重试");
}
}
public void testOrderUpdate(String orderId) {
if(StringUtils.isEmpty(orderId)){
if (StringUtils.isEmpty(orderId)) {
orderId = "8";
}
JSONObject param = new JSONObject();
JSONObject data = new JSONObject();
data.put("state",2);
data.put("payTime",new Date());
param.put("data",data.toJSONString());
param.put("orderId",orderId);
sendRequest(param.toJSONString(),"/v1/order/update");
data.put("state", 2);
data.put("payTime", new Date());
param.put("data", data.toJSONString());
param.put("orderId", orderId);
sendRequest(param.toJSONString(), "/v1/order/update");
}
public Object robotUpdate(JSONObject jsonObject) {
......@@ -256,8 +255,8 @@ public class MachineApiServiceImpl {
machine.setShopId(shopID);
machine.setId(robotID);
List<Machine> machines = machineMapper.selectMachineList(machine);
if(machines.isEmpty()){
throw new ServiceException("该机器未绑定店铺") ;
if (machines.isEmpty()) {
throw new ServiceException("该机器未绑定店铺");
}
machine.setState(status);
return machineMapper.updateMachine(machine);
......@@ -266,14 +265,14 @@ public class MachineApiServiceImpl {
public void updateOrder(Order order) {
JSONObject param = new JSONObject();
JSONObject data = new JSONObject();
data.put("state",Integer.parseInt(order.getState()));
data.put("state", Integer.parseInt(order.getState()));
if (Objects.equals(OrderStatusConstant.Paid, order.getState())) {
data.put("payTime", DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss", order.getPayTime()));
}
param.put("data",data.toJSONString());
param.put("orderId",order.getId());
param.put("data", data.toJSONString());
param.put("orderId", order.getId());
ResultVo resultVo = sendRequest(param.toJSONString(), "/v1/order/update");
operationLogService.insertOrderOperationLog(order,resultVo);
operationLogService.insertOrderOperationLog(order, resultVo);
}
......@@ -281,10 +280,10 @@ public class MachineApiServiceImpl {
String orderId = jsonObject.getString("orderId");
String secret = jsonObject.getString("secret");
String value = stringRedisTemplate.opsForValue().get(secret);
if(value ==null){
if (value == null) {
throw new ServiceException("该密钥错误或者已经失效");
}
if(orderId.equals(value)){
if (orderId.equals(value)) {
throw new ServiceException("密钥获取订单失败");
}
return null;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment