Bladeren bron

添加往来管理

yzc 1 jaar geleden
bovenliggende
commit
9a4fb7071a
19 gewijzigde bestanden met toevoegingen van 642 en 0 verwijderingen
  1. 17 0
      code/src/test/java/AccountDataSource.java
  2. 46 0
      hx-account/src/main/java/com/fjhx/account/controller/transaction/TransactionController.java
  3. 70 0
      hx-account/src/main/java/com/fjhx/account/controller/transaction/TransactionDepartmentController.java
  4. 17 0
      hx-account/src/main/java/com/fjhx/account/entity/transaction/dto/TransactionDepartmentDto.java
  5. 17 0
      hx-account/src/main/java/com/fjhx/account/entity/transaction/dto/TransactionDepartmentSelectDto.java
  6. 17 0
      hx-account/src/main/java/com/fjhx/account/entity/transaction/dto/TransactionDto.java
  7. 31 0
      hx-account/src/main/java/com/fjhx/account/entity/transaction/dto/TransactionSelectDto.java
  8. 56 0
      hx-account/src/main/java/com/fjhx/account/entity/transaction/po/Transaction.java
  9. 31 0
      hx-account/src/main/java/com/fjhx/account/entity/transaction/po/TransactionDepartment.java
  10. 17 0
      hx-account/src/main/java/com/fjhx/account/entity/transaction/vo/TransactionDepartmentVo.java
  11. 27 0
      hx-account/src/main/java/com/fjhx/account/entity/transaction/vo/TransactionVo.java
  12. 25 0
      hx-account/src/main/java/com/fjhx/account/mapper/transaction/TransactionDepartmentMapper.java
  13. 26 0
      hx-account/src/main/java/com/fjhx/account/mapper/transaction/TransactionMapper.java
  14. 47 0
      hx-account/src/main/java/com/fjhx/account/service/transaction/TransactionDepartmentService.java
  15. 31 0
      hx-account/src/main/java/com/fjhx/account/service/transaction/TransactionService.java
  16. 57 0
      hx-account/src/main/java/com/fjhx/account/service/transaction/impl/TransactionDepartmentServiceImpl.java
  17. 72 0
      hx-account/src/main/java/com/fjhx/account/service/transaction/impl/TransactionServiceImpl.java
  18. 17 0
      hx-account/src/main/resources/mapper/transaction/TransactionDepartmentMapper.xml
  19. 21 0
      hx-account/src/main/resources/mapper/transaction/TransactionMapper.xml

+ 17 - 0
code/src/test/java/AccountDataSource.java

@@ -0,0 +1,17 @@
+import fly.generator.GeneratorApplication;
+
+public class AccountDataSource {
+
+    public static void main(String[] args) {
+        GeneratorApplication.builder()
+                .url("jdbc:mysql://36.134.91.96:12333/bytesailing_account?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true")
+                .username("root")
+                .password("Fjhx@pwd123")
+                .port(9989)
+                .module("hx-account")
+                .parent("com.fjhx.account")
+                .superServiceClass("com.ruoyi.common.core.service.BaseService")
+                .build();
+    }
+
+}

+ 46 - 0
hx-account/src/main/java/com/fjhx/account/controller/transaction/TransactionController.java

