Browse Source

Merge branch 'dev' of ssh://10.10.100.21/source/saas-platform into dev

zhuth 7 years ago
parent
commit
ad88b65789
45 changed files with 709 additions and 294 deletions
  1. 2 1
      applications/common-dto/src/main/java/com/usoftchina/saas/common/dto/BatchDealBaseDTO.java
  2. 30 0
      applications/common-dto/src/main/java/com/usoftchina/saas/common/dto/ComboDTO.java
  3. 2 2
      applications/document/document-api/src/main/java/com/usoftchina/saas/document/api/ProductApi.java
  4. 2 2
      applications/document/document-api/src/main/java/com/usoftchina/saas/document/api/VendorApi.java
  5. 14 0
      applications/document/document-api/src/main/java/com/usoftchina/saas/document/api/WarehouseApi.java
  6. 15 3
      applications/document/document-dto/src/main/java/com.usoftchina.saas.document.dto/ProductDTO.java
  7. 2 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/DocumentApplication.java
  8. 12 5
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/ProductController.java
  9. 5 13
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/VendorController.java
  10. 28 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/WarehouseController.java
  11. 2 1
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/ProductMapper.java
  12. 0 1
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/VendorMapper.java
  13. 12 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/WarehouseMapper.java
  14. 144 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/po/Warehouse.java
  15. 13 5
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/Impl/ProductServiceImpl.java
  16. 7 3
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/Impl/VendorServiceImpl.java
  17. 24 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/Impl/WarehouseServiceImpl.java
  18. 6 1
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/ProductService.java
  19. 2 1
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/VendorService.java
  20. 13 0
      applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/WarehouseService.java
  21. 4 0
      applications/document/document-server/src/main/resources/mapper/ProductMapper.xml
  22. 32 0
      applications/document/document-server/src/main/resources/mapper/WarehouseMapper.xml
  23. 4 3
      applications/document/document-server/src/test/java/com/usoftchina/saas/document/service/VendorTest.java
  24. 33 0
      applications/document/document-server/src/test/java/com/usoftchina/saas/document/service/WarehouseTest.java
  25. 0 36
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/controller/ComponentController.java
  26. 11 9
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/controller/PurchaseController.java
  27. 4 3
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/PurchaseService.java
  28. 25 19
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java
  29. 1 1
      applications/purchase/purchase-server/src/main/resources/mapper/PurchaseMapper.xml
  30. 1 1
      applications/purchase/purchase-server/src/main/resources/mapper/PurchasedetailMapper.xml
  31. 0 10
      framework/core/src/main/java/com/usoftchina/saas/utils/StringUtils.java
  32. 1 1
      frontend/saas-web/app/util/BaseUtil.js
  33. 13 23
      frontend/saas-web/app/util/FormUtil.js
  34. 24 15
      frontend/saas-web/app/util/QueryUtil.js
  35. 23 11
      frontend/saas-web/app/view/core/dbfind/DbfindGridPanel.js
  36. 3 1
      frontend/saas-web/app/view/core/dbfind/DbfindTrigger.js
  37. 10 9
      frontend/saas-web/app/view/core/form/FormPanel.js
  38. 19 16
      frontend/saas-web/app/view/core/form/FormPanelController.js
  39. 3 5
      frontend/saas-web/app/view/core/form/RemoteCombo.js
  40. 30 9
      frontend/saas-web/app/view/core/form/field/DetailGridField.js
  41. 23 34
      frontend/saas-web/app/view/core/query/QueryGridPanel.js
  42. 4 5
      frontend/saas-web/app/view/core/query/QueryPanel.js
  43. 17 14
      frontend/saas-web/app/view/test/order/FormController.js
  44. 65 30
      frontend/saas-web/app/view/test/order/FormPanel.js
  45. 24 1
      frontend/saas-web/app/view/test/query/QueryPanel.js

+ 2 - 1
applications/common-dto/src/main/java/com/usoftchina/saas/common/dto/BatchDealBaseDTO.java

@@ -1,5 +1,6 @@
 package com.usoftchina.saas.common.dto;
 
+import java.io.Serializable;
 import java.util.List;
 
 /**
@@ -7,7 +8,7 @@ import java.util.List;
  * @author: guq
  * @create: 2018-10-15 13:46
  **/
