Преглед изворни кода

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

huangx пре 7 година
родитељ
комит
c38fea993d
30 измењених фајлова са 700 додато и 168 уклоњено
  1. 29 0
      applications/money/money-server/src/main/java/com/usoftchina/saas/money/controller/MoneyReportColltroller.java
  2. 10 0
      applications/money/money-server/src/main/java/com/usoftchina/saas/money/mapper/forms/VendorAcountViewMapper.java
  3. 174 0
      applications/money/money-server/src/main/java/com/usoftchina/saas/money/po/forms/VendorAcountView.java
  4. 13 0
      applications/money/money-server/src/main/java/com/usoftchina/saas/money/service/MoneyReportService.java
  5. 61 0
      applications/money/money-server/src/main/java/com/usoftchina/saas/money/service/impl/MoneyReportServiceImpl.java
  6. 7 69
      applications/money/money-server/src/main/java/com/usoftchina/saas/money/service/impl/PaybalanceServiceImpl.java
  7. 5 76
      applications/money/money-server/src/main/java/com/usoftchina/saas/money/service/impl/RecbalanceServiceImpl.java
  8. 37 0
      applications/money/money-server/src/main/resources/mapper/forms/VendorAcountViewMapper.xml
  9. 30 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/controller/PurchaseReportController.java
  10. 10 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchasePayMapper.java
  11. 3 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/PurchaseList.java
  12. 40 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/report/PurchasePay.java
  13. 10 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/PurchaseReportService.java
  14. 56 0
      applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseReportServiceImpl.java
  15. 31 1
      applications/purchase/purchase-server/src/main/resources/mapper/PurchaseListMapper.xml
  16. 32 0
      applications/purchase/purchase-server/src/main/resources/mapper/PurchasePayMapper.xml
  17. 2 2
      applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/controller/SaleReportController.java
  18. 1 1
      frontend/saas-web/app/view/core/dbfind/DbfindGridPanel.js
  19. 1 1
      frontend/saas-web/app/view/core/dbfind/DbfindTrigger.js
  20. 2 2
      frontend/saas-web/app/view/document/bom/BasePanel.js
  21. 101 0
      frontend/saas-web/app/view/document/bom/FormController.js
  22. 13 7
      frontend/saas-web/app/view/document/bom/FormPanel.js
  23. 2 4
      frontend/saas-web/app/view/document/kind/Kind.js
  24. 1 1
      frontend/saas-web/app/view/document/vendor/FormPanel.js
  25. 13 0
      frontend/saas-web/app/view/main/Main.scss
  26. 9 1
      frontend/saas-web/app/view/sale/sale/QueryPanel.js
  27. 6 2
      frontend/saas-web/app/view/stock/stockamount/DataList.js
  28. 1 1
      frontend/saas-web/app/view/sys/messagelog/DataList.js
  29. BIN
      frontend/saas-web/resources/images/grid/check.png
  30. BIN
      frontend/saas-web/resources/images/grid/uncheck.png

+ 29 - 0
applications/money/money-server/src/main/java/com/usoftchina/saas/money/controller/MoneyReportColltroller.java

@@ -0,0 +1,29 @@
+package com.usoftchina.saas.money.controller;
+
+import com.github.pagehelper.PageInfo;
+import com.usoftchina.saas.base.Result;
+import com.usoftchina.saas.commons.dto.ListReqDTO;
+import com.usoftchina.saas.money.service.MoneyReportService;
+import com.usoftchina.saas.page.PageRequest;
+import io.swagger.annotations.Api;
+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;
+
+/**
+ * @author heqw
+ * @date 2018/11/9 14:21
+ **/
+@RestController
+@RequestMapping("/repor")
+public class MoneyReportColltroller {
+    @Autowired
+    private MoneyReportService moneyReportService;
+
+    @GetMapping("/vendorCheck")
+    public Result vendorCheck(PageRequest page, ListReqDTO req) {
+        PageInfo listData = moneyReportService.vendorCheck(page, req);
+        return Result.success(listData);
+    }
+}

+ 10 - 0
applications/money/money-server/src/main/java/com/usoftchina/saas/money/mapper/forms/VendorAcountViewMapper.java

@@ -0,0 +1,10 @@
+package com.usoftchina.saas.money.mapper.forms;
+
+import com.usoftchina.saas.money.po.forms.VendorAcountView;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface VendorAcountViewMapper {
+    List<VendorAcountView> selectByCondition(@Param("con") String con, @Param("companyId") Long companyId);
+}

+ 174 - 0
applications/money/money-server/src/main/java/com/usoftchina/saas/money/po/forms/VendorAcountView.java

@@ -0,0 +1,174 @@
+package com.usoftchina.saas.money.po.forms;
+
+import java.util.Date;
+
+public class VendorAcountView {
+    private String pi_inoutno;
+
+    private String pi_class;
+
+    private String pi_vendcode;
+
+    private String pi_vendname;
+
+    private Date pi_date;
+
+    private Integer pd_pdno;
+
+    private String pr_code;
+
+    private String pr_detail;
+
+    private String pr_spec;
+
+    private String pd_unit;
+
+    private Double qty;
+
+    private Double pd_orderprice;
+
+    private Double pd_taxrate;
+
+    private Double pd_total;
+
+    private Double pd_netprice;
+
+    private Double pd_nettotal;
+    private Integer companyId;
+
+    public Integer getCompanyId() {
+        return companyId;
+    }
+
+    public void setCompanyId(Integer companyId) {
+        this.companyId = companyId;
+    }
+
+    public String getPi_inoutno() {
+        return pi_inoutno;
+    }
+
+    public void setPi_inoutno(String pi_inoutno) {
+        this.pi_inoutno = pi_inoutno == null ? null : pi_inoutno.trim();
+    }
+
+    public String getPi_class() {
+        return pi_class;
+    }
+
+    public void setPi_class(String pi_class) {
+        this.pi_class = pi_class == null ? null : pi_class.trim();
+    }
+
+    public String getPi_vendcode() {
+        return pi_vendcode;
+    }
+
+    public void setPi_vendcode(String pi_vendcode) {
+        this.pi_vendcode = pi_vendcode == null ? null : pi_vendcode.trim();
+    }
+
+    public String getPi_vendname() {
+        return pi_vendname;
+    }
+
+    public void setPi_vendname(String pi_vendname) {
+        this.pi_vendname = pi_vendname == null ? null : pi_vendname.trim();
+    }
+
+    public Date getPi_date() {
+        return pi_date;
+    }
+
+    public void setPi_date(Date pi_date) {
+        this.pi_date = pi_date;
+    }
+
+    public Integer getPd_pdno() {
+        return pd_pdno;
+    }
+
+    public void setPd_pdno(Integer pd_pdno) {
+        this.pd_pdno = pd_pdno;
+    }
+
+    public String getPr_code() {
+        return pr_code;
+    }
+
+    public void setPr_code(String pr_code) {
+        this.pr_code = pr_code == null ? null : pr_code.trim();
+    }
+
+    public String getPr_detail() {
+        return pr_detail;
+    }
+
+    public void setPr_detail(String pr_detail) {
+        this.pr_detail = pr_detail == null ? null : pr_detail.trim();
+    }
+
+    public String getPr_spec() {
+        return pr_spec;
+    }
+
+    public void setPr_spec(String pr_spec) {
+        this.pr_spec = pr_spec == null ? null : pr_spec.trim();
+    }
+
+    public String getPd_unit() {
+        return pd_unit;
+    }
+
+    public void setPd_unit(String pd_unit) {
+        this.pd_unit = pd_unit == null ? null : pd_unit.trim();
+    }
+
+    public Double getQty() {
+        return qty;
+    }
+
+    public void setQty(Double qty) {
+        this.qty = qty;
+    }
+
+    public Double getPd_orderprice() {
+        return pd_orderprice;
+    }
+
+    public void setPd_orderprice(Double pd_orderprice) {
+        this.pd_orderprice = pd_orderprice;
+    }
+
+    public Double getPd_taxrate() {
+        return pd_taxrate;
+    }
+
+    public void setPd_taxrate(Double pd_taxrate) {
+        this.pd_taxrate = pd_taxrate;
+    }
+
+    public Double getPd_total() {
+        return pd_total;
+    }
+
+    public void setPd_total(Double pd_total) {
+        this.pd_total = pd_total;
+    }
+
+    public Double getPd_netprice() {
+        return pd_netprice;
+    }
+
+    public void setPd_netprice(Double pd_netprice) {
+        this.pd_netprice = pd_netprice;
+    }
+
+    public Double getPd_nettotal() {
+        return pd_nettotal;
+    }
+
+    public void setPd_nettotal(Double pd_nettotal) {
+        this.pd_nettotal = pd_nettotal;
+    }
+}

+ 13 - 0
applications/money/money-server/src/main/java/com/usoftchina/saas/money/service/MoneyReportService.java

@@ -0,0 +1,13 @@
+package com.usoftchina.saas.money.service;
+
+import com.github.pagehelper.PageInfo;
+import com.usoftchina.saas.commons.dto.ListReqDTO;
+import com.usoftchina.saas.page.PageRequest;
+
+/**
+ * @author heqw
+ * @date 2018/11/9 14:50
+ **/
+public interface MoneyReportService {
+    PageInfo vendorCheck(PageRequest page, ListReqDTO req);
+}

+ 61 - 0
applications/money/money-server/src/main/java/com/usoftchina/saas/money/service/impl/MoneyReportServiceImpl.java

@@ -0,0 +1,61 @@
+package com.usoftchina.saas.money.service.impl;
+
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.usoftchina.saas.commons.dto.ListReqDTO;
+import com.usoftchina.saas.context.BaseContextHolder;
+import com.usoftchina.saas.money.mapper.forms.VendorAcountViewMapper;
+import com.usoftchina.saas.money.service.MoneyReportService;
+import com.usoftchina.saas.page.PageRequest;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @author heqw
+ * @date 2018/11/9 14:54
+ **/
+@Service
+public class MoneyReportServiceImpl implements MoneyReportService {
+    @Autowired
+    private VendorAcountViewMapper vendorAcountViewMapper;
+
+    @Override
+    public PageInfo vendorCheck(PageRequest page, ListReqDTO req) {
+        return getListDATA(page, req, "Supplier");
+    }
+
+    private PageInfo getListDATA(PageRequest page, ListReqDTO req, String type) {
+        //设置默认分页
+        if (null == page || page.getSize() == 0 || page.getNumber() == 0) {
+            page = new PageRequest();
+            page.setNumber(1);
+            page.setSize(10);
+        }
+        PageHelper.startPage(page.getNumber(), page.getSize());
+
+
+        //查询数据
+        List list = getListByType(req, type);
+        //取分页信息
+        PageInfo lists = new PageInfo(list);
+        return lists;
+    }
+
+    private List getListByType(ListReqDTO req, String type) {
+        List list = null;
+        Long companyId = BaseContextHolder.getCompanyId();
+        String con = req.getFinalCondition();
+        if (null == con) {
+            con = "1=1";
+        }
+        if ("Supplier".equals(type)) {
+            list = vendorAcountViewMapper.selectByCondition(con, companyId);
+        }
+//        } else if ("SaleRec".equals(type)){
+//            list = salerecViewMapper.selectByCondition(con, companyId);
+//        }
+        return list;
+    }
+}

+ 7 - 69
applications/money/money-server/src/main/java/com/usoftchina/saas/money/service/impl/PaybalanceServiceImpl.java

@@ -10,10 +10,6 @@ import com.usoftchina.saas.commons.exception.BizExceptionCode;
 import com.usoftchina.saas.commons.po.BillCodeSeq;
 import com.usoftchina.saas.commons.po.Status;
 import com.usoftchina.saas.context.BaseContextHolder;
