无关风月
2025-02-17 45f3ee40badcc43f1984ee67414443d3188c6b0e
Merge branch 'master' of https://gitee.com/xiaochen991015/xizang
7个文件已修改
102 ■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTenantController.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/model/TInformation.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TContractQuery.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TInvoiceServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TInformationMapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TBillController.java
@@ -10,6 +10,7 @@
import com.ruoyi.system.model.TBill;
import com.ruoyi.system.query.TBillQuery;
import com.ruoyi.system.service.TBillService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -27,6 +28,7 @@
 * @author xiaochen
 * @since 2025-01-17
 */
@Api(tags = "账单管理")
@RestController
@RequestMapping("/t-bill")
public class TBillController {
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java
@@ -76,7 +76,6 @@
    private TCheckAcceptRecordService checkAcceptRecordService;
    @ApiOperation(value = "测试生成账单")
    @PostMapping(value = "/testBill")
    public R testBill(String id) {
        TContract contract = contractService.getById(id);
        // 查询所有已签订的合同并且未生成第一笔账单的
@@ -229,8 +228,7 @@
    @PreAuthorize("@ss.hasPermi('system:contract:delete')")
    @DeleteMapping(value = "/deleteContractByIds")
    public R<Boolean> deleteContractByIds
            (@RequestParam String ids) {
    public R<Boolean> deleteContractByIds(@RequestParam String ids) {
        if (StringUtils.isNotEmpty(ids)){
            contractService.removeBatchByIds(Arrays.asList(ids.split(",")));
        }
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTenantController.java
@@ -1,6 +1,9 @@
package com.ruoyi.web.controller.api;
import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.constant.DictConstants;
@@ -9,18 +12,29 @@
import com.ruoyi.common.utils.DictUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.WebUtils;
import com.ruoyi.system.dto.TTenantDTO;
import com.ruoyi.system.export.ContractExport;
import com.ruoyi.system.model.TContract;
import com.ruoyi.system.model.TTenant;
import com.ruoyi.system.query.TContractQuery;
import com.ruoyi.system.query.TTenantQuery;
import com.ruoyi.system.service.TContractService;
import com.ruoyi.system.service.TTenantService;
import com.ruoyi.system.vo.TenantVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
/**
@@ -37,9 +51,11 @@
public class TTenantController {
    private final TTenantService tenantService;
    private final TContractService contractService;
    @Autowired
    public TTenantController(TTenantService tenantService) {
    public TTenantController(TTenantService tenantService, TContractService contractService) {
        this.tenantService = tenantService;
        this.contractService = contractService;
    }
    /**
@@ -88,9 +104,16 @@
    @GetMapping(value = "/getDetailById")
    public R<TTenant> getDetailById(@RequestParam String id) {
        TTenant tenant = tenantService.getById(id);
        tenant.setTenantAttributes(DictUtils.getDictLabel(DictConstants.DICT_TYPE_TENANT_ATTRIBUTE,tenant.getTenantAttributes()));
        tenant.setTenantType(DictUtils.getDictLabel(DictConstants.DICT_TYPE_TENANT_TYPE,tenant.getTenantType()));
        tenant.setTenantAttributes(StringUtils.isNotEmpty(tenant.getTenantAttributes())?DictUtils.getDictLabel(DictConstants.DICT_TYPE_TENANT_ATTRIBUTE,tenant.getTenantAttributes()):"");
        tenant.setTenantType(StringUtils.isNotEmpty(tenant.getTenantType())?DictUtils.getDictLabel(DictConstants.DICT_TYPE_TENANT_TYPE,tenant.getTenantType()):"");
        return R.ok(tenant);
    }
    @PreAuthorize("@ss.hasPermi('system:contract:list')")
    @ApiOperation(value = "获取合同分页列表")
    @GetMapping(value = "/contractListByTenantId")
    public R<List<TContract>> contractListByTenantId(@RequestParam String tenantId) {
        return R.ok(contractService.list(Wrappers.lambdaQuery(TContract.class).eq(TContract::getTenantId, tenantId)));
    }
    /**
@@ -115,5 +138,53 @@
        return R.ok(tenantService.removeByIds(ids));
    }
    /**
     * 导出
     */
    @ApiOperation(value = "导出")
    @PreAuthorize("@ss.hasPermi('system:contract:export')")
    @Log(title = "导出", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void exportOpticalInspection(@Validated @RequestBody TContractQuery query)
    {
        List<ContractExport> contractExports = new ArrayList<>();
        List<TContract> exportList = contractService.list(Wrappers.lambdaQuery(TContract.class).eq(TContract::getTenantId, query.getTenantId()));
        for (TContract contract : exportList) {
            ContractExport contractExport = new ContractExport();
            contractExport.setContractNumber(contract.getContractNumber());
            contractExport.setContractName(contract.getContractName());
            contractExport.setPartyOneName(contract.getPartyOneName());
            contractExport.setPartyTwoName(contract.getPartyTwoName());
            contractExport.setCreate_time(contract.getCreateTime());
            contractExport.setStartTime(contract.getStartTime());
            contractExport.setEndTime(contract.getEndTime());
            contractExport.setPayType(DictUtils.getDictLabel(DictConstants.DICT_TYPE_CONTRACT_PAY_TYPE,contract.getPayType()));
            contractExport.setDeposit(contract.getDeposit()+"");
            contractExport.setStatus(DictUtils.getDictLabel(DictConstants.DICT_TYPE_CONTRACT_STATUS,contract.getStatus()));
        }
        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), ContractExport.class, contractExports);
        HttpServletResponse response = WebUtils.response();
        response.setContentType("application/vnd.ms-excel");
        response.setCharacterEncoding("utf-8");
        ServletOutputStream outputStream = null;
        try {
            String fileName = URLEncoder.encode("合同列表.xls", "utf-8");
            response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
            response.setContentType("application/vnd.ms-excel;charset=UTF-8");
            response.setHeader("Pragma", "no-cache");
            response.setHeader("Cache-Control", "no-cache");
            outputStream = response.getOutputStream();
            workbook.write(outputStream);
        } catch (IOException e) {
            e.printStackTrace();
            System.err.println("合同列表信息导出失败");
        } finally {
            try {
                outputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}
ruoyi-system/src/main/java/com/ruoyi/system/model/TInformation.java
@@ -59,6 +59,10 @@
    @TableField("cover")
    private String cover;
    @ApiModelProperty(value = "简介")
    @TableField("brief_introduction")
    private String briefIntroduction;
    @ApiModelProperty(value = "内容")
    @TableField("content")
    private String content;
ruoyi-system/src/main/java/com/ruoyi/system/query/TContractQuery.java
@@ -5,6 +5,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.List;
@Data
@@ -20,4 +21,7 @@
    private Integer status;
    @ApiModelProperty(value = "选中的行")
    private List<String> ids;
    @NotBlank(message = "租户id不可为空")
    @ApiModelProperty(value = "租户id")
    private String tenantId;
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TInvoiceServiceImpl.java
@@ -1,23 +1,17 @@
package com.ruoyi.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.mapper.TInvoiceMapper;
import com.ruoyi.system.model.TBill;
import com.ruoyi.system.model.TInvoice;
import com.ruoyi.system.model.TInvoiceToBill;
import com.ruoyi.system.query.TInvoiceQuery;
import com.ruoyi.system.query.TInvoiceToBillQuery;
import com.ruoyi.system.service.TBillService;
import com.ruoyi.system.service.TInvoiceService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.sun.org.apache.regexp.internal.RE;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.ArrayList;
import java.util.List;
/**
ruoyi-system/src/main/resources/mapper/system/TInformationMapper.xml
@@ -11,6 +11,7 @@
        <result column="release_time" property="releaseTime" />
        <result column="cover" property="cover" />
        <result column="content" property="content" />
        <result column="brief_introduction" property="briefIntroduction" />
        <result column="attachment" property="attachment" />
        <result column="attachment_name" property="attachmentName" />
        <result column="create_time" property="createTime" />
@@ -22,7 +23,7 @@
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, title_name, sort_by, info_source, release_time,cover, content, attachment,attachment_name, create_time, update_time, create_by, update_by, disabled
        id, title_name, sort_by, info_source, release_time,cover, brief_introduction,content, attachment,attachment_name, create_time, update_time, create_by, update_by, disabled
    </sql>
    <select id="pageList" resultType="com.ruoyi.system.model.TInformation">
        select