24282 2 months ago
parent
commit
8c9867b5d4
21 changed files with 255 additions and 13 deletions
  1. 10 0
      jy-business/src/main/java/com/jy/business/contract/controller/ContractFundReceivedController.java
  2. 34 0
      jy-business/src/main/java/com/jy/business/contract/controller/ContractInfoController.java
  3. 27 3
      jy-business/src/main/java/com/jy/business/contract/dao/ContractFundReceivedDao.java
  4. 6 1
      jy-business/src/main/java/com/jy/business/contract/model/dto/ContractFundReceivedSelectDto.java
  5. 13 0
      jy-business/src/main/java/com/jy/business/contract/model/dto/OrderListDto.java
  6. 10 0
      jy-business/src/main/java/com/jy/business/contract/model/entity/ContractInfo.java
  7. 10 0
      jy-business/src/main/java/com/jy/business/contract/model/table/ContractInfoTable.java
  8. 2 0
      jy-business/src/main/java/com/jy/business/contract/service/ContractFundReceivedService.java
  9. 6 0
      jy-business/src/main/java/com/jy/business/contract/service/ContractInfoService.java
  10. 6 0
      jy-business/src/main/java/com/jy/business/contract/service/impl/ContractFundReceivedServiceImpl.java
  11. 10 0
      jy-business/src/main/java/com/jy/business/contract/service/impl/ContractInfoServiceImpl.java
  12. 1 0
      jy-business/src/main/java/com/jy/business/listener/ContractRabbitListener.java
  13. 10 0
      jy-business/src/main/java/com/jy/business/payment/controller/PaymentRequestsController.java
  14. 25 0
      jy-business/src/main/java/com/jy/business/payment/dao/PaymentRequestsDao.java
  15. 18 7
      jy-business/src/main/java/com/jy/business/payment/dao/PaymentRequestsDetailDao.java
  16. 15 0
      jy-business/src/main/java/com/jy/business/payment/model/dto/DetailListDto.java
  17. 33 0
      jy-business/src/main/java/com/jy/business/payment/model/vo/DetailListVo.java
  18. 5 0
      jy-business/src/main/java/com/jy/business/payment/model/vo/PaymentRequestsDetailVo.java
  19. 1 1
      jy-business/src/main/java/com/jy/business/payment/model/vo/PaymentRequestsVo.java
  20. 4 0
      jy-business/src/main/java/com/jy/business/payment/service/PaymentRequestsService.java
  21. 9 1
      jy-business/src/main/java/com/jy/business/payment/service/impl/PaymentRequestsServiceImpl.java

+ 10 - 0
jy-business/src/main/java/com/jy/business/contract/controller/ContractFundReceivedController.java

@@ -13,6 +13,8 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.List;
+
 /**
  * <p>
  * 合同到账 前端控制器
@@ -31,6 +33,14 @@ public class ContractFundReceivedController {
     /**
      * 合同到账分页
      */
+    @GetMapping("/getList")
+    public List<ContractFundReceivedVo> getList(ContractFundReceivedSelectDto dto) {
+        return contractFundReceivedService.getList(dto);
+    }
+
+    /**
+     * 合同到账分页
+     */
     @GetMapping("/getPage")
     public Page<ContractFundReceivedVo> getPage(ContractFundReceivedSelectDto dto) {
         return contractFundReceivedService.getPage(dto);

+ 34 - 0
jy-business/src/main/java/com/jy/business/contract/controller/ContractInfoController.java

@@ -1,13 +1,20 @@
 package com.jy.business.contract.controller;
 
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.extra.spring.SpringUtil;
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson2.JSONObject;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jy.business.contract.model.dto.ContractInfoDto;
 import com.jy.business.contract.model.dto.ContractInfoSelectDto;
+import com.jy.business.contract.model.dto.OrderListDto;
 import com.jy.business.contract.model.vo.ContractInfoVo;
 import com.jy.business.contract.model.vo.ContractStatisticsVo;
 import com.jy.business.contract.model.vo.TransactionVo;
 import com.jy.business.contract.service.ContractInfoService;
 import com.jy.framework.model.base.BaseSelectDto;
+import com.jy.framework.model.base.R;
+import com.jy.framework.model.constants.ProfileConstant;
 import jakarta.annotation.Resource;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -93,4 +100,31 @@ public class ContractInfoController {
         return contractInfoService.getTransactionList(dto.getId());
     }
 
+
+    private static final String devUrl = "http://111.229.165.209:10004/api/";
+    private static final String prodUrl = "http://111.229.165.209:10002/api/";
+
+    @GetMapping("/getOrderList")
+    public Object getOrderList(OrderListDto dto) {
+        dto.setSign("jy_api_request");
+
+        String url = (ProfileConstant.PROD.equals(SpringUtil.getActiveProfile()) ? prodUrl : devUrl)
+                + "api/orderInfo/getOrderList?" + HttpUtil.toParams(BeanUtil.beanToMap(dto));
+        String result = HttpUtil.get(url);
+        try {
+            JSONObject parse = JSONObject.parse(result);
+            if (parse.getInteger("code") == 200) {
+                return parse.get("data");
+            }
+            return R.fail(parse.getString("msg"));
+        } catch (Exception e) {
+            return R.fail("请求失败:" + result);
+        }
+    }
+
+    @PostMapping("settlement")
+    public void settlement(@RequestBody ContractInfoDto dto) {
+        contractInfoService.settlement(dto);
+    }
+
 }

