文档章节

https://modao.cc/app/KhPrkBQLp1te38I6OCkIua2DTWEYtCC

M
 MackCC_Sun
发布于 2016/09/07 09:41
字数 3151
阅读 122
收藏 0

Java代码

 收藏代码

  1. package com.concom.imports.bqitem.util;  
  2.   
  3. import java.lang.reflect.Field;  
  4. import java.util.ArrayList;  
  5. import java.util.HashMap;  
  6. import java.util.Iterator;  
  7. import java.util.List;  
  8. import java.util.Map;  
  9.   
  10. import org.apache.commons.beanutils.BeanUtils;  
  11. import org.dom4j.Document;  
  12. import org.dom4j.Element;  
  13.   
  14. import com.concom.imports.bqitem.conf.ProjectReflectConfig;  
  15. import com.concom.imports.bqitem.dto.BQItem;  
  16. import com.concom.imports.bqitem.dto.BQNormItem;  
  17. import com.concom.imports.bqitem.dto.BQResUsageItem;  
  18. import com.concom.imports.bqitem.dto.Branch;  
  19. import com.concom.imports.bqitem.dto.ProMatData;  
  20. import com.concom.imports.bqitem.dto.ProjectBranchList;  
  21. import com.concom.imports.bqitem.dto.ProjectList;  
  22. import com.concom.imports.bqitem.dto.ResourceItem;  
  23. import com.concom.imports.bqitem.dto.ResourceUsage;  
  24. import com.concom.lang.helper.StringHelper;  
  25. import com.concom.lang.helper.TimeHelper;  
  26. import com.concom.matsmart.tools.constant.Constant;  
  27.   
  28. /** 
  29.  * Projects格式xml解析类 
  30.  *  
  31.  * @author Caozhili 
  32.  * @date 2015-07-29 
  33.  */  
  34. public class ProjectsBranchRead extends BaseRead<ProjectBranchList> {  
  35.   
  36.     private static final String ROOT_PROJECTS = "Projects";  
  37.     private static final String PROJECTGROUP = "ProjectGroup";  
  38.     private static final String PROJECTITEM = "ProjectItem";  
  39.     private static final String BILLTABLE = "BillTable";  
  40.     private static final String MEASURETABLE = "MeasureTable";  
  41.     private static final String BRANCH = "Branch";  
  42.     private static final String PROJECTCOSTS = "ProjectCosts";  
  43.     private static final String COSTS = "Costs";  
  44.     private static final String WORKCONTENT = "WorkContent";  
  45.     private static final String BILL = "Bill";  
  46.     private static final String NORM = "Norm";  
  47.     private static final String RESOURCE = "Resource";  
  48.     private static final String RESOURCEITEM = "ResourceItem";  
  49.     private static final String RESELEMENTS = "ResElements";  
  50.     private static final String RESELEMENTITEM = "ResElementItem";  
  51.       
  52.     private static final Field[] ProjectListFields = ProjectList.class.getDeclaredFields();  
  53.     private static final Field[] ResourceItemFields = ResourceItem.class.getDeclaredFields();  
  54.     private static final Field[] BranchFields = Branch.class.getDeclaredFields();  
  55.     private static final Field[] BQItemFields = BQItem.class.getDeclaredFields();  
  56.     private static final Field[] BQNormItemFields = BQNormItem.class.getDeclaredFields();  
  57.     private static final Field[] BQResUsageItemFields = BQResUsageItem.class.getDeclaredFields();  
  58.     private static final Field[] ResourceUsageFields = ResourceUsage.class.getDeclaredFields();  
  59.   
  60.     @Override  
  61.     public List<ProjectBranchList> parserXml(Document doc) throws Exception {  
  62.         totalCount = 0;  
  63.         maxQualityNum = 0;  
  64.         mat5Datas.clear();  
  65.         matDatas.clear();  
  66.   
  67.         List<ProjectBranchList> result = null;  
  68.         Element root = doc.getRootElement();  
  69.         if (ROOT_PROJECTS.equals(root.getName())) {  
  70.             List<Element> projectList = root.elements(PROJECTGROUP);  
  71.             if (null == projectList || projectList.isEmpty()) {  
  72.                 return null;  
  73.             }  
  74.             result = new ArrayList<ProjectBranchList>();  
  75.             for (int i = 0; i < projectList.size(); i++) {  
  76.                 List<ProjectBranchList> projectListItem = readProjectList(projectList.get(i));  
  77.                 if (null != projectListItem && !projectListItem.isEmpty()) {  
  78.                     result.addAll(projectListItem);  
  79.                 }  
  80.             }  
  81.         }  
  82.         return result;  
  83.     }  
  84.   
  85.     private List<ProjectBranchList> readProjectList(Element projectItemElement) throws Exception {  
  86.   
  87.         if (null == projectItemElement) {  
  88.             return null;  
  89.         }  
  90.   
  91.         List<ProjectBranchList> resultList = new ArrayList<ProjectBranchList>();  
  92.         List<Element> projectItemList = projectItemElement.elements(PROJECTITEM);  
  93.         if (null != projectItemList && !projectItemList.isEmpty()) {  
  94.             // 递归调用  
  95.             for (int i = 0; i < projectItemList.size(); i++) {  
  96.                 try {  
  97.                     ProjectBranchList projectList = readProjectListItem(projectItemList.get(i));  
  98.                     if (null != projectList) {  
  99.                         resultList.add(projectList);  
  100.                     }  
  101.                 } catch (Exception e) {  
  102.                     e.printStackTrace();  
  103.                 }  
  104.             }  
  105.         }  
  106.         return resultList;  
  107.     }  
  108.   
  109.     /** 
  110.      * 读取分部项目 
  111.      *  
  112.      * @param projectListElement 
  113.      * @return 
  114.      * @throws Exception 
  115.      */  
  116.     private ProjectBranchList readProjectListItem(Element projectListElement) throws Exception {  
  117.   
  118.         List<Element> BQTableElements = projectListElement.elements(BILLTABLE);  
  119.         List<Element> BQTableElements2 = projectListElement.elements(MEASURETABLE);  
  120.         if (null == BQTableElements || BQTableElements.isEmpty()) {  
  121.             return null;  
  122.         }  
  123.   
  124.         ProjectBranchList projectList = new ProjectBranchList();  
  125.         boolean flag = parserElementAttrValue(projectList, projectListElement, ProjectListFields);  
  126.   
  127.         if (flag) {  
  128.             Element projectCostsElement = projectListElement.element(PROJECTCOSTS);  
  129.             flag = parserElementAttrValue(projectList, projectCostsElement, ProjectListFields);  
  130.         }  
  131.         if (!flag) {  
  132.             return null;  
  133.         }  
  134.         List<Branch> branchList = new ArrayList<Branch>();  
  135.         List<ResourceItem> ResourceItemList = new ArrayList<ResourceItem>();  
  136.         //分部分项数据  
  137.         for (Element table : BQTableElements) {  
  138.             List<Branch> tempList = null;  
  139.             List<Element> branchElements = table.elements(BRANCH);  
  140.             if (null != branchElements && !branchElements.isEmpty()) {  
  141.                 tempList = readBQItem(branchElements);  
  142.   
  143.             } else {  
  144.                 tempList = readBQItem(BQTableElements);  
  145.             }  
  146.             if (null != tempList && !tempList.isEmpty()) {  
  147.                 branchList.addAll(tempList);  
  148.             }  
  149.         }  
  150.         //措施项目  
  151.         if (null != BQTableElements2 && !BQTableElements2.isEmpty()) {  
  152.             for (Element table : BQTableElements2) {  
  153.                 List<Branch> tempList = null;  
  154.                 List<Element> branchElements = table.elements(BRANCH);  
  155.                 if (null != branchElements && !branchElements.isEmpty()) {  
  156.                     tempList = readBQItem(branchElements);  
  157.       
  158.                 } else {  
  159.                     tempList = readBQItem(BQTableElements);  
  160.                 }  
  161.                 if (null != tempList && !tempList.isEmpty()) {  
  162.                     branchList.addAll(tempList);  
  163.                 }  
  164.             }  
  165.         }  
  166.         Integer projectListID = projectList.getProjectListID();  
  167.         //添加专业  
  168.         addSpecialty(projectList.getSpeciality());  
  169.         List<Element> ResourceElements = projectListElement.elements(RESOURCE);  
  170.         if (null != ResourceElements && !ResourceElements.isEmpty()) {  
  171.             List<ResourceItem> tempResourceItemList = readResourceItem(projectList,ResourceElements, projectListID);  
  172.             if (null != tempResourceItemList && !tempResourceItemList.isEmpty()) {  
  173.                 ResourceItemList.addAll(tempResourceItemList);  
  174.             }  
  175.         }  
  176.         projectList.setBranchList(branchList);  
  177.         projectList.setResourceItemList(ResourceItemList);  
  178.   
  179.         return projectList;  
  180.     }  
  181.   
  182.     /** 
  183.      * 读取工料机 
  184.      *  
  185.      * @param ResourceElements 
  186.      * @return 
  187.      * @throws Exception 
  188.      */  
  189.     private List<ResourceItem> readResourceItem(ProjectBranchList projectList,List<Element> ResourceElements, Integer projectListID)  
  190.             throws Exception {  
  191.         if (null == ResourceElements || ResourceElements.isEmpty()) {  
  192.             return null;  
  193.         }  
  194.         List<ResourceItem> ResourceItemList = new ArrayList<ResourceItem>();  
  195.         List<ProMatData> proMatDatas = new ArrayList<ProMatData>();  
  196.           
  197.         for (Element ResourceElement : ResourceElements) {  
  198.             List<Element> ResourceItemElements = ResourceElement.elements(RESOURCEITEM);  
  199.             if (null == ResourceItemElements || ResourceItemElements.isEmpty()) {  
  200.                 continue;  
  201.             }  
  202.             for (Element element : ResourceItemElements) {  
  203.                 // 解析ResourceItem  
  204.                 ResourceItem resourceItem = new ResourceItem();  
  205.                 boolean flag = parserElementAttrValue(resourceItem, element, ResourceItemFields);  
  206.                 Element resElements = element.element(RESELEMENTS);  
  207.                 if (null != resElements) {  
  208.                     List<Element> ResourceUsageElements = resElements.elements(RESELEMENTITEM);  
  209.                     if (null != ResourceUsageElements && !ResourceUsageElements.isEmpty()) {  
  210.                         List<ResourceUsage> ResourceUsageList = new ArrayList<ResourceUsage>();  
  211.   
  212.                         for (Element ResourceUsageElement : ResourceUsageElements) {  
  213.                             // 解析ResourceUsage  
  214.                             ResourceUsage ResourceUsage = new ResourceUsage();  
  215.                             boolean flagResourceUsage = parserElementAttrValue(ResourceUsage, ResourceUsageElement,  
  216.                                     ResourceUsageFields);  
  217.   
  218.                             if (flagResourceUsage) {  
  219.                                 ResourceUsageList.add(ResourceUsage);  
  220.                             }  
  221.                         }  
  222.                         resourceItem.setResourceUsageList(ResourceUsageList);  
  223.                     }  
  224.                 }  
  225.   
  226.                 if (flag) {  
  227.                     totalCount++;  
  228.                     ProMatData matData = new ProMatData();  
  229.                     matData.setName(resourceItem.getName());  
  230.                     matData.setUnit(StringHelper.transforNull(resourceItem.getUnit()));  
  231.                     matData.setSpec(StringHelper.transforNull(resourceItem.getSpecification()));  
  232.                     // mat5Data.setCount(resourceItem.getQuantity().toString());  
  233.                     if (null == resourceItem.getQuantity() || resourceItem.getQuantity().equals(0d)) {  
  234.                         matData.setCount("1");  
  235.                     } else {  
  236.                         matData.setCount(resourceItem.getQuantity().toString());  
  237.                     }  
  238.                     matData.setPrice(resourceItem.getRate().toString());  
  239.                     matData.setAddr(StringHelper.transforNull(resourceItem.getProducingArea()));  
  240.                     matData.setIssueDate(TimeHelper.format(null, Constant.DEFAULT_FORMAT));  
  241.                     matData.setNote(StringHelper.transforNull(resourceItem.getRemark()));  
  242.                     matData.setResourceID(resourceItem.getResourceID().toString());  
  243.                     matData.setEname(StringHelper.transforNull(resourceItem.getSupplier()));  
  244.                     matData.setProjectListID(projectListID.toString());  
  245.   
  246.                     proMatDatas.add(matData);  
  247.                     if (mat5Datas.size() < mat5DatasSize) {  
  248.                         ProMatData mat5Data = new ProMatData();  
  249.                         BeanUtils.copyProperties(mat5Data, matData);  
  250.                         mat5Datas.add(mat5Data);  
  251.                     }  
  252.   
  253.                     ResourceItemList.add(resourceItem);  
  254.                 }  
  255.             }  
  256.         }  
  257.         projectList.setMatDatas(proMatDatas);  
  258.         return ResourceItemList;  
  259.     }  
  260.   
  261.     private List<Branch> readBQItem(List<Element> branchElements) throws Exception {  
  262.         if (null == branchElements || branchElements.isEmpty()) {  
  263.             return null;  
  264.         }  
  265.         List<Branch> BranchList = new ArrayList<Branch>();  
  266.         for (Element branchElement : branchElements) {  
  267.             List<Element> branchElements2 = branchElement.elements(BRANCH);  
  268.             if (null != branchElements2 && !branchElements2.isEmpty()) {  
  269.                 BranchList.addAll(readBQItem(branchElements2));  
  270.                 continue;  
  271.             }  
  272.             List<Element> billElements = branchElement.elements(BILL);  
  273.             if (null == billElements || billElements.isEmpty()) {  
  274.                 continue;  
  275.             }  
  276.             Branch branch = new Branch();  
  277.             List<BQItem> BQItemList = new ArrayList<BQItem>();   
  278.             boolean flag1 = parserElementAttrValue(branch, branchElement, BranchFields);  
  279.             if (flag1) {  
  280.                 Element branchCost = branchElement.element(COSTS);  
  281.                 if (null != branchCost) {  
  282.                     parserElementAttrValue(branch, branchCost, BranchFields);  
  283.                 }  
  284.             }  
  285.   
  286.             for (Element billElement : billElements) {  
  287.                 if (null == billElement) {  
  288.                     continue;  
  289.                 }  
  290.                 List<BQNormItem> BQNormItemList = new ArrayList<BQNormItem>();  
  291.                 // 解析BQItem  
  292.                 BQItem bqItem = new BQItem();  
  293.                 boolean flag = parserElementAttrValue(bqItem, billElement, BQItemFields);  
  294.                 if (flag) {  
  295.                     Element costElement = billElement.element(COSTS);  
  296.                     if (null != costElement) {  
  297.                         parserElementAttrValue(bqItem, costElement, BQItemFields);  
  298.                     }  
  299.                 }  
  300.   
  301.                 List<Element> WorkContents = billElement.elements(WORKCONTENT);  
  302.                 // .element(RESELEMENTS);  
  303.                 if (null != WorkContents) {  
  304.                     for (Element workContentElement : WorkContents) {  
  305.                         List<Element> normElements = workContentElement.elements(NORM);  
  306.                         if (null == normElements) {  
  307.                             continue;  
  308.                         }  
  309.   
  310.                         for (Element normElement : normElements) {  
  311.                             if (null == normElement) {  
  312.                                 continue;  
  313.                             }  
  314.                             Map<String,BQResUsageItem> BQResUsageItemMap = new HashMap<String,BQResUsageItem>();  
  315.                             // 解析BQNormItem  
  316.                             BQNormItem bqNormItem = new BQNormItem();  
  317.                             boolean flagBQNormItem = parserElementAttrValue(bqNormItem, normElement, BQNormItemFields);  
  318.                             if (flagBQNormItem) {  
  319.                                 Element normCostElement = normElement.element(COSTS);  
  320.                                 if (null != normCostElement) {  
  321.                                     parserElementAttrValue(bqNormItem, normCostElement, BQNormItemFields);  
  322.                                 }  
  323.                             }  
  324.   
  325.                             Element resElementsElement = normElement.element(RESELEMENTS);  
  326.                             if (null == resElementsElement) {  
  327.                                 continue;  
  328.                             }  
  329.                             List<Element> resElementItems = resElementsElement.elements(RESELEMENTITEM);  
  330.                             if (null != resElementItems && !resElementItems.isEmpty()) {  
  331.                                   
  332.                                 for (Element resElementItemElement : resElementItems) {  
  333.                                     // 解析BQResUsageItem  
  334.                                     BQResUsageItem BQResUsageItem = new BQResUsageItem();  
  335.                                     boolean flagBQResUsageItem = parserElementAttrValue(BQResUsageItem,  
  336.                                             resElementItemElement, BQResUsageItemFields);  
  337.                                     if (flagBQResUsageItem) {  
  338.                                         String resourceID = BQResUsageItem.getResourceID();  
  339.                                         if(null!=resourceID && !"".equals(resourceID)){  
  340.                                             if (BQResUsageItemMap.containsKey(resourceID)) {  
  341.                                                 BQResUsageItem beforeUsageItem = BQResUsageItemMap.get(resourceID);  
  342.                                                 beforeUsageItem.setUsage(BQResUsageItem.getUsage()+beforeUsageItem.getUsage());  
  343.                                                 BQResUsageItemMap.put(resourceID, beforeUsageItem);  
  344.                                             }else{  
  345.                                                 BQResUsageItemMap.put(resourceID, BQResUsageItem);  
  346.                                             }  
  347.                                         }  
  348.                                     }  
  349.                                 }  
  350.                             }  
  351.                             // 转成list  
  352.                             List<BQResUsageItem> BQResUsageItemList = new ArrayList<BQResUsageItem>();  
  353.                             Iterator<String> usageItr = BQResUsageItemMap.keySet().iterator();  
  354.                             while(usageItr.hasNext()){  
  355.                                 String resourceID = usageItr.next();  
  356.                                 BQResUsageItemList.add(BQResUsageItemMap.get(resourceID));  
  357.                             }  
  358.                             bqNormItem.setBQResUsageItemList(BQResUsageItemList);  
  359.                               
  360.                             if (flagBQNormItem) {  
  361.                                 BQNormItemList.add(bqNormItem);  
  362.                             }  
  363.                         }  
  364.                     }  
  365.                 }  
  366.                 bqItem.setBQNormItemList(BQNormItemList);  
  367.                   
  368.                 if (flag) {  
  369.                     BQItemList.add(bqItem);  
  370.                 }  
  371.             }  
  372.             if (flag1) {  
  373.                 branch.setBQItemList(BQItemList);  
  374.                 BranchList.add(branch);  
  375.             }  
  376.         }  
  377.         return BranchList;  
  378.     }  
  379.   
  380.     @Override  
  381.     public String getAttrName(Object obj, String attrName) throws Exception {  
  382.         if (null == attrName) {  
  383.             return "";  
  384.         }  
  385.   
  386.         if (obj instanceof BQItem) {  
  387.             attrName = ProjectReflectConfig.getBillMap(attrName);  
  388.         } else if (obj instanceof BQNormItem) {  
  389.             attrName = ProjectReflectConfig.getNormMap(attrName);  
  390.         } else if (obj instanceof ProjectBranchList) {  
  391.             attrName = ProjectReflectConfig.getProjectItemMap(attrName);  
  392.         } else if (obj instanceof ResourceItem) {  
  393.             attrName = ProjectReflectConfig.getResourceMap(attrName);  
  394.         } else if (obj instanceof ResourceUsage || obj instanceof BQResUsageItem) {  
  395.             attrName = ProjectReflectConfig.getResourceUsageMap(attrName);  
  396.         }  
  397.   
  398.         return attrName.trim();  
  399.     }  
  400. }  


