Browse Source

1.添加供应商报表

heqinwei 7 years ago
parent
commit
e241b1c07a

+ 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>