+ 27 - 3
jy-business/src/main/java/com/jy/business/contract/dao/ContractFundReceivedDao.java

@@ -1,7 +1,6 @@
 package com.jy.business.contract.dao;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.jy.business.capital.dao.CapitalAccountDao;
 import com.jy.business.capital.model.table.CapitalAccountTable;
 import com.jy.business.contract.mapper.ContractFundReceivedMapper;
 import com.jy.business.contract.model.dto.ContractFundReceivedSelectDto;
@@ -10,13 +9,38 @@ import com.jy.business.contract.model.table.ContractFundReceivedTable;
 import com.jy.business.contract.model.table.ContractInfoTable;
 import com.jy.business.contract.model.vo.ContractFundReceivedVo;
 import com.jy.framework.model.base.BaseDao;
-import com.jy.system.service.AuthService;
-import jakarta.annotation.Resource;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 @Service
 public class ContractFundReceivedDao extends BaseDao<ContractFundReceivedMapper, ContractFundReceived> {
 
+    public List<ContractFundReceivedVo> getList(ContractFundReceivedSelectDto dto) {
+        ContractFundReceivedTable cfr = ContractFundReceivedTable.cfr;
+        ContractInfoTable ci = ContractInfoTable.ci;
+        CapitalAccountTable ca = CapitalAccountTable.ca;
+
+        return sql(ContractFundReceivedVo.class)
+                .select(
+                        cfr.all,
+                        ci.contractNo,
+                        ca.accountAlias
+                )
+                .from(cfr)
+                .leftJoin(ci).on(ci.id.eq(cfr.contractId))
+                .leftJoin(ca).on(ca.id.eq(cfr.capitalAccountId))
+                .where(
+                        cfr.hasReceived.eq(dto.getHasReceived()),
+                        ci.contractNo.like(dto.getContractNo()),
+                        ci.id.eq(dto.getContractId())
+                )
+                .orderBy(
+                        cfr.id.desc()
+                )
+                .list();
+    }
+
     /**
      * 合同到账分页
      */

+ 6 - 1
jy-business/src/main/java/com/jy/business/contract/model/dto/ContractFundReceivedSelectDto.java

@@ -7,7 +7,7 @@ import lombok.Setter;
 /**
  * 合同到账列表查询入参实体
  *
- * @author 
+ * @author
  * @since 2025-06-11
  */
 @Getter
@@ -24,4 +24,9 @@ public class ContractFundReceivedSelectDto extends BaseSelectDto {
      */
     private String contractNo;
 
+    /**
+     * 合同id
+     */
+    private Long contractId;
+
 }

+ 13 - 0
jy-business/src/main/java/com/jy/business/contract/model/dto/OrderListDto.java

@@ -0,0 +1,13 @@
+package com.jy.business.contract.model.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class OrderListDto {
+
+    private String sign;
+    private Long contractId;
+
+}

+ 10 - 0
jy-business/src/main/java/com/jy/business/contract/model/entity/ContractInfo.java

@@ -219,6 +219,16 @@ public class ContractInfo extends BaseIdPo {
     private BigDecimal amount;
 
     /**
+     * 是否结算
+     */
+    private Integer hasSettlement;
+
+    /**
+     * 结算利润
+     */
+    private BigDecimal settlementProfit;
+
+    /**
      * 备注
      */
     private String remark;

+ 10 - 0
jy-business/src/main/java/com/jy/business/contract/model/table/ContractInfoTable.java

@@ -210,6 +210,16 @@ public class ContractInfoTable extends Table<ContractInfo> {
     public QueryColumn amount = this.field(ContractInfo::getAmount);
 
     /**
+     * 是否结算
+     */
+    public QueryColumn hasSettlement = this.field(ContractInfo::getHasSettlement);
+
+    /**
+     * 结算利润
+     */
+    public QueryColumn settlementProfit = this.field(ContractInfo::getSettlementProfit);
+
+    /**
      * 备注
      */
     public QueryColumn remark = this.field(ContractInfo::getRemark);

+ 2 - 0
jy-business/src/main/java/com/jy/business/contract/service/ContractFundReceivedService.java

@@ -47,4 +47,6 @@ public interface ContractFundReceivedService {
      */
     void confirmArrivalAccount(ContractFundReceivedDto dto);
 
+    List<ContractFundReceivedVo> getList(ContractFundReceivedSelectDto dto);
+
 }

+ 6 - 0
jy-business/src/main/java/com/jy/business/contract/service/ContractInfoService.java

@@ -6,6 +6,10 @@ import com.jy.business.contract.model.dto.ContractInfoSelectDto;
 import com.jy.business.contract.model.vo.ContractInfoVo;
 import com.jy.business.contract.model.vo.ContractStatisticsVo;
 import com.jy.business.contract.model.vo.TransactionVo;
+import com.jy.framework.model.validation.AddGroup;
+import com.jy.framework.model.validation.EditGroup;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Null;
 
 import java.util.List;
 
@@ -56,4 +60,6 @@ public interface ContractInfoService {
      */
     List<TransactionVo> getTransactionList(Long id);
 
+    void settlement(ContractInfoDto dto);
+
 }

+ 6 - 0
jy-business/src/main/java/com/jy/business/contract/service/impl/ContractFundReceivedServiceImpl.java

@@ -42,6 +42,12 @@ public class ContractFundReceivedServiceImpl implements ContractFundReceivedServ
     @Resource
     private CapitalAccountDao capitalAccountDao;
 
+
+    @Override
+    public List<ContractFundReceivedVo> getList(ContractFundReceivedSelectDto dto) {
+        return contractFundReceivedDao.getList(dto);
+    }
+
     @Override
     public Page<ContractFundReceivedVo> getPage(ContractFundReceivedSelectDto dto) {
         return contractFundReceivedDao.getPage(dto);

+ 10 - 0
jy-business/src/main/java/com/jy/business/contract/service/impl/ContractInfoServiceImpl.java

@@ -10,6 +10,7 @@ import com.jy.business.contract.dao.ContractInfoDao;
 import com.jy.business.contract.model.dto.ContractInfoDto;
 import com.jy.business.contract.model.dto.ContractInfoSelectDto;
 import com.jy.business.contract.model.entity.ContractDetail;
+import com.jy.business.contract.model.entity.ContractInfo;
 import com.jy.business.contract.model.vo.ContractInfoVo;
 import com.jy.business.contract.model.vo.ContractStatisticsVo;
 import com.jy.business.contract.model.vo.TransactionVo;
@@ -161,4 +162,13 @@ public class ContractInfoServiceImpl implements ContractInfoService {
         return contractInfoDao.getTransactionList(id);
     }
 
+    @Override
+    public void settlement(ContractInfoDto dto) {
+        contractInfoDao.update(q -> q
+                .eq(BaseIdPo::getId, dto.getId())
+                .set(ContractInfo::getHasSettlement, dto.getHasSettlement())
+                .set(ContractInfo::getSettlementProfit, dto.getSettlementProfit())
+        );
+    }
+
 }

+ 1 - 0
jy-business/src/main/java/com/jy/business/listener/ContractRabbitListener.java

@@ -6,6 +6,7 @@ import com.jy.business.contract.dao.ContractDetailDao;
 import com.jy.business.contract.dao.ContractInfoDao;
 import com.jy.business.contract.model.dto.ContractInfoDto;
 import com.jy.business.contract.model.entity.ContractDetail;
+import com.jy.framework.model.constants.CommonConstant;
 import com.rabbitmq.client.Channel;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.amqp.core.Message;

+ 10 - 0
jy-business/src/main/java/com/jy/business/payment/controller/PaymentRequestsController.java

@@ -2,10 +2,12 @@ package com.jy.business.payment.controller;
 
 import cn.hutool.core.bean.BeanUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.jy.business.payment.model.dto.DetailListDto;
 import com.jy.business.payment.model.dto.PaymentRequestsDto;
 import com.jy.business.payment.model.dto.PaymentRequestsSelectDto;
 import com.jy.business.payment.model.entity.PaymentRemit;
 import com.jy.business.payment.model.entity.PaymentRequests;
+import com.jy.business.payment.model.vo.DetailListVo;
 import com.jy.business.payment.model.vo.PaymentRemitExportVo;
 import com.jy.business.payment.model.vo.PaymentRequestsExportVo;
 import com.jy.business.payment.model.vo.PaymentRequestsVo;
@@ -137,4 +139,12 @@ public class PaymentRequestsController {
         return paymentRequestsService.getReceiveCountList();
     }
 
+    /**
+     * 请款打款详情列表
+     */
+    @GetMapping("/getDetailList")
+    public List<DetailListVo> getDetailList(DetailListDto dto) {
+        return paymentRequestsService.getDetailList(dto);
+    }
+
 }

+ 25 - 0
jy-business/src/main/java/com/jy/business/payment/dao/PaymentRequestsDao.java

@@ -4,9 +4,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jy.business.capital.model.table.CapitalAccountTable;
 import com.jy.business.corporation.model.table.CorporationTable;
 import com.jy.business.payment.mapper.PaymentRequestsMapper;
+import com.jy.business.payment.model.dto.DetailListDto;
 import com.jy.business.payment.model.dto.PaymentRequestsSelectDto;
 import com.jy.business.payment.model.entity.PaymentRequests;
+import com.jy.business.payment.model.table.PaymentRemitTable;
+import com.jy.business.payment.model.table.PaymentRequestsDetailTable;
 import com.jy.business.payment.model.table.PaymentRequestsTable;
+import com.jy.business.payment.model.vo.DetailListVo;
 import com.jy.business.payment.model.vo.PaymentRequestsVo;
 import com.jy.flow.model.enums.FlowStatusEnum;
 import com.jy.framework.model.base.BaseDao;
@@ -166,4 +170,25 @@ public class PaymentRequestsDao extends BaseDao<PaymentRequestsMapper, PaymentRe
                 .list();
     }
 
+    public List<DetailListVo> getDetailList(DetailListDto dto) {
+        PaymentRequestsTable pr = PaymentRequestsTable.pr;
+        PaymentRequestsDetailTable prd = PaymentRequestsDetailTable.prd;
+        PaymentRemitTable pre = PaymentRemitTable.payment_remit;
+
+        return sql(DetailListVo.class)
+                .select(
+                        prd.amount,
+                        pr.createTime.as(DetailListVo::getRequestsTime),
+                        pre.createTime.as(DetailListVo::getRemitTime),
+                        prd.expenseType.as(DetailListVo::getType)
+                )
+                .from(prd)
+                .innerJoin(pr).on(prd.paymentRequestsId.eq(pr.id))
+                .leftJoin(pre).on(pre.paymentRequestsId.eq(pr.id))
+                .where(
+                        prd.contractId.eq(dto.getContractId())
+                )
+                .list();
+    }
+
 }