BaseRead.java

Java代码

 收藏代码

  1. package com.concom.imports.bqitem.util;  
  2.   
  3. import java.lang.reflect.Field;  
  4. import java.util.ArrayList;  
  5. import java.util.HashSet;  
  6. import java.util.List;  
  7. import java.util.Set;  
  8.   
  9. import org.dom4j.Attribute;  
  10. import org.dom4j.Document;  
  11. import org.dom4j.Element;  
  12.   
  13. import com.concom.imports.bqitem.dto.BQItem;  
  14. import com.concom.imports.bqitem.dto.ProMatData;  
  15. import com.concom.imports.bqitem.dto.ResourceItem;  
  16. import com.concom.imports.utils.DoubleUtil;  
  17.   
  18. /** 
  19.  * 工程分部分项数据基础类 
  20.  * @author Caozhili 
  21.  * @date 2015-07-29 
  22.  */  
  23. public abstract class BaseRead<T> {  
  24.       
  25.     /** 
  26.      * 小数点位数 
  27.      */  
  28.     protected static final int SCALE = 2;  
  29.       
  30.     /** 
  31.      * 单价小数点位数 
  32.      */  
  33.     protected static final int RATE_SCALE = 4;  
  34.       
  35.     /** 
  36.      * 误差范围 
  37.      */  
  38.     protected static final double percentNum = 0.01;  
  39.       
  40.     /** 
  41.      * 预览材价条数 
  42.      */  
  43.     protected static final int mat5DatasSize = 5;  
  44.       
  45.     /** 
  46.      * 材价总数 
  47.      */  
  48.     protected int totalCount = 0;  
  49.       
  50.     private int reCountNum = 0;  
  51.       
  52.     /** 
  53.      * 前五条材价数据 
  54.      */  
  55.     protected List<ProMatData> mat5Datas = new ArrayList<ProMatData>();  
  56.     /** 
  57.      * 所有材价数据 
  58.      */  
  59.     protected List<ProMatData> matDatas = new ArrayList<ProMatData>();  
  60.       
  61.       
  62.     /** 
  63.      * 匹配到的最大非空属性数量 
  64.      */  
  65.     protected int maxQualityNum = 0;  
  66.       
  67.     /** 
  68.      * 专业 
  69.      */  
  70.     private Set<Integer> specialtySet = new HashSet<Integer>();  
  71.       
  72.     /** 
  73.      * 解析xml 
  74.      * @param doc 
  75.      * @return 
  76.      * @throws Exception 
  77.      */  
  78.     public abstract List<T> parserXml(Document doc) throws Exception;  
  79.       
  80.     /** 
  81.      * 获取属性名称 
  82.      * @param obj 
  83.      * @param attrName 
  84.      * @return 
  85.      * @throws Exception 
  86.      */  
  87.     public abstract String getAttrName(Object obj,String attrName) throws Exception;  
  88.   
  89.     /** 
  90.      * 根据借点属性设置对象属性值 
  91.      * @param bean 
  92.      * @param element 
  93.      * @param fields 
  94.      * @return 
  95.      * @throws Exception 
  96.      */  
  97.     protected boolean parserElementAttrValue(Object bean,Element element,Field[] fields)throws Exception{  
  98.         if(null==element){  
  99.             return false;  
  100.         }  
  101.         List<Attribute> attrElements = element.attributes();  
  102.         if(null==attrElements || attrElements.isEmpty()){  
  103.             return false;  
  104.         }  
  105.         int qualityNum = 0;  
  106.         for (Attribute attr:attrElements) {  
  107.             String attrName = attr.getName();  
  108.             if(null==attrName || "".equals(attrName)){  
  109.                 continue;  
  110.             }  
  111.             attrName = getAttrName(bean,attrName);  
  112.               
  113.             for (Field field:fields) {  
  114.                 String name = field.getName();  
  115.                 if(attrName.equalsIgnoreCase(name)){  
  116.                     //赋值  
  117.                     String attrValue = attr.getValue();  
  118.                     if(bean instanceof ResourceItem){  
  119.                         if(attrValue!=null && !"".equals(attrValue.trim())){  
  120.                             qualityNum++;  
  121.                         }  
  122.                     }  
  123.                     Object type = field.getType();  
  124.                     setBeanValue(bean, name, type, attrValue);  
  125.                 }  
  126.             }  
  127.               
  128.         }  
  129.         if(qualityNum>maxQualityNum){  
  130.             maxQualityNum = qualityNum;  
  131.         }  
  132.         return true;  
  133.     }  
  134.       
  135.     /** 
  136.      * 反射设置对象值 
  137.      * @param bean 
  138.      * @param name 
  139.      * @param type 
  140.      * @param tempVal 
  141.      * @throws Exception 
  142.      */  
  143.     protected void setBeanValue(Object bean,String name,Object type,String tempVal) throws Exception{  
  144.         String methodName = getMethodName(name);  
  145.         if(type == Double.class){  
  146.             if(null!=tempVal && !"".equals(tempVal)){  
  147.                 if(tempVal.contains("%")){  
  148.                     tempVal = tempVal.replaceAll("%", "");  
  149.                 }  
  150.                 bean.getClass().getMethod(methodName,Double.class).invoke(bean,DoubleUtil.round(Double.valueOf(tempVal),8));  
  151.             }else{  
  152.                 bean.getClass().getMethod(methodName,Double.class).invoke(bean, 0d);  
  153.             }  
  154.         }else if(type == Integer.class){  
  155.             if(null!=tempVal && !"".equals(tempVal)){  
  156.                 if(tempVal.contains("%")){  
  157.                     tempVal = tempVal.replaceAll("%", "");  
  158.                 }  
  159.                 bean.getClass().getMethod(methodName,Integer.class).invoke(bean, Integer.valueOf(tempVal));  
  160.             }else{  
  161.                 bean.getClass().getMethod(methodName,Integer.class).invoke(bean, 0);  
  162.             }  
  163.         }else if(type == Boolean.class){  
  164.             if(null!=tempVal && !"".equals(tempVal)){  
  165.                 bean.getClass().getMethod(methodName,Boolean.class).invoke(bean, Boolean.valueOf(tempVal));  
  166.             }else{  
  167.                 bean.getClass().getMethod(methodName,Boolean.class).invoke(bean, false);  
  168.             }  
  169.         }else{  
  170.             if(null!=tempVal){  
  171.                 bean.getClass().getMethod(methodName,String.class).invoke(bean, tempVal.trim());  
  172.             }else{  
  173.                 bean.getClass().getMethod(methodName,String.class).invoke(bean, "");  
  174.             }  
  175.         }  
  176.     }  
  177.       
  178.     /** 
  179.      * 从新计算价格 
  180.      * @param bqItem 
  181.      */  
  182.     protected void reCountBQItemRate(BQItem bqItem) {  
  183.         //单价计算方式(人工费+材料费+机械费+管理费+利润)  
  184.         try{  
  185.             double rate = bqItem.getLaborRate()+bqItem.getMaterialRate()+bqItem.getMachineRate()  
  186.             +bqItem.getProfitRate()+bqItem.getOverheadRate()+bqItem.getRestRate();  
  187.             double quantity = bqItem.getQuantity();  
  188.             if(quantity==1d){  
  189.                 reCountNum++;  
  190.                 return;  
  191.             }  
  192.             if(Math.abs(DoubleUtil.sub(bqItem.getAddup(), rate*quantity))<1){  
  193.                 return;  
  194.             }  
  195.               
  196.             if(quantity>0 && Math.abs((1-Math.abs(rate/bqItem.getAddup())))<percentNum){  
  197.                 reCountNum++;  
  198.                 //重新计算单价  
  199.                 bqItem.setLaborRate(DoubleUtil.round(bqItem.getLaborRate()/quantity,SCALE));  
  200.                 bqItem.setMaterialRate(DoubleUtil.round(bqItem.getMaterialRate()/quantity,SCALE));  
  201.                 bqItem.setMachineRate(DoubleUtil.round(bqItem.getMachineRate()/quantity,SCALE));  
  202.                 bqItem.setProfitRate(DoubleUtil.round(bqItem.getProfitRate()/quantity,SCALE));  
  203.                 bqItem.setOverheadRate(DoubleUtil.round(bqItem.getOverheadRate()/quantity,SCALE));  
  204.                 bqItem.setRestRate(DoubleUtil.round(bqItem.getRestRate()/quantity,SCALE));  
  205.                 bqItem.setRiskRate(DoubleUtil.round(bqItem.getRiskRate()/quantity,SCALE));  
  206.                 bqItem.setMainMaterialRate(DoubleUtil.round(bqItem.getMainMaterialRate()/quantity,SCALE));  
  207.                 bqItem.setEquipmentRate(DoubleUtil.round(bqItem.getEquipmentRate()/quantity,SCALE));  
  208.             }  
  209.         }catch(Exception e){  
  210.             e.printStackTrace();  
  211.         }  
  212.     }  
  213.       
  214.     /** 
  215.      * 添加专业 
  216.      * @param specialty 
  217.      */  
  218.     protected void addSpecialty(Integer specialty){  
  219.         if(null==specialty){  
  220.             return;  
  221.         }  
  222.         if(!specialtySet.contains(specialty)){  
  223.             specialtySet.add(specialty);  
  224.         }  
  225.     }  
  226.       
  227.     /** 
  228.      * 获取属性get方法 
  229.      * @param fieldName 
  230.      * @return 
  231.      */  
  232.     protected String getMethodName(String fieldName){  
  233.         String firstChar = fieldName.charAt(0)+"";  
  234.         return "set"+firstChar.toUpperCase()+fieldName.substring(1);  
  235.     }  
  236.   
  237.     public List<ProMatData> getMat5Datas() {  
  238.         return mat5Datas;  
  239.     }  
  240.   
  241.     public List<ProMatData> getMatDatas() {  
  242.         return matDatas;  
  243.     }  
  244.   
  245.     public int getTotalCount() {  
  246.         return totalCount;  
  247.     }  
  248.   
  249.     public int getMaxQualityNum() {  
  250.         return maxQualityNum;  
  251.     }  
  252.   
  253.     public int getReCountNum() {  
  254.         return reCountNum;  
  255.     }  
  256.   
  257.     public Set<Integer> getSpecialtySet() {  
  258.         return specialtySet;  
  259.     }  
  260. }  


