Commit 0d6d9e3e authored by chenzhao's avatar chenzhao

工行代扣

parent 3766188a
package com.yeejoin.amos.boot.module.hygf.api.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.util.List;
/**
* 聚富通代扣信息表
*
* @author system_generator
* @date 2024-12-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="IcbcWithholdDto", description=" 聚富通代扣信息表")
public class IcbcWithholdDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "付款目标")
private String paymentTarget;
@ApiModelProperty(value = "项目编号")
private String projectNumber;
@ApiModelProperty(value = "付款总金额")
private String paymentAmount;
@ApiModelProperty(value = "说明")
private String desc;
@ApiModelProperty(value = "确认人员")
private String confirmator;
@ApiModelProperty(value = "确认时间")
private Date confirmationTime;
@ApiModelProperty(value = "上传人员")
private String uploader;
@ApiModelProperty(value = "上传时间")
private Date uploadTime;
@ApiModelProperty(value = "上传文件")
private String uploadFile;
@ApiModelProperty(value = "上传状态")
private String uploadStatus;
@ApiModelProperty(value = "代扣状态")
private String withholdStatus;
@ApiModelProperty(value = "失败原因")
private String errorDesc;
@ApiModelProperty(value = "户主icbcid")
private String icbcId;
@ApiModelProperty(value = "批次号")
private String batchNo;
@ApiModelProperty("所选商户冗余")
private String icbcRecordInfos;
private String uploadFileName;
/**
* 失败原因
*/
private String uploadErrorDesc;
/**
* 失败原因
*/
private String paymentErrorDesc;
@ApiModelProperty(value = "付款信息")
private List<HygfIcbcRecordDTO> recordDTOS;
}
package com.yeejoin.amos.boot.module.hygf.api.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
*
*
* @author system_generator
* @date 2024-12-06
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="IcbcWithholdRecordDto", description="")
public class IcbcWithholdRecordDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "农户姓名")
private String custName;
@ApiModelProperty(value = "身份证号")
private String idCard;
private String phone;
@ApiModelProperty(value = "批次号")
private String batchNo;
@ApiModelProperty(value = "聚富通电子账户账号")
private String mediumId;
@ApiModelProperty(value = "项目编号")
private String projectId;
@ApiModelProperty(value = "付款金额")
private int paymentAmount;
@ApiModelProperty(value = "代扣状态")
private String withholdStatus;
@ApiModelProperty(value = "上传时间")
private Date withholdTime;
@ApiModelProperty(value = "缴费时间")
private Date paymentTime;
@ApiModelProperty(value = "缴费开始时间")
private String paymentStartTime;
@ApiModelProperty(value = "缴费结束时间")
private String paymentEndTime;
private String outUserId;
private String amosUserId;
private String regionalCompaniesCode;
/*
* 区域公司名称
* */
private String regionalCompaniesName;
}
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.module.hygf.api.dto.HygfIcbcRecordDTO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
import java.util.List;
/**
* 聚富通代扣信息表
*
* @author system_generator
* @date 2024-12-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("hygf_icbc_withhold")
public class IcbcWithhold extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 付款目标
*/
@TableField("payment_target")
private String paymentTarget;
/**
* 项目编号
*/
@TableField("project_number")
private String projectNumber;
/**
* 付款金额
*/
@TableField("payment_amount")
private String paymentAmount;
/**
* 说明
*/
@TableField("content")
private String desc;
/**
* 确认人员
*/
@TableField("confirmator")
private String confirmator;
/**
* 确认时间
*/
@TableField("confirmation_time")
private Date confirmationTime;
/**
* 上传人员
*/
@TableField("uploader")
private String uploader;
/**
* 上传时间
*/
@TableField("upload_time")
private Date uploadTime;
/**
* 上传文件
*/
@TableField("upload_file")
private String uploadFile;
/**
* 上传文件生成名称
*/
@TableField("upload_fileName")
private String uploadFileName;
/**
* 上传文件
*/
@TableField("receipt_file")
private String receiptFile;
/**
* 上传状态
*/
@TableField("upload_status")
private String uploadStatus;
/**
* 代扣状态
*/
@TableField("withhold_status")
private String withholdStatus;
/**
* 失败原因
*/
@TableField("upload_error_desc")
private String uploadErrorDesc;
/**
* 失败原因
*/
@TableField("payment_error_desc")
private String paymentErrorDesc;
/**
* 户主icbcid
*/
@TableField("icbc_id")
private String icbcId;
/**
* 批次号
*/
@TableField("batch_no")
private String batchNo;
/**
* 所选商户冗余
*/
@TableField("icbc_record_infos")
private String icbcRecordInfos;
/**
* 付款信息
*/
@TableField(exist = false)
private List<IcbcWithholdRecord> recordDTOS;
}
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
*
*
* @author system_generator
* @date 2024-12-06
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("hygf_icbc_withhold_record")
public class IcbcWithholdRecord extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 农户姓名
*/
@TableField("cust_name")
private String custName;
/**
* 身份证号
*/
@TableField("id_card")
private String idCard;
/**
* 批次号
*/
@TableField("batch_no")
private String batchNo;
/**
* 聚富通电子账户账号
*/
@TableField("medium_id")
private String mediumId;
/**
* 项目编号
*/
@TableField("project_id")
private String projectId;
/**
* 付款金额
*/
@TableField("payment_amount")
private double paymentAmount;
/**
* 代扣状态
*/
@TableField("withhold_status")
private String withholdStatus;
/**
* 上传时间
*/
@TableField("withhold_time")
private Date withholdTime;
/**
* 缴费时间
*/
@TableField("payment_time")
private Date paymentTime;
/**
* 用户编号
*/
@TableField("out_user_id")
private String outUserId;
/**
* 平台用户id
*/
@TableField("amos_user_id")
private String amosUserId;
/*
* 区域公司code
* */
@TableField("regional_companies_code")
private String regionalCompaniesCode;
/*
* 区域公司名称
* */
@TableField("regional_companies_name")
private String regionalCompaniesName;
/*
*
* */
@TableField("phone")
private String phone;
@TableField(exist = false)
private String openAccountStatusName;
@TableField(exist = false)
private String protocolStatusName;
}
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.yeejoin.amos.boot.module.hygf.api.dto.IcbcWithholdDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.IcbcWithhold;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
/**
* 聚富通代扣信息表 Mapper 接口
*
* @author system_generator
* @date 2024-12-02
*/
public interface IcbcWithholdMapper extends BaseMapper<IcbcWithhold> {
public List<IcbcWithholdDto> queryForIcbcWithholdPage( String uploader, String uploadStartTime, String uploadEndTime, String uploadStatus, String confirmator, String confirmationStartTime, String confirmationEndTime,String desc);
}
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.yeejoin.amos.boot.module.hygf.api.config.UserEmpower;
import com.yeejoin.amos.boot.module.hygf.api.dto.HygfIcbcRecordExportDTO;
import com.yeejoin.amos.boot.module.hygf.api.dto.IcbcWithholdRecordDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.IcbcWithholdRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* Mapper 接口
*
* @author system_generator
* @date 2024-12-06
*/
public interface IcbcWithholdRecordMapper extends BaseMapper<IcbcWithholdRecord> {
@UserEmpower (field = {"ph.regional_companies_code"}, dealerField = {"ph.developer_code", "ph.regional_companies_code", "ph.developer_user_id"}, fieldConditions = {"in", "in", "in"}, relationship = "and",specific=false)
List<IcbcWithholdRecordDto> exportTotal(String developerCode, String regionalCompaniesCode, String province, String city, String district, String year, String month, List<String> quarter, @Param("dto")IcbcWithholdRecordDto dto);
}
package com.yeejoin.amos.boot.module.hygf.api.service;
/**
* 接口类
*
* @author system_generator
* @date 2024-12-06
*/
public interface IIcbcWithholdRecordService {
}
package com.yeejoin.amos.boot.module.hygf.api.service;
import com.yeejoin.amos.boot.module.hygf.api.dto.IcbcWithholdDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.IcbcWithhold;
import java.io.IOException;
/**
* 聚富通代扣信息表接口类
*
* @author system_generator
* @date 2024-12-02
*/
public interface IIcbcWithholdService {
void fileGeneration(IcbcWithhold model) throws IllegalAccessException, IOException, Exception;
void removeDataById(Long sequenceNbr, String uploader);
}
<?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.yeejoin.amos.boot.module.hygf.api.mapper.IcbcWithholdMapper">
<select id="queryForIcbcWithholdPage" resultType="com.yeejoin.amos.boot.module.hygf.api.dto.IcbcWithholdDto">
select *,
content as desc
from hygf_icbc_withhold
<where>
is_delete = 0
<if test="uploader != null and uploader != ''">
and uploader like concat('%',#{uploader},'%')
</if>
<if test="uploadStartTime != null and uploadStartTime != ''">
and upload_time > #{uploadStartTime}
</if>
<if test="uploadEndTime != null and uploadEndTime != ''">
and upload_time <![CDATA[<]]> #{uploadEndTime}
</if>
<if test="uploadStatus != null and uploadStatus != ''">
and upload_status = #{uploadStatus}
</if>
<if test="confirmator != null and confirmator != ''">
and confirmator like concat('%',#{confirmator},'%')
</if>
<if test="desc != null and desc != ''">
and uploader like concat('%',#{desc},'%')
</if>
<if test="confirmationStartTime != null and confirmationStartTime != ''">
and confirmation_time > #{confirmationStartTime}
</if>
<if test="confirmationEndTime != null and confirmationEndTime != ''">
and confirmation_time <![CDATA[<]]> #{confirmationEndTime}
</if>
</where>
order by hygf_icbc_withhold.sequence_nbr desc
</select>
</mapper>
<?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.yeejoin.amos.boot.module.hygf.api.mapper.IcbcWithholdRecordMapper">
<!-- <select id="exportTotal" resultType="com.yeejoin.amos.boot.module.hygf.api.dto.IcbcWithholdRecordDto">-->
<!-- SELECT-->
<!-- re.*-->
<!-- FROM hygf_icbc_withhold_record re-->
<!-- LEFT JOIN `hygf_peasant_household` ph ON re.amos_user_id = ph.amos_user_id-->
<!-- <where>-->
<!-- <if test="developerCode != null and developerCode != ''">-->
<!-- AND ph.developer_code = #{developerCode}-->
<!-- </if>-->
<!-- <if test="regionalCompaniesCode != null and regionalCompaniesCode != ''">-->
<!-- AND ph.regional_companies_code = #{regionalCompaniesCode}-->
<!-- </if>-->
<!-- <if test="province != null and province != ''">-->
<!-- AND ph.project_address LIKE CONCAT ('%',#{province},'%')-->
<!-- </if>-->
<!-- <if test="city != null and city != ''">-->
<!-- AND ph.project_address LIKE CONCAT ('%',#{city},'%')-->
<!-- </if>-->
<!-- <if test="district != null and district != ''">-->
<!-- AND ph.project_address LIKE CONCAT ('%',#{district},'%')-->
<!-- </if>-->
<!-- <if test="year != null and year != ''">-->
<!-- AND EXTRACT(YEAR FROM re.withhold_time) = #{year}-->
<!-- </if>-->
<!-- <if test="month != null and month != ''">-->
<!-- AND EXTRACT(MONTH FROM re.withhold_time) = #{month}-->
<!-- </if>-->
<!-- <if test="quarter != null and quarter.size() > 1">-->
<!-- AND ph.withhold_time BETWEEN <foreach collection="quarter" item="item" separator="and">-->
<!-- </foreach>-->
<!-- </if>-->
<!-- <if test="dto.amosUserId != null and dto.amosUserId != ''">-->
<!-- AND re.amos_user_id = #{dto.amosUserId}-->
<!-- </if>-->
<!-- <if test="dto.batchNo != null and dto.batchNo != ''">-->
<!-- AND re.batch_no = #{dto.batchNo}-->
<!-- </if>-->
<!-- <if test="dto.paymentStartTime != null and dto.paymentStartTime != ''">-->
<!-- AND re.payment_time > #{dto.paymentStartTime}-->
<!-- </if>-->
<!-- <if test="dto.paymentEndTime != null and dto.paymentEndTime != ''">-->
<!-- AND re.payment_time &amp;lt #{dto.paymentEndTime}-->
<!-- </if>-->
<!-- </where>-->
<!-- GROUP BY-->
<!-- re.sequence_nbr-->
<!-- </select>-->
<select id="exportTotal" resultType="com.yeejoin.amos.boot.module.hygf.api.dto.IcbcWithholdRecordDto">
SELECT
re.*
FROM
(
SELECT
amos_user_id,
MAX(developer_code) AS developer_code,
MAX(regional_companies_code ) AS regional_companies_code ,
MAX(is_delete) AS is_delete,
MAX(owners_name) AS owners_name,
MAX(telephone) AS telephone,
MAX(id_card) AS id_card,
MAX(regional_companies_name) AS regional_companies_name,
MAX(project_address) AS project_address,
MAX(rec_date) AS rec_date
FROM hygf_peasant_household GROUP BY amos_user_id
) ph
LEFT JOIN hygf_icbc_withhold_record re ON ph.amos_user_id = re.amos_user_id
<where>
ph.is_delete = 0
<if test="developerCode != null and developerCode != ''">
AND ph.developer_code = #{developerCode}
</if>
<if test="regionalCompaniesCode != null and regionalCompaniesCode != ''">
AND ph.regional_companies_code = #{regionalCompaniesCode}
</if>
<if test="province != null and province != ''">
AND ph.project_address LIKE CONCAT ('%',#{province},'%')
</if>
<if test="city != null and city != ''">
AND ph.project_address LIKE CONCAT ('%',#{city},'%')
</if>
<if test="district != null and district != ''">
AND ph.project_address LIKE CONCAT ('%',#{district},'%')
</if>
<if test="year != null and year != ''">
AND EXTRACT(YEAR FROM re.withhold_time) = #{year}
</if>
<if test="month != null and month != ''">
AND EXTRACT(MONTH FROM re.withhold_time) = #{month}
</if>
<if test="quarter != null and quarter.size() > 1">
AND ph.withhold_time BETWEEN <foreach collection="quarter" item="item" separator="and">
</foreach>
</if>
<if test="dto.amosUserId != null and dto.amosUserId != ''">
AND re.amos_user_id = #{dto.amosUserId}
</if>
<if test="dto.batchNo != null and dto.batchNo != ''">
AND re.batch_no = #{dto.batchNo}
</if>
<if test="dto.paymentStartTime != null and dto.paymentStartTime != ''">
AND re.payment_time > #{dto.paymentStartTime}
</if>
<if test="dto.paymentEndTime != null and dto.paymentEndTime != ''">
AND re.payment_time <![CDATA[<]]> #{dto.paymentEndTime}
</if>
</where>
ORDER BY
re.rec_date DESC
</select>
</mapper>
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import com.alibaba.fastjson.JSONArray;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.module.hygf.api.dto.HygfIcbcRecordDTO;
import com.yeejoin.amos.boot.module.hygf.api.entity.IcbcWithhold;
import com.yeejoin.amos.boot.module.hygf.api.util.CommonResponseNewUtil;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.io.IOException;
import java.util.List;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.IcbcWithholdServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.hygf.api.dto.IcbcWithholdDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/**
* 聚富通代扣信息表
*
* @author system_generator
* @date 2024-12-02
*/
@RestController
@Api(tags = " 聚富通代扣信息表Api")
@RequestMapping(value = "/icbc-withhold")
public class IcbcWithholdController extends BaseController {
@Autowired
IcbcWithholdServiceImpl icbcWithholdServiceImpl;
/**
* 新增 聚富通代扣信息表
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增 聚富通代扣信息表", notes = "新增 聚富通代扣信息表")
public ResponseModel save(@RequestBody IcbcWithhold model) {
icbcWithholdServiceImpl.saveRecord(model);
return CommonResponseNewUtil.success();
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新 聚富通代扣信息表", notes = "根据sequenceNbr更新 聚富通代扣信息表")
public ResponseModel<IcbcWithholdDto> updateBySequenceNbrIcbcWithhold(@RequestBody IcbcWithholdDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(icbcWithholdServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/delete/{sequenceNbr}")
@ApiOperation(httpMethod = "GET", value = "根据sequenceNbr删除 聚富通代扣信息表", notes = "根据sequenceNbr删除 聚富通代扣信息表")
public ResponseModel deleteBySequenceNbr(@PathVariable(value = "sequenceNbr") Long sequenceNbr, @RequestParam(value = "batchNo") String batchNo){
icbcWithholdServiceImpl.removeDataById(sequenceNbr,batchNo);
return CommonResponseNewUtil.success();
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个 聚富通代扣信息表", notes = "根据sequenceNbr查询单个 聚富通代扣信息表")
public ResponseModel<IcbcWithholdDto> selectOne(@PathVariable Long sequenceNbr) {
IcbcWithholdDto icbcWithholdDto = icbcWithholdServiceImpl.queryBySeq(sequenceNbr);
icbcWithholdDto.setRecordDTOS(JSONArray.parseArray(icbcWithholdDto.getIcbcRecordInfos(), HygfIcbcRecordDTO.class));
return ResponseHelper.buildResponse(icbcWithholdDto);
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = " 聚富通代扣信息表分页查询", notes = " 聚富通代扣信息表分页查询")
public ResponseModel<Page<IcbcWithholdDto>> queryForPage(@RequestParam(value = "current") int current,
@RequestParam(value = "size") int size,
@RequestParam(value = "uploader",required = false) String uploader,
@RequestParam(value = "uploadStartTime",required = false) String uploadStartTime,
@RequestParam(value = "uploadEndTime",required = false) String uploadEndTime,
@RequestParam(value = "uploadStatus",required = false) String uploadStatus,
@RequestParam(value = "confirmator",required = false) String confirmator,
@RequestParam(value = "confirmationStartTime",required = false) String confirmationStartTime,
@RequestParam(value = "confirmationEndTime",required = false) String confirmationEndTime,
@RequestParam(value = "desc",required = false) String desc) {
return ResponseHelper.buildResponse(icbcWithholdServiceImpl.queryForIcbcWithholdPage(current,size,uploader,uploadStartTime,uploadEndTime,uploadStatus,confirmator,confirmationStartTime,confirmationEndTime,desc));
} /**
* 列表分页查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@GetMapping(value = "/test")
@ApiOperation(httpMethod = "GET",value = " 聚富通代扣信息表分页查询", notes = " 聚富通代扣信息表分页查询")
public ResponseModel<Page<IcbcWithholdDto>> test() {
icbcWithholdServiceImpl.upIcbcWithholdRecordWithholdStatus();
return ResponseHelper.buildResponse(null);
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = " 聚富通代扣信息表列表全部数据查询", notes = " 聚富通代扣信息表列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<IcbcWithholdDto>> selectForList() {
return ResponseHelper.buildResponse(icbcWithholdServiceImpl.queryForIcbcWithholdList());
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "POST",value = " 聚富通代扣信息文件生成", notes = " 聚富通代扣信息文件生成")
@PostMapping(value = "/fileGeneration")
public ResponseModel fileGeneration(@RequestBody IcbcWithhold model ) throws Exception {
icbcWithholdServiceImpl.fileGeneration(model);
return CommonResponseNewUtil.success();
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = " 聚富通代扣信息文件上传", notes = " 聚富通代扣信息文件上传")
@GetMapping(value = "/sftpUploadAndUnzip")
public ResponseModel sftpUploadAndUnzip( String fileUrl,String batchNo ) throws Exception {
ReginParams reginParams = getSelectedOrgInfo();
icbcWithholdServiceImpl.sftpUploadAndUnzip(fileUrl,batchNo,reginParams.getUserModel().getRealName());
return CommonResponseNewUtil.success();
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = " 聚富通代扣信息回盘文件获取", notes = " 聚富通代扣信息回盘文件获取")
@GetMapping(value = "/downLoadicbcFile")
public ResponseModel<String> downLoadicbcFile( Long sequenceNbr,String batchNo ) throws Exception {
return ResponseHelper.buildResponse(icbcWithholdServiceImpl.downLoadicbcFile(batchNo,sequenceNbr));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@ApiOperation(httpMethod = "GET",value = " 聚富通代扣信息回盘文件获取", notes = " 聚富通代扣信息回盘文件获取")
@GetMapping(value = "/updateWithholdStatus")
public ResponseModel updateWithholdStatus( ) throws Exception {
icbcWithholdServiceImpl.updateWithholdStatus();
return CommonResponseNewUtil.success();
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@ApiOperation(httpMethod = "POST",value = "批次人员信息下载", notes = "批次人员信息下载")
@PostMapping(value = "/export")
public void downTemplate(HttpServletResponse response, @RequestBody IcbcWithhold model ) {
icbcWithholdServiceImpl.exportData(response,model);
}
}
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import com.yeejoin.amos.boot.module.hygf.api.config.UserLimits;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.IcbcWithholdRecordServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.hygf.api.dto.IcbcWithholdRecordDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/**
*
*
* @author system_generator
* @date 2024-12-06
*/
@RestController
@Api(tags = "Api")
@RequestMapping(value = "/icbc-withhold-record")
public class IcbcWithholdRecordController extends BaseController {
@Autowired
IcbcWithholdRecordServiceImpl icbcWithholdRecordServiceImpl;
/**
* 新增
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<IcbcWithholdRecordDto> save(@RequestBody IcbcWithholdRecordDto model) {
model = icbcWithholdRecordServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新")
public ResponseModel<IcbcWithholdRecordDto> updateBySequenceNbrIcbcWithholdRecord(@RequestBody IcbcWithholdRecordDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(icbcWithholdRecordServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除", notes = "根据sequenceNbr删除")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(icbcWithholdRecordServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
public ResponseModel<IcbcWithholdRecordDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(icbcWithholdRecordServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/page")
@ApiOperation(httpMethod = "POST",value = "分页查询", notes = "分页查询")
@UserLimits
public ResponseModel<Page<IcbcWithholdRecordDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size,@RequestBody IcbcWithholdRecordDto dto) {
return ResponseHelper.buildResponse(icbcWithholdRecordServiceImpl.queryForIcbcWithholdRecordPage(current,size,dto));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "列表全部数据查询", notes = "列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<IcbcWithholdRecordDto>> selectForList() {
return ResponseHelper.buildResponse(icbcWithholdRecordServiceImpl.queryForIcbcWithholdRecordList());
}
}
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.map.MapBuilder;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.yeejoin.amos.boot.biz.common.excel.ExcelUtil;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.hygf.api.dto.HistoryPeasantHouseholdDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.HygfIcbcRecordExportDTO;
import com.yeejoin.amos.boot.module.hygf.api.entity.FinancingRegional;
import com.yeejoin.amos.boot.module.hygf.api.entity.IcbcWithholdRecord;
import com.yeejoin.amos.boot.module.hygf.api.mapper.IcbcWithholdRecordMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IIcbcWithholdRecordService;
import com.yeejoin.amos.boot.module.hygf.api.dto.IcbcWithholdRecordDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import javax.servlet.http.HttpServletResponse;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 服务实现类
*
* @author system_generator
* @date 2024-12-06
*/
@Service
public class IcbcWithholdRecordServiceImpl extends BaseService<IcbcWithholdRecordDto,IcbcWithholdRecord,IcbcWithholdRecordMapper> implements IIcbcWithholdRecordService {
/**
* 分页查询
*/
@Autowired
IcbcWithholdRecordMapper icbcWithholdRecordMapper;
public Page<IcbcWithholdRecordDto> queryForIcbcWithholdRecordPage(int current,int size,IcbcWithholdRecordDto dto) {
Page<IcbcWithholdRecordDto> page = new Page<>();
PageHelper.startPage(current,size);
List<IcbcWithholdRecordDto> dtos = icbcWithholdRecordMapper.exportTotal(null, null, null, null, null,null,null,null,dto);
PageInfo<IcbcWithholdRecordDto> pageInfo = new PageInfo<>(dtos);
page.setSize(pageInfo.getSize());
page.setCurrent(pageInfo.getPageNum());
page.setTotal(pageInfo.getTotal());
page.setRecords(dtos);
return page;
}
/**
* 列表查询 示例
*/
public List<IcbcWithholdRecordDto> queryForIcbcWithholdRecordList() {
return this.queryForList("" , false);
}
public void exportData(HttpServletResponse response, String developerCode, String regionalCompaniesCode, String province, String city, String district,String year,String month,List<String> quarter ){
List<IcbcWithholdRecordDto> dtos = this.getBaseMapper().exportTotal(developerCode, regionalCompaniesCode, province, city, district,year,month,quarter,null);
if (CollectionUtil.isNotEmpty(dtos)){
ExcelUtil.createTemplate(response,"结算金额","结算金额",dtos, IcbcWithholdRecordDto.class,null,false);
}
}
public Map<String, Object> paymentAmount(String developerCode, String regionalCompaniesCode, String province, String city, String district,String year,String month,List<String> quarter ){
List<IcbcWithholdRecordDto> dtos = this.getBaseMapper().exportTotal(developerCode, regionalCompaniesCode, province, city, district,year,month,quarter,null);
int totalPaymentAmount = dtos.stream()
.mapToInt(IcbcWithholdRecordDto::getPaymentAmount)
.sum();
Map<String, Object> paymentAmount = MapBuilder.<String, Object>create().put("paymentAmount", totalPaymentAmount).build();
return paymentAmount;
}
}
\ No newline at end of file
PuTTY-User-Key-File-3: ssh-rsa
PuTTY-User-Key-File-3: ssh-rsa
Encryption: none
Comment: imported-openssh-key
Public-Lines: 6
AAAAB3NzaC1yc2EAAAADAQABAAABAQDX1QJtBxXW6LKv5TmzHOdPEonivyVKC8J+
L/Zw6qzQytC3ScxXifOpr0EmiIE0grVGvEwAtfXOwbhz4rEGiYBub/Hxd4FBdU8m
hZHuZhgJfwe7Lhj+UHmRF8Jn/7Eg1749tOTa0fWrdXslvvp5UMoA4b/qdZtCLiMC
8tdV6GvEutdA8j7Ngi9EbmyzOjxov88Awr4JDTe+4zoyt1/cI2wCKgwfjMug9LMl
CDQuSdscetPC4YVNxo/0ul/Oau3OVlRMbqYrpS6syjb8P0yWEMh5ygEIHsuQolzE
KiEnaYRPmu9JSpC3H+3oG4oWWmXBBxpF1Qq0ueAfURWJ2Dram6NV
Private-Lines: 14
AAABAFnllhIVbmpKGAsdfe/1rP6JaTcxiHWT+lmW3p3fkUWSBGcjbOJVSlE19vv2
xWI6wwiIa1usborEs3BJTpS7duwI4oxBy2uZUfNolQToL0DdUToMlEpw+IGPlOC+
ZmeYlNuc2emupBXbZASvzCH1nX3KiaY9gAKLtveGcFyO5zxUFdbH0hoSpQ5/Yu4n
3Yd9a0yh+5lergcMFP6kJn4lIktPpe/hoYbtvJlOlMEmUX7MsSVOJ69MfUkFOMOO
sIg9Cf00BRi/rWPAK/FZw8mURmiiM48ZyU1ZUbDdwIeIXc55oLjUP5+KcetiEK62
ANBPX/yUXyqnAolUGBuKGQxxamEAAACBAP8NbCVECIFol9jed5xPnCWt1jj80HSN
GZNeseVbsYcN/YE3Ni/7q5dz8kllhwk+EEHFiD7zDvdT55xfCrmKq3oubBv2mLlE
WeaOAMt3+Z7mwfIWSnS+WmLZSiVEvKmGPKsp2jWCETf1JV7TNgY4FTuRR3UE//ra
1NlLb8l89gEtAAAAgQDYokj0Ryd6GTSs7oimzOTgI8Rec+Sv2+QBHasBLldZfned
HYR20jSLwyMfCIrTPw7hAuqoWoJcAIFq+xb6NpRLhugGSNkyB7SZwTxTyfT86ACx
0Koa07g3MZVUK5e2dNsqKzCxJvOrMZl7gVn3Ie57SUCZuAif8v28iIN3NBPzyQAA
AIBD1719GnpnLMhpG4nMsrpJceBFVI+R9N1UuxlVcc5N2AWiZb6g9BhIKa3J6MKJ
iPK8k5eb7sa+9f1f5a10CTgQhJaJgL1GI6GWJeJHreUVlLPvzHVFWRmY19d3eR3o
wc3MZn56cWfmF4mVzzryz9Kz15y8KXd3H6RUUDoBiADDXw==
Private-MAC: 2f3108f282f13a275ee6de718d3e2f0ffc84163698acd686b454204e21d4dd13
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment