打包关联项目
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
package com.jero.pack.common;
|
||||
|
||||
public class PackCommon {
|
||||
|
||||
/**
|
||||
* 打包(1:是,0:否)
|
||||
*/
|
||||
public final static Integer PACKAGING0 = 0;
|
||||
/**
|
||||
* 打包(1:是,0:否)
|
||||
*/
|
||||
public final static Integer PACKAGING1 = 1;
|
||||
|
||||
/**
|
||||
* 来源(1:收入合同,2:打包管理)
|
||||
*/
|
||||
public final static Integer COME1 = 1;
|
||||
/**
|
||||
* 来源(1:收入合同,2:打包管理)
|
||||
*/
|
||||
public final static Integer COME2 = 2;
|
||||
}
|
||||
+23
-5
@@ -1,6 +1,7 @@
|
||||
package com.jero.pack.controller;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
@@ -15,8 +16,11 @@ import com.jero.common.system.base.controller.JeroController;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.common.util.ValidUtil;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -37,7 +41,9 @@ import io.swagger.annotations.ApiOperation;
|
||||
public class PayPackCompanyController extends JeroController<PayPackCompany, IPayPackCompanyService> {
|
||||
@Autowired
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
|
||||
@Autowired
|
||||
private IPayPackCompanyProjectService payPackCompanyProjectService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
@@ -80,11 +86,11 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
||||
query.eq(PayPackCompany::getPackYear,payPackCompany.getPackYear());
|
||||
PayPackCompany payPackCompanyNew = payPackCompanyService.getOne(query);
|
||||
if(!Objects.isNull(payPackCompanyNew)){
|
||||
return Result.error("当前年份下已存在打包企业!");
|
||||
return Result.error("该年份下已存在此打包企业!");
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error("",e);
|
||||
return Result.error("当前年份下已存在打包企业!");
|
||||
return Result.error("该年份下已存在此打包企业!");
|
||||
}
|
||||
|
||||
payPackCompanyService.save(payPackCompany);
|
||||
@@ -111,11 +117,11 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
||||
query.eq(PayPackCompany::getPackYear,payPackCompany.getPackYear());
|
||||
PayPackCompany payPackCompanyNew = payPackCompanyService.getOne(query);
|
||||
if(!Objects.isNull(payPackCompanyNew) && !Objects.equals(payPackCompany.getId(),payPackCompanyNew.getId())){
|
||||
return Result.error("当前年份下已存在打包企业!");
|
||||
return Result.error("该年份下已存在此打包企业!");
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error("",e);
|
||||
return Result.error("当前年份下已存在打包企业!");
|
||||
return Result.error("该年份下已存在此打包企业!");
|
||||
}
|
||||
payPackCompanyService.updateById(payPackCompany);
|
||||
return Result.OK("编辑成功!");
|
||||
@@ -134,6 +140,12 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
||||
if(StringUtils.isBlank(id)){
|
||||
return Result.error("id不能为空!");
|
||||
}
|
||||
LambdaQueryWrapper<PayPackCompanyProject> query = new LambdaQueryWrapper<>();
|
||||
query.eq(PayPackCompanyProject::getPackId,id);
|
||||
List<PayPackCompanyProject> list = payPackCompanyProjectService.list(query);
|
||||
if(!CollectionUtils.isEmpty(list)){
|
||||
return Result.error("该企业下有项目不可删除!");
|
||||
}
|
||||
payPackCompanyService.removeById(id);
|
||||
return Result.OK("删除成功!");
|
||||
}
|
||||
@@ -157,6 +169,12 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
||||
return Result.error("id不能为空!");
|
||||
}
|
||||
}
|
||||
LambdaQueryWrapper<PayPackCompanyProject> query = new LambdaQueryWrapper<>();
|
||||
query.in(PayPackCompanyProject::getPackId,Arrays.asList(ids.split(",")));
|
||||
List<PayPackCompanyProject> list = payPackCompanyProjectService.list(query);
|
||||
if(!CollectionUtils.isEmpty(list)){
|
||||
return Result.error("该企业下有项目不可删除!");
|
||||
}
|
||||
this.payPackCompanyService.removeByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
+130
-18
@@ -1,9 +1,12 @@
|
||||
package com.jero.pack.controller;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -11,9 +14,17 @@ import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.common.util.ValidUtil;
|
||||
import com.jero.pack.common.PackCommon;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.pack.vo.PayPackCompanyProjectInput;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
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;
|
||||
@@ -21,18 +32,20 @@ import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
|
||||
/**
|
||||
* @Description: pay_pack_company_project
|
||||
* @Description: 打包项目维护
|
||||
* @Author: jeecg-boot
|
||||
* @Date: 2021-09-07
|
||||
* @Version: V1.0
|
||||
*/
|
||||
@Api(tags="pay_pack_company_project")
|
||||
@Api(tags="打包项目维护")
|
||||
@RestController
|
||||
@RequestMapping("/pack/payPackCompanyProject")
|
||||
@Slf4j
|
||||
public class PayPackCompanyProjectController extends JeroController<PayPackCompanyProject, IPayPackCompanyProjectService> {
|
||||
@Autowired
|
||||
private IPayPackCompanyProjectService payPackCompanyProjectService;
|
||||
@Autowired
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
@@ -43,8 +56,8 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "pay_pack_company_project-分页列表查询")
|
||||
@ApiOperation(value="pay_pack_company_project-分页列表查询", notes="pay_pack_company_project-分页列表查询")
|
||||
@AutoLog(value = "打包项目维护-分页列表查询")
|
||||
// @ApiOperation(value="打包项目维护-分页列表查询", notes="打包项目维护-分页列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<?> queryPageList(PayPackCompanyProject payPackCompanyProject,
|
||||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@@ -55,20 +68,119 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
IPage<PayPackCompanyProject> pageList = payPackCompanyProjectService.page(page, queryWrapper);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @param input 参数
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "打包项目维护-列表查询")
|
||||
@ApiOperation(value="打包项目维护-列表查询", notes="打包项目维护-列表查询")
|
||||
@GetMapping(value = "/listAll")
|
||||
public Result<?> queryListAll(PayPackCompanyProjectInput input) {
|
||||
if(Objects.isNull(input.getPack())){
|
||||
return Result.error("打包id不能为空");
|
||||
}
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
|
||||
if(Objects.isNull(payPackCompany)){
|
||||
return Result.error("打包企业不存在");
|
||||
}
|
||||
input.setCompanyId(payPackCompany.getCompanyId());
|
||||
input.setPackYear(payPackCompany.getPackYear());
|
||||
List<PayCommonProject> list = payPackCompanyProjectService.queryListAll(input);
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 未打包列表查询
|
||||
*
|
||||
* @param input 参数
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "打包项目维护-未打包列表查询")
|
||||
@ApiOperation(value="打包项目维护-未打包列表查询", notes="打包项目维护-未打包列表查询")
|
||||
@GetMapping(value = "/queryNotPackListAll")
|
||||
public Result<?> queryNotPackListAll(PayPackCompanyProjectInput input) {
|
||||
if(StringUtils.isBlank(input.getPackId())){
|
||||
return Result.error("打包id不能为空");
|
||||
}
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
|
||||
if(Objects.isNull(payPackCompany)){
|
||||
return Result.error("打包企业不存在");
|
||||
}
|
||||
input.setCompanyId(payPackCompany.getCompanyId());
|
||||
input.setPack(PackCommon.PACKAGING0);
|
||||
List<PayCommonProject> list = payPackCompanyProjectService.queryPackListAll(input);
|
||||
return Result.OK(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加
|
||||
* 添加打包
|
||||
*
|
||||
* @param payPackCompanyProject
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "pay_pack_company_project-添加")
|
||||
@ApiOperation(value="pay_pack_company_project-添加", notes="pay_pack_company_project-添加")
|
||||
@AutoLog(value = "打包项目维护-添加打包")
|
||||
@ApiOperation(value="打包项目维护-添加打包", notes="打包项目维护-添加打包")
|
||||
@PostMapping(value = "/add")
|
||||
public Result<?> add(@RequestBody PayPackCompanyProject payPackCompanyProject) {
|
||||
payPackCompanyProjectService.save(payPackCompanyProject);
|
||||
payPackCompanyProjectService.addPayPackCompanyProject(payPackCompanyProject);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
/**
|
||||
* 取消打包
|
||||
*
|
||||
* @param payPackCompanyProject
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "打包项目维护-取消打包")
|
||||
@ApiOperation(value="打包项目维护-取消打包", notes="打包项目维护-取消打包")
|
||||
@PostMapping(value = "/remove")
|
||||
public Result<?> remove(@RequestBody PayPackCompanyProject payPackCompanyProject) {
|
||||
if(StringUtils.isBlank(payPackCompanyProject.getId())){
|
||||
return Result.error("关联id不能为空!");
|
||||
}
|
||||
PayPackCompanyProject payPackCompanyProjectNew = payPackCompanyProjectService.getById(payPackCompanyProject.getId());
|
||||
if(Objects.isNull(payPackCompanyProjectNew)){
|
||||
return Result.error("不存在打包项目!");
|
||||
}
|
||||
if(Objects.equals(payPackCompanyProjectNew.getCome(),PackCommon.COME2)){
|
||||
return Result.error("此项目已在合同处创建关联,请先从合同处取消关联!");
|
||||
}
|
||||
payPackCompanyProjectService.removeById(payPackCompanyProject.getId());
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
/**
|
||||
* 批量取消打包
|
||||
*
|
||||
* @param payPackCompanyProject
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "打包项目维护-批量取消打包")
|
||||
@ApiOperation(value="打包项目维护-批量取消打包", notes="打包项目维护-批量取消打包")
|
||||
@PostMapping(value = "/removeBatch")
|
||||
public Result<?> removeBatch(@RequestBody PayPackCompanyProject payPackCompanyProject) {
|
||||
if(StringUtils.isBlank(payPackCompanyProject.getPackProjectIds())){
|
||||
return Result.error("关联id不能为空!");
|
||||
}
|
||||
String[] s = payPackCompanyProject.getPackProjectIds().split(",");
|
||||
for (String s1 : s) {
|
||||
if(StringUtils.isBlank(s1)){
|
||||
return Result.error("id不能为空!");
|
||||
}
|
||||
PayPackCompanyProject payPackCompanyProjectNew = payPackCompanyProjectService.getById(payPackCompanyProject.getId());
|
||||
if(Objects.isNull(payPackCompanyProjectNew)){
|
||||
return Result.error("不存在打包项目!");
|
||||
}
|
||||
if(Objects.equals(payPackCompanyProjectNew.getCome(),PackCommon.COME2)){
|
||||
return Result.error("此项目已在合同处创建关联,请先从合同处取消关联!");
|
||||
}
|
||||
}
|
||||
payPackCompanyProjectService.removeByIds(Arrays.asList(payPackCompanyProject.getPackProjectIds()));
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
@@ -77,8 +189,8 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "pay_pack_company_project-编辑")
|
||||
@ApiOperation(value="pay_pack_company_project-编辑", notes="pay_pack_company_project-编辑")
|
||||
@PutMapping(value = "/edit")
|
||||
// @ApiOperation(value="pay_pack_company_project-编辑", notes="pay_pack_company_project-编辑")
|
||||
@PostMapping(value = "/edit")
|
||||
public Result<?> edit(@RequestBody PayPackCompanyProject payPackCompanyProject) {
|
||||
payPackCompanyProjectService.updateById(payPackCompanyProject);
|
||||
return Result.OK("编辑成功!");
|
||||
@@ -91,8 +203,8 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "pay_pack_company_project-通过id删除")
|
||||
@ApiOperation(value="pay_pack_company_project-通过id删除", notes="pay_pack_company_project-通过id删除")
|
||||
@DeleteMapping(value = "/delete")
|
||||
// @ApiOperation(value="pay_pack_company_project-通过id删除", notes="pay_pack_company_project-通过id删除")
|
||||
@GetMapping(value = "/delete")
|
||||
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
|
||||
payPackCompanyProjectService.removeById(id);
|
||||
return Result.OK("删除成功!");
|
||||
@@ -105,8 +217,8 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "pay_pack_company_project-批量删除")
|
||||
@ApiOperation(value="pay_pack_company_project-批量删除", notes="pay_pack_company_project-批量删除")
|
||||
@DeleteMapping(value = "/deleteBatch")
|
||||
// @ApiOperation(value="pay_pack_company_project-批量删除", notes="pay_pack_company_project-批量删除")
|
||||
@GetMapping(value = "/deleteBatch")
|
||||
public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
|
||||
this.payPackCompanyProjectService.removeByIds(Arrays.asList(ids.split(",")));
|
||||
return Result.OK("批量删除成功!");
|
||||
@@ -119,7 +231,7 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "pay_pack_company_project-通过id查询")
|
||||
@ApiOperation(value="pay_pack_company_project-通过id查询", notes="pay_pack_company_project-通过id查询")
|
||||
// @ApiOperation(value="pay_pack_company_project-通过id查询", notes="pay_pack_company_project-通过id查询")
|
||||
@GetMapping(value = "/queryById")
|
||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
|
||||
PayPackCompanyProject payPackCompanyProject = payPackCompanyProjectService.getById(id);
|
||||
@@ -135,7 +247,7 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
* @param request
|
||||
* @param payPackCompanyProject
|
||||
*/
|
||||
@RequestMapping(value = "/exportXls")
|
||||
@GetMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, PayPackCompanyProject payPackCompanyProject) {
|
||||
return super.exportXls(request, payPackCompanyProject, PayPackCompanyProject.class, "pay_pack_company_project");
|
||||
}
|
||||
@@ -147,7 +259,7 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
||||
@PostMapping(value = "/importExcel")
|
||||
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
||||
return super.importExcel(request, response, PayPackCompanyProject.class);
|
||||
}
|
||||
|
||||
@@ -58,11 +58,9 @@ public class PayPackCompany implements Serializable {
|
||||
@ApiModelProperty(value = "企业联系人")
|
||||
private java.lang.String companyContactTemporaryName;
|
||||
/**打包年份*/
|
||||
@Excel(name = "打包年份", width = 15, format = "yyyy-MM-dd")
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
@Excel(name = "打包年份", width = 15)
|
||||
@ApiModelProperty(value = "打包年份")
|
||||
private java.util.Date packYear;
|
||||
private java.lang.String packYear;
|
||||
/**打包联系人id*/
|
||||
@Excel(name = "打包联系人id", width = 15)
|
||||
@ApiModelProperty(value = "打包联系人id")
|
||||
|
||||
+22
-4
@@ -2,10 +2,12 @@ package com.jero.pack.entity;
|
||||
|
||||
import java.io.Serializable;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.hibernate.annotations.Table;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.jeecgframework.poi.excel.annotation.Excel;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
@@ -13,6 +15,8 @@ import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
|
||||
/**
|
||||
* @Description: pay_pack_company_project
|
||||
* @Author: jeecg-boot
|
||||
@@ -31,18 +35,24 @@ public class PayPackCompanyProject implements Serializable {
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
@ApiModelProperty(value = "id")
|
||||
private java.lang.String id;
|
||||
/**打包id*/
|
||||
@Excel(name = "打包id", width = 15)
|
||||
@ApiModelProperty(value = "打包id")
|
||||
@NotEmpty(message = "打包id不能为空!")
|
||||
private java.lang.String packId;
|
||||
/**项目id*/
|
||||
@Excel(name = "项目id", width = 15)
|
||||
@ApiModelProperty(value = "项目id")
|
||||
@NotEmpty(message = "项目id不能为空!")
|
||||
private java.lang.String projectId;
|
||||
/**企业id*/
|
||||
@Excel(name = "企业id", width = 15)
|
||||
@ApiModelProperty(value = "企业id")
|
||||
private java.lang.String companyId;
|
||||
/**来源(1:收入合同,2:打包管理)*/
|
||||
@Excel(name = "来源(1:收入合同,2:打包管理)", width = 15)
|
||||
@ApiModelProperty(value = "来源(1:收入合同,2:打包管理)")
|
||||
private java.lang.Integer come;
|
||||
/**项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)*/
|
||||
@Excel(name = "项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)", width = 15)
|
||||
@ApiModelProperty(value = "项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)")
|
||||
private java.lang.Integer projectType;
|
||||
/**创建人*/
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private java.lang.String createBy;
|
||||
@@ -59,4 +69,12 @@ public class PayPackCompanyProject implements Serializable {
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
@ApiModelProperty(value = "更新日期")
|
||||
private java.util.Date updateTime;
|
||||
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "项目ids,逗号分割")
|
||||
private String projectIds;
|
||||
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "关联ids,逗号分割")
|
||||
private String packProjectIds;
|
||||
}
|
||||
|
||||
+23
@@ -3,6 +3,11 @@ package com.jero.pack.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.vo.PayPackCompanyProjectInput;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: pay_pack_company_project
|
||||
@@ -11,5 +16,23 @@ import com.jero.pack.entity.PayPackCompanyProject;
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface PayPackCompanyProjectMapper extends BaseMapper<PayPackCompanyProject> {
|
||||
/**
|
||||
* @Description 列表查询
|
||||
* @Author lqt
|
||||
* @Date 2021/9/10
|
||||
* @Param
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
List<PayCommonProject> queryListAll(PayPackCompanyProjectInput input);
|
||||
|
||||
/**
|
||||
* @Description 未打包列表查询
|
||||
* @Author lqt
|
||||
* @Date 2021/9/10
|
||||
* @Param
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
List<PayCommonProject> queryPackListAll(PayPackCompanyProjectInput input);
|
||||
}
|
||||
|
||||
+201
@@ -2,4 +2,205 @@
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.jero.pack.mapper.PayPackCompanyProjectMapper">
|
||||
|
||||
<select id="queryListAll" resultType="com.jero.project.entity.PayCommonProject">
|
||||
select project.*,ppcp.come from pay_pack_company_project ppcp
|
||||
LEFT JOIN pay_payment_record ppr ON ppr.project_id = ppcp.project_id
|
||||
<if test="paymentDate != null and paymentDate != ''">
|
||||
AND DATE_FORMAT(ppr.payment_date,'%Y') = #{paymentDate}
|
||||
</if>
|
||||
LEFT JOIN
|
||||
(
|
||||
<!-- 普通项目-->
|
||||
select c.id,c.charge_project, c.charge_use, c.principal_id,c.principal_name,c.charge_company_temporary_name,c.receivable_amount,c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType
|
||||
from pay_common_project c
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND c.charge_company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND c.charge_project LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND c.year = #{year}
|
||||
</if>
|
||||
</where>
|
||||
<!--工作组项目-->
|
||||
UNION ALL
|
||||
select gsub.id,g.working_group_project, gsub.charge_use, g.principal_id_a,g.principal_name_a,gsub.charge_company_temporary_name,gsub.receivable_amount,gsub.paid_amount,gsub.need_invoice,gsub.pack,gsub.in_account,gsub.make_invoice,gsub.mail,gsub.create_time,2
|
||||
from pay_working_group g
|
||||
inner join pay_working_group_subitem gsub on g.id = gsub.charge_company_id
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND gsub.charge_company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND g.working_group_project LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND g.year = #{year}
|
||||
</if>
|
||||
</where>
|
||||
<!-- 会议项目-->
|
||||
UNION ALL
|
||||
select sit.id,meeting.meeting_name,sit.charge_use, meeting.director_id, meeting.director_name,sit.company_name,sit.amount_receivable,sit.paid_amount,sit.need_invoice,sit.pack,sit.in_account,sit.make_invoice,sit.mail,sit.create_time,3
|
||||
from pay_meeting meeting
|
||||
inner join pay_meeting_situation sit on meeting.id = sit.meeting_id
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND sit.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND meeting.meeting_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND meeting.particular_year = #{year}
|
||||
</if>
|
||||
</where>
|
||||
<!-- 会员项目-->
|
||||
UNION ALL
|
||||
select msub.id,member.project_name,msub.charge_use,member.director_id,member.director_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4
|
||||
from pay_member_project member
|
||||
inner join pay_member_project_subitem msub on member.id=msub.project_id
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND msub.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND member.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND member.particular_year = #{year}
|
||||
</if>
|
||||
</where>
|
||||
<!-- 标协会员项目-->
|
||||
UNION ALL
|
||||
select tmsub.id,tmember.project_name,tmsub.charge_use,'','',tmsub.company_name,tmsub.amount_receivable,tmsub.paid_amount,tmsub.invoice_requirements,tmsub.pack,tmsub.in_account,tmsub.make_invoice,tmsub.mail,tmsub.create_time,5
|
||||
from tb_member_project tmember
|
||||
inner join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND tmsub.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND tmember.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND tmember.year = #{year}
|
||||
</if>
|
||||
</where>
|
||||
) project ON project.id = ppr.project_id
|
||||
GROUP BY ppcp.project_id ORDER BY ppcp.create_time desc
|
||||
</select>
|
||||
<select id="queryPackListAll" resultType="com.jero.project.entity.PayCommonProject">
|
||||
<!-- 普通项目-->
|
||||
select c.id,c.charge_project, c.charge_use, c.principal_id,c.principal_name,c.charge_company_temporary_name,c.receivable_amount,c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType
|
||||
from pay_common_project c
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
AND c.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND c.charge_company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND c.charge_project LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND c.year = #{year}
|
||||
</if>
|
||||
<if test="pack != null and pack != ''">
|
||||
AND c.pack = #{pack}
|
||||
</if>
|
||||
</where>
|
||||
<!--工作组项目-->
|
||||
UNION ALL
|
||||
select gsub.id,g.working_group_project, gsub.charge_use, g.principal_id_a,g.principal_name_a,gsub.charge_company_temporary_name,gsub.receivable_amount,gsub.paid_amount,gsub.need_invoice,gsub.pack,gsub.in_account,gsub.make_invoice,gsub.mail,gsub.create_time,2
|
||||
from pay_working_group g
|
||||
inner join pay_working_group_subitem gsub on g.id = gsub.charge_company_id
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
AND gsub.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND gsub.charge_company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND g.working_group_project LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND g.year = #{year}
|
||||
</if>
|
||||
<if test="pack != null and pack != ''">
|
||||
AND gsub.pack = #{pack}
|
||||
</if>
|
||||
</where>
|
||||
<!-- 会议项目-->
|
||||
UNION ALL
|
||||
select sit.id,meeting.meeting_name,sit.charge_use, meeting.director_id, meeting.director_name,sit.company_name,sit.amount_receivable,sit.paid_amount,sit.need_invoice,sit.pack,sit.in_account,sit.make_invoice,sit.mail,sit.create_time,3
|
||||
from pay_meeting meeting
|
||||
inner join pay_meeting_situation sit on meeting.id = sit.meeting_id
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
AND sit.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND sit.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND meeting.meeting_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND meeting.particular_year = #{year}
|
||||
</if>
|
||||
<if test="pack != null and pack != ''">
|
||||
AND sit.pack = #{pack}
|
||||
</if>
|
||||
</where>
|
||||
<!-- 会员项目-->
|
||||
UNION ALL
|
||||
select msub.id,member.project_name,msub.charge_use,member.director_id,member.director_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4
|
||||
from pay_member_project member
|
||||
inner join pay_member_project_subitem msub on member.id=msub.project_id
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
AND msub.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND msub.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND member.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND member.particular_year = #{year}
|
||||
</if>
|
||||
<if test="pack != null and pack != ''">
|
||||
AND msub.pack = #{pack}
|
||||
</if>
|
||||
</where>
|
||||
<!-- 标协会员项目-->
|
||||
UNION ALL
|
||||
select tmsub.id,tmember.project_name,tmsub.charge_use,'','',tmsub.company_name,tmsub.amount_receivable,tmsub.paid_amount,tmsub.invoice_requirements,tmsub.pack,tmsub.in_account,tmsub.make_invoice,tmsub.mail,tmsub.create_time,5
|
||||
from tb_member_project tmember
|
||||
inner join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
AND tmsub.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
AND tmsub.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND tmember.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND tmember.year = #{year}
|
||||
</if>
|
||||
<if test="pack != null and pack != ''">
|
||||
AND tmsub.pack = #{pack}
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY create_time desc
|
||||
|
||||
</select>
|
||||
</mapper>
|
||||
+29
-1
@@ -3,6 +3,10 @@ package com.jero.pack.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.vo.PayPackCompanyProjectInput;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: pay_pack_company_project
|
||||
@@ -11,5 +15,29 @@ import com.jero.pack.entity.PayPackCompanyProject;
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IPayPackCompanyProjectService extends IService<PayPackCompanyProject> {
|
||||
|
||||
/**
|
||||
* @Description 列表查询
|
||||
* @Author lqt
|
||||
* @Date 2021/9/10
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
List<PayCommonProject> queryListAll(PayPackCompanyProjectInput input);
|
||||
/**
|
||||
* @Description 未打包列表查询
|
||||
* @Author lqt
|
||||
* @Date 2021/9/10
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
List<PayCommonProject> queryPackListAll(PayPackCompanyProjectInput input);
|
||||
/**
|
||||
* @Description
|
||||
* @Author lqt
|
||||
* @Date 2021/9/10
|
||||
* @Param
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
void addPayPackCompanyProject(PayPackCompanyProject payPackCompanyProject);
|
||||
}
|
||||
|
||||
+70
@@ -1,11 +1,27 @@
|
||||
package com.jero.pack.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.mapper.PayPackCompanyProjectMapper;
|
||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.pack.vo.PayPackCompanyProjectInput;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @Description: pay_pack_company_project
|
||||
* @Author: jeecg-boot
|
||||
@@ -15,4 +31,58 @@ import org.springframework.stereotype.Service;
|
||||
@Service
|
||||
public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompanyProjectMapper, PayPackCompanyProject> implements IPayPackCompanyProjectService {
|
||||
|
||||
@Resource
|
||||
private PayPackCompanyProjectMapper payPackCompanyProjectMapper;
|
||||
@Autowired
|
||||
private IPayPackCompanyProjectService payPackCompanyProjectService;
|
||||
@Autowired
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
|
||||
|
||||
@Override
|
||||
public List<PayCommonProject> queryListAll(PayPackCompanyProjectInput input) {
|
||||
return payPackCompanyProjectMapper.queryListAll(input);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PayCommonProject> queryPackListAll(PayPackCompanyProjectInput input) {
|
||||
return payPackCompanyProjectMapper.queryPackListAll(input);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addPayPackCompanyProject(PayPackCompanyProject payPackCompanyProject) {
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(payPackCompanyProject.getPackId());
|
||||
if(Objects.isNull(payPackCompany)){
|
||||
throw new JeroBootException("打包企业不存在");
|
||||
}
|
||||
|
||||
if(StringUtils.isBlank(payPackCompanyProject.getProjectIds())){
|
||||
throw new JeroBootException("请选择项目");
|
||||
}
|
||||
String[] s = payPackCompanyProject.getProjectIds().split(",");
|
||||
List<PayPackCompanyProject> listPayPackCompanyProject = new ArrayList<>();
|
||||
for (String s1 : s) {
|
||||
if(StringUtils.isBlank(s1)){
|
||||
throw new JeroBootException("项目id不能为空!");
|
||||
}
|
||||
PayPackCompanyProjectInput input = new PayPackCompanyProjectInput();
|
||||
input.setProjectId(s1);
|
||||
input.setCompanyId(payPackCompany.getCompanyId());
|
||||
List<PayCommonProject> list = payPackCompanyProjectService.queryPackListAll(input);
|
||||
if(CollectionUtils.isEmpty(list)){
|
||||
throw new JeroBootException("项目下企业不匹配!");
|
||||
}
|
||||
payPackCompanyProject.setProjectId(s1);
|
||||
listPayPackCompanyProject.add(payPackCompanyProject);
|
||||
}
|
||||
LambdaQueryWrapper<PayPackCompanyProject> query = new LambdaQueryWrapper<>();
|
||||
query.in(PayPackCompanyProject::getProjectId, Arrays.asList(payPackCompanyProject.getProjectIds()));
|
||||
List<PayPackCompanyProject> listPayPackCompanyProjectNew = payPackCompanyProjectService.list(query);
|
||||
if(!CollectionUtils.isEmpty(listPayPackCompanyProjectNew)){
|
||||
throw new JeroBootException("项目已被打包!");
|
||||
}
|
||||
if(!CollectionUtils.isEmpty(listPayPackCompanyProject)){
|
||||
payPackCompanyProjectService.save(payPackCompanyProject);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
package com.jero.pack.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
public class PayPackCompanyProjectInput implements Serializable {
|
||||
/**
|
||||
* 打包id
|
||||
*/
|
||||
@ApiModelProperty(value = "打包id")
|
||||
private String packId;
|
||||
/**
|
||||
* 项目名称
|
||||
*/
|
||||
@ApiModelProperty(value = "项目名称")
|
||||
private String projectName;
|
||||
/**
|
||||
* 企业id
|
||||
*/
|
||||
@ApiModelProperty(value = "企业id")
|
||||
private String companyId;
|
||||
/**
|
||||
* 运行年份
|
||||
*/
|
||||
@ApiModelProperty(value = "运行年份")
|
||||
private String year;
|
||||
/**
|
||||
* 打包(1:是,0:否)
|
||||
*/
|
||||
@ApiModelProperty(value = "打包(1:是,0:否)")
|
||||
private Integer pack;
|
||||
/**
|
||||
* 打包年份
|
||||
*/
|
||||
@ApiModelProperty(value = "打包年份")
|
||||
private String packYear;
|
||||
/**
|
||||
* 项目id
|
||||
*/
|
||||
@ApiModelProperty(value = "项目id")
|
||||
private String projectId;
|
||||
/**
|
||||
* 项目ids,逗号分割
|
||||
*/
|
||||
@ApiModelProperty(value = "项目ids,逗号分割")
|
||||
private String projectIds;
|
||||
}
|
||||
Reference in New Issue
Block a user