feat: 打包管理详情列表增加待确收金额总计字段

This commit is contained in:
2024-04-03 14:17:30 +08:00
parent e14730d134
commit 5626b5973b
2 changed files with 346 additions and 344 deletions
@@ -62,24 +62,23 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
* 分页列表查询
*
* @param payDraftingGroup 起草组项目
* @param pageNo 页数
* @param pageSize 条数
* @param pageNo 页数
* @param pageSize 条数
*/
@RequiresPermissions("draftingGroup:search")
@ApiOperation(value="起草组项目-分页列表查询", notes="起草组项目-分页列表查询")
@ApiOperation(value = "起草组项目-分页列表查询", notes = "起草组项目-分页列表查询")
@GetMapping(value = "/list")
public Result<?> queryPageList(PayDraftingGroup payDraftingGroup,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
// 校验参数
if(!StringUtils.isBlank(payDraftingGroup.getDraftingGroupProject()) && payDraftingGroup.getDraftingGroupProject().length() > 50){
if (!StringUtils.isBlank(payDraftingGroup.getDraftingGroupProject()) && payDraftingGroup.getDraftingGroupProject().length() > 50) {
return Result.error("起草组项目长度不能大于50个字符");
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if (StringUtils.isNotBlank(sysUser.getRoleCode())){
if (StringUtils.isNotBlank(sysUser.getRoleCode())) {
List<String> roleCodes = new ArrayList<>(Arrays.asList(sysUser.getRoleCode().split(",")));
if(rolePermissionService.getRolePermission("draftingGroup:search") &&
!(roleCodes.contains(constant.ADMIN))){
if (!(roleCodes.contains(constant.ADMIN))) {
payDraftingGroup.setPrincipalA(sysUser.getId());
payDraftingGroup.setPrincipalB(sysUser.getId());
}
@@ -88,21 +87,21 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
// 分页条件查询
Page<PayDraftingGroupVo> page = new Page<>(pageNo, pageSize);
if(!StringUtils.isBlank(payDraftingGroup.getDraftingGroupProject())){
if (!StringUtils.isBlank(payDraftingGroup.getDraftingGroupProject())) {
payDraftingGroup.setDraftingGroupProject(oConvertUtils.replaceAllPercent(payDraftingGroup.getDraftingGroupProject()));
}
if(!StringUtils.isBlank(payDraftingGroup.getWorkingGroupName())){
if (!StringUtils.isBlank(payDraftingGroup.getWorkingGroupName())) {
payDraftingGroup.setWorkingGroupName(oConvertUtils.replaceAllPercent(payDraftingGroup.getWorkingGroupName()));
}
IPage<PayDraftingGroupVo> pageList = payDraftingGroupService.queryPageList(page,payDraftingGroup);
IPage<PayDraftingGroupVo> pageList = payDraftingGroupService.queryPageList(page, payDraftingGroup);
if (!Objects.isNull(pageList)) {
List<PayDraftingGroupVo> listPayDraftingGroupVo = pageList.getRecords();
if (!CollectionUtils.isEmpty(listPayDraftingGroupVo)) {
listPayDraftingGroupVo.forEach(p->{
if(!rolePermissionService.getRolePermission("generalProject:search") && Objects.equals(p.getPrincipalIdB(),sysUser.getId())){
listPayDraftingGroupVo.forEach(p -> {
if (!rolePermissionService.getRolePermission("generalProject:search") && Objects.equals(p.getPrincipalIdB(), sysUser.getId())) {
p.setCheckoutOperation(PayProjectCommon.CHECKOUT_OPERATION2);
}else{
} else {
p.setCheckoutOperation(PayProjectCommon.CHECKOUT_OPERATION1);
}
});
@@ -114,30 +113,30 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 添加
* 添加
*
* @param payDraftingGroup 起草组项目
* @return
*/
@AutoLog(value = "起草组项目-添加",operateType = 1)
@AutoLog(value = "起草组项目-添加", operateType = 1)
@RequiresPermissions("draftingGroup:add")
@ApiOperation(value="起草组项目-添加", notes="起草组项目-添加")
@ApiOperation(value = "起草组项目-添加", notes = "起草组项目-添加")
@PostMapping(value = "/add")
public Result<?> add(@RequestBody PayDraftingGroup payDraftingGroup) {
// 参数校验
StringBuilder msg = ValidUtil.validateAll(payDraftingGroup);
if(!StringUtils.isBlank(msg)){
if (!StringUtils.isBlank(msg)) {
return Result.error(msg.toString());
}
try {
LambdaQueryWrapper<PayDraftingGroup> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayDraftingGroup::getDraftingGroupProject,payDraftingGroup.getDraftingGroupProject());
queryWrapper.eq(PayDraftingGroup::getDraftingGroupProject, payDraftingGroup.getDraftingGroupProject());
PayDraftingGroup payDraftingGroupDB = payDraftingGroupService.getOne(queryWrapper);
if(!Objects.isNull(payDraftingGroupDB)) {
if (!Objects.isNull(payDraftingGroupDB)) {
return Result.error("起草组项目已存在!");
}
}catch (Exception e){
log.info("起草组项目-添加",e);
} catch (Exception e) {
log.info("起草组项目-添加", e);
return Result.error("起草组项目已存在!");
}
payDraftingGroupService.setPayDraftingGroup(payDraftingGroup);
@@ -146,17 +145,17 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 通过id删除
* 通过id删除
*
* @param id 工作组项目id
* @return
*/
@AutoLog(value = "起草组项目-通过id删除",operateType = 2)
@AutoLog(value = "起草组项目-通过id删除", operateType = 2)
@RequiresPermissions("draftingGroup:delete")
@ApiOperation(value="起草组项目-通过id删除", notes="起草组项目-通过id删除")
@ApiOperation(value = "起草组项目-通过id删除", notes = "起草组项目-通过id删除")
@GetMapping(value = "/delete")
public Result<?> delete(@RequestParam(name="id") String id) {
if(StringUtils.isBlank(id)){
public Result<?> delete(@RequestParam(name = "id") String id) {
if (StringUtils.isBlank(id)) {
return Result.error("id不能为空!");
}
payDraftingGroupService.deleteById(id);
@@ -164,21 +163,21 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 批量删除
* 批量删除
*
* @param ids 起草组项目ids 逗号分隔
* @return
*/
@RequiresPermissions("draftingGroup:batchDel")
@ApiOperation(value="起草组项目-批量删除", notes="起草组项目-批量删除")
@ApiOperation(value = "起草组项目-批量删除", notes = "起草组项目-批量删除")
@GetMapping(value = "/deleteBatch")
public Result<?> deleteBatch(@RequestParam(name="ids") String ids) {
if(StringUtils.isBlank(ids)){
public Result<?> deleteBatch(@RequestParam(name = "ids") String ids) {
if (StringUtils.isBlank(ids)) {
return Result.error("id不能为空!");
}
String[] s = ids.split(",");
for (String s1 : s) {
if(StringUtils.isBlank(s1)){
if (StringUtils.isBlank(s1)) {
return Result.error("id不能为空!");
}
}
@@ -187,25 +186,25 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 复制
* 复制
*
* @param payDraftingGroup 起草组项目
* @return
*/
@AutoLog(value = "起草组项目-复制",operateType = 3)
@AutoLog(value = "起草组项目-复制", operateType = 3)
@RequiresPermissions("draftingGroup:copy")
@ApiOperation(value="起草组项目-复制", notes="起草组项目-复制")
@ApiOperation(value = "起草组项目-复制", notes = "起草组项目-复制")
@PostMapping(value = "/copy")
public Result<?> copy(@RequestBody PayDraftingGroup payDraftingGroup) {
if(StringUtils.isBlank(payDraftingGroup.getId())){
if (StringUtils.isBlank(payDraftingGroup.getId())) {
return Result.error("起草组id不能为空!");
}
PayDraftingGroup payDraftingGroupOld = payDraftingGroupService.getById(payDraftingGroup.getId());
if(Objects.isNull(payDraftingGroupOld)){
if (Objects.isNull(payDraftingGroupOld)) {
return Result.error("起草组不存在!");
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!rolePermissionService.getRolePermission("draftingGroup:copy") && !Objects.equals(payDraftingGroupOld.getPrincipalIdA(),sysUser.getId())){
if (!rolePermissionService.getRolePermission("draftingGroup:copy") && !Objects.equals(payDraftingGroupOld.getPrincipalIdA(), sysUser.getId())) {
return Result.error(payDraftingGroupOld.getDraftingGroupProject() + "数据权限不足!");
}
payDraftingGroupService.copy(payDraftingGroup);
@@ -218,14 +217,14 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
* @param id 起草组项目id
* @return
*/
@ApiOperation(value="起草组项目-通过id查询", notes="起草组项目-通过id查询")
@ApiOperation(value = "起草组项目-通过id查询", notes = "起草组项目-通过id查询")
@GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id") String id) {
public Result<?> queryById(@RequestParam(name = "id") String id) {
if (StringUtils.isBlank(id)) {
return Result.error("起草组id不能为空");
}
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(id);
if(Objects.isNull(payDraftingGroup)) {
if (Objects.isNull(payDraftingGroup)) {
return Result.error("未找到对应数据");
}
// 根据工作组id查询对应的工作组名称
@@ -240,13 +239,14 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
/**
* 查询所有工作组
*
* @return
*/
@ApiOperation(value="工作组项目-查询所有工作组", notes="工作组项目-查询所有工作组")
@ApiOperation(value = "工作组项目-查询所有工作组", notes = "工作组项目-查询所有工作组")
@GetMapping(value = "/queryAllWorkingGroupsIdAndName")
public Result<?> queryAllWorkingGroupsIdAndName() {
QueryWrapper<PayWorkingGroup> queryWrapper = new QueryWrapper<>();
queryWrapper.select("id","working_group_project");
queryWrapper.select("id", "working_group_project");
queryWrapper.lambda().groupBy(PayWorkingGroup::getWorkingGroupProject);
List<PayWorkingGroup> payWorkingGroups = payWorkingGroupService.list(queryWrapper);
List<HashMap<String, String>> mapList = payWorkingGroups.stream().map(p -> {
@@ -261,11 +261,11 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
/**
* 列表查询
*
* @param payDraftingGroup 起草组项目
* @param payDraftingGroup 起草组项目
* @param req
* @return
*/
@ApiOperation(value="起草组项目-列表查询", notes="起草组项目-列表查询")
@ApiOperation(value = "起草组项目-列表查询", notes = "起草组项目-列表查询")
@GetMapping(value = "/listAll")
public Result<?> queryList(PayDraftingGroup payDraftingGroup, HttpServletRequest req) {
QueryWrapper<PayDraftingGroup> queryWrapper = QueryGenerator.initQueryWrapper(payDraftingGroup, req.getParameterMap());
@@ -274,42 +274,42 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
}
/**
* 编辑
* 编辑
*
* @param payDraftingGroup 起草组项目
* @return
*/
@AutoLog(value = "起草组项目-修改",operateType = 3)
@AutoLog(value = "起草组项目-修改", operateType = 3)
@RequiresPermissions("draftingGroup:edit")
@ApiOperation(value="起草组项目-编辑", notes="起草组项目-编辑")
@ApiOperation(value = "起草组项目-编辑", notes = "起草组项目-编辑")
@PostMapping(value = "/edit")
public Result<?> edit(@RequestBody PayDraftingGroup payDraftingGroup) {
StringBuilder msg = ValidUtil.validateAll(payDraftingGroup);
if(!StringUtils.isBlank(msg)){
if (!StringUtils.isBlank(msg)) {
return Result.error(msg.toString());
}
if(StringUtils.isEmpty(payDraftingGroup.getId())){
if (StringUtils.isEmpty(payDraftingGroup.getId())) {
return Result.error("起草组id不能为空!");
}
PayDraftingGroup payDraftingGroupOld = payDraftingGroupService.getById(payDraftingGroup.getId());
if(Objects.isNull(payDraftingGroupOld)){
if (Objects.isNull(payDraftingGroupOld)) {
return Result.error("起草组不存在!");
}
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(!rolePermissionService.getRolePermission("draftingGroup:edit") && !Objects.equals(payDraftingGroupOld.getPrincipalIdA(),sysUser.getId())){
if (!rolePermissionService.getRolePermission("draftingGroup:edit") && !Objects.equals(payDraftingGroupOld.getPrincipalIdA(), sysUser.getId())) {
return Result.error(payDraftingGroupOld.getDraftingGroupProject() + "数据权限不足!");
}
try {
// 编辑保存前再次校验来款项目是否存在
LambdaQueryWrapper<PayDraftingGroup> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(PayDraftingGroup::getDraftingGroupProject,payDraftingGroup.getDraftingGroupProject());
queryWrapper.eq(PayDraftingGroup::getDraftingGroupProject, payDraftingGroup.getDraftingGroupProject());
PayDraftingGroup payDraftingGroupNew = payDraftingGroupService.getOne(queryWrapper);
// 来款项目存在,并且编辑id与查询不同,则校验不通过
if(!Objects.isNull(payDraftingGroupNew) && !Objects.equals(payDraftingGroupNew.getId(),payDraftingGroup.getId())) {
if (!Objects.isNull(payDraftingGroupNew) && !Objects.equals(payDraftingGroupNew.getId(), payDraftingGroup.getId())) {
return Result.error("起草组项目已存在!");
}
}catch (Exception e){
log.info("工作组项目-编辑异常",e);
} catch (Exception e) {
log.info("工作组项目-编辑异常", e);
return Result.error("起草组项目已存在!");
}
payDraftingGroupService.setPayDraftingGroup(payDraftingGroup);
@@ -330,14 +330,14 @@ public class PayDraftingGroupController extends JeroController<PayDraftingGroup,
* @param id 起草组项目id
* @return
*/
@ApiOperation(value="报名-起草组项目-通过id查询", notes="报名-起草组项目-通过id查询")
@ApiOperation(value = "报名-起草组项目-通过id查询", notes = "报名-起草组项目-通过id查询")
@GetMapping(value = "/applyQueryById")
public Result<?> applyQueryById(@RequestParam(name="id") String id) {
public Result<?> applyQueryById(@RequestParam(name = "id") String id) {
if (StringUtils.isBlank(id)) {
return Result.error("起草组id不能为空");
}
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(id);
if(Objects.isNull(payDraftingGroup)) {
if (Objects.isNull(payDraftingGroup)) {
return Result.error("未找到对应数据");
}
// 根据工作组id查询对应的工作组名称
@@ -44,303 +44,305 @@ import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
/**
/**
* @Description: 打包项目维护
* @Author: jeecg-boot
* @Date: 2021-09-07
* @Date: 2021-09-07
* @Version: V1.0
*/
@Api(tags="打包项目维护")
@Api(tags = "打包项目维护")
@RestController
@RequestMapping("/pack/payPackCompanyProject")
@Slf4j
public class PayPackCompanyProjectController extends JeroController<PayPackCompanyProject, IPayPackCompanyProjectService> {
@Resource
private IPayPackCompanyProjectService payPackCompanyProjectService;
@Resource
private IPayPackCompanyService payPackCompanyService;
@Resource
private ISysBaseAPI sysBaseAPI;
@Resource
private Environment env;
/**
* 分页列表查询
*
* @param payPackCompanyProject
* @param pageNo
* @param pageSize
* @param req
* @return
*/
// @ApiOperation(value="打包项目维护-分页列表查询", notes="打包项目维护-分页列表查询")
// @GetMapping(value = "/list")
public Result<?> queryPageList(PayPackCompanyProject payPackCompanyProject,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<PayPackCompanyProject> queryWrapper = QueryGenerator.initQueryWrapper(payPackCompanyProject, req.getParameterMap());
Page<PayPackCompanyProject> page = new Page<PayPackCompanyProject>(pageNo, pageSize);
IPage<PayPackCompanyProject> pageList = payPackCompanyProjectService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 列表查询
*
* @param input 参数
* @return
*/
@RequiresPermissions("packProject:search")
@ApiOperation(value="打包项目维护-列表查询", notes="打包项目维护-列表查询")
@GetMapping(value = "/listAll")
public Result<?> queryListAll(PayPackCompanyProjectInput input) {
if(Objects.isNull(input.getPackId())){
return Result.error("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if(Objects.isNull(payPackCompany)){
return Result.error("打包企业不存在");
}
if(!StringUtils.isBlank(input.getProjectName())){
input.setProjectName(oConvertUtils.replaceAllPercent(input.getProjectName()));
}
input.setCompanyId(payPackCompany.getCompanyId());
input.setPackYear(payPackCompany.getPackYear());
List<PayCommonProject> list = payPackCompanyProjectService.queryListAll(input);
BigDecimal sumOfReceivableAmount = BigDecimal.ZERO;
BigDecimal sumOfPaidAmount = BigDecimal.ZERO;
if(!CollectionUtils.isEmpty(list)){
for (PayCommonProject p : list) {
if(!StringUtils.isBlank(p.getPhone())){
p.setPhone(PasswordUtil.decrypt(p.getPhone()));
}
if(!StringUtils.isBlank(p.getEmail())){
p.setEmail(PasswordUtil.decrypt(p.getEmail()));
}
if(Objects.isNull(p.getReceivableAmount())){
p.setReceivableAmount(new BigDecimal("0.00"));
}
if(Objects.isNull(p.getPaidAmount())){
p.setPaidAmount(new BigDecimal("0.00"));
}
sumOfReceivableAmount = sumOfReceivableAmount.add(p.getReceivableAmount());
sumOfPaidAmount = sumOfPaidAmount.add(p.getPaidAmount());
}
}
HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("sumOfReceivableAmount", sumOfReceivableAmount.toString());
hashMap.put("sumOfPaidAmount", sumOfPaidAmount.toString());
hashMap.put("list", list);
return Result.OK(hashMap);
}
/**
* 未打包列表查询
*
* @param input 参数
* @return
*/
@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.setPackId(input.getPackId());
input.setCompanyId(payPackCompany.getCompanyId());
input.setPack(PackCommon.PACKAGING0);
List<PayCommonProject> list = payPackCompanyProjectService.queryPackListAll(input);
List<PayCommonProjectOutput> listPayCommonProjectOutput = new ArrayList<>();
if(!CollectionUtils.isEmpty(list)){
String str = JSON.toJSONString(list);
listPayCommonProjectOutput = JSONArray.parseArray(str,PayCommonProjectOutput.class);
listPayCommonProjectOutput.forEach(p->{
if(!Objects.isNull(p.getChargeUse())){
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use",String.valueOf(p.getChargeUse())));
}
if (Objects.isNull(p.getPaidAmount())) {
p.setPaidAmount(new BigDecimal("0.00"));
}
});
}
return Result.OK(listPayCommonProjectOutput);
}
/**
* 添加打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-添加",operateType = 2)
@RequiresPermissions("packProject:pack")
@ApiOperation(value="打包项目维护-添加打包", notes="打包项目维护-添加打包")
@PostMapping(value = "/add")
public Result<?> add(@RequestBody PayPackCompanyProject payPackCompanyProject) {
payPackCompanyProjectService.addPayPackCompanyProject(payPackCompanyProject);
return Result.OK("添加成功!");
}
/**
* 取消打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-取消打包",operateType = 4)
@RequiresPermissions("packProject:cancelPack")
@ApiOperation(value="打包项目维护-取消打包", notes="打包项目维护-取消打包")
@PostMapping(value = "/remove")
public Result<?> remove(@RequestBody PayPackCompanyProject payPackCompanyProject) {
if(StringUtils.isBlank(payPackCompanyProject.getId())){
return Result.error("关联id不能为空!");
}
payPackCompanyProjectService.removePayPackCompanyProject(payPackCompanyProject);
return Result.OK("取消打包成功!");
}
/**
* 批量取消打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-批量取消打包",operateType = 4)
@RequiresPermissions("packProject:batchCancelPack")
@ApiOperation(value="打包项目维护-批量取消打包", notes="打包项目维护-批量取消打包")
@PostMapping(value = "/removeBatch")
public Result<?> removeBatch(@RequestBody PayPackCompanyProject payPackCompanyProject) {
if(StringUtils.isBlank(payPackCompanyProject.getPackProjectIds())){
return Result.error("关联id不能为空!");
}
payPackCompanyProjectService.removeBatchPayPackCompanyProject(payPackCompanyProject);
return Result.OK("批量取消打包成功!");
}
/**
* 编辑
*
* @param payPackCompanyProject
* @return
*/
// @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("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
// @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("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
// @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("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
// @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);
if(payPackCompanyProject==null) {
return Result.error("未找到对应数据");
}
return Result.OK(payPackCompanyProject);
}
@Resource
private IPayPackCompanyProjectService payPackCompanyProjectService;
@Resource
private IPayPackCompanyService payPackCompanyService;
@Resource
private ISysBaseAPI sysBaseAPI;
@Resource
private Environment env;
/**
* 导出excel
*
* @param request
* @param input
*/
@AutoLog(value = "打包项目维护-导出excel",operateType = 6)
@RequiresPermissions("packProject:export")
@GetMapping(value = "/exportXls")
@ApiOperation(value="打包项目维护-导出excel", notes="打包项目维护-导出excel")
public ModelAndView exportXls(HttpServletRequest request,PayPackCompanyProjectInput input) {
if(Objects.isNull(input.getPackId())){
throw new JeroBootException("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if(Objects.isNull(payPackCompany)){
throw new JeroBootException("打包企业不存在");
}
input.setCompanyId(payPackCompany.getCompanyId());
input.setPackYear(payPackCompany.getPackYear());
List<PayCommonProject> pageList = payPackCompanyProjectService.queryListAll(input);
List<PayCommonProject> exportList = null;
// 过滤选中数据
String selections = request.getParameter("selections");
if (oConvertUtils.isNotEmpty(selections)) {
List<String> selectionList = Arrays.asList(selections.split(","));
exportList = pageList.stream().filter(item -> selectionList.contains(item.getId())).collect(Collectors.toList());
} else {
exportList = pageList;
}
if(CollectionUtils.isEmpty(pageList)){
throw new JeroBootException("没有数据可导出!");
}
exportList.forEach(p->{
if(!StringUtils.isBlank(p.getPhone())){
p.setPhone(PasswordUtil.decrypt(p.getPhone()));
}
if(!StringUtils.isBlank(p.getEmail())){
p.setEmail(PasswordUtil.decrypt(p.getEmail()));
}
});
String str = JSON.toJSONString(exportList);
List<PayProjectExcel> list = JSONArray.parseArray(str,PayProjectExcel.class);
// Step.3 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
mv.addObject(NormalExcelConstants.FILE_NAME, "打包成员信息"); //此处设置的filename无效 ,前端会重更新设置一下
mv.addObject(NormalExcelConstants.CLASS, PayProjectExcel.class);
//update-begin--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置--------------------
ExportParams exportParams=new ExportParams("打包成员信息", "打包成员信息");
exportParams.setImageBasePath(env.getProperty("jero.path.upload"));
exportParams.setType(ExcelType.XSSF);
//update-end--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置----------------------
mv.addObject(NormalExcelConstants.PARAMS,exportParams);
mv.addObject(NormalExcelConstants.DATA_LIST, list);
return mv;
* 分页列表查询
*
* @param payPackCompanyProject
* @param pageNo
* @param pageSize
* @param req
* @return
*/
// @ApiOperation(value="打包项目维护-分页列表查询", notes="打包项目维护-分页列表查询")
// @GetMapping(value = "/list")
public Result<?> queryPageList(PayPackCompanyProject payPackCompanyProject,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<PayPackCompanyProject> queryWrapper = QueryGenerator.initQueryWrapper(payPackCompanyProject, req.getParameterMap());
Page<PayPackCompanyProject> page = new Page<PayPackCompanyProject>(pageNo, pageSize);
IPage<PayPackCompanyProject> pageList = payPackCompanyProjectService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
* 列表查询
*
* @param input 参数
* @return
*/
@RequiresPermissions("packProject:search")
@ApiOperation(value = "打包项目维护-列表查询", notes = "打包项目维护-列表查询")
@GetMapping(value = "/listAll")
public Result<?> queryListAll(PayPackCompanyProjectInput input) {
if (Objects.isNull(input.getPackId())) {
return Result.error("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if (Objects.isNull(payPackCompany)) {
return Result.error("打包企业不存在");
}
if (!StringUtils.isBlank(input.getProjectName())) {
input.setProjectName(oConvertUtils.replaceAllPercent(input.getProjectName()));
}
input.setCompanyId(payPackCompany.getCompanyId());
input.setPackYear(payPackCompany.getPackYear());
List<PayCommonProject> list = payPackCompanyProjectService.queryListAll(input);
BigDecimal sumOfReceivableAmount = BigDecimal.ZERO;
BigDecimal sumOfPaidAmount = BigDecimal.ZERO;
if (!CollectionUtils.isEmpty(list)) {
for (PayCommonProject p : list) {
if (!StringUtils.isBlank(p.getPhone())) {
p.setPhone(PasswordUtil.decrypt(p.getPhone()));
}
if (!StringUtils.isBlank(p.getEmail())) {
p.setEmail(PasswordUtil.decrypt(p.getEmail()));
}
if (Objects.isNull(p.getReceivableAmount())) {
p.setReceivableAmount(new BigDecimal("0.00"));
}
if (Objects.isNull(p.getPaidAmount())) {
p.setPaidAmount(new BigDecimal("0.00"));
}
sumOfReceivableAmount = sumOfReceivableAmount.add(p.getReceivableAmount());
sumOfPaidAmount = sumOfPaidAmount.add(p.getPaidAmount());
}
}
HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("sumOfReceivableAmount", sumOfReceivableAmount.toString());
hashMap.put("sumOfPaidAmount", sumOfPaidAmount.toString());
hashMap.put("list", list);
return Result.OK(hashMap);
}
/**
* 未打包列表查询
*
* @param input 参数
* @return
*/
@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.setPackId(input.getPackId());
input.setCompanyId(payPackCompany.getCompanyId());
input.setPack(PackCommon.PACKAGING0);
List<PayCommonProject> list = payPackCompanyProjectService.queryPackListAll(input);
List<PayCommonProjectOutput> listPayCommonProjectOutput = new ArrayList<>();
if (!CollectionUtils.isEmpty(list)) {
String str = JSON.toJSONString(list);
listPayCommonProjectOutput = JSONArray.parseArray(str, PayCommonProjectOutput.class);
listPayCommonProjectOutput.forEach(p -> {
if (!Objects.isNull(p.getChargeUse())) {
p.setChargeUse_dictText(sysBaseAPI.translateDict("payment_charge_use", String.valueOf(p.getChargeUse())));
}
if (Objects.isNull(p.getPaidAmount())) {
p.setPaidAmount(new BigDecimal("0.00"));
}
});
}
return Result.OK(listPayCommonProjectOutput);
}
/**
* 添加打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-添加", operateType = 2)
@RequiresPermissions("packProject:pack")
@ApiOperation(value = "打包项目维护-添加打包", notes = "打包项目维护-添加打包")
@PostMapping(value = "/add")
public Result<?> add(@RequestBody PayPackCompanyProject payPackCompanyProject) {
payPackCompanyProjectService.addPayPackCompanyProject(payPackCompanyProject);
return Result.OK("添加成功!");
}
/**
* 取消打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-取消打包", operateType = 4)
@RequiresPermissions("packProject:cancelPack")
@ApiOperation(value = "打包项目维护-取消打包", notes = "打包项目维护-取消打包")
@PostMapping(value = "/remove")
public Result<?> remove(@RequestBody PayPackCompanyProject payPackCompanyProject) {
if (StringUtils.isBlank(payPackCompanyProject.getId())) {
return Result.error("关联id不能为空!");
}
payPackCompanyProjectService.removePayPackCompanyProject(payPackCompanyProject);
return Result.OK("取消打包成功!");
}
/**
* 批量取消打包
*
* @param payPackCompanyProject
* @return
*/
@AutoLog(value = "打包项目维护-批量取消打包", operateType = 4)
@RequiresPermissions("packProject:batchCancelPack")
@ApiOperation(value = "打包项目维护-批量取消打包", notes = "打包项目维护-批量取消打包")
@PostMapping(value = "/removeBatch")
public Result<?> removeBatch(@RequestBody PayPackCompanyProject payPackCompanyProject) {
if (StringUtils.isBlank(payPackCompanyProject.getPackProjectIds())) {
return Result.error("关联id不能为空!");
}
payPackCompanyProjectService.removeBatchPayPackCompanyProject(payPackCompanyProject);
return Result.OK("批量取消打包成功!");
}
/**
* 编辑
*
* @param payPackCompanyProject
* @return
*/
// @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("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
// @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("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
// @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("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
// @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);
if (payPackCompanyProject == null) {
return Result.error("未找到对应数据");
}
return Result.OK(payPackCompanyProject);
}
/**
* 导出excel
*
* @param request
* @param input
*/
@AutoLog(value = "打包项目维护-导出excel", operateType = 6)
@RequiresPermissions("packProject:export")
@GetMapping(value = "/exportXls")
@ApiOperation(value = "打包项目维护-导出excel", notes = "打包项目维护-导出excel")
public ModelAndView exportXls(HttpServletRequest request, PayPackCompanyProjectInput input) {
if (Objects.isNull(input.getPackId())) {
throw new JeroBootException("打包id不能为空");
}
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
if (Objects.isNull(payPackCompany)) {
throw new JeroBootException("打包企业不存在");
}
input.setCompanyId(payPackCompany.getCompanyId());
input.setPackYear(payPackCompany.getPackYear());
List<PayCommonProject> pageList = payPackCompanyProjectService.queryListAll(input);
List<PayCommonProject> exportList = null;
// 过滤选中数据
String selections = request.getParameter("selections");
if (oConvertUtils.isNotEmpty(selections)) {
List<String> selectionList = Arrays.asList(selections.split(","));
exportList = pageList.stream().filter(item -> selectionList.contains(item.getId())).collect(Collectors.toList());
} else {
exportList = pageList;
}
if (CollectionUtils.isEmpty(pageList)) {
throw new JeroBootException("没有数据可导出!");
}
exportList.forEach(p -> {
if (!StringUtils.isBlank(p.getPhone())) {
p.setPhone(PasswordUtil.decrypt(p.getPhone()));
}
if (!StringUtils.isBlank(p.getEmail())) {
p.setEmail(PasswordUtil.decrypt(p.getEmail()));
}
});
String str = JSON.toJSONString(exportList);
List<PayProjectExcel> list = JSONArray.parseArray(str, PayProjectExcel.class);
// Step.3 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
mv.addObject(NormalExcelConstants.FILE_NAME, "打包成员信息"); //此处设置的filename无效 ,前端会重更新设置一下
mv.addObject(NormalExcelConstants.CLASS, PayProjectExcel.class);
//update-begin--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置--------------------
ExportParams exportParams = new ExportParams("打包成员信息", "打包成员信息");
exportParams.setImageBasePath(env.getProperty("jero.path.upload"));
exportParams.setType(ExcelType.XSSF);
//update-end--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置----------------------
mv.addObject(NormalExcelConstants.PARAMS, exportParams);
mv.addObject(NormalExcelConstants.DATA_LIST, list);
return mv;
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
// @PostMapping(value = "/importExcel")
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, PayPackCompanyProject.class);