package com.rongwei.business.controller; import com.alibaba.fastjson.JSONObject; import com.rongwei.business.common.utils.QrCodeGeneratorUtils; import com.rongwei.business.domain.CompanyProductDo; import com.rongwei.business.service.CompanyBaseInfoDetailService; import com.rongwei.business.service.SysFileFolderService; import com.rongwei.commonservice.service.RedisService; import com.rongwei.commonservice.service.SysConfigService; import com.rongwei.rwadmincommon.system.vo.SysUserVo; import com.rongwei.rwcommon.base.R; import com.rongwei.rwcommon.utils.Constants; import com.rongwei.rwcommonentity.commonservers.domain.SysFileFolderDo; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; import java.util.List; import java.util.Map; /** * @author shangmi * 生成二维码及防伪码 */ @RestController @RequestMapping("/initCode") @Slf4j public class InitCodeController { @Autowired private CompanyBaseInfoDetailService companyBaseInfoDetailService; @Autowired private SysConfigService sysConfigService; @Autowired private SysFileFolderService sysFileFolderService; @Autowired private RedisService redisService; private static final String FOLDER_CODE = "product_management"; @RequestMapping("saveCode") public R saveCode(@RequestBody List companyProductDos){ //获取当前登录用户 ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); HttpServletRequest request = attributes.getRequest(); String token = request.getHeader("token"); SysUserVo currUser = redisService.getLoginUser(token); //获取最新密钥 String secret = companyBaseInfoDetailService.getSecret(currUser.getTenantid()); // 文件存储路径目录 String filePath = sysConfigService.getContentByConfigCode(Constants.CONFIG_FILE_ROOT_PATH); //指定文件夹 SysFileFolderDo sysFileFolderDo = sysFileFolderService.getFolderByFoldercode(FOLDER_CODE); companyProductDos.parallelStream().forEach(ev ->{ String productcode = ev.getProductcode(); byte[] bytes = QrCodeGeneratorUtils.DES_CBC_Encrypt(productcode.getBytes(), secret.getBytes()); String s = QrCodeGeneratorUtils.byteToHexString(bytes); }); return null; } }