ProjectBranchList.java

Java代码

 收藏代码

  1. package com.concom.imports.bqitem.dto;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.List;  
  5.   
  6. /** 
  7.  * @Title: ProjectBranchList.java 
  8.  * @Package com.concom.imports.bqitem.dto 
  9.  * @Description: 工程结构实体类 
  10.  * @author CaoZhili 
  11.  * @date 2015年9月6日 上午10:22:01 
  12.  * @version V1.0 
  13.  */  
  14. public class ProjectBranchList implements java.io.Serializable {  
  15.   
  16.     /** 
  17.      *  
  18.      */  
  19.     private static final long serialVersionUID = 1L;  
  20.       
  21.     private Integer projectListID;  
  22.     private String name;  
  23.     private Integer projectType;  
  24.     private Integer speciality;  
  25.     private Double BQItemCost;  
  26.     private Double measureItemCost;  
  27.     private Double otherItemCost;  
  28.     private Double lawfeeTotal;  
  29.     private Double taxTotal;  
  30.     private Double laborTotal;  
  31.     private Double materialTotal;  
  32.     private Double machineTotal;  
  33.     private Double overheadTotal;  
  34.     private Double profitTotal;  
  35.     private Double total;  
  36.     private Integer professionalTreeId;  
  37.   
  38.     private List<Branch> BranchList;  
  39.     private List<ResourceItem> ResourceItemList;  
  40.     /** 
  41.      * 单项工程材价数据 
  42.      */  
  43.     private List<ProMatData> matDatas;  
  44.   
  45.     public Integer getProjectListID() {  
  46.         return projectListID;  
  47.     }  
  48.   
  49.     public void setProjectListID(Integer projectListID) {  
  50.         this.projectListID = projectListID;  
  51.     }  
  52.   
  53.     public String getName() {  
  54.         return name;  
  55.     }  
  56.   
  57.     public void setName(String name) {  
  58.         this.name = name;  
  59.     }  
  60.   
  61.     public Integer getProjectType() {  
  62.         return projectType;  
  63.     }  
  64.   
  65.     public void setProjectType(Integer projectType) {  
  66.         this.projectType = projectType;  
  67.     }  
  68.   
  69.     public Integer getSpeciality() {  
  70.         return speciality;  
  71.     }  
  72.   
  73.     public void setSpeciality(Integer speciality) {  
  74.         this.speciality = speciality;  
  75.     }  
  76.   
  77.     public Double getBQItemCost() {  
  78.         return BQItemCost;  
  79.     }  
  80.   
  81.     public void setBQItemCost(Double bQItemCost) {  
  82.         BQItemCost = bQItemCost;  
  83.     }  
  84.   
  85.     public Double getMeasureItemCost() {  
  86.         return measureItemCost;  
  87.     }  
  88.   
  89.     public void setMeasureItemCost(Double measureItemCost) {  
  90.         this.measureItemCost = measureItemCost;  
  91.     }  
  92.   
  93.     public Double getOtherItemCost() {  
  94.         return otherItemCost;  
  95.     }  
  96.   
  97.     public void setOtherItemCost(Double otherItemCost) {  
  98.         this.otherItemCost = otherItemCost;  
  99.     }  
  100.   
  101.     public Double getLawfeeTotal() {  
  102.         return lawfeeTotal;  
  103.     }  
  104.   
  105.     public void setLawfeeTotal(Double lawfeeTotal) {  
  106.         this.lawfeeTotal = lawfeeTotal;  
  107.     }  
  108.   
  109.     public Double getTaxTotal() {  
  110.         return taxTotal;  
  111.     }  
  112.   
  113.     public void setTaxTotal(Double taxTotal) {  
  114.         this.taxTotal = taxTotal;  
  115.     }  
  116.   
  117.     public Double getLaborTotal() {  
  118.         return laborTotal;  
  119.     }  
  120.   
  121.     public void setLaborTotal(Double laborTotal) {  
  122.         this.laborTotal = laborTotal;  
  123.     }  
  124.   
  125.     public Double getMaterialTotal() {  
  126.         return materialTotal;  
  127.     }  
  128.   
  129.     public void setMaterialTotal(Double materialTotal) {  
  130.         this.materialTotal = materialTotal;  
  131.     }  
  132.   
  133.     public Double getMachineTotal() {  
  134.         return machineTotal;  
  135.     }  
  136.   
  137.     public void setMachineTotal(Double machineTotal) {  
  138.         this.machineTotal = machineTotal;  
  139.     }  
  140.   
  141.     public Double getOverheadTotal() {  
  142.         return overheadTotal;  
  143.     }  
  144.   
  145.     public void setOverheadTotal(Double overheadTotal) {  
  146.         this.overheadTotal = overheadTotal;  
  147.     }  
  148.   
  149.     public Double getProfitTotal() {  
  150.         return profitTotal;  
  151.     }  
  152.   
  153.     public void setProfitTotal(Double profitTotal) {  
  154.         this.profitTotal = profitTotal;  
  155.     }  
  156.   
  157.     public Double getTotal() {  
  158.         return total;  
  159.     }  
  160.   
  161.     public void setTotal(Double total) {  
  162.         this.total = total;  
  163.     }  
  164.   
  165.     public List<Branch> getBranchList() {  
  166.         return BranchList;  
  167.     }  
  168.   
  169.     public void setBranchList(List<Branch> branchList) {  
  170.         BranchList = branchList;  
  171.     }  
  172.   
  173.     public List<ResourceItem> getResourceItemList() {  
  174.         return ResourceItemList;  
  175.     }  
  176.   
  177.     public void setResourceItemList(List<ResourceItem> resourceItemList) {  
  178.         ResourceItemList = resourceItemList;  
  179.     }  
  180.   
  181.     public Integer getProfessionalTreeId() {  
  182.         return professionalTreeId;  
  183.     }  
  184.   
  185.     public void setProfessionalTreeId(Integer professionalTreeId) {  
  186.         this.professionalTreeId = professionalTreeId;  
  187.     }  
  188.   
  189.     public List<ProMatData> getMatDatas() {  
  190.         return matDatas;  
  191.     }  
  192.   
  193.     public void setMatDatas(List<ProMatData> matDatas) {  
  194.         this.matDatas = matDatas;  
  195.     }  
  196. }  