@@ -0,0 +1,46 @@
+package com.fjhx.account.controller.transaction;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.account.entity.transaction.dto.TransactionDto;
+import com.fjhx.account.entity.transaction.dto.TransactionSelectDto;
+import com.fjhx.account.entity.transaction.vo.TransactionVo;
+import com.fjhx.account.service.transaction.TransactionService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * 往来管理 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@RestController
+@RequestMapping("/transaction")
+public class TransactionController {
+
+    @Autowired
+    private TransactionService transactionService;
+
+    /**
+     * 往来管理分页
+     */
+    @PostMapping("/page")
+    public Page<TransactionVo> page(@RequestBody TransactionSelectDto dto) {
+        return transactionService.getPage(dto);
+    }
+
+    /**
+     * 往来管理新增
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody TransactionDto transactionDto) {
+        transactionService.add(transactionDto);
+    }
+
+}

+ 70 - 0
hx-account/src/main/java/com/fjhx/account/controller/transaction/TransactionDepartmentController.java

@@ -0,0 +1,70 @@
+package com.fjhx.account.controller.transaction;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.account.entity.transaction.dto.TransactionDepartmentDto;
+import com.fjhx.account.entity.transaction.dto.TransactionDepartmentSelectDto;
+import com.fjhx.account.entity.transaction.po.TransactionDepartment;
+import com.fjhx.account.entity.transaction.vo.TransactionDepartmentVo;
+import com.fjhx.account.service.transaction.TransactionDepartmentService;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 往来单位 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@RestController
+@RequestMapping("/transactionDepartment")
+public class TransactionDepartmentController {
+
+    @Autowired
+    private TransactionDepartmentService transactionDepartmentService;
+
+    /**
+     * 往来单位列表
+     */
+    @GetMapping("/list")
+    public List<TransactionDepartment> list() {
+        return transactionDepartmentService.getList();
+    }
+
+    /**
+     * 往来单位分页
+     */
+    @PostMapping("/page")
+    public Page<TransactionDepartmentVo> page(@RequestBody TransactionDepartmentSelectDto dto) {
+        return transactionDepartmentService.getPage(dto);
+    }
+
+    /**
+     * 往来单位新增
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody TransactionDepartmentDto transactionDepartmentDto) {
+        transactionDepartmentService.add(transactionDepartmentDto);
+    }
+
+    /**
+     * 往来单位编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody TransactionDepartmentDto transactionDepartmentDto) {
+        transactionDepartmentService.edit(transactionDepartmentDto);
+    }
+
+    /**
+     * 往来单位删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        transactionDepartmentService.delete(dto.getId());
+    }
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/entity/transaction/dto/TransactionDepartmentDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.entity.transaction.dto;
+
+import com.fjhx.account.entity.transaction.po.TransactionDepartment;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 往来单位新增编辑入参实体
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Getter
+@Setter
+public class TransactionDepartmentDto extends TransactionDepartment {
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/entity/transaction/dto/TransactionDepartmentSelectDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.entity.transaction.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 往来单位列表查询入参实体
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Getter
+@Setter
+public class TransactionDepartmentSelectDto extends BaseSelectDto {
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/entity/transaction/dto/TransactionDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.entity.transaction.dto;
+
+import com.fjhx.account.entity.transaction.po.Transaction;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 往来管理新增编辑入参实体
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Getter
+@Setter
+public class TransactionDto extends Transaction {
+
+}

+ 31 - 0
hx-account/src/main/java/com/fjhx/account/entity/transaction/dto/TransactionSelectDto.java

@@ -0,0 +1,31 @@
+package com.fjhx.account.entity.transaction.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 往来管理列表查询入参实体
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Getter
+@Setter
+public class TransactionSelectDto extends BaseSelectDto {
+
+    /**
+     * 是否流水 1是 0否
+     */
+    private String isFlowingWater;
+    /**
+     * 往来单位
+     */
+    private Long departmentId;
+
+    /**
+     * 往来类型 0收入 1支出
+     */
+    private Integer type;
+
+}

+ 56 - 0
hx-account/src/main/java/com/fjhx/account/entity/transaction/po/Transaction.java

@@ -0,0 +1,56 @@
+package com.fjhx.account.entity.transaction.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 往来管理
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Getter
+@Setter
+@TableName("transaction")
+public class Transaction extends BasePo {
+
+    /**
+     * 往来单位
+     */
+    private Long departmentId;
+
+    /**
+     * 往来类型 0收入 1支出
+     */
+    private Integer type;
+
+    /**
+     * 币种(字典account_currency)
+     */
+    private String currency;
+
+    /**
+     * 往来金额
+     */
+    private String amount;
+
+    /**
+     * 是否流水 1是 0否
+     */
+    private String isFlowingWater;
+
+    /**
+     * 往来账户
+     */
+    private Long accountId;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 31 - 0
hx-account/src/main/java/com/fjhx/account/entity/transaction/po/TransactionDepartment.java

@@ -0,0 +1,31 @@
+package com.fjhx.account.entity.transaction.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 往来单位
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Getter
+@Setter
+@TableName("transaction_department")
+public class TransactionDepartment extends BasePo {
+
+    /**
+     * 名称
+     */
+    private String name;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 17 - 0
hx-account/src/main/java/com/fjhx/account/entity/transaction/vo/TransactionDepartmentVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.account.entity.transaction.vo;
+
+import com.fjhx.account.entity.transaction.po.TransactionDepartment;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 往来单位列表查询返回值实体
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Getter
+@Setter
+public class TransactionDepartmentVo extends TransactionDepartment {
+
+}

+ 27 - 0
hx-account/src/main/java/com/fjhx/account/entity/transaction/vo/TransactionVo.java

@@ -0,0 +1,27 @@
+package com.fjhx.account.entity.transaction.vo;
+
+import com.fjhx.account.entity.transaction.po.Transaction;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 往来管理列表查询返回值实体
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Getter
+@Setter
+public class TransactionVo extends Transaction {
+
+    /**
+     * 往来单位名称
+     */
+    private String departmentName;
+
+    /**
+     * 往来账户名称
+     */
+    private String accountName;
+
+}

+ 25 - 0
hx-account/src/main/java/com/fjhx/account/mapper/transaction/TransactionDepartmentMapper.java

@@ -0,0 +1,25 @@
+package com.fjhx.account.mapper.transaction;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.account.entity.transaction.po.TransactionDepartment;
+import com.fjhx.account.entity.transaction.vo.TransactionDepartmentVo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * <p>
+ * 往来单位 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+public interface TransactionDepartmentMapper extends BaseMapper<TransactionDepartment> {
+
+    /**
+     * 往来单位分页
+     */
+    Page<TransactionDepartmentVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<TransactionDepartment> wrapper);
+
+}

+ 26 - 0
hx-account/src/main/java/com/fjhx/account/mapper/transaction/TransactionMapper.java

@@ -0,0 +1,26 @@
+package com.fjhx.account.mapper.transaction;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.account.entity.transaction.po.Transaction;
+import com.fjhx.account.entity.transaction.vo.TransactionVo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 往来管理 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+public interface TransactionMapper extends BaseMapper<Transaction> {
+
+    /**
+     * 往来管理分页
+     */
+    Page<TransactionVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<Transaction> wrapper);
+
+}

