收入合同项目列表查询修改

This commit is contained in:
梁琦涛
2021-09-07 14:04:06 +08:00
parent d29f2d85ca
commit d36173df0c
11 changed files with 89 additions and 26 deletions
@@ -30,20 +30,24 @@ public class PayIncomeContractCommon {
*/
public final static Integer PACK0 = 0;
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目5:标协会员项目
*/
public final static String PROJECT_TYPE1 = "1";
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目5:标协会员项目
*/
public final static String PROJECT_TYPE2 = "2";
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目5:标协会员项目
*/
public final static String PROJECT_TYPE3 = "3";
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目5:标协会员项目
*/
public final static String PROJECT_TYPE4 = "4";
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
*/
public final static String PROJECT_TYPE5 = "5";
}
@@ -100,7 +100,7 @@ public class PayIncomeContractController extends JeroController<PayIncomeContrac
if(!StringUtils.isBlank(projectName) && projectName.length() > 50){
return Result.error("关联项目长度不能大于50个字符!");
}
// todo 缺少会议,会员项目
// todo 缺少会议,会员项目,标协会员
Page<PayIncomeContractOutput> page = new Page<>(pageNo, pageSize);
IPage<PayIncomeContractOutput> pageList = payIncomeContractService.queryPageList(page, payIncomeContract,chargeStatus,projectName,startTime,endTime);
pageList.getRecords().forEach(p->{
@@ -39,9 +39,9 @@ public class PayIncomeContractAssociated implements Serializable {
@Excel(name = "项目id", width = 15)
@ApiModelProperty(value = "项目id")
private java.lang.String projectId;
/**项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)*/
@Excel(name = "项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)", width = 15)
@ApiModelProperty(value = "项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目)")
/**项目类型(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 = "创建人")
@@ -331,6 +331,9 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
case PayIncomeContractCommon.PROJECT_TYPE4:
// todo 会员项目
break;
case PayIncomeContractCommon.PROJECT_TYPE5:
// todo 标协会员
break;
default:break;
}
@@ -366,7 +369,17 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
@Override
@Transactional
public void cancelAssociated(PayIncomeContractAssociated payIncomeContractAssociated) {
public void cancelAssociated(PayIncomeContractAssociated input) {
if(StringUtils.isBlank(input.getId())){
throw new JeroBootException("关联id不能为空!");
}
PayIncomeContractAssociated payIncomeContractAssociated = payIncomeContractAssociatedService.getById(input.getId());
if(Objects.equals(input.getContractId(),payIncomeContractAssociated.getContractId())){
throw new JeroBootException("关联id不能为空!");
}
if(Objects.isNull(payIncomeContractAssociated)){
throw new JeroBootException("关联记录不存在!");
}
PayIncomeContract payIncomeContract = payIncomeContractService.getById(payIncomeContractAssociated.getContractId());
if(Objects.isNull(payIncomeContract)){
throw new JeroBootException("合同不存在!");
@@ -420,6 +433,9 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
case PayIncomeContractCommon.PROJECT_TYPE4:
// todo 会员项目
break;
case PayIncomeContractCommon.PROJECT_TYPE5:
// todo 标协会员
break;
default:break;
}
payIncomeContractAssociatedService.removeById(payIncomeContractAssociated.getId());
@@ -55,5 +55,24 @@ public class PayProjectCommon {
* 来款方式(1:无,2:合同,3:收费通知)
*/
public final static Integer CHARGE_WAY3 = 3;
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
*/
public final static String PROJECT_TYPE1 = "1";
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
*/
public final static String PROJECT_TYPE2 = "2";
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
*/
public final static String PROJECT_TYPE3 = "3";
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
*/
public final static String PROJECT_TYPE4 = "4";
/**
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
*/
public final static String PROJECT_TYPE5 = "5";
}
@@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -18,6 +19,9 @@ import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.util.ValidUtil;
import com.jero.contract.entity.PayIncomeContractAssociated;
import com.jero.contract.service.IPayIncomeContractAssociatedService;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.PayWorkingGroup;
import com.jero.project.service.IPayCommonProjectService;
import com.jero.project.entity.PayCommonProject;
@@ -50,6 +54,8 @@ public class PayCommonProjectController extends JeroController<PayCommonProject,
private ProjectDetailService projectDetailService;
@Autowired
private ISysBaseAPI sysBaseAPI;
@Autowired
private IPayIncomeContractAssociatedService payIncomeContractAssociatedService;
/**
* 分页列表查询
*
@@ -85,19 +91,38 @@ public class PayCommonProjectController extends JeroController<PayCommonProject,
@ApiOperation(value="普通项目管理-列表", notes="普通项目管理-列表")
@GetMapping(value = "/listAll")
public Result<?> listAll(PayCommonProject payCommonProject,HttpServletRequest req) {
if(StringUtils.isBlank(payCommonProject.getChargeCompanyId())){
return Result.error("企业id不能为空!");
}
QueryWrapper<PayCommonProject> queryWrapper = QueryGenerator.initQueryWrapper(payCommonProject, req.getParameterMap());
List<PayCommonProject> list = payCommonProjectService.list(queryWrapper);
List<PayCommonProjectOutput> listNew = new ArrayList<>();
List<PayCommonProjectOutput> listPayCommonProjectOutputNew = new ArrayList<>();
if(!CollectionUtils.isEmpty(list)){
List<String> listProjectId = list.stream().map(PayCommonProject::getId).collect(Collectors.toList());
// 获取已经关联合同的普通项目
LambdaQueryWrapper<PayIncomeContractAssociated> queryPayIncomeContractAssociated = new LambdaQueryWrapper<>();
queryPayIncomeContractAssociated.in(PayIncomeContractAssociated::getId, listProjectId);
queryPayIncomeContractAssociated.eq(PayIncomeContractAssociated::getProjectType, PayProjectCommon.PROJECT_TYPE1);
List<PayIncomeContractAssociated> listPayIncomeContractAssociated = payIncomeContractAssociatedService.list(queryPayIncomeContractAssociated);
List<String> listProjectIdNew = new ArrayList<>();
if(!CollectionUtils.isEmpty(listPayIncomeContractAssociated)){
listProjectIdNew = listPayIncomeContractAssociated.stream().map(PayIncomeContractAssociated::getProjectId).collect(Collectors.toList());
}
String str = JSON.toJSONString(list);
listNew = JSONArray.parseArray(str,PayCommonProjectOutput.class);
List<String> finalListProjectId = listProjectIdNew;
listNew.forEach(p->{
if(!StringUtils.isBlank(p.getChargeUse())){
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",p.getChargeUse()));
// 没有关联合同
if(!CollectionUtils.isEmpty(finalListProjectId) && !finalListProjectId.contains(p.getId())){
if(!StringUtils.isBlank(p.getChargeUse())){
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",p.getChargeUse()));
}
listPayCommonProjectOutputNew.add(p);
}
});
}
return Result.OK(listNew);
return Result.OK(listPayCommonProjectOutputNew);
}
@@ -15,6 +15,7 @@ import com.jero.common.exception.JeroBootException;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.util.ValidUtil;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.vo.PayWorkingGroupPayment;
import com.jero.project.vo.PayWorkingGroupVO;
import com.jero.project.entity.PayWorkingGroupSubItem;
@@ -108,12 +109,12 @@ public class PayWorkingGroupController extends JeroController<PayWorkingGroup, I
@ApiOperation(value="工作组项目-根据成员单位列表查询", notes="工作组项目-根据单位列表查询")
@GetMapping(value = "/queryListByCompany")
public Result<?> queryListByCompany(@RequestParam(name = "companyId") String companyId,
@RequestParam(name = "workingGroupProject") String workingGroupProject,
@RequestParam(name = "workingGroupProject",required = false) String workingGroupProject,
@RequestParam(name = "year",required = false) String year) {
if(StringUtils.isBlank(companyId)){
return Result.error("企业id不能为空!");
}
List<PayWorkingGroupVO> list = payWorkingGroupService.queryListByCompany(companyId,workingGroupProject,year);
List<PayWorkingGroupVO> list = payWorkingGroupService.queryListByCompany(companyId,workingGroupProject,year, PayProjectCommon.PROJECT_TYPE2);
if(CollectionUtils.isEmpty(list)){
setPayWorkingGroupSubItem(list);
}
@@ -34,6 +34,7 @@ public interface PayWorkingGroupMapper extends BaseMapper<PayWorkingGroup> {
* @Return
* @Exception
*/
List<PayWorkingGroupVO> queryListByCompany(@Param("companyId") String companyId,@Param("workingGroupProject") String workingGroupProject, @Param("year") String year);
List<PayWorkingGroupVO> queryListByCompany(@Param("companyId") String companyId,@Param("workingGroupProject") String workingGroupProject,
@Param("year") String year,@Param("projectType") String projectType);
}
@@ -61,19 +61,16 @@
pwg.create_time AS createTime,
pwg.update_by AS updateBy,
pwg.update_time AS updateTime
FROM pay_working_group pwg
LEFT JOIN pay_working_group_subitem pwgs ON pwg.id = pwgs.working_group_id
<where>
FROM pay_working_group_subitem pwgs
LEFT JOIN pay_working_group pwg ON pwg.id = pwgs.working_group_id
WHERE pwg.id is not null AND pwg.id !='' AND pwgs.charge_company_id = #{companyId}
AND pwgs.id NOT IN (SELECT project_id FROM pay_income_contract_associated WHERE project_type=#{projectType})
<if test="workingGroupProject != null and workingGroupProject != ''">
AND pwg.working_group_project = #{workingGroupProject}
</if>
<if test="companyId != null and companyId != ''">
AND pwgs.charge_company_id = #{companyId}
</if>
<if test="year != null and year != ''">
AND pwg.year = #{year}
</if>
</where>
GROUP BY pwg.id ORDER BY pwg.create_time DESC
</select>
</mapper>
@@ -32,5 +32,5 @@ public interface IPayWorkingGroupService extends IService<PayWorkingGroup> {
* @Return
* @Exception
*/
List<PayWorkingGroupVO> queryListByCompany(String companyId,String workingGroupProject,String year);
List<PayWorkingGroupVO> queryListByCompany(String companyId,String workingGroupProject,String year,String projectType);
}
@@ -31,7 +31,7 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
}
@Override
public List<PayWorkingGroupVO> queryListByCompany(String companyId,String workingGroupProject, String year) {
return payWorkingGroupMapper.queryListByCompany(companyId,workingGroupProject,year);
public List<PayWorkingGroupVO> queryListByCompany(String companyId,String workingGroupProject, String year,String projectType) {
return payWorkingGroupMapper.queryListByCompany(companyId,workingGroupProject,year,projectType);
}
}