Branch.java

Java代码

 收藏代码

  1. package com.concom.imports.bqitem.dto;  
  2.   
  3. import java.util.List;  
  4.   
  5. /** 
  6.  * @Title: Branch.java 
  7.  * @Package com.concom.imports.bqitem.dto 
  8.  * @Description: 分布实体 
  9.  * @author CaoZhili 
  10.  * @date 2015年9月6日 上午9:49:58 
  11.  * @version V1.0 
  12.  */  
  13. public class Branch implements java.io.Serializable {  
  14.   
  15.     /** 
  16.      *  
  17.      */  
  18.     private static final long serialVersionUID = 1L;  
  19.   
  20.     private String code;  
  21.     private String name;  
  22.     private String remark;  
  23.     private Double total;  
  24.     private Double labor;//人工费  
  25.     private Double material;//材料费  
  26.     private Double mainMaterial;//主材费  
  27.     private Double equipment;//设备费  
  28.     private Double machine;//机械费  
  29.     private Double overhead;//管理费  
  30.     private Double lawfee;//规费  
  31.     private Double tax;//税金  
  32.     private Double profit;//利润  
  33.     private Double riskCost;//风险费  
  34.     private Double appraisal;//暂估价  
  35.   
  36.     private List<BQItem> BQItemList;  
  37.   
  38.     public String getCode() {  
  39.         return code;  
  40.     }  
  41.   
  42.     public void setCode(String code) {  
  43.         this.code = code;  
  44.     }  
  45.   
  46.     public String getName() {  
  47.         return name;  
  48.     }  
  49.   
  50.     public void setName(String name) {  
  51.         this.name = name;  
  52.     }  
  53.   
  54.     public String getRemark() {  
  55.         return remark;  
  56.     }  
  57.   
  58.     public void setRemark(String remark) {  
  59.         this.remark = remark;  
  60.     }  
  61.   
  62.     public Double getTotal() {  
  63.         return total;  
  64.     }  
  65.   
  66.     public void setTotal(Double total) {  
  67.         this.total = total;  
  68.     }  
  69.   
  70.     public List<BQItem> getBQItemList() {  
  71.         return BQItemList;  
  72.     }  
  73.   
  74.     public void setBQItemList(List<BQItem> bQItemList) {  
  75.         BQItemList = bQItemList;  
  76.     }  
  77.   
  78.     public Double getLabor() {  
  79.         return labor;  
  80.     }  
  81.   
  82.     public void setLabor(Double labor) {  
  83.         this.labor = labor;  
  84.     }  
  85.   
  86.     public Double getMaterial() {  
  87.         return material;  
  88.     }  
  89.   
  90.     public void setMaterial(Double material) {  
  91.         this.material = material;  
  92.     }  
  93.   
  94.     public Double getMainMaterial() {  
  95.         return mainMaterial;  
  96.     }  
  97.   
  98.     public void setMainMaterial(Double mainMaterial) {  
  99.         this.mainMaterial = mainMaterial;  
  100.     }  
  101.   
  102.     public Double getEquipment() {  
  103.         return equipment;  
  104.     }  
  105.   
  106.     public void setEquipment(Double equipment) {  
  107.         this.equipment = equipment;  
  108.     }  
  109.   
  110.     public Double getMachine() {  
  111.         return machine;  
  112.     }  
  113.   
  114.     public void setMachine(Double machine) {  
  115.         this.machine = machine;  
  116.     }  
  117.   
  118.     public Double getOverhead() {  
  119.         return overhead;  
  120.     }  
  121.   
  122.     public void setOverhead(Double overhead) {  
  123.         this.overhead = overhead;  
  124.     }  
  125.   
  126.     public Double getLawfee() {  
  127.         return lawfee;  
  128.     }  
  129.   
  130.     public void setLawfee(Double lawfee) {  
  131.         this.lawfee = lawfee;  
  132.     }  
  133.   
  134.     public Double getTax() {  
  135.         return tax;  
  136.     }  
  137.   
  138.     public void setTax(Double tax) {  
  139.         this.tax = tax;  
  140.     }  
  141.   
  142.     public Double getProfit() {  
  143.         return profit;  
  144.     }  
  145.   
  146.     public void setProfit(Double profit) {  
  147.         this.profit = profit;  
  148.     }  
  149.   
  150.     public Double getRiskCost() {  
  151.         return riskCost;  
  152.     }  
  153.   
  154.     public void setRiskCost(Double riskCost) {  
  155.         this.riskCost = riskCost;  
  156.     }  
  157.   
  158.     public Double getAppraisal() {  
  159.         return appraisal;  
  160.     }  
  161.   
  162.     public void setAppraisal(Double appraisal) {  
  163.         this.appraisal = appraisal;  
  164.     }  
  165.   
  166. }  


BQItem.java

Java代码

 收藏代码

  1. package com.concom.imports.bqitem.dto;  
  2.   
  3. import java.util.List;  
  4.   
  5. /** 
  6.  * @author Cao Zhili 
  7.  * @date 2015年5月20日 
  8.  */  
  9. public class BQItem implements java.io.Serializable {  
  10.   
  11.     /** 
  12.      *  
  13.      */  
  14.     private static final long serialVersionUID = 1L;  
  15.       
  16.     private Integer BQItemID;  
  17.     private String code;  
  18.     private String name;  
  19.     private String attr;  
  20.     private String projectContent;  
  21.     private String unit;  
  22.     private Double quantity;  
  23.     private Double rate;  
  24.     private Double limitedRate;  
  25.     private Double laborRate;  
  26.     private Double materialRate;  
  27.     private Double mainMaterialRate;  
  28.     private Double equipmentRate;  
  29.     private Double machineRate;  
  30.     private Double restRate;  
  31.     private Double overheadRate;  
  32.     private Double profitRate;  
  33.     private Double riskRate;  
  34.     private Double lawfeeRate;  
  35.     private Double taxRate;  
  36.     private Double temporaryRate;  
  37.     private Double addup;  
  38.     private Boolean mainBQItem;  
  39.     private String remark;  
  40.       
  41.     private List<BQNormItem> BQNormItemList;  
  42.   
  43.     public Integer getBQItemID() {  
  44.         return BQItemID;  
  45.     }  
  46.   
  47.     public void setBQItemID(Integer bQItemID) {  
  48.         BQItemID = bQItemID;  
  49.     }  
  50.   
  51.     public String getCode() {  
  52.         return code;  
  53.     }  
  54.   
  55.     public void setCode(String code) {  
  56.         this.code = code;  
  57.     }  
  58.   
  59.     public String getName() {  
  60.         return name;  
  61.     }  
  62.   
  63.     public void setName(String name) {  
  64.         this.name = name;  
  65.     }  
  66.   
  67.     public String getAttr() {  
  68.         return attr;  
  69.     }  
  70.   
  71.     public void setAttr(String attr) {  
  72.         this.attr = attr;  
  73.     }  
  74.   
  75.     public String getProjectContent() {  
  76.         return projectContent;  
  77.     }  
  78.   
  79.     public void setProjectContent(String projectContent) {  
  80.         this.projectContent = projectContent;  
  81.     }  
  82.   
  83.     public String getUnit() {  
  84.         return unit;  
  85.     }  
  86.   
  87.     public void setUnit(String unit) {  
  88.         this.unit = unit;  
  89.     }  
  90.   
  91.     public Double getQuantity() {  
  92.         if(null==quantity){  
  93.             quantity = 0d;  
  94.         }  
  95.         return quantity;  
  96.     }  
  97.   
  98.     public void setQuantity(Double quantity) {  
  99.         this.quantity = quantity;  
  100.     }  
  101.   
  102.     public Double getRate() {  
  103.         if(null==rate){  
  104.             rate = 0d;  
  105.         }  
  106.         return rate;  
  107.     }  
  108.   
  109.     public void setRate(Double rate) {  
  110.         this.rate = rate;  
  111.     }  
  112.   
  113.     public Double getLimitedRate() {  
  114.         return limitedRate;  
  115.     }  
  116.   
  117.     public void setLimitedRate(Double limitedRate) {  
  118.         this.limitedRate = limitedRate;  
  119.     }  
  120.   
  121.     public Double getLaborRate() {  
  122.         if(null==laborRate){  
  123.             laborRate = 0d;  
  124.         }  
  125.         return laborRate;  
  126.     }  
  127.   
  128.     public void setLaborRate(Double laborRate) {  
  129.         this.laborRate = laborRate;  
  130.     }  
  131.   
  132.     public Double getMaterialRate() {  
  133.         if(null==materialRate){  
  134.             materialRate = 0d;  
  135.         }  
  136.         return materialRate;  
  137.     }  
  138.   
  139.     public void setMaterialRate(Double materialRate) {  
  140.         this.materialRate = materialRate;  
  141.     }  
  142.   
  143.     public Double getMainMaterialRate() {  
  144.         if(null==mainMaterialRate){  
  145.             mainMaterialRate = 0d;  
  146.         }  
  147.         return mainMaterialRate;  
  148.     }  
  149.   
  150.     public void setMainMaterialRate(Double mainMaterialRate) {  
  151.         this.mainMaterialRate = mainMaterialRate;  
  152.     }  
  153.   
  154.     public Double getEquipmentRate() {  
  155.         if(null==equipmentRate){  
  156.             equipmentRate = 0d;  
  157.         }  
  158.         return equipmentRate;  
  159.     }  
  160.   
  161.     public void setEquipmentRate(Double equipmentRate) {  
  162.         this.equipmentRate = equipmentRate;  
  163.     }  
  164.   
  165.     public Double getMachineRate() {  
  166.         if(null==machineRate){  
  167.             machineRate = 0d;  
  168.         }  
  169.         return machineRate;  
  170.     }  
  171.   
  172.     public void setMachineRate(Double machineRate) {  
  173.         this.machineRate = machineRate;  
  174.     }  
  175.   
  176.     public Double getRestRate() {  
  177.         if(null==restRate){  
  178.             restRate = 0d;  
  179.         }  
  180.         return restRate;  
  181.     }  
  182.   
  183.     public void setRestRate(Double restRate) {  
  184.         this.restRate = restRate;  
  185.     }  
  186.   
  187.     public Double getOverheadRate() {  
  188.         if(null==overheadRate){  
  189.             overheadRate = 0d;  
  190.         }  
  191.         return overheadRate;  
  192.     }  
  193.   
  194.     public void setOverheadRate(Double overheadRate) {  
  195.         this.overheadRate = overheadRate;  
  196.     }  
  197.   
  198.     public Double getProfitRate() {  
  199.         if(null==profitRate){  
  200.             profitRate = 0d;  
  201.         }  
  202.         return profitRate;  
  203.     }  
  204.   
  205.     public void setProfitRate(Double profitRate) {  
  206.         this.profitRate = profitRate;  
  207.     }  
  208.   
  209.     public Double getRiskRate() {  
  210.         if(null==riskRate){  
  211.             riskRate = 0d;  
  212.         }  
  213.         return riskRate;  
  214.     }  
  215.   
  216.     public void setRiskRate(Double riskRate) {  
  217.         this.riskRate = riskRate;  
  218.     }  
  219.   
  220.     public Double getLawfeeRate() {  
  221.         return lawfeeRate;  
  222.     }  
  223.   
  224.     public void setLawfeeRate(Double lawfeeRate) {  
  225.         this.lawfeeRate = lawfeeRate;  
  226.     }  
  227.   
  228.     public Double getTaxRate() {  
  229.         return taxRate;  
  230.     }  
  231.   
  232.     public void setTaxRate(Double taxRate) {  
  233.         this.taxRate = taxRate;  
  234.     }  
  235.   
  236.     public Double getTemporaryRate() {  
  237.         return temporaryRate;  
  238.     }  
  239.   
  240.     public void setTemporaryRate(Double temporaryRate) {  
  241.         this.temporaryRate = temporaryRate;  
  242.     }  
  243.   
  244.     public Double getAddup() {  
  245.         if(null==addup){  
  246.             addup = 0d;  
  247.         }  
  248.         return addup;  
  249.     }  
  250.   
  251.     public void setAddup(Double addup) {  
  252.         this.addup = addup;  
  253.     }  
  254.   
  255.     public Boolean getMainBQItem() {  
  256.         return mainBQItem;  
  257.     }  
  258.   
  259.     public void setMainBQItem(Boolean mainBQItem) {  
  260.         this.mainBQItem = mainBQItem;  
  261.     }  
  262.   
  263.     public String getRemark() {  
  264.         return remark;  
  265.     }  
  266.   
  267.     public void setRemark(String remark) {  
  268.         this.remark = remark;  
  269.     }  
  270.   
  271.     public List<BQNormItem> getBQNormItemList() {  
  272.         return BQNormItemList;  
  273.     }  
  274.   
  275.     public void setBQNormItemList(List<BQNormItem> bQNormItemList) {  
  276.         BQNormItemList = bQNormItemList;  
  277.     }  
  278. }  