-import com.usoftchina.saas.document.entities.Bankinformation;
-import com.usoftchina.saas.document.entities.Vendor;
-import com.usoftchina.saas.document.mapper.BankinformationMapper;
-import com.usoftchina.saas.document.mapper.VendorMapper;
 import com.usoftchina.saas.exception.BizException;
 import com.usoftchina.saas.money.mapper.*;
 import com.usoftchina.saas.money.po.*;
@@ -46,10 +42,6 @@ public class PaybalanceServiceImpl implements PaybalanceService {
     private SubledgerMapper subledgerMapper;
     @Autowired
     private BanksubledgerMapper banksubledgerMapper;
-    @Autowired
-    private VendorMapper vendorMapper;
-    @Autowired
-    private BankinformationMapper bankinformationMapper;
 
     public DocBaseDTO insert(Pay pay) {
         Paybalance paybalance = pay.getMain();
@@ -192,74 +184,15 @@ public class PaybalanceServiceImpl implements PaybalanceService {
         Double amountTotal = new Double(0);
         for (Paybalancedet det: paybalancedet) {
             amountTotal = amountTotal + det.getPd_amount();
-            //更新账户资料金额
-            Bankinformation bankinformation = new Bankinformation();
-            Bankinformation nowBankInformation = bankinformationMapper.selectByPrimaryKey(det.getPd_bankid());
-            bankinformation.setBk_thisamount(nowBankInformation.getBk_thisamount()+det.getPd_amount());
-            bankinformationMapper.updateByPrimaryKeySelective(bankinformation);
-        }
-        //更新主表pb_pbdamount=从表二金额合计
-        Double amountTotal2 = new Double(0);
-        for (Paybalancedetail detail : paybalancedetail){
-            amountTotal2 = amountTotal2 + detail.getPbd_amount();
         }
         updatePay.setId(pay.getMain().getId());
         updatePay.setPb_pdamount(amountTotal);
-        updatePay.setPb_pbdamount(amountTotal2);
-        paybalanceMapper.updateByPrimaryKeySelective(updatePay);
         //updateByPrimaryKeySelective
-        /**
-         * ve_preamount=nvl(ve_preamount,0)+pb_preamount,
-         * ve_payamount=nvl(ve_payamount,0)-pb_pbdamount,
-         * ve_leftamount=ve_beginapamount-ve_beginprepayamount+ve_payamount-ve_preamount;
-         */
-        Vendor vendorData = vendorMapper.selectByPrimaryKey(Long.valueOf(String.valueOf(paybalance.getPb_vendid())));
-        Double preamount = vendorData.getVe_preamount();
-        Double beginapamount = vendorData.getVe_beginapamount();
-        Double beginprepayamount= vendorData.getVe_beginprepayamount();
-        Double payamount = vendorData.getVe_payamount();
-
-        Vendor vendor = new Vendor();
-        vendor.setId(Long.valueOf(String.valueOf(paybalance.getPb_vendid())));
-        vendor.setVe_preamount(preamount+amountTotal);
-        vendor.setVe_payamount(payamount-amountTotal2);
-        vendor.setVe_leftamount(beginapamount-beginprepayamount+payamount-amountTotal2-preamount-amountTotal);
-        vendorMapper.updateByPrimaryKeySelective(vendor);
+
     }
 
     @Override
     public void unAudit(int id) {
-        //更新供应商资料
-        /**
-         * ve_preamount=nvl(ve_preamount,0)-pb_preamount,
-         * ve_payamount=nvl(ve_payamount,0)+pb_pbdamount,
-         * ve_leftamount=ve_beginapamount-ve_beginprepayamount+ve_payamount-ve_preamount;
-         */
-        Paybalance pay = paybalanceMapper.selectByPrimaryKey(Long.valueOf(id));
-        Double pay_preamount = pay.getPb_preamount();
-        Double pay_pbdamount = pay.getPb_pbdamount();
-        Vendor vendorData = vendorMapper.selectByPrimaryKey(Long.valueOf(String.valueOf(pay.getPb_vendid())));
-        Double preamount = vendorData.getVe_preamount();
-        Double beginapamount = vendorData.getVe_beginapamount();
-        Double beginprepayamount= vendorData.getVe_beginprepayamount();
-        Double payamount = vendorData.getVe_payamount();
-        Vendor vendor = new Vendor();
-        vendor.setId(Long.valueOf(String.valueOf(pay.getPb_vendid())));
-        vendor.setVe_preamount(preamount-pay_preamount);
-        vendor.setVe_payamount(payamount+pay_pbdamount);
-        vendor.setVe_leftamount(beginapamount-beginprepayamount+payamount+pay_pbdamount-preamount+pay_preamount);
-        vendorMapper.updateByPrimaryKeySelective(vendor);
-
-        //更新账户资料金额
-        List<Paybalancedet> paybalancedet = paybalancedetMapper.selectByPrimaryKey(id);
-        for (Paybalancedet det:paybalancedet) {
-            Bankinformation bankinformation = new Bankinformation();
-            Bankinformation nowBankInformation = bankinformationMapper.selectByPrimaryKey(det.getPd_bankid());
-            bankinformation.setBk_thisamount(nowBankInformation.getBk_thisamount()-det.getPd_amount());
-            bankinformationMapper.updateByPrimaryKeySelective(bankinformation);
-        }
-
-
         Paybalance paybalance = new Paybalance();
         paybalance.setId(Long.valueOf(id));
         paybalance.setPb_status(com.usoftchina.saas.commons.po.Status.UNAUDITED.getDisplay());
@@ -271,7 +204,12 @@ public class PaybalanceServiceImpl implements PaybalanceService {
         subledgerMapper.deleteByPrimaryKey(paybalance.getPb_code(), paybalance.getPb_kind());
         banksubledgerMapper.deleteByPrimaryKey(paybalance.getPb_code(), paybalance.getPb_kind());
 
-
+        //更新供应商资料
+        /**
+         * ve_preamount=nvl(ve_preamount,0)-pb_preamount,
+         * ve_payamount=nvl(ve_payamount,0)+pb_pbdamount,
+         * ve_leftamount=ve_beginapamount-e_beginprepayamount+ve_payamount-ve_preamount;
+         */
     }
 
 

+ 5 - 76
applications/money/money-server/src/main/java/com/usoftchina/saas/money/service/impl/RecbalanceServiceImpl.java

@@ -10,18 +10,11 @@ import com.usoftchina.saas.commons.exception.BizExceptionCode;
 import com.usoftchina.saas.commons.po.BillCodeSeq;
 import com.usoftchina.saas.commons.po.Status;
 import com.usoftchina.saas.context.BaseContextHolder;
-import com.usoftchina.saas.document.entities.Bankinformation;
-import com.usoftchina.saas.document.entities.Customer;
-import com.usoftchina.saas.document.entities.Vendor;
-import com.usoftchina.saas.document.mapper.BankinformationMapper;
-import com.usoftchina.saas.document.mapper.CustomerMapper;
-import com.usoftchina.saas.document.mapper.VendorMapper;
 import com.usoftchina.saas.exception.BizException;
 import com.usoftchina.saas.money.mapper.*;
 import com.usoftchina.saas.money.po.*;
 import com.usoftchina.saas.money.service.RecbalanceService;
 import com.usoftchina.saas.page.PageRequest;
-import io.netty.util.internal.MathUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
@@ -47,10 +40,6 @@ public class RecbalanceServiceImpl implements RecbalanceService {
     private BanksubledgerMapper banksubledgerMapper;
     @Autowired
     private SubledgerMapper subledgerMapper;
-    @Autowired
-    private CustomerMapper customerMapper;
-    @Autowired
-    private BankinformationMapper bankinformationMapper;
 
     @Override
     public DocBaseDTO insert(Rec rec) {
@@ -214,81 +203,21 @@ public class RecbalanceServiceImpl implements RecbalanceService {
             recbalanceMapper.updateByPrimaryKeySelective(recbalance);
         }
 
-        Recbalance updateRay = new Recbalance();
+        Recbalance updatePay = new Recbalance();
         List<Recbalancedet> recbalancedet = rec.getItems1();
         List<Recbalancedetail> recbalancedetail = rec.getItems2();
-        //更新主表付款金额:rb_rdamount=从表一金额合计
+        //更新主表付款金额:pb_pdamount=从表一金额合计
         Double amountTotal = new Double(0);
         for (Recbalancedet det: recbalancedet) {
             amountTotal = amountTotal + det.getRd_amount();
-            //更新账户资料金额
-            Bankinformation bankinformation = new Bankinformation();
-            Bankinformation nowBankInformation = bankinformationMapper.selectByPrimaryKey(det.getRd_bankid());
-            bankinformation.setBk_thisamount(nowBankInformation.getBk_thisamount()+det.getRd_amount());
-            bankinformationMapper.updateByPrimaryKeySelective(bankinformation);
-        }
-        //更新主表pb_pbdamount=从表二金额合计
-        Double amountTotal2 = new Double(0);
-        for (Recbalancedetail detail : recbalancedetail){
-            amountTotal2 = amountTotal2 + detail.getRbd_amount();
         }
-        updateRay.setId(rec.getMain().getId());
-        updateRay.setRb_rdamount(amountTotal);
-        updateRay.setRb_rbdamount(amountTotal2);
-        recbalanceMapper.updateByPrimaryKeySelective(updateRay);
-        /**
-         * 更新客户资料
-         * cu_preamount=nvl(cu_preamount,0)+rb_preamount,
-         * cu_recamount=nvl(cu_recamount,0)-rb_rbdamount,
-         * cu_leftamount=cu_beginaramount-cu_beginprerecamount+cu_recamount-cu_preamount;
-         */
-        Customer customerData = customerMapper.selectByPrimaryKey(Long.valueOf(String.valueOf(recbalance.getRb_custid())));
-        Double preamount = customerData.getCu_preamount();
-        Double beginapamount = customerData.getCu_beginaramount();
-        Double beginprepayamount= customerData.getCu_beginprerecamount();
-        Double recamount = customerData.getCu_recamount();
-
-        Customer customer = new Customer();
-        customer.setId(Long.valueOf(String.valueOf(recbalance.getRb_custid())));
-        customer.setCu_preamount(preamount+amountTotal);
-        customer.setCu_recamount(recamount-amountTotal2);
-        customer.setCu_leftamount(beginapamount-beginprepayamount+recamount-amountTotal2-preamount-amountTotal);
-        customerMapper.updateByPrimaryKeySelective(customer);
+        updatePay.setId(rec.getMain().getId());
+        updatePay.setRb_rdamount(amountTotal);
+        //updateByPrimaryKeySelective
     }
 
     @Override
     public void unAudit(Long id) {
-        //更新供应商资料
-        /**
-         * ve_preamount=nvl(ve_preamount,0)-pb_preamount,
-         * ve_payamount=nvl(ve_payamount,0)+pb_pbdamount,
-         * ve_leftamount=ve_beginapamount-ve_beginprepayamount+ve_payamount-ve_preamount;
-         */
-        Recbalance rec = recbalanceMapper.selectByPrimaryKey(Long.valueOf(id));
-        Double pay_preamount = rec.getRb_preamount();
-        Double pay_pbdamount = rec.getRb_rbdamount();
-        Customer customerData = customerMapper.selectByPrimaryKey(Long.valueOf(String.valueOf(rec.getRb_custid())));
-        Double preamount = customerData.getCu_preamount();
-        Double beginapamount = customerData.getCu_beginaramount();
-        Double beginprepayamount= customerData.getCu_beginprerecamount();
-        Double recamount = customerData.getCu_recamount();
-        Customer customer = new Customer();
-        customer.setId(Long.valueOf(String.valueOf(rec.getRb_custid())));
-        customer.setCu_preamount(preamount-pay_preamount);
-        customer.setCu_recamount(recamount+pay_pbdamount);
-        customer.setCu_leftamount(beginapamount-beginprepayamount+recamount+pay_pbdamount-preamount+pay_preamount);
-        customerMapper.updateByPrimaryKeySelective(customer);
-
-        //更新账户资料金额
-        List<Recbalancedet> recbalancedet = recbalancedetMapper.selectByPrimaryKey(Math.toIntExact(id));
-        for (Recbalancedet det:recbalancedet) {
-            Bankinformation bankinformation = new Bankinformation();
-            Bankinformation nowBankInformation = bankinformationMapper.selectByPrimaryKey(det.getRd_bankid());
-            bankinformation.setBk_thisamount(nowBankInformation.getBk_thisamount()-det.getRd_amount());
-            bankinformationMapper.updateByPrimaryKeySelective(bankinformation);
-        }
-
-
         Recbalance recbalance = new Recbalance();
         recbalance.setId(id);
         recbalance.setRb_status(Status.UNAUDITED.getDisplay());

+ 37 - 0
applications/money/money-server/src/main/resources/mapper/forms/VendorAcountViewMapper.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.money.mapper.VendorAcountViewMapper" >
+  <resultMap id="BaseResultMap" type="com.usoftchina.saas.money.po.VendorAcountView" >
+    <result column="pi_inoutno" property="pi_inoutno" jdbcType="VARCHAR" />
+    <result column="pi_class" property="pi_class" jdbcType="VARCHAR" />
+    <result column="pi_vendcode" property="pi_vendcode" jdbcType="VARCHAR" />
+    <result column="pi_vendname" property="pi_vendname" jdbcType="VARCHAR" />
+    <result column="pi_date" property="pi_date" jdbcType="TIMESTAMP" />
+    <result column="pd_pdno" property="pd_pdno" jdbcType="INTEGER" />
+    <result column="pr_code" property="pr_code" jdbcType="VARCHAR" />
+    <result column="pr_detail" property="pr_detail" jdbcType="VARCHAR" />
+    <result column="pr_spec" property="pr_spec" jdbcType="VARCHAR" />
+    <result column="pd_unit" property="pd_unit" jdbcType="VARCHAR" />
+    <result column="qty" property="qty" jdbcType="DOUBLE" />
+    <result column="pd_orderprice" property="pd_orderprice" jdbcType="DOUBLE" />
+    <result column="pd_taxrate" property="pd_taxrate" jdbcType="DOUBLE" />
+    <result column="pd_total" property="pd_total" jdbcType="DOUBLE" />
+    <result column="pd_netprice" property="pd_netprice" jdbcType="DOUBLE" />
+    <result column="pd_nettotal" property="pd_nettotal" jdbcType="DOUBLE" />
+    <result column="companyId" property="companyId" jdbcType="INTEGER" />
+  </resultMap>
+
+  <select id="selectByCondition" resultMap="BaseResultMap">
+    select  *  from vendor_acount_view
+    <where>
+      <if test="con != null">
+        ${con}
+      </if>
+      <if test="companyId != null">
+        and  companyId = #{companyId}
+      </if>
+    </where>
+    order by pi_date desc
+  </select>
+
+</mapper>

+ 30 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/controller/PurchaseReportController.java

@@ -0,0 +1,30 @@
+package com.usoftchina.saas.purchase.controller;
+
+import com.github.pagehelper.PageInfo;
+import com.usoftchina.saas.base.Result;
+import com.usoftchina.saas.commons.dto.ListReqDTO;
+import com.usoftchina.saas.page.PageRequest;
+import com.usoftchina.saas.purchase.service.PurchaseReportService;
+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;
+
+/**
+ * @author: guq
+ * @create: 2018-11-08 19:18
+ **/
+@RestController
+@RequestMapping("/report")
+public class PurchaseReportController {
+
+    @Autowired
+    private PurchaseReportService purchaseReportService;
+
+    @GetMapping("/purchasePay")
+    public Result PurchasePay(PageRequest page, ListReqDTO req) {
+        PageInfo listData = purchaseReportService.getPurchasePayData(page, req);
+        return Result.success(listData);
+    }
+
+}

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

@@ -0,0 +1,10 @@
+package com.usoftchina.saas.purchase.mapper;
+
+import com.usoftchina.saas.purchase.po.report.PurchasePay;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface PurchasePayMapper {
+    List<PurchasePay> selectByCondition(@Param("con") String con, @Param("companyId") Long companyId);
+}

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

@@ -2,6 +2,7 @@ package com.usoftchina.saas.purchase.po;
 
 
 import com.usoftchina.saas.base.entity.CommonBaseEntity;
+import com.usoftchina.saas.document.dto.ProductDTO;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -116,4 +117,6 @@ public class PurchaseList extends CommonBaseEntity implements Serializable {
     private String pd_text5;
 
     private Double pd_yqty;
+
+    private ProductDTO productDTO;
 }

+ 40 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/po/report/PurchasePay.java

@@ -0,0 +1,40 @@
+package com.usoftchina.saas.purchase.po.report;
+
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author: guq
+ * @create: 2018-11-09 14:22
+ **/
+@Data
+public class PurchasePay {
+    private Integer pb_id;
+
+    private String pb_code;
+
+    private String pu_vendcode;
+
+    private String pu_vendname;
+
+    private String pb_recorder;
+
+    private Date pb_recorddate;
+
+    private String pbd_slcode;
+
+    private String pbd_slkind;
+
+    private Double pbd_amount;
+
+    private Double pbd_nowbalance;
+
+    private Double pb_pbdamount;
+
+    private Double pb_payrate;
+
+    private String pd_remark;
+
+    private Integer companyid;
+}

+ 10 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/PurchaseReportService.java

@@ -0,0 +1,10 @@
+package com.usoftchina.saas.purchase.service;
+
+import com.github.pagehelper.PageInfo;
+import com.usoftchina.saas.commons.dto.ListReqDTO;
+import com.usoftchina.saas.page.PageRequest;
+
+public interface PurchaseReportService {
+
+    PageInfo getPurchasePayData(PageRequest page, ListReqDTO req);
+}

+ 56 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseReportServiceImpl.java

@@ -0,0 +1,56 @@
+package com.usoftchina.saas.purchase.service.impl;
+
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.usoftchina.saas.commons.dto.ListReqDTO;
+import com.usoftchina.saas.context.BaseContextHolder;
+import com.usoftchina.saas.page.PageRequest;
+import com.usoftchina.saas.purchase.mapper.PurchasePayMapper;
+import com.usoftchina.saas.purchase.service.PurchaseReportService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @author: guq
+ * @create: 2018-11-09 14:33
+ **/
+@Service
+public class PurchaseReportServiceImpl implements PurchaseReportService{
+
+    @Autowired
+    private PurchasePayMapper purchasePayMapper;
+    @Override
+    public PageInfo getPurchasePayData(PageRequest page, ListReqDTO req) {
+        return getListDATA(page, req, "PurchasePay");
+    }
+
+    private PageInfo getListDATA(PageRequest page, ListReqDTO req, String type) {
+        //设置默认分页
+        if (null == page || page.getSize() == 0 || page.getNumber() == 0) {
+            page = new PageRequest();
+            page.setNumber(1);
+            page.setSize(10);
+        }
+        PageHelper.startPage(page.getNumber(), page.getSize());
+        //查询数据
+        List lists = getListByType(req, type);
+        //取分页信息
+        PageInfo pageInfo = new PageInfo(lists);
+        return pageInfo;
+    }
+
+    private List getListByType(ListReqDTO req, String type) {
+        List list = null;
+        Long companyId = BaseContextHolder.getCompanyId();
+        String con = req.getFinalCondition();
+        if (null == con) {
+            con = "1=1";
+        }
+        if ("PurchasePay".equals(type)) {
+            list = purchasePayMapper.selectByCondition(con, companyId);
+        }
+        return list;
+    }
+}

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

@@ -54,11 +54,41 @@
         <result column="pd_text4" property="pd_text4" jdbcType="VARCHAR" />
         <result column="pd_text5" property="pd_text5" jdbcType="VARCHAR" />
         <result column="pd_yqty" property="pd_yqty" jdbcType="DOUBLE" />
+        <association property="productDTO" javaType="com.usoftchina.saas.document.dto.ProductDTO">
+            <id column="pr_id" property="id"/>
+            <result column="pr_code" property="pr_code"/>
+            <result column="pr_detail" property="pr_detail"/>
+            <result column="pr_spec" property="pr_spec"/>
+            <result column="pr_unit" property="pr_unit"/>
+            <result column="pr_kind" property="pr_kind"/>
+            <result column="pr_orispeccode" property="pr_orispeccode"/>
+            <result column="pr_whid" property="pr_whid"/>
+            <result column="pr_whcode" property="pr_whcode"/>
+            <result column="pr_whname" property="pr_whname"/>
+            <result column="pr_zxbzs" property="pr_zxbzs"/>
+            <result column="pr_leadtime" property="pr_leadtime"/>
+            <result column="pr_brand" property="pr_brand"/>
+            <result column="pr_standardprice" property="pr_standardprice"/>
+            <result column="pr_purcprice" property="pr_purcprice"/>
+            <result column="pr_saleprice" property="pr_saleprice"/>
+            <result column="pr_vendid" property="pr_vendid"/>
+            <result column="pr_vendname" property="pr_vendname"/>
+            <result column="pr_vendcode" property="pr_vendcode"/>
+            <result column="pr_docdate" property="pr_docdate"/>
+            <result column="pr_recordmanid" property="pr_recordmanid"/>
+            <result column="pr_recordman" property="pr_recordman"/>
+            <result column="pr_status" property="pr_status"/>
+            <result column="pr_statuscode" property="pr_statuscode"/>
+            <result column="pr_text1" property="pr_text1"/>
+            <result column="pr_text2" property="pr_text2"/>
+            <result column="pr_text3" property="pr_text3"/>
+            <result column="pr_text4" property="pr_text4"/>
+        </association>
     </resultMap>
 
     <select id="selectPurchaseListByCondition"  resultMap="BaseResultMap">
         select  *  from purchase left join purchasedetail on pu_id=pd_puid
-        left join product on pd_prodcode=pr_code
+        left join product on pd_prodid=pr_id
         <where>
             <if test="con != null">
                  ${con}

+ 32 - 0
applications/purchase/purchase-server/src/main/resources/mapper/PurchasePayMapper.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.purchase.mapper.PurchasePayMapper" >
+  <resultMap id="BaseResultMap" type="com.usoftchina.saas.purchase.po.report.PurchasePay" >
+    <result column="pb_id" property="pb_id" jdbcType="INTEGER" />
+    <result column="pb_code" property="pb_code" jdbcType="VARCHAR" />
+    <result column="pu_vendcode" property="pu_vendcode" jdbcType="VARCHAR" />
+    <result column="pu_vendname" property="pu_vendname" jdbcType="VARCHAR" />
+    <result column="pb_recorder" property="pb_recorder" jdbcType="VARCHAR" />
+    <result column="pb_recorddate" property="pb_recorddate" jdbcType="TIMESTAMP" />
+    <result column="pbd_slcode" property="pbd_slcode" jdbcType="VARCHAR" />
+    <result column="pbd_slkind" property="pbd_slkind" jdbcType="VARCHAR" />
+    <result column="pbd_amount" property="pbd_amount" jdbcType="DOUBLE" />
+    <result column="pbd_nowbalance" property="pbd_nowbalance" jdbcType="DOUBLE" />
+    <result column="pb_pbdamount" property="pb_pbdamount" jdbcType="DOUBLE" />
+    <result column="pb_payrate" property="pb_payrate" jdbcType="DOUBLE" />
+    <result column="pd_remark" property="pd_remark" jdbcType="VARCHAR" />
+    <result column="companyid" property="companyid" jdbcType="INTEGER" />
+  </resultMap>
+  <select id="selectByCondition" resultMap="BaseResultMap">
+    select  *  from purchasepay_view
+    <where>
+      <if test="con != null">
+        ${con}
+      </if>
+      <if test="companyId != null">
+        and  companyId = #{companyId}
+      </if>
+    </where>
+    order by pb_recorddate desc
+  </select>
+</mapper>

+ 2 - 2
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/controller/SaleReportController.java

@@ -21,13 +21,13 @@ public class SaleReportController {
     @Autowired
     private SaleReportService saleReportService;
 
-    @GetMapping("/SaleProfit")
+    @GetMapping("/saleProfit")
     public Result SaleProfit(PageRequest page, ListReqDTO req) {
         PageInfo listData = saleReportService.getSaleProfitData(page, req);
         return Result.success(listData);
     }
 
-    @GetMapping("/SaleRec")
+    @GetMapping("/saleRec")
     public Result SaleRec(PageRequest page, ListReqDTO req) {
         PageInfo listData = saleReportService.getSaleRecData(page, req);
         return Result.success(listData);

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

@@ -120,7 +120,7 @@ Ext.define('saas.view.core.dbfind.DbfindGridPanel', {
                         }
                     }
                 }
-                me.ownerCt.trigger.aftertrigger(me.ownerCt.trigger);
+                me.ownerCt.trigger.aftertrigger(me.ownerCt.trigger,record);
             }
             me.ownerCt.close();
         }

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

@@ -283,7 +283,7 @@ Ext.define('saas.view.core.dbfind.DbfindTrigger', {
                         }
                     }
                 }
-                me.aftertrigger(me);
+                me.aftertrigger(me,record);
             }
         }
     },

