fix:商家流水统计bug
This commit is contained in:
1 parent
c3aa66c3d1
commit
c3721db214
9 files changed
+225
-23
No files matched your search
+2
-2
@@ -217,14 +217,14 @@ public class HardOrderTotalServiceImpl implements HardOrderTotalService {
|
||||
for (HardOrderCsVo v : totalList) {
|
||||
// 退款
|
||||
if (ObjectUtil.isNotEmpty(refundList)) {
|
||||
refundList.stream().filter(i -> ObjectUtil.equals(i.getMerchantId(), v.getMerchantId())).findFirst().ifPresent(i -> {
|
||||
refundList.stream().filter(i -> ObjectUtil.equals(i.getDay(), v.getDay()) && ObjectUtil.equals(i.getMerchantId(), v.getMerchantId())).findFirst().ifPresent(i -> {
|
||||
v.setTotalRefundPrice(i.getTotalPayPrice());
|
||||
v.setTotalRefundCount(i.getTotalPayCount());
|
||||
});
|
||||
}
|
||||
// 盈利
|
||||
if (ObjectUtil.isNotEmpty(profitList)) {
|
||||
profitList.stream().filter(i -> ObjectUtil.equals(i.getMerchantId(), v.getMerchantId())).findFirst().ifPresent(i -> {
|
||||
profitList.stream().filter(i -> ObjectUtil.equals(i.getDay(), v.getDay()) && ObjectUtil.equals(i.getMerchantId(), v.getMerchantId())).findFirst().ifPresent(i -> {
|
||||
v.setTotalProfitPrice(i.getTotalPayPrice());
|
||||
v.setTotalProfitCount(i.getTotalPayCount());
|
||||
});
|
||||
|
||||
+1
@@ -252,6 +252,7 @@
|
||||
<include refid="whereA"/>
|
||||
</where>
|
||||
group by DATE_FORMAT(a.create_time, '%Y-%m-%d')
|
||||
order by DATE_FORMAT(a.create_time, '%Y-%m-%d') desc, a.merchant_id desc
|
||||
</select>
|
||||
|
||||
<select id="listOrerPayType" resultType="com.bsd.pjcloud.hard.api.vo.order.HardOrderPayTypeVo">
|
||||
|
||||
+1
-1
@@ -3,5 +3,5 @@ package com.bsd.pjcloud.thirdparty.vo.ks;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class KsBarcodeLikeVo {
|
||||
public class KsBarcodeLikeVo extends KsBaseInnerVo {
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
package com.bsd.pjcloud.thirdparty.vo.ks;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class KsBaseInnerVo {
|
||||
|
||||
private String message;
|
||||
|
||||
public boolean isSuccess() {
|
||||
return ObjectUtil.isEmpty(message);
|
||||
}
|
||||
}
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
package com.bsd.pjcloud.thirdparty.vo.ks;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class KsBaseVo {
|
||||
|
||||
static private Integer successCode = 200;
|
||||
|
||||
private String request_id;
|
||||
|
||||
private Long cost;
|
||||
|
||||
private Integer code;
|
||||
|
||||
private String msg;
|
||||
|
||||
private String data;
|
||||
|
||||
public boolean isSuccess() {
|
||||
return ObjectUtil.equal(code, KsBaseVo.successCode);
|
||||
}
|
||||
|
||||
}
|
||||
+1
-1
@@ -53,7 +53,7 @@ public class ThirdKsApiController {
|
||||
}
|
||||
|
||||
@Inner
|
||||
@Operation(summary = "SKU审核结果主动获取")
|
||||
@Operation(summary = "SKU删除")
|
||||
@PostMapping("/sku-delete")
|
||||
public R<KsSkuDeleteVo> skuDelete(@RequestBody KsSkuDeleteDto dto) {
|
||||
return R.ok(thirdKsApiService.skuDelete(dto));
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ public interface ThirdKsApiService {
|
||||
KsSkuEditVo skuEdit(KsSkuEditDto dto);
|
||||
|
||||
/**
|
||||
* SKU审核结果主动获取
|
||||
* SKU删除
|
||||
*/
|
||||
KsSkuDeleteVo skuDelete(KsSkuDeleteDto dto);
|
||||
|
||||
|
||||
+179
-17
@@ -1,19 +1,24 @@
|
||||
package com.bsd.pjcloud.thirdparty.service.impl.ks;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.bsd.pjcloud.thirdparty.config.KsDiscernConfig;
|
||||
import com.bsd.pjcloud.thirdparty.dto.door.DoorRegisterDto;
|
||||
import com.bsd.pjcloud.thirdparty.dto.ks.*;
|
||||
import com.bsd.pjcloud.thirdparty.entity.door.ThirdDoorLogEntity;
|
||||
import com.bsd.pjcloud.thirdparty.service.ThirdDoorLogService;
|
||||
import com.bsd.pjcloud.thirdparty.service.ThirdKsApiService;
|
||||
import com.bsd.pjcloud.thirdparty.utils.door.api.DoorApi;
|
||||
import com.bsd.pjcloud.thirdparty.utils.ks.api.KsApi;
|
||||
import com.bsd.pjcloud.thirdparty.vo.door.DoorRegisterVo;
|
||||
import com.bsd.pjcloud.thirdparty.vo.ks.*;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
@Service
|
||||
@Validated
|
||||
@@ -21,14 +26,33 @@ import org.springframework.validation.annotation.Validated;
|
||||
@RequiredArgsConstructor
|
||||
public class ThirdKsApiServiceImpl implements ThirdKsApiService {
|
||||
|
||||
private final String TAG = "旷世api";
|
||||
|
||||
private final KsDiscernConfig ksDiscernConfig;
|
||||
|
||||
private final ThirdDoorLogService doorLogService;
|
||||
|
||||
/**
|
||||
* 常规SKU提交审核
|
||||
*/
|
||||
@Override
|
||||
public KsSkuSubmitVo skuSubmit(KsSkuSubmitDto dto) {
|
||||
return null;
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.SKU_SUBMIT.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dto));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dto));
|
||||
try {
|
||||
|
||||
} catch (Exception e) {
|
||||
String error = String.format("|%s||skuSubmit|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsSkuSubmitVo.class);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -36,7 +60,22 @@ public class ThirdKsApiServiceImpl implements ThirdKsApiService {
|
||||
*/
|
||||
@Override
|
||||
public KsSkuSubmitCollectionVo skuSubmitCollection(KsSkuSubmitCollectionDto dto) {
|
||||
return null;
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.SKU_SUBMIT_COLLECTION.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dto));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dto));
|
||||
try {
|
||||
|
||||
} catch (Exception e) {
|
||||
String error = String.format("|%s||skuSubmitCollection|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsSkuSubmitCollectionVo.class);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -44,7 +83,22 @@ public class ThirdKsApiServiceImpl implements ThirdKsApiService {
|
||||
*/
|
||||
@Override
|
||||
public KsSkuResultVo skuResult(KsSkuResultDto dto) {
|
||||
return null;
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.SKU_RESULT.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dto));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dto));
|
||||
try {
|
||||
|
||||
} catch (Exception e) {
|
||||
String error = String.format("|%s||skuResult|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsSkuResultVo.class);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -52,15 +106,45 @@ public class ThirdKsApiServiceImpl implements ThirdKsApiService {
|
||||
*/
|
||||
@Override
|
||||
public KsSkuEditVo skuEdit(KsSkuEditDto dto) {
|
||||
return null;
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.SKU_EDIT.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dto));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dto));
|
||||
try {
|
||||
|
||||
} catch (Exception e) {
|
||||
String error = String.format("|%s||skuEdit|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsSkuEditVo.class);
|
||||
}
|
||||
|
||||
/**
|
||||
* SKU审核结果主动获取
|
||||
* SKU删除
|
||||
*/
|
||||
@Override
|
||||
public KsSkuDeleteVo skuDelete(KsSkuDeleteDto dto) {
|
||||
return null;
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.SKU_DELETE.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dto));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dto));
|
||||
try {
|
||||
|
||||
} catch (Exception e) {
|
||||
String error = String.format("|%s||skuDelete|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsSkuDeleteVo.class);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -68,7 +152,22 @@ public class ThirdKsApiServiceImpl implements ThirdKsApiService {
|
||||
*/
|
||||
@Override
|
||||
public KsBarcodeSkuVo barcodeSku(KsBarcodeSkuDto dto) {
|
||||
return null;
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.BARCODE_SKU.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dto));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dto));
|
||||
try {
|
||||
|
||||
} catch (Exception e) {
|
||||
String error = String.format("|%s||barcodeSku|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsBarcodeSkuVo.class);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -76,7 +175,24 @@ public class ThirdKsApiServiceImpl implements ThirdKsApiService {
|
||||
*/
|
||||
@Override
|
||||
public KsBarcodeSkuVo barcodeSkuId(Long ksSkuId) {
|
||||
return null;
|
||||
Map<String, Object> dtoMap = new HashMap<>();
|
||||
dtoMap.put("ks_sku_id", ksSkuId);
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.BARCODE_SKU.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dtoMap));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dtoMap));
|
||||
try {
|
||||
|
||||
} catch (Exception e) {
|
||||
String error = String.format("|%s||barcodeSkuId|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsBarcodeSkuVo.class);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -85,16 +201,32 @@ public class ThirdKsApiServiceImpl implements ThirdKsApiService {
|
||||
@Override
|
||||
public KsBarcodeLikeVo barcodeSkuLike(KsBarcodeLikeDto dto) {
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsApi.Api api = KsApi.BARCODE_SKU_LIKE.setBaseUrl(ksDiscernConfig.getBaseUrl());
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.BARCODE_SKU_LIKE.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dto));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dto));
|
||||
try {
|
||||
String body = JSONUtil.toJsonStr(dto);
|
||||
String res = api.getHttpRequest().body(body).execute().body();
|
||||
if (ObjectUtil.isEmpty(res)) throw new RuntimeException("response响应为空");
|
||||
logEntity.setRes(res);
|
||||
ksBaseVo = JSONUtil.toBean(res, KsBaseVo.class);
|
||||
if (!ksBaseVo.isSuccess()) {
|
||||
String errorLog = String.format("请求错误res|%s|url|%s|body|%s|", res, api, body);
|
||||
log.error(errorLog);
|
||||
KsBarcodeLikeVo errorVo = new KsBarcodeLikeVo();
|
||||
errorVo.setMessage(ksBaseVo.getMsg());
|
||||
return errorVo;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
|
||||
String error = String.format("|%s||barcodeSkuLike|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return null;
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsBarcodeLikeVo.class);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -102,7 +234,22 @@ public class ThirdKsApiServiceImpl implements ThirdKsApiService {
|
||||
*/
|
||||
@Override
|
||||
public KsRecognitionVo recognition(KsRecognitionDto dto) {
|
||||
return null;
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.BARCODE_SKU.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dto));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dto));
|
||||
try {
|
||||
|
||||
} catch (Exception e) {
|
||||
String error = String.format("|%s||recognition|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsRecognitionVo.class);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -110,6 +257,21 @@ public class ThirdKsApiServiceImpl implements ThirdKsApiService {
|
||||
*/
|
||||
@Override
|
||||
public KsRecognitionResultVo recognitionResult(KsRecognitionResultDto dto) {
|
||||
return null;
|
||||
long startTime = System.currentTimeMillis();
|
||||
KsBaseVo ksBaseVo = new KsBaseVo();
|
||||
KsApi.Api api = KsApi.BARCODE_SKU.setBaseUrl(ksDiscernConfig.getBaseUrl()).setParams(BeanUtil.beanToMap(dto));
|
||||
ThirdDoorLogEntity logEntity = api.getInitLogEntity();
|
||||
logEntity.setReq(JSONUtil.toJsonStr(dto));
|
||||
try {
|
||||
|
||||
} catch (Exception e) {
|
||||
String error = String.format("|%s||recognitionResult|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace()));
|
||||
log.error(error);
|
||||
logEntity.setError(error);
|
||||
} finally {
|
||||
logEntity.setTimeConsuming(Long.toString(System.currentTimeMillis() - startTime));
|
||||
doorLogService.save(logEntity);
|
||||
}
|
||||
return JSONUtil.toBean(ksBaseVo.getData(), KsRecognitionResultVo.class);
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -31,7 +31,7 @@ public class KsApi {
|
||||
// 常规SKU修改
|
||||
public static final KsApi.Api SKU_EDIT = KsApi.Api.builder().url("/openapi/sc/v1/sku/%s").bizType(ThordDoorApiTypeEnum.REGISTER).method("patch").contentType("application/json").build();
|
||||
|
||||
// 常规SKU修改
|
||||
// SKU删除
|
||||
public static final KsApi.Api SKU_DELETE = KsApi.Api.builder().url("/openapi/sc/v1/sku/%s").bizType(ThordDoorApiTypeEnum.REGISTER).method("delete").contentType("application/json").build();
|
||||
|
||||
// 根据69码查询标准库和私有库商品信息
|
||||
|
||||
Reference in new issue
Block a user