| @@ -1,9 +1,14 @@ | |||||
| package com.iformall.domain.po; | package com.iformall.domain.po; | ||||
| import java.util.List; | |||||
| import com.baomidou.mybatisplus.annotation.IdType; | import com.baomidou.mybatisplus.annotation.IdType; | ||||
| import com.baomidou.mybatisplus.annotation.TableField; | |||||
| import com.baomidou.mybatisplus.annotation.TableId; | import com.baomidou.mybatisplus.annotation.TableId; | ||||
| import com.baomidou.mybatisplus.annotation.TableName; | import com.baomidou.mybatisplus.annotation.TableName; | ||||
| import com.iformall.domain.po.base.BaseEntity; | import com.iformall.domain.po.base.BaseEntity; | ||||
| import com.iformall.print.PrintDataHandler; | |||||
| import lombok.Data; | import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | import lombok.EqualsAndHashCode; | ||||
| @@ -33,4 +38,11 @@ public class WxFinancePrintData extends BaseEntity { | |||||
| private String printDataJson; | private String printDataJson; | ||||
| @io.swagger.annotations.ApiModelProperty(value="是否可编辑",name="isEdit") | @io.swagger.annotations.ApiModelProperty(value="是否可编辑",name="isEdit") | ||||
| private Integer isEdit; | private Integer isEdit; | ||||
| @TableField(exist = false) | |||||
| private Object printComponents; | |||||
| public Object getPrintComponents() { | |||||
| printComponents = PrintDataHandler.parseComponent(this); | |||||
| return printComponents; | |||||
| } | |||||
| } | } | ||||
| @@ -2,14 +2,17 @@ package com.iformall.print; | |||||
| import lombok.Data; | import lombok.Data; | ||||
| import java.io.Serializable; | import java.io.Serializable; | ||||
| import java.util.ArrayList; | |||||
| import java.util.List; | import java.util.List; | ||||
| import com.alibaba.fastjson.JSON; | import com.alibaba.fastjson.JSON; | ||||
| import com.alibaba.fastjson.JSONArray; | |||||
| import com.alibaba.fastjson.JSONObject; | import com.alibaba.fastjson.JSONObject; | ||||
| import com.iformall.domain.po.WxFinancePrintData; | import com.iformall.domain.po.WxFinancePrintData; | ||||
| import com.iformall.enums.EnumYesOrNo; | import com.iformall.enums.EnumYesOrNo; | ||||
| import com.iformall.print.entity.PrintDataBraidTable; | import com.iformall.print.entity.PrintDataBraidTable; | ||||
| import com.iformall.print.entity.PrintDataBraidTableColumns; | import com.iformall.print.entity.PrintDataBraidTableColumns; | ||||
| import com.iformall.print.entity.PrintDataBraidTableColumnsTrSet; | |||||
| import com.iformall.print.entity.PrintDataBraidTxt; | import com.iformall.print.entity.PrintDataBraidTxt; | ||||
| @Data | @Data | ||||
| @@ -17,22 +20,46 @@ public class PrintDataHandler implements Serializable { | |||||
| private static final long serialVersionUID = 1L; | private static final long serialVersionUID = 1L; | ||||
| // public static Object parseComponent(WxFinancePrintData data) { | |||||
| // JSONObject dataJson = JSON.parseObject(data.getPrintDataJson()); | |||||
| // if("braid-txt".equals(data.getPrintDataType())) { | |||||
| // PrintDataBraidTxt txt = new PrintDataBraidTxt(); | |||||
| // txt.setTitle(data.getName()); | |||||
| // txt.setIsEdit(data.getIsEdit()); | |||||
| // txt.setName(dataJson.getString("fieldName")); | |||||
| // txt.setValue("{"+data.getName()+"}"); | |||||
| // }else if ("braid-table".equals(data.getPrintDataType())) { | |||||
| // PrintDataBraidTable table = new PrintDataBraidTable(); | |||||
| // table.setTitle(data.getName()); | |||||
| // table.setIsEdit(data.getIsEdit()); | |||||
| // | |||||
| // | |||||
| // | |||||
| // | |||||
| // } | |||||
| // } | |||||
| public static Object parseComponent(WxFinancePrintData data) { | |||||
| JSONObject dataJson = JSON.parseObject(data.getPrintDataJson()); | |||||
| if("braid-txt".equals(data.getPrintDataType())) { | |||||
| PrintDataBraidTxt txt = new PrintDataBraidTxt(); | |||||
| txt.setTitle(data.getName()); | |||||
| txt.setIsEdit(data.getIsEdit()); | |||||
| txt.setName(dataJson.getString("fieldName")); | |||||
| txt.setValue("{"+data.getName()+"}"); | |||||
| return txt; | |||||
| }else if ("braid-table".equals(data.getPrintDataType())) { | |||||
| PrintDataBraidTable table = new PrintDataBraidTable(); | |||||
| table.setTitle(data.getName()); | |||||
| table.setIsEdit(data.getIsEdit()); | |||||
| table.setName(dataJson.getString("fieldName")); | |||||
| table.setValue("{"+data.getName()+"}"); | |||||
| List<PrintDataBraidTableColumns> columnsAttr = new ArrayList<PrintDataBraidTableColumns>(); | |||||
| JSONArray columns = dataJson.getJSONArray("columns"); | |||||
| if (null != columns) { | |||||
| for (int i = 0 ; i < columns.size() ; i ++) { | |||||
| JSONObject o = columns.getJSONObject(i); | |||||
| PrintDataBraidTableColumns tc = new PrintDataBraidTableColumns(); | |||||
| tc.setTitle(o.getString("title")); | |||||
| tc.setValue("{"+tc.getTitle()+"}"); | |||||
| tc.setName(o.getString("fieldName")); | |||||
| columnsAttr.add(tc); | |||||
| JSONObject trsets = o.getJSONObject("trSet"); | |||||
| if (null != trsets) { | |||||
| PrintDataBraidTableColumnsTrSet ptrset = new PrintDataBraidTableColumnsTrSet(); | |||||
| ptrset.setTitle(trsets.getString("title")); | |||||
| ptrset.setCol(trsets.getInteger("col")); | |||||
| ptrset.setMargin(trsets.getString("margin")); | |||||
| tc.setTrSet(ptrset); | |||||
| } | |||||
| } | |||||
| } | |||||
| table.setColumnsAttr(columnsAttr); | |||||
| return table; | |||||
| } | |||||
| return null; | |||||
| } | |||||
| } | } | ||||
| @@ -0,0 +1,65 @@ | |||||
| package com.iformall.print; | |||||
| import lombok.Data; | |||||
| import java.io.Serializable; | |||||
| import java.util.ArrayList; | |||||
| import java.util.List; | |||||
| import com.alibaba.fastjson.JSON; | |||||
| import com.alibaba.fastjson.JSONArray; | |||||
| import com.alibaba.fastjson.JSONObject; | |||||
| import com.iformall.domain.po.WxFinancePrintData; | |||||
| import com.iformall.enums.EnumYesOrNo; | |||||
| import com.iformall.print.entity.PrintDataBraidTable; | |||||
| import com.iformall.print.entity.PrintDataBraidTableColumns; | |||||
| import com.iformall.print.entity.PrintDataBraidTableColumnsTrSet; | |||||
| import com.iformall.print.entity.PrintDataBraidTxt; | |||||
| @Data | |||||
| public class PrintDataParseHandler implements Serializable { | |||||
| private static final long serialVersionUID = 1L; | |||||
| public static Object parseData(WxFinancePrintData data) { | |||||
| JSONObject dataJson = JSON.parseObject(data.getPrintDataJson()); | |||||
| if("braid-txt".equals(data.getPrintDataType())) { | |||||
| PrintDataBraidTxt txt = new PrintDataBraidTxt(); | |||||
| txt.setTitle(data.getName()); | |||||
| txt.setIsEdit(data.getIsEdit()); | |||||
| txt.setName(dataJson.getString("fieldName")); | |||||
| txt.setValue("{"+data.getName()+"}"); | |||||
| return txt; | |||||
| }else if ("braid-table".equals(data.getPrintDataType())) { | |||||
| PrintDataBraidTable table = new PrintDataBraidTable(); | |||||
| table.setTitle(data.getName()); | |||||
| table.setIsEdit(data.getIsEdit()); | |||||
| table.setName(dataJson.getString("fieldName")); | |||||
| table.setValue("{"+data.getName()+"}"); | |||||
| List<PrintDataBraidTableColumns> columnsAttr = new ArrayList<PrintDataBraidTableColumns>(); | |||||
| JSONArray columns = dataJson.getJSONArray("columns"); | |||||
| if (null != columns) { | |||||
| for (int i = 0 ; i < columns.size() ; i ++) { | |||||
| JSONObject o = columns.getJSONObject(i); | |||||
| PrintDataBraidTableColumns tc = new PrintDataBraidTableColumns(); | |||||
| tc.setTitle(o.getString("title")); | |||||
| tc.setValue("{"+tc.getTitle()+"}"); | |||||
| tc.setName(o.getString("fieldName")); | |||||
| columnsAttr.add(tc); | |||||
| JSONObject trsets = o.getJSONObject("trSet"); | |||||
| if (null != trsets) { | |||||
| PrintDataBraidTableColumnsTrSet ptrset = new PrintDataBraidTableColumnsTrSet(); | |||||
| ptrset.setTitle(trsets.getString("title")); | |||||
| ptrset.setCol(trsets.getInteger("col")); | |||||
| ptrset.setMargin(trsets.getString("margin")); | |||||
| tc.setTrSet(ptrset); | |||||
| } | |||||
| } | |||||
| } | |||||
| table.setColumnsAttr(columnsAttr); | |||||
| return table; | |||||
| } | |||||
| return null; | |||||
| } | |||||
| } | |||||