ResourceItem.java

Java代码

 收藏代码

  1. package com.concom.imports.bqitem.dto;  
  2.   
  3. import java.util.List;  
  4.   
  5. /** 
  6.  * @author Cao Zhili 
  7.  * @date 2015年5月20日 
  8.  */  
  9. public class ResourceItem implements java.io.Serializable{  
  10.   
  11.     /** 
  12.      *  
  13.      */  
  14.     private static final long serialVersionUID = 1L;  
  15.       
  16.     private String resourceID;  
  17.     private String code;  
  18.     private String name;  
  19.     private String specification;  
  20.     private String unit;  
  21.     private Double rate;  
  22.     private Double quantity;  
  23.     private Double addup;  
  24.     private Integer costKind;  
  25.     private Boolean mainMaterialFlag;  
  26.     private String remark;  
  27.     private String producingArea;  
  28.     private String supplier;  
  29.     private Integer provider;  
  30.     private String materialTemporaryCode;  
  31.   
  32.     private List<ResourceUsage> ResourceUsageList;  
  33.   
  34.     public String getResourceID() {  
  35.         return resourceID;  
  36.     }  
  37.   
  38.     public void setResourceID(String resourceID) {  
  39.         this.resourceID = resourceID;  
  40.     }  
  41.   
  42.     public String getCode() {  
  43.         return code;  
  44.     }  
  45.   
  46.     public void setCode(String code) {  
  47.         this.code = code;  
  48.     }  
  49.   
  50.     public String getName() {  
  51.         return name;  
  52.     }  
  53.   
  54.     public void setName(String name) {  
  55.         this.name = name;  
  56.     }  
  57.   
  58.     public String getSpecification() {  
  59.         return specification;  
  60.     }  
  61.   
  62.     public void setSpecification(String specification) {  
  63.         this.specification = specification;  
  64.     }  
  65.   
  66.     public String getUnit() {  
  67.         return unit;  
  68.     }  
  69.   
  70.     public void setUnit(String unit) {  
  71.         this.unit = unit;  
  72.     }  
  73.   
  74.     public Double getRate() {  
  75.         if(null==rate){  
  76.             rate = 0d;  
  77.         }  
  78.         return rate;  
  79.     }  
  80.   
  81.     public void setRate(Double rate) {  
  82.         this.rate = rate;  
  83.     }  
  84.   
  85.     public Double getQuantity() {  
  86.         return quantity;  
  87.     }  
  88.   
  89.     public void setQuantity(Double quantity) {  
  90.         this.quantity = quantity;  
  91.     }  
  92.   
  93.     public Double getAddup() {  
  94.         return addup;  
  95.     }  
  96.   
  97.     public void setAddup(Double addup) {  
  98.         this.addup = addup;  
  99.     }  
  100.   
  101.     public Integer getCostKind() {  
  102.         return costKind;  
  103.     }  
  104.   
  105.     public void setCostKind(Integer costKind) {  
  106.         this.costKind = costKind;  
  107.     }  
  108.   
  109.     public Boolean getMainMaterialFlag() {  
  110.         return mainMaterialFlag;  
  111.     }  
  112.   
  113.     public void setMainMaterialFlag(Boolean mainMaterialFlag) {  
  114.         this.mainMaterialFlag = mainMaterialFlag;  
  115.     }  
  116.   
  117.     public String getRemark() {  
  118.         return remark;  
  119.     }  
  120.   
  121.     public void setRemark(String remark) {  
  122.         this.remark = remark;  
  123.     }  
  124.   
  125.     public String getProducingArea() {  
  126.         return producingArea;  
  127.     }  
  128.   
  129.     public void setProducingArea(String producingArea) {  
  130.         this.producingArea = producingArea;  
  131.     }  
  132.   
  133.     public String getSupplier() {  
  134.         return supplier;  
  135.     }  
  136.   
  137.     public void setSupplier(String supplier) {  
  138.         this.supplier = supplier;  
  139.     }  
  140.   
  141.     public Integer getProvider() {  
  142.         return provider;  
  143.     }  
  144.   
  145.     public void setProvider(Integer provider) {  
  146.         this.provider = provider;  
  147.     }  
  148.   
  149.     public String getMaterialTemporaryCode() {  
  150.         return materialTemporaryCode;  
  151.     }  
  152.   
  153.     public void setMaterialTemporaryCode(String materialTemporaryCode) {  
  154.         this.materialTemporaryCode = materialTemporaryCode;  
  155.     }  
  156.   
  157.     public List<ResourceUsage> getResourceUsageList() {  
  158.         return ResourceUsageList;  
  159.     }  
  160.   
  161.     public void setResourceUsageList(List<ResourceUsage> resourceUsageList) {  
  162.         ResourceUsageList = resourceUsageList;  
  163.     }  
  164. }  



