From 0e6cf7294129e2793b97f173a829f0b546e091dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Mon, 30 Aug 2021 14:12:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=99=AE=E9=80=9A=E9=A1=B9=E7=9B=AE=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PayCommonProjectController.java | 237 ++++++++++++++++++ .../jero/project/entity/PayCommonProject.java | 149 +++++++++++ .../mapper/PayCommonProjectMapper.java | 26 ++ .../mapper/xml/PayCommonProjectMapper.xml | 63 +++++ .../service/IPayCommonProjectService.java | 24 ++ .../impl/PayCommonProjectServiceImpl.java | 30 +++ 6 files changed, 529 insertions(+) create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayCommonProjectController.java create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayCommonProject.java create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayCommonProjectMapper.java create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayCommonProjectMapper.xml create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayCommonProjectService.java create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayCommonProjectServiceImpl.java diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayCommonProjectController.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayCommonProjectController.java new file mode 100644 index 00000000..e2fec6c0 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayCommonProjectController.java @@ -0,0 +1,237 @@ +package com.jero.project.controller; + +import java.util.Arrays; +import java.util.Objects; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.jero.common.api.vo.Result; +import com.jero.common.system.base.controller.JeroController; +import com.jero.common.util.ValidUtil; +import com.jero.company.entity.PayCompanyManagement; +import com.jero.project.service.IPayCommonProjectService; +import com.jero.project.entity.PayCommonProject; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.ModelAndView; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + + /** + * @Description: 普通项目管理 + * @Author: jeecg-boot + * @Date: 2021-08-27 + * @Version: V1.0 + */ +@Api(tags="普通项目管理") +@RestController +@RequestMapping("/project/payCommonProject") +@Slf4j +public class PayCommonProjectController extends JeroController { + @Autowired + private IPayCommonProjectService payCommonProjectService; + + /** + * 分页列表查询 + * + * @param payCommonProject + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @ApiOperation(value="普通项目管理-分页列表查询", notes="普通项目管理-分页列表查询") + @GetMapping(value = "/list") + public Result queryPageList(PayCommonProject payCommonProject, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + @RequestParam(name="paymentDate",required = false) String paymentDate, + HttpServletRequest req) { + if(!StringUtils.isBlank(payCommonProject.getChargeProject()) && payCommonProject.getChargeProject().length() > 100){ + return Result.error("来款项目长度应小于100个字符"); + } + if(!StringUtils.isBlank(payCommonProject.getChargeCompanyName()) && payCommonProject.getChargeCompanyName().length() > 50){ + return Result.error("来款单位长度应小于50个字符"); + } + + Page page = new Page(pageNo, pageSize); + IPage pageList = payCommonProjectService.queryPageList(page, payCommonProject, paymentDate); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param payCommonProject + * @return + */ + @ApiOperation(value="普通项目管理-添加", notes="普通项目管理-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody PayCommonProject payCommonProject) { + StringBuilder msg = ValidUtil.validateAll(payCommonProject); + if(!StringUtils.isBlank(msg)){ + return Result.error(msg.toString()); + } + try { + // 编辑保存前再次校验来款项目是否存在 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PayCommonProject::getChargeProject,payCommonProject.getChargeProject()); + PayCommonProject payCommonProjectNew = payCommonProjectService.getOne(queryWrapper); + // 来款项目存在,并且编辑id与查询不同,则校验不通过 + if(!Objects.isNull(payCommonProjectNew)) { + return Result.error("来款项目已存在!"); + } + }catch (Exception e){ + log.info("普通项目管理-添加异常",e); + return Result.error("来款项目已存在!"); + } + payCommonProjectService.save(payCommonProject); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param payCommonProject + * @return + */ + @ApiOperation(value="普通项目管理-编辑", notes="普通项目管理-编辑") + @PostMapping(value = "/edit") + public Result edit(@RequestBody PayCommonProject payCommonProject) { + StringBuilder msg = ValidUtil.validateAll(payCommonProject); + if(!StringUtils.isBlank(msg)){ + return Result.error(msg.toString()); + } + try { + // 编辑保存前再次校验来款项目是否存在 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PayCommonProject::getChargeProject,payCommonProject.getChargeProject()); + PayCommonProject payCommonProjectNew = payCommonProjectService.getOne(queryWrapper); + // 来款项目存在,并且编辑id与查询不同,则校验不通过 + if(!Objects.isNull(payCommonProjectNew) && !Objects.equals(payCommonProjectNew.getId(),payCommonProject.getId())) { + return Result.error("来款项目已存在!"); + } + }catch (Exception e){ + log.info("普通项目管理-编辑异常",e); + return Result.error("来款项目已存在!"); + } + payCommonProjectService.updateById(payCommonProject); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @ApiOperation(value="普通项目管理-通过id删除", notes="普通项目管理-通过id删除") + @GetMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + if(StringUtils.isBlank(id)){ + return Result.error("id不能为空!"); + } + payCommonProjectService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @ApiOperation(value="普通项目管理-批量删除", notes="普通项目管理-批量删除") + @GetMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + if(StringUtils.isBlank(ids)){ + return Result.error("id不能为空!"); + } + String[] s = ids.split(","); + for (String s1 : s) { + if(StringUtils.isBlank(s1)){ + return Result.error("id不能为空!"); + } + } + this.payCommonProjectService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + @ApiOperation(value="普通项目管理-通过id查询", notes="普通项目管理-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + PayCommonProject payCommonProject = payCommonProjectService.getById(id); + if(payCommonProject==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(payCommonProject); + } + + /** + * 通过来款项目查询 + * + * @param chargeProject 来款项目 + * @return + */ + @ApiOperation(value="普通项目管理-通过来款项目查询", notes="普通项目管理-通过来款项目查询") + @GetMapping(value = "/queryByChargeProject") + public Result queryByChargeProject(@RequestParam(name="chargeProject",required=true) String chargeProject) { + if(StringUtils.isBlank(chargeProject)){ + return Result.error("来款项目不能为空!"); + }else{ + if(chargeProject.length() > 100){ + return Result.error("来款项目长度应小于100个字符!"); + } + } + try { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(PayCommonProject::getChargeProject,chargeProject); + PayCommonProject payCommonProject = payCommonProjectService.getOne(queryWrapper); + if(Objects.isNull(payCommonProject)) { + return Result.OK("没有来款项目!"); + } + }catch (Exception e) { + log.info("普通项目管理-通过来款项目查询异常",e); + return Result.error("该来款项目已存在!"); + } + return Result.error("该来款项目已存在!"); + } + + /** + * 导出excel + * + * @param request + * @param payCommonProject + */ + @ApiOperation(value="普通项目管理-导出excel", notes="普通项目管理-导出excel") + @GetMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, PayCommonProject payCommonProject) { + return super.exportXls(request, payCommonProject, PayCommonProject.class, "pay_common_project"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @ApiOperation(value="普通项目管理-通过excel导入数据", notes="普通项目管理-通过excel导入数据") + @PostMapping(value = "/importExcel") + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, PayCommonProject.class); + } + +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayCommonProject.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayCommonProject.java new file mode 100644 index 00000000..e3b6ba92 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayCommonProject.java @@ -0,0 +1,149 @@ +package com.jero.project.entity; + +import java.io.Serializable; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import javax.validation.constraints.Size; + +/** + * @Description: pay_common_project + * @Author: jeecg-boot + * @Date: 2021-08-27 + * @Version: V1.0 + */ +@Data +@TableName("pay_common_project") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="pay_common_project对象", description="pay_common_project") +public class PayCommonProject implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private java.lang.String id; + /**来款项目*/ + @Excel(name = "来款项目", width = 15) + @ApiModelProperty(value = "来款项目") + @Size(max = 100,message = "来款项目长度应小于100个字符") + private java.lang.String chargeProject; + /**运行年份*/ + @Excel(name = "运行年份", width = 15) + @ApiModelProperty(value = "运行年份") + private java.lang.Integer year; + /**负责人id*/ + @Excel(name = "负责人id", width = 15) + @ApiModelProperty(value = "负责人id") + private java.lang.String principalId; + /**负责人名称*/ + @Excel(name = "负责人名称", width = 15) + @ApiModelProperty(value = "负责人名称") + private java.lang.String principalName; + /**来款企业id*/ + @Excel(name = "来款企业id", width = 15) + @ApiModelProperty(value = "来款企业id") + private java.lang.String chargeCompanyId; + /**来款用途(字典表)*/ + @Excel(name = "来款用途(字典表)", width = 15) + @ApiModelProperty(value = "来款用途(字典表)") + private java.lang.String chargeUse; + /**来款企业*/ + @Excel(name = "来款企业", width = 15) + @ApiModelProperty(value = "来款企业") + private java.lang.String chargeCompanyName; + /**联系人id*/ + @Excel(name = "联系人id", width = 15) + @ApiModelProperty(value = "联系人id") + private java.lang.String contactsId; + /**联系人名称*/ + @Excel(name = "联系人名称", width = 15) + @ApiModelProperty(value = "联系人名称") + private java.lang.String contactsName; + /**应收金额(元)*/ + @Excel(name = "应收金额(元)", width = 15) + @ApiModelProperty(value = "应收金额(元)") + private java.lang.Integer receivableAmount; + /**实收金额(元)*/ + @Excel(name = "实收金额(元)", width = 15) + @ApiModelProperty(value = "实收金额(元)") + private java.lang.Integer paidAmount; + /**邮寄联系人id*/ + @Excel(name = "邮寄联系人id", width = 15) + @ApiModelProperty(value = "邮寄联系人id") + private java.lang.String mailContactsId; + /**邮寄联系人名称*/ + @Excel(name = "邮寄联系人名称", width = 15) + @ApiModelProperty(value = "邮寄联系人名称") + private java.lang.String mailContactsName; + /**打包(1:是,0:否)*/ + @Excel(name = "打包(1:是,0:否)", width = 15) + @ApiModelProperty(value = "打包(1:是,0:否)") + private java.lang.Integer packaging; + /**需要发票(1:增值税普通发票,2:增值税专用发票,3:否)*/ + @Excel(name = "需要发票(1:增值税普通发票,2:增值税专用发票,3:否)", width = 15) + @ApiModelProperty(value = "需要发票(1:增值税普通发票,2:增值税专用发票,3:否)") + private java.lang.Integer invoice; + /**到账(1:全额(对勾),2:0(X),3:>0 && <总金额(半满标志))*/ + @Excel(name = "到账(1:全额(对勾),2:0(X),3:>0 && <总金额(半满标志))", width = 15) + @ApiModelProperty(value = "到账(1:全额(对勾),2:0(X),3:>0 && <总金额(半满标志))") + private java.lang.String inAccount; + /**开票(1:全额(对勾),2:0(X),3:>0 && <总金额(半满标志))*/ + @Excel(name = "开票(1:全额(对勾),2:0(X),3:>0 && <总金额(半满标志))", width = 15) + @ApiModelProperty(value = "开票(1:全额(对勾),2:0(X),3:>0 && <总金额(半满标志))") + private java.lang.String makeInvoice; + /**邮寄((1:全额(对勾),2:0(X),3:>0 && <总金额(半满标志)))*/ + @Excel(name = "邮寄((1:全额(对勾),2:0(X),3:>0 && <总金额(半满标志)))", width = 15) + @ApiModelProperty(value = "邮寄((1:全额(对勾),2:0(X),3:>0 && <总金额(半满标志)))") + private java.lang.String mail; + /**来款方式(1:无,2:合同,3:收费通知)*/ + @Excel(name = "来款方式(1:无,2:合同,3:收费通知)", width = 15) + @ApiModelProperty(value = "来款方式(1:无,2:合同,3:收费通知)") + private java.lang.Integer chargeWay; + /**合同编号*/ + @Excel(name = "合同编号", width = 15) + @ApiModelProperty(value = "合同编号") + private java.lang.String contractNum; + /**收费通知号*/ + @Excel(name = "收费通知号", width = 15) + @ApiModelProperty(value = "收费通知号") + private java.lang.String chargeNoticeNo; + /**收费通知文件id*/ + @Excel(name = "收费通知文件id", width = 15) + @ApiModelProperty(value = "收费通知文件id") + private java.lang.String chargeNoticeId; + /**催款次数*/ + @Excel(name = "催款次数", width = 15) + @ApiModelProperty(value = "催款次数") + private java.lang.Integer pressMoneyTimes; + /**备注*/ + @Excel(name = "备注", width = 15) + @ApiModelProperty(value = "备注") + private java.lang.String remarks; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建时间") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private java.lang.String updateBy; + /**更新时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "更新时间") + private java.util.Date updateTime; +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayCommonProjectMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayCommonProjectMapper.java new file mode 100644 index 00000000..5d5f817c --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/PayCommonProjectMapper.java @@ -0,0 +1,26 @@ +package com.jero.project.mapper; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.project.entity.PayCommonProject; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +/** + * @Description: pay_common_project + * @Author: jeecg-boot + * @Date: 2021-08-27 + * @Version: V1.0 + */ +public interface PayCommonProjectMapper extends BaseMapper { + /** + * @Description 分页查询 + * @Author lqt + * @Date 2021/8/27 + * @Param paymentDate 来款年份 + * @Return + * @Exception + */ + IPage queryPageList(Page page, @Param("payCommonProject") PayCommonProject payCommonProject, + @Param("paymentDate") String paymentDate); +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayCommonProjectMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayCommonProjectMapper.xml new file mode 100644 index 00000000..c1cafcc1 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/PayCommonProjectMapper.xml @@ -0,0 +1,63 @@ + + + + + + \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayCommonProjectService.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayCommonProjectService.java new file mode 100644 index 00000000..6789d6cd --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayCommonProjectService.java @@ -0,0 +1,24 @@ +package com.jero.project.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.project.entity.PayCommonProject; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: pay_common_project + * @Author: jeecg-boot + * @Date: 2021-08-27 + * @Version: V1.0 + */ +public interface IPayCommonProjectService extends IService { + /** + * @Description 分页查询 + * @Author lqt + * @Date 2021/8/27 + * @Param + * @Return + * @Exception + */ + IPage queryPageList(Page page,PayCommonProject payCommonProject, String paymentDate); +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayCommonProjectServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayCommonProjectServiceImpl.java new file mode 100644 index 00000000..43cd1221 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayCommonProjectServiceImpl.java @@ -0,0 +1,30 @@ +package com.jero.project.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.jero.project.service.IPayCommonProjectService; +import com.jero.project.entity.PayCommonProject; +import com.jero.project.mapper.PayCommonProjectMapper; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import javax.annotation.Resource; + +/** + * @Description: pay_common_project + * @Author: jeecg-boot + * @Date: 2021-08-27 + * @Version: V1.0 + */ +@Service +public class PayCommonProjectServiceImpl extends ServiceImpl implements IPayCommonProjectService { + + @Resource + private PayCommonProjectMapper payCommonProjectMapper; + + @Override + public IPage queryPageList(Page page, PayCommonProject payCommonProject, String paymentDate) { + return payCommonProjectMapper.queryPageList(page,payCommonProject,paymentDate); + } +}