Compare commits

..

No commits in common. "44f102823c3b2fe8ce6cbea5449d8c4a6917f5b9" and "1fbef5386e7a93f716bda7dc2440bd74bbe20063" have entirely different histories.

5 changed files with 125 additions and 3 deletions

View File

@ -4,6 +4,7 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.dromara.common.core.domain.R;
import org.dromara.sis.sdk.e8.VoucherControlService;
import org.dromara.sis.sdk.e8.domain.voucher.req.CancelVoucherReq;
import org.dromara.sis.sdk.e8.domain.voucher.req.ChangeCardReq;
import org.dromara.sis.sdk.e8.domain.voucher.req.IssueVoucherReq;
import org.dromara.sis.sdk.e8.domain.voucher.req.OperateVoucherReq;
@ -11,6 +12,7 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.util.List;
/**
* @author lsm
@ -44,6 +46,25 @@ public class VoucherControlController {
}
}
/**
* 批量发行凭证
*
* @param req 凭证数据
* @return Boolean
*/
@PostMapping("/issueVoucherMany")
public R<Boolean> issueVoucherMany(@RequestBody List<IssueVoucherReq> req) {
log.info("E8批量发行凭证入参{}", req);
Boolean flag = voucherControlService.issueVoucherMany(req);
if (flag) {
return R.ok();
} else {
return R.fail("E8批量发行凭证调用失败");
}
}
/**
* 操作凭证
*
@ -82,6 +103,25 @@ public class VoucherControlController {
}
}
/**
* 注销人员凭证
*
* @param req 入参
* @return Boolean
*/
@PostMapping("/cancelVoucher")
public R<Boolean> cancelVoucher(@RequestBody CancelVoucherReq req) {
log.info("E8注销人员凭证入参{}", req);
Boolean flag = voucherControlService.cancelVoucher(req);
if (flag) {
return R.ok();
} else {
return R.fail("E8注销人员凭证调用失败");
}
}
/**
* 上传人脸
*

View File

@ -1,9 +1,12 @@
package org.dromara.sis.sdk.e8;
import org.dromara.sis.sdk.e8.domain.voucher.req.CancelVoucherReq;
import org.dromara.sis.sdk.e8.domain.voucher.req.ChangeCardReq;
import org.dromara.sis.sdk.e8.domain.voucher.req.IssueVoucherReq;
import org.dromara.sis.sdk.e8.domain.voucher.req.OperateVoucherReq;
import java.util.List;
/**
* @author lsm
* @apiNote VoucherControlService
@ -19,6 +22,14 @@ public interface VoucherControlService {
*/
Boolean issueVoucher(IssueVoucherReq req);
/**
* 批量发行凭证
*
* @param req 凭证数据
* @return Boolean
*/
Boolean issueVoucherMany(List<IssueVoucherReq> req);
/**
* 操作凭证
*
@ -35,6 +46,14 @@ public interface VoucherControlService {
*/
Boolean changeCard(ChangeCardReq req);
/**
* 注销人员凭证
*
* @param req 入参
* @return Boolean
*/
Boolean cancelVoucher(CancelVoucherReq req);
/**
* 上传人脸
*

View File

@ -0,0 +1,16 @@
package org.dromara.sis.sdk.e8.domain.voucher.req;
import lombok.Data;
import java.util.List;
/**
* @author lsm
* @apiNote CancelVoucherReq
* @since 2025/6/25
*/
@Data
public class CancelVoucherReq {
private List<Long> ids;
}

View File

@ -5,13 +5,15 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.dromara.sis.sdk.e8.VoucherControlService;
import org.dromara.sis.sdk.e8.domain.ApiResp;
import org.dromara.sis.sdk.e8.domain.voucher.req.CancelVoucherReq;
import org.dromara.sis.sdk.e8.domain.voucher.req.ChangeCardReq;
import org.dromara.sis.sdk.e8.domain.voucher.req.IssueVoucherReq;
import org.dromara.sis.sdk.e8.domain.voucher.req.OperateVoucherReq;
import org.dromara.sis.sdk.e8.utils.E8ApiUtil;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
@ -25,8 +27,10 @@ import java.util.Map;
public class VoucherControlServiceImpl implements VoucherControlService {
private static final String ISSUANCE_VOUCHER = "/api/E8/voucher/issue-voucher";
private static final String ISSUANCE_VOUCHER_MANY = "/api/E8/voucher/issue-voucher-many";
private static final String OPERATE_VOUCHER = "/api/E8/voucher/operate-many";
private static final String CHANGE_CARD = "/api/E8/voucher/change-card";
private static final String CANCEL_VOUCHER = "/api/E8/voucher/cancel-voucher";
private final E8ApiUtil e8ApiUtil;
@ -49,6 +53,26 @@ public class VoucherControlServiceImpl implements VoucherControlService {
return apiResp.getSuccess();
}
/**
* 批量发行凭证
*
* @param req 凭证数据
* @return Boolean
*/
public Boolean issueVoucherMany(List<IssueVoucherReq> req) {
// 封装入参
Map<String, Object> params = new HashMap<>();
params.put("many", true);
params.put("list", req);
// 调用API
ApiResp apiResp = e8ApiUtil.doPost(params, ISSUANCE_VOUCHER_MANY);
if (!apiResp.getSuccess()) log.error("E8批量发行凭证失败errorMsg{}", apiResp);
return apiResp.getSuccess();
}
/**
* 操作凭证
*
@ -87,6 +111,25 @@ public class VoucherControlServiceImpl implements VoucherControlService {
return apiResp.getSuccess();
}
/**
* 注销人员凭证
*
* @param req 入参
* @return Boolean
*/
@Override
public Boolean cancelVoucher(CancelVoucherReq req) {
Map<String, Object> params = new HashMap<>();
params.put("many", true);
params.put("list", req.getIds());
ApiResp apiResp = e8ApiUtil.doPost(params, CANCEL_VOUCHER);
if (!apiResp.getSuccess()) log.error("E8注销人员凭证失败errorMsg{}", apiResp);
return apiResp.getSuccess();
}
/**
* 上传人脸
*

View File

@ -1,5 +1,6 @@
package org.dromara.sis.sdk.e8.utils;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.crypto.digest.DigestUtil;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
@ -40,12 +41,15 @@ public class E8ApiUtil {
String jsonBody;
// 判断是否执行批量接口
if (params.get("many") != null) {
Object list = params.get("list");
List<Object> realParams = CollectionUtil.toList(list);
// sign签名
sign = getPostSign(null, api, timestamp);
// 将params转换为JSON字符串
jsonBody = JSONUtil.toJsonStr(params.get("list"));
jsonBody = JSONUtil.toJsonStr(realParams);
} else {
}else {
// sign签名
sign = getPostSign(params, api, timestamp);
// 将params转换为JSON字符串