+ 2 - 2
frontend/saas-web/app/view/document/bom/BasePanel.js

@@ -48,8 +48,8 @@ Ext.define('saas.view.document.bom.BasePanel', {
             xtype : "numbercolumn",   
         },{
             text : "母件编号", 
-            width : 200.0, 
-            dataIndex : "bo_mothercode", 
+            dataIndex : "bo_mothercode",
+            width : 200.0,
         }, 
         {
             text : "母件名称", 

+ 101 - 0
frontend/saas-web/app/view/document/bom/FormController.js

@@ -5,6 +5,107 @@ Ext.define('saas.view.document.bom.FormController', {
     init: function (form) {
         var me = this;
         this.control({
+            //放大镜赋值关系 以及 tpl模板
+            'dbfindtrigger[name=bo_mothercode]':{
+                beforerender:function(f){
+                    Ext.apply(f,{
+                        dataUrl:'/api/document/product/list',
+                        addXtype: 'document-product-formpanel',
+                        addTitle: '物料资料',
+                        dbfinds:[
+                        {
+                            from:'pr_code',to:'bo_mothercode'
+                        }, {
+                            from:'pr_detail',to:'bo_mothername'
+                        }, {
+                            from:'pr_spec',to:'pr_spec'
+                        }, {
+                            from:'id',to:'bo_motherid',ignore:true
+                        }],
+                        dbtpls:[{
+                            field:'pr_code',width:100
+                        },{
+                            field:'pr_detail',width:100
+                        }],
+                        defaultCondition: "pr_statuscode='OPEN'",
+                        dbSearchFields:[{
+                            emptyText:'输入物料编号、名称或规格',
+                            xtype : "textfield", 
+                            name : "search", 
+                            width: 200,
+                            getCondition: function(v) {
+                                return "(upper(pr_spec) like '%" + v.toUpperCase()+"%' or upper(pr_code) like '%"+v.toUpperCase()+"%' or upper(pr_detail) like '%"+v.toUpperCase()+"%')";
+                            },
+                            allowBlank : true, 
+                            columnWidth : 0.25
+                        }],
+                        dbColumns:[{
+                            "text": "物料ID",
+                            "hidden": true,
+                            "dataIndex": "id",
+                        }, {
+                            "text": "物料编号",       
+                            "dataIndex": "pr_code",
+                            "width": 200,
+                        }, {
+                            "text": "物料名称",
+                            "width": 200,
+                            "dataIndex": "pr_detail",
+                        }, {
+                            "text": "规格",
+                            "dataIndex": "pr_spec",
+                            "width": 100,
+                        }, {
+                            "text": "单位",
+                            "dataIndex": "pr_unit",
+                            "width": 100,
+                        },{
+                            "text": "仓库id",
+                            "dataIndex": "pr_whid",
+                            "hidden": true,
+                        },{
+                            "text": "仓库编号",
+                            "dataIndex": "pr_whcode",
+                            "hidden": true,
+                        },{
+                            "text": "仓库",
+                            "dataIndex": "pr_whname",
+                            "width": 200,
+                        },{
+                            "text": "总库存数",
+                            "dataIndex": "po_onhand",
+                            "width": 100,
+                            align:'right'
+                        },{
+                            "text": "类型",
+                            "dataIndex": "pr_kind",
+                            "width": 100,
+                        },{
+                            "text": "型号",
+                            "dataIndex": "pr_orispeccode",
+                            "width": 100,
+                        },{
+                            "text": "品牌",
+                            "dataIndex": "pr_brand",
+                            "width": 100,
+                        },{
+                            "text": "供应商",
+                            "dataIndex": "pr_vendname",
+                            "width": 100,
+                        },{
+                            "text": "最小包装",
+                            "dataIndex": "pr_zxbzs",
+                            "width": 100,
+                            align:'right'
+                        },{
+                            "text": "L/T",
+                            "dataIndex": "pr_leadtime",
+                            "width": 100,
+                        }]
+                    }) ;   
+
+                }
+            },
             //从表多选放大镜赋值关系 以及 tpl模板
             'multidbfindtrigger[name=bd_soncode]':{
                 beforerender:function(f){

+ 13 - 7
frontend/saas-web/app/view/document/bom/FormPanel.js

@@ -10,7 +10,7 @@ Ext.define('saas.view.document.bom.FormPanel', {
     //字段属性
     _title:'BOM资料',
     _idField: 'id',
-    _codeField: 'bo_mothercode',
+    _codeField: 'codefield',
     _statusField: 'bo_status',
     _statusCodeField: 'bo_statuscode',
     _readUrl:'/api/document/bom/read/',
@@ -53,21 +53,27 @@ Ext.define('saas.view.document.bom.FormPanel', {
     },{
         xtype: 'hidden',
         name: 'bo_motherid',
-        fieldLabel: '母件id'
+        fieldLabel: '产品id'
+    },{
+        xtype : "dbfindtrigger", 
+        name: 'bo_mothercode',
+        fieldLabel: '产品编号',
+        allowBlank: false
     },{
         xtype: 'textfield',
         name: 'bo_mothername',
-        fieldLabel: '母件名称',
+        fieldLabel: '产品名称',
         allowBlank: false
     },{
         xtype: 'textfield',
-        name: 'bo_mothercode',
-        fieldLabel: '母件编号',
-        allowBlank: false
+        name: 'pr_spec',
+        fieldLabel: '产品规格',
+        reddOnly:true,
+        ignore:true
     },{
         xtype: 'textfield',
         name: 'bo_status',
-        fieldLabel: 'BOM状态'
+        fieldLabel: '产品状态'
     },{
         xtype: 'hidden',
         name: 'bo_statuscode',

+ 2 - 4
frontend/saas-web/app/view/document/kind/Kind.js

@@ -235,11 +235,9 @@ Ext.define('saas.view.document.kind.Kind', {
                     iconCls:'',
                     getClass: function(v, meta, rec) {
                         if(rec.get('wh_statuscode')=='OPEN'){
-                            this.items[0].tooltip = '启用';
-                            return 'x-grid-checkcolumn-checked';
+                            return 'x-grid-checkcolumn-checked-btn';
                         }else{
-                            this.items[0].tooltip = '不启用';
-                            return 'x-grid-checkcolumn';
+                            return 'x-grid-checkcolumn-btn';
                         }
                     },
                     handler: function(view, rowIndex, colIndex) {

+ 1 - 1
frontend/saas-web/app/view/document/vendor/FormPanel.js

@@ -175,7 +175,7 @@ Ext.define('saas.view.document.vendor.FormPanel', {
     },{  
         xtype : "numberfield", 
         name : "ve_leftamount", 
-        fieldLabel : "应付款额", 
+        fieldLabel : "应付款额", 
         allowBlank : true, 
         readOnly:true,
         ignore:true,

+ 13 - 0
frontend/saas-web/app/view/main/Main.scss

@@ -158,3 +158,16 @@ $treelist-nav-ui: (
 .x-tbar-display .x-form-display-field-default {
     font: 400 16px/17px 'Microsoft YaHei';
 }
+
+.x-grid-checkcolumn-btn {
+	margin-top: -1px;
+    width: 34px;
+    height: 21px;
+    background: url(../../../../resources/images/grid/uncheck.png) 0 0 no-repeat;
+}
+.x-grid-checkcolumn-checked-btn {
+	margin-top: 0px;
+	width: 34px;
+    height: 21px;
+    background: url(../../../../resources/images/grid/check.png) 0 0 no-repeat;
+}

+ 9 - 1
frontend/saas-web/app/view/sale/sale/QueryPanel.js

@@ -139,7 +139,7 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
         relativeColumn: [ {
             text: 'id',
             dataIndex: 'sa_id',
-            width: 100,
+            width: 0,
             xtype: 'numbercolumn'
         }, {
             text: '单据编号',
@@ -167,6 +167,14 @@ Ext.define('saas.view.sale.sale.QueryPanel', {
             text: '物料编号',
             dataIndex: 'sd_prodcode',
             width: 120
+        }, {
+            text: '物料名称',
+            dataIndex: 'pe_detail',
+            width: 120
+        }, {
+            text: '物料规格',
+            dataIndex: 'pr_spec',
+            width: 120
         }, {
             text: '数量',
             dataIndex: 'sd_qty',

+ 6 - 2
frontend/saas-web/app/view/stock/stockamount/DataList.js

@@ -89,10 +89,14 @@ Ext.define('saas.view.stock.stockamount.DataList', {
     }, 
     {
         text : "数量", 
-        format:'0,000',
-        xtype:'numbercolumn',
         dataIndex : "rc_number", 
         width : 120.0, 
+        renderer : function(v) {
+            var arr = (v + '.').split('.');
+            var xr = (new Array(arr[1].length>3?3:arr[1].length)).fill('0');
+            var format = '0.' + xr.join();
+            return Ext.util.Format.number(v, format);
+        }
     }, 
     {
         text : "单价", 

+ 1 - 1
frontend/saas-web/app/view/sys/messagelog/DataList.js

@@ -21,7 +21,7 @@ Ext.define('saas.view.sys.messagelog.DataList', {
         width: 150,
         name: 'ml_man',
         xtype: 'textfield',
-        emptyText : '处理人'
+        emptyText : '操作人员'
     },{
         cls:'x-formpanel-btn-orange',
         xtype:'button',

BIN
frontend/saas-web/resources/images/grid/check.png


BIN
frontend/saas-web/resources/images/grid/uncheck.png