Aslee 3 rokov pred
rodič
commit
74c7e2eca4

+ 8 - 8
src/main/java/com/caimei/service/impl/AuthServiceImpl.java

@@ -320,11 +320,11 @@ public class AuthServiceImpl implements AuthService {
                     List<ProductSaveDto> productList = new ArrayList<>();
 
                     // 得到机构对应的商品工作表
-                    XSSFSheet productSheet = i <= sheetsNum ? workbook.getSheetAt(i) : null;
+                    XSSFSheet productSheet = i < sheetsNum ? workbook.getSheetAt(i) : null;
                     String sheetName = null != productSheet ? productSheet.getSheetName() : null;
                     if (null == productSheet || !authParty.equals(sheetName)) {
                         // 遍历所有工作表,找到表名与授权机构名称相同的商品工作表
-                        for (int j = 1; i < sheetsNum; i++) {
+                        for (int j = 1; j < sheetsNum; j++) {
                             productSheet = workbook.getSheetAt(j);
                             sheetName = productSheet.getSheetName();
                             if (!authParty.equals(sheetName)) {
@@ -524,7 +524,7 @@ public class AuthServiceImpl implements AuthService {
                 HSSFRow authPartyRow = authPartySheet.createRow(authPartyRowNum.get());
                 HSSFCell authPartyCell = authPartyRow.createCell(0);
                 authPartyCell.setCellType(CellType.valueOf("STRING"));
-                HSSFRichTextString authPartyName = new HSSFRichTextString(authParty.getAuthParty());
+                HSSFRichTextString authPartyName = new HSSFRichTextString(authParty.getAuthParty().trim());
                 authPartyCell.setCellValue(authPartyName);
                 authPartyCell.setCellStyle(customCellStyle);
                 authPartyRowNum.getAndIncrement();
@@ -568,7 +568,7 @@ public class AuthServiceImpl implements AuthService {
                         "参数值3", "参数名称4", "参数值4", "参数名称5", "参数值5", "参数名称6", "参数值6", "参数名称7",
                         "参数值7", "参数名称8", "参数值8", "参数名称9", "参数值9", "参数名称10", "参数值10", "参数名称11",
                         "参数值11", "参数名称12", "参数值12"};
-                for (int i = 0; i < 5 + authParty.getMaxParamNum(); i++) {
+                for (int i = 0; i < 5 + (0 == authParty.getMaxParamNum() ? 4 : authParty.getMaxParamNum()) * 2; i++) {
                     HSSFCell productTopRowCell = productTopRow.createCell(i);
                     productTopRowCell.setCellType(CellType.valueOf("STRING"));
                     HSSFRichTextString columnText = new HSSFRichTextString(rowName[i]);
@@ -596,13 +596,13 @@ public class AuthServiceImpl implements AuthService {
                         productData.add(param.getParamName());
                         productData.add(param.getParamContent());
                     });
-                    for (int j = 0; j < 5 + paramList.size(); j++) {
+                    for (int j = 0; j < 5 + paramList.size() * 2; j++) {
                         HSSFCell productCell = productRow.createCell(j);
                         if (j == 3 || j == 4) {
 //                            productSheet.addMergedRegion(new CellRangeAddress(j + 1,j + 1,j + 1,j + 1)) ;
                             // 头像
                             InputStream imageStream = getImageStream(productData.get(j));
-                            if (null != imageStream){
+                            if (null != imageStream) {
                                 try {
                                     BufferedImage bufferedImage = ImageIO.read(imageStream);
                                     ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
@@ -610,7 +610,7 @@ public class AuthServiceImpl implements AuthService {
                                     byte[] data = byteArrayOut.toByteArray();
                                     HSSFPatriarch drawingPatriarch = productSheet.createDrawingPatriarch();
                                     // 设置图片位置
-                                    HSSFClientAnchor anchor = new HSSFClientAnchor(30, 30, 700, 200, (short)j,productRowNum.get(),(short)j,productRowNum.get());
+                                    HSSFClientAnchor anchor = new HSSFClientAnchor(30, 30, 700, 200, (short) j, productRowNum.get(), (short) j, productRowNum.get());
                                     drawingPatriarch.createPicture(anchor, workbook.addPicture(data, HSSFWorkbook.PICTURE_TYPE_JPEG));
                                 } catch (Exception e) {
                                     e.printStackTrace();
@@ -630,7 +630,7 @@ public class AuthServiceImpl implements AuthService {
                 });
 
                 // 让列宽随着导出的列长自动适应
-                for (int colNum = 0; (colNum < 5 + authParty.getMaxParamNum()); colNum++) {
+                for (int colNum = 0; (colNum < 5 + authParty.getMaxParamNum() * 2); colNum++) {
                     if (colNum == 3 || colNum == 4) {
                         productSheet.setColumnWidth(colNum, 8200);
                     } else {

+ 12 - 9
src/main/java/com/caimei/utils/ExcelOperateUtil.java

@@ -22,15 +22,18 @@ public class ExcelOperateUtil {
     }
 
     public static Map<String, XSSFPictureData> getPictures(XSSFSheet sheet) throws IOException {
-        Map<String, XSSFPictureData> map = new HashMap<String, XSSFPictureData>();
-        List<XSSFShape> list = sheet.getDrawingPatriarch().getShapes();
-        for (XSSFShape shape : list) {
-            if (shape instanceof XSSFPicture) {
-                XSSFPicture picture = (XSSFPicture) shape;
-                XSSFClientAnchor cAnchor = (XSSFClientAnchor) picture.getAnchor();
-                XSSFPictureData pdata = picture.getPictureData();
-                String key = cAnchor.getRow1() + "-" + cAnchor.getCol1(); // 行号-列号
-                map.put(key, pdata);
+        Map<String, XSSFPictureData> map = new HashMap<>();
+        XSSFDrawing patriarch = sheet.getDrawingPatriarch();
+        if (null != patriarch) {
+            List<XSSFShape> list = patriarch.getShapes();
+            for (XSSFShape shape : list) {
+                if (shape instanceof XSSFPicture) {
+                    XSSFPicture picture = (XSSFPicture) shape;
+                    XSSFClientAnchor cAnchor = (XSSFClientAnchor) picture.getAnchor();
+                    XSSFPictureData pdata = picture.getPictureData();
+                    String key = cAnchor.getRow1() + "-" + cAnchor.getCol1(); // 行号-列号
+                    map.put(key, pdata);
+                }
             }
         }
         return map;

+ 1 - 1
src/main/resources/mapper/FileMapper.xml

@@ -111,7 +111,7 @@
         from cm_brand_course_file
         where type = #{fileType}
         <if test="fileTitle != null and fileTitle != ''">
-            and title = #{fileTitle}
+            and title like concat('%',#{fileTitle},'%')
         </if>
         <if test="fileModule != null and fileModule != ''">
             and module = #{fileModule}