+ 18 - 7
jy-business/src/main/java/com/jy/business/payment/dao/PaymentRequestsDetailDao.java

@@ -1,10 +1,11 @@
 package com.jy.business.payment.dao;
 
+import com.jy.business.contract.model.table.ContractInfoTable;
 import com.jy.business.payment.mapper.PaymentRequestsDetailMapper;
 import com.jy.business.payment.model.entity.PaymentRequestsDetail;
+import com.jy.business.payment.model.table.PaymentRequestsDetailTable;
+import com.jy.business.payment.model.vo.PaymentRequestsDetailVo;
 import com.jy.framework.model.base.BaseDao;
-import com.jy.system.service.AuthService;
-import jakarta.annotation.Resource;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -12,12 +13,22 @@ import java.util.List;
 @Service
 public class PaymentRequestsDetailDao extends BaseDao<PaymentRequestsDetailMapper, PaymentRequestsDetail> {
 
-    @Resource
-    private AuthService authService;
-
     // 获取明细列表
-    public List<PaymentRequestsDetail> getListByPaymentRequestsId(Long paymentRequestsId) {
-        return lambdaQuery().eq(PaymentRequestsDetail::getPaymentRequestsId, paymentRequestsId).list();
+    public List<PaymentRequestsDetailVo> getListByPaymentRequestsId(Long paymentRequestsId) {
+        PaymentRequestsDetailTable prd = PaymentRequestsDetailTable.prd;
+        ContractInfoTable ci = ContractInfoTable.ci;
+
+        return sql(PaymentRequestsDetailVo.class)
+                .select(
+                        prd.all,
+                        ci.contractNo
+                )
+                .from(prd)
+                .leftJoin(ci).on(ci.id.eq(prd.contractId))
+                .where(
+                        prd.paymentRequestsId.eq(paymentRequestsId)
+                )
+                .list();
     }
 
 }

+ 15 - 0
jy-business/src/main/java/com/jy/business/payment/model/dto/DetailListDto.java

@@ -0,0 +1,15 @@
+package com.jy.business.payment.model.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class DetailListDto {
+
+    /**
+     * 合同id
+     */
+    private Long contractId;
+
+}

+ 33 - 0
jy-business/src/main/java/com/jy/business/payment/model/vo/DetailListVo.java

@@ -0,0 +1,33 @@
+package com.jy.business.payment.model.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Getter
+@Setter
+public class DetailListVo {
+
+    /**
+     * 请款金额
+     */
+    private BigDecimal amount;
+
+    /**
+     * 请款时间
+     */
+    private Date requestsTime;
+
+    /**
+     * 打款时间
+     */
+    private Date remitTime;
+
+    /**
+     * 请款类型
+     */
+    private Integer type;
+
+}

+ 5 - 0
jy-business/src/main/java/com/jy/business/payment/model/vo/PaymentRequestsDetailVo.java

@@ -14,4 +14,9 @@ import lombok.Setter;
 @Setter
 public class PaymentRequestsDetailVo extends PaymentRequestsDetail {
 
+    /**
+     * 合同编号
+     */
+    private String contractNo;
+
 }

+ 1 - 1
jy-business/src/main/java/com/jy/business/payment/model/vo/PaymentRequestsVo.java

@@ -40,6 +40,6 @@ public class PaymentRequestsVo extends PaymentRequests {
     /**
      * 请款明细
      */
-    private List<PaymentRequestsDetail> paymentRequestsDetailList;
+    private List<PaymentRequestsDetailVo> paymentRequestsDetailList;
 
 }

+ 4 - 0
jy-business/src/main/java/com/jy/business/payment/service/PaymentRequestsService.java

@@ -1,10 +1,12 @@
 package com.jy.business.payment.service;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.jy.business.payment.model.dto.DetailListDto;
 import com.jy.business.payment.model.dto.PaymentRequestsDto;
 import com.jy.business.payment.model.dto.PaymentRequestsSelectDto;
 import com.jy.business.payment.model.entity.PaymentRemit;
 import com.jy.business.payment.model.entity.PaymentRequests;
+import com.jy.business.payment.model.vo.DetailListVo;
 import com.jy.business.payment.model.vo.PaymentRequestsVo;
 import com.jy.flow.model.dto.RetrieveDto;
 
@@ -62,4 +64,6 @@ public interface PaymentRequestsService {
 
     List<PaymentRequests> getReceiveCountList();
 
+    List<DetailListVo> getDetailList(DetailListDto dto);
+
 }

+ 9 - 1
jy-business/src/main/java/com/jy/business/payment/service/impl/PaymentRequestsServiceImpl.java

@@ -6,11 +6,14 @@ import com.jy.business.capital.service.CapitalTransactionsService;
 import com.jy.business.payment.dao.PaymentRemitDao;
 import com.jy.business.payment.dao.PaymentRequestsDao;
 import com.jy.business.payment.dao.PaymentRequestsDetailDao;
+import com.jy.business.payment.model.dto.DetailListDto;
 import com.jy.business.payment.model.dto.PaymentRequestsDto;
 import com.jy.business.payment.model.dto.PaymentRequestsSelectDto;
 import com.jy.business.payment.model.entity.PaymentRemit;
 import com.jy.business.payment.model.entity.PaymentRequests;
 import com.jy.business.payment.model.entity.PaymentRequestsDetail;
+import com.jy.business.payment.model.vo.DetailListVo;
+import com.jy.business.payment.model.vo.PaymentRequestsDetailVo;
 import com.jy.business.payment.model.vo.PaymentRequestsVo;
 import com.jy.business.payment.service.PaymentRequestsService;
 import com.jy.flow.model.dto.RetrieveDto;
@@ -64,7 +67,7 @@ public class PaymentRequestsServiceImpl implements PaymentRequestsService {
         PaymentRequestsVo vo = paymentRequestsDao.getDetail(id);
         AssertUtil.notNull(vo, "未知数据");
 
-        List<PaymentRequestsDetail> list = paymentRequestsDetailDao.getListByPaymentRequestsId(id);
+        List<PaymentRequestsDetailVo> list = paymentRequestsDetailDao.getListByPaymentRequestsId(id);
         vo.setPaymentRequestsDetailList(list);
         return vo;
     }
@@ -155,4 +158,9 @@ public class PaymentRequestsServiceImpl implements PaymentRequestsService {
         return paymentRequestsDao.getReceiveCountList(userId);
     }
 
+    @Override
+    public List<DetailListVo> getDetailList(DetailListDto dto) {
+        return paymentRequestsDao.getDetailList(dto);
+    }
+
 }