+ 47 - 0
hx-account/src/main/java/com/fjhx/account/service/transaction/TransactionDepartmentService.java

@@ -0,0 +1,47 @@
+package com.fjhx.account.service.transaction;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.account.entity.transaction.dto.TransactionDepartmentDto;
+import com.fjhx.account.entity.transaction.dto.TransactionDepartmentSelectDto;
+import com.fjhx.account.entity.transaction.po.TransactionDepartment;
+import com.fjhx.account.entity.transaction.vo.TransactionDepartmentVo;
+import com.ruoyi.common.core.service.BaseService;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 往来单位 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+public interface TransactionDepartmentService extends BaseService<TransactionDepartment> {
+
+    /**
+     * 往来单位列表
+     */
+    List<TransactionDepartment> getList();
+
+    /**
+     * 往来单位分页
+     */
+    Page<TransactionDepartmentVo> getPage(TransactionDepartmentSelectDto dto);
+
+    /**
+     * 往来单位新增
+     */
+    void add(TransactionDepartmentDto transactionDepartmentDto);
+
+    /**
+     * 往来单位编辑
+     */
+    void edit(TransactionDepartmentDto transactionDepartmentDto);
+
+    /**
+     * 往来单位删除
+     */
+    void delete(Long id);
+
+}

+ 31 - 0
hx-account/src/main/java/com/fjhx/account/service/transaction/TransactionService.java

@@ -0,0 +1,31 @@
+package com.fjhx.account.service.transaction;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.account.entity.transaction.dto.TransactionDto;
+import com.fjhx.account.entity.transaction.dto.TransactionSelectDto;
+import com.fjhx.account.entity.transaction.po.Transaction;
+import com.fjhx.account.entity.transaction.vo.TransactionVo;
+import com.ruoyi.common.core.service.BaseService;
+
+
+/**
+ * <p>
+ * 往来管理 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+public interface TransactionService extends BaseService<Transaction> {
+
+    /**
+     * 往来管理分页
+     */
+    Page<TransactionVo> getPage(TransactionSelectDto dto);
+
+    /**
+     * 往来管理新增
+     */
+    void add(TransactionDto transactionDto);
+
+}

+ 57 - 0
hx-account/src/main/java/com/fjhx/account/service/transaction/impl/TransactionDepartmentServiceImpl.java

@@ -0,0 +1,57 @@
+package com.fjhx.account.service.transaction.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.account.entity.transaction.dto.TransactionDepartmentDto;
+import com.fjhx.account.entity.transaction.dto.TransactionDepartmentSelectDto;
+import com.fjhx.account.entity.transaction.po.TransactionDepartment;
+import com.fjhx.account.entity.transaction.vo.TransactionDepartmentVo;
+import com.fjhx.account.mapper.transaction.TransactionDepartmentMapper;
+import com.fjhx.account.service.transaction.TransactionDepartmentService;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 往来单位 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Service
+public class TransactionDepartmentServiceImpl extends ServiceImpl<TransactionDepartmentMapper, TransactionDepartment> implements TransactionDepartmentService {
+
+    @Override
+    public List<TransactionDepartment> getList() {
+        List<TransactionDepartment> list = this.list();
+        return list;
+    }
+
+    @Override
+    public Page<TransactionDepartmentVo> getPage(TransactionDepartmentSelectDto dto) {
+        IWrapper<TransactionDepartment> wrapper = getWrapper();
+        wrapper.orderByDesc("td", TransactionDepartment::getId);
+        Page<TransactionDepartmentVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+
+    @Override
+    public void add(TransactionDepartmentDto transactionDepartmentDto) {
+        this.save(transactionDepartmentDto);
+    }
+
+    @Override
+    public void edit(TransactionDepartmentDto transactionDepartmentDto) {
+        this.updateById(transactionDepartmentDto);
+    }
+
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+    }
+
+}