-public class BatchDealBaseDTO {
+public class BatchDealBaseDTO implements Serializable{
     private List<DocBaseDTO> baseDTOs;
 
     public List<DocBaseDTO> getBaseDTOs() {

+ 30 - 0
applications/common-dto/src/main/java/com/usoftchina/saas/common/dto/ComboDTO.java

@@ -0,0 +1,30 @@
+package com.usoftchina.saas.common.dto;
+
+import java.io.Serializable;
+
+/**
+ * 下拉框
+ * @author chenwei
+ * @Date 2018/10/16
+ */
+public class ComboDTO implements Serializable {
+
+    private String display;
+    private String value;
+
+    public String getDisplay() {
+        return display;
+    }
+
+    public void setDisplay(String display) {
+        this.display = display;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+}

+ 2 - 2
applications/document/document-api/src/main/java/com/usoftchina/saas/document/api/ProductApi.java

@@ -18,8 +18,8 @@ public interface ProductApi {
      * @param condition
      * @return
      */
-    @GetMapping("/api/document/product/getProductsByCondition")
-    public List<ProductDTO> getProductsByCondition(@RequestParam(value = "page") PageRequest page, @RequestParam(value = "condition") String condition);
+   /* @GetMapping("/api/document/product/getProductsByCondition")
+    public List<ProductDTO> getProductsByCondition(@RequestParam(value = "page") PageRequest page, @RequestParam(value = "condition") String condition);*/
 
     /**
     * @Description

+ 2 - 2
applications/document/document-api/src/main/java/com/usoftchina/saas/document/api/VendorApi.java

@@ -17,6 +17,6 @@ public interface VendorApi {
      * @param condition
      * @return
      */
-    @GetMapping("/api/document/vendor/getVendorsByCondition")
-    public List<VendorDTO> getVendorsByCondition(@RequestParam(value = "page") PageRequest page, @RequestParam(value = "condition") String condition);
+    /*@GetMapping("/api/document/vendor/getVendorsByCondition")
+    public List<VendorDTO> getVendorsByCondition(@RequestParam(value = "page") PageRequest page, @RequestParam(value = "condition") String condition);*/
 }

+ 14 - 0
applications/document/document-api/src/main/java/com/usoftchina/saas/document/api/WarehouseApi.java

@@ -0,0 +1,14 @@
+package com.usoftchina.saas.document.api;
+
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+
+import java.util.Map;
+
+@FeignClient(name = "document-server")
+public interface WarehouseApi {
+
+    @GetMapping("/api/document/warehouse/post")
+    public String callProcedure(Map<String, Object> param);
+
+}

+ 15 - 3
applications/document/document-dto/src/main/java/com.usoftchina.saas.document.dto/ProductDTO.java

@@ -4,18 +4,18 @@ import java.io.Serializable;
 
 public class ProductDTO implements Serializable {
 
-    private String pr_id;
+    private long pr_id;
     private String pr_code;
     private String pr_detail;
     private String pr_spec;
     private String pr_orispeccode;
     private String pr_brand;
 
-    public String getPr_id() {
+    public long getPr_id() {
         return pr_id;
     }
 
-    public void setPr_id(String pr_id) {
+    public void setPr_id(long pr_id) {
         this.pr_id = pr_id;
     }
 
@@ -58,4 +58,16 @@ public class ProductDTO implements Serializable {
     public void setPr_brand(String pr_brand) {
         this.pr_brand = pr_brand;
     }
+
+    @Override
+    public String toString() {
+        return "ProductDTO{" +
+                "pr_id='" + pr_id + '\'' +
+                ", pr_code='" + pr_code + '\'' +
+                ", pr_detail='" + pr_detail + '\'' +
+                ", pr_spec='" + pr_spec + '\'' +
+                ", pr_orispeccode='" + pr_orispeccode + '\'' +
+                ", pr_brand='" + pr_brand + '\'' +
+                '}';
+    }
 }

+ 2 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/DocumentApplication.java

@@ -7,6 +7,8 @@ import org.springframework.boot.SpringBootConfiguration;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
 import org.springframework.transaction.annotation.EnableTransactionManagement;
+import org.springframework.web.servlet.config.annotation.CorsRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
 
 @SpringBootApplication
 @EnableEurekaClient

+ 12 - 5
applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/ProductController.java

@@ -1,10 +1,11 @@
 package com.usoftchina.saas.document.controller;
 
+import com.usoftchina.saas.base.Result;
+import com.usoftchina.saas.common.dto.ComboDTO;
 import com.usoftchina.saas.common.dto.DocReqDTO;
-import com.usoftchina.saas.document.po.Product;
+import com.usoftchina.saas.document.dto.ProductDTO;
 import com.usoftchina.saas.document.service.ProductService;
 import com.usoftchina.saas.page.PageRequest;
-import feign.Param;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
@@ -21,9 +22,15 @@ public class ProductController {
     private ProductService productService;
 
     @RequestMapping("/getProductsByCondition")
-    public List<Product> getProductsByCondition(PageRequest page, DocReqDTO docReqDTO){
-        List<Product> productList = productService.getProductsByCondition(page, docReqDTO);
-        return productList;
+    public Result<List<ProductDTO>> getProductsByCondition(PageRequest page, DocReqDTO docReqDTO){
+        List<ProductDTO> productList = productService.getProductsByCondition(page, docReqDTO);
+        return Result.success(productList);
+    }
+
+    @RequestMapping("/getProdUnit")
+    public Result<List<ComboDTO>> getProdUnit() {
+        List<ComboDTO> prodUnitList = productService.getProdUnit();
+        return Result.success(prodUnitList);
     }
 
     @RequestMapping("/updateLatestPurchasePrice")

+ 5 - 13
applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/VendorController.java

@@ -1,7 +1,8 @@
 package com.usoftchina.saas.document.controller;
 
+import com.usoftchina.saas.base.Result;
 import com.usoftchina.saas.common.dto.DocReqDTO;
-import com.usoftchina.saas.document.po.Vendor;
+import com.usoftchina.saas.document.dto.VendorDTO;
 import com.usoftchina.saas.document.service.VendorService;
 import com.usoftchina.saas.page.PageRequest;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -18,18 +19,9 @@ public class VendorController {
     @Autowired
     private VendorService vendorService;
 
-
-    @RequestMapping(value = "")
-    @ResponseBody
-    public String getVendorList(){
-
-        return "HelloWorld!";
-    }
-
     @RequestMapping("/getVendorsByCondition")
-    @ResponseBody
-    public List<Vendor> getVendorsByCondition(PageRequest page, DocReqDTO docReqDTO){
-        List<Vendor> vendorList = vendorService.getVendorsByCondition(page, docReqDTO);
-        return vendorList;
+    public Result<List<VendorDTO>> getVendorsByCondition(PageRequest page, DocReqDTO docReqDTO){
+        List<VendorDTO> vendorList = vendorService.getVendorsByCondition(page, docReqDTO);
+        return Result.success(vendorList);
     }
 }

+ 28 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/controller/WarehouseController.java

@@ -0,0 +1,28 @@
+package com.usoftchina.saas.document.controller;
+
+import com.usoftchina.saas.document.service.WarehouseService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
+
+@RestController
+@RequestMapping("/api/document/warehouse")
+public class WarehouseController {
+
+    @Autowired
+    private WarehouseService warehouseService;
+
+    /**
+     * 过账
+     * @return
+     */
+    @GetMapping("/post")
+    public String post(Map<String, Object> map){
+        String result = warehouseService.callProcedure(map);
+        return result;
+    }
+
+}

+ 2 - 1
applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/ProductMapper.java

@@ -1,15 +1,16 @@
 package com.usoftchina.saas.document.mapper;
 
 import com.usoftchina.saas.base.mapper.CommonBaseMapper;
+import com.usoftchina.saas.common.dto.ComboDTO;
 import com.usoftchina.saas.common.dto.DocReqDTO;
 import com.usoftchina.saas.document.po.Product;
-import com.usoftchina.saas.page.PageRequest;
 
 import java.util.List;
 
 public interface ProductMapper extends CommonBaseMapper<Product> {
 
     List<Product> getProductsByCondition(DocReqDTO docReqDTO);
+    List<ComboDTO> getProdUnit();
     void updateLatestPurchasePrice(Long pu_id);
 
 }

+ 0 - 1
applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/VendorMapper.java

@@ -3,7 +3,6 @@ package com.usoftchina.saas.document.mapper;
 import com.usoftchina.saas.base.mapper.CommonBaseMapper;
 import com.usoftchina.saas.common.dto.DocReqDTO;
 import com.usoftchina.saas.document.po.Vendor;
-import com.usoftchina.saas.page.PageRequest;
 
 import java.util.List;
 

+ 12 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/WarehouseMapper.java

@@ -0,0 +1,12 @@
+package com.usoftchina.saas.document.mapper;
+
+import com.usoftchina.saas.base.mapper.CommonBaseMapper;
+import com.usoftchina.saas.document.po.Warehouse;
+
+import java.util.Map;
+
+public interface WarehouseMapper extends CommonBaseMapper<Warehouse> {
+
+    String callProcedure(Map<String, Object> map);
+
+}

+ 144 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/po/Warehouse.java

@@ -0,0 +1,144 @@
+package com.usoftchina.saas.document.po;
+
+import com.usoftchina.saas.base.entity.CommonBaseEntity;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 仓库资料
+ * @author chenwei
+ * @Date 2018/10/16
+ */
+public class Warehouse extends CommonBaseEntity implements Serializable {
+
+    private long wh_id;
+    private String wh_code;
+    private String wh_type;
+    private String wh_description;
+    private String wh_statuscode;
+    private String wh_status;
+    private long wh_recordid;
+    private String wh_recorder;
+    /**
+     * 录入日期
+     */
+    private Date wh_date;
+    private String wh_text1;
+    private String wh_text2;
+    private String wh_text3;
+    private String wh_text4;
+    private String wh_text5;
+
+    public long getWh_id() {
+        return wh_id;
+    }
+
+    public void setWh_id(long wh_id) {
+        this.wh_id = wh_id;
+    }
+
+    public String getWh_code() {
+        return wh_code;
+    }
+
+    public void setWh_code(String wh_code) {
+        this.wh_code = wh_code;
+    }
+
+    public String getWh_type() {
+        return wh_type;
+    }
+
+    public void setWh_type(String wh_type) {
+        this.wh_type = wh_type;
+    }
+
+    public String getWh_description() {
+        return wh_description;
+    }
+
+    public void setWh_description(String wh_description) {
+        this.wh_description = wh_description;
+    }
+
+    public String getWh_statuscode() {
+        return wh_statuscode;
+    }
+
+    public void setWh_statuscode(String wh_statuscode) {
+        this.wh_statuscode = wh_statuscode;
+    }
+
+    public String getWh_status() {
+        return wh_status;
+    }
+
+    public void setWh_status(String wh_status) {
+        this.wh_status = wh_status;
+    }
+
+    public long getWh_recordid() {
+        return wh_recordid;
+    }
+
+    public void setWh_recordid(long wh_recordid) {
+        this.wh_recordid = wh_recordid;
+    }
+
+    public String getWh_recorder() {
+        return wh_recorder;
+    }
+
+    public void setWh_recorder(String wh_recorder) {
+        this.wh_recorder = wh_recorder;
+    }
+
+    public Date getWh_date() {
+        return wh_date;
+    }
+
+    public void setWh_date(Date wh_date) {
+        this.wh_date = wh_date;
+    }
+
+    public String getWh_text1() {
+        return wh_text1;
+    }
+
+    public void setWh_text1(String wh_text1) {
+        this.wh_text1 = wh_text1;
+    }
+
+    public String getWh_text2() {
+        return wh_text2;
+    }
+
+    public void setWh_text2(String wh_text2) {
+        this.wh_text2 = wh_text2;
+    }
+
+    public String getWh_text3() {
+        return wh_text3;
+    }
+
+    public void setWh_text3(String wh_text3) {
+        this.wh_text3 = wh_text3;
+    }
+
+    public String getWh_text4() {
+        return wh_text4;
+    }
+
+    public void setWh_text4(String wh_text4) {
+        this.wh_text4 = wh_text4;
+    }
+
+    public String getWh_text5() {
+        return wh_text5;
+    }
+
+    public void setWh_text5(String wh_text5) {
+        this.wh_text5 = wh_text5;
+    }
+}

+ 13 - 5
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/Impl/ProductServiceImpl.java

@@ -3,12 +3,14 @@ package com.usoftchina.saas.document.service.Impl;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.usoftchina.saas.base.service.CommonBaseServiceImpl;
+import com.usoftchina.saas.common.dto.ComboDTO;
 import com.usoftchina.saas.common.dto.DocReqDTO;
+import com.usoftchina.saas.document.dto.ProductDTO;
 import com.usoftchina.saas.document.mapper.ProductMapper;
 import com.usoftchina.saas.document.po.Product;
 import com.usoftchina.saas.document.service.ProductService;
 import com.usoftchina.saas.page.PageRequest;
-import org.apache.commons.lang.StringUtils;
+import com.usoftchina.saas.utils.BeanMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -21,7 +23,7 @@ public class ProductServiceImpl extends CommonBaseServiceImpl<ProductMapper, Pro
     private ProductMapper productMapper;
 
     @Override
-    public List<Product> getProductsByCondition(PageRequest page, DocReqDTO docReqDTO) {
+    public List<ProductDTO> getProductsByCondition(PageRequest page, DocReqDTO docReqDTO) {
         //设置分页
         if (null == page || page.getSize() == 0 || page.getNumber() == 0) {
             page = new PageRequest();
@@ -29,11 +31,17 @@ public class ProductServiceImpl extends CommonBaseServiceImpl<ProductMapper, Pro
             page.setSize(10);
         }
         PageHelper.startPage(page.getNumber(), page.getSize());
-        System.out.println("condition:    " + docReqDTO);
         List<Product> productList = productMapper.getProductsByCondition(docReqDTO);
+        //Product To ProductDTO
+        List<ProductDTO> productDTOList = BeanMapper.mapList(productList, ProductDTO.class);
         //取分页信息
-        PageInfo<Product> pageInfo = new PageInfo<Product>(productList);
-        return productList;
+        PageInfo<ProductDTO> pageInfo = new PageInfo<ProductDTO>(productDTOList);
+        return productDTOList;
+    }
+
+    @Override
+    public List<ComboDTO> getProdUnit() {
+        return productMapper.getProdUnit();
     }
 
     @Override

+ 7 - 3
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/Impl/VendorServiceImpl.java

@@ -4,10 +4,12 @@ import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.usoftchina.saas.base.service.CommonBaseServiceImpl;
 import com.usoftchina.saas.common.dto.DocReqDTO;
+import com.usoftchina.saas.document.dto.VendorDTO;
 import com.usoftchina.saas.document.mapper.VendorMapper;
 import com.usoftchina.saas.document.po.Vendor;
 import com.usoftchina.saas.document.service.VendorService;
 import com.usoftchina.saas.page.PageRequest;
+import com.usoftchina.saas.utils.BeanMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -25,7 +27,7 @@ public class VendorServiceImpl extends CommonBaseServiceImpl<VendorMapper, Vendo
 
 
     @Override
-    public List<Vendor> getVendorsByCondition(PageRequest page, DocReqDTO docReqDTO) {
+    public List<VendorDTO> getVendorsByCondition(PageRequest page, DocReqDTO docReqDTO) {
         //设置分页
         if (null == page || page.getSize() == 0 || page.getNumber() == 0) {
             page = new PageRequest();
@@ -34,8 +36,10 @@ public class VendorServiceImpl extends CommonBaseServiceImpl<VendorMapper, Vendo
         }
         PageHelper.startPage(page.getNumber(), page.getSize());
         List<Vendor> vendorList = vendorMapper.getVendorsByCondition(docReqDTO);
+        //Vendor To VendorDTO
+        List<VendorDTO> vendorDTOList = BeanMapper.mapList(vendorList, VendorDTO.class);
         //取分页信息
-        PageInfo<Vendor> pageInfo = new PageInfo<Vendor>(vendorList);
-        return vendorList;
+        PageInfo<VendorDTO> pageInfo = new PageInfo<VendorDTO>(vendorDTOList);
+        return vendorDTOList;
     }
 }

+ 24 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/Impl/WarehouseServiceImpl.java

@@ -0,0 +1,24 @@
+package com.usoftchina.saas.document.service.Impl;
+
+import com.usoftchina.saas.base.service.CommonBaseServiceImpl;
+import com.usoftchina.saas.document.mapper.WarehouseMapper;
+import com.usoftchina.saas.document.po.Warehouse;
+import com.usoftchina.saas.document.service.WarehouseService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+
+@Service
+public class WarehouseServiceImpl extends CommonBaseServiceImpl<WarehouseMapper, Warehouse> implements WarehouseService {
+
+    @Autowired
+    private WarehouseMapper warehouseMapper;
+
+    @Override
+    public String callProcedure(Map<String, Object> map){
+        String result = warehouseMapper.callProcedure(map);
+        return result;
+    }
+
+}

+ 6 - 1
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/ProductService.java

@@ -1,7 +1,9 @@
 package com.usoftchina.saas.document.service;
 
 import com.usoftchina.saas.base.service.CommonBaseService;
+import com.usoftchina.saas.common.dto.ComboDTO;
 import com.usoftchina.saas.common.dto.DocReqDTO;
+import com.usoftchina.saas.document.dto.ProductDTO;
 import com.usoftchina.saas.document.mapper.ProductMapper;
 import com.usoftchina.saas.document.po.Product;
 import com.usoftchina.saas.page.PageRequest;
@@ -10,7 +12,10 @@ import java.util.List;
 
 public interface ProductService extends CommonBaseService<ProductMapper, Product> {
 
-    List<Product> getProductsByCondition(PageRequest page, DocReqDTO docReqDTO);
+
+    List<ProductDTO> getProductsByCondition(PageRequest page, DocReqDTO docReqDTO);
+
+    List<ComboDTO> getProdUnit();
 
     void updateLatestPurchasePrice(Long pu_id);
 }

+ 2 - 1
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/VendorService.java

@@ -2,6 +2,7 @@ package com.usoftchina.saas.document.service;
 
 import com.usoftchina.saas.base.service.CommonBaseService;
 import com.usoftchina.saas.common.dto.DocReqDTO;
+import com.usoftchina.saas.document.dto.VendorDTO;
 import com.usoftchina.saas.document.mapper.VendorMapper;
 import com.usoftchina.saas.document.po.Vendor;
 import com.usoftchina.saas.page.PageRequest;
@@ -10,6 +11,6 @@ import java.util.List;
 
 public interface VendorService extends CommonBaseService<VendorMapper, Vendor>{
 
-    List<Vendor> getVendorsByCondition(PageRequest page, DocReqDTO docReqDTO);
+    List<VendorDTO> getVendorsByCondition(PageRequest page, DocReqDTO docReqDTO);
 
 }

+ 13 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/WarehouseService.java

@@ -0,0 +1,13 @@
+package com.usoftchina.saas.document.service;
+
+import com.usoftchina.saas.base.service.CommonBaseService;
+import com.usoftchina.saas.document.mapper.WarehouseMapper;
+import com.usoftchina.saas.document.po.Warehouse;
+
+import java.util.Map;
+
+public interface WarehouseService extends CommonBaseService<WarehouseMapper, Warehouse> {
+
+    String callProcedure(Map<String, Object> map);
+
+}

+ 4 - 0
applications/document/document-server/src/main/resources/mapper/ProductMapper.xml

@@ -35,6 +35,7 @@
         <result column="pr_text4" property="pr_text4" jdbcType="VARCHAR" />
         <result column="pr_text5" property="pr_text5" jdbcType="VARCHAR" />
     </resultMap>
+    <!--查询所有物料信息-->
     <select id="getProductsByCondition" resultMap="ProductResultMapper" parameterType="com.usoftchina.saas.common.dto.DocReqDTO">
         SELECT * FROM PRODUCT
         <where>
@@ -42,7 +43,10 @@
                 ${condition}
             </if>
         </where>
+    </select>
 
+    <select id="getProdUnit" resultType="com.usoftchina.saas.common.dto.ComboDTO">
+        SELECT PR_UNIT as display, pr_unit as value FROM PRODUCT
     </select>
     <update id="updateLatestPurchasePrice" parameterType="long">
         update product a set pr_purcprice=(select pd_price from purchasedetail WHERE

+ 32 - 0
applications/document/document-server/src/main/resources/mapper/WarehouseMapper.xml

@@ -0,0 +1,32 @@
+<?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.document.mapper.WarehouseMapper">
+    <resultMap id="WarehouseResultMapper" type="com.usoftchina.saas.document.po.Warehouse">
+        <id column="wh_id" property="wh_id" jdbcType="INTEGER" />
+        <result column="wh_code" property="wh_code" jdbcType="VARCHAR" />
+        <result column="wh_type" property="wh_type" jdbcType="VARCHAR" />
+        <result column="wh_description" property="wh_description" jdbcType="VARCHAR" />
+        <result column="wh_statuscode" property="wh_statuscode" jdbcType="VARCHAR" />
+        <result column="wh_status" property="wh_status" jdbcType="TIMESTAMP" />
+        <result column="wh_recordid" property="wh_recordid" jdbcType="INTEGER" />
+        <result column="wh_recorder" property="wh_recorder" jdbcType="INTEGER" />
+        <result column="wh_date" property="wh_date" 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="wh_text1" property="wh_text1" jdbcType="VARCHAR" />
+        <result column="wh_text2" property="wh_text2" jdbcType="VARCHAR" />
+        <result column="wh_text3" property="wh_text3" jdbcType="VARCHAR" />
+        <result column="wh_text4" property="wh_text4" jdbcType="VARCHAR" />
+        <result column="wh_text5" property="wh_text5" jdbcType="VARCHAR" />
+    </resultMap>
+    <select id="callProcedure" parameterMap="testParamMap" statementType="CALLABLE">
+        call sp_test(?, ?)
+    </select>
+    <parameterMap id="testParamMap" type="java.util.Map">
+        <parameter property="inParam" jdbcType="VARCHAR" mode="IN" />
+        <parameter property="outParam" jdbcType="VARCHAR" mode="OUT" />
+    </parameterMap>
+    
+</mapper>
+

+ 4 - 3
applications/document/document-server/src/test/java/com/usoftchina/saas/document/service/VendorServiceTest.java → applications/document/document-server/src/test/java/com/usoftchina/saas/document/service/VendorTest.java

@@ -2,6 +2,7 @@ package com.usoftchina.saas.document.service;
 
 
 import com.usoftchina.saas.document.DocumentApplication;
+import com.usoftchina.saas.document.dto.VendorDTO;
 import com.usoftchina.saas.document.po.Vendor;
 import com.usoftchina.saas.page.PageRequest;
 import org.junit.Test;
@@ -16,17 +17,17 @@ import java.util.List;
 @RunWith(SpringJUnit4ClassRunner.class)
 @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, classes = DocumentApplication.class)
 @EnableAutoConfiguration
-public class VendorServiceTest {
+public class VendorTest {
 
     @Autowired
     private VendorService vendorService;
 
     @Test
     public void testSelectAll(){
-        List<Vendor> vendorList = vendorService.getVendorsByCondition(null, null);
+        List<VendorDTO> vendorList = vendorService.getVendorsByCondition(null, null);
         System.out.println("vendCode: " + vendorList.get(0).getVe_code());
         System.out.println("vendName: " + vendorList.get(0).getVe_name());
         System.out.println("vendType: " + vendorList.get(0).getVe_type());
-        System.out.println("vendBeginDate: " + vendorList.get(0).getVe_begindate());
+        System.out.println("vendBeginDate: " + vendorList.get(0).getVe_status());
     }
 }

+ 33 - 0
applications/document/document-server/src/test/java/com/usoftchina/saas/document/service/WarehouseTest.java

@@ -0,0 +1,33 @@
+package com.usoftchina.saas.document.service;
+
+import com.usoftchina.saas.document.DocumentApplication;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+import java.util.HashMap;
+import java.util.Map;
+
+@RunWith(SpringJUnit4ClassRunner.class)
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, classes = DocumentApplication.class)
+@EnableAutoConfiguration
+public class WarehouseTest {
+
+    @Autowired
+    private WarehouseService warehouseService;
+
+    @Test
+    public void testCallProcedure(){
+        Map<String, Object> map = new HashMap<String, Object>();
+        map.put("inParam", "Hello,World!");              //入参
+        map.put("outParam", null);                      //输出结果
+        warehouseService.callProcedure(map);
+        //输出返回值
+        System.out.println("result:" + map.get("outParam"));
+    }
+
+
+}

+ 0 - 36
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/controller/ComponentController.java

@@ -1,36 +0,0 @@
-package com.usoftchina.saas.purchase.controller;
-
-import com.usoftchina.saas.base.Result;
-import com.usoftchina.saas.document.api.ProductApi;
-import com.usoftchina.saas.document.api.VendorApi;
-import com.usoftchina.saas.document.dto.ProductDTO;
-import com.usoftchina.saas.document.dto.VendorDTO;
-import com.usoftchina.saas.page.PageRequest;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-@RestController
-@RequestMapping("/purchase/component")
-public class ComponentController {
-
-    @Autowired
-    private VendorApi vendorApi;
-    @Autowired
-    private ProductApi productApi;
-
-    @GetMapping("/dbfind/vendor")
-    @ResponseBody
-    public Result<VendorDTO> getVendorList(PageRequest page, String condition){
-        List<VendorDTO> vendorDTOResult = vendorApi.getVendorsByCondition(page, condition);
-        return Result.success(vendorDTOResult);
-    }
-
-    @GetMapping("/dbfind/product")
-    @ResponseBody
-    public Result<ProductDTO> getProductList(PageRequest page, String condition){
-        List<ProductDTO> productDTOResult = productApi.getProductsByCondition(page, condition);
-        return Result.success(productDTOResult);
-    }
-}

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

@@ -3,9 +3,10 @@ package com.usoftchina.saas.purchase.controller;
 import com.github.pagehelper.PageInfo;
 import com.usoftchina.saas.base.Result;
 import com.usoftchina.saas.common.dto.BatchDealBaseDTO;
-import com.usoftchina.saas.document.api.ProductApi;
+import com.usoftchina.saas.common.dto.DocSavedDTO;
 import com.usoftchina.saas.page.PageRequest;
 import com.usoftchina.saas.purchase.dto.*;
+import com.usoftchina.saas.purchase.po.PurchaseList;
 import com.usoftchina.saas.purchase.service.PurchaseService;
 
 import org.springframework.beans.factory.annotation.Autowired;
@@ -32,8 +33,8 @@ public class PurchaseController {
      * @return
      */
     @GetMapping("/list")
-    public Result<PageInfo<PurchaseListDTO>> getListData(PageRequest page, PurchaseReqDTO req) {
-        PageInfo<PurchaseListDTO> listData = purchaseService.getListData(page, req);
+    public Result<PageInfo<PurchaseList>> getListData(PageRequest page, PurchaseReqDTO req) {
+        PageInfo<PurchaseList> listData = purchaseService.getListData(page, req);
         return Result.success(listData);
     }
 
@@ -42,8 +43,8 @@ public class PurchaseController {
      *
      * @return
      */
-    @GetMapping("/read")
-    public Result<PurchaseFormDTO> getFormData(@RequestParam Long id) {
+    @GetMapping("/read/{id}")
+    public Result<PurchaseFormDTO> getFormData(@PathVariable("id") Long id) {
         PurchaseFormDTO data = purchaseService.getFormData(id);
         return Result.success(data);
     }
@@ -54,10 +55,11 @@ public class PurchaseController {
      * @param
      * @return
      */
-    @PostMapping(value = "/save")
-    public Result<Long> saveFormData(@RequestBody PurchaseFormDTO data) {
-        Long id = purchaseService.saveFormData(data);
-        return Result.success(id);
+    @PostMapping("/save")
+    public Result<DocSavedDTO> saveFormData(@RequestBody PurchaseFormDTO data) {
+        DocSavedDTO savedDTO = purchaseService.saveFormData(data);
+        return Result.success(savedDTO);
+
     }
 
     /**

+ 4 - 3
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/PurchaseService.java

@@ -3,12 +3,13 @@ package com.usoftchina.saas.purchase.service;
 import com.github.pagehelper.PageInfo;
 import com.usoftchina.saas.base.service.CommonBaseService;
 import com.usoftchina.saas.common.dto.BatchDealBaseDTO;
+import com.usoftchina.saas.common.dto.DocSavedDTO;
 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;
+import com.usoftchina.saas.purchase.po.PurchaseList;
 
 import java.util.List;
 
@@ -31,7 +32,7 @@ public interface PurchaseService extends CommonBaseService<PurchaseMapper, Purch
      * @param page,req
      * @return
      */
-    PageInfo<PurchaseListDTO> getListData(PageRequest page, PurchaseReqDTO req);
+    PageInfo<PurchaseList> getListData(PageRequest page, PurchaseReqDTO req);
 
     /**
      * 采购订单列表查询
@@ -47,7 +48,7 @@ public interface PurchaseService extends CommonBaseService<PurchaseMapper, Purch
      * @param formdata
      * @return
      */
-    Long saveFormData(PurchaseFormDTO formdata);
+    DocSavedDTO saveFormData(PurchaseFormDTO formdata);
 
     /**
      * 删除

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

@@ -6,6 +6,7 @@ import com.github.pagehelper.PageInfo;
 import com.usoftchina.saas.base.service.CommonBaseServiceImpl;
 import com.usoftchina.saas.common.dto.BatchDealBaseDTO;
 import com.usoftchina.saas.common.dto.DocBaseDTO;
+import com.usoftchina.saas.common.dto.DocSavedDTO;
 import com.usoftchina.saas.document.api.ProductApi;
 import com.usoftchina.saas.exception.BizException;
 import com.usoftchina.saas.page.PageRequest;
@@ -17,9 +18,9 @@ import com.usoftchina.saas.purchase.po.*;
 import com.usoftchina.saas.purchase.service.PurchaseService;
 import com.usoftchina.saas.utils.BeanMapper;
 
-import com.usoftchina.saas.utils.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -43,7 +44,7 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
     private ProductApi productApi;
 
     @Override
-    public PageInfo<PurchaseListDTO> getListData(PageRequest page, PurchaseReqDTO req) {
+    public PageInfo<PurchaseList> getListData(PageRequest page, PurchaseReqDTO req) {
         //设置默认分页
         if (null == page || page.getSize() == 0 || page.getNumber() == 0) {
             page = new PageRequest();
@@ -53,14 +54,8 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         PageHelper.startPage(page.getNumber(), page.getSize());
         //查询数据
         List<PurchaseList> lists = getListByMode(req);
-        //转换成传输对象
-        List<PurchaseListDTO> purchaseListDTOS = new ArrayList<>();
-        for (PurchaseList list : lists) {
-            purchaseListDTOS.add(BeanMapper.map(list, PurchaseListDTO.class));
-        }
         //取分页信息
-        PageInfo<PurchaseListDTO> pageInfo = new PageInfo<PurchaseListDTO>(purchaseListDTOS);
-        pageInfo.getTotal();
+        PageInfo<PurchaseList> pageInfo = new PageInfo<PurchaseList>(lists);
         return pageInfo;
     }
 
@@ -84,24 +79,31 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
     }
 
     @Override
-    public Long saveFormData(PurchaseFormDTO formdata) {
+    public DocSavedDTO saveFormData(PurchaseFormDTO formdata) {
         if (null == formdata || null == formdata.getMain()){
             throw new BizException(500, "数据为空,请填写后再保存");
         }
+
         //获取主表信息
         PurchaseDTO main = formdata.getMain();
         List<PurchaseItemDTO> items = formdata.getItems();
+        //插入从表数据
         List<PurchaseItem> insertDetails = new ArrayList<>();
+        //更新从表数据
         List<PurchaseItem> updateDetails = new ArrayList<>();
+        DocSavedDTO saveDTO = new DocSavedDTO();
         Long pu_id = main.getId();
         String pu_code = main.getPu_code();
         Purchase purchase = BeanMapper.map(main, Purchase.class);
+
         //编号获取
-        if (!StringUtils.hasText(pu_code)) {
+        if (StringUtils.isEmpty(pu_code)) {
             pu_code = "PU" + Math.random() * 1000;
+            purchase.setPu_code(pu_code);
         }
+        saveDTO.setCode(pu_code);
         //判断更新与保存动作
-        if (StringUtils.hasText(pu_id)) {
+        if (!StringUtils.isEmpty(pu_id)) {
             //更新主表
             purchaseMapper.updateByPrimaryKey(purchase);
             //添加从表传输对象
@@ -109,7 +111,7 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
                 PurchaseItem detail = BeanMapper.map(item, PurchaseItem.class);
                 detail.setPd_puid(pu_id);
                 detail.setPd_code(pu_code);
-                if (StringUtils.hasText(detail.getId())) {
+                if (!StringUtils.isEmpty(detail.getId())) {
                     updateDetails.add(detail);
                 } else {
                     insertDetails.add(detail);
@@ -123,8 +125,10 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
             if (updateDetails.size() > 0) {
                 purchasedetailMapper.batchUpdate(updateDetails);
             }
-            return pu_id;
+            saveDTO.setId(pu_id);
+            return saveDTO;
         }
+
         //插入操作
         purchaseMapper.insertSelective(purchase);
         pu_id = purchase.getId();
@@ -139,7 +143,8 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         if (insertDetails.size() > 0) {
             purchasedetailMapper.batchInsert(insertDetails);
         }
-        return pu_id;
+        saveDTO.setId(pu_id);
+        return saveDTO;
     }
 
     @Override
@@ -157,8 +162,9 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         Long id = null;
         if (null != formData) {
             id = formData.getMain().getId();
-            if (!StringUtils.hasText(id)) {
-                id = saveFormData(formData);
+            if (StringUtils.isEmpty(id)) {
+                DocSavedDTO saveDTO = saveFormData(formData);
+                id = saveDTO.getId();
             }
             singleAudit(id);
         }
@@ -171,7 +177,7 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
                 baseDTOs.getBaseDTOs().size() == 0)
             return;
         String validate = purchaseMapper.validateAudit(baseDTOs.getBaseDTOs());
-        if (StringUtils.hasText(validate)) {
+        if (!StringUtils.isEmpty(validate)) {
             throw new BizException(500, "存在已审核单据,单据编号:" + validate);
         }
         for (DocBaseDTO base : baseDTOs.getBaseDTOs()) {
@@ -213,7 +219,7 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
 
     private List<PurchaseList> getListByMode(PurchaseReqDTO req) {
         List<PurchaseList> list = null;
-        if (null == req || !StringUtils.hasText(req.getMode()) || "Main".equals(req.getMode())) {
+        if (null == req || StringUtils.isEmpty(req.getMode()) || "Main".equals(req.getMode())) {
             list = purchaseListMapper.selectPurchaseBycondition(req);
         } else {
             list = purchaseListMapper.selectPurchaseListByCondition(req);

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

@@ -392,7 +392,7 @@
     where pu_id = #{id,jdbcType=INTEGER}
   </update>
   <select id="validateAudit" parameterType="com.usoftchina.saas.common.dto.DocBaseDTO" resultType="java.lang.String">
-    select wm_concat(pu_code) from purchase where pu_statuscode='AUDITED' and pu_id in
+    select GROUP_CONCAT(pu_code) from purchase where pu_statuscode='AUDITED' and pu_id in
     <foreach collection="list" item="item" open="(" close=")" separator=",">
       #{item.id}
     </foreach>

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

@@ -356,7 +356,7 @@
       PD_PRODCODE = #{item.pd_prodcode},
       PD_UNIT = #{item.pd_unit},
       PD_QTY = #{item.pd_qty},
-      PD_PRICE = #{item.pd_pice},
+      PD_PRICE = #{item.pd_price},
       PD_TOTAL = #{item.pd_total},
       PD_TAXTOTAL = #{item.pd_taxtotal},
       PD_ACCEPTQTY = #{item.pd_acceptqty},

+ 0 - 10
framework/core/src/main/java/com/usoftchina/saas/utils/StringUtils.java

@@ -15,14 +15,4 @@ public class StringUtils {
     public static String nullIf(String target, String nullValue) {
         return (null == target || target.isEmpty()) ? nullValue : target;
     }
-
-    /**
-     * 判断参数是否为空、空字符串、空白格
-     *
-     * @param object
-     * @return
-     */
-    public static boolean hasText(Object object) {
-        return object == null ? false : org.springframework.util.StringUtils.hasText(object.toString());
-    }
 }

+ 1 - 1
frontend/saas-web/app/util/BaseUtil.js

@@ -19,7 +19,7 @@ Ext.define('saas.util.BaseUtil', {
                 async: async,
                 method: method,
                 timeout: timeout,
-                header: {
+                headers: {
                     'Access-Control-Allow-Origin': '*',
                     "Content-Type": 'application/json;charset=UTF-8' 
                 },

+ 13 - 23
frontend/saas-web/app/util/FormUtil.js

@@ -36,33 +36,23 @@ Ext.define('saas.util.FormUtil', {
                         if(item.xtype == 'detailGridField') {
                             var storeName = item.name || item.xtype + Ext.id();
                             item.bind = {
-                                store: '{' + storeName + '}'
+                                store: {
+                                    data : '{' + storeName + '}'
+                                }
+                            };           
+
+                            item.store = {
+                                fields: item.columns ? item.columns.filter(function(c) {
+                                    return !!c.dataIndex;
+                                }).map(function(c) {
+                                    return c.dataIndex;
+                                }) : [],
+                                data: []
                             };
-                            
-                            formModel.set(storeName, Ext.create('Ext.data.Store', {
-                                id: storeName,
-                                autoLoad: true,
-                                model: Ext.create('Ext.data.Model', {
-                                    fields: item.columns ? item.columns.filter(function(c) {
-                                        return !!c.dataIndex;
-                                    }).map(function(c) {
-                                        return {
-                                            name: c.dataIndex
-                                        }
-                                    }) : [],
-                                }),
-                                data: [{
-                                    pdUnit: '34'
-                                }, {
-                                    pdUnit: ''
-                                }]
-                            }));
                         }
                     });
-                    return items;
-                }else {
-                    return []
                 }
+                form.addItems(items);
             }else {
                 return []
             }

+ 24 - 15
frontend/saas-web/app/util/QueryUtil.js

@@ -256,25 +256,34 @@ Ext.define('saas.util.QueryUtil', {
 			if(!Ext.isEmpty(item.data[grid._idField])&&!Ext.isEmpty(item.data[grid._codeField])){
 				var o = new Object();
 				if(grid._idField){
-					o[grid._idField] = item.data[grid._idField];
+					o['id'] = item.data[grid._idField];
                 }
                 if(grid._codeField){
-					o[grid._codeField] = item.data[grid._codeField];
+					o['code'] = item.data[grid._codeField];
 				}
 				data.push(o);
             }
 		});
-		return JSON.stringify(data);
-    }
-    // me.BaseUtil.request({
-    //     url: form._saveUrl,
-    //     params: JSON.stringify(params),
-    //     method: 'POST',
-    // })
-    // .then(function() {
-    //     Ext.Msg.alert('提示','保存成功');
-    // })
-    // .catch(function() {
-    //     Ext.Msg.alert('提示','保存失败');
-    // });
+		return data;
+    },
+    /**
+     * 发起批量操作请求
+	 * grid:原始字符串
+	 */
+    vastRes:function(url,params){
+        var me = this;
+        me.BaseUtil.request({
+                url: url,
+                params: JSON.stringify(params),
+                method: 'POST',
+            })
+            .then(function() {
+                Ext.Msg.alert('提示','操作成功');
+            })
+            .catch(function(response) {
+                console.log(response);
+                Ext.Msg.alert('提示','操作失败');
+            });
+        }
+    
 });

+ 23 - 11
frontend/saas-web/app/view/core/dbfind/DbfindGridPanel.js

@@ -42,17 +42,29 @@ Ext.define('saas.view.core.dbfind.DbfindGridPanel', {
             var me = this;
             var dbfinds = me.dbfinds;
             if(dbfinds&&dbfinds.length>0){
-                for (let index = 0; index < dbfinds.length; index++) {
-                    var item = dbfinds[index];
-                    var field = me.ownerCt.belong.down('[name='+item.to+']');
-                    if(field){
-                        var val = record.get(item.from);
-                        if(field.xtype=='dbfindtrigger'){
-                            field.setValue(val);
-                            field.lastTriggerValue=val;
-                        }else{
-                            field.setValue(val);
-                        }    
+                if(me.belong=='grid'){
+                    for (let index = 0; index < dbfinds.length; index++) {
+                        var item = dbfinds[index];
+                        var rec = me.dbfindtrigger.column.ownerCt.ownerCt.selModel.getLastSelected();
+                        if(rec){
+                            var nowRec = me.dbfindtrigger.column.ownerCt.ownerCt.store.getData().getByKey(rec.id);
+                            nowRec.set(item.to,record.get(item.from));
+                            //me.column.getEditor().setValue(record.get(item.from));
+                        }
+                    }
+                }else if(me.belong=='form'){
+                    for (let index = 0; index < dbfinds.length; index++) {
+                        var item = dbfinds[index];
+                        var field = me.ownerCt.belong.down('[name='+item.to+']');
+                        if(field){
+                            var val = record.get(item.from);
+                            if(field.xtype=='dbfindtrigger'){
+                                field.setValue(val);
+                                field.lastTriggerValue=val;
+                            }else{
+                                field.setValue(val);
+                            }    
+                        }
                     }
                 }
             }

+ 3 - 1
frontend/saas-web/app/view/core/dbfind/DbfindTrigger.js

@@ -33,7 +33,9 @@ Ext.define('saas.view.core.dbfind.DbfindTrigger', {
                 xtype:'dbfindgridpanel',
                 columns: f.dbColumns,
                 dataUrl: f.dataUrl,
-                dbfinds: f.dbfinds
+                dbfinds: f.dbfinds,
+                belong: f.belong,
+                dbfindtrigger:f
             }]
         });
         win.show();

+ 10 - 9
frontend/saas-web/app/view/core/form/FormPanel.js

@@ -36,30 +36,31 @@ Ext.define('saas.view.core.form.FormPanel', {
     initComponent: function() {
 
         var me = this;
-        me.FormUtil.setItems(me);
+        //me.FormUtil.setItems(me);
+
         //判断是否加载数据
+
         if(me.initId&&me.initId!=0){
-            var url = me._dataModelUrl,async=false;
-            url = url.replace(/(.*){id}(.*)/g, '$1' + me.initId);
+            var url = me._dataModelUrl + me.initId,async=false;
             me.BaseUtil.request({url,async })
             .then(function(response) {
                 var res = Ext.decode(response.responseText);
                 if(res.success) {
                     viewModel = me.getViewModel();
-                    viewModel.data = res.data.main;
-                    viewModel._data = res.data.main;
-                    viewModel.data.detailGridStore = res.data.items;                   
-                    viewModel._data.detailGridStore = res.data.items;
+                    viewModel.setData(res.data.main);
+                    viewModel.setData({'detailGridField':res.data.items});                   
                 }
             })
             .catch(function(response) {
                 console.error(response);
             });
+        }else{
+            viewModel = me.getViewModel();
+            viewModel.setData({'detailGridField':[{},{}]});     
         }
 
         Ext.apply(me, {
-            remoteConfig: me.remoteConfig,
-            items:me._baseItems,
+            items:me.defaultItems,
             dockedItems: [{
                 xtype: 'toolbar',
                 dock: 'top',

+ 19 - 16
frontend/saas-web/app/view/core/form/FormPanelController.js

@@ -31,17 +31,15 @@ Ext.define('saas.view.core.form.FormPanelController', {
         var id = form.getForm().findField(form._idField);
         if(id&&id.value!=0){
             Ext.Ajax.request({
-                url: form._deleteUrl,
-                params: {
-                    id:id.value
-                },
-                method: 'POST',
-                data:{_method:"DELETE"},
+                url: form._deleteUrl+id.value,
+                params: '',
                 headers: {
                     'Access-Control-Allow-Origin': '*',
                     "Content-Type": 'application/json;charset=UTF-8' 
                 },
                 success: function (response, opts) {
+                    var mainTab = Ext.getCmp('main-tab-panel');
+                    mainTab.getActiveTab().close();
                     //解析参数
                     Ext.Msg.alert('提示','删除成功');
                 },
@@ -71,19 +69,24 @@ Ext.define('saas.view.core.form.FormPanelController', {
         if(formData.detailGridField){
             gridData = formData.detailGridField;
         }
+
         var grid = form.query('detailGridField')[0];
-        var updRecords = grid.store.getUpdatedRecords();
-        if(updRecords.length>0){
-            Ext.each(updRecords, function(rec){
-                Ext.each(gridData, function(data,index){
-                    if(data.id==rec.id){
-                        if(data.id.indexOf('extMode')>-1){
+        var items = grid.store.data.items;
+        if(items.length>0){
+            Ext.each(items, function(rec){
+                if(rec.dirty==true){
+                    Ext.each(gridData, function(data,index){
+                        data[form._detnoColumn] = index + 1;
+                        if(rec.id == data.id){
+                            newGridData.push(data);
+                            return false;
+                        }else if ((typeof data.id) != 'number'&&data.id.indexOf('extMode')>-1){
                             data.id = '';
-                            data[form._detnoColumn] = index + 1;
+                            newGridData.push(data);
+                            return false;
                         }
-                        newGridData.push(data);
-                    }
-                });
+                    });
+                }
             });
         }   
         var params = {

+ 3 - 5
frontend/saas-web/app/view/core/form/RemoteCombo.js

@@ -15,15 +15,14 @@ Ext.define('saas.view.core.form.RemoteCombo', {
 
     setStore:function(v){
        var me=this;
-       me.url='resources/json/combotest.json';
        var store=Ext.create('Ext.data.Store',{
-           fields:['value','text'],
+           fields:['display','value'],
            autoLoad: true,
            proxy: {
                type: 'ajax',
-               url: me.url,
+               url: me.storeUrl,
                reader: {
-                   type: 'array',
+                   type: 'json',
                    rootProperty: 'data'
                }
            }
@@ -32,7 +31,6 @@ Ext.define('saas.view.core.form.RemoteCombo', {
 
     },
     createPicker: function() {
-
         var me = this,
             picker,
             pickerCfg = Ext.apply({

+ 30 - 9
frontend/saas-web/app/view/core/form/field/DetailGridField.js

@@ -18,7 +18,7 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
     },
     plugins: {
         cellediting: {
-            clicksToEdit: 2
+            clicksToEdit: 1
         }
     },
 
@@ -64,19 +64,19 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
     },
 
     listeners: {
-        afterrender:function(grid){
-            var count = grid.store.getCount();
-            if(count==0){
-                grid.add10EmptyRow();
-            }
-        },
+        // afterrender:function(grid){
+        //     var count = grid.store.getCount();
+        //     if(count==0){
+        //         grid.add10EmptyRow();
+        //     }
+        // },
         itemClick: function(tableView, record, item, index, e, eOpts) {
             var grid = tableView.up('grid'),
                 store = grid.store,
                 count = store.getCount();
 
             if(index == count - 1) {
-                grid.add10EmptyRow();
+                //grid.add10EmptyRow();
             }
         }
     },
@@ -106,7 +106,28 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
             store = me.getStore(),
             selectedRecord = me.selModel.lastSelected;
 
-        store.remove(selectedRecord);
+        var id = selectedRecord.data.id;
+        var form = me.ownerGrid.ownerCt;
+        if(id&&id!=0&&(typeof id) == 'number'){
+            Ext.Ajax.request({
+                url: form._deleteDetailUrl+id,
+                params: '',
+                headers: {
+                    'Access-Control-Allow-Origin': '*'
+                },
+                success: function (response, opts) {
+                    store.remove(selectedRecord);
+                    //解析参数
+                    Ext.Msg.alert('提示','删除成功');
+                },
+                failure: function (response, opts) {
+                    //失败
+                    Ext.Msg.alert('提示','删除失败');
+                }
+            });
+        }else{
+            store.remove(selectedRecord);
+        }
     },
 
     swapUp: function() {

+ 23 - 34
frontend/saas-web/app/view/core/query/QueryGridPanel.js

@@ -9,9 +9,8 @@ Ext.define('saas.view.core.query.QueryGridPanel', {
     //字段属性
     _BaseColumn: '',
     _RelativeColumn: '',
-    _auditUrl:'',
-    _printUrl:'',
-    _deleteUrl:'',
+    _idField:'',
+    _codeField:'',
     //数据属性
     listUrl:'http://192.168.253.58:8800/purchase/list',
 
@@ -82,22 +81,12 @@ Ext.define('saas.view.core.query.QueryGridPanel', {
                 listeners : {
                     beforeload : function(store,op) {
                         var condition = '';
-                        // var queryForm = Ext.getCmp('core-query-queryformpanel'),
-                        // queryMoreForm = Ext.getCmp('core-query-querymoreformpanel'),
-                        // condition = me.up('core-query-formpanel').QueryUtil.getFormCondition(queryForm);
-                        // if(queryMoreForm){//更多查询
-                        //     if(!Ext.isEmpty(condition)){
-                        //         condition = " and ( "+me.up('core-query-formpanel').QueryUtil.getStoreMode(queryMoreForm)+" ) ";
-                        //     }else{
-                        //         condition = me.getStoreMode(queryMoreForm);
-                        //     }
-                        // }
                         if(Ext.isEmpty(condition)){
                             condition = " 1=1 ";
                         }
                         console.log("condition:"+condition);
                         Ext.apply(store.proxy.extraParams, {
-                            number:op._start+1,
+                            number:op._page,
                             size:store.pageSize,
                             keyword: condition
                         });
@@ -134,7 +123,7 @@ Ext.define('saas.view.core.query.QueryGridPanel', {
                 displayMsg: '当前显示第{0}到{1}条数据,一共有{2}条',
                 beforePageText: "当前第",
                 afterPageText: "页,共{0}页"
-            }],
+            }]
         });
         me.callParent(arguments);
     },
@@ -152,7 +141,6 @@ Ext.define('saas.view.core.query.QueryGridPanel', {
 
     getFields: function() {
         var me = this;
-
         return me.columns.filter(function(c) {
             return !!c.dataIndex;
         }).map(function(c) {
@@ -161,29 +149,25 @@ Ext.define('saas.view.core.query.QueryGridPanel', {
     },
     onAddMore: function (btn) {
         console.log("跳转到主从表");
-        var form = btn.ownerCt.ownerCt;
-        var mainTab = Ext.getCmp('main-tab-panel'),
-        id = 'test-order-formpanel' + '_add',
-        existingItem = mainTab.down('[id=' + id + ']');
+        var form = btn.ownerCt.ownerCt,
+            mainTab = Ext.getCmp('main-tab-panel'),
+            id = form.xtype + '_add';
+            existingItem = mainTab.down('[id=' + id + ']');
+
         if (!existingItem) {
-            var form = {
+            var form = Ext.create('saas.view.purchase.panel.FormPanel', {
                 id,
-                title:'采购单',
-                xtype:'test-order-formpanel'
-            };
+                title:'新增采购单'
+            });
             mainTab.setActiveTab(mainTab.add(form));
-        }else{
-            mainTab.setActiveTab(existingItem);
         }
     },
     onAudit: function(btn){
-        var grid = btn.ownerCt.ownerCt;
-        console.log("审核");
-        console.log("grid");
-        var selectsd = grid.up('core-query-formpanel').QueryUtil.getGridSelected(grid);
-        console.log(selectsd);
-        //_baseVastUrl+"batchAudit"
-
+        var grid = btn.ownerCt.ownerCt,
+        vastUrl = grid.ownerCt._baseVastUrl+"batchAudit";
+        var selectsd = grid.QueryUtil.getGridSelected(grid);
+        console.log("审核","vastUrl:"+vastUrl,grid,"selectsd:"+selectsd);
+        grid.QueryUtil.vastRes(vastUrl,selectsd);
     },
     onPrint: function () {
         console.log("打印");
@@ -191,7 +175,12 @@ Ext.define('saas.view.core.query.QueryGridPanel', {
     onExport: function () {
         console.log("导出");
     },
-    onDelete: function () {
+    onDelete: function (btn) {
         console.log("删除该行");
+        var grid = btn.ownerCt.ownerCt,
+        vastUrl = grid.ownerCt._baseVastUrl+"batchDelete";
+        var selectsd = grid.QueryUtil.getGridSelected(grid);
+        console.log("删除该行","vastUrl:"+vastUrl,grid,"selectsd:"+selectsd);
+        grid.QueryUtil.vastRes(vastUrl,selectsd);
     }
 });

+ 4 - 5
frontend/saas-web/app/view/core/query/QueryPanel.js

@@ -8,7 +8,7 @@ Ext.define('saas.view.core.query.QueryPanel', {
     layout: 'anchor',
     autoScroll: true,
     margin: '0',
-
+    _baseVastUrl:'',
     items: [{
         anchor: '100% 30%',
         reference: 'queryform',
@@ -22,7 +22,7 @@ Ext.define('saas.view.core.query.QueryPanel', {
     initComponent: function () {
         var me = this;
         me.setQueryItems(me.queryFormItems);
-        me.setQuertGridColumns(me.queryGridConfig);
+        me.setQuertGridConfigs();
         me.callParent(arguments);
     },
 
@@ -47,11 +47,10 @@ Ext.define('saas.view.core.query.QueryPanel', {
         queryForm.items = items;
     },
 
-    setQuertGridColumns: function(config) {
+    setQuertGridConfigs: function() {
         var me = this,
         queryGrid = me.items[1];
-
-        Ext.apply(queryGrid, config);
+        Ext.apply(queryGrid, me.queryGridConfig);
     }
 
 });

+ 17 - 14
frontend/saas-web/app/view/test/order/FormController.js

@@ -12,45 +12,48 @@ Ext.define('saas.view.test.order.FormController', {
                 }
             },
             //放大镜赋值关系 以及 tpl模板
-            'dbfindtrigger[name=puVendcode]':{
+            'dbfindtrigger[name=pu_vendcode]':{
                 beforerender:function(f){
                     Ext.apply(f,{
-                        conditionCode:'ve_code',
-                        dataUrl:'http://192.168.253.41:8800/purchase/component/dbfind/vendor',
+                        dataUrl:'http://192.168.253.41:9480/api/document/vendor/getVendorsByCondition',
                         dbfinds:[{
-                            from:'vendCode',to:'puVendcode'
+                            from:'ve_code',to:'pu_vendcode'
                         },{
-                            from:'vendName',to:'puVendname'
+                            from:'ve_name',to:'pu_vendname'
                         }],
                         dbtpls:[{
-                            field:'vendCode',width:100
+                            field:'ve_code',width:100
                         },{
-                            field:'vendName',width:100
+                            field:'ve_name',width:100
                         }],
                         dbColumns:[{
+                            conditionCode:'ve_id',
                             "text": "供应商ID",
                             "flex": 0,
-                            "dataIndex": "vendId",
+                            "dataIndex": "ve_id",
                             "width": 0,
                             "xtype": "",
                             "items": null
                         },{
+                            conditionCode:'ve_code',
                             "text": "供应商编号",
                             "flex": 1,
-                            "dataIndex": "vendCode",
+                            "dataIndex": "ve_code",
                             "width": 100,
                             "xtype": "",
                             "items": null
                         }, {
+                            conditionCode:'ve_name',
                             "text": "供应商名称",
                             "flex": 1,
-                            "dataIndex": "vendName",
+                            "dataIndex": "ve_name",
                             "xtype": "",
                             "items": null
                         }, {
+                            conditionCode:'ve_type',
                             "text": "供应商类型",
                             "flex": 0,
-                            "dataIndex": "vendType",
+                            "dataIndex": "ve_type",
                             "width": 200,
                             "xtype": "",
                             "items": null
@@ -60,13 +63,13 @@ Ext.define('saas.view.test.order.FormController', {
                 }
             },
             //放大镜赋值关系 以及 tpl模板
-            'dbfindtrigger[name=pdProdcode]':{
+            'dbfindtrigger[name=pd_prodcode]':{
                 beforerender:function(f){
                     Ext.apply(f,{
                         conditionCode:'pr_code',
-                        dataUrl:'http://192.168.253.41:8800/purchase/component/dbfind/product',
+                        dataUrl:'http://192.168.253.41:9480/api/document/product/getProductsByCondition',
                         dbfinds:[{
-                            from:'pr_code',to:'pdVendcode'
+                            from:'pr_code',to:'pd_prodcode'
                         }],
                         dbtpls:[{
                             field:'pr_code',width:100

+ 65 - 30
frontend/saas-web/app/view/test/order/FormPanel.js

@@ -6,14 +6,15 @@ Ext.define('saas.view.test.order.FormPanel', {
     viewModel: 'test-order-formmodel',
     
     _title:'采购单',
-    _codeField: 'puCode',
-    _statusField: 'puStatuscode',
+    _codeField: 'pu_ode',
+    _statusField: 'pu_statuscode',
     _idField: 'id',
-    _detnoColumn:  'pdDetno',
-    _dataModelUrl:'http://192.168.253.58:8800/purchase/form?id={id}',
-    _saveUrl:'http://192.168.253.58:8800/purchase/form',
+    _detnoColumn:  'pd_detno',
+    _dataModelUrl:'http://192.168.253.58:8800/purchase/read/',
+    _saveUrl:'http://192.168.253.58:8800/purchase/save',
     _auditUrl:'http://192.168.253.58:8800/purchase/audit',
-    _deleteUrl:'http://192.168.253.58:8800/purchase/detele',
+    _deleteUrl:'http://192.168.253.58:8800/purchase/delete/',
+    _deleteDetailUrl:'http://192.168.253.58:8800/purchase/deleteItem/',
     initId:0,
 
     toolBtns: [{
@@ -33,63 +34,97 @@ Ext.define('saas.view.test.order.FormPanel', {
         columnWidth: 0
     }, {
         xtype : "textfield", 
-        name : "puCode", 
-        bind : "{puCode}", 
+        name : "pu_code", 
+        bind : "{pu_code}", 
         fieldLabel : "采购单号", 
         allowBlank : true, 
         columnWidth : 0.25
     }, {
         xtype : "datefield", 
-        name : "puDate", 
-        bind : "{puDate}", 
+        name : "pu_date", 
+        bind : "{pu_date}", 
         fieldLabel : "采购日期", 
         allowBlank : true, 
         columnWidth : 0.25
     }, {
         xtype : "hidden", 
-        name : "puVendid", 
-        bind : "{puVendid}", 
+        name : "pu_vendid", 
+        bind : "{pu_vendid}", 
         fieldLabel : "供应商ID", 
         allowBlank : true, 
         columnWidth : 0.0
     }, {
         xtype : "dbfindtrigger", 
-        name : "puVendcode", 
-        bind : "{puVendcode}", 
+        name : "pu_vendcode", 
+        bind : "{pu_vendcode}", 
         fieldLabel : "供应商编号", 
         allowBlank : true, 
         columnWidth : 0.25, 
     }, {
         xtype : "textfield", 
-        name : "puVendname", 
-        bind : "{puVendname}", 
+        name : "pu_vendname", 
+        bind : "{pu_vendname}", 
         fieldLabel : "供应商名称", 
         allowBlank : true, 
         columnWidth : 0.25
     }, {
         xtype : "hidden", 
-        name : "puBuyerid", 
-        bind : "{puBuyerid}", 
+        name : "pu_buyerid", 
+        bind : "{pu_buyerid}", 
         fieldLabel : "采购员ID", 
         allowBlank : true, 
         columnWidth : 0.0
     }, {
         xtype : "dbfindtrigger", 
-        name : "puBuyercode", 
-        bind : "{puBuyercode}", 
+        name : "pu_buyercode", 
+        bind : "{pu_buyercode}", 
         fieldLabel : "采购员编号", 
         allowBlank : true, 
         columnWidth : 0.25
     }, {
         xtype : "textfield", 
-        name : "puBuyername", 
-        bind : "{puBuyername}", 
+        name : "pu_buyername", 
+        bind : "{pu_buyername}", 
         fieldLabel : "采购员名称", 
         allowBlank : true, 
         columnWidth : 0.25
+    },{
+        xtype : "combo", 
+        name : "pu_total", 
+        bind : "{pu_total}", 
+        fieldLabel : "下拉框", 
+        allowBlank : true, 
+        queryMode: 'local',
+        displayField: 'display',
+        valueField: 'value',
+        store:{
+            fields: ['display', 'value'],
+            data : [
+                {"display":"1", "value":"1"},
+                {"display":"2", "value":"2"},
+                {"display":"3", "value":"3"}
+            ]
+        },
+        columnWidth : 0.25
+    },{
+        xtype : "remotecombo", 
+        storeUrl:"http://192.168.253.41:9480/api/document/product/getProdUnit",
+        name : "pu_text1", 
+        bind : "{pu_text1}", 
+        fieldLabel : "物料下拉框", 
+        allowBlank : true, 
+        queryMode: 'local',
+        displayField: 'display',
+        valueField: 'value',
+        columnWidth : 0.25
     }, {
         name : "detailGridField", 
         xtype : "detailGridField", 
+        bind: {
+            store:{
+                data:'{detailGridField}'
+            }
+        },
         columns : [
             {
                 text : "序号", 
@@ -113,7 +148,7 @@ Ext.define('saas.view.test.order.FormPanel', {
                 }, 
                 text : "物料编号", 
                 width : 200.0, 
-                dataIndex : "pdProdcode", 
+                dataIndex : "pd_prodcode", 
                 xtype : "", 
                 items : null
             }, 
@@ -122,34 +157,34 @@ Ext.define('saas.view.test.order.FormPanel', {
                 editor : {
                     xtype : "textfield"
                 }, 
-                dataIndex : "pdUnit", 
+                dataIndex : "pd_unit", 
                 width : 120.0, 
                 xtype : "", 
                 items : null
             }, 
             {
                 text : "数量", 
-                dataIndex : "pdQty", 
+                dataIndex : "pd_yqty", 
                 width : 120.0, 
                 xtype : "", 
                 items : null
             }, 
             {
                 text : "单价", 
-                dataIndex : "pdPrice", 
+                dataIndex : "pd_price", 
                 width : 120.0, 
                 xtype : "numbercolumn", 
                 items : null
             }, 
             {
                 text : "总额", 
-                dataIndex : "pdTotal", 
+                dataIndex : "pd_total", 
                 width : 120.0, 
                 xtype : "numbercolumn"
             }, 
             {
                 text : "税额", 
-                dataIndex : "pdTaxtotal", 
+                dataIndex : "pd_taxtotal", 
                 flex : 1.0, 
                 xtype : "numbercolumn"
             }, 
@@ -188,8 +223,8 @@ Ext.define('saas.view.test.order.FormPanel', {
         xtype : "hidden", 
         readOnly : true, 
         editable : false, 
-        name : "puStatuscode", 
-        bind : "{puStatuscode}", 
+        name : "pu_statuscode", 
+        bind : "{pu_statuscode}", 
         fieldLabel : "单据状态码", 
         allowBlank : true, 
         columnWidth : 0.0

+ 24 - 1
frontend/saas-web/app/view/test/query/QueryPanel.js

@@ -5,7 +5,9 @@ Ext.define('saas.view.test.query.QueryPanel', {
     // controller: 'test-query-formcontroller',
     viewModel: 'test-query-querypanel',
     viewName: 'test-query-formpanel',
-
+    _baseVastUrl:'http://192.168.253.58:8800/purchase/',
+    _idField:'pu_id',
+    _codeField:'pu_code',
     queryFormItems: [{
         xtype: 'hidden',
         name: 'pu_id',
@@ -155,6 +157,8 @@ Ext.define('saas.view.test.query.QueryPanel', {
         columnWidth: 1
     }],
     queryGridConfig: {
+        _idField:'pu_id',
+        _codeField:'pu_code',
         columns: [{
             text: '序号',
             width: 80,
@@ -172,6 +176,25 @@ Ext.define('saas.view.test.query.QueryPanel', {
             text: '单据状态',
             dataIndex: 'pu_status',
             width: 120
+        }, {
+            text: '下单日期',
+            dataIndex: 'pu_indate',
+            xtype:'datecolumn',
+            width: 200
+        },{
+            text: '供应商名称',
+            dataIndex: 'pu_vendname',
+            width: 120
+        },{
+            text: '含税金额',
+            dataIndex: 'pu_taxtotal',
+            xtype:'numbercolumn',
+            width: 120
+        },{
+            text: '金额',
+            dataIndex: 'pu_total',
+            xtype:'numbercolumn',
+            width: 120
         }]
     }
 });