ResourceUsage.java

Java代码

 收藏代码

  1. package com.concom.imports.bqitem.dto;  
  2.   
  3. /** 
  4.  * @author Cao Zhili 
  5.  * @date 2015年5月20日 
  6.  */  
  7. public class ResourceUsage implements java.io.Serializable {  
  8.   
  9.     /** 
  10.      *  
  11.      */  
  12.     private static final long serialVersionUID = 1L;  
  13.       
  14.     private String resourceID;  
  15.     private Double usage;  
  16.   
  17.     public String getResourceID() {  
  18.         return resourceID;  
  19.     }  
  20.   
  21.     public void setResourceID(String resourceID) {  
  22.         this.resourceID = resourceID;  
  23.     }  
  24.   
  25.     public Double getUsage() {  
  26.         return usage;  
  27.     }  
  28.   
  29.     public void setUsage(Double usage) {  
  30.         this.usage = usage;  
  31.     }  
  32. }  

本文转载自:http://czltx224.iteye.com/blog/2246808

M
粉丝 4
博文 158
码字总数 29095
作品 0
朝阳
技术主管
私信 提问
原型设计讨论

用户web界面 https://modao.cc/app/sLSyrwBcBYOqQQrsTE9SDPWIdp4gSaV 用户APP界面 https://modao.cc/app/XJagMHK6dlsfQjoz2rGOxjIuUzgsvxU...