+ 72 - 0
hx-account/src/main/java/com/fjhx/account/service/transaction/impl/TransactionServiceImpl.java

@@ -0,0 +1,72 @@
+package com.fjhx.account.service.transaction.impl;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.account.entity.account.po.AccountManagement;
+import com.fjhx.account.entity.transaction.dto.TransactionDto;
+import com.fjhx.account.entity.transaction.dto.TransactionSelectDto;
+import com.fjhx.account.entity.transaction.po.Transaction;
+import com.fjhx.account.entity.transaction.vo.TransactionVo;
+import com.fjhx.account.mapper.transaction.TransactionMapper;
+import com.fjhx.account.service.account.AccountManagementService;
+import com.fjhx.account.service.transaction.TransactionDepartmentService;
+import com.fjhx.account.service.transaction.TransactionService;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.ruoyi.common.utils.wrapper.SqlField;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+
+/**
+ * <p>
+ * 往来管理 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-06-26
+ */
+@Service
+public class TransactionServiceImpl extends ServiceImpl<TransactionMapper, Transaction> implements TransactionService {
+
+    @Autowired
+    private AccountManagementService accountManagementService;
+    @Autowired
+    private TransactionDepartmentService transactionDepartmentService;
+
+    @Override
+    public Page<TransactionVo> getPage(TransactionSelectDto dto) {
+        IWrapper<Transaction> wrapper = getWrapper();
+        //条件筛选
+        wrapper.eq(Transaction::getIsFlowingWater, dto.getIsFlowingWater());
+        wrapper.eq(Transaction::getDepartmentId, dto.getDepartmentId());
+        wrapper.eq(Transaction::getType, dto.getType());
+        //关键字搜索
+        List<Long> accountIds = accountManagementService.listObject(AccountManagement::getId,
+                q -> q.like(AccountManagement::getName, dto.getKeyword()));
+        wrapper.keyword(dto.getKeyword(),
+                new SqlField(Transaction::getAmount),
+                new SqlField(Transaction::getRemark)
+        ).or().in(Transaction::getAccountId, accountIds);
+        //排序
+        wrapper.orderByDesc("t", Transaction::getId);
+        Page<TransactionVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        //赋值往来单位名称
+        List<TransactionVo> records = page.getRecords();
+        transactionDepartmentService.attributeAssign(records, TransactionVo::getDepartmentId, (item, transactionDepartment) -> {
+            item.setDepartmentName(transactionDepartment.getName());
+        });
+        //赋值往来账户名称
+        accountManagementService.attributeAssign(records, TransactionVo::getAccountId, (item, account) -> {
+            item.setAccountName(account.getName());
+        });
+        return page;
+    }
+
+    @Override
+    public void add(TransactionDto transactionDto) {
+        this.save(transactionDto);
+    }
+
+}

+ 17 - 0
hx-account/src/main/resources/mapper/transaction/TransactionDepartmentMapper.xml

@@ -0,0 +1,17 @@
+<?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.fjhx.account.mapper.transaction.TransactionDepartmentMapper">
+
+    <select id="getPage" resultType="com.fjhx.account.entity.transaction.vo.TransactionDepartmentVo">
+        select td.id,
+               td.name,
+               td.remark,
+               td.create_user,
+               td.create_time,
+               td.update_user,
+               td.update_time
+        from transaction_department td
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 21 - 0
hx-account/src/main/resources/mapper/transaction/TransactionMapper.xml

@@ -0,0 +1,21 @@
+<?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.fjhx.account.mapper.transaction.TransactionMapper">
+    <select id="getPage" resultType="com.fjhx.account.entity.transaction.vo.TransactionVo">
+        select t.id,
+               t.department_id,
+               t.type,
+               t.currency,
+               t.amount,
+               t.is_flowing_water,
+               t.account_id,
+               t.remark,
+               t.create_user,
+               t.create_time,
+               t.update_user,
+               t.update_time
+        from transaction t
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>