Browse Source

采购单CRUD

guq 7 years ago
parent
commit
12e11962cd
20 changed files with 6274 additions and 319 deletions
  1. 45 62
      applications/purchase/purchase-dto/src/main/java/com/usoftchina/saas/purchase/dto/PurchaseDTO.java
  2. 45 46
      applications/purchase/purchase-dto/src/main/java/com/usoftchina/saas/purchase/dto/PurchaseItemDTO.java
  3. 41 0
      applications/purchase/purchase-dto/src/main/java/com/usoftchina/saas/purchase/dto/PurchaseListDTO.java
  4. 2 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/PurchaseApplication.java
  5. 11 5
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/controller/PurchaseController.java
  6. 0 21
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseItemMapper.java
  7. 10 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseListMapper.java
  8. 31 14
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseMapper.java
  9. 35 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchasedetailMapper.java
  10. 222 88
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/Purchase.java
  11. 2121 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/PurchaseExample.java
  12. 227 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/PurchaseList.java
  13. 249 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/Purchasedetail.java
  14. 1791 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/PurchasedetailExample.java
  15. 54 1
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/PurchaseService.java
  16. 108 3
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java
  17. 0 44
      applications/purchase/purchase-server/src/main/resources/mapper/PurchaseItemMapper.xml
  18. 37 0
      applications/purchase/purchase-server/src/main/resources/mapper/PurchaseListMapper.xml
  19. 692 35
      applications/purchase/purchase-server/src/main/resources/mapper/PurchaseMapper.xml
  20. 553 0
      applications/purchase/purchase-server/src/main/resources/mapper/PurchasedetailMapper.xml

+ 45 - 62
applications/purchase/purchase-dto/src/main/java/com/usoftchina/saas/purchase/dto/PurchaseDTO.java