yufeicao
2018/07/28
0
2
原型设计地址

https://modao.cc/app/c6H9Y5feHFoeTOQVX6d96irE9ghsRQC 密码:hfty123456

awei23
2016/07/19
0
0
寻求开发和设计H5游戏网站平台的团队

1.成都公司或者团队优先 2.已做好原型交互图,按照原型图实现游戏平台的功能。 3.技术分为:前端、后端。 4.开发框架:主流开发框架。例如:开源。 5.能够自适应手机端和平板(常用移动设备)...

she2862902
2016/05/31
14
1
【迭代一】APP需求 2016.12.3

服务器开发测试环境地址: http://101.200.82.57:8886/CatMatchBackEndV2_war/ HealthTest API: http://101.200.82.57:8886/CatMatchBackEndV2_war/app/echo/v1/echo.io?msg=hello 原型图 密......

6pker
2016/10/16
1
0
常用iOS开发网站资源

图标 https://icomoon.io/app/#/select http://iconfont.cn/repositories http://www.iconfont.cn Api数据接口 聚合数据:http://www.juhe.cn 百度APIStore:http://apistore.baidu.com 医药......

请天点
2016/12/29
185
0

没有更多内容

加载失败,请刷新页面

加载更多

微信小程序和百度小程序开发的一些不同点

1: initActive从onload放到onready中 2: bindtap='{{childTickeData.freeadd?"childticket":""}}',语法错误。会导致页面加载不出来,而且也不报任何错。 3:使用搬家工具,支付api名称转换......

醉雨
6分钟前
0
0
最近执行过的SQL语句查询

SELECT TOP 1000 ST.text AS '执行的SQL语句' , QS.execution_count AS '执行次数' , QS.total_elapsed_time / 10000 AS '耗时' , QS.total_logical_reads AS '逻辑读取次数' , QS.total_lo......

神手--追魂
7分钟前
0
0
从濒临解散到浴火重生,OceanBase 这十年经历了什么?

阿里妹导读:谈及国产自研数据库,就不得不提 OceanBase。与很多人想象不同的是,OceanBase 并非衔着金钥匙出生的宠儿。相反,它曾无人看好、困难重重,整个团队甚至数度濒临解散。 从危在旦...

阿里云官方博客
11分钟前
0
0
阿里开发者招聘节 | 面试题02-04:给定一个二叉搜索树(BST),找到树中第K小的节点

为帮助开发者们提升面试技能、有机会入职阿里,云栖社区特别制作了这个专辑——阿里巴巴资深技术专家们结合多年的工作、面试经验总结提炼而成的面试真题这一次将陆续放出(面试题官方参考答案...

阿里云云栖社区
27分钟前
1
0
使用Redis SETNX 命令实现分布式锁

基于setnx和getset http://blog.csdn.net/lihao21/article/details/49104695 使用Redis的 SETNX 命令可以实现分布式锁,下文介绍其实现方法。 SETNX命令简介 命令格式 SETNX key value 将 ke...

彬彬公子
28分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部