com.util.load.RecordDocCreate.java Source code

Java tutorial

Introduction

Here is the source code for com.util.load.RecordDocCreate.java

Source

package com.util.load;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.SimpleDateFormat;
import com.compliance.model.basicinfo.system.SystemManager;
import com.compliance.model.basicinfo.unitinfo.UnitInfo;
import com.compliance.model.rank.Rank;
import com.lowagie.text.Cell;
import com.lowagie.text.Chapter;
import com.lowagie.text.Chunk;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Font;
import com.lowagie.text.ListItem;
import com.lowagie.text.PageSize;
import com.lowagie.text.Paragraph;
import com.lowagie.text.Phrase;
import com.lowagie.text.Rectangle;
import com.lowagie.text.Table;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.rtf.RtfWriter2;

/**
 * 
 * @author quyongkun
 *
 */
public class RecordDocCreate {

    /**
     * cell
     * @param cell
     */
    public static void setLocal(Cell cell) {
        cell.setVerticalAlignment(1);
        cell.setHorizontalAlignment(1);
    }

    /**
     * 
     * @param unitInfo ???
     * @param systemManager ?
     * @param rank 
     * @param countTol ?
     * @param countSec ?
     * @param countThr ?
     * @param countThir?
     * @param countMay ?
     * @param fileName ??
     * @return ?   1?
     */
    public static int createRecordDoc(UnitInfo unitInfo, SystemManager systemManager, Rank rank, int countTol,
            int countSec, int countThr, int countThir, int countMay, File fileName) {

        Document document = new Document(PageSize.A4, 90.0F, 90.0F, 50.0F, 40.0F);
        try {
            RtfWriter2.getInstance(document, new FileOutputStream(fileName));
            document.open();

            String songPath = "";
            String blackFontPath = "";
            String fangsongPath = "";
            String wingdings2FontPath = "";
            if (System.getProperties().getProperty("os.name").toUpperCase().indexOf("WINDOWS") == 0) {
                songPath = "c:\\windows\\fonts\\msyh.ttf";
                blackFontPath = "c:\\windows\\fonts\\simhei.ttf";
                fangsongPath = "C:\\Windows\\Fonts\\simfang.ttf";
                wingdings2FontPath = "c:\\windows\\fonts\\WINGDNG2.TTF";
            } else {
                /*songPath="/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf";
                blackFontPath="/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf";
                fangsongPath="/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf";
                wingdings2FontPath="/usr/share/fonts/truetype/unifont/unifont.ttf";*/
                songPath = "/usr/share/fonts/dejavu/DejaVuSansMono.ttf";
                blackFontPath = "/usr/share/fonts/dejavu/DejaVuSansMono-Bold.ttf";
                fangsongPath = "/usr/share/fonts/dejavu/DejaVuSerif.ttf";
                wingdings2FontPath = "/usr/share/fonts/dejavu/unifont.ttf";
            }

            BaseFont blackBaseFont = BaseFont.createFont(songPath, "Identity-H", false);
            BaseFont songFont = BaseFont.createFont(blackFontPath, "Identity-H", false);
            BaseFont fangsongFont = BaseFont.createFont(fangsongPath, "Identity-H", false);
            BaseFont wingdings2Font = BaseFont.createFont(wingdings2FontPath, "Identity-H", false);

            Font songfont_11 = new Font(songFont, 11.0F, 0);
            Font songfontUnderLine_11 = new Font(songFont, 11.0F, 4);

            Chunk rightSign = new Chunk("R", new Font(wingdings2Font, 16.0F, 0));
            Chunk blankSign = new Chunk("*", new Font(wingdings2Font, 20.0F, 0));

            Paragraph p = new Paragraph();
            //p.setFont(new Font(songFont, 14.0F, 0));
            p.add("  2");
            document.add(p);

            Paragraph p1 = new Paragraph();
            p1.add(new Chunk("?"));
            Table numTable = new Table(12, 1);
            numTable.setLeft(0);
            numTable.setWidth(50.0F);
            numTable.addCell("");
            p1.add(numTable);
            document.add(p1);
            /*String docName="";
            if("1".equals(rank.getRankOrganType())){
            docName="??";
            }
            if("2".equals(rank.getRankOrganType())){
            docName="??";
            }
            if("3".equals(rank.getRankOrganType())){
            docName="??";
            }
            if("4".equals(rank.getRankOrganType())){
            docName="???";
            }
            if("5".equals(rank.getRankOrganType())){
            docName="?";
            }
            if("6".equals(rank.getRankOrganType())){
            docName="?";
            }*/
            p = new Paragraph(rank.getSysInfoName() + "?");
            p.setFont(new Font(songFont, 36.0F, 1));
            p.setAlignment(1);
            document.add(p);

            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("  ? ?", new Font(fangsongFont, 16.0F, 0)));
            p.add(new Chunk("__________", new Font(fangsongFont, 16.0F, 0)));
            p.add(new Chunk("()", new Font(fangsongFont, 16.0F, 4)));
            p.add(new Chunk("__________", new Font(fangsongFont, 16.0F, 0)));
            document.add(p);

            document.add(Chunk.NEWLINE);

            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("   ", new Font(fangsongFont, 16.0F, 0)));
            p.add(new Chunk("__________________________", new Font(fangsongFont, 16.0F, 0)));
            document.add(p);

            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("   ", new Font(fangsongFont, 16.0F, 0)));
            p.add(new Chunk("__________", new Font(fangsongFont, 16.0F, 0)));
            p.add(new Chunk("()", new Font(fangsongFont, 16.0F, 4)));
            p.add(new Chunk("__________", new Font(fangsongFont, 16.0F, 0)));
            document.add(p);

            document.add(Chunk.NEWLINE);

            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("   ", new Font(fangsongFont, 16.0F, 0)));
            p.add(new Chunk("__________________________", new Font(fangsongFont, 16.0F, 0)));
            document.add(p);

            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("????", new Font(fangsongFont, 16.0F, 0)));
            p.add(new Chunk("__________", new Font(fangsongFont, 16.0F, 0)));
            p.add(new Chunk("()", new Font(fangsongFont, 16.0F, 4)));
            p.add(new Chunk("__________", new Font(fangsongFont, 16.0F, 0)));
            document.add(p);

            document.add(Chunk.NEWLINE);

            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("? ?  ", new Font(fangsongFont, 16.0F, 0)));
            p.add(new Chunk("__________________________", new Font(fangsongFont, 16.0F, 0)));
            document.add(p);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            document.add(Chunk.NEWLINE);
            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("?", new Font(songFont, 20.0F, 1)));
            document.add(p);

            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("", new Font(songFont, 16.0F, 1)));
            document.add(p);

            Chapter chapter = new Chapter(1);
            com.lowagie.text.List list = new com.lowagie.text.List(true, false, 20.0F);

            //1
            ListItem listItem = new ListItem();
            Chunk itemChunk = new Chunk("??", new Font(blackBaseFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk(
                    "????[2007]43?");
            listItem.add(itemChunk);
            list.add(listItem);

            //2
            listItem = new ListItem();
            itemChunk = new Chunk("", new Font(blackBaseFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk(
                    "???????????????????????????????????????????????");
            listItem.add(itemChunk);
            list.add(listItem);

            //3
            listItem = new ListItem();
            itemChunk = new Chunk("??", new Font(blackBaseFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk(
                    "??????");
            listItem.add(itemChunk);
            list.add(listItem);

            //4
            listItem = new ListItem("",
                    new Font(songFont, 11.0F, 0));
            listItem.add(blankSign);
            listItem.add(new Chunk("?", songfont_11));
            listItem.add(rightSign);
            listItem.add(new Chunk("???",
                    songfont_11));
            list.add(listItem);

            //5
            listItem = new ListItem();
            itemChunk = new Chunk("???", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk(
                    "??11?6????????GA380-20025???????");
            listItem.add(itemChunk);
            list.add(listItem);

            //6
            listItem = new ListItem();
            itemChunk = new Chunk("????", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk("?????");
            listItem.add(itemChunk);
            list.add(listItem);

            //7
            listItem = new ListItem();
            itemChunk = new Chunk("??", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk("??");
            listItem.add(itemChunk);
            list.add(listItem);
            //8
            listItem = new ListItem();
            itemChunk = new Chunk("??????", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk(
                    "???????");
            listItem.add(itemChunk);
            list.add(listItem);

            //9
            listItem = new ListItem();
            itemChunk = new Chunk("04?", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk("??(???)?");
            listItem.add(itemChunk);
            list.add(listItem);

            //10
            listItem = new ListItem();
            itemChunk = new Chunk("05??", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk("???");
            listItem.add(itemChunk);
            list.add(listItem);

            //11
            listItem = new ListItem();
            itemChunk = new Chunk("06", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk("???");
            listItem.add(itemChunk);
            list.add(listItem);

            //12
            listItem = new ListItem();
            itemChunk = new Chunk("08", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk(
                    "????????GB/T124041997");
            listItem.add(itemChunk);
            list.add(listItem);

            //13
            listItem = new ListItem();
            itemChunk = new Chunk("02?", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk("????????");
            listItem.add(itemChunk);
            list.add(listItem);

            //14
            listItem = new ListItem();
            itemChunk = new Chunk("05?", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk("");
            listItem.add(itemChunk);
            list.add(listItem);

            //15
            listItem = new ListItem();
            itemChunk = new Chunk("07?", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk(
                    "??????????");
            listItem.add(itemChunk);
            list.add(listItem);

            //16
            listItem = new ListItem();
            itemChunk = new Chunk("08?", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk(
                    "?????????");
            listItem.add(itemChunk);
            list.add(listItem);

            //17
            listItem = new ListItem();
            itemChunk = new Chunk("", new Font(songFont, 11.0F, 0));
            listItem.add(itemChunk);
            itemChunk = new Chunk(
                    "??????");
            listItem.add(itemChunk);
            list.add(listItem);
            document.add(list);

            document.add(Chunk.NEXTPAGE);

            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("  ??", new Font(songFont, 16.0F, 0)));
            document.add(p);

            Table table1 = new Table(16);
            table1.setWidth(110.0F);
            table1.setWidths(new int[] { 20, 5, 5, 5, 5, 5, 5, 10, 25, 5, 5, 5, 5, 5, 5, 10 });
            Cell cell = new Cell(new Phrase(new Chunk("01????", songfont_11)));
            setLocal(cell);
            table1.addCell(cell);
            cell = new Cell(unitInfo.getUnitName() == null ? " " : unitInfo.getUnitName());
            setLocal(cell);
            cell.setColspan(15);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("02???", songfont_11)));
            setLocal(cell);
            table1.addCell(cell);
            cell = new Cell();
            Font underLineFont = new Font(songFont, 11.0F, 4);
            cell.add(new Chunk(unitInfo.getProvince() == null ? "" : unitInfo.getProvince(), underLineFont));
            cell.add(new Chunk("?(?) ", songfont_11));
            cell.add(new Chunk(unitInfo.getCity() == null ? "" : unitInfo.getCity(), underLineFont));
            cell.add(new Chunk(" (???) ", songfont_11));
            cell.add(new Chunk(unitInfo.getCounty() == null ? "" : unitInfo.getCounty(), underLineFont));
            cell.add(new Chunk("(??)", songfont_11));
            cell.setColspan(15);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("03?", songfont_11)));
            setLocal(cell);
            table1.addCell(cell);

            table1.addCell(
                    new Phrase(new Chunk(unitInfo.getPostcode() == null || "".equals(unitInfo.getPostcode()) ? ""
                            : unitInfo.getPostcode().charAt(0) + "", songfont_11)));
            table1.addCell(
                    new Phrase(new Chunk(unitInfo.getPostcode() == null || "".equals(unitInfo.getPostcode()) ? ""
                            : unitInfo.getPostcode().charAt(1) + "", songfont_11)));
            table1.addCell(
                    new Phrase(new Chunk(unitInfo.getPostcode() == null || "".equals(unitInfo.getPostcode()) ? ""
                            : unitInfo.getPostcode().charAt(2) + "", songfont_11)));
            table1.addCell(
                    new Phrase(new Chunk(unitInfo.getPostcode() == null || "".equals(unitInfo.getPostcode()) ? ""
                            : unitInfo.getPostcode().charAt(3) + "", songfont_11)));
            table1.addCell(
                    new Phrase(new Chunk(unitInfo.getPostcode() == null || "".equals(unitInfo.getPostcode()) ? ""
                            : unitInfo.getPostcode().charAt(4) + "", songfont_11)));
            table1.addCell(
                    new Phrase(new Chunk(unitInfo.getPostcode() == null || "".equals(unitInfo.getPostcode()) ? ""
                            : unitInfo.getPostcode().charAt(5) + "", songfont_11)));
            table1.addCell("");
            table1.addCell(new Phrase(new Chunk("04?", songfont_11)));
            table1.addCell(new Phrase(
                    new Chunk(unitInfo.getDivisionCode() == null || "".equals(unitInfo.getDivisionCode()) ? ""
                            : unitInfo.getDivisionCode().charAt(0) + "", songfont_11)));
            table1.addCell(new Phrase(
                    new Chunk(unitInfo.getDivisionCode() == null || "".equals(unitInfo.getDivisionCode()) ? ""
                            : unitInfo.getDivisionCode().charAt(1) + "", songfont_11)));
            table1.addCell(new Phrase(
                    new Chunk(unitInfo.getDivisionCode() == null || "".equals(unitInfo.getDivisionCode()) ? ""
                            : unitInfo.getDivisionCode().charAt(2) + "", songfont_11)));
            table1.addCell(new Phrase(
                    new Chunk(unitInfo.getDivisionCode() == null || "".equals(unitInfo.getDivisionCode()) ? ""
                            : unitInfo.getDivisionCode().charAt(3) + "", songfont_11)));
            table1.addCell(new Phrase(
                    new Chunk(unitInfo.getDivisionCode() == null || "".equals(unitInfo.getDivisionCode()) ? ""
                            : unitInfo.getDivisionCode().charAt(4) + "", songfont_11)));
            table1.addCell(new Phrase(
                    new Chunk(unitInfo.getDivisionCode() == null || "".equals(unitInfo.getDivisionCode()) ? ""
                            : unitInfo.getDivisionCode().charAt(5) + "", songfont_11)));
            table1.addCell("");

            cell = new Cell(new Chunk("05??", new Font(songFont, 11.0F, 0)));
            setLocal(cell);
            cell.setRowspan(2);
            table1.addCell(cell);

            cell = new Cell(new Chunk("   ??", new Font(songFont, 11.0F, 0)));
            cell.setColspan(3);
            table1.addCell(cell);
            cell = new Cell(new Chunk(unitInfo.getUnitLeader() == null ? "" : unitInfo.getUnitLeader(),
                    new Font(songFont, 11.0F, 0)));
            cell.setColspan(4);
            table1.addCell(cell);

            table1.addCell(new Phrase(new Chunk("?/?", new Font(songFont, 11.0F, 0))));
            cell = new Cell(new Phrase(
                    new Chunk(unitInfo.getDuty() == null ? "" : unitInfo.getDuty(), new Font(songFont, 11.0F, 0))));
            cell.setColspan(7);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", new Font(songFont, 11.0F, 0))));
            cell.setColspan(3);
            table1.addCell(cell);
            cell = new Cell(new Chunk(unitInfo.getUnitTel() == null ? "" : unitInfo.getUnitTel(),
                    new Font(songFont, 11.0F, 0)));
            cell.setColspan(4);
            table1.addCell(cell);

            table1.addCell(new Phrase(new Chunk("?", new Font(songFont, 11.0F, 0))));
            cell = new Cell(new Phrase(new Chunk(unitInfo.getUnitEmail() == null ? "" : unitInfo.getUnitEmail(),
                    new Font(songFont, 11.0F, 0))));
            cell.setColspan(7);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("06", new Font(songFont, 11.0F, 0))));
            setLocal(cell);
            table1.addCell(cell);
            cell = new Cell(new Chunk(unitInfo.getUnitDep() == null ? "" : unitInfo.getUnitDep(),
                    new Font(songFont, 11.0F, 0)));
            cell.setColspan(15);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("07?", new Font(songFont, 11.0F, 0))));
            setLocal(cell);
            cell.setRowspan(3);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("   ??", new Font(songFont, 11.0F, 0))));
            cell.setColspan(3);
            table1.addCell(cell);
            cell = new Cell(new Chunk(unitInfo.getDepContact() == null ? "" : unitInfo.getDepContact(),
                    new Font(songFont, 11.0F, 0)));
            cell.setColspan(4);
            table1.addCell(cell);

            table1.addCell(new Phrase(new Chunk("?/?", new Font(songFont, 11.0F, 0))));
            cell = new Cell(new Chunk(unitInfo.getDepDuty() == null ? "" : unitInfo.getDepDuty(),
                    new Font(songFont, 11.0F, 0)));
            cell.setColspan(7);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", new Font(songFont, 11.0F, 0))));
            cell.setColspan(3);
            table1.addCell(cell);
            cell = new Cell(new Chunk(unitInfo.getDepTel() == null ? "" : unitInfo.getDepTel(),
                    new Font(songFont, 11.0F, 0)));
            cell.setColspan(4);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", new Font(songFont, 11.0F, 0))));
            cell.setRowspan(2);
            table1.addCell(cell);
            cell = new Cell(new Chunk(unitInfo.getDepEmail() == null ? "" : unitInfo.getDepEmail(),
                    new Font(songFont, 11.0F, 0)));
            cell.setColspan(7);
            cell.setRowspan(2);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", new Font(songFont, 11.0F, 0))));
            cell.setColspan(3);
            table1.addCell(cell);
            cell = new Cell(new Chunk(unitInfo.getDepMobile() == null ? "" : unitInfo.getDepMobile(),
                    new Font(songFont, 11.0F, 0)));
            cell.setColspan(4);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("08", new Font(songFont, 11.0F, 0))));
            setLocal(cell);
            table1.addCell(cell);
            cell = new Cell("".equals(unitInfo.getSubordinate()) ? rightSign : blankSign);
            cell.add(new Chunk("1\t", new Font(songFont, 11.0F, 0)));
            cell.add("?".equals(unitInfo.getSubordinate()) ? rightSign : blankSign);
            cell.add(new Chunk("2?(?)\t", new Font(songFont, 11.0F, 0)));
            cell.add("".equals(unitInfo.getSubordinate()) ? rightSign : blankSign);
            cell.add(new Chunk("3(???)\t", new Font(songFont, 11.0F, 0)));
            cell.add(Chunk.NEWLINE);
            cell.add("".equals(unitInfo.getSubordinate()) ? rightSign : blankSign);
            cell.add(new Chunk("4(??)\t", new Font(songFont, 11.0F, 0)));
            cell.add("".equals(unitInfo.getSubordinate()) ? rightSign : blankSign);
            cell.add(new Chunk("9", new Font(songFont, 11.0F, 0)));
            cell.add(new Chunk(unitInfo.getOtherSub() != null ? unitInfo.getOtherSub() : "________",
                    new Font(songFont, 11.0F, 4)));
            cell.setColspan(15);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("09??", new Font(songFont, 11.0F, 0))));
            setLocal(cell);
            table1.addCell(cell);
            cell = new Cell("".equals(unitInfo.getUnitType()) ? rightSign : blankSign);
            cell.add(new Chunk("1\t\t", songfont_11));
            cell.add("".equals(unitInfo.getUnitType()) ? rightSign : blankSign);
            cell.add(new Chunk("2\t\t", songfont_11));
            cell.add("??".equals(unitInfo.getUnitType()) ? rightSign : blankSign);
            cell.add(new Chunk("3??\t\t", songfont_11));
            cell.add("?".equals(unitInfo.getUnitType()) ? rightSign : blankSign);
            cell.add(new Chunk("4?", songfont_11));
            cell.add(Chunk.NEWLINE);
            cell.add("".equals(unitInfo.getUnitType()) ? rightSign : blankSign);
            cell.add(new Chunk("9", songfont_11));
            cell.add(new Chunk(unitInfo.getOtherUnitType() != null ? unitInfo.getOtherUnitType() : "________",
                    new Font(songFont, 11.0F, 4)));
            cell.setColspan(15);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("10", songfont_11)));
            setLocal(cell);
            table1.addCell(cell);
            cell = new Cell("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("11\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("12\t", songfont_11));

            cell.add("???".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("13???", songfont_11));
            cell.add(Chunk.NEWLINE);

            cell.add("?".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("21?\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("22\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("23\t\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("24", songfont_11));
            cell.add(Chunk.NEWLINE);

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("25\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("26\t", songfont_11));

            cell.add("?".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("27?\t\t\t", songfont_11));

            cell.add("?".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("28?", songfont_11));
            cell.add(Chunk.NEWLINE);

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("31\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("32\t", songfont_11));

            cell.add("?".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("33?\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("34", songfont_11));
            cell.add(Chunk.NEWLINE);

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("35\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("36\t", songfont_11));

            cell.add("?".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("37?\t\t\t", songfont_11));

            cell.add("?".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("38?", songfont_11));
            cell.add(Chunk.NEWLINE);

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("39\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("40\t", songfont_11));

            cell.add("?".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("41?\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("42", songfont_11));
            cell.add(Chunk.NEWLINE);

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("43\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("44\t", songfont_11));

            cell.add("?".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("45?\t\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("46", songfont_11));
            cell.add(Chunk.NEWLINE);

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("47\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("48\t", songfont_11));

            cell.add("??".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("49??\t\t\t", songfont_11));

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("50", songfont_11));
            cell.add(Chunk.NEWLINE);

            cell.add("".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("51\t\t", songfont_11));

            cell.add("??".equals(unitInfo.getEmployment()) ? rightSign : blankSign);
            cell.add(new Chunk("52??\t", songfont_11));
            cell.add(Chunk.NEWLINE);

            cell.add("".equals(unitInfo.getOtherEmp()) ? rightSign : blankSign);
            cell.add(new Chunk("99", songfont_11));
            cell.add(new Chunk("".equals(unitInfo.getOtherEmp()) ? unitInfo.getOtherEmp() : "________"));
            cell.setColspan(15);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("11?", songfont_11)));
            setLocal(cell);
            cell.setRowspan(2);
            table1.addCell(cell);
            cell = new Cell(new Phrase(new Chunk(countTol + "", songfont_11)));
            setLocal(cell);
            cell.setColspan(2);
            cell.setRowspan(2);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("12?", songfont_11)));
            cell.setColspan(5);
            table1.addCell(cell);
            cell = new Cell(new Phrase(new Chunk(countSec + "", songfont_11)));
            setLocal(cell);
            cell.setColspan(1);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("13?", songfont_11)));
            cell.setColspan(6);
            table1.addCell(cell);
            cell = new Cell(new Phrase(new Chunk(countThr + "", songfont_11)));
            cell.setColspan(1);
            setLocal(cell);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("14?", songfont_11)));
            cell.setColspan(5);
            table1.addCell(cell);
            cell = new Cell(new Phrase(new Chunk(countThir + "", songfont_11)));
            cell.setColspan(1);
            setLocal(cell);
            table1.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("15?", songfont_11)));
            cell.setColspan(6);
            table1.addCell(cell);
            cell = new Cell(new Phrase(new Chunk("0", songfont_11)));
            cell.setColspan(1);
            setLocal(cell);
            table1.addCell(cell);

            document.add(table1);

            document.add(Chunk.NEXTPAGE);

            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk(" (" + rank.getSysInfoName() + ")?",
                    new Font(songFont, 16.0F, 0)));
            document.add(p);

            Table table2 = new Table(14);
            table2.setWidth(120.0F);
            table2.setWidths(new int[] { 8, 13, 5, 12, 3, 8, 5, 5, 5, 13, 5, 5, 5, 5 });

            cell = new Cell(new Phrase(new Chunk("01??", songfont_11)));
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell(new Chunk(rank.getSysInfoName() == null ? "" : rank.getSysInfoName(), songfont_11));
            cell.setColspan(7);
            table2.addCell(cell);

            table2.addCell(new Phrase(new Chunk("02?", songfont_11)));
            cell = new Cell(new Chunk(rank.getSysInfoId() == null ? "" : rank.getSysInfoId(), songfont_11));
            cell.setColspan(4);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("03", songfont_11)));
            setLocal(cell);
            cell.setRowspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("", songfont_11)));
            setLocal(cell);
            table2.addCell(cell);
            cell = new Cell("1".equals(systemManager.getBusType()) ? rightSign : blankSign);
            cell.add(new Chunk("1\t", songfont_11));
            cell.add("2".equals(systemManager.getBusType()) ? rightSign : blankSign);
            cell.add(new Chunk("2\t", songfont_11));
            cell.add("3".equals(systemManager.getBusType()) ? rightSign : blankSign);
            cell.add(new Chunk("3?\t", songfont_11));
            cell.add("4".equals(systemManager.getBusType()) ? rightSign : blankSign);
            cell.add(new Chunk("4\t\n", songfont_11));
            cell.add("5".equals(systemManager.getBusType()) ? rightSign : blankSign);
            cell.add(new Chunk("5?\t", songfont_11));
            cell.add("9".equals(systemManager.getBusType()) ? rightSign : blankSign);
            cell.add(new Chunk("9", songfont_11));
            cell.add(new Chunk(
                    systemManager.getOtherBusType() != null ? systemManager.getOtherBusType() : "________",
                    songfontUnderLine_11));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("??", songfont_11)));
            setLocal(cell);
            table2.addCell(cell);
            cell = new Cell(new Chunk(systemManager.getBusDescription(), songfont_11));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("04?", songfont_11)));
            setLocal(cell);
            cell.setRowspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", songfont_11)));
            setLocal(cell);
            table2.addCell(cell);
            cell = new Cell("10".equals(systemManager.getSerArea()) ? rightSign : blankSign);
            cell.add(new Chunk("10\t", songfont_11));

            cell.add(new Chunk("11".equals(systemManager.getSerArea()) ? rightSign : blankSign));
            cell.add(new Chunk("11??", songfont_11));
            cell.add(new Chunk(systemManager.getProTotal() != null ? systemManager.getProTotal() + "" : "________",
                    songfontUnderLine_11));
            cell.add(new Chunk("\t", songfont_11));

            cell.add("20".equals(systemManager.getSerArea()) ? rightSign : blankSign);
            cell.add(new Chunk("20??\t\n", songfont_11));

            cell.add("21".equals(systemManager.getSerArea()) ? rightSign : blankSign);
            cell.add(new Chunk("21? ", songfont_11));
            cell.add(
                    new Chunk(systemManager.getCityTotal() != null ? systemManager.getCityTotal() + "" : "________",
                            songfontUnderLine_11));
            cell.add(new Chunk("\t", songfont_11));

            cell.add("30".equals(systemManager.getSerArea()) ? rightSign : blankSign);
            cell.add(new Chunk("30?\t", songfont_11));

            cell.add(new Chunk("99".equals(systemManager.getSerArea()) ? rightSign : blankSign));
            cell.add(new Chunk("99", songfont_11));
            cell.add(new Chunk(systemManager.getOtherArea() != null ? systemManager.getOtherArea() : "________",
                    songfontUnderLine_11));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", songfont_11)));
            setLocal(cell);
            table2.addCell(cell);
            cell = new Cell("1".equals(systemManager.getSerObj()) ? rightSign : blankSign);
            cell.add(new Chunk("1??   ", songfont_11));
            cell.add("2".equals(systemManager.getSerObj()) ? rightSign : blankSign);
            cell.add(new Chunk("2   ", songfont_11));
            cell.add("3".equals(systemManager.getSerObj()) ? rightSign : blankSign);
            cell.add(new Chunk("3?   ", songfont_11));
            cell.add("9".equals(systemManager.getSerObj()) ? rightSign : blankSign);
            cell.add(new Chunk("9", songfont_11));
            cell.add(new Chunk(systemManager.getOtherObj() != null ? systemManager.getOtherObj() : "________",
                    songfontUnderLine_11));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("05?", songfont_11)));
            setLocal(cell);
            cell.setRowspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("", songfont_11)));
            setLocal(cell);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankCoveArea()) ? rightSign : blankSign);
            cell.add(new Chunk("1\t", songfont_11));
            cell.add("2".equals(rank.getRankCoveArea()) ? rightSign : blankSign);
            cell.add(new Chunk("2\t", songfont_11));
            cell.add("3".equals(rank.getRankCoveArea()) ? rightSign : blankSign);
            cell.add(new Chunk("3\t", songfont_11));
            cell.add("4".equals(rank.getRankCoveArea()) ? rightSign : blankSign);
            cell.add(new Chunk("9", songfont_11));
            cell.add(new Chunk(rank.getRankOthArea() != null ? rank.getRankOthArea() : "________",
                    songfontUnderLine_11));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("", songfont_11)));
            setLocal(cell);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankNetworkProp()) ? rightSign : blankSign);
            cell.add(new Chunk("1\t", songfont_11));
            cell.add("2".equals(rank.getRankNetworkProp()) ? rightSign : blankSign);
            cell.add(new Chunk("2?\t", songfont_11));
            cell.add("3".equals(rank.getRankNetworkProp()) ? rightSign : blankSign);
            cell.add(new Chunk("9", songfont_11));
            cell.add(new Chunk(rank.getRankOthNetworkProp() != null ? rank.getRankOthNetworkProp() : "________",
                    songfontUnderLine_11));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("06?", songfont_11)));
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);

            cell = new Cell("1".equals(rank.getRankSysConn()) ? rightSign : blankSign);
            cell.add(new Chunk("1\t", songfont_11));
            cell.add("2".equals(rank.getRankSysConn()) ? rightSign : blankSign);
            cell.add(new Chunk("2??\t\n", songfont_11));
            cell.add("3".equals(rank.getRankSysConn()) ? rightSign : blankSign);
            cell.add(new Chunk("3??\t", songfont_11));
            cell.add("4".equals(rank.getRankSysConn()) ? rightSign : blankSign);
            cell.add(new Chunk("9", songfont_11));
            cell.add(new Chunk(rank.getRankOtherSysConn() != null ? rank.getRankOtherSysConn() : "________",
                    songfontUnderLine_11));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("07?", songfont_11)));
            cell.setColspan(2);
            cell.setRowspan(8);
            setLocal(cell);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("??", songfont_11)));
            setLocal(cell);
            cell.setRowspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", songfont_11)));
            setLocal(cell);
            cell.setRowspan(2);
            cell.setColspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", songfont_11)));
            setLocal(cell);
            cell.setRowspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", songfont_11)));
            setLocal(cell);
            cell.setColspan(8);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk(" ", songfont_11)));
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk(" ", songfont_11)));
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?  ", songfont_11)));
            setLocal(cell);
            cell.setColspan(4);
            table2.addCell(cell);

            for (int i = 1; i <= 6; i++) {

                table2.addCell(new Phrase(new Chunk(i + "", songfont_11)));
                switch (i) {

                case 1:
                    cell = new Cell(new Chunk("?", songfont_11));
                    cell.setColspan(2);
                    table2.addCell(cell);
                    table2.addCell(new Phrase(new Chunk(rank.getRankSecCount(), songfont_11)));
                    cell = new Cell(("100".equals(rank.getRankSecUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("0".equals(rank.getRankSecUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("3".equals(rank.getRankSecUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.add(new Chunk(
                            (rank.getPartRankSecUse() != null ? rank.getPartRankSecUse() : "________") + "%",
                            songfontUnderLine_11));
                    cell.setColspan(4);
                    table2.addCell(cell);
                    break;

                case 2:
                    cell = new Cell(new Chunk("?", songfont_11));
                    cell.setColspan(2);
                    table2.addCell(cell);
                    table2.addCell(new Phrase(new Chunk(rank.getRankNetCount(), songfont_11)));
                    cell = new Cell(("100".equals(rank.getRankNetUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("0".equals(rank.getRankNetUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("3".equals(rank.getRankNetUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.add(new Chunk(
                            (rank.getPartRankNetUse() != null ? rank.getPartRankNetUse() : "________") + "%",
                            songfontUnderLine_11));
                    cell.setColspan(4);
                    table2.addCell(cell);
                    break;
                case 3:
                    cell = new Cell(new Chunk("?", songfont_11));
                    cell.setColspan(2);
                    table2.addCell(cell);
                    table2.addCell(new Phrase(new Chunk(rank.getRankSysCount(), songfont_11)));
                    cell = new Cell(("100".equals(rank.getRankSysUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("0".equals(rank.getRankSysUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("3".equals(rank.getRankSysUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.add(new Chunk(
                            (rank.getPartRankSysUse() != null ? rank.getPartRankSysUse() : "________") + "%",
                            songfontUnderLine_11));
                    cell.setColspan(4);
                    table2.addCell(cell);
                    break;
                case 4:
                    cell = new Cell(new Chunk("?", songfont_11));
                    cell.setColspan(2);
                    table2.addCell(cell);
                    table2.addCell(new Phrase(new Chunk(rank.getRankSqlCount(), songfont_11)));
                    cell = new Cell(("100".equals(rank.getRankSqlUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("0".equals(rank.getRankSqlUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("3".equals(rank.getRankSqlUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.add(new Chunk(
                            (rank.getPartRankSqlUse() != null ? rank.getPartRankSqlUse() : "________") + "%",
                            songfontUnderLine_11));
                    cell.setColspan(4);
                    table2.addCell(cell);
                    break;
                case 5:
                    cell = new Cell(new Chunk("?", songfont_11));
                    cell.setColspan(2);
                    table2.addCell(cell);
                    table2.addCell(new Phrase(new Chunk(rank.getRankSerCount(), songfont_11)));
                    cell = new Cell(("100".equals(rank.getRankSerUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("0".equals(rank.getRankSerUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("3".equals(rank.getRankSerUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.add(new Chunk(
                            (rank.getPartRankSerUse() != null ? rank.getPartRankSerUse() : "________") + "%",
                            songfontUnderLine_11));
                    cell.setColspan(4);
                    table2.addCell(cell);
                    break;
                case 6:
                    cell = new Cell(new Chunk("", songfont_11));
                    cell.add(new Chunk((rank.getRankOthProd() != null ? rank.getRankOthProd() : "________"),
                            songfontUnderLine_11));
                    cell.setColspan(2);
                    table2.addCell(cell);
                    table2.addCell(new Phrase(new Chunk(rank.getRankOthProdCount(), songfont_11)));
                    cell = new Cell(("100".equals(rank.getRankOthProdUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("0".equals(rank.getRankOthProdUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.setColspan(2);
                    table2.addCell(cell);
                    cell = new Cell(("3".equals(rank.getRankOthProdUse())) ? rightSign : blankSign);
                    setLocal(cell);
                    cell.add(new Chunk(
                            (rank.getPartRankOthProdUse() != null ? rank.getPartRankOthProdUse() : "________")
                                    + "%",
                            songfontUnderLine_11));
                    cell.setColspan(4);
                    table2.addCell(cell);
                    break;

                }

            }

            cell = new Cell(new Phrase(new Chunk("08?", songfont_11)));
            cell.setColspan(2);
            cell.setRowspan(10);
            setLocal(cell);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("??", songfont_11)));
            setLocal(cell);
            cell.setRowspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", songfont_11)));
            setLocal(cell);
            cell.setRowspan(2);
            cell.setColspan(3);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", songfont_11)));
            setLocal(cell);
            cell.setColspan(8);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("??", songfont_11)));
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("? ", songfont_11)));
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("?", songfont_11)));
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            table2.addCell(new Phrase(new Chunk("1", songfont_11)));
            table2.addCell(new Phrase(new Chunk("", songfont_11)));
            cell = new Cell("1".equals(rank.getRankIfGradeEval()) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.add(("0".equals(rank.getRankIfGradeEval())) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankSerGradeType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);
            cell = new Cell("2".equals(rank.getRankSerGradeType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("3".equals(rank.getRankSerGradeType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            table2.addCell(new Phrase(new Chunk("2", songfont_11)));
            table2.addCell(new Phrase(new Chunk("", songfont_11)));
            cell = new Cell("1".equals(rank.getRankIfRiskEval()) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.add(("0".equals(rank.getRankIfRiskEval())) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankSerRiskType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);
            cell = new Cell("2".equals(rank.getRankSerRiskType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("3".equals(rank.getRankSerRiskType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            table2.addCell(new Phrase(new Chunk("3", songfont_11)));
            table2.addCell(new Phrase(new Chunk("???", songfont_11)));
            cell = new Cell("1".equals(rank.getRankIfSuffReco()) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.add(("0".equals(rank.getRankIfSuffReco())) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankIfSuffRecoType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);
            cell = new Cell("2".equals(rank.getRankIfSuffRecoType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("3".equals(rank.getRankIfSuffRecoType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            table2.addCell(new Phrase(new Chunk("4", songfont_11)));
            table2.addCell(new Phrase(new Chunk("?", songfont_11)));
            cell = new Cell("1".equals(rank.getRankIfResponse()) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.add(("0".equals(rank.getRankIfResponse())) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankResponseType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);
            cell = new Cell("2".equals(rank.getRankResponseType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("3".equals(rank.getRankResponseType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            table2.addCell(new Phrase(new Chunk("5", songfont_11)));
            table2.addCell(new Phrase(new Chunk("?", songfont_11)));
            cell = new Cell("1".equals(rank.getRankIfSysInte()) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.add(("0".equals(rank.getRankIfSysInte())) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankSysInteType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);
            cell = new Cell("2".equals(rank.getRankSysInteType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("3".equals(rank.getRankSysInteType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            table2.addCell(new Phrase(new Chunk("6", songfont_11)));
            table2.addCell(new Phrase(new Chunk("", songfont_11)));
            cell = new Cell("1".equals(rank.getRankIfSecCon()) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.add(("0".equals(rank.getRankIfSecCon())) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankSecConypeType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);
            cell = new Cell("2".equals(rank.getRankSecConypeType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("3".equals(rank.getRankSecConypeType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            table2.addCell(new Phrase(new Chunk("7", songfont_11)));
            table2.addCell(new Phrase(new Chunk("", songfont_11)));
            cell = new Cell("1".equals(rank.getRankIfSecTrain()) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.add(("0".equals(rank.getRankIfSecTrain())) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankSecTrainType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);
            cell = new Cell("2".equals(rank.getRankSecTrainType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("3".equals(rank.getRankSecTrainType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            table2.addCell(new Phrase(new Chunk("8", songfont_11)));
            cell = new Cell(new Chunk("", songfont_11));
            cell.add(new Chunk((rank.getRankOthSerName() != null ? rank.getRankOthSerName() : "________"),
                    songfontUnderLine_11));
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankIfOthSer()) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.add(("0".equals(rank.getRankIfOthSer())) ? rightSign : blankSign);
            setLocal(cell);
            cell.add(new Chunk("", new Font(songFont, 9.0F, 0)));
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("1".equals(rank.getRankOthUseType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);
            cell = new Cell("2".equals(rank.getRankOthUseType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(2);
            table2.addCell(cell);
            cell = new Cell("3".equals(rank.getRankOthUseType()) ? rightSign : blankSign);
            setLocal(cell);
            cell.setColspan(3);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("09????", songfont_11)));
            cell.setColspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk(rank.getRankEvalUnitName(), songfont_11)));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("10?", songfont_11)));
            cell.setColspan(2);
            table2.addCell(cell);

            SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
            cell = new Cell(new Phrase(new Chunk(format.format(rank.getRankUseDate()), songfont_11)));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("11?", songfont_11)));
            cell.setColspan(2);
            table2.addCell(cell);

            cell = new Cell("1".equals(rank.getRankFlag()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            cell.add("0".equals(rank.getRankFlag()) ? rightSign : blankSign);
            cell.add(new Chunk("?", songfont_11));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("12??", songfont_11)));
            cell.setColspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk(rank.getRankParentSysName(), songfont_11)));
            cell.setColspan(12);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("13????", songfont_11)));
            cell.setColspan(2);
            table2.addCell(cell);

            cell = new Cell(new Phrase(new Chunk(rank.getRankParentUnitName(), songfont_11)));
            cell.setColspan(12);
            table2.addCell(cell);

            document.add(table2);
            document.add(Chunk.NEXTPAGE);

            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk("(" + systemManager.getSysName() + ")?",
                    new Font(songFont, 16.0F, 0)));
            document.add(p);

            Table table3 = new Table(2);
            table3.setWidth(110.0F);
            table3.setWidths(new int[] { 40, 70 });

            cell = new Cell(new Phrase(new Chunk("01??", songfont_11)));
            table3.addCell(cell);

            cell = new Cell("".equals(rank.getRankGrade()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            cell.add("".equals(rank.getRankGrade()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            cell.add("".equals(rank.getRankGrade()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            cell.add("".equals(rank.getRankGrade()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            cell.add("".equals(rank.getRankGrade()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            table3.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("02", songfont_11)));
            table3.addCell(cell);
            cell = new Cell(new Chunk(format.format(rank.getRankTime()), songfont_11));
            table3.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("03", songfont_11)));
            table3.addCell(cell);
            cell = new Cell(new Phrase(
                    new Chunk("1".equals(rank.getRankJudge()) ? "" : "", songfont_11)));
            table3.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("04?", songfont_11)));
            table3.addCell(cell);
            cell = new Cell("1".equals(rank.getRankIsDep()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            cell.add("0".equals(rank.getRankIsDep()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            table3.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("05??", songfont_11)));
            table3.addCell(cell);
            cell = new Cell(
                    new Phrase(new Chunk(rank.getRankDepName() == null ? "" : rank.getRankDepName(), songfont_11)));
            table3.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("06", songfont_11)));
            table3.addCell(cell);
            cell = new Cell("1".equals(rank.getRankDepJudge()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            cell.add("0".equals(rank.getRankDepJudge()) ? rightSign : blankSign);
            cell.add(new Chunk("", songfont_11));
            table3.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("07", songfont_11)));
            table3.addCell(cell);
            cell = new Cell(new Phrase(new Chunk("1".equals(rank.getRankDoc()) ? rightSign : blankSign)));
            cell.add(new Chunk("", songfont_11));
            cell.add("0".equals(rank.getRankDoc()) ? rightSign : blankSign);
            cell.add(new Chunk("\t", songfont_11));
            cell.add(new Chunk("??" + (rank.getRankAccess() == null ? "" : rank.getRankAccess()),
                    songfont_11));
            table3.addCell(cell);

            cell = new Cell(new Phrase(new Chunk("", songfont_11)));
            cell.add(new Chunk(rank.getRankInformant()));
            table3.addCell(cell);
            cell = new Cell(new Phrase(new Chunk("", songfont_11)));
            cell.add(new Chunk(format.format(rank.getRankDate())));
            table3.addCell(cell);

            document.add(table3);
            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk(
                    "                                           ",
                    songfont_11));
            document.add(p);
            document.add(Chunk.NEXTPAGE);

            p = new Paragraph();
            p.setAlignment(1);
            p.add(new Chunk(" " + systemManager.getSysName()
                    + " ??????", songfont_11));
            document.add(p);
            if (null == null) {
                Table table4 = new Table(2);
                table4.setWidth(110.0F);
                table4.setWidths(new int[] { 40, 70 });

                table4.addCell(new Phrase(new Chunk("01?", songfont_11)));
                cell = new Cell("1".equals(rank.getRankTopStruct()) ? rightSign : blankSign);
                cell.add(new Chunk("", songfont_11));
                cell.add("0".equals(rank.getRankTopStruct()) ? rightSign : blankSign);
                cell.add(new Chunk("\t??", songfont_11));
                cell.add(new Chunk(rank.getRankTopRelAcc() != null ? rank.getRankTopRelAcc() : "________",
                        songfont_11));
                table4.addCell(cell);

                table4.addCell(new Phrase(new Chunk("02??", songfont_11)));

                cell = new Cell("1".equals(rank.getRankSysManage()) ? rightSign : blankSign);
                cell.add(new Chunk("", songfont_11));
                cell.add("0".equals(rank.getRankSysManage()) ? rightSign : blankSign);
                cell.add(new Chunk("\t??", songfont_11));
                cell.add(new Chunk(rank.getRankSysManRel() != null ? rank.getRankSysManRel() : "________",
                        songfont_11));
                table4.addCell(cell);

                table4.addCell(new Phrase(new Chunk(
                        "03?", songfont_11)));
                cell = new Cell("1".equals(rank.getRankSysPlan()) ? rightSign : blankSign);
                cell.add(new Chunk("", songfont_11));
                cell.add("0".equals(rank.getRankSysPlan()) ? rightSign : blankSign);
                cell.add(new Chunk("\t??", songfont_11));
                cell.add(new Chunk(rank.getRankSysPlanRel() != null ? rank.getRankSysPlanRel() : "________",
                        songfont_11));

                table4.addCell(cell);

                table4.addCell(new Phrase(new Chunk(
                        "04???????", songfont_11)));
                cell = new Cell("1".equals(rank.getRankSysLicense()) ? rightSign : blankSign);
                cell.add(new Chunk("", songfont_11));
                cell.add("0".equals(rank.getRankSysLicense()) ? rightSign : blankSign);
                cell.add(new Chunk("\t??", songfont_11));
                cell.add(new Chunk(rank.getRankSysLiceRel() != null ? rank.getRankSysLiceRel() : "________",
                        songfont_11));
                table4.addCell(cell);

                table4.addCell(new Phrase(new Chunk("05", songfont_11)));
                cell = new Cell("1".equals(rank.getRankSysReport()) ? rightSign : blankSign);
                cell.add(new Chunk("", songfont_11));
                cell.add("0".equals(rank.getRankSysReport()) ? rightSign : blankSign);
                cell.add(new Chunk("\t??", songfont_11));
                cell.add(new Chunk(rank.getRankSysReportRel() != null ? rank.getRankSysReportRel() : "________",
                        songfont_11));
                table4.addCell(cell);

                table4.addCell(new Phrase(new Chunk("06", songfont_11)));
                cell = new Cell("1".equals(rank.getRankPeerRev()) ? rightSign : blankSign);
                cell.add(new Chunk("", songfont_11));
                cell.add("0".equals(rank.getRankPeerRev()) ? rightSign : blankSign);
                cell.add(new Chunk("\t??", songfont_11));
                cell.add(new Chunk(rank.getRankPeerRevRel() != null ? rank.getRankPeerRevRel() : "________",
                        songfont_11));
                table4.addCell(cell);

                table4.addCell(new Phrase(new Chunk("07??", songfont_11)));
                cell = new Cell("1".equals(rank.getRankSuperOpin()) ? rightSign : blankSign);
                cell.add(new Chunk("", songfont_11));
                cell.add("0".equals(rank.getRankSuperOpin()) ? rightSign : blankSign);
                cell.add(new Chunk("\t??", songfont_11));
                cell.add(new Chunk(rank.getRankSuperOpinRel() != null ? rank.getRankSuperOpinRel() : "________",
                        songfont_11));
                table4.addCell(cell);

                document.add(table4);
                document.close();
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (DocumentException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

        return 1;

    }

}