分包商

This commit is contained in:
zt
2025-03-28 16:38:03 +08:00
parent 8289974a21
commit b4491e0848
37 changed files with 1515 additions and 30 deletions

View File

@ -1,13 +1,17 @@
package com.ruoyi.web.controller.bgt;
import cn.hutool.core.bean.BeanUtil;
import com.ruoyi.bgt.domain.dto.BgtLeaveUpdateDTO;
import com.ruoyi.bgt.domain.vo.BgtLeaveDetailVO;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.wgz.domain.WgzLeave;
import com.ruoyi.wgz.domain.WgzUser;
import com.ruoyi.wgz.service.IWgzLeaveService;
import com.ruoyi.wgz.service.IWgzUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
@ -30,15 +34,20 @@ import javax.validation.constraints.NotNull;
public class AppBgtLeaveController extends BaseController {
private final IWgzLeaveService iWgzLeaveService;
private final IWgzUserService wgzUserService;
/**
* 获取请假详细信息
*/
@ApiOperation("获取请假详细信息")
@GetMapping("/{id}")
public AjaxResult<WgzLeave> getInfo(@NotNull(message = "主键不能为空")
public AjaxResult<BgtLeaveDetailVO> getInfo(@NotNull(message = "主键不能为空")
@PathVariable("id") Long id) {
return AjaxResult.success(iWgzLeaveService.queryById(id));
WgzLeave wgzLeave = iWgzLeaveService.queryById(id);
WgzUser byUserId = wgzUserService.findByUserId(wgzLeave.getUserId());
BgtLeaveDetailVO bgtLeaveDetailVO = BeanUtil.copyProperties(wgzLeave, BgtLeaveDetailVO.class);
bgtLeaveDetailVO.setAvatarName(byUserId.getAvatarName());
return AjaxResult.success(bgtLeaveDetailVO);
}
@ApiOperation("请假审核")

View File

@ -0,0 +1,72 @@
package com.ruoyi.web.controller.fbs;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.fbs.domain.FbsMessage;
import com.ruoyi.fbs.domain.dto.FbsMessageDetailDTO;
import com.ruoyi.fbs.domain.dto.FbsMessageMyListDTO;
import com.ruoyi.fbs.domain.vo.FbsMessageCountVO;
import com.ruoyi.fbs.domain.vo.FbsMessageDetailVO;
import com.ruoyi.fbs.domain.vo.FbsMessageVO;
import com.ruoyi.fbs.service.IFbsMessageService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* 消息Controller
*
* @author ruoyi
* @date 2025-03-28
*/
@Api(value = "App分包商消息控制器", tags = {"App分包商"})
@RequiredArgsConstructor(onConstructor_ = @Autowired)
@RestController
@RequestMapping("/app/fbs/message")
public class AppFbsMessageController extends BaseController {
private final IFbsMessageService iFbsMessageService;
@ApiOperation("分包商未读消息统计")
@GetMapping("/countUnread")
public AjaxResult<FbsMessageCountVO> count() {
return AjaxResult.success(iFbsMessageService.countUnread());
}
@ApiOperation("分包商消息列表")
@GetMapping("/myList")
public TableDataInfo<FbsMessageVO> myList(FbsMessageMyListDTO dto) {
return iFbsMessageService.queryMyPageList(dto);
}
@ApiOperation("分包商消息详情列表")
@GetMapping("/detailList")
public TableDataInfo<FbsMessageDetailVO> otherList(FbsMessageDetailDTO dto) {
return iFbsMessageService.queryDetailPageList(dto);
}
@ApiOperation("分包商消息已读")
@PutMapping("/read/{id}")
public AjaxResult<Boolean> read(@PathVariable(value = "id") Long id) {
FbsMessage fbsMessage = new FbsMessage();
fbsMessage.setId(id);
fbsMessage.setReadStatus("1");
return AjaxResult.success(iFbsMessageService.updateById(fbsMessage));
}
@ApiOperation("分包商消息已操作")
@PutMapping("/operation/{id}")
public AjaxResult<Boolean> operation(@PathVariable(value = "id") Long id) {
FbsMessage fbsMessage = new FbsMessage();
fbsMessage.setId(id);
fbsMessage.setIsOperation("2");
return AjaxResult.success(iFbsMessageService.updateById(fbsMessage));
}
}

View File

@ -1,5 +1,10 @@
package com.ruoyi.web.controller.fbs;
import cn.hutool.core.bean.BeanUtil;
import com.ruoyi.bgt.domain.BgtWageApplication;
import com.ruoyi.bgt.domain.vo.BgtWageApplicationDetailVO;
import com.ruoyi.bgt.domain.vo.BgtWageApplicationVO;
import com.ruoyi.bgt.service.IBgtWageApplicationService;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
@ -8,7 +13,10 @@ import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.fbs.domain.FbsWageApplication;
import com.ruoyi.fbs.domain.dto.FbsWageApplicationListDTO;
import com.ruoyi.fbs.domain.dto.FbsWageAuditDTO;
import com.ruoyi.fbs.domain.dto.FbsWageAuditListDTO;
import com.ruoyi.fbs.service.IFbsWageApplicationService;
import com.ruoyi.zbf.service.IZbfProjectService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
@ -24,13 +32,15 @@ import javax.validation.constraints.NotNull;
* @author ruoyi
* @date 2025-03-26
*/
@Api(value = "APP分包商工资申请控制器", tags = {"APP分包商"})
@Api(value = "App分包商工资申请控制器", tags = {"App分包商"})
@RequiredArgsConstructor(onConstructor_ = @Autowired)
@RestController
@RequestMapping("/app/fbs/application")
public class AppFbsWageApplicationController extends BaseController {
private final IFbsWageApplicationService iFbsWageApplicationService;
private final IBgtWageApplicationService iBgtWageApplicationService;
private final IZbfProjectService iZbfProjectService;
@ApiOperation("分包商查询自己的工资申请列表")
@GetMapping("/list")
@ -50,8 +60,35 @@ public class AppFbsWageApplicationController extends BaseController {
@RepeatSubmit
@PostMapping()
public AjaxResult<Boolean> add(@Validated @RequestBody FbsWageApplication bo) {
//todo: 插入审核人的名字
return AjaxResult.success(iFbsWageApplicationService.insert(bo));
// ZbfProject byId = iZbfProjectService.getById(bo.getProjectId());
//
// bo.setReviewerName(byId.getUnitName())
return AjaxResult.success(iFbsWageApplicationService.insert(bo));
}
@ApiOperation("分包商查询审核工资申请列表")
@GetMapping("/audit/list")
public TableDataInfo<BgtWageApplicationVO> auditList(@Validated FbsWageAuditListDTO dto) {
return iBgtWageApplicationService.fbsAuditPageList(dto);
}
@ApiOperation("分包商查询审核工资申请详细信息")
@GetMapping("/audit/{id}")
public AjaxResult<BgtWageApplicationDetailVO> getAuditInfo(@NotNull(message = "主键不能为空")
@PathVariable("id") Long id) {
return AjaxResult.success(iBgtWageApplicationService.appQueryById(id));
}
@ApiOperation("分包商审核包工头工资申请")
@Log(title = "分包商审核包工头工资申请", businessType = BusinessType.UPDATE)
@RepeatSubmit
@PutMapping("/audit")
public AjaxResult<Boolean> audit(@Validated @RequestBody FbsWageAuditDTO dto) {
BgtWageApplication bo = iBgtWageApplicationService.getById(dto.getId());
BeanUtil.copyProperties(dto, bo);
return AjaxResult.success(iBgtWageApplicationService.update(bo));
}
}

View File

@ -0,0 +1,108 @@
package com.ruoyi.web.controller.fbs;
import java.util.List;
import java.util.Arrays;
import com.ruoyi.fbs.domain.FbsMessage;
import lombok.RequiredArgsConstructor;
import javax.validation.constraints.*;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.fbs.bo.FbsMessageQueryBo;
import com.ruoyi.fbs.service.IFbsMessageService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* 消息Controller
*
* @author ruoyi
* @date 2025-03-28
*/
@Api(value = "消息控制器", tags = {"消息管理"})
@RequiredArgsConstructor(onConstructor_ = @Autowired)
@RestController
@RequestMapping("/fbs/message")
public class FbsMessageController extends BaseController {
private final IFbsMessageService iFbsMessageService;
/**
* 查询消息列表
*/
@ApiOperation("查询消息列表")
@PreAuthorize("@ss.hasPermi('fbs:message:list')")
@GetMapping("/list")
public TableDataInfo<FbsMessage> list(@Validated FbsMessageQueryBo bo) {
return iFbsMessageService.queryPageList(bo);
}
/**
* 导出消息列表
*/
@ApiOperation("导出消息列表")
@PreAuthorize("@ss.hasPermi('fbs:message:export')")
@Log(title = "消息", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult<FbsMessage> export(@Validated FbsMessageQueryBo bo) {
List<FbsMessage> list = iFbsMessageService.queryList(bo);
ExcelUtil<FbsMessage> util = new ExcelUtil<FbsMessage>(FbsMessage.class);
return util.exportExcel(list, "消息");
}
/**
* 获取消息详细信息
*/
@ApiOperation("获取消息详细信息")
@PreAuthorize("@ss.hasPermi('fbs:message:query')")
@GetMapping("/{id}")
public AjaxResult<FbsMessage> getInfo(@NotNull(message = "主键不能为空")
@PathVariable("id") Long id) {
return AjaxResult.success(iFbsMessageService.queryById(id));
}
/**
* 新增消息
*/
@ApiOperation("新增消息")
@PreAuthorize("@ss.hasPermi('fbs:message:add')")
@Log(title = "消息", businessType = BusinessType.INSERT)
@RepeatSubmit
@PostMapping()
public AjaxResult<Void> add(@Validated @RequestBody FbsMessage bo) {
return toAjax(iFbsMessageService.insert(bo) ? 1 : 0);
}
/**
* 修改消息
*/
@ApiOperation("修改消息")
@PreAuthorize("@ss.hasPermi('fbs:message:edit')")
@Log(title = "消息", businessType = BusinessType.UPDATE)
@RepeatSubmit
@PutMapping()
public AjaxResult<Void> edit(@Validated @RequestBody FbsMessage bo) {
return toAjax(iFbsMessageService.update(bo) ? 1 : 0);
}
/**
* 删除消息
*/
@ApiOperation("删除消息")
@PreAuthorize("@ss.hasPermi('fbs:message:remove')")
@Log(title = "消息" , businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(iFbsMessageService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0);
}
}

View File

@ -0,0 +1,37 @@
package com.ruoyi.web.controller.fbs;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.fbs.domain.dto.FbsProjectSectionListDTO;
import com.ruoyi.fbs.domain.vo.FbsProjectSectionListVO;
import com.ruoyi.zbf.service.IZbfProjectSectionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 总包方项目标段Controller
*
* @author ruoyi
* @date 2025-02-17
*/
@Api(value = "App分包商项目标段控制器", tags = {"App分包商"})
@RequiredArgsConstructor(onConstructor_ = @Autowired)
@RestController
@RequestMapping("/app/fbs/section")
public class FbsProjectSectionController extends BaseController {
private final IZbfProjectSectionService iZbfProjectSectionService;
@ApiOperation("分包商查询自己的项目分包列表")
@GetMapping("/fbsSubList")
public TableDataInfo<FbsProjectSectionListVO> fbsSubList(@Validated FbsProjectSectionListDTO dto) {
return iZbfProjectSectionService.fbsSubList(dto);
}
}