Commit 41cbe53e by lijinqi

spu详情添加费用描述+购买协议接口

parent b9d8636c
......@@ -26,6 +26,11 @@ import javax.annotation.security.PermitAll;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;
import static com.luhu.computility.framework.common.pojo.CommonResult.success;
......@@ -120,4 +125,31 @@ public class FileController {
return success(BeanUtils.toBean(pageResult, FileRespVO.class));
}
@GetMapping("/preview")
@Operation(summary = "购买PDF 文件预览")
@PermitAll
public void previewPdf(HttpServletResponse response) throws IOException {
// 假设 path = /data/xxx.pdf
File file = new File("/data/buy.pdf");
if (!file.exists()) {
response.setStatus(HttpServletResponse.SC_NOT_FOUND);
return;
}
// 设置 PDF 预览
response.setContentType("application/pdf");
response.setHeader("Content-Disposition", "inline; filename=\"" + file.getName() + "\"");
// 输出文件流
try (InputStream inputStream = new FileInputStream(file);
OutputStream os = response.getOutputStream()) {
byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
os.write(buffer, 0, bytesRead);
}
os.flush();
}
}
}
......@@ -27,7 +27,6 @@ public class ProductSkuRespVO {
@Schema(description = "图片地址", requiredMode = Schema.RequiredMode.REQUIRED, example = "https://www.iocoder.cn/xx.png")
private String picUrl;
@Schema(description = "费用描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "元/年")
private String feeInfo;
......
......@@ -30,6 +30,17 @@ public class ProductSkuSaveReqVO {
@Schema(description = "条形码", example = "15156165456")
private String barCode;
@Schema(description = "费用描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "元/年")
private String feeInfo;
@Schema(description = "有效期", requiredMode = Schema.RequiredMode.REQUIRED, example = "365")
private Integer expDuration;
@Schema(description = "鉴权信息", requiredMode = Schema.RequiredMode.REQUIRED, example = "admin")
private String auth;
@Schema(description = "图片地址", requiredMode = Schema.RequiredMode.REQUIRED, example = "https://www.iocoder.cn/xx.png")
@NotNull(message = "图片地址不能为空")
private String picUrl;
......
......@@ -59,13 +59,10 @@ public class AppMemberUserController {
appEnterpriseUserInfoRespVO.setEnterpriseName(enterprise.getEnterpriseName());
appEnterpriseUserInfoRespVO.setCheckStatus(enterprise.getStatus());
appEnterpriseUserInfoRespVO.setCheckStatusName(EnterpriseCheckStatus.getByValue(enterprise.getStatus()).getRemark());
} else {
appEnterpriseUserInfoRespVO.setCheckStatus(EnterpriseCheckStatus.UNSUBMIT.getValue());
appEnterpriseUserInfoRespVO.setCheckStatusName(EnterpriseCheckStatus.UNSUBMIT.getRemark());
}
return success(appEnterpriseUserInfoRespVO);
}
......
......@@ -278,6 +278,7 @@ computility:
enable: true
ignore-urls:
- /jmreport/* # 积木报表,无法携带租户编号
- /admin-api/infra/file/preview
ignore-visit-urls:
- /admin-api/system/user/profile/**
- /admin-api/system/auth/**
......
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 sign in to comment