@@ -19,11 +19,11 @@ public class PurchaseDTO implements Serializable{
      * 编号
      */
     @ApiModelProperty(value = "编号")
-    private String code;
+    private String puCode;
     /**
      * 状态
      */
-    private String status;
+    private String puStatus;
     /**
      * 供应商
      */
@@ -31,31 +31,31 @@ public class PurchaseDTO implements Serializable{
     /**
      * 交货日期
      */
-    private Date deliveryDate;
+    private Date puDelivery;
     /**
      * 单据日期
      */
-    private Date docDate;
+    private Date puDate;
     /**
      * 自定义字段1
      */
-    private String userDefined1;
+    private String puText1;
     /**
      * 自定义字段2
      */
-    private String userDefined2;
+    private String puText2;
     /**
      * 自定义字段3
      */
-    private String userDefined3;
+    private String puText3;
     /**
      * 自定义字段4
      */
-    private String userDefined4;
+    private String puText4;
     /**
      * 自定义字段5
      */
-    private String userDefined5;
+    private String puText5;
 
     public Long getId() {
         return id;
@@ -65,20 +65,20 @@ public class PurchaseDTO implements Serializable{
         this.id = id;
     }
 
-    public String getCode() {
-        return code;
+    public String getPuCode() {
+        return puCode;
     }
 
-    public void setCode(String code) {
-        this.code = code;
+    public void setPuCode(String puCode) {
+        this.puCode = puCode;
     }
 
-    public String getStatus() {
-        return status;
+    public String getPuStatus() {
+        return puStatus;
     }
 
-    public void setStatus(String status) {
-        this.status = status;
+    public void setPuStatus(String puStatus) {
+        this.puStatus = puStatus;
     }
 
     public DocBaseDTO getContact() {
@@ -89,76 +89,59 @@ public class PurchaseDTO implements Serializable{
         this.contact = contact;
     }
 
-    public Date getDeliveryDate() {
-        return deliveryDate;
+    public Date getPuDelivery() {
+        return puDelivery;
     }
 
-    public void setDeliveryDate(Date deliveryDate) {
-        this.deliveryDate = deliveryDate;
+    public void setPuDelivery(Date puDelivery) {
+        this.puDelivery = puDelivery;
     }
 
-    public Date getDocDate() {
-        return docDate;
+    public Date getPuDate() {
+        return puDate;
     }
 
-    public void setDocDate(Date docDate) {
-        this.docDate = docDate;
+    public void setPuDate(Date puDate) {
+        this.puDate = puDate;
     }
 
-    public String getUserDefined1() {
-        return userDefined1;
+    public String getPuText1() {
+        return puText1;
     }
 
-    public void setUserDefined1(String userDefined1) {
-        this.userDefined1 = userDefined1;
+    public void setPuText1(String puText1) {
+        this.puText1 = puText1;
     }
 
-    public String getUserDefined2() {
-        return userDefined2;
+    public String getPuText2() {
+        return puText2;
     }
 
-    public void setUserDefined2(String userDefined2) {
-        this.userDefined2 = userDefined2;
+    public void setPuText2(String puText2) {
+        this.puText2 = puText2;
     }
 
-    public String getUserDefined3() {
-        return userDefined3;
+    public String getPuText3() {
+        return puText3;
     }
 
-    public void setUserDefined3(String userDefined3) {
-        this.userDefined3 = userDefined3;
+    public void setPuText3(String puText3) {
+        this.puText3 = puText3;
     }
 
-    public String getUserDefined4() {
-        return userDefined4;
+    public String getPuText4() {
+        return puText4;
     }
 
-    public void setUserDefined4(String userDefined4) {
-        this.userDefined4 = userDefined4;
+    public void setPuText4(String puText4) {
+        this.puText4 = puText4;
     }
 
-    public String getUserDefined5() {
-        return userDefined5;
+    public String getPuText5() {
+        return puText5;
     }
 
-    public void setUserDefined5(String userDefined5) {
-        this.userDefined5 = userDefined5;
-    }
-
-    @Override
-    public String toString() {
-        return "PurchaseDTO{" +
-                "id=" + id +
-                ", code='" + code + '\'' +
-                ", status='" + status + '\'' +
-                ", contact=" + contact +
-                ", deliveryDate=" + deliveryDate +
-                ", docDate=" + docDate +
-                ", userDefined1='" + userDefined1 + '\'' +
-                ", userDefined2='" + userDefined2 + '\'' +
-                ", userDefined3='" + userDefined3 + '\'' +
-                ", userDefined4='" + userDefined4 + '\'' +
-                ", userDefined5='" + userDefined5 + '\'' +
-                '}';
+    public void setPuText5(String puText5) {
+        this.puText5 = puText5;
     }
 }

+ 45 - 46
applications/purchase/purchase-dto/src/main/java/com/usoftchina/saas/purchase/dto/PurchaseItemDTO.java

@@ -11,7 +11,11 @@ import java.io.Serializable;
  */
 public class PurchaseItemDTO implements Serializable{
     private Long id;
-    private Long mainId;
+    private Long pdPuid;
+
+    private String pdCode;
+
+    private Integer pdDetno;
     /**
      * 商品
      */
@@ -23,15 +27,15 @@ public class PurchaseItemDTO implements Serializable{
     /**
      * 数量
      */
-    private Double qty;
+    private Double pdQty;
     /**
      * 单价
      */
-    private Double price;
+    private Double pdPrice;
     /**
      * 含税单价
      */
-    private Double taxPrice;
+    private Double pdTotal;
     /**
      * 税率
      */
@@ -39,7 +43,7 @@ public class PurchaseItemDTO implements Serializable{
     /**
      * 税额
      */
-    private Double taxAmount;
+    private Double pdTaxtotal;
     /**
      * 折扣率
      */
@@ -73,12 +77,28 @@ public class PurchaseItemDTO implements Serializable{
         this.id = id;
     }
 
-    public Long getMainId() {
-        return mainId;
+    public Long getPdPuid() {
+        return pdPuid;
+    }
+
+    public void setPdPuid(Long pdPuid) {
+        this.pdPuid = pdPuid;
+    }
+
+    public String getPdCode() {
+        return pdCode;
     }
 
-    public void setMainId(Long mainId) {
-        this.mainId = mainId;
+    public void setPdCode(String pdCode) {
+        this.pdCode = pdCode;
+    }
+
+    public Integer getPdDetno() {
+        return pdDetno;
+    }
+
+    public void setPdDetno(Integer pdDetno) {
+        this.pdDetno = pdDetno;
     }
 
     public ProductBaseDTO getProduct() {
@@ -97,28 +117,28 @@ public class PurchaseItemDTO implements Serializable{
         this.warehouse = warehouse;
     }
 
-    public Double getQty() {
-        return qty;
+    public Double getPdQty() {
+        return pdQty;
     }
 
-    public void setQty(Double qty) {
-        this.qty = qty;
+    public void setPdQty(Double pdQty) {
+        this.pdQty = pdQty;
     }
 
-    public Double getPrice() {
-        return price;
+    public Double getPdPrice() {
+        return pdPrice;
     }
 
-    public void setPrice(Double price) {
-        this.price = price;
+    public void setPdPrice(Double pdPrice) {
+        this.pdPrice = pdPrice;
     }
 
-    public Double getTaxPrice() {
-        return taxPrice;
+    public Double getPdTotal() {
+        return pdTotal;
     }
 
-    public void setTaxPrice(Double taxPrice) {
-        this.taxPrice = taxPrice;
+    public void setPdTotal(Double pdTotal) {
+        this.pdTotal = pdTotal;
     }
 
     public Float getTaxRate() {
@@ -129,12 +149,12 @@ public class PurchaseItemDTO implements Serializable{
         this.taxRate = taxRate;
     }
 
-    public Double getTaxAmount() {
-        return taxAmount;
+    public Double getPdTaxtotal() {
+        return pdTaxtotal;
     }
 
-    public void setTaxAmount(Double taxAmount) {
-        this.taxAmount = taxAmount;
+    public void setPdTaxtotal(Double pdTaxtotal) {
+        this.pdTaxtotal = pdTaxtotal;
     }
 
     public Float getDisRate() {
@@ -184,25 +204,4 @@ public class PurchaseItemDTO implements Serializable{
     public void setSrcOrder(DocBaseDTO srcOrder) {
         this.srcOrder = srcOrder;
     }
-
-    @Override
-    public String toString() {
-        return "PurchaseItemDTO{" +
-                "id=" + id +
-                ", mainId=" + mainId +
-                ", product=" + product +
-                ", warehouse=" + warehouse +
-                ", qty=" + qty +
-                ", price=" + price +
-                ", taxPrice=" + taxPrice +
-                ", taxRate=" + taxRate +
-                ", taxAmount=" + taxAmount +
-                ", disRate=" + disRate +
-                ", disAmount=" + disAmount +
-                ", amount=" + amount +
-                ", totalTaxAmount=" + totalTaxAmount +
-                ", remark='" + remark + '\'' +
-                ", srcOrder=" + srcOrder +
-                '}';
-    }
 }

+ 41 - 0
applications/purchase/purchase-dto/src/main/java/com/usoftchina/saas/purchase/dto/PurchaseListDTO.java

@@ -1,6 +1,7 @@
 package com.usoftchina.saas.purchase.dto;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 import java.util.Date;
 
 /**
@@ -60,6 +61,46 @@ public class PurchaseListDTO implements Serializable {
      */
     private String userDefined5;
 
+    public BigDecimal getPdDetno() {
+        return pdDetno;
+    }
+
+    public void setPdDetno(BigDecimal pdDetno) {
+        this.pdDetno = pdDetno;
+    }
+
+    public BigDecimal getPdProdid() {
+        return pdProdid;
+    }
+
+    public void setPdProdid(BigDecimal pdProdid) {
+        this.pdProdid = pdProdid;
+    }
+
+    public String getPdProdcode() {
+        return pdProdcode;
+    }
+
+    public void setPdProdcode(String pdProdcode) {
+        this.pdProdcode = pdProdcode;
+    }
+
+    /**
+
+     * 从表序号
+     */
+    private BigDecimal pdDetno;
+
+    /**
+     * 物料id
+     */
+    private BigDecimal pdProdid;
+
+    /**
+     * 物料编号
+     */
+    private String pdProdcode;
+
     public Long getId() {
         return id;
     }

+ 2 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/PurchaseApplication.java

@@ -1,6 +1,7 @@
 package com.usoftchina.saas.purchase;
 
 import com.usoftchina.saas.auth.client.EnableAuthClient;
+import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
@@ -14,6 +15,7 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
 @EnableEurekaClient
 @EnableTransactionManagement
 @EnableAuthClient
+@MapperScan("com.usoftchina.saas.purchase.mapper")
 public class PurchaseApplication {
     public static void main(String[] args) {
         SpringApplication.run(PurchaseApplication.class, args);

+ 11 - 5
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/controller/PurchaseController.java

@@ -31,7 +31,8 @@ public class PurchaseController {
      */
     @GetMapping("/list")
     public Result<PageInfo<PurchaseListDTO>> getListData(PageRequest page, PurchaseReqDTO req) {
-        return Result.success();
+        PageInfo<PurchaseListDTO> listData = purchaseService.getListData(page, req);
+        return Result.success(listData);
     }
 
     /**
@@ -41,7 +42,8 @@ public class PurchaseController {
      */
     @GetMapping("/form")
     public Result<PurchaseFormDTO> getFormData(@RequestParam int id) {
-        return Result.success();
+        PurchaseFormDTO data = purchaseService.getFormData(id);
+        return Result.success(data);
     }
 
     /**
@@ -52,6 +54,7 @@ public class PurchaseController {
      */
     @PostMapping("/form")
     public Result<DocSavedDTO> saveFormData(@RequestBody PurchaseFormDTO formData) {
+        purchaseService.saveFormData(formData);
         return Result.success();
     }
 
@@ -62,7 +65,8 @@ public class PurchaseController {
      * @return
      */
     @DeleteMapping
-    public Result delete(@RequestParam int id) {
+    public Result delete(@RequestParam Integer id) {
+        purchaseService.delete(id);
         return Result.success();
     }
 
@@ -73,7 +77,8 @@ public class PurchaseController {
      * @return
      */
     @DeleteMapping("/item")
-    public Result deleteItem(@RequestParam int id) {
+    public Result deleteItem(@RequestParam Integer id) {
+        purchaseService.deleteItem(id);
         return Result.success();
     }
 
@@ -84,7 +89,8 @@ public class PurchaseController {
      * @return
      */
     @PostMapping("/audit")
-    public Result audit(@RequestParam int id) {
+    public Result audit(@RequestParam Integer id) {
+        purchaseService.audit(id);
         return Result.success();
     }
 }

+ 0 - 21
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseItemMapper.java

@@ -1,21 +0,0 @@
-package com.usoftchina.saas.purchase.mapper;
-
-import com.usoftchina.saas.base.mapper.CommonBaseMapper;
-import com.usoftchina.saas.purchase.po.PurchaseItem;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-/**
- * @author yingp
- * @date 2018/10/9
- */
-public interface PurchaseItemMapper extends CommonBaseMapper<PurchaseItem> {
-    /**
-     * 按采购ID查询
-     *
-     * @param mainId
-     * @return
-     */
-    List<PurchaseItem> selectByMainId(@Param("mainId") long mainId);
-}

+ 10 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseListMapper.java

@@ -0,0 +1,10 @@
+package com.usoftchina.saas.purchase.mapper;
+
+import com.usoftchina.saas.purchase.dto.PurchaseReqDTO;
+import com.usoftchina.saas.purchase.po.PurchaseList;
+
+import java.util.List;
+
+public interface PurchaseListMapper {
+    List<PurchaseList> selectByCondition(PurchaseReqDTO reqDTO);
+}

+ 31 - 14
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseMapper.java

@@ -2,19 +2,36 @@ package com.usoftchina.saas.purchase.mapper;
 
 import com.usoftchina.saas.base.mapper.CommonBaseMapper;
 import com.usoftchina.saas.purchase.po.Purchase;
+import com.usoftchina.saas.purchase.po.PurchaseExample;
+import java.util.List;
 import org.apache.ibatis.annotations.Param;
 
-/**
- * @author yingp
- * @date 2018/10/9
- */
-public interface PurchaseMapper extends CommonBaseMapper<Purchase> {
-
-    /**
-     * 按单号查询
-     *
-     * @param code
-     * @return
-     */
-    Purchase selectByCode(@Param("code") String code);
-}
+public interface PurchaseMapper extends CommonBaseMapper<Purchase>{
+    int countByExample(PurchaseExample example);
+
+    int deleteByExample(PurchaseExample example);
+
+    int deleteByPrimaryKey(Integer puId);
+
+    int insert(Purchase record);
+
+    int insertSelective(Purchase record);
+
+    List<Purchase> selectByExampleWithBLOBs(PurchaseExample example);
+
+    List<Purchase> selectByExample(PurchaseExample example);
+
+    Purchase selectByPrimaryKey(Integer puId);
+
+    int updateByExampleSelective(@Param("record") Purchase record, @Param("example") PurchaseExample example);
+
+    int updateByExampleWithBLOBs(@Param("record") Purchase record, @Param("example") PurchaseExample example);
+
+    int updateByExample(@Param("record") Purchase record, @Param("example") PurchaseExample example);
+
+    int updateByPrimaryKeySelective(Purchase record);
+
+    int updateByPrimaryKeyWithBLOBs(Purchase record);
+
+    int updateByPrimaryKey(Purchase record);
+}

+ 35 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchasedetailMapper.java

@@ -0,0 +1,35 @@
+package com.usoftchina.saas.purchase.mapper;
+
+import com.usoftchina.saas.base.mapper.CommonBaseMapper;
+import com.usoftchina.saas.purchase.po.Purchase;
+import com.usoftchina.saas.purchase.po.Purchasedetail;
+import com.usoftchina.saas.purchase.po.PurchasedetailExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+
+public interface PurchasedetailMapper extends CommonBaseMapper<Purchase> {
+    int countByExample(PurchasedetailExample example);
+
+    int deleteByExample(PurchasedetailExample example);
+
+    int deleteByPrimaryKey(Integer pdId);
+
+    int insert(Purchasedetail record);
+
+    int insertSelective(Purchasedetail record);
+
+    List<Purchasedetail> selectByExample(PurchasedetailExample example);
+
+    Purchasedetail selectByPrimaryKey(Integer pdId);
+
+    int updateByExampleSelective(@Param("record") Purchasedetail record, @Param("example") PurchasedetailExample example);
+
+    int updateByExample(@Param("record") Purchasedetail record, @Param("example") PurchasedetailExample example);
+
+    int updateByPrimaryKeySelective(Purchasedetail record);
+
+    int updateByPrimaryKey(Purchasedetail record);
+
+    void batchInsert(List<Purchasedetail> list);
+}

+ 222 - 88
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/Purchase.java

@@ -5,131 +5,265 @@ import com.usoftchina.saas.base.entity.CommonBaseEntity;
 import java.io.Serializable;
 import java.util.Date;
 
-/**
- * 采购订单
- *
- * @author yingp
- * @date 2018/10/9
- */
-public class Purchase extends CommonBaseEntity implements Serializable{
-    /**
-     * 编号
-     */
-    private String code;
-    /**
-     * 状态
-     */
-    private String status;
-    /**
-     * 供应商
-     */
-    private long contactId;
-    /**
-     * 交货日期
-     */
-    private Date deliveryDate;
-    /**
-     * 单据日期
-     */
-    private Date docDate;
-    /**
-     * 自定义字段1
-     */
-    private String userDefined1;
-    /**
-     * 自定义字段2
-     */
-    private String userDefined2;
-    /**
-     * 自定义字段3
-     */
-    private String userDefined3;
-    /**
-     * 自定义字段4
-     */
-    private String userDefined4;
-    /**
-     * 自定义字段5
-     */
-    private String userDefined5;
+public class Purchase extends CommonBaseEntity implements Serializable {
 
-    public String getCode() {
-        return code;
+    private String puCode;
+
+    private Date puDate;
+
+    private Integer puVendid;
+
+    private String puVendcode;
+
+    private String puVendname;
+
+    private Integer puBuyerid;
+
+    private String puBuyercode;
+
+    private String puBuyername;
+
+    private Date puDelivery;
+
+    private Double puTaxtotal;
+
+    private Double puTotal;
+
+    private String puRemark;
+
+    private String puTotalupper;
+
+    private Date puIndate;
+
+    private String puPrintstatus;
+
+    private String puPrintstatuscode;
+
+    private String puAcceptstatuscode;
+
+    private String puAcceptstatus;
+
+    private String puStatuscode;
+
+    private String puStatus;
+
+    private String puText1;
+
+    private String puText2;
+
+    private String puText3;
+
+    private String puText4;
+
+    private String puText5;
+
+    private String puShipaddresscode;
+
+    public String getPuCode() {
+        return puCode;
+    }
+
+    public void setPuCode(String puCode) {
+        this.puCode = puCode == null ? null : puCode.trim();
+    }
+
+    public Date getPuDate() {
+        return puDate;
+    }
+
+    public void setPuDate(Date puDate) {
+        this.puDate = puDate;
+    }
+
+    public Integer getPuVendid() {
+        return puVendid;
+    }
+
+    public void setPuVendid(Integer puVendid) {
+        this.puVendid = puVendid;
+    }
+
+    public String getPuVendcode() {
+        return puVendcode;
+    }
+
+    public void setPuVendcode(String puVendcode) {
+        this.puVendcode = puVendcode == null ? null : puVendcode.trim();
+    }
+
+    public String getPuVendname() {
+        return puVendname;
+    }
+
+    public void setPuVendname(String puVendname) {
+        this.puVendname = puVendname == null ? null : puVendname.trim();
+    }
+
+    public Integer getPuBuyerid() {
+        return puBuyerid;
+    }
+
+    public void setPuBuyerid(Integer puBuyerid) {
+        this.puBuyerid = puBuyerid;
+    }
+
+    public String getPuBuyercode() {
+        return puBuyercode;
+    }
+
+    public void setPuBuyercode(String puBuyercode) {
+        this.puBuyercode = puBuyercode == null ? null : puBuyercode.trim();
+    }
+
+    public String getPuBuyername() {
+        return puBuyername;
+    }
+
+    public void setPuBuyername(String puBuyername) {
+        this.puBuyername = puBuyername == null ? null : puBuyername.trim();
+    }
+
+    public Date getPuDelivery() {
+        return puDelivery;
+    }
+
+    public void setPuDelivery(Date puDelivery) {
+        this.puDelivery = puDelivery;
+    }
+
+    public Double getPuTaxtotal() {
+        return puTaxtotal;
+    }
+
+    public void setPuTaxtotal(Double puTaxtotal) {
+        this.puTaxtotal = puTaxtotal;
+    }
+
+    public Double getPuTotal() {
+        return puTotal;
+    }
+
+    public void setPuTotal(Double puTotal) {
+        this.puTotal = puTotal;
+    }
+
+    public String getPuRemark() {
+        return puRemark;
+    }
+
+    public void setPuRemark(String puRemark) {
+        this.puRemark = puRemark == null ? null : puRemark.trim();
+    }
+
+    public String getPuTotalupper() {
+        return puTotalupper;
+    }
+
+    public void setPuTotalupper(String puTotalupper) {
+        this.puTotalupper = puTotalupper == null ? null : puTotalupper.trim();
+    }
+
+    public Date getPuIndate() {
+        return puIndate;
+    }
+
+    public void setPuIndate(Date puIndate) {
+        this.puIndate = puIndate;
+    }
+
+    public String getPuPrintstatus() {
+        return puPrintstatus;
+    }
+
+    public void setPuPrintstatus(String puPrintstatus) {
+        this.puPrintstatus = puPrintstatus == null ? null : puPrintstatus.trim();
+    }
+
+    public String getPuPrintstatuscode() {
+        return puPrintstatuscode;
+    }
+
+    public void setPuPrintstatuscode(String puPrintstatuscode) {
+        this.puPrintstatuscode = puPrintstatuscode == null ? null : puPrintstatuscode.trim();
+    }
+
+    public String getPuAcceptstatuscode() {
+        return puAcceptstatuscode;
     }
 
-    public void setCode(String code) {
-        this.code = code;
+    public void setPuAcceptstatuscode(String puAcceptstatuscode) {
+        this.puAcceptstatuscode = puAcceptstatuscode == null ? null : puAcceptstatuscode.trim();
     }
 
-    public String getStatus() {
-        return status;
+    public String getPuAcceptstatus() {
+        return puAcceptstatus;
     }
 
-    public void setStatus(String status) {
-        this.status = status;
+    public void setPuAcceptstatus(String puAcceptstatus) {
+        this.puAcceptstatus = puAcceptstatus == null ? null : puAcceptstatus.trim();
     }
 
-    public long getContactId() {
-        return contactId;
+    public String getPuStatuscode() {
+        return puStatuscode;
     }
 
-    public void setContactId(long contactId) {
-        this.contactId = contactId;
+    public void setPuStatuscode(String puStatuscode) {
+        this.puStatuscode = puStatuscode == null ? null : puStatuscode.trim();
     }
 
-    public Date getDeliveryDate() {
-        return deliveryDate;
+    public String getPuStatus() {
+        return puStatus;
     }
 
-    public void setDeliveryDate(Date deliveryDate) {
-        this.deliveryDate = deliveryDate;
+    public void setPuStatus(String puStatus) {
+        this.puStatus = puStatus == null ? null : puStatus.trim();
     }
 
-    public Date getDocDate() {
-        return docDate;
+    public String getPuText1() {
+        return puText1;
     }
 
-    public void setDocDate(Date docDate) {
-        this.docDate = docDate;
+    public void setPuText1(String puText1) {
+        this.puText1 = puText1 == null ? null : puText1.trim();
     }
 
-    public String getUserDefined1() {
-        return userDefined1;
+    public String getPuText2() {
+        return puText2;
     }
 
-    public void setUserDefined1(String userDefined1) {
-        this.userDefined1 = userDefined1;
+    public void setPuText2(String puText2) {
+        this.puText2 = puText2 == null ? null : puText2.trim();
     }
 
-    public String getUserDefined2() {
-        return userDefined2;
+    public String getPuText3() {
+        return puText3;
     }
 
-    public void setUserDefined2(String userDefined2) {
-        this.userDefined2 = userDefined2;
+    public void setPuText3(String puText3) {
+        this.puText3 = puText3 == null ? null : puText3.trim();
     }
 
-    public String getUserDefined3() {
-        return userDefined3;
+    public String getPuText4() {
+        return puText4;
     }
 
-    public void setUserDefined3(String userDefined3) {
-        this.userDefined3 = userDefined3;
+    public void setPuText4(String puText4) {
+        this.puText4 = puText4 == null ? null : puText4.trim();
     }
 
-    public String getUserDefined4() {
-        return userDefined4;
+    public String getPuText5() {
+        return puText5;
     }
 
-    public void setUserDefined4(String userDefined4) {
-        this.userDefined4 = userDefined4;
+    public void setPuText5(String puText5) {
+        this.puText5 = puText5 == null ? null : puText5.trim();
     }
 
-    public String getUserDefined5() {
-        return userDefined5;
+    public String getPuShipaddresscode() {
+        return puShipaddresscode;
     }
 
-    public void setUserDefined5(String userDefined5) {
-        this.userDefined5 = userDefined5;
+    public void setPuShipaddresscode(String puShipaddresscode) {
+        this.puShipaddresscode = puShipaddresscode == null ? null : puShipaddresscode.trim();
     }
-}
+}

+ 2121 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/PurchaseExample.java

@@ -0,0 +1,2121 @@
+package com.usoftchina.saas.purchase.po;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class PurchaseExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    public PurchaseExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andPuIdIsNull() {
+            addCriterion("pu_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdIsNotNull() {
+            addCriterion("pu_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdEqualTo(Integer value) {
+            addCriterion("pu_id =", value, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdNotEqualTo(Integer value) {
+            addCriterion("pu_id <>", value, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdGreaterThan(Integer value) {
+            addCriterion("pu_id >", value, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("pu_id >=", value, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdLessThan(Integer value) {
+            addCriterion("pu_id <", value, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdLessThanOrEqualTo(Integer value) {
+            addCriterion("pu_id <=", value, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdIn(List<Integer> values) {
+            addCriterion("pu_id in", values, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdNotIn(List<Integer> values) {
+            addCriterion("pu_id not in", values, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdBetween(Integer value1, Integer value2) {
+            addCriterion("pu_id between", value1, value2, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("pu_id not between", value1, value2, "puId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeIsNull() {
+            addCriterion("pu_code is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeIsNotNull() {
+            addCriterion("pu_code is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeEqualTo(String value) {
+            addCriterion("pu_code =", value, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeNotEqualTo(String value) {
+            addCriterion("pu_code <>", value, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeGreaterThan(String value) {
+            addCriterion("pu_code >", value, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeGreaterThanOrEqualTo(String value) {
+            addCriterion("pu_code >=", value, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeLessThan(String value) {
+            addCriterion("pu_code <", value, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeLessThanOrEqualTo(String value) {
+            addCriterion("pu_code <=", value, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeLike(String value) {
+            addCriterion("pu_code like", value, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeNotLike(String value) {
+            addCriterion("pu_code not like", value, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeIn(List<String> values) {
+            addCriterion("pu_code in", values, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeNotIn(List<String> values) {
+            addCriterion("pu_code not in", values, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeBetween(String value1, String value2) {
+            addCriterion("pu_code between", value1, value2, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuCodeNotBetween(String value1, String value2) {
+            addCriterion("pu_code not between", value1, value2, "puCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateIsNull() {
+            addCriterion("pu_date is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateIsNotNull() {
+            addCriterion("pu_date is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateEqualTo(Date value) {
+            addCriterion("pu_date =", value, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateNotEqualTo(Date value) {
+            addCriterion("pu_date <>", value, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateGreaterThan(Date value) {
+            addCriterion("pu_date >", value, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateGreaterThanOrEqualTo(Date value) {
+            addCriterion("pu_date >=", value, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateLessThan(Date value) {
+            addCriterion("pu_date <", value, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateLessThanOrEqualTo(Date value) {
+            addCriterion("pu_date <=", value, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateIn(List<Date> values) {
+            addCriterion("pu_date in", values, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateNotIn(List<Date> values) {
+            addCriterion("pu_date not in", values, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateBetween(Date value1, Date value2) {
+            addCriterion("pu_date between", value1, value2, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDateNotBetween(Date value1, Date value2) {
+            addCriterion("pu_date not between", value1, value2, "puDate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidIsNull() {
+            addCriterion("pu_vendid is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidIsNotNull() {
+            addCriterion("pu_vendid is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidEqualTo(Integer value) {
+            addCriterion("pu_vendid =", value, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidNotEqualTo(Integer value) {
+            addCriterion("pu_vendid <>", value, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidGreaterThan(Integer value) {
+            addCriterion("pu_vendid >", value, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidGreaterThanOrEqualTo(Integer value) {
+            addCriterion("pu_vendid >=", value, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidLessThan(Integer value) {
+            addCriterion("pu_vendid <", value, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidLessThanOrEqualTo(Integer value) {
+            addCriterion("pu_vendid <=", value, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidIn(List<Integer> values) {
+            addCriterion("pu_vendid in", values, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidNotIn(List<Integer> values) {
+            addCriterion("pu_vendid not in", values, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidBetween(Integer value1, Integer value2) {
+            addCriterion("pu_vendid between", value1, value2, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendidNotBetween(Integer value1, Integer value2) {
+            addCriterion("pu_vendid not between", value1, value2, "puVendid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeIsNull() {
+            addCriterion("PU_VENDCODE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeIsNotNull() {
+            addCriterion("PU_VENDCODE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeEqualTo(String value) {
+            addCriterion("PU_VENDCODE =", value, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeNotEqualTo(String value) {
+            addCriterion("PU_VENDCODE <>", value, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeGreaterThan(String value) {
+            addCriterion("PU_VENDCODE >", value, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_VENDCODE >=", value, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeLessThan(String value) {
+            addCriterion("PU_VENDCODE <", value, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeLessThanOrEqualTo(String value) {
+            addCriterion("PU_VENDCODE <=", value, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeLike(String value) {
+            addCriterion("PU_VENDCODE like", value, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeNotLike(String value) {
+            addCriterion("PU_VENDCODE not like", value, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeIn(List<String> values) {
+            addCriterion("PU_VENDCODE in", values, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeNotIn(List<String> values) {
+            addCriterion("PU_VENDCODE not in", values, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeBetween(String value1, String value2) {
+            addCriterion("PU_VENDCODE between", value1, value2, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendcodeNotBetween(String value1, String value2) {
+            addCriterion("PU_VENDCODE not between", value1, value2, "puVendcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameIsNull() {
+            addCriterion("PU_VENDNAME is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameIsNotNull() {
+            addCriterion("PU_VENDNAME is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameEqualTo(String value) {
+            addCriterion("PU_VENDNAME =", value, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameNotEqualTo(String value) {
+            addCriterion("PU_VENDNAME <>", value, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameGreaterThan(String value) {
+            addCriterion("PU_VENDNAME >", value, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_VENDNAME >=", value, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameLessThan(String value) {
+            addCriterion("PU_VENDNAME <", value, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameLessThanOrEqualTo(String value) {
+            addCriterion("PU_VENDNAME <=", value, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameLike(String value) {
+            addCriterion("PU_VENDNAME like", value, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameNotLike(String value) {
+            addCriterion("PU_VENDNAME not like", value, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameIn(List<String> values) {
+            addCriterion("PU_VENDNAME in", values, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameNotIn(List<String> values) {
+            addCriterion("PU_VENDNAME not in", values, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameBetween(String value1, String value2) {
+            addCriterion("PU_VENDNAME between", value1, value2, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuVendnameNotBetween(String value1, String value2) {
+            addCriterion("PU_VENDNAME not between", value1, value2, "puVendname");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridIsNull() {
+            addCriterion("PU_BUYERID is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridIsNotNull() {
+            addCriterion("PU_BUYERID is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridEqualTo(Integer value) {
+            addCriterion("PU_BUYERID =", value, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridNotEqualTo(Integer value) {
+            addCriterion("PU_BUYERID <>", value, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridGreaterThan(Integer value) {
+            addCriterion("PU_BUYERID >", value, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridGreaterThanOrEqualTo(Integer value) {
+            addCriterion("PU_BUYERID >=", value, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridLessThan(Integer value) {
+            addCriterion("PU_BUYERID <", value, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridLessThanOrEqualTo(Integer value) {
+            addCriterion("PU_BUYERID <=", value, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridIn(List<Integer> values) {
+            addCriterion("PU_BUYERID in", values, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridNotIn(List<Integer> values) {
+            addCriterion("PU_BUYERID not in", values, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridBetween(Integer value1, Integer value2) {
+            addCriterion("PU_BUYERID between", value1, value2, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyeridNotBetween(Integer value1, Integer value2) {
+            addCriterion("PU_BUYERID not between", value1, value2, "puBuyerid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeIsNull() {
+            addCriterion("PU_BUYERCODE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeIsNotNull() {
+            addCriterion("PU_BUYERCODE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeEqualTo(String value) {
+            addCriterion("PU_BUYERCODE =", value, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeNotEqualTo(String value) {
+            addCriterion("PU_BUYERCODE <>", value, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeGreaterThan(String value) {
+            addCriterion("PU_BUYERCODE >", value, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_BUYERCODE >=", value, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeLessThan(String value) {
+            addCriterion("PU_BUYERCODE <", value, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeLessThanOrEqualTo(String value) {
+            addCriterion("PU_BUYERCODE <=", value, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeLike(String value) {
+            addCriterion("PU_BUYERCODE like", value, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeNotLike(String value) {
+            addCriterion("PU_BUYERCODE not like", value, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeIn(List<String> values) {
+            addCriterion("PU_BUYERCODE in", values, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeNotIn(List<String> values) {
+            addCriterion("PU_BUYERCODE not in", values, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeBetween(String value1, String value2) {
+            addCriterion("PU_BUYERCODE between", value1, value2, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyercodeNotBetween(String value1, String value2) {
+            addCriterion("PU_BUYERCODE not between", value1, value2, "puBuyercode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameIsNull() {
+            addCriterion("PU_BUYERNAME is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameIsNotNull() {
+            addCriterion("PU_BUYERNAME is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameEqualTo(String value) {
+            addCriterion("PU_BUYERNAME =", value, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameNotEqualTo(String value) {
+            addCriterion("PU_BUYERNAME <>", value, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameGreaterThan(String value) {
+            addCriterion("PU_BUYERNAME >", value, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_BUYERNAME >=", value, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameLessThan(String value) {
+            addCriterion("PU_BUYERNAME <", value, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameLessThanOrEqualTo(String value) {
+            addCriterion("PU_BUYERNAME <=", value, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameLike(String value) {
+            addCriterion("PU_BUYERNAME like", value, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameNotLike(String value) {
+            addCriterion("PU_BUYERNAME not like", value, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameIn(List<String> values) {
+            addCriterion("PU_BUYERNAME in", values, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameNotIn(List<String> values) {
+            addCriterion("PU_BUYERNAME not in", values, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameBetween(String value1, String value2) {
+            addCriterion("PU_BUYERNAME between", value1, value2, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuBuyernameNotBetween(String value1, String value2) {
+            addCriterion("PU_BUYERNAME not between", value1, value2, "puBuyername");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryIsNull() {
+            addCriterion("PU_DELIVERY is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryIsNotNull() {
+            addCriterion("PU_DELIVERY is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryEqualTo(Date value) {
+            addCriterion("PU_DELIVERY =", value, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryNotEqualTo(Date value) {
+            addCriterion("PU_DELIVERY <>", value, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryGreaterThan(Date value) {
+            addCriterion("PU_DELIVERY >", value, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryGreaterThanOrEqualTo(Date value) {
+            addCriterion("PU_DELIVERY >=", value, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryLessThan(Date value) {
+            addCriterion("PU_DELIVERY <", value, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryLessThanOrEqualTo(Date value) {
+            addCriterion("PU_DELIVERY <=", value, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryIn(List<Date> values) {
+            addCriterion("PU_DELIVERY in", values, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryNotIn(List<Date> values) {
+            addCriterion("PU_DELIVERY not in", values, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryBetween(Date value1, Date value2) {
+            addCriterion("PU_DELIVERY between", value1, value2, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuDeliveryNotBetween(Date value1, Date value2) {
+            addCriterion("PU_DELIVERY not between", value1, value2, "puDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalIsNull() {
+            addCriterion("PU_TAXTOTAL is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalIsNotNull() {
+            addCriterion("PU_TAXTOTAL is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalEqualTo(Double value) {
+            addCriterion("PU_TAXTOTAL =", value, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalNotEqualTo(Double value) {
+            addCriterion("PU_TAXTOTAL <>", value, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalGreaterThan(Double value) {
+            addCriterion("PU_TAXTOTAL >", value, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalGreaterThanOrEqualTo(Double value) {
+            addCriterion("PU_TAXTOTAL >=", value, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalLessThan(Double value) {
+            addCriterion("PU_TAXTOTAL <", value, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalLessThanOrEqualTo(Double value) {
+            addCriterion("PU_TAXTOTAL <=", value, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalIn(List<Double> values) {
+            addCriterion("PU_TAXTOTAL in", values, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalNotIn(List<Double> values) {
+            addCriterion("PU_TAXTOTAL not in", values, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalBetween(Double value1, Double value2) {
+            addCriterion("PU_TAXTOTAL between", value1, value2, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTaxtotalNotBetween(Double value1, Double value2) {
+            addCriterion("PU_TAXTOTAL not between", value1, value2, "puTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalIsNull() {
+            addCriterion("PU_TOTAL is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalIsNotNull() {
+            addCriterion("PU_TOTAL is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalEqualTo(Double value) {
+            addCriterion("PU_TOTAL =", value, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalNotEqualTo(Double value) {
+            addCriterion("PU_TOTAL <>", value, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalGreaterThan(Double value) {
+            addCriterion("PU_TOTAL >", value, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalGreaterThanOrEqualTo(Double value) {
+            addCriterion("PU_TOTAL >=", value, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalLessThan(Double value) {
+            addCriterion("PU_TOTAL <", value, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalLessThanOrEqualTo(Double value) {
+            addCriterion("PU_TOTAL <=", value, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalIn(List<Double> values) {
+            addCriterion("PU_TOTAL in", values, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalNotIn(List<Double> values) {
+            addCriterion("PU_TOTAL not in", values, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalBetween(Double value1, Double value2) {
+            addCriterion("PU_TOTAL between", value1, value2, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalNotBetween(Double value1, Double value2) {
+            addCriterion("PU_TOTAL not between", value1, value2, "puTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkIsNull() {
+            addCriterion("PU_REMARK is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkIsNotNull() {
+            addCriterion("PU_REMARK is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkEqualTo(String value) {
+            addCriterion("PU_REMARK =", value, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkNotEqualTo(String value) {
+            addCriterion("PU_REMARK <>", value, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkGreaterThan(String value) {
+            addCriterion("PU_REMARK >", value, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_REMARK >=", value, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkLessThan(String value) {
+            addCriterion("PU_REMARK <", value, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkLessThanOrEqualTo(String value) {
+            addCriterion("PU_REMARK <=", value, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkLike(String value) {
+            addCriterion("PU_REMARK like", value, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkNotLike(String value) {
+            addCriterion("PU_REMARK not like", value, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkIn(List<String> values) {
+            addCriterion("PU_REMARK in", values, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkNotIn(List<String> values) {
+            addCriterion("PU_REMARK not in", values, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkBetween(String value1, String value2) {
+            addCriterion("PU_REMARK between", value1, value2, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuRemarkNotBetween(String value1, String value2) {
+            addCriterion("PU_REMARK not between", value1, value2, "puRemark");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperIsNull() {
+            addCriterion("PU_TOTALUPPER is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperIsNotNull() {
+            addCriterion("PU_TOTALUPPER is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperEqualTo(String value) {
+            addCriterion("PU_TOTALUPPER =", value, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperNotEqualTo(String value) {
+            addCriterion("PU_TOTALUPPER <>", value, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperGreaterThan(String value) {
+            addCriterion("PU_TOTALUPPER >", value, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_TOTALUPPER >=", value, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperLessThan(String value) {
+            addCriterion("PU_TOTALUPPER <", value, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperLessThanOrEqualTo(String value) {
+            addCriterion("PU_TOTALUPPER <=", value, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperLike(String value) {
+            addCriterion("PU_TOTALUPPER like", value, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperNotLike(String value) {
+            addCriterion("PU_TOTALUPPER not like", value, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperIn(List<String> values) {
+            addCriterion("PU_TOTALUPPER in", values, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperNotIn(List<String> values) {
+            addCriterion("PU_TOTALUPPER not in", values, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperBetween(String value1, String value2) {
+            addCriterion("PU_TOTALUPPER between", value1, value2, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuTotalupperNotBetween(String value1, String value2) {
+            addCriterion("PU_TOTALUPPER not between", value1, value2, "puTotalupper");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateIsNull() {
+            addCriterion("PU_INDATE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateIsNotNull() {
+            addCriterion("PU_INDATE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateEqualTo(Date value) {
+            addCriterion("PU_INDATE =", value, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateNotEqualTo(Date value) {
+            addCriterion("PU_INDATE <>", value, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateGreaterThan(Date value) {
+            addCriterion("PU_INDATE >", value, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateGreaterThanOrEqualTo(Date value) {
+            addCriterion("PU_INDATE >=", value, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateLessThan(Date value) {
+            addCriterion("PU_INDATE <", value, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateLessThanOrEqualTo(Date value) {
+            addCriterion("PU_INDATE <=", value, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateIn(List<Date> values) {
+            addCriterion("PU_INDATE in", values, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateNotIn(List<Date> values) {
+            addCriterion("PU_INDATE not in", values, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateBetween(Date value1, Date value2) {
+            addCriterion("PU_INDATE between", value1, value2, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuIndateNotBetween(Date value1, Date value2) {
+            addCriterion("PU_INDATE not between", value1, value2, "puIndate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusIsNull() {
+            addCriterion("PU_PRINTSTATUS is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusIsNotNull() {
+            addCriterion("PU_PRINTSTATUS is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusEqualTo(String value) {
+            addCriterion("PU_PRINTSTATUS =", value, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusNotEqualTo(String value) {
+            addCriterion("PU_PRINTSTATUS <>", value, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusGreaterThan(String value) {
+            addCriterion("PU_PRINTSTATUS >", value, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_PRINTSTATUS >=", value, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusLessThan(String value) {
+            addCriterion("PU_PRINTSTATUS <", value, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusLessThanOrEqualTo(String value) {
+            addCriterion("PU_PRINTSTATUS <=", value, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusLike(String value) {
+            addCriterion("PU_PRINTSTATUS like", value, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusNotLike(String value) {
+            addCriterion("PU_PRINTSTATUS not like", value, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusIn(List<String> values) {
+            addCriterion("PU_PRINTSTATUS in", values, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusNotIn(List<String> values) {
+            addCriterion("PU_PRINTSTATUS not in", values, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusBetween(String value1, String value2) {
+            addCriterion("PU_PRINTSTATUS between", value1, value2, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatusNotBetween(String value1, String value2) {
+            addCriterion("PU_PRINTSTATUS not between", value1, value2, "puPrintstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeIsNull() {
+            addCriterion("PU_PRINTSTATUSCODE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeIsNotNull() {
+            addCriterion("PU_PRINTSTATUSCODE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeEqualTo(String value) {
+            addCriterion("PU_PRINTSTATUSCODE =", value, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeNotEqualTo(String value) {
+            addCriterion("PU_PRINTSTATUSCODE <>", value, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeGreaterThan(String value) {
+            addCriterion("PU_PRINTSTATUSCODE >", value, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_PRINTSTATUSCODE >=", value, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeLessThan(String value) {
+            addCriterion("PU_PRINTSTATUSCODE <", value, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeLessThanOrEqualTo(String value) {
+            addCriterion("PU_PRINTSTATUSCODE <=", value, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeLike(String value) {
+            addCriterion("PU_PRINTSTATUSCODE like", value, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeNotLike(String value) {
+            addCriterion("PU_PRINTSTATUSCODE not like", value, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeIn(List<String> values) {
+            addCriterion("PU_PRINTSTATUSCODE in", values, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeNotIn(List<String> values) {
+            addCriterion("PU_PRINTSTATUSCODE not in", values, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeBetween(String value1, String value2) {
+            addCriterion("PU_PRINTSTATUSCODE between", value1, value2, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuPrintstatuscodeNotBetween(String value1, String value2) {
+            addCriterion("PU_PRINTSTATUSCODE not between", value1, value2, "puPrintstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeIsNull() {
+            addCriterion("PU_ACCEPTSTATUSCODE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeIsNotNull() {
+            addCriterion("PU_ACCEPTSTATUSCODE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeEqualTo(String value) {
+            addCriterion("PU_ACCEPTSTATUSCODE =", value, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeNotEqualTo(String value) {
+            addCriterion("PU_ACCEPTSTATUSCODE <>", value, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeGreaterThan(String value) {
+            addCriterion("PU_ACCEPTSTATUSCODE >", value, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_ACCEPTSTATUSCODE >=", value, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeLessThan(String value) {
+            addCriterion("PU_ACCEPTSTATUSCODE <", value, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeLessThanOrEqualTo(String value) {
+            addCriterion("PU_ACCEPTSTATUSCODE <=", value, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeLike(String value) {
+            addCriterion("PU_ACCEPTSTATUSCODE like", value, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeNotLike(String value) {
+            addCriterion("PU_ACCEPTSTATUSCODE not like", value, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeIn(List<String> values) {
+            addCriterion("PU_ACCEPTSTATUSCODE in", values, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeNotIn(List<String> values) {
+            addCriterion("PU_ACCEPTSTATUSCODE not in", values, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeBetween(String value1, String value2) {
+            addCriterion("PU_ACCEPTSTATUSCODE between", value1, value2, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatuscodeNotBetween(String value1, String value2) {
+            addCriterion("PU_ACCEPTSTATUSCODE not between", value1, value2, "puAcceptstatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusIsNull() {
+            addCriterion("PU_ACCEPTSTATUS is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusIsNotNull() {
+            addCriterion("PU_ACCEPTSTATUS is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusEqualTo(String value) {
+            addCriterion("PU_ACCEPTSTATUS =", value, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusNotEqualTo(String value) {
+            addCriterion("PU_ACCEPTSTATUS <>", value, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusGreaterThan(String value) {
+            addCriterion("PU_ACCEPTSTATUS >", value, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_ACCEPTSTATUS >=", value, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusLessThan(String value) {
+            addCriterion("PU_ACCEPTSTATUS <", value, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusLessThanOrEqualTo(String value) {
+            addCriterion("PU_ACCEPTSTATUS <=", value, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusLike(String value) {
+            addCriterion("PU_ACCEPTSTATUS like", value, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusNotLike(String value) {
+            addCriterion("PU_ACCEPTSTATUS not like", value, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusIn(List<String> values) {
+            addCriterion("PU_ACCEPTSTATUS in", values, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusNotIn(List<String> values) {
+            addCriterion("PU_ACCEPTSTATUS not in", values, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusBetween(String value1, String value2) {
+            addCriterion("PU_ACCEPTSTATUS between", value1, value2, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuAcceptstatusNotBetween(String value1, String value2) {
+            addCriterion("PU_ACCEPTSTATUS not between", value1, value2, "puAcceptstatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeIsNull() {
+            addCriterion("PU_STATUSCODE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeIsNotNull() {
+            addCriterion("PU_STATUSCODE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeEqualTo(String value) {
+            addCriterion("PU_STATUSCODE =", value, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeNotEqualTo(String value) {
+            addCriterion("PU_STATUSCODE <>", value, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeGreaterThan(String value) {
+            addCriterion("PU_STATUSCODE >", value, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_STATUSCODE >=", value, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeLessThan(String value) {
+            addCriterion("PU_STATUSCODE <", value, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeLessThanOrEqualTo(String value) {
+            addCriterion("PU_STATUSCODE <=", value, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeLike(String value) {
+            addCriterion("PU_STATUSCODE like", value, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeNotLike(String value) {
+            addCriterion("PU_STATUSCODE not like", value, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeIn(List<String> values) {
+            addCriterion("PU_STATUSCODE in", values, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeNotIn(List<String> values) {
+            addCriterion("PU_STATUSCODE not in", values, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeBetween(String value1, String value2) {
+            addCriterion("PU_STATUSCODE between", value1, value2, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatuscodeNotBetween(String value1, String value2) {
+            addCriterion("PU_STATUSCODE not between", value1, value2, "puStatuscode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusIsNull() {
+            addCriterion("PU_STATUS is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusIsNotNull() {
+            addCriterion("PU_STATUS is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusEqualTo(String value) {
+            addCriterion("PU_STATUS =", value, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusNotEqualTo(String value) {
+            addCriterion("PU_STATUS <>", value, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusGreaterThan(String value) {
+            addCriterion("PU_STATUS >", value, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusGreaterThanOrEqualTo(String value) {
+            addCriterion("PU_STATUS >=", value, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusLessThan(String value) {
+            addCriterion("PU_STATUS <", value, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusLessThanOrEqualTo(String value) {
+            addCriterion("PU_STATUS <=", value, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusLike(String value) {
+            addCriterion("PU_STATUS like", value, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusNotLike(String value) {
+            addCriterion("PU_STATUS not like", value, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusIn(List<String> values) {
+            addCriterion("PU_STATUS in", values, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusNotIn(List<String> values) {
+            addCriterion("PU_STATUS not in", values, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusBetween(String value1, String value2) {
+            addCriterion("PU_STATUS between", value1, value2, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuStatusNotBetween(String value1, String value2) {
+            addCriterion("PU_STATUS not between", value1, value2, "puStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidIsNull() {
+            addCriterion("companyid is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidIsNotNull() {
+            addCriterion("companyid is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidEqualTo(Integer value) {
+            addCriterion("companyid =", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidNotEqualTo(Integer value) {
+            addCriterion("companyid <>", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidGreaterThan(Integer value) {
+            addCriterion("companyid >", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidGreaterThanOrEqualTo(Integer value) {
+            addCriterion("companyid >=", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidLessThan(Integer value) {
+            addCriterion("companyid <", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidLessThanOrEqualTo(Integer value) {
+            addCriterion("companyid <=", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidIn(List<Integer> values) {
+            addCriterion("companyid in", values, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidNotIn(List<Integer> values) {
+            addCriterion("companyid not in", values, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidBetween(Integer value1, Integer value2) {
+            addCriterion("companyid between", value1, value2, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidNotBetween(Integer value1, Integer value2) {
+            addCriterion("companyid not between", value1, value2, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidIsNull() {
+            addCriterion("updatemanid is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidIsNotNull() {
+            addCriterion("updatemanid is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidEqualTo(Integer value) {
+            addCriterion("updatemanid =", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidNotEqualTo(Integer value) {
+            addCriterion("updatemanid <>", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidGreaterThan(Integer value) {
+            addCriterion("updatemanid >", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidGreaterThanOrEqualTo(Integer value) {
+            addCriterion("updatemanid >=", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidLessThan(Integer value) {
+            addCriterion("updatemanid <", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidLessThanOrEqualTo(Integer value) {
+            addCriterion("updatemanid <=", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidIn(List<Integer> values) {
+            addCriterion("updatemanid in", values, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidNotIn(List<Integer> values) {
+            addCriterion("updatemanid not in", values, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidBetween(Integer value1, Integer value2) {
+            addCriterion("updatemanid between", value1, value2, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidNotBetween(Integer value1, Integer value2) {
+            addCriterion("updatemanid not between", value1, value2, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateIsNull() {
+            addCriterion("updatedate is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateIsNotNull() {
+            addCriterion("updatedate is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateEqualTo(Date value) {
+            addCriterion("updatedate =", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateNotEqualTo(Date value) {
+            addCriterion("updatedate <>", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateGreaterThan(Date value) {
+            addCriterion("updatedate >", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateGreaterThanOrEqualTo(Date value) {
+            addCriterion("updatedate >=", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateLessThan(Date value) {
+            addCriterion("updatedate <", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateLessThanOrEqualTo(Date value) {
+            addCriterion("updatedate <=", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateIn(List<Date> values) {
+            addCriterion("updatedate in", values, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateNotIn(List<Date> values) {
+            addCriterion("updatedate not in", values, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateBetween(Date value1, Date value2) {
+            addCriterion("updatedate between", value1, value2, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateNotBetween(Date value1, Date value2) {
+            addCriterion("updatedate not between", value1, value2, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1IsNull() {
+            addCriterion("pu_text1 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1IsNotNull() {
+            addCriterion("pu_text1 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1EqualTo(String value) {
+            addCriterion("pu_text1 =", value, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1NotEqualTo(String value) {
+            addCriterion("pu_text1 <>", value, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1GreaterThan(String value) {
+            addCriterion("pu_text1 >", value, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1GreaterThanOrEqualTo(String value) {
+            addCriterion("pu_text1 >=", value, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1LessThan(String value) {
+            addCriterion("pu_text1 <", value, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1LessThanOrEqualTo(String value) {
+            addCriterion("pu_text1 <=", value, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1Like(String value) {
+            addCriterion("pu_text1 like", value, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1NotLike(String value) {
+            addCriterion("pu_text1 not like", value, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1In(List<String> values) {
+            addCriterion("pu_text1 in", values, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1NotIn(List<String> values) {
+            addCriterion("pu_text1 not in", values, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1Between(String value1, String value2) {
+            addCriterion("pu_text1 between", value1, value2, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText1NotBetween(String value1, String value2) {
+            addCriterion("pu_text1 not between", value1, value2, "puText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2IsNull() {
+            addCriterion("pu_text2 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2IsNotNull() {
+            addCriterion("pu_text2 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2EqualTo(String value) {
+            addCriterion("pu_text2 =", value, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2NotEqualTo(String value) {
+            addCriterion("pu_text2 <>", value, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2GreaterThan(String value) {
+            addCriterion("pu_text2 >", value, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2GreaterThanOrEqualTo(String value) {
+            addCriterion("pu_text2 >=", value, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2LessThan(String value) {
+            addCriterion("pu_text2 <", value, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2LessThanOrEqualTo(String value) {
+            addCriterion("pu_text2 <=", value, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2Like(String value) {
+            addCriterion("pu_text2 like", value, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2NotLike(String value) {
+            addCriterion("pu_text2 not like", value, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2In(List<String> values) {
+            addCriterion("pu_text2 in", values, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2NotIn(List<String> values) {
+            addCriterion("pu_text2 not in", values, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2Between(String value1, String value2) {
+            addCriterion("pu_text2 between", value1, value2, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText2NotBetween(String value1, String value2) {
+            addCriterion("pu_text2 not between", value1, value2, "puText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3IsNull() {
+            addCriterion("pu_text3 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3IsNotNull() {
+            addCriterion("pu_text3 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3EqualTo(String value) {
+            addCriterion("pu_text3 =", value, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3NotEqualTo(String value) {
+            addCriterion("pu_text3 <>", value, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3GreaterThan(String value) {
+            addCriterion("pu_text3 >", value, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3GreaterThanOrEqualTo(String value) {
+            addCriterion("pu_text3 >=", value, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3LessThan(String value) {
+            addCriterion("pu_text3 <", value, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3LessThanOrEqualTo(String value) {
+            addCriterion("pu_text3 <=", value, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3Like(String value) {
+            addCriterion("pu_text3 like", value, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3NotLike(String value) {
+            addCriterion("pu_text3 not like", value, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3In(List<String> values) {
+            addCriterion("pu_text3 in", values, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3NotIn(List<String> values) {
+            addCriterion("pu_text3 not in", values, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3Between(String value1, String value2) {
+            addCriterion("pu_text3 between", value1, value2, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText3NotBetween(String value1, String value2) {
+            addCriterion("pu_text3 not between", value1, value2, "puText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4IsNull() {
+            addCriterion("pu_text4 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4IsNotNull() {
+            addCriterion("pu_text4 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4EqualTo(String value) {
+            addCriterion("pu_text4 =", value, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4NotEqualTo(String value) {
+            addCriterion("pu_text4 <>", value, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4GreaterThan(String value) {
+            addCriterion("pu_text4 >", value, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4GreaterThanOrEqualTo(String value) {
+            addCriterion("pu_text4 >=", value, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4LessThan(String value) {
+            addCriterion("pu_text4 <", value, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4LessThanOrEqualTo(String value) {
+            addCriterion("pu_text4 <=", value, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4Like(String value) {
+            addCriterion("pu_text4 like", value, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4NotLike(String value) {
+            addCriterion("pu_text4 not like", value, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4In(List<String> values) {
+            addCriterion("pu_text4 in", values, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4NotIn(List<String> values) {
+            addCriterion("pu_text4 not in", values, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4Between(String value1, String value2) {
+            addCriterion("pu_text4 between", value1, value2, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText4NotBetween(String value1, String value2) {
+            addCriterion("pu_text4 not between", value1, value2, "puText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5IsNull() {
+            addCriterion("pu_text5 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5IsNotNull() {
+            addCriterion("pu_text5 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5EqualTo(String value) {
+            addCriterion("pu_text5 =", value, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5NotEqualTo(String value) {
+            addCriterion("pu_text5 <>", value, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5GreaterThan(String value) {
+            addCriterion("pu_text5 >", value, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5GreaterThanOrEqualTo(String value) {
+            addCriterion("pu_text5 >=", value, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5LessThan(String value) {
+            addCriterion("pu_text5 <", value, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5LessThanOrEqualTo(String value) {
+            addCriterion("pu_text5 <=", value, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5Like(String value) {
+            addCriterion("pu_text5 like", value, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5NotLike(String value) {
+            addCriterion("pu_text5 not like", value, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5In(List<String> values) {
+            addCriterion("pu_text5 in", values, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5NotIn(List<String> values) {
+            addCriterion("pu_text5 not in", values, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5Between(String value1, String value2) {
+            addCriterion("pu_text5 between", value1, value2, "puText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPuText5NotBetween(String value1, String value2) {
+            addCriterion("pu_text5 not between", value1, value2, "puText5");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 227 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/PurchaseList.java

@@ -0,0 +1,227 @@
+package com.usoftchina.saas.purchase.po;
+
+import com.usoftchina.saas.base.entity.CommonBaseEntity;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @author: guq
+ * @create: 2018-10-10 16:42
+ **/
+public class PurchaseList extends CommonBaseEntity implements Serializable {
+
+    /**
+     * 编号
+     */
+    private String code;
+    /**
+     * 状态
+     */
+    private String status;
+    /**
+     * 供应商
+     */
+    private String contactName;
+    /**
+     * 交货日期
+     */
+    private Date deliveryDate;
+    /**
+     * 单据日期
+     */
+    private Date docDate;
+    /**
+     * 打印状态
+     */
+    private String printStatus;
+    /**
+     * 打印次数
+     */
+    private Integer printTimes;
+    /**
+     * 自定义字段1
+     */
+    private String userDefined1;
+    /**
+     * 自定义字段2
+     */
+    private String userDefined2;
+    /**
+     * 自定义字段3
+     */
+    private String userDefined3;
+    /**
+     * 自定义字段4
+     */
+    private String userDefined4;
+    /**
+     * 自定义字段5
+     */
+    private String userDefined5;
+
+    /**
+     * 从表序号
+     */
+    private BigDecimal pdDetno;
+
+    /**
+     * 物料id
+     */
+    private BigDecimal pdProdid;
+
+    /**
+     * 物料编号
+     */
+    private String pdProdcode;
+
+    public BigDecimal getPdDetno() {
+        return pdDetno;
+    }
+
+    public void setPdDetno(BigDecimal pdDetno) {
+        this.pdDetno = pdDetno;
+    }
+
+    public BigDecimal getPdProdid() {
+        return pdProdid;
+    }
+
+    public void setPdProdid(BigDecimal pdProdid) {
+        this.pdProdid = pdProdid;
+    }
+
+    public String getPdProdcode() {
+        return pdProdcode;
+    }
+
+    public void setPdProdcode(String pdProdcode) {
+        this.pdProdcode = pdProdcode;
+    }
+
+
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getCode() {
+        return code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getContactName() {
+        return contactName;
+    }
+
+    public void setContactName(String contactName) {
+        this.contactName = contactName;
+    }
+
+    public Date getDeliveryDate() {
+        return deliveryDate;
+    }
+
+    public void setDeliveryDate(Date deliveryDate) {
+        this.deliveryDate = deliveryDate;
+    }
+
+    public Date getDocDate() {
+        return docDate;
+    }
+
+    public void setDocDate(Date docDate) {
+        this.docDate = docDate;
+    }
+
+    public String getPrintStatus() {
+        return printStatus;
+    }
+
+    public void setPrintStatus(String printStatus) {
+        this.printStatus = printStatus;
+    }
+
+    public Integer getPrintTimes() {
+        return printTimes;
+    }
+
+    public void setPrintTimes(Integer printTimes) {
+        this.printTimes = printTimes;
+    }
+
+    public String getUserDefined1() {
+        return userDefined1;
+    }
+
+    public void setUserDefined1(String userDefined1) {
+        this.userDefined1 = userDefined1;
+    }
+
+    public String getUserDefined2() {
+        return userDefined2;
+    }
+
+    public void setUserDefined2(String userDefined2) {
+        this.userDefined2 = userDefined2;
+    }
+
+    public String getUserDefined3() {
+        return userDefined3;
+    }
+
+    public void setUserDefined3(String userDefined3) {
+        this.userDefined3 = userDefined3;
+    }
+
+    public String getUserDefined4() {
+        return userDefined4;
+    }
+
+    public void setUserDefined4(String userDefined4) {
+        this.userDefined4 = userDefined4;
+    }
+
+    public String getUserDefined5() {
+        return userDefined5;
+    }
+
+    public void setUserDefined5(String userDefined5) {
+        this.userDefined5 = userDefined5;
+    }
+
+    @Override
+    public String toString() {
+        return "PurchaseListDTO{" +
+                "id=" + id +
+                ", code='" + code + '\'' +
+                ", status='" + status + '\'' +
+                ", contactName='" + contactName + '\'' +
+                ", deliveryDate=" + deliveryDate +
+                ", docDate=" + docDate +
+                ", printStatus='" + printStatus + '\'' +
+                ", printTimes=" + printTimes +
+                ", userDefined1='" + userDefined1 + '\'' +
+                ", userDefined2='" + userDefined2 + '\'' +
+                ", userDefined3='" + userDefined3 + '\'' +
+                ", userDefined4='" + userDefined4 + '\'' +
+                ", userDefined5='" + userDefined5 + '\'' +
+                '}';
+    }
+}

+ 249 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/Purchasedetail.java

@@ -0,0 +1,249 @@
+package com.usoftchina.saas.purchase.po;
+
+import com.usoftchina.saas.base.entity.CommonBaseEntity;
+
+import java.io.Serializable;
+import java.util.Date;
+
+public class Purchasedetail extends CommonBaseEntity implements Serializable {
+
+    private Integer pdPuid;
+
+    private String pdCode;
+
+    private Integer pdDetno;
+
+    private Integer pdProdid;
+
+    private String pdProdcode;
+
+    private String pdUnit;
+
+    private Double pdQty;
+
+    private Double pdPrice;
+
+    private Double pdTotal;
+
+    private Double pdTaxtotal;
+
+    private Double pdAcceptqty;
+
+    private Double pdDelivery;
+
+    private String pdSalecode;
+
+    private Integer pdSaledetno;
+
+    private Integer pdSdid;
+
+    private Integer companyid;
+
+    private Integer updatemanid;
+
+    private Date updatedate;
+
+    private String pdText1;
+
+    private String pdText2;
+
+    private String pdText3;
+
+    private String pdText4;
+
+    private String pdText5;
+
+    private Double pdYqty;
+
+    public Integer getPdPuid() {
+        return pdPuid;
+    }
+
+    public void setPdPuid(Integer pdPuid) {
+        this.pdPuid = pdPuid;
+    }
+
+    public String getPdCode() {
+        return pdCode;
+    }
+
+    public void setPdCode(String pdCode) {
+        this.pdCode = pdCode == null ? null : pdCode.trim();
+    }
+
+    public Integer getPdDetno() {
+        return pdDetno;
+    }
+
+    public void setPdDetno(Integer pdDetno) {
+        this.pdDetno = pdDetno;
+    }
+
+    public Integer getPdProdid() {
+        return pdProdid;
+    }
+
+    public void setPdProdid(Integer pdProdid) {
+        this.pdProdid = pdProdid;
+    }
+
+    public String getPdProdcode() {
+        return pdProdcode;
+    }
+
+    public void setPdProdcode(String pdProdcode) {
+        this.pdProdcode = pdProdcode == null ? null : pdProdcode.trim();
+    }
+
+    public String getPdUnit() {
+        return pdUnit;
+    }
+
+    public void setPdUnit(String pdUnit) {
+        this.pdUnit = pdUnit == null ? null : pdUnit.trim();
+    }
+
+    public Double getPdQty() {
+        return pdQty;
+    }
+
+    public void setPdQty(Double pdQty) {
+        this.pdQty = pdQty;
+    }
+
+    public Double getPdPrice() {
+        return pdPrice;
+    }
+
+    public void setPdPrice(Double pdPrice) {
+        this.pdPrice = pdPrice;
+    }
+
+    public Double getPdTotal() {
+        return pdTotal;
+    }
+
+    public void setPdTotal(Double pdTotal) {
+        this.pdTotal = pdTotal;
+    }
+
+    public Double getPdTaxtotal() {
+        return pdTaxtotal;
+    }
+
+    public void setPdTaxtotal(Double pdTaxtotal) {
+        this.pdTaxtotal = pdTaxtotal;
+    }
+
+    public Double getPdAcceptqty() {
+        return pdAcceptqty;
+    }
+
+    public void setPdAcceptqty(Double pdAcceptqty) {
+        this.pdAcceptqty = pdAcceptqty;
+    }
+
+    public Double getPdDelivery() {
+        return pdDelivery;
+    }
+
+    public void setPdDelivery(Double pdDelivery) {
+        this.pdDelivery = pdDelivery;
+    }
+
+    public String getPdSalecode() {
+        return pdSalecode;
+    }
+
+    public void setPdSalecode(String pdSalecode) {
+        this.pdSalecode = pdSalecode == null ? null : pdSalecode.trim();
+    }
+
+    public Integer getPdSaledetno() {
+        return pdSaledetno;
+    }
+
+    public void setPdSaledetno(Integer pdSaledetno) {
+        this.pdSaledetno = pdSaledetno;
+    }
+
+    public Integer getPdSdid() {
+        return pdSdid;
+    }
+
+    public void setPdSdid(Integer pdSdid) {
+        this.pdSdid = pdSdid;
+    }
+
+    public Integer getCompanyid() {
+        return companyid;
+    }
+
+    public void setCompanyid(Integer companyid) {
+        this.companyid = companyid;
+    }
+
+    public Integer getUpdatemanid() {
+        return updatemanid;
+    }
+
+    public void setUpdatemanid(Integer updatemanid) {
+        this.updatemanid = updatemanid;
+    }
+
+    public Date getUpdatedate() {
+        return updatedate;
+    }
+
+    public void setUpdatedate(Date updatedate) {
+        this.updatedate = updatedate;
+    }
+
+    public String getPdText1() {
+        return pdText1;
+    }
+
+    public void setPdText1(String pdText1) {
+        this.pdText1 = pdText1 == null ? null : pdText1.trim();
+    }
+
+    public String getPdText2() {
+        return pdText2;
+    }
+
+    public void setPdText2(String pdText2) {
+        this.pdText2 = pdText2 == null ? null : pdText2.trim();
+    }
+
+    public String getPdText3() {
+        return pdText3;
+    }
+
+    public void setPdText3(String pdText3) {
+        this.pdText3 = pdText3 == null ? null : pdText3.trim();
+    }
+
+    public String getPdText4() {
+        return pdText4;
+    }
+
+    public void setPdText4(String pdText4) {
+        this.pdText4 = pdText4 == null ? null : pdText4.trim();
+    }
+
+    public String getPdText5() {
+        return pdText5;
+    }
+
+    public void setPdText5(String pdText5) {
+        this.pdText5 = pdText5 == null ? null : pdText5.trim();
+    }
+
+    public Double getPdYqty() {
+        return pdYqty;
+    }
+
+    public void setPdYqty(Double pdYqty) {
+        this.pdYqty = pdYqty;
+    }
+}

+ 1791 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/PurchasedetailExample.java

@@ -0,0 +1,1791 @@
+package com.usoftchina.saas.purchase.po;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class PurchasedetailExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    public PurchasedetailExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andPdIdIsNull() {
+            addCriterion("PD_ID is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdIsNotNull() {
+            addCriterion("PD_ID is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdEqualTo(Integer value) {
+            addCriterion("PD_ID =", value, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdNotEqualTo(Integer value) {
+            addCriterion("PD_ID <>", value, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdGreaterThan(Integer value) {
+            addCriterion("PD_ID >", value, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("PD_ID >=", value, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdLessThan(Integer value) {
+            addCriterion("PD_ID <", value, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdLessThanOrEqualTo(Integer value) {
+            addCriterion("PD_ID <=", value, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdIn(List<Integer> values) {
+            addCriterion("PD_ID in", values, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdNotIn(List<Integer> values) {
+            addCriterion("PD_ID not in", values, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdBetween(Integer value1, Integer value2) {
+            addCriterion("PD_ID between", value1, value2, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("PD_ID not between", value1, value2, "pdId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidIsNull() {
+            addCriterion("PD_PUID is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidIsNotNull() {
+            addCriterion("PD_PUID is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidEqualTo(Integer value) {
+            addCriterion("PD_PUID =", value, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidNotEqualTo(Integer value) {
+            addCriterion("PD_PUID <>", value, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidGreaterThan(Integer value) {
+            addCriterion("PD_PUID >", value, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidGreaterThanOrEqualTo(Integer value) {
+            addCriterion("PD_PUID >=", value, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidLessThan(Integer value) {
+            addCriterion("PD_PUID <", value, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidLessThanOrEqualTo(Integer value) {
+            addCriterion("PD_PUID <=", value, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidIn(List<Integer> values) {
+            addCriterion("PD_PUID in", values, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidNotIn(List<Integer> values) {
+            addCriterion("PD_PUID not in", values, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidBetween(Integer value1, Integer value2) {
+            addCriterion("PD_PUID between", value1, value2, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPuidNotBetween(Integer value1, Integer value2) {
+            addCriterion("PD_PUID not between", value1, value2, "pdPuid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeIsNull() {
+            addCriterion("PD_CODE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeIsNotNull() {
+            addCriterion("PD_CODE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeEqualTo(String value) {
+            addCriterion("PD_CODE =", value, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeNotEqualTo(String value) {
+            addCriterion("PD_CODE <>", value, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeGreaterThan(String value) {
+            addCriterion("PD_CODE >", value, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeGreaterThanOrEqualTo(String value) {
+            addCriterion("PD_CODE >=", value, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeLessThan(String value) {
+            addCriterion("PD_CODE <", value, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeLessThanOrEqualTo(String value) {
+            addCriterion("PD_CODE <=", value, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeLike(String value) {
+            addCriterion("PD_CODE like", value, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeNotLike(String value) {
+            addCriterion("PD_CODE not like", value, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeIn(List<String> values) {
+            addCriterion("PD_CODE in", values, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeNotIn(List<String> values) {
+            addCriterion("PD_CODE not in", values, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeBetween(String value1, String value2) {
+            addCriterion("PD_CODE between", value1, value2, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdCodeNotBetween(String value1, String value2) {
+            addCriterion("PD_CODE not between", value1, value2, "pdCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoIsNull() {
+            addCriterion("PD_DETNO is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoIsNotNull() {
+            addCriterion("PD_DETNO is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoEqualTo(Integer value) {
+            addCriterion("PD_DETNO =", value, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoNotEqualTo(Integer value) {
+            addCriterion("PD_DETNO <>", value, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoGreaterThan(Integer value) {
+            addCriterion("PD_DETNO >", value, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoGreaterThanOrEqualTo(Integer value) {
+            addCriterion("PD_DETNO >=", value, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoLessThan(Integer value) {
+            addCriterion("PD_DETNO <", value, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoLessThanOrEqualTo(Integer value) {
+            addCriterion("PD_DETNO <=", value, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoIn(List<Integer> values) {
+            addCriterion("PD_DETNO in", values, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoNotIn(List<Integer> values) {
+            addCriterion("PD_DETNO not in", values, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoBetween(Integer value1, Integer value2) {
+            addCriterion("PD_DETNO between", value1, value2, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDetnoNotBetween(Integer value1, Integer value2) {
+            addCriterion("PD_DETNO not between", value1, value2, "pdDetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidIsNull() {
+            addCriterion("PD_PRODID is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidIsNotNull() {
+            addCriterion("PD_PRODID is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidEqualTo(Integer value) {
+            addCriterion("PD_PRODID =", value, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidNotEqualTo(Integer value) {
+            addCriterion("PD_PRODID <>", value, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidGreaterThan(Integer value) {
+            addCriterion("PD_PRODID >", value, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidGreaterThanOrEqualTo(Integer value) {
+            addCriterion("PD_PRODID >=", value, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidLessThan(Integer value) {
+            addCriterion("PD_PRODID <", value, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidLessThanOrEqualTo(Integer value) {
+            addCriterion("PD_PRODID <=", value, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidIn(List<Integer> values) {
+            addCriterion("PD_PRODID in", values, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidNotIn(List<Integer> values) {
+            addCriterion("PD_PRODID not in", values, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidBetween(Integer value1, Integer value2) {
+            addCriterion("PD_PRODID between", value1, value2, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdidNotBetween(Integer value1, Integer value2) {
+            addCriterion("PD_PRODID not between", value1, value2, "pdProdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeIsNull() {
+            addCriterion("PD_PRODCODE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeIsNotNull() {
+            addCriterion("PD_PRODCODE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeEqualTo(String value) {
+            addCriterion("PD_PRODCODE =", value, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeNotEqualTo(String value) {
+            addCriterion("PD_PRODCODE <>", value, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeGreaterThan(String value) {
+            addCriterion("PD_PRODCODE >", value, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeGreaterThanOrEqualTo(String value) {
+            addCriterion("PD_PRODCODE >=", value, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeLessThan(String value) {
+            addCriterion("PD_PRODCODE <", value, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeLessThanOrEqualTo(String value) {
+            addCriterion("PD_PRODCODE <=", value, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeLike(String value) {
+            addCriterion("PD_PRODCODE like", value, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeNotLike(String value) {
+            addCriterion("PD_PRODCODE not like", value, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeIn(List<String> values) {
+            addCriterion("PD_PRODCODE in", values, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeNotIn(List<String> values) {
+            addCriterion("PD_PRODCODE not in", values, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeBetween(String value1, String value2) {
+            addCriterion("PD_PRODCODE between", value1, value2, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdProdcodeNotBetween(String value1, String value2) {
+            addCriterion("PD_PRODCODE not between", value1, value2, "pdProdcode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitIsNull() {
+            addCriterion("PD_UNIT is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitIsNotNull() {
+            addCriterion("PD_UNIT is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitEqualTo(String value) {
+            addCriterion("PD_UNIT =", value, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitNotEqualTo(String value) {
+            addCriterion("PD_UNIT <>", value, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitGreaterThan(String value) {
+            addCriterion("PD_UNIT >", value, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitGreaterThanOrEqualTo(String value) {
+            addCriterion("PD_UNIT >=", value, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitLessThan(String value) {
+            addCriterion("PD_UNIT <", value, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitLessThanOrEqualTo(String value) {
+            addCriterion("PD_UNIT <=", value, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitLike(String value) {
+            addCriterion("PD_UNIT like", value, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitNotLike(String value) {
+            addCriterion("PD_UNIT not like", value, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitIn(List<String> values) {
+            addCriterion("PD_UNIT in", values, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitNotIn(List<String> values) {
+            addCriterion("PD_UNIT not in", values, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitBetween(String value1, String value2) {
+            addCriterion("PD_UNIT between", value1, value2, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdUnitNotBetween(String value1, String value2) {
+            addCriterion("PD_UNIT not between", value1, value2, "pdUnit");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyIsNull() {
+            addCriterion("PD_QTY is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyIsNotNull() {
+            addCriterion("PD_QTY is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyEqualTo(Double value) {
+            addCriterion("PD_QTY =", value, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyNotEqualTo(Double value) {
+            addCriterion("PD_QTY <>", value, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyGreaterThan(Double value) {
+            addCriterion("PD_QTY >", value, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyGreaterThanOrEqualTo(Double value) {
+            addCriterion("PD_QTY >=", value, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyLessThan(Double value) {
+            addCriterion("PD_QTY <", value, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyLessThanOrEqualTo(Double value) {
+            addCriterion("PD_QTY <=", value, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyIn(List<Double> values) {
+            addCriterion("PD_QTY in", values, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyNotIn(List<Double> values) {
+            addCriterion("PD_QTY not in", values, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyBetween(Double value1, Double value2) {
+            addCriterion("PD_QTY between", value1, value2, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdQtyNotBetween(Double value1, Double value2) {
+            addCriterion("PD_QTY not between", value1, value2, "pdQty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceIsNull() {
+            addCriterion("PD_PRICE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceIsNotNull() {
+            addCriterion("PD_PRICE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceEqualTo(Double value) {
+            addCriterion("PD_PRICE =", value, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceNotEqualTo(Double value) {
+            addCriterion("PD_PRICE <>", value, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceGreaterThan(Double value) {
+            addCriterion("PD_PRICE >", value, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceGreaterThanOrEqualTo(Double value) {
+            addCriterion("PD_PRICE >=", value, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceLessThan(Double value) {
+            addCriterion("PD_PRICE <", value, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceLessThanOrEqualTo(Double value) {
+            addCriterion("PD_PRICE <=", value, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceIn(List<Double> values) {
+            addCriterion("PD_PRICE in", values, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceNotIn(List<Double> values) {
+            addCriterion("PD_PRICE not in", values, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceBetween(Double value1, Double value2) {
+            addCriterion("PD_PRICE between", value1, value2, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdPriceNotBetween(Double value1, Double value2) {
+            addCriterion("PD_PRICE not between", value1, value2, "pdPrice");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalIsNull() {
+            addCriterion("PD_TOTAL is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalIsNotNull() {
+            addCriterion("PD_TOTAL is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalEqualTo(Double value) {
+            addCriterion("PD_TOTAL =", value, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalNotEqualTo(Double value) {
+            addCriterion("PD_TOTAL <>", value, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalGreaterThan(Double value) {
+            addCriterion("PD_TOTAL >", value, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalGreaterThanOrEqualTo(Double value) {
+            addCriterion("PD_TOTAL >=", value, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalLessThan(Double value) {
+            addCriterion("PD_TOTAL <", value, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalLessThanOrEqualTo(Double value) {
+            addCriterion("PD_TOTAL <=", value, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalIn(List<Double> values) {
+            addCriterion("PD_TOTAL in", values, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalNotIn(List<Double> values) {
+            addCriterion("PD_TOTAL not in", values, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalBetween(Double value1, Double value2) {
+            addCriterion("PD_TOTAL between", value1, value2, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTotalNotBetween(Double value1, Double value2) {
+            addCriterion("PD_TOTAL not between", value1, value2, "pdTotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalIsNull() {
+            addCriterion("PD_TAXTOTAL is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalIsNotNull() {
+            addCriterion("PD_TAXTOTAL is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalEqualTo(Double value) {
+            addCriterion("PD_TAXTOTAL =", value, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalNotEqualTo(Double value) {
+            addCriterion("PD_TAXTOTAL <>", value, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalGreaterThan(Double value) {
+            addCriterion("PD_TAXTOTAL >", value, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalGreaterThanOrEqualTo(Double value) {
+            addCriterion("PD_TAXTOTAL >=", value, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalLessThan(Double value) {
+            addCriterion("PD_TAXTOTAL <", value, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalLessThanOrEqualTo(Double value) {
+            addCriterion("PD_TAXTOTAL <=", value, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalIn(List<Double> values) {
+            addCriterion("PD_TAXTOTAL in", values, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalNotIn(List<Double> values) {
+            addCriterion("PD_TAXTOTAL not in", values, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalBetween(Double value1, Double value2) {
+            addCriterion("PD_TAXTOTAL between", value1, value2, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdTaxtotalNotBetween(Double value1, Double value2) {
+            addCriterion("PD_TAXTOTAL not between", value1, value2, "pdTaxtotal");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyIsNull() {
+            addCriterion("PD_ACCEPTQTY is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyIsNotNull() {
+            addCriterion("PD_ACCEPTQTY is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyEqualTo(Double value) {
+            addCriterion("PD_ACCEPTQTY =", value, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyNotEqualTo(Double value) {
+            addCriterion("PD_ACCEPTQTY <>", value, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyGreaterThan(Double value) {
+            addCriterion("PD_ACCEPTQTY >", value, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyGreaterThanOrEqualTo(Double value) {
+            addCriterion("PD_ACCEPTQTY >=", value, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyLessThan(Double value) {
+            addCriterion("PD_ACCEPTQTY <", value, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyLessThanOrEqualTo(Double value) {
+            addCriterion("PD_ACCEPTQTY <=", value, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyIn(List<Double> values) {
+            addCriterion("PD_ACCEPTQTY in", values, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyNotIn(List<Double> values) {
+            addCriterion("PD_ACCEPTQTY not in", values, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyBetween(Double value1, Double value2) {
+            addCriterion("PD_ACCEPTQTY between", value1, value2, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdAcceptqtyNotBetween(Double value1, Double value2) {
+            addCriterion("PD_ACCEPTQTY not between", value1, value2, "pdAcceptqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryIsNull() {
+            addCriterion("PD_DELIVERY is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryIsNotNull() {
+            addCriterion("PD_DELIVERY is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryEqualTo(Double value) {
+            addCriterion("PD_DELIVERY =", value, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryNotEqualTo(Double value) {
+            addCriterion("PD_DELIVERY <>", value, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryGreaterThan(Double value) {
+            addCriterion("PD_DELIVERY >", value, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryGreaterThanOrEqualTo(Double value) {
+            addCriterion("PD_DELIVERY >=", value, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryLessThan(Double value) {
+            addCriterion("PD_DELIVERY <", value, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryLessThanOrEqualTo(Double value) {
+            addCriterion("PD_DELIVERY <=", value, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryIn(List<Double> values) {
+            addCriterion("PD_DELIVERY in", values, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryNotIn(List<Double> values) {
+            addCriterion("PD_DELIVERY not in", values, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryBetween(Double value1, Double value2) {
+            addCriterion("PD_DELIVERY between", value1, value2, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdDeliveryNotBetween(Double value1, Double value2) {
+            addCriterion("PD_DELIVERY not between", value1, value2, "pdDelivery");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeIsNull() {
+            addCriterion("PD_SALECODE is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeIsNotNull() {
+            addCriterion("PD_SALECODE is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeEqualTo(String value) {
+            addCriterion("PD_SALECODE =", value, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeNotEqualTo(String value) {
+            addCriterion("PD_SALECODE <>", value, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeGreaterThan(String value) {
+            addCriterion("PD_SALECODE >", value, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeGreaterThanOrEqualTo(String value) {
+            addCriterion("PD_SALECODE >=", value, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeLessThan(String value) {
+            addCriterion("PD_SALECODE <", value, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeLessThanOrEqualTo(String value) {
+            addCriterion("PD_SALECODE <=", value, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeLike(String value) {
+            addCriterion("PD_SALECODE like", value, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeNotLike(String value) {
+            addCriterion("PD_SALECODE not like", value, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeIn(List<String> values) {
+            addCriterion("PD_SALECODE in", values, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeNotIn(List<String> values) {
+            addCriterion("PD_SALECODE not in", values, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeBetween(String value1, String value2) {
+            addCriterion("PD_SALECODE between", value1, value2, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSalecodeNotBetween(String value1, String value2) {
+            addCriterion("PD_SALECODE not between", value1, value2, "pdSalecode");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoIsNull() {
+            addCriterion("PD_SALEDETNO is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoIsNotNull() {
+            addCriterion("PD_SALEDETNO is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoEqualTo(Integer value) {
+            addCriterion("PD_SALEDETNO =", value, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoNotEqualTo(Integer value) {
+            addCriterion("PD_SALEDETNO <>", value, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoGreaterThan(Integer value) {
+            addCriterion("PD_SALEDETNO >", value, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoGreaterThanOrEqualTo(Integer value) {
+            addCriterion("PD_SALEDETNO >=", value, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoLessThan(Integer value) {
+            addCriterion("PD_SALEDETNO <", value, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoLessThanOrEqualTo(Integer value) {
+            addCriterion("PD_SALEDETNO <=", value, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoIn(List<Integer> values) {
+            addCriterion("PD_SALEDETNO in", values, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoNotIn(List<Integer> values) {
+            addCriterion("PD_SALEDETNO not in", values, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoBetween(Integer value1, Integer value2) {
+            addCriterion("PD_SALEDETNO between", value1, value2, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSaledetnoNotBetween(Integer value1, Integer value2) {
+            addCriterion("PD_SALEDETNO not between", value1, value2, "pdSaledetno");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidIsNull() {
+            addCriterion("PD_SDID is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidIsNotNull() {
+            addCriterion("PD_SDID is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidEqualTo(Integer value) {
+            addCriterion("PD_SDID =", value, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidNotEqualTo(Integer value) {
+            addCriterion("PD_SDID <>", value, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidGreaterThan(Integer value) {
+            addCriterion("PD_SDID >", value, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidGreaterThanOrEqualTo(Integer value) {
+            addCriterion("PD_SDID >=", value, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidLessThan(Integer value) {
+            addCriterion("PD_SDID <", value, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidLessThanOrEqualTo(Integer value) {
+            addCriterion("PD_SDID <=", value, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidIn(List<Integer> values) {
+            addCriterion("PD_SDID in", values, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidNotIn(List<Integer> values) {
+            addCriterion("PD_SDID not in", values, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidBetween(Integer value1, Integer value2) {
+            addCriterion("PD_SDID between", value1, value2, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdSdidNotBetween(Integer value1, Integer value2) {
+            addCriterion("PD_SDID not between", value1, value2, "pdSdid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidIsNull() {
+            addCriterion("companyid is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidIsNotNull() {
+            addCriterion("companyid is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidEqualTo(Integer value) {
+            addCriterion("companyid =", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidNotEqualTo(Integer value) {
+            addCriterion("companyid <>", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidGreaterThan(Integer value) {
+            addCriterion("companyid >", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidGreaterThanOrEqualTo(Integer value) {
+            addCriterion("companyid >=", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidLessThan(Integer value) {
+            addCriterion("companyid <", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidLessThanOrEqualTo(Integer value) {
+            addCriterion("companyid <=", value, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidIn(List<Integer> values) {
+            addCriterion("companyid in", values, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidNotIn(List<Integer> values) {
+            addCriterion("companyid not in", values, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidBetween(Integer value1, Integer value2) {
+            addCriterion("companyid between", value1, value2, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyidNotBetween(Integer value1, Integer value2) {
+            addCriterion("companyid not between", value1, value2, "companyid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidIsNull() {
+            addCriterion("updatemanid is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidIsNotNull() {
+            addCriterion("updatemanid is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidEqualTo(Integer value) {
+            addCriterion("updatemanid =", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidNotEqualTo(Integer value) {
+            addCriterion("updatemanid <>", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidGreaterThan(Integer value) {
+            addCriterion("updatemanid >", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidGreaterThanOrEqualTo(Integer value) {
+            addCriterion("updatemanid >=", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidLessThan(Integer value) {
+            addCriterion("updatemanid <", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidLessThanOrEqualTo(Integer value) {
+            addCriterion("updatemanid <=", value, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidIn(List<Integer> values) {
+            addCriterion("updatemanid in", values, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidNotIn(List<Integer> values) {
+            addCriterion("updatemanid not in", values, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidBetween(Integer value1, Integer value2) {
+            addCriterion("updatemanid between", value1, value2, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatemanidNotBetween(Integer value1, Integer value2) {
+            addCriterion("updatemanid not between", value1, value2, "updatemanid");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateIsNull() {
+            addCriterion("updatedate is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateIsNotNull() {
+            addCriterion("updatedate is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateEqualTo(Date value) {
+            addCriterion("updatedate =", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateNotEqualTo(Date value) {
+            addCriterion("updatedate <>", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateGreaterThan(Date value) {
+            addCriterion("updatedate >", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateGreaterThanOrEqualTo(Date value) {
+            addCriterion("updatedate >=", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateLessThan(Date value) {
+            addCriterion("updatedate <", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateLessThanOrEqualTo(Date value) {
+            addCriterion("updatedate <=", value, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateIn(List<Date> values) {
+            addCriterion("updatedate in", values, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateNotIn(List<Date> values) {
+            addCriterion("updatedate not in", values, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateBetween(Date value1, Date value2) {
+            addCriterion("updatedate between", value1, value2, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdatedateNotBetween(Date value1, Date value2) {
+            addCriterion("updatedate not between", value1, value2, "updatedate");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1IsNull() {
+            addCriterion("pd_text1 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1IsNotNull() {
+            addCriterion("pd_text1 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1EqualTo(String value) {
+            addCriterion("pd_text1 =", value, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1NotEqualTo(String value) {
+            addCriterion("pd_text1 <>", value, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1GreaterThan(String value) {
+            addCriterion("pd_text1 >", value, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1GreaterThanOrEqualTo(String value) {
+            addCriterion("pd_text1 >=", value, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1LessThan(String value) {
+            addCriterion("pd_text1 <", value, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1LessThanOrEqualTo(String value) {
+            addCriterion("pd_text1 <=", value, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1Like(String value) {
+            addCriterion("pd_text1 like", value, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1NotLike(String value) {
+            addCriterion("pd_text1 not like", value, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1In(List<String> values) {
+            addCriterion("pd_text1 in", values, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1NotIn(List<String> values) {
+            addCriterion("pd_text1 not in", values, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1Between(String value1, String value2) {
+            addCriterion("pd_text1 between", value1, value2, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText1NotBetween(String value1, String value2) {
+            addCriterion("pd_text1 not between", value1, value2, "pdText1");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2IsNull() {
+            addCriterion("pd_text2 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2IsNotNull() {
+            addCriterion("pd_text2 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2EqualTo(String value) {
+            addCriterion("pd_text2 =", value, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2NotEqualTo(String value) {
+            addCriterion("pd_text2 <>", value, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2GreaterThan(String value) {
+            addCriterion("pd_text2 >", value, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2GreaterThanOrEqualTo(String value) {
+            addCriterion("pd_text2 >=", value, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2LessThan(String value) {
+            addCriterion("pd_text2 <", value, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2LessThanOrEqualTo(String value) {
+            addCriterion("pd_text2 <=", value, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2Like(String value) {
+            addCriterion("pd_text2 like", value, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2NotLike(String value) {
+            addCriterion("pd_text2 not like", value, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2In(List<String> values) {
+            addCriterion("pd_text2 in", values, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2NotIn(List<String> values) {
+            addCriterion("pd_text2 not in", values, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2Between(String value1, String value2) {
+            addCriterion("pd_text2 between", value1, value2, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText2NotBetween(String value1, String value2) {
+            addCriterion("pd_text2 not between", value1, value2, "pdText2");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3IsNull() {
+            addCriterion("pd_text3 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3IsNotNull() {
+            addCriterion("pd_text3 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3EqualTo(String value) {
+            addCriterion("pd_text3 =", value, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3NotEqualTo(String value) {
+            addCriterion("pd_text3 <>", value, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3GreaterThan(String value) {
+            addCriterion("pd_text3 >", value, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3GreaterThanOrEqualTo(String value) {
+            addCriterion("pd_text3 >=", value, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3LessThan(String value) {
+            addCriterion("pd_text3 <", value, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3LessThanOrEqualTo(String value) {
+            addCriterion("pd_text3 <=", value, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3Like(String value) {
+            addCriterion("pd_text3 like", value, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3NotLike(String value) {
+            addCriterion("pd_text3 not like", value, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3In(List<String> values) {
+            addCriterion("pd_text3 in", values, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3NotIn(List<String> values) {
+            addCriterion("pd_text3 not in", values, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3Between(String value1, String value2) {
+            addCriterion("pd_text3 between", value1, value2, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText3NotBetween(String value1, String value2) {
+            addCriterion("pd_text3 not between", value1, value2, "pdText3");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4IsNull() {
+            addCriterion("pd_text4 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4IsNotNull() {
+            addCriterion("pd_text4 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4EqualTo(String value) {
+            addCriterion("pd_text4 =", value, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4NotEqualTo(String value) {
+            addCriterion("pd_text4 <>", value, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4GreaterThan(String value) {
+            addCriterion("pd_text4 >", value, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4GreaterThanOrEqualTo(String value) {
+            addCriterion("pd_text4 >=", value, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4LessThan(String value) {
+            addCriterion("pd_text4 <", value, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4LessThanOrEqualTo(String value) {
+            addCriterion("pd_text4 <=", value, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4Like(String value) {
+            addCriterion("pd_text4 like", value, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4NotLike(String value) {
+            addCriterion("pd_text4 not like", value, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4In(List<String> values) {
+            addCriterion("pd_text4 in", values, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4NotIn(List<String> values) {
+            addCriterion("pd_text4 not in", values, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4Between(String value1, String value2) {
+            addCriterion("pd_text4 between", value1, value2, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText4NotBetween(String value1, String value2) {
+            addCriterion("pd_text4 not between", value1, value2, "pdText4");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5IsNull() {
+            addCriterion("pd_text5 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5IsNotNull() {
+            addCriterion("pd_text5 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5EqualTo(String value) {
+            addCriterion("pd_text5 =", value, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5NotEqualTo(String value) {
+            addCriterion("pd_text5 <>", value, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5GreaterThan(String value) {
+            addCriterion("pd_text5 >", value, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5GreaterThanOrEqualTo(String value) {
+            addCriterion("pd_text5 >=", value, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5LessThan(String value) {
+            addCriterion("pd_text5 <", value, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5LessThanOrEqualTo(String value) {
+            addCriterion("pd_text5 <=", value, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5Like(String value) {
+            addCriterion("pd_text5 like", value, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5NotLike(String value) {
+            addCriterion("pd_text5 not like", value, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5In(List<String> values) {
+            addCriterion("pd_text5 in", values, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5NotIn(List<String> values) {
+            addCriterion("pd_text5 not in", values, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5Between(String value1, String value2) {
+            addCriterion("pd_text5 between", value1, value2, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdText5NotBetween(String value1, String value2) {
+            addCriterion("pd_text5 not between", value1, value2, "pdText5");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyIsNull() {
+            addCriterion("pd_yqty is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyIsNotNull() {
+            addCriterion("pd_yqty is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyEqualTo(Double value) {
+            addCriterion("pd_yqty =", value, "pdYqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyNotEqualTo(Double value) {
+            addCriterion("pd_yqty <>", value, "pdYqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyGreaterThan(Double value) {
+            addCriterion("pd_yqty >", value, "pdYqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyGreaterThanOrEqualTo(Double value) {
+            addCriterion("pd_yqty >=", value, "pdYqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyLessThan(Double value) {
+            addCriterion("pd_yqty <", value, "pdYqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyLessThanOrEqualTo(Double value) {
+            addCriterion("pd_yqty <=", value, "pdYqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyIn(List<Double> values) {
+            addCriterion("pd_yqty in", values, "pdYqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyNotIn(List<Double> values) {
+            addCriterion("pd_yqty not in", values, "pdYqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyBetween(Double value1, Double value2) {
+            addCriterion("pd_yqty between", value1, value2, "pdYqty");
+            return (Criteria) this;
+        }
+
+        public Criteria andPdYqtyNotBetween(Double value1, Double value2) {
+            addCriterion("pd_yqty not between", value1, value2, "pdYqty");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 54 - 1
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/PurchaseService.java

@@ -1,6 +1,11 @@
 package com.usoftchina.saas.purchase.service;
 
+import com.github.pagehelper.PageInfo;
 import com.usoftchina.saas.base.service.CommonBaseService;
+import com.usoftchina.saas.page.PageRequest;
+import com.usoftchina.saas.purchase.dto.PurchaseFormDTO;
+import com.usoftchina.saas.purchase.dto.PurchaseListDTO;
+import com.usoftchina.saas.purchase.dto.PurchaseReqDTO;
 import com.usoftchina.saas.purchase.mapper.PurchaseMapper;
 import com.usoftchina.saas.purchase.po.Purchase;
 
@@ -15,5 +20,53 @@ public interface PurchaseService extends CommonBaseService<PurchaseMapper, Purch
      * @param code
      * @return
      */
-    Purchase findByCode(String code);
+    //Purchase_ori findByCode(String code);
+
+    /**
+     * 采购订单列表查询
+     *
+     * @param page,req
+     * @return
+     */
+    PageInfo<PurchaseListDTO> getListData(PageRequest page, PurchaseReqDTO req);
+
+    /**
+     * 采购订单列表查询
+     *
+     * @param id
+     * @return
+     */
+    PurchaseFormDTO getFormData(Integer id);
+
+    /**
+     * 保存
+     *
+     * @param formdata
+     * @return
+     */
+    void saveFormData(PurchaseFormDTO formdata);
+
+    /**
+     * 删除
+     *
+     * @param id
+     * @return
+     */
+    void delete(Integer id);
+
+    /**
+     * 删除明细
+     *
+     * @param id
+     * @return
+     */
+    int deleteItem(Integer id);
+
+    /**
+     * 删除明细
+     *
+     * @param id
+     * @return
+     */
+    int audit(Integer id);
 }

+ 108 - 3
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java

@@ -1,11 +1,23 @@
 package com.usoftchina.saas.purchase.service.impl;
 
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+
 import com.usoftchina.saas.base.service.CommonBaseServiceImpl;
+import com.usoftchina.saas.page.PageRequest;
+import com.usoftchina.saas.purchase.dto.*;
+import com.usoftchina.saas.purchase.mapper.PurchaseListMapper;
 import com.usoftchina.saas.purchase.mapper.PurchaseMapper;
-import com.usoftchina.saas.purchase.po.Purchase;
+import com.usoftchina.saas.purchase.mapper.PurchasedetailMapper;
+import com.usoftchina.saas.purchase.po.*;
 import com.usoftchina.saas.purchase.service.PurchaseService;
+import com.usoftchina.saas.utils.BeanMapper;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * @author yingp
  * @date 2018/10/9
@@ -13,8 +25,101 @@ import org.springframework.stereotype.Service;
 @Service
 public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, Purchase> implements PurchaseService{
 
+    @Autowired
+    private PurchaseMapper purchaseMapper;
+    @Autowired
+    private PurchasedetailMapper purchasedetailMapper;
+    @Autowired
+    private PurchaseListMapper purchaseListMapper;
+
+    @Override
+    public PageInfo<PurchaseListDTO> getListData(PageRequest page, PurchaseReqDTO req) {
+        //设置分页
+        PageHelper.startPage(page.getNumber(), page.getSize());
+        //查询数据
+        List<PurchaseList> lists = purchaseListMapper.selectByCondition(req);
+        //转换成传输对象
+        List<PurchaseListDTO> purchaseListDTOS = new ArrayList<>();
+        for (PurchaseList list : lists) {
+            purchaseListDTOS.add(BeanMapper.map(list, PurchaseListDTO.class));
+        }
+        //取分页信息
+        PageInfo<PurchaseListDTO> pageInfo = new PageInfo<PurchaseListDTO>(purchaseListDTOS);
+        return pageInfo;
+    }
+
+    @Override
+    public PurchaseFormDTO getFormData(Integer id) {
+        PurchaseFormDTO purchaseFormDTO = new PurchaseFormDTO();
+        //查询主表信息
+        Purchase purchase = getMapper().selectByPrimaryKey(id);
+        //创建从表查询模板
+        PurchasedetailExample purchasedetailExample = new PurchasedetailExample();
+        PurchasedetailExample.Criteria cta = purchasedetailExample.createCriteria();
+        //设置查询条件
+        cta.andPdPuidEqualTo(id);
+        //查询从表
+        List<Purchasedetail> purchasedetails = purchasedetailMapper.selectByExample(purchasedetailExample);
+        //将purchase实体对象转化成传输对象
+        PurchaseDTO main = BeanMapper.map(purchase, PurchaseDTO.class);
+        List<PurchaseItemDTO> items = new ArrayList<>();
+        //添加从表传输对象
+        for (Purchasedetail detail : purchasedetails) {
+            items.add(BeanMapper.map(detail, PurchaseItemDTO.class));
+        }
+        purchaseFormDTO.setMain(main);
+        purchaseFormDTO.setItems(items);
+        return  purchaseFormDTO;
+    }
+
+    @Override
+    public void saveFormData(PurchaseFormDTO formdata) {
+        //获取主表信息
+        PurchaseDTO main = formdata.getMain();
+        //转换实体类
+        Purchase purchase = BeanMapper.map(main, Purchase.class);
+        // TODO: 2018/10/11 字段处理...
+        //插入对象
+        purchaseMapper.insertSelective(purchase);
+        long pu_id = purchase.getId();
+        //获取从表信息
+        List<PurchaseItemDTO> items = formdata.getItems();
+        //添加从表传输对象
+        List<Purchasedetail> details = new ArrayList<>();
+        for (PurchaseItemDTO item : items) {
+            Purchasedetail detail = BeanMapper.map(item, Purchasedetail.class);
+            // TODO: 2018/10/11 字段处理...
+            details.add(detail);
+        }
+        //插入从表
+        purchasedetailMapper.batchInsert(details);
+    }
+
+    @Override
+    public void delete(Integer id) {
+        //从表删除
+        PurchasedetailExample purchasedetailExample = new PurchasedetailExample();
+        PurchasedetailExample.Criteria cta = purchasedetailExample.createCriteria();
+        cta.andPdPuidEqualTo(id);
+        purchasedetailMapper.deleteByExample(purchasedetailExample);
+        //主表删除
+        getMapper().deleteByPrimaryKey(id);
+    }
+
+    @Override
+    public int deleteItem(Integer id) {
+        return purchasedetailMapper.deleteByPrimaryKey(id);
+    }
+
     @Override
-    public Purchase findByCode(String code) {
-        return getMapper().selectByCode(code);
+    public int audit(Integer id) {
+        Purchase purchase = new Purchase();
+        //生成对象
+        purchase.setId((long)id);
+        purchase.setPuStatus("已审核");
+        purchase.setPuStatuscode("AUDITED");
+        //更新存在字段
+        int affect = getMapper().updateByPrimaryKeySelective(purchase);
+        return affect;
     }
 }

+ 0 - 44
applications/purchase/purchase-server/src/main/resources/mapper/PurchaseItemMapper.xml

@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.usoftchina.saas.purchase.mapper.PurchaseItemMapper">
-    <resultMap id="BaseResultMap" type="com.usoftchina.saas.purchase.po.PurchaseItem">
-        <id column="id" jdbcType="BIGINT" property="id"/>
-        <result column="company_id" jdbcType="BIGINT" property="companyId"/>
-        <result column="main_id" jdbcType="BIGINT" property="mainId"/>
-        <result column="order_num" jdbcType="INT" property="orderNum"/>
-        <result column="product_id" jdbcType="BIGINT" property="productId"/>
-        <result column="warehouse_id" jdbcType="BIGINT" property="warehouseId"/>
-        <result column="qty" jdbcType="DOUBLE" property="qty"/>
-        <result column="price" jdbcType="DOUBLE" property="price"/>
-        <result column="tax_price" jdbcType="DOUBLE" property="taxPrice"/>
-        <result column="tax_rate" jdbcType="FLOAT" property="taxRate"/>
-        <result column="tax_amount" jdbcType="DOUBLE" property="taxAmount"/>
-        <result column="dis_rate" jdbcType="FLOAT" property="disRate"/>
-        <result column="dis_amount" jdbcType="DOUBLE" property="disAmount"/>
-        <result column="amount" jdbcType="DOUBLE" property="amount"/>
-        <result column="total_tax_amount" jdbcType="DOUBLE" property="totalTaxAmount"/>
-        <result column="remark" jdbcType="VARCHAR" property="remark"/>
-        <result column="src_order_id" jdbcType="BIGINT" property="srcOrderId"/>
-        <result column="creator_id" jdbcType="BIGINT" property="creatorId"/>
-        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
-        <result column="updater_id" jdbcType="BIGINT" property="updaterId"/>
-        <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
-    </resultMap>
-    <sql id="baseColumns">
-        id,company_id,main_id,order_num,product_id,warehouse_id,qty,price,tax_price,tax_rate,tax_amount,dis_rate,dis_amount,amount,
-        total_tax_amount,remark,src_order_id,creator_id,create_time,updater_id,update_time
-    </sql>
-    <insert id="insert" parameterType="com.usoftchina.saas.purchase.po.PurchaseItem">
-        insert into purchase_item(company_id,main_id,order_num,product_id,warehouse_id,qty,price,tax_price,tax_rate,tax_amount,dis_rate,dis_amount,amount,
-        total_tax_amount,remark,src_order_id,creator_id,create_time,updater_id,update_time)
-        values (#{companyId,jdbcType=BIGINT}, #{mainId,jdbcType=BIGINT}, #{orderNum,jdbcType=INT}, #{productId,jdbcType=BIGINT},
-        #{warehouseId,jdbcType=BIGINT}, #{qty,jdbcType=DOUBLE}, #{price,jdbcType=DOUBLE},
-        #{tax_price,jdbcType=DOUBLE}, #{tax_rate,jdbcType=FLOAT}, #{tax_amount,jdbcType=DOUBLE},
-        #{dis_rate,jdbcType=FLOAT}, #{dis_amount,jdbcType=DOUBLE}, #{amount,jdbcType=DOUBLE},
-        #{total_tax_amount,jdbcType=DOUBLE}, #{remark,jdbcType=VARCHAR}, #{src_order_id,jdbcType=BIGINT}
-        #{creatorId,jdbcType=BIGINT}, #{createTime,jdbcType=TIMESTAMP}, #{updaterId,jdbcType=BIGINT}, #{updateTime,jdbcType=TIMESTAMP})
-    </insert>
-    <select id="selectByMainId" parameterType="java.lang.String" resultMap="BaseResultMap">
-        select <include refid="baseColumns"/> from purchase_item where main_id=#{mainId}
-    </select>
-</mapper>

+ 37 - 0
applications/purchase/purchase-server/src/main/resources/mapper/PurchaseListMapper.xml

@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="com.usoftchina.saas.purchase.mapper.PurchaseListMapper">
+    <resultMap id="BaseResultMap" type="com.usoftchina.saas.purchase.po.PurchaseList">
+        <id column="pu_id" jdbcType="BIGINT" property="id"/>
+        <result column="company_id" jdbcType="BIGINT" property="companyId"/>
+        <result column="pu_code" jdbcType="VARCHAR" property="code"/>
+        <result column="pu_status" jdbcType="VARCHAR" property="status"/>
+        <result column="PU_VENDNAME" jdbcType="VARCHAR" property="contactName"/>
+        <result column="PU_DELIVERY" jdbcType="TIMESTAMP" property="deliveryDate"/>
+        <result column="PU_DATE" jdbcType="TIMESTAMP" property="docDate"/>
+        <result column="PU_PRINTSTATUS" jdbcType="VARCHAR" property="printStatus"/>
+        <result column="pu_text1" jdbcType="VARCHAR" property="userDefined1"/>
+        <result column="pu_text2" jdbcType="VARCHAR" property="userDefined2"/>
+        <result column="pu_text3" jdbcType="VARCHAR" property="userDefined3"/>
+        <result column="pu_text4" jdbcType="VARCHAR" property="userDefined4"/>
+        <result column="pu_text5" jdbcType="VARCHAR" property="userDefined5"/>
+        <result column="PD_DETNO" property="pdDetno" jdbcType="DECIMAL" />
+        <result column="PD_PRODID" property="pdProdid" jdbcType="DECIMAL" />
+        <result column="PD_PRODCODE" property="pdProdcode" jdbcType="VARCHAR" />
+    </resultMap>
+
+    <select id="selectByCondition" parameterType="com.usoftchina.saas.purchase.dto.PurchaseReqDTO" resultMap="BaseResultMap">
+        select  *  from purchase left join purchasedetail on pu_id=pd_puid
+        <where>
+            <if test="begin != null">
+                pu_date &gt;= ${begin}
+            </if>
+            <if test="end!= null">
+                AND  pu_date &lt;= ${end}
+            </if>
+            <if test="status != null">
+                AND pu_status=${status}
+            </if>
+        </where>
+    </select>
+</mapper>

+ 692 - 35
applications/purchase/purchase-server/src/main/resources/mapper/PurchaseMapper.xml

@@ -1,38 +1,695 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.usoftchina.saas.purchase.mapper.PurchaseMapper">
-    <resultMap id="BaseResultMap" type="com.usoftchina.saas.purchase.po.Purchase">
-        <id column="id" jdbcType="BIGINT" property="id"/>
-        <result column="company_id" jdbcType="BIGINT" property="companyId"/>
-        <result column="code" jdbcType="VARCHAR" property="code"/>
-        <result column="status" jdbcType="VARCHAR" property="status"/>
-        <result column="contact_id" jdbcType="BIGINT" property="contactId"/>
-        <result column="delivery_date" jdbcType="TIMESTAMP" property="deliveryDate"/>
-        <result column="doc_date" jdbcType="TIMESTAMP" property="docDate"/>
-        <result column="user_defined1" jdbcType="VARCHAR" property="userDefined1"/>
-        <result column="user_defined2" jdbcType="VARCHAR" property="userDefined2"/>
-        <result column="user_defined3" jdbcType="VARCHAR" property="userDefined3"/>
-        <result column="user_defined4" jdbcType="VARCHAR" property="userDefined4"/>
-        <result column="user_defined5" jdbcType="VARCHAR" property="userDefined5"/>
-        <result column="creator_id" jdbcType="BIGINT" property="creatorId"/>
-        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
-        <result column="updater_id" jdbcType="BIGINT" property="updaterId"/>
-        <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
-    </resultMap>
-    <sql id="baseColumns">
-        id,company_id,code,status,contact_id,delivery_date,doc_date,user_defined1,user_defined2,user_defined3,
-        user_defined4,user_defined5,creator_id,create_time,updater_id,update_time
-    </sql>
-    <insert id="insert" parameterType="com.usoftchina.saas.purchase.po.Purchase">
-        insert into purchase(company_id, code, status, contact_id, delivery_date, doc_date, user_defined1, user_defined2,
-        user_defined3, user_defined4, user_defined5, creator_id, create_time, updater_id, update_time)
-        values (#{companyId,jdbcType=BIGINT}, #{code,jdbcType=VARCHAR}, #{status,jdbcType=VARCHAR},
-        #{contactId,jdbcType=BIGINT}, #{deliveryDate,jdbcType=TIMESTAMP}, #{docDate,jdbcType=TIMESTAMP},
-        #{userDefined1,jdbcType=VARCHAR}, #{userDefined2,jdbcType=VARCHAR}, #{userDefined3,jdbcType=VARCHAR},
-        #{userDefined4,jdbcType=VARCHAR}, #{userDefined5,jdbcType=VARCHAR}, #{creatorId,jdbcType=BIGINT},
-        #{createTime,jdbcType=TIMESTAMP}, #{updaterId,jdbcType=BIGINT}, #{updateTime,jdbcType=TIMESTAMP})
-    </insert>
-    <select id="selectByCode" parameterType="java.lang.String" resultMap="BaseResultMap">
-        select <include refid="baseColumns"/> from purchase where code=#{code}
-    </select>
+<mapper namespace="com.usoftchina.saas.purchase.mapper.PurchaseMapper" >
+  <resultMap id="BaseResultMap" type="com.usoftchina.saas.purchase.po.Purchase" >
+    <id column="pu_id" property="id" jdbcType="INTEGER" />
+    <result column="pu_code" property="puCode" jdbcType="VARCHAR" />
+    <result column="pu_date" property="puDate" jdbcType="TIMESTAMP" />
+    <result column="pu_vendid" property="puVendid" jdbcType="INTEGER" />
+    <result column="PU_VENDCODE" property="puVendcode" jdbcType="VARCHAR" />
+    <result column="PU_VENDNAME" property="puVendname" jdbcType="VARCHAR" />
+    <result column="PU_BUYERID" property="puBuyerid" jdbcType="INTEGER" />
+    <result column="PU_BUYERCODE" property="puBuyercode" jdbcType="VARCHAR" />
+    <result column="PU_BUYERNAME" property="puBuyername" jdbcType="VARCHAR" />
+    <result column="PU_DELIVERY" property="puDelivery" jdbcType="TIMESTAMP" />
+    <result column="PU_TAXTOTAL" property="puTaxtotal" jdbcType="DOUBLE" />
+    <result column="PU_TOTAL" property="puTotal" jdbcType="DOUBLE" />
+    <result column="PU_REMARK" property="puRemark" jdbcType="VARCHAR" />
+    <result column="PU_TOTALUPPER" property="puTotalupper" jdbcType="VARCHAR" />
+    <result column="PU_INDATE" property="puIndate" jdbcType="TIMESTAMP" />
+    <result column="PU_PRINTSTATUS" property="puPrintstatus" jdbcType="VARCHAR" />
+    <result column="PU_PRINTSTATUSCODE" property="puPrintstatuscode" jdbcType="VARCHAR" />
+    <result column="PU_ACCEPTSTATUSCODE" property="puAcceptstatuscode" jdbcType="VARCHAR" />
+    <result column="PU_ACCEPTSTATUS" property="puAcceptstatus" jdbcType="VARCHAR" />
+    <result column="PU_STATUSCODE" property="puStatuscode" jdbcType="VARCHAR" />
+    <result column="PU_STATUS" property="puStatus" jdbcType="VARCHAR" />
+    <result column="companyid" property="companyId" jdbcType="BIGINT" />
+    <result column="updatemanid" property="updaterId" jdbcType="INTEGER" />
+    <result column="updatedate" property="updateTime" jdbcType="TIMESTAMP" />
+    <result column="pu_text1" property="puText1" jdbcType="VARCHAR" />
+    <result column="pu_text2" property="puText2" jdbcType="VARCHAR" />
+    <result column="pu_text3" property="puText3" jdbcType="VARCHAR" />
+    <result column="pu_text4" property="puText4" jdbcType="VARCHAR" />
+    <result column="pu_text5" property="puText5" jdbcType="VARCHAR" />
+  </resultMap>
+  <resultMap id="ResultMapWithBLOBs" type="com.usoftchina.saas.purchase.po.Purchase" extends="BaseResultMap" >
+    <result column="PU_SHIPADDRESSCODE" property="puShipaddresscode" jdbcType="LONGVARCHAR" />
+  </resultMap>
+  <sql id="Example_Where_Clause" >
+    <where >
+      <foreach collection="oredCriteria" item="criteria" separator="or" >
+        <if test="criteria.valid" >
+          <trim prefix="(" suffix=")" prefixOverrides="and" >
+            <foreach collection="criteria.criteria" item="criterion" >
+              <choose >
+                <when test="criterion.noValue" >
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue" >
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue" >
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue" >
+                  and ${criterion.condition}
+                  <foreach collection="criterion.value" item="listItem" open="(" close=")" separator="," >
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause" >
+    <where >
+      <foreach collection="example.oredCriteria" item="criteria" separator="or" >
+        <if test="criteria.valid" >
+          <trim prefix="(" suffix=")" prefixOverrides="and" >
+            <foreach collection="criteria.criteria" item="criterion" >
+              <choose >
+                <when test="criterion.noValue" >
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue" >
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue" >
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue" >
+                  and ${criterion.condition}
+                  <foreach collection="criterion.value" item="listItem" open="(" close=")" separator="," >
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List" >
+    pu_id, pu_code, pu_date, pu_vendid, PU_VENDCODE, PU_VENDNAME, PU_BUYERID, PU_BUYERCODE, 
+    PU_BUYERNAME, PU_DELIVERY, PU_TAXTOTAL, PU_TOTAL, PU_REMARK, PU_TOTALUPPER, PU_INDATE, 
+    PU_PRINTSTATUS, PU_PRINTSTATUSCODE, PU_ACCEPTSTATUSCODE, PU_ACCEPTSTATUS, PU_STATUSCODE, 
+    PU_STATUS, companyid, updatemanid, updatedate, pu_text1, pu_text2, pu_text3, pu_text4, 
+    pu_text5
+  </sql>
+  <sql id="Blob_Column_List" >
+    PU_SHIPADDRESSCODE
+  </sql>
+  <select id="selectByExampleWithBLOBs" resultMap="ResultMapWithBLOBs" parameterType="com.usoftchina.saas.purchase.po.PurchaseExample" >
+    select
+    <if test="distinct" >
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from purchase
+    <if test="_parameter != null" >
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null" >
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByExample" resultMap="BaseResultMap" parameterType="com.usoftchina.saas.purchase.po.PurchaseExample" >
+    select
+    <if test="distinct" >
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from purchase
+    <if test="_parameter != null" >
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null" >
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" resultMap="ResultMapWithBLOBs" parameterType="java.lang.Integer" >
+    select 
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from purchase
+    where pu_id = #{puId,jdbcType=INTEGER}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
+    delete from purchase
+    where pu_id = #{puId,jdbcType=INTEGER}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.usoftchina.saas.purchase.po.PurchaseExample" >
+    delete from purchase
+    <if test="_parameter != null" >
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.usoftchina.saas.purchase.po.Purchase" >
+    insert into purchase (pu_id, pu_code, pu_date, 
+      pu_vendid, PU_VENDCODE, PU_VENDNAME, 
+      PU_BUYERID, PU_BUYERCODE, PU_BUYERNAME, 
+      PU_DELIVERY, PU_TAXTOTAL, PU_TOTAL, 
+      PU_REMARK, PU_TOTALUPPER, PU_INDATE, 
+      PU_PRINTSTATUS, PU_PRINTSTATUSCODE, PU_ACCEPTSTATUSCODE, 
+      PU_ACCEPTSTATUS, PU_STATUSCODE, PU_STATUS, 
+      companyid, updatemanid, updatedate, 
+      pu_text1, pu_text2, pu_text3, 
+      pu_text4, pu_text5, PU_SHIPADDRESSCODE
+      )
+    values (#{puId,jdbcType=INTEGER}, #{puCode,jdbcType=VARCHAR}, #{puDate,jdbcType=TIMESTAMP}, 
+      #{puVendid,jdbcType=INTEGER}, #{puVendcode,jdbcType=VARCHAR}, #{puVendname,jdbcType=VARCHAR}, 
+      #{puBuyerid,jdbcType=INTEGER}, #{puBuyercode,jdbcType=VARCHAR}, #{puBuyername,jdbcType=VARCHAR}, 
+      #{puDelivery,jdbcType=TIMESTAMP}, #{puTaxtotal,jdbcType=DOUBLE}, #{puTotal,jdbcType=DOUBLE}, 
+      #{puRemark,jdbcType=VARCHAR}, #{puTotalupper,jdbcType=VARCHAR}, #{puIndate,jdbcType=TIMESTAMP}, 
+      #{puPrintstatus,jdbcType=VARCHAR}, #{puPrintstatuscode,jdbcType=VARCHAR}, #{puAcceptstatuscode,jdbcType=VARCHAR}, 
+      #{puAcceptstatus,jdbcType=VARCHAR}, #{puStatuscode,jdbcType=VARCHAR}, #{puStatus,jdbcType=VARCHAR}, 
+      #{companyid,jdbcType=INTEGER}, #{updatemanid,jdbcType=INTEGER}, #{updatedate,jdbcType=TIMESTAMP}, 
+      #{puText1,jdbcType=VARCHAR}, #{puText2,jdbcType=VARCHAR}, #{puText3,jdbcType=VARCHAR}, 
+      #{puText4,jdbcType=VARCHAR}, #{puText5,jdbcType=VARCHAR}, #{puShipaddresscode,jdbcType=LONGVARCHAR}
+      )
+  </insert>
+  <insert id="insertSelective" parameterType="com.usoftchina.saas.purchase.po.Purchase" >
+    <selectKey resultType="java.lang.Long" keyProperty="id">
+      SELECT LAST_INSERT_ID() AS ID
+    </selectKey>
+    insert into purchase
+    <trim prefix="(" suffix=")" suffixOverrides="," >
+      <if test="puCode != null" >
+        pu_code,
+      </if>
+      <if test="puDate != null" >
+        pu_date,
+      </if>
+      <if test="puVendid != null" >
+        pu_vendid,
+      </if>
+      <if test="puVendcode != null" >
+        PU_VENDCODE,
+      </if>
+      <if test="puVendname != null" >
+        PU_VENDNAME,
+      </if>
+      <if test="puBuyerid != null" >
+        PU_BUYERID,
+      </if>
+      <if test="puBuyercode != null" >
+        PU_BUYERCODE,
+      </if>
+      <if test="puBuyername != null" >
+        PU_BUYERNAME,
+      </if>
+      <if test="puDelivery != null" >
+        PU_DELIVERY,
+      </if>
+      <if test="puTaxtotal != null" >
+        PU_TAXTOTAL,
+      </if>
+      <if test="puTotal != null" >
+        PU_TOTAL,
+      </if>
+      <if test="puRemark != null" >
+        PU_REMARK,
+      </if>
+      <if test="puTotalupper != null" >
+        PU_TOTALUPPER,
+      </if>
+      <if test="puIndate != null" >
+        PU_INDATE,
+      </if>
+      <if test="puPrintstatus != null" >
+        PU_PRINTSTATUS,
+      </if>
+      <if test="puPrintstatuscode != null" >
+        PU_PRINTSTATUSCODE,
+      </if>
+      <if test="puAcceptstatuscode != null" >
+        PU_ACCEPTSTATUSCODE,
+      </if>
+      <if test="puAcceptstatus != null" >
+        PU_ACCEPTSTATUS,
+      </if>
+      <if test="puStatuscode != null" >
+        PU_STATUSCODE,
+      </if>
+      <if test="puStatus != null" >
+        PU_STATUS,
+      </if>
+      <if test="companyId != null" >
+        companyid,
+      </if>
+      <if test="updaterId != null" >
+        updatemanid,
+      </if>
+      <if test="updateTime != null" >
+        updatedate,
+      </if>
+      <if test="puText1 != null" >
+        pu_text1,
+      </if>
+      <if test="puText2 != null" >
+        pu_text2,
+      </if>
+      <if test="puText3 != null" >
+        pu_text3,
+      </if>
+      <if test="puText4 != null" >
+        pu_text4,
+      </if>
+      <if test="puText5 != null" >
+        pu_text5,
+      </if>
+      <if test="puShipaddresscode != null" >
+        PU_SHIPADDRESSCODE,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides="," >
+      <if test="puCode != null" >
+        #{puCode,jdbcType=VARCHAR},
+      </if>
+      <if test="puDate != null" >
+        #{puDate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="puVendid != null" >
+        #{puVendid,jdbcType=INTEGER},
+      </if>
+      <if test="puVendcode != null" >
+        #{puVendcode,jdbcType=VARCHAR},
+      </if>
+      <if test="puVendname != null" >
+        #{puVendname,jdbcType=VARCHAR},
+      </if>
+      <if test="puBuyerid != null" >
+        #{puBuyerid,jdbcType=INTEGER},
+      </if>
+      <if test="puBuyercode != null" >
+        #{puBuyercode,jdbcType=VARCHAR},
+      </if>
+      <if test="puBuyername != null" >
+        #{puBuyername,jdbcType=VARCHAR},
+      </if>
+      <if test="puDelivery != null" >
+        #{puDelivery,jdbcType=TIMESTAMP},
+      </if>
+      <if test="puTaxtotal != null" >
+        #{puTaxtotal,jdbcType=DOUBLE},
+      </if>
+      <if test="puTotal != null" >
+        #{puTotal,jdbcType=DOUBLE},
+      </if>
+      <if test="puRemark != null" >
+        #{puRemark,jdbcType=VARCHAR},
+      </if>
+      <if test="puTotalupper != null" >
+        #{puTotalupper,jdbcType=VARCHAR},
+      </if>
+      <if test="puIndate != null" >
+        #{puIndate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="puPrintstatus != null" >
+        #{puPrintstatus,jdbcType=VARCHAR},
+      </if>
+      <if test="puPrintstatuscode != null" >
+        #{puPrintstatuscode,jdbcType=VARCHAR},
+      </if>
+      <if test="puAcceptstatuscode != null" >
+        #{puAcceptstatuscode,jdbcType=VARCHAR},
+      </if>
+      <if test="puAcceptstatus != null" >
+        #{puAcceptstatus,jdbcType=VARCHAR},
+      </if>
+      <if test="puStatuscode != null" >
+        #{puStatuscode,jdbcType=VARCHAR},
+      </if>
+      <if test="puStatus != null" >
+        #{puStatus,jdbcType=VARCHAR},
+      </if>
+      <if test="companyId != null" >
+        #{companyId,jdbcType=INTEGER},
+      </if>
+      <if test="updaterId != null" >
+        #{updaterId,jdbcType=INTEGER},
+      </if>
+      <if test="updateTime != null" >
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="puText1 != null" >
+        #{puText1,jdbcType=VARCHAR},
+      </if>
+      <if test="puText2 != null" >
+        #{puText2,jdbcType=VARCHAR},
+      </if>
+      <if test="puText3 != null" >
+        #{puText3,jdbcType=VARCHAR},
+      </if>
+      <if test="puText4 != null" >
+        #{puText4,jdbcType=VARCHAR},
+      </if>
+      <if test="puText5 != null" >
+        #{puText5,jdbcType=VARCHAR},
+      </if>
+      <if test="puShipaddresscode != null" >
+        #{puShipaddresscode,jdbcType=LONGVARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.usoftchina.saas.purchase.po.PurchaseExample" resultType="java.lang.Integer" >
+    select count(*) from purchase
+    <if test="_parameter != null" >
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map" >
+    update purchase
+    <set >
+      <if test="record.puId != null" >
+        pu_id = #{record.puId,jdbcType=INTEGER},
+      </if>
+      <if test="record.puCode != null" >
+        pu_code = #{record.puCode,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puDate != null" >
+        pu_date = #{record.puDate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.puVendid != null" >
+        pu_vendid = #{record.puVendid,jdbcType=INTEGER},
+      </if>
+      <if test="record.puVendcode != null" >
+        PU_VENDCODE = #{record.puVendcode,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puVendname != null" >
+        PU_VENDNAME = #{record.puVendname,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puBuyerid != null" >
+        PU_BUYERID = #{record.puBuyerid,jdbcType=INTEGER},
+      </if>
+      <if test="record.puBuyercode != null" >
+        PU_BUYERCODE = #{record.puBuyercode,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puBuyername != null" >
+        PU_BUYERNAME = #{record.puBuyername,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puDelivery != null" >
+        PU_DELIVERY = #{record.puDelivery,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.puTaxtotal != null" >
+        PU_TAXTOTAL = #{record.puTaxtotal,jdbcType=DOUBLE},
+      </if>
+      <if test="record.puTotal != null" >
+        PU_TOTAL = #{record.puTotal,jdbcType=DOUBLE},
+      </if>
+      <if test="record.puRemark != null" >
+        PU_REMARK = #{record.puRemark,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puTotalupper != null" >
+        PU_TOTALUPPER = #{record.puTotalupper,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puIndate != null" >
+        PU_INDATE = #{record.puIndate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.puPrintstatus != null" >
+        PU_PRINTSTATUS = #{record.puPrintstatus,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puPrintstatuscode != null" >
+        PU_PRINTSTATUSCODE = #{record.puPrintstatuscode,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puAcceptstatuscode != null" >
+        PU_ACCEPTSTATUSCODE = #{record.puAcceptstatuscode,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puAcceptstatus != null" >
+        PU_ACCEPTSTATUS = #{record.puAcceptstatus,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puStatuscode != null" >
+        PU_STATUSCODE = #{record.puStatuscode,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puStatus != null" >
+        PU_STATUS = #{record.puStatus,jdbcType=VARCHAR},
+      </if>
+      <if test="record.companyid != null" >
+        companyid = #{record.companyid,jdbcType=INTEGER},
+      </if>
+      <if test="record.updatemanid != null" >
+        updatemanid = #{record.updatemanid,jdbcType=INTEGER},
+      </if>
+      <if test="record.updatedate != null" >
+        updatedate = #{record.updatedate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.puText1 != null" >
+        pu_text1 = #{record.puText1,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puText2 != null" >
+        pu_text2 = #{record.puText2,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puText3 != null" >
+        pu_text3 = #{record.puText3,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puText4 != null" >
+        pu_text4 = #{record.puText4,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puText5 != null" >
+        pu_text5 = #{record.puText5,jdbcType=VARCHAR},
+      </if>
+      <if test="record.puShipaddresscode != null" >
+        PU_SHIPADDRESSCODE = #{record.puShipaddresscode,jdbcType=LONGVARCHAR},
+      </if>
+    </set>
+    <if test="_parameter != null" >
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExampleWithBLOBs" parameterType="map" >
+    update purchase
+    set pu_id = #{record.puId,jdbcType=INTEGER},
+      pu_code = #{record.puCode,jdbcType=VARCHAR},
+      pu_date = #{record.puDate,jdbcType=TIMESTAMP},
+      pu_vendid = #{record.puVendid,jdbcType=INTEGER},
+      PU_VENDCODE = #{record.puVendcode,jdbcType=VARCHAR},
+      PU_VENDNAME = #{record.puVendname,jdbcType=VARCHAR},
+      PU_BUYERID = #{record.puBuyerid,jdbcType=INTEGER},
+      PU_BUYERCODE = #{record.puBuyercode,jdbcType=VARCHAR},
+      PU_BUYERNAME = #{record.puBuyername,jdbcType=VARCHAR},
+      PU_DELIVERY = #{record.puDelivery,jdbcType=TIMESTAMP},
+      PU_TAXTOTAL = #{record.puTaxtotal,jdbcType=DOUBLE},
+      PU_TOTAL = #{record.puTotal,jdbcType=DOUBLE},
+      PU_REMARK = #{record.puRemark,jdbcType=VARCHAR},
+      PU_TOTALUPPER = #{record.puTotalupper,jdbcType=VARCHAR},
+      PU_INDATE = #{record.puIndate,jdbcType=TIMESTAMP},
+      PU_PRINTSTATUS = #{record.puPrintstatus,jdbcType=VARCHAR},
+      PU_PRINTSTATUSCODE = #{record.puPrintstatuscode,jdbcType=VARCHAR},
+      PU_ACCEPTSTATUSCODE = #{record.puAcceptstatuscode,jdbcType=VARCHAR},
+      PU_ACCEPTSTATUS = #{record.puAcceptstatus,jdbcType=VARCHAR},
+      PU_STATUSCODE = #{record.puStatuscode,jdbcType=VARCHAR},
+      PU_STATUS = #{record.puStatus,jdbcType=VARCHAR},
+      companyid = #{record.companyid,jdbcType=INTEGER},
+      updatemanid = #{record.updatemanid,jdbcType=INTEGER},
+      updatedate = #{record.updatedate,jdbcType=TIMESTAMP},
+      pu_text1 = #{record.puText1,jdbcType=VARCHAR},
+      pu_text2 = #{record.puText2,jdbcType=VARCHAR},
+      pu_text3 = #{record.puText3,jdbcType=VARCHAR},
+      pu_text4 = #{record.puText4,jdbcType=VARCHAR},
+      pu_text5 = #{record.puText5,jdbcType=VARCHAR},
+      PU_SHIPADDRESSCODE = #{record.puShipaddresscode,jdbcType=LONGVARCHAR}
+    <if test="_parameter != null" >
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map" >
+    update purchase
+    set pu_id = #{record.puId,jdbcType=INTEGER},
+      pu_code = #{record.puCode,jdbcType=VARCHAR},
+      pu_date = #{record.puDate,jdbcType=TIMESTAMP},
+      pu_vendid = #{record.puVendid,jdbcType=INTEGER},
+      PU_VENDCODE = #{record.puVendcode,jdbcType=VARCHAR},
+      PU_VENDNAME = #{record.puVendname,jdbcType=VARCHAR},
+      PU_BUYERID = #{record.puBuyerid,jdbcType=INTEGER},
+      PU_BUYERCODE = #{record.puBuyercode,jdbcType=VARCHAR},
+      PU_BUYERNAME = #{record.puBuyername,jdbcType=VARCHAR},
+      PU_DELIVERY = #{record.puDelivery,jdbcType=TIMESTAMP},
+      PU_TAXTOTAL = #{record.puTaxtotal,jdbcType=DOUBLE},
+      PU_TOTAL = #{record.puTotal,jdbcType=DOUBLE},
+      PU_REMARK = #{record.puRemark,jdbcType=VARCHAR},
+      PU_TOTALUPPER = #{record.puTotalupper,jdbcType=VARCHAR},
+      PU_INDATE = #{record.puIndate,jdbcType=TIMESTAMP},
+      PU_PRINTSTATUS = #{record.puPrintstatus,jdbcType=VARCHAR},
+      PU_PRINTSTATUSCODE = #{record.puPrintstatuscode,jdbcType=VARCHAR},
+      PU_ACCEPTSTATUSCODE = #{record.puAcceptstatuscode,jdbcType=VARCHAR},
+      PU_ACCEPTSTATUS = #{record.puAcceptstatus,jdbcType=VARCHAR},
+      PU_STATUSCODE = #{record.puStatuscode,jdbcType=VARCHAR},
+      PU_STATUS = #{record.puStatus,jdbcType=VARCHAR},
+      companyid = #{record.companyid,jdbcType=INTEGER},
+      updatemanid = #{record.updatemanid,jdbcType=INTEGER},
+      updatedate = #{record.updatedate,jdbcType=TIMESTAMP},
+      pu_text1 = #{record.puText1,jdbcType=VARCHAR},
+      pu_text2 = #{record.puText2,jdbcType=VARCHAR},
+      pu_text3 = #{record.puText3,jdbcType=VARCHAR},
+      pu_text4 = #{record.puText4,jdbcType=VARCHAR},
+      pu_text5 = #{record.puText5,jdbcType=VARCHAR}
+    <if test="_parameter != null" >
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.usoftchina.saas.purchase.po.Purchase" >
+    update purchase
+    <set >
+      <if test="puCode != null" >
+        pu_code = #{puCode,jdbcType=VARCHAR},
+      </if>
+      <if test="puDate != null" >
+        pu_date = #{puDate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="puVendid != null" >
+        pu_vendid = #{puVendid,jdbcType=INTEGER},
+      </if>
+      <if test="puVendcode != null" >
+        PU_VENDCODE = #{puVendcode,jdbcType=VARCHAR},
+      </if>
+      <if test="puVendname != null" >
+        PU_VENDNAME = #{puVendname,jdbcType=VARCHAR},
+      </if>
+      <if test="puBuyerid != null" >
+        PU_BUYERID = #{puBuyerid,jdbcType=INTEGER},
+      </if>
+      <if test="puBuyercode != null" >
+        PU_BUYERCODE = #{puBuyercode,jdbcType=VARCHAR},
+      </if>
+      <if test="puBuyername != null" >
+        PU_BUYERNAME = #{puBuyername,jdbcType=VARCHAR},
+      </if>
+      <if test="puDelivery != null" >
+        PU_DELIVERY = #{puDelivery,jdbcType=TIMESTAMP},
+      </if>
+      <if test="puTaxtotal != null" >
+        PU_TAXTOTAL = #{puTaxtotal,jdbcType=DOUBLE},
+      </if>
+      <if test="puTotal != null" >
+        PU_TOTAL = #{puTotal,jdbcType=DOUBLE},
+      </if>
+      <if test="puRemark != null" >
+        PU_REMARK = #{puRemark,jdbcType=VARCHAR},
+      </if>
+      <if test="puTotalupper != null" >
+        PU_TOTALUPPER = #{puTotalupper,jdbcType=VARCHAR},
+      </if>
+      <if test="puIndate != null" >
+        PU_INDATE = #{puIndate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="puPrintstatus != null" >
+        PU_PRINTSTATUS = #{puPrintstatus,jdbcType=VARCHAR},
+      </if>
+      <if test="puPrintstatuscode != null" >
+        PU_PRINTSTATUSCODE = #{puPrintstatuscode,jdbcType=VARCHAR},
+      </if>
+      <if test="puAcceptstatuscode != null" >
+        PU_ACCEPTSTATUSCODE = #{puAcceptstatuscode,jdbcType=VARCHAR},
+      </if>
+      <if test="puAcceptstatus != null" >
+        PU_ACCEPTSTATUS = #{puAcceptstatus,jdbcType=VARCHAR},
+      </if>
+      <if test="puStatuscode != null" >
+        PU_STATUSCODE = #{puStatuscode,jdbcType=VARCHAR},
+      </if>
+      <if test="puStatus != null" >
+        PU_STATUS = #{puStatus,jdbcType=VARCHAR},
+      </if>
+      <if test="companyid != null" >
+        companyid = #{companyid,jdbcType=INTEGER},
+      </if>
+      <if test="updatemanid != null" >
+        updatemanid = #{updatemanid,jdbcType=INTEGER},
+      </if>
+      <if test="updatedate != null" >
+        updatedate = #{updatedate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="puText1 != null" >
+        pu_text1 = #{puText1,jdbcType=VARCHAR},
+      </if>
+      <if test="puText2 != null" >
+        pu_text2 = #{puText2,jdbcType=VARCHAR},
+      </if>
+      <if test="puText3 != null" >
+        pu_text3 = #{puText3,jdbcType=VARCHAR},
+      </if>
+      <if test="puText4 != null" >
+        pu_text4 = #{puText4,jdbcType=VARCHAR},
+      </if>
+      <if test="puText5 != null" >
+        pu_text5 = #{puText5,jdbcType=VARCHAR},
+      </if>
+      <if test="puShipaddresscode != null" >
+        PU_SHIPADDRESSCODE = #{puShipaddresscode,jdbcType=LONGVARCHAR},
+      </if>
+    </set>
+    where pu_id = #{puId,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKeyWithBLOBs" parameterType="com.usoftchina.saas.purchase.po.Purchase" >
+    update purchase
+    set pu_code = #{puCode,jdbcType=VARCHAR},
+      pu_date = #{puDate,jdbcType=TIMESTAMP},
+      pu_vendid = #{puVendid,jdbcType=INTEGER},
+      PU_VENDCODE = #{puVendcode,jdbcType=VARCHAR},
+      PU_VENDNAME = #{puVendname,jdbcType=VARCHAR},
+      PU_BUYERID = #{puBuyerid,jdbcType=INTEGER},
+      PU_BUYERCODE = #{puBuyercode,jdbcType=VARCHAR},
+      PU_BUYERNAME = #{puBuyername,jdbcType=VARCHAR},
+      PU_DELIVERY = #{puDelivery,jdbcType=TIMESTAMP},
+      PU_TAXTOTAL = #{puTaxtotal,jdbcType=DOUBLE},
+      PU_TOTAL = #{puTotal,jdbcType=DOUBLE},
+      PU_REMARK = #{puRemark,jdbcType=VARCHAR},
+      PU_TOTALUPPER = #{puTotalupper,jdbcType=VARCHAR},
+      PU_INDATE = #{puIndate,jdbcType=TIMESTAMP},
+      PU_PRINTSTATUS = #{puPrintstatus,jdbcType=VARCHAR},
+      PU_PRINTSTATUSCODE = #{puPrintstatuscode,jdbcType=VARCHAR},
+      PU_ACCEPTSTATUSCODE = #{puAcceptstatuscode,jdbcType=VARCHAR},
+      PU_ACCEPTSTATUS = #{puAcceptstatus,jdbcType=VARCHAR},
+      PU_STATUSCODE = #{puStatuscode,jdbcType=VARCHAR},
+      PU_STATUS = #{puStatus,jdbcType=VARCHAR},
+      companyid = #{companyid,jdbcType=INTEGER},
+      updatemanid = #{updatemanid,jdbcType=INTEGER},
+      updatedate = #{updatedate,jdbcType=TIMESTAMP},
+      pu_text1 = #{puText1,jdbcType=VARCHAR},
+      pu_text2 = #{puText2,jdbcType=VARCHAR},
+      pu_text3 = #{puText3,jdbcType=VARCHAR},
+      pu_text4 = #{puText4,jdbcType=VARCHAR},
+      pu_text5 = #{puText5,jdbcType=VARCHAR},
+      PU_SHIPADDRESSCODE = #{puShipaddresscode,jdbcType=LONGVARCHAR}
+    where pu_id = #{puId,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.usoftchina.saas.purchase.po.Purchase" >
+    update purchase
+    set pu_code = #{puCode,jdbcType=VARCHAR},
+      pu_date = #{puDate,jdbcType=TIMESTAMP},
+      pu_vendid = #{puVendid,jdbcType=INTEGER},
+      PU_VENDCODE = #{puVendcode,jdbcType=VARCHAR},
+      PU_VENDNAME = #{puVendname,jdbcType=VARCHAR},
+      PU_BUYERID = #{puBuyerid,jdbcType=INTEGER},
+      PU_BUYERCODE = #{puBuyercode,jdbcType=VARCHAR},
+      PU_BUYERNAME = #{puBuyername,jdbcType=VARCHAR},
+      PU_DELIVERY = #{puDelivery,jdbcType=TIMESTAMP},
+      PU_TAXTOTAL = #{puTaxtotal,jdbcType=DOUBLE},
+      PU_TOTAL = #{puTotal,jdbcType=DOUBLE},
+      PU_REMARK = #{puRemark,jdbcType=VARCHAR},
+      PU_TOTALUPPER = #{puTotalupper,jdbcType=VARCHAR},
+      PU_INDATE = #{puIndate,jdbcType=TIMESTAMP},
+      PU_PRINTSTATUS = #{puPrintstatus,jdbcType=VARCHAR},
+      PU_PRINTSTATUSCODE = #{puPrintstatuscode,jdbcType=VARCHAR},
+      PU_ACCEPTSTATUSCODE = #{puAcceptstatuscode,jdbcType=VARCHAR},
+      PU_ACCEPTSTATUS = #{puAcceptstatus,jdbcType=VARCHAR},
+      PU_STATUSCODE = #{puStatuscode,jdbcType=VARCHAR},
+      PU_STATUS = #{puStatus,jdbcType=VARCHAR},
+      companyid = #{companyid,jdbcType=INTEGER},
+      updatemanid = #{updatemanid,jdbcType=INTEGER},
+      updatedate = #{updatedate,jdbcType=TIMESTAMP},
+      pu_text1 = #{puText1,jdbcType=VARCHAR},
+      pu_text2 = #{puText2,jdbcType=VARCHAR},
+      pu_text3 = #{puText3,jdbcType=VARCHAR},
+      pu_text4 = #{puText4,jdbcType=VARCHAR},
+      pu_text5 = #{puText5,jdbcType=VARCHAR}
+    where pu_id = #{puId,jdbcType=INTEGER}
+  </update>
 </mapper>

+ 553 - 0
applications/purchase/purchase-server/src/main/resources/mapper/PurchasedetailMapper.xml

@@ -0,0 +1,553 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="com.usoftchina.saas.purchase.mapper.PurchasedetailMapper" >
+  <resultMap id="BaseResultMap" type="com.usoftchina.saas.purchase.po.Purchasedetail" >
+    <id column="PD_ID" property="id" jdbcType="INTEGER" />
+    <result column="PD_PUID" property="pdPuid" jdbcType="INTEGER" />
+    <result column="PD_CODE" property="pdCode" jdbcType="VARCHAR" />
+    <result column="PD_DETNO" property="pdDetno" jdbcType="INTEGER" />
+    <result column="PD_PRODID" property="pdProdid" jdbcType="INTEGER" />
+    <result column="PD_PRODCODE" property="pdProdcode" jdbcType="VARCHAR" />
+    <result column="PD_UNIT" property="pdUnit" jdbcType="VARCHAR" />
+    <result column="PD_QTY" property="pdQty" jdbcType="DOUBLE" />
+    <result column="PD_PRICE" property="pdPrice" jdbcType="DOUBLE" />
+    <result column="PD_TOTAL" property="pdTotal" jdbcType="DOUBLE" />
+    <result column="PD_TAXTOTAL" property="pdTaxtotal" jdbcType="DOUBLE" />
+    <result column="PD_ACCEPTQTY" property="pdAcceptqty" jdbcType="DOUBLE" />
+    <result column="PD_DELIVERY" property="pdDelivery" jdbcType="DOUBLE" />
+    <result column="PD_SALECODE" property="pdSalecode" jdbcType="VARCHAR" />
+    <result column="PD_SALEDETNO" property="pdSaledetno" jdbcType="INTEGER" />
+    <result column="PD_SDID" property="pdSdid" jdbcType="INTEGER" />
+    <result column="companyid" property="companyId" jdbcType="INTEGER" />
+    <result column="updatemanid" property="updaterId" jdbcType="INTEGER" />
+    <result column="updatedate" property="updateTime" jdbcType="TIMESTAMP" />
+    <result column="pd_text1" property="pdText1" jdbcType="VARCHAR" />
+    <result column="pd_text2" property="pdText2" jdbcType="VARCHAR" />
+    <result column="pd_text3" property="pdText3" jdbcType="VARCHAR" />
+    <result column="pd_text4" property="pdText4" jdbcType="VARCHAR" />
+    <result column="pd_text5" property="pdText5" jdbcType="VARCHAR" />
+    <result column="pd_yqty" property="pdYqty" jdbcType="DOUBLE" />
+  </resultMap>
+  <sql id="Example_Where_Clause" >
+    <where >
+      <foreach collection="oredCriteria" item="criteria" separator="or" >
+        <if test="criteria.valid" >
+          <trim prefix="(" suffix=")" prefixOverrides="and" >
+            <foreach collection="criteria.criteria" item="criterion" >
+              <choose >
+                <when test="criterion.noValue" >
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue" >
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue" >
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue" >
+                  and ${criterion.condition}
+                  <foreach collection="criterion.value" item="listItem" open="(" close=")" separator="," >
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause" >
+    <where >
+      <foreach collection="example.oredCriteria" item="criteria" separator="or" >
+        <if test="criteria.valid" >
+          <trim prefix="(" suffix=")" prefixOverrides="and" >
+            <foreach collection="criteria.criteria" item="criterion" >
+              <choose >
+                <when test="criterion.noValue" >
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue" >
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue" >
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue" >
+                  and ${criterion.condition}
+                  <foreach collection="criterion.value" item="listItem" open="(" close=")" separator="," >
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List" >
+    PD_ID, PD_PUID, PD_CODE, PD_DETNO, PD_PRODID, PD_PRODCODE, PD_UNIT, PD_QTY, PD_PRICE,
+    PD_TOTAL, PD_TAXTOTAL, PD_ACCEPTQTY, PD_DELIVERY, PD_SALECODE, PD_SALEDETNO, PD_SDID,
+    companyid, updatemanid, updatedate, pd_text1, pd_text2, pd_text3, pd_text4, pd_text5,
+    pd_yqty
+  </sql>
+  <select id="selectByExample" resultMap="BaseResultMap" parameterType="com.usoftchina.saas.purchase.po.PurchasedetailExample" >
+    select
+    <if test="distinct" >
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from purchasedetail
+    <if test="_parameter != null" >
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null" >
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
+    select
+    <include refid="Base_Column_List" />
+    from purchasedetail
+    where PD_ID = #{pdId,jdbcType=INTEGER}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
+    delete from purchasedetail
+    where PD_ID = #{pdId,jdbcType=INTEGER}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.usoftchina.saas.purchase.po.PurchasedetailExample" >
+    delete from purchasedetail
+    <if test="_parameter != null" >
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.usoftchina.saas.purchase.po.Purchasedetail" >
+    insert into purchasedetail (PD_ID, PD_PUID, PD_CODE,
+    PD_DETNO, PD_PRODID, PD_PRODCODE,
+    PD_UNIT, PD_QTY, PD_PRICE,
+    PD_TOTAL, PD_TAXTOTAL, PD_ACCEPTQTY,
+    PD_DELIVERY, PD_SALECODE, PD_SALEDETNO,
+    PD_SDID, companyid, updatemanid,
+    updatedate, pd_text1, pd_text2,
+    pd_text3, pd_text4, pd_text5,
+    pd_yqty)
+    values (#{pdId,jdbcType=INTEGER}, #{pdPuid,jdbcType=INTEGER}, #{pdCode,jdbcType=VARCHAR},
+    #{pdDetno,jdbcType=INTEGER}, #{pdProdid,jdbcType=INTEGER}, #{pdProdcode,jdbcType=VARCHAR},
+    #{pdUnit,jdbcType=VARCHAR}, #{pdQty,jdbcType=DOUBLE}, #{pdPrice,jdbcType=DOUBLE},
+    #{pdTotal,jdbcType=DOUBLE}, #{pdTaxtotal,jdbcType=DOUBLE}, #{pdAcceptqty,jdbcType=DOUBLE},
+    #{pdDelivery,jdbcType=DOUBLE}, #{pdSalecode,jdbcType=VARCHAR}, #{pdSaledetno,jdbcType=INTEGER},
+    #{pdSdid,jdbcType=INTEGER}, #{companyid,jdbcType=INTEGER}, #{updatemanid,jdbcType=INTEGER},
+    #{updatedate,jdbcType=TIMESTAMP}, #{pdText1,jdbcType=VARCHAR}, #{pdText2,jdbcType=VARCHAR},
+    #{pdText3,jdbcType=VARCHAR}, #{pdText4,jdbcType=VARCHAR}, #{pdText5,jdbcType=VARCHAR},
+    #{pdYqty,jdbcType=DOUBLE})
+  </insert>
+  <insert id="insertSelective" parameterType="com.usoftchina.saas.purchase.po.Purchasedetail" >
+    insert into purchasedetail
+    <trim prefix="(" suffix=")" suffixOverrides="," >
+      <if test="pdId != null" >
+        PD_ID,
+      </if>
+      <if test="pdPuid != null" >
+        PD_PUID,
+      </if>
+      <if test="pdCode != null" >
+        PD_CODE,
+      </if>
+      <if test="pdDetno != null" >
+        PD_DETNO,
+      </if>
+      <if test="pdProdid != null" >
+        PD_PRODID,
+      </if>
+      <if test="pdProdcode != null" >
+        PD_PRODCODE,
+      </if>
+      <if test="pdUnit != null" >
+        PD_UNIT,
+      </if>
+      <if test="pdQty != null" >
+        PD_QTY,
+      </if>
+      <if test="pdPrice != null" >
+        PD_PRICE,
+      </if>
+      <if test="pdTotal != null" >
+        PD_TOTAL,
+      </if>
+      <if test="pdTaxtotal != null" >
+        PD_TAXTOTAL,
+      </if>
+      <if test="pdAcceptqty != null" >
+        PD_ACCEPTQTY,
+      </if>
+      <if test="pdDelivery != null" >
+        PD_DELIVERY,
+      </if>
+      <if test="pdSalecode != null" >
+        PD_SALECODE,
+      </if>
+      <if test="pdSaledetno != null" >
+        PD_SALEDETNO,
+      </if>
+      <if test="pdSdid != null" >
+        PD_SDID,
+      </if>
+      <if test="companyid != null" >
+        companyid,
+      </if>
+      <if test="updatemanid != null" >
+        updatemanid,
+      </if>
+      <if test="updatedate != null" >
+        updatedate,
+      </if>
+      <if test="pdText1 != null" >
+        pd_text1,
+      </if>
+      <if test="pdText2 != null" >
+        pd_text2,
+      </if>
+      <if test="pdText3 != null" >
+        pd_text3,
+      </if>
+      <if test="pdText4 != null" >
+        pd_text4,
+      </if>
+      <if test="pdText5 != null" >
+        pd_text5,
+      </if>
+      <if test="pdYqty != null" >
+        pd_yqty,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides="," >
+      <if test="pdId != null" >
+        #{pdId,jdbcType=INTEGER},
+      </if>
+      <if test="pdPuid != null" >
+        #{pdPuid,jdbcType=INTEGER},
+      </if>
+      <if test="pdCode != null" >
+        #{pdCode,jdbcType=VARCHAR},
+      </if>
+      <if test="pdDetno != null" >
+        #{pdDetno,jdbcType=INTEGER},
+      </if>
+      <if test="pdProdid != null" >
+        #{pdProdid,jdbcType=INTEGER},
+      </if>
+      <if test="pdProdcode != null" >
+        #{pdProdcode,jdbcType=VARCHAR},
+      </if>
+      <if test="pdUnit != null" >
+        #{pdUnit,jdbcType=VARCHAR},
+      </if>
+      <if test="pdQty != null" >
+        #{pdQty,jdbcType=DOUBLE},
+      </if>
+      <if test="pdPrice != null" >
+        #{pdPrice,jdbcType=DOUBLE},
+      </if>
+      <if test="pdTotal != null" >
+        #{pdTotal,jdbcType=DOUBLE},
+      </if>
+      <if test="pdTaxtotal != null" >
+        #{pdTaxtotal,jdbcType=DOUBLE},
+      </if>
+      <if test="pdAcceptqty != null" >
+        #{pdAcceptqty,jdbcType=DOUBLE},
+      </if>
+      <if test="pdDelivery != null" >
+        #{pdDelivery,jdbcType=DOUBLE},
+      </if>
+      <if test="pdSalecode != null" >
+        #{pdSalecode,jdbcType=VARCHAR},
+      </if>
+      <if test="pdSaledetno != null" >
+        #{pdSaledetno,jdbcType=INTEGER},
+      </if>
+      <if test="pdSdid != null" >
+        #{pdSdid,jdbcType=INTEGER},
+      </if>
+      <if test="companyid != null" >
+        #{companyid,jdbcType=INTEGER},
+      </if>
+      <if test="updatemanid != null" >
+        #{updatemanid,jdbcType=INTEGER},
+      </if>
+      <if test="updatedate != null" >
+        #{updatedate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="pdText1 != null" >
+        #{pdText1,jdbcType=VARCHAR},
+      </if>
+      <if test="pdText2 != null" >
+        #{pdText2,jdbcType=VARCHAR},
+      </if>
+      <if test="pdText3 != null" >
+        #{pdText3,jdbcType=VARCHAR},
+      </if>
+      <if test="pdText4 != null" >
+        #{pdText4,jdbcType=VARCHAR},
+      </if>
+      <if test="pdText5 != null" >
+        #{pdText5,jdbcType=VARCHAR},
+      </if>
+      <if test="pdYqty != null" >
+        #{pdYqty,jdbcType=DOUBLE},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.usoftchina.saas.purchase.po.PurchasedetailExample" resultType="java.lang.Integer" >
+    select count(*) from purchasedetail
+    <if test="_parameter != null" >
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map" >
+    update purchasedetail
+    <set >
+      <if test="record.pdId != null" >
+        PD_ID = #{record.pdId,jdbcType=INTEGER},
+      </if>
+      <if test="record.pdPuid != null" >
+        PD_PUID = #{record.pdPuid,jdbcType=INTEGER},
+      </if>
+      <if test="record.pdCode != null" >
+        PD_CODE = #{record.pdCode,jdbcType=VARCHAR},
+      </if>
+      <if test="record.pdDetno != null" >
+        PD_DETNO = #{record.pdDetno,jdbcType=INTEGER},
+      </if>
+      <if test="record.pdProdid != null" >
+        PD_PRODID = #{record.pdProdid,jdbcType=INTEGER},
+      </if>
+      <if test="record.pdProdcode != null" >
+        PD_PRODCODE = #{record.pdProdcode,jdbcType=VARCHAR},
+      </if>
+      <if test="record.pdUnit != null" >
+        PD_UNIT = #{record.pdUnit,jdbcType=VARCHAR},
+      </if>
+      <if test="record.pdQty != null" >
+        PD_QTY = #{record.pdQty,jdbcType=DOUBLE},
+      </if>
+      <if test="record.pdPrice != null" >
+        PD_PRICE = #{record.pdPrice,jdbcType=DOUBLE},
+      </if>
+      <if test="record.pdTotal != null" >
+        PD_TOTAL = #{record.pdTotal,jdbcType=DOUBLE},
+      </if>
+      <if test="record.pdTaxtotal != null" >
+        PD_TAXTOTAL = #{record.pdTaxtotal,jdbcType=DOUBLE},
+      </if>
+      <if test="record.pdAcceptqty != null" >
+        PD_ACCEPTQTY = #{record.pdAcceptqty,jdbcType=DOUBLE},
+      </if>
+      <if test="record.pdDelivery != null" >
+        PD_DELIVERY = #{record.pdDelivery,jdbcType=DOUBLE},
+      </if>
+      <if test="record.pdSalecode != null" >
+        PD_SALECODE = #{record.pdSalecode,jdbcType=VARCHAR},
+      </if>
+      <if test="record.pdSaledetno != null" >
+        PD_SALEDETNO = #{record.pdSaledetno,jdbcType=INTEGER},
+      </if>
+      <if test="record.pdSdid != null" >
+        PD_SDID = #{record.pdSdid,jdbcType=INTEGER},
+      </if>
+      <if test="record.companyid != null" >
+        companyid = #{record.companyid,jdbcType=INTEGER},
+      </if>
+      <if test="record.updatemanid != null" >
+        updatemanid = #{record.updatemanid,jdbcType=INTEGER},
+      </if>
+      <if test="record.updatedate != null" >
+        updatedate = #{record.updatedate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.pdText1 != null" >
+        pd_text1 = #{record.pdText1,jdbcType=VARCHAR},
+      </if>
+      <if test="record.pdText2 != null" >
+        pd_text2 = #{record.pdText2,jdbcType=VARCHAR},
+      </if>
+      <if test="record.pdText3 != null" >
+        pd_text3 = #{record.pdText3,jdbcType=VARCHAR},
+      </if>
+      <if test="record.pdText4 != null" >
+        pd_text4 = #{record.pdText4,jdbcType=VARCHAR},
+      </if>
+      <if test="record.pdText5 != null" >
+        pd_text5 = #{record.pdText5,jdbcType=VARCHAR},
+      </if>
+      <if test="record.pdYqty != null" >
+        pd_yqty = #{record.pdYqty,jdbcType=DOUBLE},
+      </if>
+    </set>
+    <if test="_parameter != null" >
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map" >
+    update purchasedetail
+    set PD_ID = #{record.pdId,jdbcType=INTEGER},
+    PD_PUID = #{record.pdPuid,jdbcType=INTEGER},
+    PD_CODE = #{record.pdCode,jdbcType=VARCHAR},
+    PD_DETNO = #{record.pdDetno,jdbcType=INTEGER},
+    PD_PRODID = #{record.pdProdid,jdbcType=INTEGER},
+    PD_PRODCODE = #{record.pdProdcode,jdbcType=VARCHAR},
+    PD_UNIT = #{record.pdUnit,jdbcType=VARCHAR},
+    PD_QTY = #{record.pdQty,jdbcType=DOUBLE},
+    PD_PRICE = #{record.pdPrice,jdbcType=DOUBLE},
+    PD_TOTAL = #{record.pdTotal,jdbcType=DOUBLE},
+    PD_TAXTOTAL = #{record.pdTaxtotal,jdbcType=DOUBLE},
+    PD_ACCEPTQTY = #{record.pdAcceptqty,jdbcType=DOUBLE},
+    PD_DELIVERY = #{record.pdDelivery,jdbcType=DOUBLE},
+    PD_SALECODE = #{record.pdSalecode,jdbcType=VARCHAR},
+    PD_SALEDETNO = #{record.pdSaledetno,jdbcType=INTEGER},
+    PD_SDID = #{record.pdSdid,jdbcType=INTEGER},
+    companyid = #{record.companyid,jdbcType=INTEGER},
+    updatemanid = #{record.updatemanid,jdbcType=INTEGER},
+    updatedate = #{record.updatedate,jdbcType=TIMESTAMP},
+    pd_text1 = #{record.pdText1,jdbcType=VARCHAR},
+    pd_text2 = #{record.pdText2,jdbcType=VARCHAR},
+    pd_text3 = #{record.pdText3,jdbcType=VARCHAR},
+    pd_text4 = #{record.pdText4,jdbcType=VARCHAR},
+    pd_text5 = #{record.pdText5,jdbcType=VARCHAR},
+    pd_yqty = #{record.pdYqty,jdbcType=DOUBLE}
+    <if test="_parameter != null" >
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.usoftchina.saas.purchase.po.Purchasedetail" >
+    update purchasedetail
+    <set >
+      <if test="pdPuid != null" >
+        PD_PUID = #{pdPuid,jdbcType=INTEGER},
+      </if>
+      <if test="pdCode != null" >
+        PD_CODE = #{pdCode,jdbcType=VARCHAR},
+      </if>
+      <if test="pdDetno != null" >
+        PD_DETNO = #{pdDetno,jdbcType=INTEGER},
+      </if>
+      <if test="pdProdid != null" >
+        PD_PRODID = #{pdProdid,jdbcType=INTEGER},
+      </if>
+      <if test="pdProdcode != null" >
+        PD_PRODCODE = #{pdProdcode,jdbcType=VARCHAR},
+      </if>
+      <if test="pdUnit != null" >
+        PD_UNIT = #{pdUnit,jdbcType=VARCHAR},
+      </if>
+      <if test="pdQty != null" >
+        PD_QTY = #{pdQty,jdbcType=DOUBLE},
+      </if>
+      <if test="pdPrice != null" >
+        PD_PRICE = #{pdPrice,jdbcType=DOUBLE},
+      </if>
+      <if test="pdTotal != null" >
+        PD_TOTAL = #{pdTotal,jdbcType=DOUBLE},
+      </if>
+      <if test="pdTaxtotal != null" >
+        PD_TAXTOTAL = #{pdTaxtotal,jdbcType=DOUBLE},
+      </if>
+      <if test="pdAcceptqty != null" >
+        PD_ACCEPTQTY = #{pdAcceptqty,jdbcType=DOUBLE},
+      </if>
+      <if test="pdDelivery != null" >
+        PD_DELIVERY = #{pdDelivery,jdbcType=DOUBLE},
+      </if>
+      <if test="pdSalecode != null" >
+        PD_SALECODE = #{pdSalecode,jdbcType=VARCHAR},
+      </if>
+      <if test="pdSaledetno != null" >
+        PD_SALEDETNO = #{pdSaledetno,jdbcType=INTEGER},
+      </if>
+      <if test="pdSdid != null" >
+        PD_SDID = #{pdSdid,jdbcType=INTEGER},
+      </if>
+      <if test="companyid != null" >
+        companyid = #{companyid,jdbcType=INTEGER},
+      </if>
+      <if test="updatemanid != null" >
+        updatemanid = #{updatemanid,jdbcType=INTEGER},
+      </if>
+      <if test="updatedate != null" >
+        updatedate = #{updatedate,jdbcType=TIMESTAMP},
+      </if>
+      <if test="pdText1 != null" >
+        pd_text1 = #{pdText1,jdbcType=VARCHAR},
+      </if>
+      <if test="pdText2 != null" >
+        pd_text2 = #{pdText2,jdbcType=VARCHAR},
+      </if>
+      <if test="pdText3 != null" >
+        pd_text3 = #{pdText3,jdbcType=VARCHAR},
+      </if>
+      <if test="pdText4 != null" >
+        pd_text4 = #{pdText4,jdbcType=VARCHAR},
+      </if>
+      <if test="pdText5 != null" >
+        pd_text5 = #{pdText5,jdbcType=VARCHAR},
+      </if>
+      <if test="pdYqty != null" >
+        pd_yqty = #{pdYqty,jdbcType=DOUBLE},
+      </if>
+    </set>
+    where PD_ID = #{pdId,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.usoftchina.saas.purchase.po.Purchasedetail" >
+    update purchasedetail
+    set PD_PUID = #{pdPuid,jdbcType=INTEGER},
+    PD_CODE = #{pdCode,jdbcType=VARCHAR},
+    PD_DETNO = #{pdDetno,jdbcType=INTEGER},
+    PD_PRODID = #{pdProdid,jdbcType=INTEGER},
+    PD_PRODCODE = #{pdProdcode,jdbcType=VARCHAR},
+    PD_UNIT = #{pdUnit,jdbcType=VARCHAR},
+    PD_QTY = #{pdQty,jdbcType=DOUBLE},
+    PD_PRICE = #{pdPrice,jdbcType=DOUBLE},
+    PD_TOTAL = #{pdTotal,jdbcType=DOUBLE},
+    PD_TAXTOTAL = #{pdTaxtotal,jdbcType=DOUBLE},
+    PD_ACCEPTQTY = #{pdAcceptqty,jdbcType=DOUBLE},
+    PD_DELIVERY = #{pdDelivery,jdbcType=DOUBLE},
+    PD_SALECODE = #{pdSalecode,jdbcType=VARCHAR},
+    PD_SALEDETNO = #{pdSaledetno,jdbcType=INTEGER},
+    PD_SDID = #{pdSdid,jdbcType=INTEGER},
+    companyid = #{companyid,jdbcType=INTEGER},
+    updatemanid = #{updatemanid,jdbcType=INTEGER},
+    updatedate = #{updatedate,jdbcType=TIMESTAMP},
+    pd_text1 = #{pdText1,jdbcType=VARCHAR},
+    pd_text2 = #{pdText2,jdbcType=VARCHAR},
+    pd_text3 = #{pdText3,jdbcType=VARCHAR},
+    pd_text4 = #{pdText4,jdbcType=VARCHAR},
+    pd_text5 = #{pdText5,jdbcType=VARCHAR},
+    pd_yqty = #{pdYqty,jdbcType=DOUBLE}
+    where PD_ID = #{pdId,jdbcType=INTEGER}
+  </update>
+  <insert id="batchInsert" parameterType="java.util.List" >
+    insert into purchasedetail ( PD_PUID, PD_CODE,
+    PD_DETNO, PD_PRODID, PD_PRODCODE,
+    PD_UNIT, PD_QTY, PD_PRICE,
+    PD_TOTAL, PD_TAXTOTAL, PD_ACCEPTQTY,
+    PD_DELIVERY, PD_SALECODE, PD_SALEDETNO,
+    PD_SDID, companyid, updatemanid,
+    updatedate, pd_text1, pd_text2,
+    pd_text3, pd_text4, pd_text5,
+    pd_yqty)
+    values
+    <foreach collection="list" item="item" index="index" open="" close="" separator=",">
+      (
+      #{item.pdPuid,jdbcType=INTEGER}, #{item.pdCode,jdbcType=VARCHAR},
+      #{item.pdDetno,jdbcType=INTEGER}, #{item.pdProdid,jdbcType=INTEGER}, #{item.pdProdcode,jdbcType=VARCHAR},
+      #{item.pdUnit,jdbcType=VARCHAR}, #{item.pdQty,jdbcType=DOUBLE}, #{item.pdPrice,jdbcType=DOUBLE},
+      #{item.pdTotal,jdbcType=DOUBLE}, #{item.pdTaxtotal,jdbcType=DOUBLE}, #{item.pdAcceptqty,jdbcType=DOUBLE},
+      #{item.pdDelivery,jdbcType=DOUBLE}, #{item.pdSalecode,jdbcType=VARCHAR}, #{item.pdSaledetno,jdbcType=INTEGER},
+      #{item.pdSdid,jdbcType=INTEGER}, #{item.companyid,jdbcType=INTEGER}, #{item.updatemanid,jdbcType=INTEGER},
+      #{item.updatedate,jdbcType=TIMESTAMP}, #{item.pdText1,jdbcType=VARCHAR}, #{item.pdText2,jdbcType=VARCHAR},
+      #{item.pdText3,jdbcType=VARCHAR}, #{item.pdText4,jdbcType=VARCHAR}, #{item.pdText5,jdbcType=VARCHAR},
+      #{item.pdYqty,jdbcType=DOUBLE}
+      )
+    </foreach>
+  </insert>
+</mapper>