任务,招工
This commit is contained in:
		| @ -0,0 +1,57 @@ | ||||
| package com.ruoyi.web.controller.bgt; | ||||
|  | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruitApply; | ||||
| import com.ruoyi.bgt.domain.dto.BgtProjectRecruitApplyQueryDTO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO; | ||||
| import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService; | ||||
| 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 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.*; | ||||
|  | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工申请Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Api(value = "App包工头招工申请控制器", tags = {"App包工头招工申请管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/app/bgt/apply") | ||||
| public class AppBgtProjectRecruitApplyController extends BaseController { | ||||
|  | ||||
|     private final IBgtProjectRecruitApplyService iBgtProjectRecruitApplyService; | ||||
|  | ||||
|  | ||||
|  | ||||
| 	@ApiOperation("查询包工头招工申请列表") | ||||
| 	@GetMapping("/list") | ||||
| 	public List<BgtProjectRecruitApplyVO> list(@Validated BgtProjectRecruitApplyQueryDTO dto) { | ||||
| 		return iBgtProjectRecruitApplyService.appQueryList(dto); | ||||
| 	} | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * 新增包工头招工申请 | ||||
|      */ | ||||
|     @ApiOperation("App务工者招工报名") | ||||
|     @Log(title = "App务工者招工报名", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody BgtProjectRecruitApply bo) { | ||||
|         return toAjax(iBgtProjectRecruitApplyService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|  | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,113 @@ | ||||
| package com.ruoyi.web.controller.bgt; | ||||
|  | ||||
| import com.ruoyi.bgt.bo.BgtProjectRecruitQueryBo; | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruit; | ||||
| import com.ruoyi.bgt.service.IBgtProjectRecruitService; | ||||
| 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.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.enums.BusinessType; | ||||
| import com.ruoyi.common.utils.poi.ExcelUtil; | ||||
| import io.swagger.annotations.Api; | ||||
| import io.swagger.annotations.ApiOperation; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.security.access.prepost.PreAuthorize; | ||||
| import org.springframework.validation.annotation.Validated; | ||||
| import org.springframework.web.bind.annotation.*; | ||||
|  | ||||
| import javax.validation.constraints.NotEmpty; | ||||
| import javax.validation.constraints.NotNull; | ||||
| import java.util.Arrays; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Api(value = "App包工头招工控制器", tags = {"App包工头招工管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/app/bgt/recruit") | ||||
| public class AppBgtProjectRecruitController extends BaseController { | ||||
|  | ||||
|     private final IBgtProjectRecruitService iBgtProjectRecruitService; | ||||
|  | ||||
|     /** | ||||
|      * 查询包工头招工列表 | ||||
|      */ | ||||
|     @ApiOperation("App我的招工") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<BgtProjectRecruit> list(@Validated BgtProjectRecruitQueryBo bo) { | ||||
|         return iBgtProjectRecruitService.queryPageList(bo); | ||||
|     } | ||||
|  | ||||
| 	@ApiOperation("App申请者列表") | ||||
| 	@GetMapping("/applyList") | ||||
| 	public TableDataInfo<BgtProjectRecruit> applyList(@Validated BgtProjectRecruitQueryBo bo) { | ||||
| 		return iBgtProjectRecruitService.queryPageList(bo); | ||||
| 	} | ||||
|  | ||||
|     /** | ||||
|      * 导出包工头招工列表 | ||||
|      */ | ||||
|     @ApiOperation("导出包工头招工列表") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:export')") | ||||
|     @Log(title = "包工头招工", businessType = BusinessType.EXPORT) | ||||
|     @GetMapping("/export") | ||||
|     public AjaxResult<BgtProjectRecruit> export(@Validated BgtProjectRecruitQueryBo bo) { | ||||
|         List<BgtProjectRecruit> list = iBgtProjectRecruitService.queryList(bo); | ||||
|         ExcelUtil<BgtProjectRecruit> util = new ExcelUtil<BgtProjectRecruit>(BgtProjectRecruit.class); | ||||
|         return util.exportExcel(list, "包工头招工"); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取包工头招工详细信息 | ||||
|      */ | ||||
|     @ApiOperation("获取包工头招工详细信息") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:query')") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<BgtProjectRecruit> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iBgtProjectRecruitService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增包工头招工 | ||||
|      */ | ||||
|     @ApiOperation("App新增包工头招工") | ||||
|     @Log(title = "App包工头招工", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody BgtProjectRecruit bo) { | ||||
|         return toAjax(iBgtProjectRecruitService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改包工头招工 | ||||
|      */ | ||||
|     @ApiOperation("修改包工头招工") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:edit')") | ||||
|     @Log(title = "包工头招工", businessType = BusinessType.UPDATE) | ||||
|     @RepeatSubmit | ||||
|     @PutMapping() | ||||
|     public AjaxResult<Void> edit(@Validated @RequestBody BgtProjectRecruit bo) { | ||||
|         return toAjax(iBgtProjectRecruitService.update(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 删除包工头招工 | ||||
|      */ | ||||
|     @ApiOperation("删除包工头招工") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:remove')") | ||||
|     @Log(title = "包工头招工" , businessType = BusinessType.DELETE) | ||||
|     @DeleteMapping("/{ids}") | ||||
|     public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空") | ||||
|                                        @PathVariable Long[] ids) { | ||||
|         return toAjax(iBgtProjectRecruitService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,68 @@ | ||||
| package com.ruoyi.web.controller.bgt; | ||||
|  | ||||
| import com.ruoyi.bgt.domain.BgtProjectTaskProgress; | ||||
| import com.ruoyi.bgt.domain.dto.BgtProjectTaskProgressQueryDTO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectTaskProgressDetailVO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectTaskProgressVO; | ||||
| import com.ruoyi.bgt.service.IBgtProjectTaskProgressService; | ||||
| 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.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.enums.BusinessType; | ||||
| 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.*; | ||||
|  | ||||
| import javax.validation.constraints.NotNull; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Api(value = "App包工头项目任务进度控制器", tags = {"App包工头项目任务进度管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/app/bgt/progress") | ||||
| public class AppBgtProjectTaskProgressController extends BaseController { | ||||
|  | ||||
|     private final IBgtProjectTaskProgressService iBgtProjectTaskProgressService; | ||||
|  | ||||
|     /** | ||||
|      * 查询包工头项目任务进度列表 | ||||
|      */ | ||||
|     @ApiOperation("App查询包工头项目任务进度列表") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<BgtProjectTaskProgressVO> list(@Validated BgtProjectTaskProgressQueryDTO bo) { | ||||
|         return iBgtProjectTaskProgressService.appQueryPageList(bo); | ||||
|     } | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * 获取包工头项目任务进度详细信息 | ||||
|      */ | ||||
|     @ApiOperation("App获取包工头项目任务进度详细信息") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<BgtProjectTaskProgressDetailVO> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iBgtProjectTaskProgressService.appQueryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增包工头项目任务进度 | ||||
|      */ | ||||
|     @ApiOperation("App上传任务进度") | ||||
|     @Log(title = "App上传任务进度", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody BgtProjectTaskProgress bo) { | ||||
|         return toAjax(iBgtProjectTaskProgressService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
| } | ||||
| @ -20,7 +20,7 @@ import org.springframework.web.bind.annotation.*; | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-14 | ||||
|  */ | ||||
| @Api(value = "APP包工头控制器", tags = {"APP包工头管理"}) | ||||
| @Api(value = "App包工头控制器", tags = {"APP包工头管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/app/bgt/user") | ||||
| @ -32,7 +32,7 @@ public class AppBgtUserController extends BaseController { | ||||
| 	 * 实名认证 | ||||
| 	 */ | ||||
| 	@ApiOperation("实名认证") | ||||
| 	@Log(title = "APP管理包工头", businessType = BusinessType.UPDATE) | ||||
| 	@Log(title = "App管理包工头", businessType = BusinessType.UPDATE) | ||||
| 	@RepeatSubmit | ||||
| 	@PutMapping | ||||
| 	public AjaxResult<Void> realNameAuthentication(@Validated @RequestBody UserRealNameAuthenticationDTO dto) { | ||||
|  | ||||
| @ -0,0 +1,109 @@ | ||||
| package com.ruoyi.web.controller.bgt; | ||||
|  | ||||
| import com.ruoyi.bgt.bo.BgtProjectRecruitApplyQueryBo; | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruitApply; | ||||
| import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService; | ||||
| 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.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.enums.BusinessType; | ||||
| import com.ruoyi.common.utils.poi.ExcelUtil; | ||||
| import io.swagger.annotations.Api; | ||||
| import io.swagger.annotations.ApiOperation; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.security.access.prepost.PreAuthorize; | ||||
| import org.springframework.validation.annotation.Validated; | ||||
| import org.springframework.web.bind.annotation.*; | ||||
|  | ||||
| import javax.validation.constraints.NotEmpty; | ||||
| import javax.validation.constraints.NotNull; | ||||
| import java.util.Arrays; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工申请Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Api(value = "包工头招工申请控制器", tags = {"包工头招工申请管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/bgt/apply") | ||||
| public class BgtProjectRecruitApplyController extends BaseController { | ||||
|  | ||||
|     private final IBgtProjectRecruitApplyService iBgtProjectRecruitApplyService; | ||||
|  | ||||
|     /** | ||||
|      * 查询包工头招工申请列表 | ||||
|      */ | ||||
|     @ApiOperation("查询包工头招工申请列表") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:apply:list')") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<BgtProjectRecruitApply> list(@Validated BgtProjectRecruitApplyQueryBo bo) { | ||||
|         return iBgtProjectRecruitApplyService.queryPageList(bo); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 导出包工头招工申请列表 | ||||
|      */ | ||||
|     @ApiOperation("导出包工头招工申请列表") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:apply:export')") | ||||
|     @Log(title = "包工头招工申请", businessType = BusinessType.EXPORT) | ||||
|     @GetMapping("/export") | ||||
|     public AjaxResult<BgtProjectRecruitApply> export(@Validated BgtProjectRecruitApplyQueryBo bo) { | ||||
|         List<BgtProjectRecruitApply> list = iBgtProjectRecruitApplyService.queryList(bo); | ||||
|         ExcelUtil<BgtProjectRecruitApply> util = new ExcelUtil<BgtProjectRecruitApply>(BgtProjectRecruitApply.class); | ||||
|         return util.exportExcel(list, "包工头招工申请"); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取包工头招工申请详细信息 | ||||
|      */ | ||||
|     @ApiOperation("获取包工头招工申请详细信息") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:apply:query')") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<BgtProjectRecruitApply> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iBgtProjectRecruitApplyService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增包工头招工申请 | ||||
|      */ | ||||
|     @ApiOperation("新增包工头招工申请") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:apply:add')") | ||||
|     @Log(title = "包工头招工申请", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody BgtProjectRecruitApply bo) { | ||||
|         return toAjax(iBgtProjectRecruitApplyService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改包工头招工申请 | ||||
|      */ | ||||
|     @ApiOperation("修改包工头招工申请") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:apply:edit')") | ||||
|     @Log(title = "包工头招工申请", businessType = BusinessType.UPDATE) | ||||
|     @RepeatSubmit | ||||
|     @PutMapping() | ||||
|     public AjaxResult<Void> edit(@Validated @RequestBody BgtProjectRecruitApply bo) { | ||||
|         return toAjax(iBgtProjectRecruitApplyService.update(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 删除包工头招工申请 | ||||
|      */ | ||||
|     @ApiOperation("删除包工头招工申请") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:apply:remove')") | ||||
|     @Log(title = "包工头招工申请" , businessType = BusinessType.DELETE) | ||||
|     @DeleteMapping("/{ids}") | ||||
|     public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空") | ||||
|                                        @PathVariable Long[] ids) { | ||||
|         return toAjax(iBgtProjectRecruitApplyService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,108 @@ | ||||
| package com.ruoyi.web.controller.bgt; | ||||
|  | ||||
| import java.util.List; | ||||
| import java.util.Arrays; | ||||
|  | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruit; | ||||
| 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.bgt.bo.BgtProjectRecruitQueryBo; | ||||
| import com.ruoyi.bgt.service.IBgtProjectRecruitService; | ||||
| 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-02-17 | ||||
|  */ | ||||
| @Api(value = "包工头招工控制器", tags = {"包工头招工管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/bgt/recruit") | ||||
| public class BgtProjectRecruitController extends BaseController { | ||||
|  | ||||
|     private final IBgtProjectRecruitService iBgtProjectRecruitService; | ||||
|  | ||||
|     /** | ||||
|      * 查询包工头招工列表 | ||||
|      */ | ||||
|     @ApiOperation("查询包工头招工列表") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:list')") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<BgtProjectRecruit> list(@Validated BgtProjectRecruitQueryBo bo) { | ||||
|         return iBgtProjectRecruitService.queryPageList(bo); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 导出包工头招工列表 | ||||
|      */ | ||||
|     @ApiOperation("导出包工头招工列表") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:export')") | ||||
|     @Log(title = "包工头招工", businessType = BusinessType.EXPORT) | ||||
|     @GetMapping("/export") | ||||
|     public AjaxResult<BgtProjectRecruit> export(@Validated BgtProjectRecruitQueryBo bo) { | ||||
|         List<BgtProjectRecruit> list = iBgtProjectRecruitService.queryList(bo); | ||||
|         ExcelUtil<BgtProjectRecruit> util = new ExcelUtil<BgtProjectRecruit>(BgtProjectRecruit.class); | ||||
|         return util.exportExcel(list, "包工头招工"); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取包工头招工详细信息 | ||||
|      */ | ||||
|     @ApiOperation("获取包工头招工详细信息") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:query')") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<BgtProjectRecruit> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iBgtProjectRecruitService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增包工头招工 | ||||
|      */ | ||||
|     @ApiOperation("新增包工头招工") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:add')") | ||||
|     @Log(title = "包工头招工", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody BgtProjectRecruit bo) { | ||||
|         return toAjax(iBgtProjectRecruitService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改包工头招工 | ||||
|      */ | ||||
|     @ApiOperation("修改包工头招工") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:edit')") | ||||
|     @Log(title = "包工头招工", businessType = BusinessType.UPDATE) | ||||
|     @RepeatSubmit | ||||
|     @PutMapping() | ||||
|     public AjaxResult<Void> edit(@Validated @RequestBody BgtProjectRecruit bo) { | ||||
|         return toAjax(iBgtProjectRecruitService.update(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 删除包工头招工 | ||||
|      */ | ||||
|     @ApiOperation("删除包工头招工") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:recruit:remove')") | ||||
|     @Log(title = "包工头招工" , businessType = BusinessType.DELETE) | ||||
|     @DeleteMapping("/{ids}") | ||||
|     public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空") | ||||
|                                        @PathVariable Long[] ids) { | ||||
|         return toAjax(iBgtProjectRecruitService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,109 @@ | ||||
| package com.ruoyi.web.controller.bgt; | ||||
|  | ||||
| import com.ruoyi.bgt.bo.BgtProjectTaskProgressQueryBo; | ||||
| import com.ruoyi.bgt.domain.BgtProjectTaskProgress; | ||||
| import com.ruoyi.bgt.service.IBgtProjectTaskProgressService; | ||||
| 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.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.enums.BusinessType; | ||||
| import com.ruoyi.common.utils.poi.ExcelUtil; | ||||
| import io.swagger.annotations.Api; | ||||
| import io.swagger.annotations.ApiOperation; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.security.access.prepost.PreAuthorize; | ||||
| import org.springframework.validation.annotation.Validated; | ||||
| import org.springframework.web.bind.annotation.*; | ||||
|  | ||||
| import javax.validation.constraints.NotEmpty; | ||||
| import javax.validation.constraints.NotNull; | ||||
| import java.util.Arrays; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Api(value = "包工头项目任务进度控制器", tags = {"包工头项目任务进度管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/bgt/progress") | ||||
| public class BgtProjectTaskProgressController extends BaseController { | ||||
|  | ||||
|     private final IBgtProjectTaskProgressService iBgtProjectTaskProgressService; | ||||
|  | ||||
|     /** | ||||
|      * 查询包工头项目任务进度列表 | ||||
|      */ | ||||
|     @ApiOperation("查询包工头项目任务进度列表") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:progress:list')") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<BgtProjectTaskProgress> list(@Validated BgtProjectTaskProgressQueryBo bo) { | ||||
|         return iBgtProjectTaskProgressService.queryPageList(bo); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 导出包工头项目任务进度列表 | ||||
|      */ | ||||
|     @ApiOperation("导出包工头项目任务进度列表") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:progress:export')") | ||||
|     @Log(title = "包工头项目任务进度", businessType = BusinessType.EXPORT) | ||||
|     @GetMapping("/export") | ||||
|     public AjaxResult<BgtProjectTaskProgress> export(@Validated BgtProjectTaskProgressQueryBo bo) { | ||||
|         List<BgtProjectTaskProgress> list = iBgtProjectTaskProgressService.queryList(bo); | ||||
|         ExcelUtil<BgtProjectTaskProgress> util = new ExcelUtil<BgtProjectTaskProgress>(BgtProjectTaskProgress.class); | ||||
|         return util.exportExcel(list, "包工头项目任务进度"); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取包工头项目任务进度详细信息 | ||||
|      */ | ||||
|     @ApiOperation("获取包工头项目任务进度详细信息") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:progress:query')") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<BgtProjectTaskProgress> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iBgtProjectTaskProgressService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增包工头项目任务进度 | ||||
|      */ | ||||
|     @ApiOperation("新增包工头项目任务进度") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:progress:add')") | ||||
|     @Log(title = "包工头项目任务进度", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody BgtProjectTaskProgress bo) { | ||||
|         return toAjax(iBgtProjectTaskProgressService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改包工头项目任务进度 | ||||
|      */ | ||||
|     @ApiOperation("修改包工头项目任务进度") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:progress:edit')") | ||||
|     @Log(title = "包工头项目任务进度", businessType = BusinessType.UPDATE) | ||||
|     @RepeatSubmit | ||||
|     @PutMapping() | ||||
|     public AjaxResult<Void> edit(@Validated @RequestBody BgtProjectTaskProgress bo) { | ||||
|         return toAjax(iBgtProjectTaskProgressService.update(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 删除包工头项目任务进度 | ||||
|      */ | ||||
|     @ApiOperation("删除包工头项目任务进度") | ||||
|     @PreAuthorize("@ss.hasPermi('bgt:progress:remove')") | ||||
|     @Log(title = "包工头项目任务进度" , businessType = BusinessType.DELETE) | ||||
|     @DeleteMapping("/{ids}") | ||||
|     public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空") | ||||
|                                        @PathVariable Long[] ids) { | ||||
|         return toAjax(iBgtProjectTaskProgressService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,47 @@ | ||||
| package com.ruoyi.web.controller.fbs; | ||||
|  | ||||
| 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.fbs.domain.FbsProjectTaskApply; | ||||
| import com.ruoyi.fbs.service.IFbsProjectTaskApplyService; | ||||
| 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.PostMapping; | ||||
| import org.springframework.web.bind.annotation.RequestBody; | ||||
| import org.springframework.web.bind.annotation.RequestMapping; | ||||
| import org.springframework.web.bind.annotation.RestController; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务申请Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Api(value = "分包商项目任务申请控制器", tags = {"分包商项目任务申请管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/app/fbs/apply") | ||||
| public class AppFbsProjectTaskApplyController extends BaseController { | ||||
|  | ||||
|     private final IFbsProjectTaskApplyService iFbsProjectTaskApplyService; | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * 新增分包商项目任务申请 | ||||
|      */ | ||||
|     @ApiOperation("App申请承接") | ||||
|     @Log(title = "App项目任务申请承接", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody FbsProjectTaskApply bo) { | ||||
|         return toAjax(iFbsProjectTaskApplyService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,53 @@ | ||||
| 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.dto.AppTaskDTO; | ||||
| import com.ruoyi.fbs.domain.vo.AppTaskDetailVO; | ||||
| import com.ruoyi.fbs.domain.vo.AppTaskVO; | ||||
| import com.ruoyi.fbs.service.IFbsProjectTaskService; | ||||
| 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.PathVariable; | ||||
| import org.springframework.web.bind.annotation.RequestMapping; | ||||
| import org.springframework.web.bind.annotation.RestController; | ||||
|  | ||||
| import javax.validation.constraints.NotNull; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Api(value = "App分包商项目任务控制器", tags = {"分包商项目任务管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/app/fbs/task") | ||||
| public class AppFbsProjectTaskController extends BaseController { | ||||
|  | ||||
|     private final IFbsProjectTaskService iFbsProjectTaskService; | ||||
|  | ||||
|     /** | ||||
|      * app项目任务列表 | ||||
|      */ | ||||
|     @ApiOperation("App包工头任务列表") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<AppTaskVO> list(@Validated AppTaskDTO dto) { | ||||
|         return iFbsProjectTaskService.appQueryPageList(dto); | ||||
|     } | ||||
|  | ||||
|  | ||||
| 	@ApiOperation("App获取项目任务详细信息") | ||||
| 	@GetMapping("/{id}") | ||||
| 	public AjaxResult<AppTaskDetailVO> getInfo(@NotNull(message = "主键不能为空") | ||||
| 											  @PathVariable("id") Long id) { | ||||
| 		return AjaxResult.success(iFbsProjectTaskService.appQueryById(id)); | ||||
| 	} | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,109 @@ | ||||
| package com.ruoyi.web.controller.fbs; | ||||
|  | ||||
| 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.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.enums.BusinessType; | ||||
| import com.ruoyi.common.utils.poi.ExcelUtil; | ||||
| import com.ruoyi.fbs.bo.FbsProjectTaskApplyQueryBo; | ||||
| import com.ruoyi.fbs.domain.FbsProjectTaskApply; | ||||
| import com.ruoyi.fbs.service.IFbsProjectTaskApplyService; | ||||
| import io.swagger.annotations.Api; | ||||
| import io.swagger.annotations.ApiOperation; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.security.access.prepost.PreAuthorize; | ||||
| import org.springframework.validation.annotation.Validated; | ||||
| import org.springframework.web.bind.annotation.*; | ||||
|  | ||||
| import javax.validation.constraints.NotEmpty; | ||||
| import javax.validation.constraints.NotNull; | ||||
| import java.util.Arrays; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务申请Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Api(value = "分包商项目任务申请控制器", tags = {"分包商项目任务申请管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/fbs/apply") | ||||
| public class FbsProjectTaskApplyController extends BaseController { | ||||
|  | ||||
|     private final IFbsProjectTaskApplyService iFbsProjectTaskApplyService; | ||||
|  | ||||
|     /** | ||||
|      * 查询分包商项目任务申请列表 | ||||
|      */ | ||||
|     @ApiOperation("查询分包商项目任务申请列表") | ||||
|     @PreAuthorize("@ss.hasPermi('fbs:apply:list')") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<FbsProjectTaskApply> list(@Validated FbsProjectTaskApplyQueryBo bo) { | ||||
|         return iFbsProjectTaskApplyService.queryPageList(bo); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 导出分包商项目任务申请列表 | ||||
|      */ | ||||
|     @ApiOperation("导出分包商项目任务申请列表") | ||||
|     @PreAuthorize("@ss.hasPermi('fbs:apply:export')") | ||||
|     @Log(title = "分包商项目任务申请", businessType = BusinessType.EXPORT) | ||||
|     @GetMapping("/export") | ||||
|     public AjaxResult<FbsProjectTaskApply> export(@Validated FbsProjectTaskApplyQueryBo bo) { | ||||
|         List<FbsProjectTaskApply> list = iFbsProjectTaskApplyService.queryList(bo); | ||||
|         ExcelUtil<FbsProjectTaskApply> util = new ExcelUtil<FbsProjectTaskApply>(FbsProjectTaskApply.class); | ||||
|         return util.exportExcel(list, "分包商项目任务申请"); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取分包商项目任务申请详细信息 | ||||
|      */ | ||||
|     @ApiOperation("获取分包商项目任务申请详细信息") | ||||
|     @PreAuthorize("@ss.hasPermi('fbs:apply:query')") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<FbsProjectTaskApply> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iFbsProjectTaskApplyService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增分包商项目任务申请 | ||||
|      */ | ||||
|     @ApiOperation("新增分包商项目任务申请") | ||||
|     @PreAuthorize("@ss.hasPermi('fbs:apply:add')") | ||||
|     @Log(title = "分包商项目任务申请", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody FbsProjectTaskApply bo) { | ||||
|         return toAjax(iFbsProjectTaskApplyService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改分包商项目任务申请 | ||||
|      */ | ||||
|     @ApiOperation("修改分包商项目任务申请") | ||||
|     @PreAuthorize("@ss.hasPermi('fbs:apply:edit')") | ||||
|     @Log(title = "分包商项目任务申请", businessType = BusinessType.UPDATE) | ||||
|     @RepeatSubmit | ||||
|     @PutMapping() | ||||
|     public AjaxResult<Void> edit(@Validated @RequestBody FbsProjectTaskApply bo) { | ||||
|         return toAjax(iFbsProjectTaskApplyService.update(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 删除分包商项目任务申请 | ||||
|      */ | ||||
|     @ApiOperation("删除分包商项目任务申请") | ||||
|     @PreAuthorize("@ss.hasPermi('fbs:apply:remove')") | ||||
|     @Log(title = "分包商项目任务申请" , businessType = BusinessType.DELETE) | ||||
|     @DeleteMapping("/{ids}") | ||||
|     public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空") | ||||
|                                        @PathVariable Long[] ids) { | ||||
|         return toAjax(iFbsProjectTaskApplyService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,109 @@ | ||||
| package com.ruoyi.web.controller.fbs; | ||||
|  | ||||
| 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.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.enums.BusinessType; | ||||
| import com.ruoyi.common.utils.poi.ExcelUtil; | ||||
| import com.ruoyi.fbs.bo.FbsProjectTaskQueryBo; | ||||
| import com.ruoyi.fbs.domain.FbsProjectTask; | ||||
| import com.ruoyi.fbs.service.IFbsProjectTaskService; | ||||
| import io.swagger.annotations.Api; | ||||
| import io.swagger.annotations.ApiOperation; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.security.access.prepost.PreAuthorize; | ||||
| import org.springframework.validation.annotation.Validated; | ||||
| import org.springframework.web.bind.annotation.*; | ||||
|  | ||||
| import javax.validation.constraints.NotEmpty; | ||||
| import javax.validation.constraints.NotNull; | ||||
| import java.util.Arrays; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Api(value = "分包商项目任务控制器", tags = {"分包商项目任务管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/fbs/task") | ||||
| public class FbsProjectTaskController extends BaseController { | ||||
|  | ||||
|     private final IFbsProjectTaskService iFbsProjectTaskService; | ||||
|  | ||||
|     /** | ||||
|      * 查询分包商项目任务列表 | ||||
|      */ | ||||
|     @ApiOperation("查询分包商项目任务列表") | ||||
|     @PreAuthorize("@ss.hasPermi('common:task:list')") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<FbsProjectTask> list(@Validated FbsProjectTaskQueryBo bo) { | ||||
|         return iFbsProjectTaskService.queryPageList(bo); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 导出分包商项目任务列表 | ||||
|      */ | ||||
|     @ApiOperation("导出分包商项目任务列表") | ||||
|     @PreAuthorize("@ss.hasPermi('common:task:export')") | ||||
|     @Log(title = "分包商项目任务", businessType = BusinessType.EXPORT) | ||||
|     @GetMapping("/export") | ||||
|     public AjaxResult<FbsProjectTask> export(@Validated FbsProjectTaskQueryBo bo) { | ||||
|         List<FbsProjectTask> list = iFbsProjectTaskService.queryList(bo); | ||||
|         ExcelUtil<FbsProjectTask> util = new ExcelUtil<FbsProjectTask>(FbsProjectTask.class); | ||||
|         return util.exportExcel(list, "分包商项目任务"); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取分包商项目任务详细信息 | ||||
|      */ | ||||
|     @ApiOperation("获取分包商项目任务详细信息") | ||||
|     @PreAuthorize("@ss.hasPermi('common:task:query')") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<FbsProjectTask> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iFbsProjectTaskService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增分包商项目任务 | ||||
|      */ | ||||
|     @ApiOperation("新增分包商项目任务") | ||||
|     @PreAuthorize("@ss.hasPermi('common:task:add')") | ||||
|     @Log(title = "分包商项目任务", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody FbsProjectTask bo) { | ||||
|         return toAjax(iFbsProjectTaskService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改分包商项目任务 | ||||
|      */ | ||||
|     @ApiOperation("修改分包商项目任务") | ||||
|     @PreAuthorize("@ss.hasPermi('common:task:edit')") | ||||
|     @Log(title = "分包商项目任务", businessType = BusinessType.UPDATE) | ||||
|     @RepeatSubmit | ||||
|     @PutMapping() | ||||
|     public AjaxResult<Void> edit(@Validated @RequestBody FbsProjectTask bo) { | ||||
|         return toAjax(iFbsProjectTaskService.update(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 删除分包商项目任务 | ||||
|      */ | ||||
|     @ApiOperation("删除分包商项目任务") | ||||
|     @PreAuthorize("@ss.hasPermi('common:task:remove')") | ||||
|     @Log(title = "分包商项目任务" , businessType = BusinessType.DELETE) | ||||
|     @DeleteMapping("/{ids}") | ||||
|     public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空") | ||||
|                                        @PathVariable Long[] ids) { | ||||
|         return toAjax(iFbsProjectTaskService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,109 @@ | ||||
| package com.ruoyi.web.controller.zbf; | ||||
|  | ||||
| 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.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.enums.BusinessType; | ||||
| import com.ruoyi.common.utils.poi.ExcelUtil; | ||||
| import com.ruoyi.zbf.bo.ZbfProjectQueryBo; | ||||
| import com.ruoyi.zbf.domain.ZbfProject; | ||||
| import com.ruoyi.zbf.service.IZbfProjectService; | ||||
| import io.swagger.annotations.Api; | ||||
| import io.swagger.annotations.ApiOperation; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.security.access.prepost.PreAuthorize; | ||||
| import org.springframework.validation.annotation.Validated; | ||||
| import org.springframework.web.bind.annotation.*; | ||||
|  | ||||
| import javax.validation.constraints.NotEmpty; | ||||
| import javax.validation.constraints.NotNull; | ||||
| import java.util.Arrays; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Api(value = "总包方项目控制器", tags = {"总包方项目管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/zbf/project") | ||||
| public class ZbfProjectController extends BaseController { | ||||
|  | ||||
|     private final IZbfProjectService iZbfProjectService; | ||||
|  | ||||
|     /** | ||||
|      * 查询总包方项目列表 | ||||
|      */ | ||||
|     @ApiOperation("查询总包方项目列表") | ||||
|     @PreAuthorize("@ss.hasPermi('common:project:list')") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<ZbfProject> list(@Validated ZbfProjectQueryBo bo) { | ||||
|         return iZbfProjectService.queryPageList(bo); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 导出总包方项目列表 | ||||
|      */ | ||||
|     @ApiOperation("导出总包方项目列表") | ||||
|     @PreAuthorize("@ss.hasPermi('common:project:export')") | ||||
|     @Log(title = "总包方项目", businessType = BusinessType.EXPORT) | ||||
|     @GetMapping("/export") | ||||
|     public AjaxResult<ZbfProject> export(@Validated ZbfProjectQueryBo bo) { | ||||
|         List<ZbfProject> list = iZbfProjectService.queryList(bo); | ||||
|         ExcelUtil<ZbfProject> util = new ExcelUtil<ZbfProject>(ZbfProject.class); | ||||
|         return util.exportExcel(list, "总包方项目"); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取总包方项目详细信息 | ||||
|      */ | ||||
|     @ApiOperation("获取总包方项目详细信息") | ||||
|     @PreAuthorize("@ss.hasPermi('common:project:query')") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<ZbfProject> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iZbfProjectService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增总包方项目 | ||||
|      */ | ||||
|     @ApiOperation("新增总包方项目") | ||||
|     @PreAuthorize("@ss.hasPermi('common:project:add')") | ||||
|     @Log(title = "总包方项目", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody ZbfProject bo) { | ||||
|         return toAjax(iZbfProjectService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改总包方项目 | ||||
|      */ | ||||
|     @ApiOperation("修改总包方项目") | ||||
|     @PreAuthorize("@ss.hasPermi('common:project:edit')") | ||||
|     @Log(title = "总包方项目", businessType = BusinessType.UPDATE) | ||||
|     @RepeatSubmit | ||||
|     @PutMapping() | ||||
|     public AjaxResult<Void> edit(@Validated @RequestBody ZbfProject bo) { | ||||
|         return toAjax(iZbfProjectService.update(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 删除总包方项目 | ||||
|      */ | ||||
|     @ApiOperation("删除总包方项目") | ||||
|     @PreAuthorize("@ss.hasPermi('common:project:remove')") | ||||
|     @Log(title = "总包方项目" , businessType = BusinessType.DELETE) | ||||
|     @DeleteMapping("/{ids}") | ||||
|     public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空") | ||||
|                                        @PathVariable Long[] ids) { | ||||
|         return toAjax(iZbfProjectService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,109 @@ | ||||
| package com.ruoyi.web.controller.zbf; | ||||
|  | ||||
| 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.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.enums.BusinessType; | ||||
| import com.ruoyi.common.utils.poi.ExcelUtil; | ||||
| import com.ruoyi.zbf.bo.ZbfProjectSectionQueryBo; | ||||
| import com.ruoyi.zbf.domain.ZbfProjectSection; | ||||
| 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.security.access.prepost.PreAuthorize; | ||||
| import org.springframework.validation.annotation.Validated; | ||||
| import org.springframework.web.bind.annotation.*; | ||||
|  | ||||
| import javax.validation.constraints.NotEmpty; | ||||
| import javax.validation.constraints.NotNull; | ||||
| import java.util.Arrays; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目标段Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Api(value = "总包方项目标段控制器", tags = {"总包方项目标段管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/zbf/section") | ||||
| public class ZbfProjectSectionController extends BaseController { | ||||
|  | ||||
|     private final IZbfProjectSectionService iZbfProjectSectionService; | ||||
|  | ||||
|     /** | ||||
|      * 查询总包方项目标段列表 | ||||
|      */ | ||||
|     @ApiOperation("查询总包方项目标段列表") | ||||
|     @PreAuthorize("@ss.hasPermi('common:section:list')") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<ZbfProjectSection> list(@Validated ZbfProjectSectionQueryBo bo) { | ||||
|         return iZbfProjectSectionService.queryPageList(bo); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 导出总包方项目标段列表 | ||||
|      */ | ||||
|     @ApiOperation("导出总包方项目标段列表") | ||||
|     @PreAuthorize("@ss.hasPermi('common:section:export')") | ||||
|     @Log(title = "总包方项目标段", businessType = BusinessType.EXPORT) | ||||
|     @GetMapping("/export") | ||||
|     public AjaxResult<ZbfProjectSection> export(@Validated ZbfProjectSectionQueryBo bo) { | ||||
|         List<ZbfProjectSection> list = iZbfProjectSectionService.queryList(bo); | ||||
|         ExcelUtil<ZbfProjectSection> util = new ExcelUtil<ZbfProjectSection>(ZbfProjectSection.class); | ||||
|         return util.exportExcel(list, "总包方项目标段"); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取总包方项目标段详细信息 | ||||
|      */ | ||||
|     @ApiOperation("获取总包方项目标段详细信息") | ||||
|     @PreAuthorize("@ss.hasPermi('common:section:query')") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<ZbfProjectSection> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iZbfProjectSectionService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增总包方项目标段 | ||||
|      */ | ||||
|     @ApiOperation("新增总包方项目标段") | ||||
|     @PreAuthorize("@ss.hasPermi('common:section:add')") | ||||
|     @Log(title = "总包方项目标段", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody ZbfProjectSection bo) { | ||||
|         return toAjax(iZbfProjectSectionService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改总包方项目标段 | ||||
|      */ | ||||
|     @ApiOperation("修改总包方项目标段") | ||||
|     @PreAuthorize("@ss.hasPermi('common:section:edit')") | ||||
|     @Log(title = "总包方项目标段", businessType = BusinessType.UPDATE) | ||||
|     @RepeatSubmit | ||||
|     @PutMapping() | ||||
|     public AjaxResult<Void> edit(@Validated @RequestBody ZbfProjectSection bo) { | ||||
|         return toAjax(iZbfProjectSectionService.update(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 删除总包方项目标段 | ||||
|      */ | ||||
|     @ApiOperation("删除总包方项目标段") | ||||
|     @PreAuthorize("@ss.hasPermi('common:section:remove')") | ||||
|     @Log(title = "总包方项目标段" , businessType = BusinessType.DELETE) | ||||
|     @DeleteMapping("/{ids}") | ||||
|     public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空") | ||||
|                                        @PathVariable Long[] ids) { | ||||
|         return toAjax(iZbfProjectSectionService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,109 @@ | ||||
| package com.ruoyi.web.controller.zbf; | ||||
|  | ||||
| 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.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.enums.BusinessType; | ||||
| import com.ruoyi.common.utils.poi.ExcelUtil; | ||||
| import com.ruoyi.zbf.bo.ZbfProjectSubcontractingQueryBo; | ||||
| import com.ruoyi.zbf.domain.ZbfProjectSubcontracting; | ||||
| import com.ruoyi.zbf.service.IZbfProjectSubcontractingService; | ||||
| import io.swagger.annotations.Api; | ||||
| import io.swagger.annotations.ApiOperation; | ||||
| import lombok.RequiredArgsConstructor; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.security.access.prepost.PreAuthorize; | ||||
| import org.springframework.validation.annotation.Validated; | ||||
| import org.springframework.web.bind.annotation.*; | ||||
|  | ||||
| import javax.validation.constraints.NotEmpty; | ||||
| import javax.validation.constraints.NotNull; | ||||
| import java.util.Arrays; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目分包Controller | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Api(value = "总包方项目分包控制器", tags = {"总包方项目分包管理"}) | ||||
| @RequiredArgsConstructor(onConstructor_ = @Autowired) | ||||
| @RestController | ||||
| @RequestMapping("/zbf/subcontracting") | ||||
| public class ZbfProjectSubcontractingController extends BaseController { | ||||
|  | ||||
|     private final IZbfProjectSubcontractingService iZbfProjectSubcontractingService; | ||||
|  | ||||
|     /** | ||||
|      * 查询总包方项目分包列表 | ||||
|      */ | ||||
|     @ApiOperation("查询总包方项目分包列表") | ||||
|     @PreAuthorize("@ss.hasPermi('common:subcontracting:list')") | ||||
|     @GetMapping("/list") | ||||
|     public TableDataInfo<ZbfProjectSubcontracting> list(@Validated ZbfProjectSubcontractingQueryBo bo) { | ||||
|         return iZbfProjectSubcontractingService.queryPageList(bo); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 导出总包方项目分包列表 | ||||
|      */ | ||||
|     @ApiOperation("导出总包方项目分包列表") | ||||
|     @PreAuthorize("@ss.hasPermi('common:subcontracting:export')") | ||||
|     @Log(title = "总包方项目分包", businessType = BusinessType.EXPORT) | ||||
|     @GetMapping("/export") | ||||
|     public AjaxResult<ZbfProjectSubcontracting> export(@Validated ZbfProjectSubcontractingQueryBo bo) { | ||||
|         List<ZbfProjectSubcontracting> list = iZbfProjectSubcontractingService.queryList(bo); | ||||
|         ExcelUtil<ZbfProjectSubcontracting> util = new ExcelUtil<ZbfProjectSubcontracting>(ZbfProjectSubcontracting.class); | ||||
|         return util.exportExcel(list, "总包方项目分包"); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 获取总包方项目分包详细信息 | ||||
|      */ | ||||
|     @ApiOperation("获取总包方项目分包详细信息") | ||||
|     @PreAuthorize("@ss.hasPermi('common:subcontracting:query')") | ||||
|     @GetMapping("/{id}") | ||||
|     public AjaxResult<ZbfProjectSubcontracting> getInfo(@NotNull(message = "主键不能为空") | ||||
|                                                   @PathVariable("id") Long id) { | ||||
|         return AjaxResult.success(iZbfProjectSubcontractingService.queryById(id)); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 新增总包方项目分包 | ||||
|      */ | ||||
|     @ApiOperation("新增总包方项目分包") | ||||
|     @PreAuthorize("@ss.hasPermi('common:subcontracting:add')") | ||||
|     @Log(title = "总包方项目分包", businessType = BusinessType.INSERT) | ||||
|     @RepeatSubmit | ||||
|     @PostMapping() | ||||
|     public AjaxResult<Void> add(@Validated @RequestBody ZbfProjectSubcontracting bo) { | ||||
|         return toAjax(iZbfProjectSubcontractingService.insert(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 修改总包方项目分包 | ||||
|      */ | ||||
|     @ApiOperation("修改总包方项目分包") | ||||
|     @PreAuthorize("@ss.hasPermi('common:subcontracting:edit')") | ||||
|     @Log(title = "总包方项目分包", businessType = BusinessType.UPDATE) | ||||
|     @RepeatSubmit | ||||
|     @PutMapping() | ||||
|     public AjaxResult<Void> edit(@Validated @RequestBody ZbfProjectSubcontracting bo) { | ||||
|         return toAjax(iZbfProjectSubcontractingService.update(bo) ? 1 : 0); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 删除总包方项目分包 | ||||
|      */ | ||||
|     @ApiOperation("删除总包方项目分包") | ||||
|     @PreAuthorize("@ss.hasPermi('common:subcontracting:remove')") | ||||
|     @Log(title = "总包方项目分包" , businessType = BusinessType.DELETE) | ||||
|     @DeleteMapping("/{ids}") | ||||
|     public AjaxResult<Void> remove(@NotEmpty(message = "主键不能为空") | ||||
|                                        @PathVariable Long[] ids) { | ||||
|         return toAjax(iZbfProjectSubcontractingService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,49 @@ | ||||
| package com.ruoyi.bgt.bo; | ||||
|  | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
|  | ||||
| import java.time.LocalDateTime; | ||||
| import java.time.LocalTime; | ||||
| import java.time.LocalDate; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| import java.util.Date; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工申请分页查询对象 bgt_project_recruit_apply | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
|  | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @ApiModel("包工头招工申请分页查询对象") | ||||
| public class BgtProjectRecruitApplyQueryBo extends BaseEntity { | ||||
|  | ||||
| 	/** 分页大小 */ | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
| 	/** 排序列 */ | ||||
| 	@ApiModelProperty("排序列") | ||||
| 	private String orderByColumn; | ||||
| 	/** 排序的方向desc或者asc */ | ||||
| 	@ApiModelProperty(value = "排序的方向", example = "asc,desc") | ||||
| 	private String isAsc; | ||||
|  | ||||
|  | ||||
| 	/** 招工ID */ | ||||
| 	@ApiModelProperty("招工ID") | ||||
| 	private Long recruitId; | ||||
| 	/** 务工者用户ID */ | ||||
| 	@ApiModelProperty("务工者用户ID") | ||||
| 	private Long userId; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,75 @@ | ||||
| package com.ruoyi.bgt.bo; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工分页查询对象 bgt_project_recruit | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
|  | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @ApiModel("包工头招工分页查询对象") | ||||
| public class BgtProjectRecruitQueryBo extends BaseEntity { | ||||
|  | ||||
| 	/** 分页大小 */ | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
| 	/** 排序列 */ | ||||
| 	@ApiModelProperty("排序列") | ||||
| 	private String orderByColumn; | ||||
| 	/** 排序的方向desc或者asc */ | ||||
| 	@ApiModelProperty(value = "排序的方向", example = "asc,desc") | ||||
| 	private String isAsc; | ||||
|  | ||||
|  | ||||
| 	/** 项目ID */ | ||||
| 	@ApiModelProperty("项目ID") | ||||
| 	private Long projectId; | ||||
| 	/** 标段ID */ | ||||
| 	@ApiModelProperty("标段ID") | ||||
| 	private Long sectionId; | ||||
| 	/** 分包ID */ | ||||
| 	@ApiModelProperty("分包ID") | ||||
| 	private Long subId; | ||||
| 	/** 任务ID */ | ||||
| 	@ApiModelProperty("任务ID") | ||||
| 	private Long taskId; | ||||
| 	/** 招工名称 */ | ||||
| 	@ApiModelProperty("招工名称") | ||||
| 	private String recruitName; | ||||
| 	/** 招工地址 */ | ||||
| 	@ApiModelProperty("招工地址") | ||||
| 	private String recruitAddress; | ||||
| 	/** 招工金额 */ | ||||
| 	@ApiModelProperty("招工金额") | ||||
| 	private Long recruitAmount; | ||||
| 	/** 招工数量 */ | ||||
| 	@ApiModelProperty("招工数量") | ||||
| 	private Long recruitStaffNum; | ||||
| 	/** 招工开始时间 */ | ||||
| 	@ApiModelProperty("招工开始时间") | ||||
| 	private String recruitBeginTime; | ||||
| 	/** 联系人 */ | ||||
| 	@ApiModelProperty("联系人") | ||||
| 	private String recruitContactPerson; | ||||
| 	/** 联系电话 */ | ||||
| 	@ApiModelProperty("联系电话") | ||||
| 	private String recruitContactPhone; | ||||
| 	/** 招工描述 */ | ||||
| 	@ApiModelProperty("招工描述") | ||||
| 	private String subDescribe; | ||||
| 	/** 招工要求 */ | ||||
| 	@ApiModelProperty("招工要求") | ||||
| 	private String recruitRequirement; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,72 @@ | ||||
| package com.ruoyi.bgt.bo; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度分页查询对象 bgt_project_task_progress | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
|  | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @ApiModel("包工头项目任务进度分页查询对象") | ||||
| public class BgtProjectTaskProgressQueryBo extends BaseEntity { | ||||
|  | ||||
| 	/** 分页大小 */ | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
| 	/** 排序列 */ | ||||
| 	@ApiModelProperty("排序列") | ||||
| 	private String orderByColumn; | ||||
| 	/** 排序的方向desc或者asc */ | ||||
| 	@ApiModelProperty(value = "排序的方向", example = "asc,desc") | ||||
| 	private String isAsc; | ||||
|  | ||||
|  | ||||
| 	/** 项目ID */ | ||||
| 	@ApiModelProperty("项目ID") | ||||
| 	private Long projectId; | ||||
| 	/** 标段ID */ | ||||
| 	@ApiModelProperty("标段ID") | ||||
| 	private Long sectionId; | ||||
| 	/** 分包ID */ | ||||
| 	@ApiModelProperty("分包ID") | ||||
| 	private Long subId; | ||||
| 	/** 任务ID */ | ||||
| 	@ApiModelProperty("任务ID") | ||||
| 	private Long taskId; | ||||
| 	/** 进度名称 */ | ||||
| 	@ApiModelProperty("进度名称") | ||||
| 	private String progressName; | ||||
| 	/** 负责人 */ | ||||
| 	@ApiModelProperty("负责人") | ||||
| 	private String director; | ||||
| 	/** 上传人 */ | ||||
| 	@ApiModelProperty("上传人") | ||||
| 	private String uploader; | ||||
| 	/** 进度 */ | ||||
| 	@ApiModelProperty("进度") | ||||
| 	private Long progress; | ||||
| 	/** 进度描述 */ | ||||
| 	@ApiModelProperty("进度描述") | ||||
| 	private String progressDescribe; | ||||
| 	/** 进度附件 */ | ||||
| 	@ApiModelProperty("进度附件") | ||||
| 	private String progressAnnex; | ||||
| 	/** 审核状态(1审核中 2已审核 3未审核) */ | ||||
| 	@ApiModelProperty("审核状态(1审核中 2已审核 3未审核)") | ||||
| 	private String auditStatus; | ||||
| 	/** 审核人Id */ | ||||
| 	@ApiModelProperty("审核人Id") | ||||
| 	private Long reviewerId; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,134 @@ | ||||
| package com.ruoyi.bgt.domain; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import com.ruoyi.common.annotation.Excel; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工对象 bgt_project_recruit | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @TableName("bgt_project_recruit") | ||||
| @ApiModel("包工头招工视图对象") | ||||
| public class BgtProjectRecruit implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     @TableId(value = "id") | ||||
|     private Long id; | ||||
|  | ||||
|     /** 项目ID */ | ||||
|     @Excel(name = "项目ID") | ||||
|     @ApiModelProperty("项目ID") | ||||
|     private Long projectId; | ||||
|  | ||||
|     /** 标段ID */ | ||||
|     @Excel(name = "标段ID") | ||||
|     @ApiModelProperty("标段ID") | ||||
|     private Long sectionId; | ||||
|  | ||||
|     /** 分包ID */ | ||||
|     @Excel(name = "分包ID") | ||||
|     @ApiModelProperty("分包ID") | ||||
|     private Long subId; | ||||
|  | ||||
|     /** 任务ID */ | ||||
|     @Excel(name = "任务ID") | ||||
|     @ApiModelProperty("任务ID") | ||||
|     private Long taskId; | ||||
|  | ||||
|     /** 招工名称 */ | ||||
|     @Excel(name = "招工名称") | ||||
|     @ApiModelProperty("招工名称") | ||||
|     private String recruitName; | ||||
|  | ||||
|     /** 招工地址 */ | ||||
|     @Excel(name = "招工地址") | ||||
|     @ApiModelProperty("招工地址") | ||||
|     private String recruitAddress; | ||||
|  | ||||
|     /** 招工金额 */ | ||||
|     @Excel(name = "招工金额") | ||||
|     @ApiModelProperty("招工金额") | ||||
|     private Long recruitAmount; | ||||
|  | ||||
|     /** 招工数量 */ | ||||
|     @Excel(name = "招工数量") | ||||
|     @ApiModelProperty("招工数量") | ||||
|     private Long recruitStaffNum; | ||||
|  | ||||
|     /** 招工开始时间 */ | ||||
|     @Excel(name = "招工开始时间") | ||||
|     @ApiModelProperty("招工开始时间") | ||||
|     private String recruitBeginTime; | ||||
|  | ||||
|     /** 联系人 */ | ||||
|     @Excel(name = "联系人") | ||||
|     @ApiModelProperty("联系人") | ||||
|     private String recruitContactPerson; | ||||
|  | ||||
|     /** 联系电话 */ | ||||
|     @Excel(name = "联系电话") | ||||
|     @ApiModelProperty("联系电话") | ||||
|     private String recruitContactPhone; | ||||
|  | ||||
|     /** 招工描述 */ | ||||
|     @Excel(name = "招工描述") | ||||
|     @ApiModelProperty("招工描述") | ||||
|     private String subDescribe; | ||||
|  | ||||
|     /** 招工要求 */ | ||||
|     @Excel(name = "招工要求") | ||||
|     @ApiModelProperty("招工要求") | ||||
|     private String recruitRequirement; | ||||
|  | ||||
|     /** 删除标志(0代表存在 2代表删除) */ | ||||
|     @Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除") | ||||
|     @ApiModelProperty("删除标志(0代表存在 2代表删除)") | ||||
|     @TableLogic | ||||
|     private String delFlag; | ||||
|  | ||||
|     /** 创建者 */ | ||||
|     @Excel(name = "创建者") | ||||
|     @ApiModelProperty("创建者") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private String createBy; | ||||
|  | ||||
|     /** 创建时间 */ | ||||
|     @Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("创建时间") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
|     /** 更新者 */ | ||||
|     @Excel(name = "更新者") | ||||
|     @ApiModelProperty("更新者") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private String updateBy; | ||||
|  | ||||
|     /** 更新时间 */ | ||||
|     @Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("更新时间") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private LocalDateTime updateTime; | ||||
|  | ||||
|     /** 备注 */ | ||||
|     @Excel(name = "备注") | ||||
|     @ApiModelProperty("备注") | ||||
|     private String remark; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,79 @@ | ||||
| package com.ruoyi.bgt.domain; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import com.ruoyi.common.annotation.Excel; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工申请对象 bgt_project_recruit_apply | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @TableName("bgt_project_recruit_apply") | ||||
| @ApiModel("包工头招工申请视图对象") | ||||
| public class BgtProjectRecruitApply implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     @TableId(value = "id") | ||||
|     private Long id; | ||||
|  | ||||
|     /** 招工ID */ | ||||
|     @Excel(name = "招工ID") | ||||
|     @ApiModelProperty("招工ID") | ||||
|     private Long recruitId; | ||||
|  | ||||
|     /** 务工者用户ID */ | ||||
|     @Excel(name = "务工者用户ID") | ||||
|     @ApiModelProperty("务工者用户ID") | ||||
|     private Long userId; | ||||
|  | ||||
|     /** 删除标志(0代表存在 2代表删除) */ | ||||
|     @Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除") | ||||
|     @ApiModelProperty("删除标志(0代表存在 2代表删除)") | ||||
|     @TableLogic | ||||
|     private String delFlag; | ||||
|  | ||||
|     /** 创建者 */ | ||||
|     @Excel(name = "创建者") | ||||
|     @ApiModelProperty("创建者") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private String createBy; | ||||
|  | ||||
|     /** 创建时间 */ | ||||
|     @Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("创建时间") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
|     /** 更新者 */ | ||||
|     @Excel(name = "更新者") | ||||
|     @ApiModelProperty("更新者") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private String updateBy; | ||||
|  | ||||
|     /** 更新时间 */ | ||||
|     @Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("更新时间") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private LocalDateTime updateTime; | ||||
|  | ||||
|     /** 备注 */ | ||||
|     @Excel(name = "备注") | ||||
|     @ApiModelProperty("备注") | ||||
|     private String remark; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,128 @@ | ||||
| package com.ruoyi.bgt.domain; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import com.ruoyi.common.annotation.Excel; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度对象 bgt_project_task_progress | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @TableName("bgt_project_task_progress") | ||||
| @ApiModel("包工头项目任务进度视图对象") | ||||
| public class BgtProjectTaskProgress implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     @TableId(value = "id", type = IdType.AUTO) | ||||
|     private Long id; | ||||
|  | ||||
|     /** 项目ID */ | ||||
|     @Excel(name = "项目ID") | ||||
|     @ApiModelProperty("项目ID") | ||||
|     private Long projectId; | ||||
|  | ||||
|     /** 标段ID */ | ||||
|     @Excel(name = "标段ID") | ||||
|     @ApiModelProperty("标段ID") | ||||
|     private Long sectionId; | ||||
|  | ||||
|     /** 分包ID */ | ||||
|     @Excel(name = "分包ID") | ||||
|     @ApiModelProperty("分包ID") | ||||
|     private Long subId; | ||||
|  | ||||
|     /** 任务ID */ | ||||
|     @Excel(name = "任务ID") | ||||
|     @ApiModelProperty("任务ID") | ||||
|     private Long taskId; | ||||
|  | ||||
|     /** 进度名称 */ | ||||
|     @Excel(name = "进度名称") | ||||
|     @ApiModelProperty("进度名称") | ||||
|     private String progressName; | ||||
|  | ||||
|     /** 负责人 */ | ||||
|     @Excel(name = "负责人") | ||||
|     @ApiModelProperty("负责人") | ||||
|     private String director; | ||||
|  | ||||
|     /** 上传人 */ | ||||
|     @Excel(name = "上传人") | ||||
|     @ApiModelProperty("上传人") | ||||
|     private String uploader; | ||||
|  | ||||
|     /** 进度 */ | ||||
|     @Excel(name = "进度") | ||||
|     @ApiModelProperty("进度") | ||||
|     private Long progress; | ||||
|  | ||||
|     /** 进度描述 */ | ||||
|     @Excel(name = "进度描述") | ||||
|     @ApiModelProperty("进度描述") | ||||
|     private String progressDescribe; | ||||
|  | ||||
|     /** 进度附件 */ | ||||
|     @Excel(name = "进度附件") | ||||
|     @ApiModelProperty("进度附件") | ||||
|     private String progressAnnex; | ||||
|  | ||||
|     /** 审核状态(1审核中 2已审核 3未审核) */ | ||||
|     @Excel(name = "审核状态" , readConverterExp = "1=审核中,2=已审核,3=未审核") | ||||
|     @ApiModelProperty("审核状态(1审核中 2已审核 3未审核)") | ||||
|     private String auditStatus; | ||||
|  | ||||
|     /** 审核人Id */ | ||||
|     @Excel(name = "审核人Id") | ||||
|     @ApiModelProperty("审核人Id") | ||||
|     private Long reviewerId; | ||||
|  | ||||
|     /** 删除标志(0代表存在 2代表删除) */ | ||||
|     @Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除") | ||||
|     @ApiModelProperty("删除标志(0代表存在 2代表删除)") | ||||
|     private String delFlag; | ||||
|  | ||||
|     /** 创建者 */ | ||||
|     @Excel(name = "创建者") | ||||
|     @ApiModelProperty("创建者") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private String createBy; | ||||
|  | ||||
|     /** 创建时间 */ | ||||
|     @Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("创建时间") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
|     /** 更新者 */ | ||||
|     @Excel(name = "更新者") | ||||
|     @ApiModelProperty("更新者") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private String updateBy; | ||||
|  | ||||
|     /** 更新时间 */ | ||||
|     @Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("更新时间") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private LocalDateTime updateTime; | ||||
|  | ||||
|     /** 备注 */ | ||||
|     @Excel(name = "备注") | ||||
|     @ApiModelProperty("备注") | ||||
|     private String remark; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,12 @@ | ||||
| package com.ruoyi.bgt.domain.dto; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
|  | ||||
| @Data | ||||
| public class BgtProjectRecruitApplyQueryDTO extends BaseEntity { | ||||
|  | ||||
| 	@ApiModelProperty("招工ID") | ||||
| 	private Long recruitId; | ||||
| } | ||||
| @ -0,0 +1,32 @@ | ||||
| package com.ruoyi.bgt.domain.dto; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度分页查询对象 bgt_project_task_progress | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
|  | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @ApiModel("App包工头项目任务进度分页查询对象") | ||||
| public class BgtProjectTaskProgressQueryDTO extends BaseEntity { | ||||
|  | ||||
| 	/** 分页大小 */ | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
|  | ||||
| 	/** 审核状态(1审核中 2已审核 3未审核) */ | ||||
| 	@ApiModelProperty("审核状态(1审核中 2已审核 3未审核)") | ||||
| 	private String auditStatus; | ||||
|  | ||||
| } | ||||
| @ -1,6 +1,7 @@ | ||||
| package com.ruoyi.bgt.domain.dto; | ||||
|  | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
| import com.ruoyi.common.domain.dto.AnnexDTO; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| @ -21,7 +22,7 @@ import java.util.List; | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @ApiModel("包工头实名认证对象") | ||||
| public class UserRealNameAuthenticationDTO { | ||||
| public class UserRealNameAuthenticationDTO extends BaseEntity { | ||||
|  | ||||
| 	@ApiModelProperty("主键") | ||||
| 	@NotBlank(message = "主键不能为空") | ||||
|  | ||||
| @ -0,0 +1,40 @@ | ||||
| package com.ruoyi.bgt.domain.vo; | ||||
|  | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工申请对象 bgt_project_recruit_apply | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @ApiModel("App包工头招工申请视图对象") | ||||
| public class BgtProjectRecruitApplyVO implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     @ApiModelProperty("务工者用户ID") | ||||
|     private Long userId; | ||||
|  | ||||
| 	@ApiModelProperty("姓名") | ||||
| 	private String username; | ||||
|  | ||||
| 	@ApiModelProperty("联系电话") | ||||
| 	private String phone; | ||||
|  | ||||
| 	@ApiModelProperty("评分") | ||||
| 	private Double score; | ||||
|  | ||||
| 	@ApiModelProperty("头像") | ||||
| 	private String avatarName; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,51 @@ | ||||
| package com.ruoyi.bgt.domain.vo; | ||||
|  | ||||
| import com.fasterxml.jackson.annotation.JsonFormat; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工对象 bgt_project_recruit | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @ApiModel("App包工头招工视图对象") | ||||
| public class BgtProjectRecruitVO implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     private Long id; | ||||
|  | ||||
|     @ApiModelProperty("招工名称") | ||||
|     private String recruitName; | ||||
|  | ||||
|     @ApiModelProperty("招工地址") | ||||
|     private String recruitAddress; | ||||
|  | ||||
|     @ApiModelProperty("招工金额") | ||||
|     private Long recruitAmount; | ||||
|  | ||||
|     @ApiModelProperty("招工数量") | ||||
|     private Long recruitStaffNum; | ||||
|  | ||||
|     @ApiModelProperty("招工要求") | ||||
|     private String recruitRequirement; | ||||
|  | ||||
| 	@ApiModelProperty("发布时间") | ||||
| 	@JsonFormat(pattern = "yyyy-MM-dd") | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,73 @@ | ||||
| package com.ruoyi.bgt.domain.vo; | ||||
|  | ||||
| import com.fasterxml.jackson.annotation.JsonFormat; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度对象 bgt_project_task_progress | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @ApiModel("App包工头项目任务进度详情对象") | ||||
| public class BgtProjectTaskProgressDetailVO implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     private Long id; | ||||
|  | ||||
|     @ApiModelProperty("项目名") | ||||
|     private String projectName; | ||||
|  | ||||
|     @ApiModelProperty("任务名") | ||||
|     private String taskName; | ||||
|  | ||||
| 	@ApiModelProperty("任务地址") | ||||
| 	private String  taskAddress; | ||||
|  | ||||
|     @ApiModelProperty("进度名称") | ||||
|     private String progressName; | ||||
|  | ||||
| 	@ApiModelProperty("负责人") | ||||
| 	private String director; | ||||
|  | ||||
|     @ApiModelProperty("上传人") | ||||
|     private String uploader; | ||||
|  | ||||
|     @ApiModelProperty("进度") | ||||
|     private Long progress; | ||||
|  | ||||
| 	@ApiModelProperty("用工数量") | ||||
| 	private Long taskStaffNum; | ||||
|  | ||||
|     @ApiModelProperty("审核状态(1审核中 2已审核 3未审核)") | ||||
|     private String auditStatus; | ||||
|  | ||||
|     @ApiModelProperty("上传时间") | ||||
| 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm") | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
| 	@ApiModelProperty("进度描述") | ||||
| 	private String progressDescribe; | ||||
|  | ||||
| 	@ApiModelProperty("进度附件") | ||||
| 	private String progressAnnex; | ||||
|  | ||||
| 	@ApiModelProperty("备注") | ||||
| 	private String remark; | ||||
|  | ||||
|  | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,56 @@ | ||||
| package com.ruoyi.bgt.domain.vo; | ||||
|  | ||||
| import com.fasterxml.jackson.annotation.JsonFormat; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度对象 bgt_project_task_progress | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @ApiModel("App包工头项目任务进度视图对象") | ||||
| public class BgtProjectTaskProgressVO implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     private Long id; | ||||
|  | ||||
|     @ApiModelProperty("项目名") | ||||
|     private String projectName; | ||||
|  | ||||
|     @ApiModelProperty("任务名") | ||||
|     private String taskName; | ||||
|  | ||||
|     @ApiModelProperty("进度名称") | ||||
|     private String progressName; | ||||
|  | ||||
|     @ApiModelProperty("上传人") | ||||
|     private String uploader; | ||||
|  | ||||
|     @ApiModelProperty("进度") | ||||
|     private Long progress; | ||||
|  | ||||
| 	@ApiModelProperty("用工数量") | ||||
| 	private Long taskStaffNum; | ||||
|  | ||||
|     @ApiModelProperty("审核状态(1审核中 2已审核 3未审核)") | ||||
|     private String auditStatus; | ||||
|  | ||||
|     @ApiModelProperty("上传时间") | ||||
| 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm") | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,24 @@ | ||||
| package com.ruoyi.bgt.mapper; | ||||
|  | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruitApply; | ||||
| import com.ruoyi.bgt.domain.dto.BgtProjectRecruitApplyQueryDTO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO; | ||||
| import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; | ||||
| import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache; | ||||
| import org.apache.ibatis.annotations.CacheNamespace; | ||||
| import org.apache.ibatis.annotations.Param; | ||||
|  | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工申请Mapper接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| // 如使需切换数据源 请勿使用缓存 会造成数据不一致现象 | ||||
| @CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class) | ||||
| public interface BgtProjectRecruitApplyMapper extends BaseMapperPlus<BgtProjectRecruitApply> { | ||||
|  | ||||
| 	List<BgtProjectRecruitApplyVO> appQueryList(@Param("dto") BgtProjectRecruitApplyQueryDTO dto); | ||||
| } | ||||
| @ -0,0 +1,18 @@ | ||||
| package com.ruoyi.bgt.mapper; | ||||
|  | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruit; | ||||
| import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; | ||||
| import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache; | ||||
| import org.apache.ibatis.annotations.CacheNamespace; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工Mapper接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| // 如使需切换数据源 请勿使用缓存 会造成数据不一致现象 | ||||
| @CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class) | ||||
| public interface BgtProjectRecruitMapper extends BaseMapperPlus<BgtProjectRecruit> { | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,23 @@ | ||||
| package com.ruoyi.bgt.mapper; | ||||
|  | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.bgt.domain.BgtProjectTaskProgress; | ||||
| import com.ruoyi.bgt.domain.dto.BgtProjectTaskProgressQueryDTO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectTaskProgressVO; | ||||
| import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache; | ||||
| import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; | ||||
| import org.apache.ibatis.annotations.CacheNamespace; | ||||
| import org.apache.ibatis.annotations.Param; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度Mapper接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| // 如使需切换数据源 请勿使用缓存 会造成数据不一致现象 | ||||
| @CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class) | ||||
| public interface BgtProjectTaskProgressMapper extends BaseMapperPlus<BgtProjectTaskProgress> { | ||||
|  | ||||
| 	Page<BgtProjectTaskProgressVO> appQueryPageList(@Param("page") Page<BgtProjectTaskProgressQueryDTO> page, @Param("dto") BgtProjectTaskProgressQueryDTO dto); | ||||
| } | ||||
| @ -0,0 +1,63 @@ | ||||
| package com.ruoyi.bgt.service; | ||||
|  | ||||
| import com.ruoyi.bgt.bo.BgtProjectRecruitApplyQueryBo; | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruitApply; | ||||
| import com.ruoyi.bgt.domain.dto.BgtProjectRecruitApplyQueryDTO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO; | ||||
| import com.ruoyi.common.core.mybatisplus.core.IServicePlus; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工申请Service接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| public interface IBgtProjectRecruitApplyService extends IServicePlus<BgtProjectRecruitApply> { | ||||
|     /** | ||||
|      * 查询单个 | ||||
|      * @return | ||||
|      */ | ||||
|     BgtProjectRecruitApply queryById(Long id); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     TableDataInfo<BgtProjectRecruitApply> queryPageList(BgtProjectRecruitApplyQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     List<BgtProjectRecruitApply> queryList(BgtProjectRecruitApplyQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据新增业务对象插入包工头招工申请 | ||||
|      * @param bo 包工头招工申请新增业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean insert(BgtProjectRecruitApply bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据编辑业务对象修改包工头招工申请 | ||||
|      * @param bo 包工头招工申请编辑业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean update(BgtProjectRecruitApply bo); | ||||
|  | ||||
|     /** | ||||
|      * 校验并删除数据 | ||||
|      * @param ids 主键集合 | ||||
|      * @param isValid 是否校验,true-删除前校验,false-不校验 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); | ||||
|  | ||||
| 	/** | ||||
| 	 * 查询列表 | ||||
| 	 */ | ||||
| 	List<BgtProjectRecruitApplyVO> appQueryList(BgtProjectRecruitApplyQueryDTO dto); | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,55 @@ | ||||
| package com.ruoyi.bgt.service; | ||||
|  | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruit; | ||||
| import com.ruoyi.bgt.bo.BgtProjectRecruitQueryBo; | ||||
| import com.ruoyi.common.core.mybatisplus.core.IServicePlus; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工Service接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| public interface IBgtProjectRecruitService extends IServicePlus<BgtProjectRecruit> { | ||||
|     /** | ||||
|      * 查询单个 | ||||
|      * @return | ||||
|      */ | ||||
|     BgtProjectRecruit queryById(Long id); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     TableDataInfo<BgtProjectRecruit> queryPageList(BgtProjectRecruitQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     List<BgtProjectRecruit> queryList(BgtProjectRecruitQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据新增业务对象插入包工头招工 | ||||
|      * @param bo 包工头招工新增业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean insert(BgtProjectRecruit bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据编辑业务对象修改包工头招工 | ||||
|      * @param bo 包工头招工编辑业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean update(BgtProjectRecruit bo); | ||||
|  | ||||
|     /** | ||||
|      * 校验并删除数据 | ||||
|      * @param ids 主键集合 | ||||
|      * @param isValid 是否校验,true-删除前校验,false-不校验 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); | ||||
| } | ||||
| @ -0,0 +1,70 @@ | ||||
| package com.ruoyi.bgt.service; | ||||
|  | ||||
| import com.ruoyi.bgt.bo.BgtProjectTaskProgressQueryBo; | ||||
| import com.ruoyi.bgt.domain.BgtProjectTaskProgress; | ||||
| import com.ruoyi.bgt.domain.dto.BgtProjectTaskProgressQueryDTO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectTaskProgressDetailVO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectTaskProgressVO; | ||||
| import com.ruoyi.common.core.mybatisplus.core.IServicePlus; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度Service接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| public interface IBgtProjectTaskProgressService extends IServicePlus<BgtProjectTaskProgress> { | ||||
|     /** | ||||
|      * 查询单个 | ||||
|      * @return | ||||
|      */ | ||||
|     BgtProjectTaskProgress queryById(Long id); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     TableDataInfo<BgtProjectTaskProgress> queryPageList(BgtProjectTaskProgressQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     List<BgtProjectTaskProgress> queryList(BgtProjectTaskProgressQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据新增业务对象插入包工头项目任务进度 | ||||
|      * @param bo 包工头项目任务进度新增业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean insert(BgtProjectTaskProgress bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据编辑业务对象修改包工头项目任务进度 | ||||
|      * @param bo 包工头项目任务进度编辑业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean update(BgtProjectTaskProgress bo); | ||||
|  | ||||
|     /** | ||||
|      * 校验并删除数据 | ||||
|      * @param ids 主键集合 | ||||
|      * @param isValid 是否校验,true-删除前校验,false-不校验 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); | ||||
|  | ||||
| 	/** | ||||
| 	 * 查询列表 | ||||
| 	 */ | ||||
| 	TableDataInfo<BgtProjectTaskProgressVO> appQueryPageList(BgtProjectTaskProgressQueryDTO dto); | ||||
|  | ||||
| 	/** | ||||
| 	 * app查询单个 | ||||
| 	 * @return | ||||
| 	 */ | ||||
| 	BgtProjectTaskProgressDetailVO appQueryById(Long id); | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,91 @@ | ||||
| package com.ruoyi.bgt.service.impl; | ||||
|  | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.bgt.bo.BgtProjectRecruitApplyQueryBo; | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruitApply; | ||||
| import com.ruoyi.bgt.domain.dto.BgtProjectRecruitApplyQueryDTO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO; | ||||
| import com.ruoyi.bgt.mapper.BgtProjectRecruitApplyMapper; | ||||
| import com.ruoyi.bgt.service.IBgtProjectRecruitApplyService; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.utils.PageUtils; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.Collections; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工申请Service业务层处理 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Service | ||||
| public class BgtProjectRecruitApplyServiceImpl extends ServicePlusImpl<BgtProjectRecruitApplyMapper, BgtProjectRecruitApply> implements IBgtProjectRecruitApplyService { | ||||
|  | ||||
|     @Override | ||||
|     public BgtProjectRecruitApply queryById(Long id){ | ||||
|         return getById(id); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public TableDataInfo<BgtProjectRecruitApply> queryPageList(BgtProjectRecruitApplyQueryBo bo) { | ||||
|         Page<BgtProjectRecruitApply> result = page(PageUtils.buildPage(), buildQueryWrapper(bo)); | ||||
|         return PageUtils.buildDataInfo(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<BgtProjectRecruitApply> queryList(BgtProjectRecruitApplyQueryBo bo) { | ||||
|         return list(buildQueryWrapper(bo)); | ||||
|     } | ||||
|  | ||||
|     private LambdaQueryWrapper<BgtProjectRecruitApply> buildQueryWrapper(BgtProjectRecruitApplyQueryBo bo) { | ||||
|         Map<String, Object> params = bo.getParams(); | ||||
|         LambdaQueryWrapper<BgtProjectRecruitApply> lqw = Wrappers.lambdaQuery(); | ||||
|         lqw.eq(bo.getRecruitId() != null, BgtProjectRecruitApply::getRecruitId, bo.getRecruitId()); | ||||
|         lqw.eq(bo.getUserId() != null, BgtProjectRecruitApply::getUserId, bo.getUserId()); | ||||
|         return lqw; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean insert(BgtProjectRecruitApply bo) { | ||||
|         BgtProjectRecruitApply add = BeanUtil.toBean(bo, BgtProjectRecruitApply.class); | ||||
|         validEntityBeforeSave(add); | ||||
|         return save(add); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean update(BgtProjectRecruitApply bo) { | ||||
|         BgtProjectRecruitApply update = BeanUtil.toBean(bo, BgtProjectRecruitApply.class); | ||||
|         validEntityBeforeSave(update); | ||||
|         return updateById(update); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 保存前的数据校验 | ||||
|      * | ||||
|      * @param entity 实体类数据 | ||||
|      */ | ||||
|     private void validEntityBeforeSave(BgtProjectRecruitApply entity){ | ||||
|         //TODO 做一些数据校验,如唯一约束 | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|         return removeByIds(ids); | ||||
|     } | ||||
|  | ||||
| 	@Override | ||||
| 	public List<BgtProjectRecruitApplyVO> appQueryList(BgtProjectRecruitApplyQueryDTO dto) { | ||||
| 		return Collections.emptyList(); | ||||
| 	} | ||||
| } | ||||
| @ -0,0 +1,95 @@ | ||||
| package com.ruoyi.bgt.service.impl; | ||||
|  | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.bgt.bo.BgtProjectRecruitQueryBo; | ||||
| import com.ruoyi.bgt.domain.BgtProjectRecruit; | ||||
| import com.ruoyi.bgt.mapper.BgtProjectRecruitMapper; | ||||
| import com.ruoyi.bgt.service.IBgtProjectRecruitService; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.utils.PageUtils; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
|  | ||||
| /** | ||||
|  * 包工头招工Service业务层处理 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Service | ||||
| public class BgtProjectRecruitServiceImpl extends ServicePlusImpl<BgtProjectRecruitMapper, BgtProjectRecruit> implements IBgtProjectRecruitService { | ||||
|  | ||||
|     @Override | ||||
|     public BgtProjectRecruit queryById(Long id){ | ||||
|         return getById(id); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public TableDataInfo<BgtProjectRecruit> queryPageList(BgtProjectRecruitQueryBo bo) { | ||||
|         Page<BgtProjectRecruit> result = page(PageUtils.buildPage(), buildQueryWrapper(bo)); | ||||
|         return PageUtils.buildDataInfo(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<BgtProjectRecruit> queryList(BgtProjectRecruitQueryBo bo) { | ||||
|         return list(buildQueryWrapper(bo)); | ||||
|     } | ||||
|  | ||||
|     private LambdaQueryWrapper<BgtProjectRecruit> buildQueryWrapper(BgtProjectRecruitQueryBo bo) { | ||||
|         Map<String, Object> params = bo.getParams(); | ||||
|         LambdaQueryWrapper<BgtProjectRecruit> lqw = Wrappers.lambdaQuery(); | ||||
|         lqw.eq(bo.getProjectId() != null, BgtProjectRecruit::getProjectId, bo.getProjectId()); | ||||
|         lqw.eq(bo.getSectionId() != null, BgtProjectRecruit::getSectionId, bo.getSectionId()); | ||||
|         lqw.eq(bo.getSubId() != null, BgtProjectRecruit::getSubId, bo.getSubId()); | ||||
|         lqw.eq(bo.getTaskId() != null, BgtProjectRecruit::getTaskId, bo.getTaskId()); | ||||
|         lqw.like(StrUtil.isNotBlank(bo.getRecruitName()), BgtProjectRecruit::getRecruitName, bo.getRecruitName()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getRecruitAddress()), BgtProjectRecruit::getRecruitAddress, bo.getRecruitAddress()); | ||||
|         lqw.eq(bo.getRecruitAmount() != null, BgtProjectRecruit::getRecruitAmount, bo.getRecruitAmount()); | ||||
|         lqw.eq(bo.getRecruitStaffNum() != null, BgtProjectRecruit::getRecruitStaffNum, bo.getRecruitStaffNum()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getRecruitBeginTime()), BgtProjectRecruit::getRecruitBeginTime, bo.getRecruitBeginTime()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getRecruitContactPerson()), BgtProjectRecruit::getRecruitContactPerson, bo.getRecruitContactPerson()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getRecruitContactPhone()), BgtProjectRecruit::getRecruitContactPhone, bo.getRecruitContactPhone()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getSubDescribe()), BgtProjectRecruit::getSubDescribe, bo.getSubDescribe()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getRecruitRequirement()), BgtProjectRecruit::getRecruitRequirement, bo.getRecruitRequirement()); | ||||
|         return lqw; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean insert(BgtProjectRecruit bo) { | ||||
|         BgtProjectRecruit add = BeanUtil.toBean(bo, BgtProjectRecruit.class); | ||||
|         validEntityBeforeSave(add); | ||||
|         return save(add); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean update(BgtProjectRecruit bo) { | ||||
|         BgtProjectRecruit update = BeanUtil.toBean(bo, BgtProjectRecruit.class); | ||||
|         validEntityBeforeSave(update); | ||||
|         return updateById(update); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 保存前的数据校验 | ||||
|      * | ||||
|      * @param entity 实体类数据 | ||||
|      */ | ||||
|     private void validEntityBeforeSave(BgtProjectRecruit entity){ | ||||
|         //TODO 做一些数据校验,如唯一约束 | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|         return removeByIds(ids); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,132 @@ | ||||
| package com.ruoyi.bgt.service.impl; | ||||
|  | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.bgt.bo.BgtProjectTaskProgressQueryBo; | ||||
| import com.ruoyi.bgt.domain.BgtProjectTaskProgress; | ||||
| import com.ruoyi.bgt.domain.dto.BgtProjectTaskProgressQueryDTO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectTaskProgressDetailVO; | ||||
| import com.ruoyi.bgt.domain.vo.BgtProjectTaskProgressVO; | ||||
| import com.ruoyi.bgt.mapper.BgtProjectTaskProgressMapper; | ||||
| import com.ruoyi.bgt.service.IBgtProjectTaskProgressService; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.utils.PageUtils; | ||||
| import com.ruoyi.fbs.domain.FbsProjectTask; | ||||
| import com.ruoyi.fbs.service.IFbsProjectTaskService; | ||||
| import com.ruoyi.zbf.domain.ZbfProject; | ||||
| import com.ruoyi.zbf.service.IZbfProjectService; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
|  | ||||
| /** | ||||
|  * 包工头项目任务进度Service业务层处理 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-18 | ||||
|  */ | ||||
| @Service | ||||
| public class BgtProjectTaskProgressServiceImpl extends ServicePlusImpl<BgtProjectTaskProgressMapper, BgtProjectTaskProgress> implements IBgtProjectTaskProgressService { | ||||
|  | ||||
| 	@Autowired | ||||
| 	private IZbfProjectService zbfProjectService; | ||||
|  | ||||
| 	@Autowired | ||||
| 	private IFbsProjectTaskService fbsProjectTaskService; | ||||
|  | ||||
|  | ||||
|  | ||||
|     @Override | ||||
|     public BgtProjectTaskProgress queryById(Long id){ | ||||
|         return getById(id); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public TableDataInfo<BgtProjectTaskProgress> queryPageList(BgtProjectTaskProgressQueryBo bo) { | ||||
|         Page<BgtProjectTaskProgress> result = page(PageUtils.buildPage(), buildQueryWrapper(bo)); | ||||
|         return PageUtils.buildDataInfo(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<BgtProjectTaskProgress> queryList(BgtProjectTaskProgressQueryBo bo) { | ||||
|         return list(buildQueryWrapper(bo)); | ||||
|     } | ||||
|  | ||||
|     private LambdaQueryWrapper<BgtProjectTaskProgress> buildQueryWrapper(BgtProjectTaskProgressQueryBo bo) { | ||||
|         Map<String, Object> params = bo.getParams(); | ||||
|         LambdaQueryWrapper<BgtProjectTaskProgress> lqw = Wrappers.lambdaQuery(); | ||||
|         lqw.eq(bo.getProjectId() != null, BgtProjectTaskProgress::getProjectId, bo.getProjectId()); | ||||
|         lqw.eq(bo.getSectionId() != null, BgtProjectTaskProgress::getSectionId, bo.getSectionId()); | ||||
|         lqw.eq(bo.getSubId() != null, BgtProjectTaskProgress::getSubId, bo.getSubId()); | ||||
|         lqw.eq(bo.getTaskId() != null, BgtProjectTaskProgress::getTaskId, bo.getTaskId()); | ||||
|         lqw.like(StrUtil.isNotBlank(bo.getProgressName()), BgtProjectTaskProgress::getProgressName, bo.getProgressName()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getDirector()), BgtProjectTaskProgress::getDirector, bo.getDirector()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getUploader()), BgtProjectTaskProgress::getUploader, bo.getUploader()); | ||||
|         lqw.eq(bo.getProgress() != null, BgtProjectTaskProgress::getProgress, bo.getProgress()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getProgressDescribe()), BgtProjectTaskProgress::getProgressDescribe, bo.getProgressDescribe()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getProgressAnnex()), BgtProjectTaskProgress::getProgressAnnex, bo.getProgressAnnex()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getAuditStatus()), BgtProjectTaskProgress::getAuditStatus, bo.getAuditStatus()); | ||||
|         lqw.eq(bo.getReviewerId() != null, BgtProjectTaskProgress::getReviewerId, bo.getReviewerId()); | ||||
|         return lqw; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean insert(BgtProjectTaskProgress bo) { | ||||
|         BgtProjectTaskProgress add = BeanUtil.toBean(bo, BgtProjectTaskProgress.class); | ||||
|         validEntityBeforeSave(add); | ||||
|         return save(add); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean update(BgtProjectTaskProgress bo) { | ||||
|         BgtProjectTaskProgress update = BeanUtil.toBean(bo, BgtProjectTaskProgress.class); | ||||
|         validEntityBeforeSave(update); | ||||
|         return updateById(update); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 保存前的数据校验 | ||||
|      * | ||||
|      * @param entity 实体类数据 | ||||
|      */ | ||||
|     private void validEntityBeforeSave(BgtProjectTaskProgress entity){ | ||||
|         //TODO 做一些数据校验,如唯一约束 | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|         return removeByIds(ids); | ||||
|     } | ||||
|  | ||||
| 	@Override | ||||
| 	public TableDataInfo<BgtProjectTaskProgressVO> appQueryPageList(BgtProjectTaskProgressQueryDTO dto) { | ||||
| 		Page<BgtProjectTaskProgressQueryDTO> queryDTOPage = new Page<>(); | ||||
| 		queryDTOPage.setCurrent(dto.getPageNum()); | ||||
| 		queryDTOPage.setSize(dto.getPageSize()); | ||||
| 		Page<BgtProjectTaskProgressVO> queryVOPage = baseMapper.appQueryPageList(queryDTOPage, dto); | ||||
| 		return PageUtils.buildDataInfo(queryVOPage); | ||||
| 	} | ||||
|  | ||||
| 	@Override | ||||
| 	public BgtProjectTaskProgressDetailVO appQueryById(Long id) { | ||||
| 		BgtProjectTaskProgress progress = getById(id); | ||||
| 		BgtProjectTaskProgressDetailVO bean = BeanUtil.toBean(progress, BgtProjectTaskProgressDetailVO.class); | ||||
| 		ZbfProject project = zbfProjectService.getById(progress.getProjectId()); | ||||
| 		bean.setProjectName(project.getProjectName()); | ||||
| 		FbsProjectTask task = fbsProjectTaskService.getById(progress.getTaskId()); | ||||
| 		bean.setTaskName(task.getTaskName()); | ||||
| 		bean.setTaskAddress(task.getTaskAddress()); | ||||
| 		bean.setTaskStaffNum(task.getTaskStaffNum()); | ||||
| 		return bean; | ||||
| 	} | ||||
| } | ||||
| @ -3,28 +3,28 @@ package com.ruoyi.bgt.service.impl; | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import cn.hutool.core.collection.CollectionUtil; | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.bgt.bo.BgtUserQueryBo; | ||||
| import com.ruoyi.bgt.domain.dto.UserRealNameAuthenticationDTO; | ||||
| import com.ruoyi.bgt.mapper.BgtUserMapper; | ||||
| import com.ruoyi.bgt.service.IBgtUserService; | ||||
| import com.ruoyi.common.core.domain.entity.BgtUser; | ||||
| import com.ruoyi.common.domain.dto.AnnexDTO; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.exception.BaseException; | ||||
| import com.ruoyi.common.service.IAnnexService; | ||||
| import com.ruoyi.common.utils.PageUtils; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.wgz.common.SnowflakeIdUtil; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.stereotype.Service; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.ruoyi.bgt.bo.BgtUserQueryBo; | ||||
| import com.ruoyi.bgt.mapper.BgtUserMapper; | ||||
| import com.ruoyi.bgt.service.IBgtUserService; | ||||
| import org.springframework.transaction.annotation.Transactional; | ||||
|  | ||||
| import java.util.Arrays; | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
| import java.util.Collection; | ||||
|  | ||||
| /** | ||||
|  * APP包工头Service业务层处理 | ||||
| @ -81,6 +81,7 @@ public class BgtUserServiceImpl extends ServicePlusImpl<BgtUserMapper, BgtUser> | ||||
|     public Boolean insert(BgtUser bo) { | ||||
|         BgtUser add = BeanUtil.toBean(bo, BgtUser.class); | ||||
|         validEntityBeforeSave(add); | ||||
| 		add.setUserId(SnowflakeIdUtil.generateId()); | ||||
|         return save(add); | ||||
|     } | ||||
|  | ||||
|  | ||||
| @ -1,20 +1,15 @@ | ||||
| package com.ruoyi.common.domain; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import com.ruoyi.common.annotation.Excel; | ||||
|  | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
| import java.io.Serializable; | ||||
| import java.util.Date; | ||||
| import java.math.BigDecimal; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
| import java.time.LocalTime; | ||||
| import java.time.LocalDate; | ||||
|  | ||||
| /** | ||||
|  * 附件对象 common_annex | ||||
| @ -33,8 +28,8 @@ public class Annex implements Serializable { | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     @TableId(value = "id") | ||||
|     private String id; | ||||
| 	@TableId(value = "id", type = IdType.AUTO) | ||||
| 	private Long id; | ||||
|  | ||||
|     /** 唯一标识 */ | ||||
|     @Excel(name = "唯一标识") | ||||
|  | ||||
| @ -0,0 +1,42 @@ | ||||
| package com.ruoyi.fbs.bo; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务申请分页查询对象 fbs_project_task_apply | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
|  | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @ApiModel("分包商项目任务申请分页查询对象") | ||||
| public class FbsProjectTaskApplyQueryBo extends BaseEntity { | ||||
|  | ||||
| 	/** 分页大小 */ | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
| 	/** 排序列 */ | ||||
| 	@ApiModelProperty("排序列") | ||||
| 	private String orderByColumn; | ||||
| 	/** 排序的方向desc或者asc */ | ||||
| 	@ApiModelProperty(value = "排序的方向", example = "asc,desc") | ||||
| 	private String isAsc; | ||||
|  | ||||
|  | ||||
| 	/** 任务ID */ | ||||
| 	@ApiModelProperty("任务ID") | ||||
| 	private Long taskId; | ||||
| 	/** 包工头用户ID */ | ||||
| 	@ApiModelProperty("包工头用户ID") | ||||
| 	private Long userId; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,78 @@ | ||||
| package com.ruoyi.fbs.bo; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务分页查询对象 fbs_project_task | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
|  | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @ApiModel("分包商项目任务分页查询对象") | ||||
| public class FbsProjectTaskQueryBo extends BaseEntity { | ||||
|  | ||||
| 	/** 分页大小 */ | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
| 	/** 排序列 */ | ||||
| 	@ApiModelProperty("排序列") | ||||
| 	private String orderByColumn; | ||||
| 	/** 排序的方向desc或者asc */ | ||||
| 	@ApiModelProperty(value = "排序的方向", example = "asc,desc") | ||||
| 	private String isAsc; | ||||
|  | ||||
|  | ||||
| 	/** 项目ID */ | ||||
| 	@ApiModelProperty("项目ID") | ||||
| 	private Long projectId; | ||||
| 	/** 标段ID */ | ||||
| 	@ApiModelProperty("标段ID") | ||||
| 	private Long sectionId; | ||||
| 	/** 分包ID */ | ||||
| 	@ApiModelProperty("分包ID") | ||||
| 	private Long subId; | ||||
| 	/** 任务名称 */ | ||||
| 	@ApiModelProperty("任务名称") | ||||
| 	private String taskName; | ||||
| 	/** 任务地址 */ | ||||
| 	@ApiModelProperty("任务地址") | ||||
| 	private String taskAddress; | ||||
| 	/** 任务金额 */ | ||||
| 	@ApiModelProperty("任务金额") | ||||
| 	private Long taskAmount; | ||||
| 	/** 用工数量 */ | ||||
| 	@ApiModelProperty("用工数量") | ||||
| 	private Long taskStaffNum; | ||||
| 	/** 任务开始时间 */ | ||||
| 	@ApiModelProperty("任务开始时间") | ||||
| 	private String taskBeginTime; | ||||
| 	/** 联系人 */ | ||||
| 	@ApiModelProperty("联系人") | ||||
| 	private String taskContactPerson; | ||||
| 	/** 联系电话 */ | ||||
| 	@ApiModelProperty("联系电话") | ||||
| 	private String taskContactPhone; | ||||
| 	/** 分包描述 */ | ||||
| 	@ApiModelProperty("任务描述") | ||||
| 	private String taskDescribe; | ||||
| 	/** 任务图片 */ | ||||
| 	@ApiModelProperty("任务图片") | ||||
| 	private String taskImg; | ||||
| 	/** 资质要求 */ | ||||
| 	@ApiModelProperty("资质要求") | ||||
| 	private String qualification; | ||||
| 	/** 包工头用户ID */ | ||||
| 	@ApiModelProperty("包工头用户ID") | ||||
| 	private Long userId; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,142 @@ | ||||
| package com.ruoyi.fbs.domain; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import com.ruoyi.common.annotation.Excel; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务对象 fbs_project_task | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @TableName("fbs_project_task") | ||||
| @ApiModel("分包商项目任务视图对象") | ||||
| public class FbsProjectTask implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     @TableId(value = "id", type = IdType.AUTO) | ||||
|     private Long id; | ||||
|  | ||||
|     /** 项目ID */ | ||||
|     @Excel(name = "项目ID") | ||||
|     @ApiModelProperty("项目ID") | ||||
|     private Long projectId; | ||||
|  | ||||
|     /** 标段ID */ | ||||
|     @Excel(name = "标段ID") | ||||
|     @ApiModelProperty("标段ID") | ||||
|     private Long sectionId; | ||||
|  | ||||
|     /** 分包ID */ | ||||
|     @Excel(name = "分包ID") | ||||
|     @ApiModelProperty("分包ID") | ||||
|     private Long subId; | ||||
|  | ||||
|     /** 任务名称 */ | ||||
|     @Excel(name = "任务名称") | ||||
|     @ApiModelProperty("任务名称") | ||||
|     private String taskName; | ||||
|  | ||||
|     /** 任务地址 */ | ||||
|     @Excel(name = "任务地址") | ||||
|     @ApiModelProperty("任务地址") | ||||
|     private String taskAddress; | ||||
|  | ||||
|     /** 任务金额 */ | ||||
|     @Excel(name = "任务金额") | ||||
|     @ApiModelProperty("任务金额") | ||||
|     private Long taskAmount; | ||||
|  | ||||
|     /** 用工数量 */ | ||||
|     @Excel(name = "用工数量") | ||||
|     @ApiModelProperty("用工数量") | ||||
|     private Long taskStaffNum; | ||||
|  | ||||
|     /** 任务开始时间 */ | ||||
|     @Excel(name = "任务开始时间") | ||||
|     @ApiModelProperty("任务开始时间") | ||||
|     private String taskBeginTime; | ||||
|  | ||||
|     /** 联系人 */ | ||||
|     @Excel(name = "联系人") | ||||
|     @ApiModelProperty("联系人") | ||||
|     private String taskContactPerson; | ||||
|  | ||||
|     /** 联系电话 */ | ||||
|     @Excel(name = "联系电话") | ||||
|     @ApiModelProperty("联系电话") | ||||
|     private String taskContactPhone; | ||||
|  | ||||
|     /** 分包描述 */ | ||||
|     @Excel(name = "任务描述") | ||||
|     @ApiModelProperty("任务描述") | ||||
|     private String taskDescribe; | ||||
|  | ||||
|     /** 任务图片 */ | ||||
|     @Excel(name = "任务图片") | ||||
|     @ApiModelProperty("任务图片") | ||||
|     private String taskImg; | ||||
|  | ||||
|     /** 资质要求 */ | ||||
|     @Excel(name = "资质要求") | ||||
|     @ApiModelProperty("资质要求") | ||||
|     private String qualification; | ||||
|  | ||||
|     /** 包工头用户ID */ | ||||
|     @Excel(name = "包工头用户ID") | ||||
|     @ApiModelProperty("包工头用户ID") | ||||
|     private Long userId; | ||||
|  | ||||
| 	@Excel(name = "任务状态(1进行中 2已完成)") | ||||
| 	@ApiModelProperty("任务状态(1进行中 2已完成)") | ||||
| 	private String status; | ||||
|  | ||||
|     /** 删除标志(0代表存在 2代表删除) */ | ||||
|     @Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除") | ||||
|     @ApiModelProperty("删除标志(0代表存在 2代表删除)") | ||||
|     private String delFlag; | ||||
|  | ||||
|     /** 创建者 */ | ||||
|     @Excel(name = "创建者") | ||||
|     @ApiModelProperty("创建者") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private String createBy; | ||||
|  | ||||
|     /** 创建时间 */ | ||||
|     @Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("创建时间") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
|     /** 更新者 */ | ||||
|     @Excel(name = "更新者") | ||||
|     @ApiModelProperty("更新者") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private String updateBy; | ||||
|  | ||||
|     /** 更新时间 */ | ||||
|     @Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("更新时间") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private LocalDateTime updateTime; | ||||
|  | ||||
|     /** 备注 */ | ||||
|     @Excel(name = "备注") | ||||
|     @ApiModelProperty("备注") | ||||
|     private String remark; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,78 @@ | ||||
| package com.ruoyi.fbs.domain; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import com.ruoyi.common.annotation.Excel; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务申请对象 fbs_project_task_apply | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @TableName("fbs_project_task_apply") | ||||
| @ApiModel("分包商项目任务申请视图对象") | ||||
| public class FbsProjectTaskApply implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     @TableId(value = "id") | ||||
|     private Long id; | ||||
|  | ||||
|     /** 任务ID */ | ||||
|     @Excel(name = "任务ID") | ||||
|     @ApiModelProperty("任务ID") | ||||
|     private Long taskId; | ||||
|  | ||||
|     /** 包工头用户ID */ | ||||
|     @Excel(name = "包工头用户ID") | ||||
|     @ApiModelProperty("包工头用户ID") | ||||
|     private Long userId; | ||||
|  | ||||
|     /** 删除标志(0代表存在 2代表删除) */ | ||||
|     @Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除") | ||||
|     @ApiModelProperty("删除标志(0代表存在 2代表删除)") | ||||
|     private String delFlag; | ||||
|  | ||||
|     /** 创建者 */ | ||||
|     @Excel(name = "创建者") | ||||
|     @ApiModelProperty("创建者") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private String createBy; | ||||
|  | ||||
|     /** 创建时间 */ | ||||
|     @Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("创建时间") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
|     /** 更新者 */ | ||||
|     @Excel(name = "更新者") | ||||
|     @ApiModelProperty("更新者") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private String updateBy; | ||||
|  | ||||
|     /** 更新时间 */ | ||||
|     @Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("更新时间") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private LocalDateTime updateTime; | ||||
|  | ||||
|     /** 备注 */ | ||||
|     @Excel(name = "备注") | ||||
|     @ApiModelProperty("备注") | ||||
|     private String remark; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,24 @@ | ||||
| package com.ruoyi.fbs.domain.dto; | ||||
|  | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
|  | ||||
| @Data | ||||
| @ApiModel("app项目任务列表查询条件") | ||||
| public class AppTaskDTO { | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
|  | ||||
| 	@ApiModelProperty("任务名称") | ||||
| 	private String taskName; | ||||
|  | ||||
| 	@ApiModelProperty("承接人") | ||||
| 	private Long userId; | ||||
|  | ||||
| 	@ApiModelProperty("任务状态(1进行中 2已完成)") | ||||
| 	private String status; | ||||
| } | ||||
| @ -0,0 +1,16 @@ | ||||
| package com.ruoyi.fbs.domain.dto; | ||||
|  | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
|  | ||||
| @Data | ||||
| @ApiModel("app申请承接任务") | ||||
| public class TaskApplyDTO { | ||||
|  | ||||
| 	@ApiModelProperty("任务ID") | ||||
| 	private Long taskId; | ||||
|  | ||||
| 	@ApiModelProperty("包工头用户ID") | ||||
| 	private Long userId; | ||||
| } | ||||
| @ -0,0 +1,69 @@ | ||||
| package com.ruoyi.fbs.domain.vo; | ||||
|  | ||||
| import com.fasterxml.jackson.annotation.JsonFormat; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
|  | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
|  | ||||
| @Data | ||||
| @ApiModel("包工头项目任务列表") | ||||
| public class AppTaskDetailVO { | ||||
|  | ||||
| 	@ApiModelProperty("主键ID") | ||||
| 	private Long id; | ||||
|  | ||||
| 	/** 任务名称 */ | ||||
| 	@ApiModelProperty("任务名称") | ||||
| 	private String taskName; | ||||
|  | ||||
| 	/** 任务地址 */ | ||||
| 	@ApiModelProperty("任务地址") | ||||
| 	private String taskAddress; | ||||
|  | ||||
| 	/** 任务金额 */ | ||||
| 	@ApiModelProperty("任务金额") | ||||
| 	private Long taskAmount; | ||||
|  | ||||
| 	/** 用工数量 */ | ||||
| 	@ApiModelProperty("用工数量") | ||||
| 	private Long taskStaffNum; | ||||
|  | ||||
| 	/** 任务开始时间 */ | ||||
| 	@ApiModelProperty("任务开始时间") | ||||
| 	private String taskBeginTime; | ||||
|  | ||||
| 	/** 联系人 */ | ||||
| 	@ApiModelProperty("联系人") | ||||
| 	private String taskContactPerson; | ||||
|  | ||||
| 	/** 联系电话 */ | ||||
| 	@ApiModelProperty("联系电话") | ||||
| 	private String taskContactPhone; | ||||
|  | ||||
| 	/** 分包描述 */ | ||||
| 	@ApiModelProperty("任务描述") | ||||
| 	private String taskDescribe; | ||||
|  | ||||
| 	/** 任务图片 */ | ||||
| 	@ApiModelProperty("任务图片") | ||||
| 	private String taskImg; | ||||
|  | ||||
| 	/** 资质要求 */ | ||||
| 	@ApiModelProperty("资质要求") | ||||
| 	private String qualification; | ||||
|  | ||||
| 	/** 备注 */ | ||||
| 	@ApiModelProperty("备注") | ||||
| 	private String remark; | ||||
|  | ||||
| 	@ApiModelProperty("项目名") | ||||
| 	private String projectName; | ||||
|  | ||||
| 	@ApiModelProperty("发布时间") | ||||
| 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") | ||||
| 	private LocalDateTime createTime; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,39 @@ | ||||
| package com.ruoyi.fbs.domain.vo; | ||||
|  | ||||
| import com.fasterxml.jackson.annotation.JsonFormat; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
|  | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
|  | ||||
| @Data | ||||
| @ApiModel("包工头项目任务列表") | ||||
| public class AppTaskVO { | ||||
|  | ||||
| 	@ApiModelProperty("主键ID") | ||||
| 	private Long id; | ||||
|  | ||||
| 	@ApiModelProperty("任务名称") | ||||
| 	private String taskName; | ||||
| 	/** 任务地址 */ | ||||
| 	@ApiModelProperty("任务地址") | ||||
| 	private String taskAddress; | ||||
| 	/** 任务金额 */ | ||||
| 	@ApiModelProperty("任务金额") | ||||
| 	private Long taskAmount; | ||||
| 	/** 用工数量 */ | ||||
| 	@ApiModelProperty("用工数量") | ||||
| 	private Long taskStaffNum; | ||||
|  | ||||
| 	@ApiModelProperty("项目名") | ||||
| 	private String projectName; | ||||
|  | ||||
| 	@ApiModelProperty("发布时间") | ||||
| 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") | ||||
| 	private LocalDateTime createTime; | ||||
|  | ||||
| 	@ApiModelProperty("申请数量") | ||||
| 	private Integer applyNum; | ||||
| } | ||||
| @ -0,0 +1,18 @@ | ||||
| package com.ruoyi.fbs.mapper; | ||||
|  | ||||
| import com.ruoyi.fbs.domain.FbsProjectTaskApply; | ||||
| import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; | ||||
| import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache; | ||||
| import org.apache.ibatis.annotations.CacheNamespace; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务申请Mapper接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| // 如使需切换数据源 请勿使用缓存 会造成数据不一致现象 | ||||
| @CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class) | ||||
| public interface FbsProjectTaskApplyMapper extends BaseMapperPlus<FbsProjectTaskApply> { | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,24 @@ | ||||
| package com.ruoyi.fbs.mapper; | ||||
|  | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache; | ||||
| import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; | ||||
| import com.ruoyi.fbs.domain.FbsProjectTask; | ||||
| import com.ruoyi.fbs.domain.dto.AppTaskDTO; | ||||
| import com.ruoyi.fbs.domain.vo.AppTaskVO; | ||||
| import org.apache.ibatis.annotations.CacheNamespace; | ||||
| import org.apache.ibatis.annotations.Param; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务Mapper接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| // 如使需切换数据源 请勿使用缓存 会造成数据不一致现象 | ||||
| @CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class) | ||||
| public interface FbsProjectTaskMapper extends BaseMapperPlus<FbsProjectTask> { | ||||
|  | ||||
| 	Page<AppTaskVO> appQueryPageList(@Param("page") Page<AppTaskDTO> page, @Param("dto") AppTaskDTO dto); | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,58 @@ | ||||
| package com.ruoyi.fbs.service; | ||||
|  | ||||
| import com.ruoyi.common.core.mybatisplus.core.IServicePlus; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.fbs.bo.FbsProjectTaskApplyQueryBo; | ||||
| import com.ruoyi.fbs.domain.FbsProjectTaskApply; | ||||
| import com.ruoyi.fbs.domain.dto.TaskApplyDTO; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务申请Service接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| public interface IFbsProjectTaskApplyService extends IServicePlus<FbsProjectTaskApply> { | ||||
|     /** | ||||
|      * 查询单个 | ||||
|      * @return | ||||
|      */ | ||||
|     FbsProjectTaskApply queryById(Long id); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     TableDataInfo<FbsProjectTaskApply> queryPageList(FbsProjectTaskApplyQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     List<FbsProjectTaskApply> queryList(FbsProjectTaskApplyQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据新增业务对象插入分包商项目任务申请 | ||||
|      * @param bo 分包商项目任务申请新增业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean insert(FbsProjectTaskApply bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据编辑业务对象修改分包商项目任务申请 | ||||
|      * @param bo 分包商项目任务申请编辑业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean update(FbsProjectTaskApply bo); | ||||
|  | ||||
|     /** | ||||
|      * 校验并删除数据 | ||||
|      * @param ids 主键集合 | ||||
|      * @param isValid 是否校验,true-删除前校验,false-不校验 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); | ||||
|  | ||||
| 	Boolean appTaskApply(TaskApplyDTO dto); | ||||
| } | ||||
| @ -0,0 +1,67 @@ | ||||
| package com.ruoyi.fbs.service; | ||||
|  | ||||
|  | ||||
| import com.ruoyi.common.core.mybatisplus.core.IServicePlus; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.fbs.bo.FbsProjectTaskQueryBo; | ||||
| import com.ruoyi.fbs.domain.FbsProjectTask; | ||||
| import com.ruoyi.fbs.domain.dto.AppTaskDTO; | ||||
| import com.ruoyi.fbs.domain.vo.AppTaskDetailVO; | ||||
| import com.ruoyi.fbs.domain.vo.AppTaskVO; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务Service接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| public interface IFbsProjectTaskService extends IServicePlus<FbsProjectTask> { | ||||
|     /** | ||||
|      * 查询单个 | ||||
|      * @return | ||||
|      */ | ||||
|     FbsProjectTask queryById(Long id); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     TableDataInfo<FbsProjectTask> queryPageList(FbsProjectTaskQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     List<FbsProjectTask> queryList(FbsProjectTaskQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据新增业务对象插入分包商项目任务 | ||||
|      * @param bo 分包商项目任务新增业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean insert(FbsProjectTask bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据编辑业务对象修改分包商项目任务 | ||||
|      * @param bo 分包商项目任务编辑业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean update(FbsProjectTask bo); | ||||
|  | ||||
|     /** | ||||
|      * 校验并删除数据 | ||||
|      * @param ids 主键集合 | ||||
|      * @param isValid 是否校验,true-删除前校验,false-不校验 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); | ||||
|  | ||||
|  | ||||
| 	/** | ||||
| 	 * 包工头查询列表 | ||||
| 	 */ | ||||
| 	TableDataInfo<AppTaskVO> appQueryPageList(AppTaskDTO dto); | ||||
|  | ||||
| 	AppTaskDetailVO appQueryById(Long id); | ||||
| } | ||||
| @ -0,0 +1,96 @@ | ||||
| package com.ruoyi.fbs.service.impl; | ||||
|  | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.utils.PageUtils; | ||||
| import com.ruoyi.fbs.bo.FbsProjectTaskApplyQueryBo; | ||||
| import com.ruoyi.fbs.domain.FbsProjectTaskApply; | ||||
| import com.ruoyi.fbs.domain.dto.TaskApplyDTO; | ||||
| import com.ruoyi.fbs.mapper.FbsProjectTaskApplyMapper; | ||||
| import com.ruoyi.fbs.service.IFbsProjectTaskApplyService; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务申请Service业务层处理 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Service | ||||
| public class FbsProjectTaskApplyServiceImpl extends ServicePlusImpl<FbsProjectTaskApplyMapper, FbsProjectTaskApply> implements IFbsProjectTaskApplyService { | ||||
|  | ||||
|     @Override | ||||
|     public FbsProjectTaskApply queryById(Long id){ | ||||
|         return getById(id); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public TableDataInfo<FbsProjectTaskApply> queryPageList(FbsProjectTaskApplyQueryBo bo) { | ||||
|         Page<FbsProjectTaskApply> result = page(PageUtils.buildPage(), buildQueryWrapper(bo)); | ||||
|         return PageUtils.buildDataInfo(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<FbsProjectTaskApply> queryList(FbsProjectTaskApplyQueryBo bo) { | ||||
|         return list(buildQueryWrapper(bo)); | ||||
|     } | ||||
|  | ||||
|     private LambdaQueryWrapper<FbsProjectTaskApply> buildQueryWrapper(FbsProjectTaskApplyQueryBo bo) { | ||||
|         Map<String, Object> params = bo.getParams(); | ||||
|         LambdaQueryWrapper<FbsProjectTaskApply> lqw = Wrappers.lambdaQuery(); | ||||
|         lqw.eq(bo.getTaskId() != null, FbsProjectTaskApply::getTaskId, bo.getTaskId()); | ||||
|         lqw.eq(bo.getUserId() != null, FbsProjectTaskApply::getUserId, bo.getUserId()); | ||||
|         return lqw; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean insert(FbsProjectTaskApply bo) { | ||||
|         FbsProjectTaskApply add = BeanUtil.toBean(bo, FbsProjectTaskApply.class); | ||||
|         validEntityBeforeSave(add); | ||||
|         return save(add); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean update(FbsProjectTaskApply bo) { | ||||
|         FbsProjectTaskApply update = BeanUtil.toBean(bo, FbsProjectTaskApply.class); | ||||
|         validEntityBeforeSave(update); | ||||
|         return updateById(update); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 保存前的数据校验 | ||||
|      * | ||||
|      * @param entity 实体类数据 | ||||
|      */ | ||||
|     private void validEntityBeforeSave(FbsProjectTaskApply entity){ | ||||
| 		LambdaQueryWrapper<FbsProjectTaskApply> wrapper = new LambdaQueryWrapper<>(); | ||||
| 		wrapper.eq(FbsProjectTaskApply::getTaskId, entity.getTaskId()); | ||||
| 		wrapper.eq(FbsProjectTaskApply::getUserId, entity.getUserId()); | ||||
| 		List<FbsProjectTaskApply> list = baseMapper.selectList(wrapper); | ||||
|  | ||||
| 		//TODO 做一些数据校验,如唯一约束 | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|         return removeByIds(ids); | ||||
|     } | ||||
|  | ||||
| 	@Override | ||||
| 	public Boolean appTaskApply(TaskApplyDTO dto) { | ||||
| 		FbsProjectTaskApply fbsProjectTaskApply = BeanUtil.copyProperties(dto, FbsProjectTaskApply.class); | ||||
| 		validEntityBeforeSave(fbsProjectTaskApply); | ||||
| 		return null; | ||||
| 	} | ||||
| } | ||||
| @ -0,0 +1,123 @@ | ||||
| package com.ruoyi.fbs.service.impl; | ||||
|  | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.utils.PageUtils; | ||||
| import com.ruoyi.fbs.bo.FbsProjectTaskQueryBo; | ||||
| import com.ruoyi.fbs.domain.FbsProjectTask; | ||||
| import com.ruoyi.fbs.domain.dto.AppTaskDTO; | ||||
| import com.ruoyi.fbs.domain.vo.AppTaskDetailVO; | ||||
| import com.ruoyi.fbs.domain.vo.AppTaskVO; | ||||
| import com.ruoyi.fbs.mapper.FbsProjectTaskMapper; | ||||
| import com.ruoyi.fbs.service.IFbsProjectTaskService; | ||||
| import com.ruoyi.zbf.domain.ZbfProject; | ||||
| import com.ruoyi.zbf.service.IZbfProjectService; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
|  | ||||
| /** | ||||
|  * 分包商项目任务Service业务层处理 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Service | ||||
| public class FbsProjectTaskServiceImpl extends ServicePlusImpl<FbsProjectTaskMapper, FbsProjectTask> implements IFbsProjectTaskService { | ||||
|  | ||||
| 	@Autowired | ||||
| 	private IZbfProjectService zbfProjectService; | ||||
|  | ||||
|     @Override | ||||
|     public FbsProjectTask queryById(Long id){ | ||||
|         return getById(id); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public TableDataInfo<FbsProjectTask> queryPageList(FbsProjectTaskQueryBo bo) { | ||||
|         Page<FbsProjectTask> result = page(PageUtils.buildPage(), buildQueryWrapper(bo)); | ||||
|         return PageUtils.buildDataInfo(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<FbsProjectTask> queryList(FbsProjectTaskQueryBo bo) { | ||||
|         return list(buildQueryWrapper(bo)); | ||||
|     } | ||||
|  | ||||
|     private LambdaQueryWrapper<FbsProjectTask> buildQueryWrapper(FbsProjectTaskQueryBo bo) { | ||||
|         Map<String, Object> params = bo.getParams(); | ||||
|         LambdaQueryWrapper<FbsProjectTask> lqw = Wrappers.lambdaQuery(); | ||||
|         lqw.eq(bo.getProjectId() != null, FbsProjectTask::getProjectId, bo.getProjectId()); | ||||
|         lqw.eq(bo.getSectionId() != null, FbsProjectTask::getSectionId, bo.getSectionId()); | ||||
|         lqw.eq(bo.getSubId() != null, FbsProjectTask::getSubId, bo.getSubId()); | ||||
|         lqw.like(StrUtil.isNotBlank(bo.getTaskName()), FbsProjectTask::getTaskName, bo.getTaskName()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getTaskAddress()), FbsProjectTask::getTaskAddress, bo.getTaskAddress()); | ||||
|         lqw.eq(bo.getTaskAmount() != null, FbsProjectTask::getTaskAmount, bo.getTaskAmount()); | ||||
|         lqw.eq(bo.getTaskStaffNum() != null, FbsProjectTask::getTaskStaffNum, bo.getTaskStaffNum()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getTaskBeginTime()), FbsProjectTask::getTaskBeginTime, bo.getTaskBeginTime()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getTaskContactPerson()), FbsProjectTask::getTaskContactPerson, bo.getTaskContactPerson()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getTaskContactPhone()), FbsProjectTask::getTaskContactPhone, bo.getTaskContactPhone()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getTaskDescribe()), FbsProjectTask::getTaskDescribe, bo.getTaskDescribe()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getTaskImg()), FbsProjectTask::getTaskImg, bo.getTaskImg()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getQualification()), FbsProjectTask::getQualification, bo.getQualification()); | ||||
|         lqw.eq(bo.getUserId() != null, FbsProjectTask::getUserId, bo.getUserId()); | ||||
|         return lqw; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean insert(FbsProjectTask bo) { | ||||
|         FbsProjectTask add = BeanUtil.toBean(bo, FbsProjectTask.class); | ||||
|         validEntityBeforeSave(add); | ||||
|         return save(add); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean update(FbsProjectTask bo) { | ||||
|         FbsProjectTask update = BeanUtil.toBean(bo, FbsProjectTask.class); | ||||
|         validEntityBeforeSave(update); | ||||
|         return updateById(update); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 保存前的数据校验 | ||||
|      * | ||||
|      * @param entity 实体类数据 | ||||
|      */ | ||||
|     private void validEntityBeforeSave(FbsProjectTask entity){ | ||||
|         //TODO 做一些数据校验,如唯一约束 | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|         return removeByIds(ids); | ||||
|     } | ||||
|  | ||||
| 	@Override | ||||
| 	public TableDataInfo<AppTaskVO> appQueryPageList(AppTaskDTO dto) { | ||||
| 		Page<AppTaskDTO> appTaskDTOPage = new Page<>(); | ||||
| 		appTaskDTOPage.setCurrent(dto.getPageNum()); | ||||
| 		appTaskDTOPage.setSize(dto.getPageSize()); | ||||
| 		Page<AppTaskVO> appTaskVOPage = baseMapper.appQueryPageList(appTaskDTOPage, dto); | ||||
| 		return PageUtils.buildDataInfo(appTaskVOPage); | ||||
| 	} | ||||
|  | ||||
| 	@Override | ||||
| 	public AppTaskDetailVO appQueryById(Long id) { | ||||
| 		FbsProjectTask byId = getById(id); | ||||
| 		AppTaskDetailVO appTaskDetailVO = BeanUtil.copyProperties(byId, AppTaskDetailVO.class); | ||||
| 		ZbfProject project = zbfProjectService.getById(byId.getProjectId()); | ||||
| 		appTaskDetailVO.setProjectName(project.getProjectName()); | ||||
| 		return appTaskDetailVO; | ||||
| 	} | ||||
| } | ||||
| @ -0,0 +1,60 @@ | ||||
| package com.ruoyi.zbf.bo; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目分页查询对象 zbf_project | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
|  | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @ApiModel("总包方项目分页查询对象") | ||||
| public class ZbfProjectQueryBo extends BaseEntity { | ||||
|  | ||||
| 	/** 分页大小 */ | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
| 	/** 排序列 */ | ||||
| 	@ApiModelProperty("排序列") | ||||
| 	private String orderByColumn; | ||||
| 	/** 排序的方向desc或者asc */ | ||||
| 	@ApiModelProperty(value = "排序的方向", example = "asc,desc") | ||||
| 	private String isAsc; | ||||
|  | ||||
|  | ||||
| 	/** 唯一标识 */ | ||||
| 	@ApiModelProperty("唯一标识") | ||||
| 	private Long userId; | ||||
| 	/** 单位名称 */ | ||||
| 	@ApiModelProperty("单位名称") | ||||
| 	private String unitName; | ||||
| 	/** 统一社会信用代码 */ | ||||
| 	@ApiModelProperty("统一社会信用代码") | ||||
| 	private String creditCode; | ||||
| 	/** 项目名称 */ | ||||
| 	@ApiModelProperty("项目名称") | ||||
| 	private String projectName; | ||||
| 	/** 项目图片 */ | ||||
| 	@ApiModelProperty("项目图片") | ||||
| 	private String projectImg; | ||||
| 	/** 项目地址 */ | ||||
| 	@ApiModelProperty("项目地址") | ||||
| 	private String projectAddress; | ||||
| 	/** 联系人 */ | ||||
| 	@ApiModelProperty("联系人") | ||||
| 	private String contactPerson; | ||||
| 	/** 联系电话 */ | ||||
| 	@ApiModelProperty("联系电话") | ||||
| 	private String contactPhone; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,52 @@ | ||||
| package com.ruoyi.zbf.bo; | ||||
|  | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
|  | ||||
| import java.time.LocalDateTime; | ||||
| import java.time.LocalTime; | ||||
| import java.time.LocalDate; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| import java.util.Date; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目标段分页查询对象 zbf_project_section | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
|  | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @ApiModel("总包方项目标段分页查询对象") | ||||
| public class ZbfProjectSectionQueryBo extends BaseEntity { | ||||
|  | ||||
| 	/** 分页大小 */ | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
| 	/** 排序列 */ | ||||
| 	@ApiModelProperty("排序列") | ||||
| 	private String orderByColumn; | ||||
| 	/** 排序的方向desc或者asc */ | ||||
| 	@ApiModelProperty(value = "排序的方向", example = "asc,desc") | ||||
| 	private String isAsc; | ||||
|  | ||||
|  | ||||
| 	/** 项目ID */ | ||||
| 	@ApiModelProperty("项目ID") | ||||
| 	private Long projectId; | ||||
| 	/** 标段名称 */ | ||||
| 	@ApiModelProperty("标段名称") | ||||
| 	private String sectionName; | ||||
| 	/** 标段描述 */ | ||||
| 	@ApiModelProperty("标段描述") | ||||
| 	private String sectionDescribe; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,57 @@ | ||||
| package com.ruoyi.zbf.bo; | ||||
|  | ||||
| import com.ruoyi.common.core.domain.BaseEntity; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目分包分页查询对象 zbf_project_subcontracting | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
|  | ||||
| @Data | ||||
| @EqualsAndHashCode(callSuper = true) | ||||
| @ApiModel("总包方项目分包分页查询对象") | ||||
| public class ZbfProjectSubcontractingQueryBo extends BaseEntity { | ||||
|  | ||||
| 	/** 分页大小 */ | ||||
| 	@ApiModelProperty("分页大小") | ||||
| 	private Integer pageSize; | ||||
| 	/** 当前页数 */ | ||||
| 	@ApiModelProperty("当前页数") | ||||
| 	private Integer pageNum; | ||||
| 	/** 排序列 */ | ||||
| 	@ApiModelProperty("排序列") | ||||
| 	private String orderByColumn; | ||||
| 	/** 排序的方向desc或者asc */ | ||||
| 	@ApiModelProperty(value = "排序的方向", example = "asc,desc") | ||||
| 	private String isAsc; | ||||
|  | ||||
|  | ||||
| 	/** 项目ID */ | ||||
| 	@ApiModelProperty("项目ID") | ||||
| 	private Long projectId; | ||||
| 	/** 标段ID */ | ||||
| 	@ApiModelProperty("标段ID") | ||||
| 	private Long sectionId; | ||||
| 	/** 分包主题 */ | ||||
| 	@ApiModelProperty("分包主题") | ||||
| 	private String subName; | ||||
| 	/** 分包描述 */ | ||||
| 	@ApiModelProperty("分包描述") | ||||
| 	private String subDescribe; | ||||
| 	/** 分包金额 */ | ||||
| 	@ApiModelProperty("分包金额") | ||||
| 	private Long subAmount; | ||||
| 	/** 资质要求 */ | ||||
| 	@ApiModelProperty("资质要求") | ||||
| 	private String qualification; | ||||
| 	/** 分包商用户ID */ | ||||
| 	@ApiModelProperty("分包商用户ID") | ||||
| 	private Long userId; | ||||
|  | ||||
| } | ||||
							
								
								
									
										109
									
								
								ruoyi-system/src/main/java/com/ruoyi/zbf/domain/ZbfProject.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								ruoyi-system/src/main/java/com/ruoyi/zbf/domain/ZbfProject.java
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,109 @@ | ||||
| package com.ruoyi.zbf.domain; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import com.ruoyi.common.annotation.Excel; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目对象 zbf_project | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @TableName("zbf_project") | ||||
| @ApiModel("总包方项目视图对象") | ||||
| public class ZbfProject implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     @TableId(value = "id") | ||||
|     private Long id; | ||||
|  | ||||
|     /** 唯一标识 */ | ||||
|     @Excel(name = "唯一标识") | ||||
|     @ApiModelProperty("唯一标识") | ||||
|     private Long userId; | ||||
|  | ||||
|     /** 单位名称 */ | ||||
|     @Excel(name = "单位名称") | ||||
|     @ApiModelProperty("单位名称") | ||||
|     private String unitName; | ||||
|  | ||||
|     /** 统一社会信用代码 */ | ||||
|     @Excel(name = "统一社会信用代码") | ||||
|     @ApiModelProperty("统一社会信用代码") | ||||
|     private String creditCode; | ||||
|  | ||||
|     /** 项目名称 */ | ||||
|     @Excel(name = "项目名称") | ||||
|     @ApiModelProperty("项目名称") | ||||
|     private String projectName; | ||||
|  | ||||
|     /** 项目图片 */ | ||||
|     @Excel(name = "项目图片") | ||||
|     @ApiModelProperty("项目图片") | ||||
|     private String projectImg; | ||||
|  | ||||
|     /** 项目地址 */ | ||||
|     @Excel(name = "项目地址") | ||||
|     @ApiModelProperty("项目地址") | ||||
|     private String projectAddress; | ||||
|  | ||||
|     /** 联系人 */ | ||||
|     @Excel(name = "联系人") | ||||
|     @ApiModelProperty("联系人") | ||||
|     private String contactPerson; | ||||
|  | ||||
|     /** 联系电话 */ | ||||
|     @Excel(name = "联系电话") | ||||
|     @ApiModelProperty("联系电话") | ||||
|     private String contactPhone; | ||||
|  | ||||
|     /** 删除标志(0代表存在 2代表删除) */ | ||||
|     @Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除") | ||||
|     @ApiModelProperty("删除标志(0代表存在 2代表删除)") | ||||
|     @TableLogic | ||||
|     private String delFlag; | ||||
|  | ||||
|     /** 创建者 */ | ||||
|     @Excel(name = "创建者") | ||||
|     @ApiModelProperty("创建者") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private String createBy; | ||||
|  | ||||
|     /** 创建时间 */ | ||||
|     @Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("创建时间") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
|     /** 更新者 */ | ||||
|     @Excel(name = "更新者") | ||||
|     @ApiModelProperty("更新者") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private String updateBy; | ||||
|  | ||||
|     /** 更新时间 */ | ||||
|     @Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("更新时间") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private LocalDateTime updateTime; | ||||
|  | ||||
|     /** 备注 */ | ||||
|     @Excel(name = "备注") | ||||
|     @ApiModelProperty("备注") | ||||
|     private String remark; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,84 @@ | ||||
| package com.ruoyi.zbf.domain; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import com.ruoyi.common.annotation.Excel; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目标段对象 zbf_project_section | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @TableName("zbf_project_section") | ||||
| @ApiModel("总包方项目标段视图对象") | ||||
| public class ZbfProjectSection implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     @TableId(value = "id") | ||||
|     private Long id; | ||||
|  | ||||
|     /** 项目ID */ | ||||
|     @Excel(name = "项目ID") | ||||
|     @ApiModelProperty("项目ID") | ||||
|     private Long projectId; | ||||
|  | ||||
|     /** 标段名称 */ | ||||
|     @Excel(name = "标段名称") | ||||
|     @ApiModelProperty("标段名称") | ||||
|     private String sectionName; | ||||
|  | ||||
|     /** 标段描述 */ | ||||
|     @Excel(name = "标段描述") | ||||
|     @ApiModelProperty("标段描述") | ||||
|     private String sectionDescribe; | ||||
|  | ||||
|     /** 删除标志(0代表存在 2代表删除) */ | ||||
|     @Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除") | ||||
|     @ApiModelProperty("删除标志(0代表存在 2代表删除)") | ||||
|     @TableLogic | ||||
|     private String delFlag; | ||||
|  | ||||
|     /** 创建者 */ | ||||
|     @Excel(name = "创建者") | ||||
|     @ApiModelProperty("创建者") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private String createBy; | ||||
|  | ||||
|     /** 创建时间 */ | ||||
|     @Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("创建时间") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
|     /** 更新者 */ | ||||
|     @Excel(name = "更新者") | ||||
|     @ApiModelProperty("更新者") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private String updateBy; | ||||
|  | ||||
|     /** 更新时间 */ | ||||
|     @Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("更新时间") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private LocalDateTime updateTime; | ||||
|  | ||||
|     /** 备注 */ | ||||
|     @Excel(name = "备注") | ||||
|     @ApiModelProperty("备注") | ||||
|     private String remark; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,104 @@ | ||||
| package com.ruoyi.zbf.domain; | ||||
|  | ||||
| import com.baomidou.mybatisplus.annotation.*; | ||||
| import com.ruoyi.common.annotation.Excel; | ||||
| import io.swagger.annotations.ApiModel; | ||||
| import io.swagger.annotations.ApiModelProperty; | ||||
| import lombok.Data; | ||||
| import lombok.NoArgsConstructor; | ||||
| import lombok.experimental.Accessors; | ||||
|  | ||||
| import java.io.Serializable; | ||||
| import java.time.LocalDateTime; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目分包对象 zbf_project_subcontracting | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Data | ||||
| @NoArgsConstructor | ||||
| @Accessors(chain = true) | ||||
| @TableName("zbf_project_subcontracting") | ||||
| @ApiModel("总包方项目分包视图对象") | ||||
| public class ZbfProjectSubcontracting implements Serializable { | ||||
|  | ||||
|     private static final long serialVersionUID=1L; | ||||
|  | ||||
|     /** 主键ID */ | ||||
|     @ApiModelProperty("主键ID") | ||||
|     @TableId(value = "id") | ||||
|     private Long id; | ||||
|  | ||||
|     /** 项目ID */ | ||||
|     @Excel(name = "项目ID") | ||||
|     @ApiModelProperty("项目ID") | ||||
|     private Long projectId; | ||||
|  | ||||
|     /** 标段ID */ | ||||
|     @Excel(name = "标段ID") | ||||
|     @ApiModelProperty("标段ID") | ||||
|     private Long sectionId; | ||||
|  | ||||
|     /** 分包主题 */ | ||||
|     @Excel(name = "分包主题") | ||||
|     @ApiModelProperty("分包主题") | ||||
|     private String subName; | ||||
|  | ||||
|     /** 分包描述 */ | ||||
|     @Excel(name = "分包描述") | ||||
|     @ApiModelProperty("分包描述") | ||||
|     private String subDescribe; | ||||
|  | ||||
|     /** 分包金额 */ | ||||
|     @Excel(name = "分包金额") | ||||
|     @ApiModelProperty("分包金额") | ||||
|     private Long subAmount; | ||||
|  | ||||
|     /** 资质要求 */ | ||||
|     @Excel(name = "资质要求") | ||||
|     @ApiModelProperty("资质要求") | ||||
|     private String qualification; | ||||
|  | ||||
|     /** 分包商用户ID */ | ||||
|     @Excel(name = "分包商用户ID") | ||||
|     @ApiModelProperty("分包商用户ID") | ||||
|     private Long userId; | ||||
|  | ||||
|     /** 删除标志(0代表存在 2代表删除) */ | ||||
|     @Excel(name = "删除标志" , readConverterExp = "0=代表存在,2=代表删除") | ||||
|     @ApiModelProperty("删除标志(0代表存在 2代表删除)") | ||||
|     @TableLogic | ||||
|     private String delFlag; | ||||
|  | ||||
|     /** 创建者 */ | ||||
|     @Excel(name = "创建者") | ||||
|     @ApiModelProperty("创建者") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private String createBy; | ||||
|  | ||||
|     /** 创建时间 */ | ||||
|     @Excel(name = "创建时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("创建时间") | ||||
|     @TableField(fill = FieldFill.INSERT) | ||||
|     private LocalDateTime createTime; | ||||
|  | ||||
|     /** 更新者 */ | ||||
|     @Excel(name = "更新者") | ||||
|     @ApiModelProperty("更新者") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private String updateBy; | ||||
|  | ||||
|     /** 更新时间 */ | ||||
|     @Excel(name = "更新时间" , width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") | ||||
|     @ApiModelProperty("更新时间") | ||||
|     @TableField(fill = FieldFill.INSERT_UPDATE) | ||||
|     private LocalDateTime updateTime; | ||||
|  | ||||
|     /** 备注 */ | ||||
|     @Excel(name = "备注") | ||||
|     @ApiModelProperty("备注") | ||||
|     private String remark; | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,19 @@ | ||||
| package com.ruoyi.zbf.mapper; | ||||
|  | ||||
|  | ||||
| import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache; | ||||
| import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; | ||||
| import com.ruoyi.zbf.domain.ZbfProject; | ||||
| import org.apache.ibatis.annotations.CacheNamespace; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目Mapper接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| // 如使需切换数据源 请勿使用缓存 会造成数据不一致现象 | ||||
| @CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class) | ||||
| public interface ZbfProjectMapper extends BaseMapperPlus<ZbfProject> { | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,19 @@ | ||||
| package com.ruoyi.zbf.mapper; | ||||
|  | ||||
|  | ||||
| import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache; | ||||
| import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; | ||||
| import com.ruoyi.zbf.domain.ZbfProjectSection; | ||||
| import org.apache.ibatis.annotations.CacheNamespace; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目标段Mapper接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| // 如使需切换数据源 请勿使用缓存 会造成数据不一致现象 | ||||
| @CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class) | ||||
| public interface ZbfProjectSectionMapper extends BaseMapperPlus<ZbfProjectSection> { | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,19 @@ | ||||
| package com.ruoyi.zbf.mapper; | ||||
|  | ||||
|  | ||||
| import com.ruoyi.common.core.mybatisplus.cache.MybatisPlusRedisCache; | ||||
| import com.ruoyi.common.core.mybatisplus.core.BaseMapperPlus; | ||||
| import com.ruoyi.zbf.domain.ZbfProjectSubcontracting; | ||||
| import org.apache.ibatis.annotations.CacheNamespace; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目分包Mapper接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| // 如使需切换数据源 请勿使用缓存 会造成数据不一致现象 | ||||
| @CacheNamespace(implementation = MybatisPlusRedisCache.class, eviction = MybatisPlusRedisCache.class) | ||||
| public interface ZbfProjectSubcontractingMapper extends BaseMapperPlus<ZbfProjectSubcontracting> { | ||||
|  | ||||
| } | ||||
| @ -0,0 +1,56 @@ | ||||
| package com.ruoyi.zbf.service; | ||||
|  | ||||
|  | ||||
| import com.ruoyi.common.core.mybatisplus.core.IServicePlus; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.zbf.bo.ZbfProjectSectionQueryBo; | ||||
| import com.ruoyi.zbf.domain.ZbfProjectSection; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目标段Service接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| public interface IZbfProjectSectionService extends IServicePlus<ZbfProjectSection> { | ||||
|     /** | ||||
|      * 查询单个 | ||||
|      * @return | ||||
|      */ | ||||
|     ZbfProjectSection queryById(Long id); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     TableDataInfo<ZbfProjectSection> queryPageList(ZbfProjectSectionQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     List<ZbfProjectSection> queryList(ZbfProjectSectionQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据新增业务对象插入总包方项目标段 | ||||
|      * @param bo 总包方项目标段新增业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean insert(ZbfProjectSection bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据编辑业务对象修改总包方项目标段 | ||||
|      * @param bo 总包方项目标段编辑业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean update(ZbfProjectSection bo); | ||||
|  | ||||
|     /** | ||||
|      * 校验并删除数据 | ||||
|      * @param ids 主键集合 | ||||
|      * @param isValid 是否校验,true-删除前校验,false-不校验 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); | ||||
| } | ||||
| @ -0,0 +1,56 @@ | ||||
| package com.ruoyi.zbf.service; | ||||
|  | ||||
|  | ||||
| import com.ruoyi.common.core.mybatisplus.core.IServicePlus; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.zbf.bo.ZbfProjectQueryBo; | ||||
| import com.ruoyi.zbf.domain.ZbfProject; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目Service接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| public interface IZbfProjectService extends IServicePlus<ZbfProject> { | ||||
|     /** | ||||
|      * 查询单个 | ||||
|      * @return | ||||
|      */ | ||||
|     ZbfProject queryById(Long id); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     TableDataInfo<ZbfProject> queryPageList(ZbfProjectQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     List<ZbfProject> queryList(ZbfProjectQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据新增业务对象插入总包方项目 | ||||
|      * @param bo 总包方项目新增业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean insert(ZbfProject bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据编辑业务对象修改总包方项目 | ||||
|      * @param bo 总包方项目编辑业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean update(ZbfProject bo); | ||||
|  | ||||
|     /** | ||||
|      * 校验并删除数据 | ||||
|      * @param ids 主键集合 | ||||
|      * @param isValid 是否校验,true-删除前校验,false-不校验 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); | ||||
| } | ||||
| @ -0,0 +1,56 @@ | ||||
| package com.ruoyi.zbf.service; | ||||
|  | ||||
|  | ||||
| import com.ruoyi.common.core.mybatisplus.core.IServicePlus; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.zbf.bo.ZbfProjectSubcontractingQueryBo; | ||||
| import com.ruoyi.zbf.domain.ZbfProjectSubcontracting; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目分包Service接口 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| public interface IZbfProjectSubcontractingService extends IServicePlus<ZbfProjectSubcontracting> { | ||||
|     /** | ||||
|      * 查询单个 | ||||
|      * @return | ||||
|      */ | ||||
|     ZbfProjectSubcontracting queryById(Long id); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     TableDataInfo<ZbfProjectSubcontracting> queryPageList(ZbfProjectSubcontractingQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 查询列表 | ||||
|      */ | ||||
|     List<ZbfProjectSubcontracting> queryList(ZbfProjectSubcontractingQueryBo bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据新增业务对象插入总包方项目分包 | ||||
|      * @param bo 总包方项目分包新增业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean insert(ZbfProjectSubcontracting bo); | ||||
|  | ||||
|     /** | ||||
|      * 根据编辑业务对象修改总包方项目分包 | ||||
|      * @param bo 总包方项目分包编辑业务对象 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean update(ZbfProjectSubcontracting bo); | ||||
|  | ||||
|     /** | ||||
|      * 校验并删除数据 | ||||
|      * @param ids 主键集合 | ||||
|      * @param isValid 是否校验,true-删除前校验,false-不校验 | ||||
|      * @return | ||||
|      */ | ||||
|     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid); | ||||
| } | ||||
| @ -0,0 +1,85 @@ | ||||
| package com.ruoyi.zbf.service.impl; | ||||
|  | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.utils.PageUtils; | ||||
| import com.ruoyi.zbf.bo.ZbfProjectSectionQueryBo; | ||||
| import com.ruoyi.zbf.domain.ZbfProjectSection; | ||||
| import com.ruoyi.zbf.mapper.ZbfProjectSectionMapper; | ||||
| import com.ruoyi.zbf.service.IZbfProjectSectionService; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目标段Service业务层处理 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Service | ||||
| public class ZbfProjectSectionServiceImpl extends ServicePlusImpl<ZbfProjectSectionMapper, ZbfProjectSection> implements IZbfProjectSectionService { | ||||
|  | ||||
|     @Override | ||||
|     public ZbfProjectSection queryById(Long id){ | ||||
|         return getById(id); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public TableDataInfo<ZbfProjectSection> queryPageList(ZbfProjectSectionQueryBo bo) { | ||||
|         Page<ZbfProjectSection> result = page(PageUtils.buildPage(), buildQueryWrapper(bo)); | ||||
|         return PageUtils.buildDataInfo(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<ZbfProjectSection> queryList(ZbfProjectSectionQueryBo bo) { | ||||
|         return list(buildQueryWrapper(bo)); | ||||
|     } | ||||
|  | ||||
|     private LambdaQueryWrapper<ZbfProjectSection> buildQueryWrapper(ZbfProjectSectionQueryBo bo) { | ||||
|         Map<String, Object> params = bo.getParams(); | ||||
|         LambdaQueryWrapper<ZbfProjectSection> lqw = Wrappers.lambdaQuery(); | ||||
|         lqw.eq(bo.getProjectId() != null, ZbfProjectSection::getProjectId, bo.getProjectId()); | ||||
|         lqw.like(StrUtil.isNotBlank(bo.getSectionName()), ZbfProjectSection::getSectionName, bo.getSectionName()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getSectionDescribe()), ZbfProjectSection::getSectionDescribe, bo.getSectionDescribe()); | ||||
|         return lqw; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean insert(ZbfProjectSection bo) { | ||||
|         ZbfProjectSection add = BeanUtil.toBean(bo, ZbfProjectSection.class); | ||||
|         validEntityBeforeSave(add); | ||||
|         return save(add); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean update(ZbfProjectSection bo) { | ||||
|         ZbfProjectSection update = BeanUtil.toBean(bo, ZbfProjectSection.class); | ||||
|         validEntityBeforeSave(update); | ||||
|         return updateById(update); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 保存前的数据校验 | ||||
|      * | ||||
|      * @param entity 实体类数据 | ||||
|      */ | ||||
|     private void validEntityBeforeSave(ZbfProjectSection entity){ | ||||
|         //TODO 做一些数据校验,如唯一约束 | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|         return removeByIds(ids); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,90 @@ | ||||
| package com.ruoyi.zbf.service.impl; | ||||
|  | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.utils.PageUtils; | ||||
| import com.ruoyi.zbf.bo.ZbfProjectQueryBo; | ||||
| import com.ruoyi.zbf.domain.ZbfProject; | ||||
| import com.ruoyi.zbf.mapper.ZbfProjectMapper; | ||||
| import com.ruoyi.zbf.service.IZbfProjectService; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目Service业务层处理 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Service | ||||
| public class ZbfProjectServiceImpl extends ServicePlusImpl<ZbfProjectMapper, ZbfProject> implements IZbfProjectService { | ||||
|  | ||||
|     @Override | ||||
|     public ZbfProject queryById(Long id){ | ||||
|         return getById(id); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public TableDataInfo<ZbfProject> queryPageList(ZbfProjectQueryBo bo) { | ||||
|         Page<ZbfProject> result = page(PageUtils.buildPage(), buildQueryWrapper(bo)); | ||||
|         return PageUtils.buildDataInfo(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<ZbfProject> queryList(ZbfProjectQueryBo bo) { | ||||
|         return list(buildQueryWrapper(bo)); | ||||
|     } | ||||
|  | ||||
|     private LambdaQueryWrapper<ZbfProject> buildQueryWrapper(ZbfProjectQueryBo bo) { | ||||
|         Map<String, Object> params = bo.getParams(); | ||||
|         LambdaQueryWrapper<ZbfProject> lqw = Wrappers.lambdaQuery(); | ||||
|         lqw.eq(bo.getUserId() != null, ZbfProject::getUserId, bo.getUserId()); | ||||
|         lqw.like(StrUtil.isNotBlank(bo.getUnitName()), ZbfProject::getUnitName, bo.getUnitName()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getCreditCode()), ZbfProject::getCreditCode, bo.getCreditCode()); | ||||
|         lqw.like(StrUtil.isNotBlank(bo.getProjectName()), ZbfProject::getProjectName, bo.getProjectName()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getProjectImg()), ZbfProject::getProjectImg, bo.getProjectImg()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getProjectAddress()), ZbfProject::getProjectAddress, bo.getProjectAddress()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getContactPerson()), ZbfProject::getContactPerson, bo.getContactPerson()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getContactPhone()), ZbfProject::getContactPhone, bo.getContactPhone()); | ||||
|         return lqw; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean insert(ZbfProject bo) { | ||||
|         ZbfProject add = BeanUtil.toBean(bo, ZbfProject.class); | ||||
|         validEntityBeforeSave(add); | ||||
|         return save(add); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean update(ZbfProject bo) { | ||||
|         ZbfProject update = BeanUtil.toBean(bo, ZbfProject.class); | ||||
|         validEntityBeforeSave(update); | ||||
|         return updateById(update); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 保存前的数据校验 | ||||
|      * | ||||
|      * @param entity 实体类数据 | ||||
|      */ | ||||
|     private void validEntityBeforeSave(ZbfProject entity){ | ||||
|         //TODO 做一些数据校验,如唯一约束 | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|         return removeByIds(ids); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,89 @@ | ||||
| package com.ruoyi.zbf.service.impl; | ||||
|  | ||||
| import cn.hutool.core.bean.BeanUtil; | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
| import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
| import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
| import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl; | ||||
| import com.ruoyi.common.core.page.TableDataInfo; | ||||
| import com.ruoyi.common.utils.PageUtils; | ||||
| import com.ruoyi.zbf.bo.ZbfProjectSubcontractingQueryBo; | ||||
| import com.ruoyi.zbf.domain.ZbfProjectSubcontracting; | ||||
| import com.ruoyi.zbf.mapper.ZbfProjectSubcontractingMapper; | ||||
| import com.ruoyi.zbf.service.IZbfProjectSubcontractingService; | ||||
| import org.springframework.stereotype.Service; | ||||
|  | ||||
| import java.util.Collection; | ||||
| import java.util.List; | ||||
| import java.util.Map; | ||||
|  | ||||
| /** | ||||
|  * 总包方项目分包Service业务层处理 | ||||
|  * | ||||
|  * @author ruoyi | ||||
|  * @date 2025-02-17 | ||||
|  */ | ||||
| @Service | ||||
| public class ZbfProjectSubcontractingServiceImpl extends ServicePlusImpl<ZbfProjectSubcontractingMapper, ZbfProjectSubcontracting> implements IZbfProjectSubcontractingService { | ||||
|  | ||||
|     @Override | ||||
|     public ZbfProjectSubcontracting queryById(Long id){ | ||||
|         return getById(id); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public TableDataInfo<ZbfProjectSubcontracting> queryPageList(ZbfProjectSubcontractingQueryBo bo) { | ||||
|         Page<ZbfProjectSubcontracting> result = page(PageUtils.buildPage(), buildQueryWrapper(bo)); | ||||
|         return PageUtils.buildDataInfo(result); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<ZbfProjectSubcontracting> queryList(ZbfProjectSubcontractingQueryBo bo) { | ||||
|         return list(buildQueryWrapper(bo)); | ||||
|     } | ||||
|  | ||||
|     private LambdaQueryWrapper<ZbfProjectSubcontracting> buildQueryWrapper(ZbfProjectSubcontractingQueryBo bo) { | ||||
|         Map<String, Object> params = bo.getParams(); | ||||
|         LambdaQueryWrapper<ZbfProjectSubcontracting> lqw = Wrappers.lambdaQuery(); | ||||
|         lqw.eq(bo.getProjectId() != null, ZbfProjectSubcontracting::getProjectId, bo.getProjectId()); | ||||
|         lqw.eq(bo.getSectionId() != null, ZbfProjectSubcontracting::getSectionId, bo.getSectionId()); | ||||
|         lqw.like(StrUtil.isNotBlank(bo.getSubName()), ZbfProjectSubcontracting::getSubName, bo.getSubName()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getSubDescribe()), ZbfProjectSubcontracting::getSubDescribe, bo.getSubDescribe()); | ||||
|         lqw.eq(bo.getSubAmount() != null, ZbfProjectSubcontracting::getSubAmount, bo.getSubAmount()); | ||||
|         lqw.eq(StrUtil.isNotBlank(bo.getQualification()), ZbfProjectSubcontracting::getQualification, bo.getQualification()); | ||||
|         lqw.eq(bo.getUserId() != null, ZbfProjectSubcontracting::getUserId, bo.getUserId()); | ||||
|         return lqw; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean insert(ZbfProjectSubcontracting bo) { | ||||
|         ZbfProjectSubcontracting add = BeanUtil.toBean(bo, ZbfProjectSubcontracting.class); | ||||
|         validEntityBeforeSave(add); | ||||
|         return save(add); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean update(ZbfProjectSubcontracting bo) { | ||||
|         ZbfProjectSubcontracting update = BeanUtil.toBean(bo, ZbfProjectSubcontracting.class); | ||||
|         validEntityBeforeSave(update); | ||||
|         return updateById(update); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 保存前的数据校验 | ||||
|      * | ||||
|      * @param entity 实体类数据 | ||||
|      */ | ||||
|     private void validEntityBeforeSave(ZbfProjectSubcontracting entity){ | ||||
|         //TODO 做一些数据校验,如唯一约束 | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { | ||||
|         if(isValid){ | ||||
|             //TODO 做一些业务上的校验,判断是否需要校验 | ||||
|         } | ||||
|         return removeByIds(ids); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,26 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" ?> | ||||
| <!DOCTYPE mapper | ||||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||||
| <mapper namespace="com.ruoyi.bgt.mapper.BgtProjectRecruitApplyMapper"> | ||||
|  | ||||
|     <resultMap type="com.ruoyi.bgt.domain.BgtProjectRecruitApply" id="BgtProjectRecruitApplyResult"> | ||||
|         <result property="id" column="id"/> | ||||
|         <result property="recruitId" column="recruit_id"/> | ||||
|         <result property="userId" column="user_id"/> | ||||
|         <result property="delFlag" column="del_flag"/> | ||||
|         <result property="createBy" column="create_by"/> | ||||
|         <result property="createTime" column="create_time"/> | ||||
|         <result property="updateBy" column="update_by"/> | ||||
|         <result property="updateTime" column="update_time"/> | ||||
|         <result property="remark" column="remark"/> | ||||
|     </resultMap> | ||||
|  | ||||
|     <select id="appQueryList" resultType="com.ruoyi.bgt.domain.vo.BgtProjectRecruitApplyVO"> | ||||
|         select wu.user_id, wu.phone, wu.score, wu.avatar_name, wu.username | ||||
|         from bgt_project_recruit_apply bpra | ||||
|                  left join wgz_user wu on bpra.user_id = wu.user_id | ||||
|         where bpra.recruit_id = #{dto.recruitId} | ||||
|     </select> | ||||
|  | ||||
| </mapper> | ||||
| @ -0,0 +1,31 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" ?> | ||||
| <!DOCTYPE mapper | ||||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||||
| <mapper namespace="com.ruoyi.bgt.mapper.BgtProjectRecruitMapper"> | ||||
|  | ||||
|     <resultMap type="com.ruoyi.bgt.domain.BgtProjectRecruit" id="BgtProjectRecruitResult"> | ||||
|         <result property="id" column="id"/> | ||||
|         <result property="projectId" column="project_id"/> | ||||
|         <result property="sectionId" column="section_id"/> | ||||
|         <result property="subId" column="sub_id"/> | ||||
|         <result property="taskId" column="task_id"/> | ||||
|         <result property="recruitName" column="recruit_name"/> | ||||
|         <result property="recruitAddress" column="recruit_address"/> | ||||
|         <result property="recruitAmount" column="recruit_amount"/> | ||||
|         <result property="recruitStaffNum" column="recruit_staff_num"/> | ||||
|         <result property="recruitBeginTime" column="recruit_begin_time"/> | ||||
|         <result property="recruitContactPerson" column="recruit_contact_person"/> | ||||
|         <result property="recruitContactPhone" column="recruit_contact_phone"/> | ||||
|         <result property="subDescribe" column="sub_describe"/> | ||||
|         <result property="recruitRequirement" column="recruit_requirement"/> | ||||
|         <result property="delFlag" column="del_flag"/> | ||||
|         <result property="createBy" column="create_by"/> | ||||
|         <result property="createTime" column="create_time"/> | ||||
|         <result property="updateBy" column="update_by"/> | ||||
|         <result property="updateTime" column="update_time"/> | ||||
|         <result property="remark" column="remark"/> | ||||
|     </resultMap> | ||||
|  | ||||
|  | ||||
| </mapper> | ||||
| @ -0,0 +1,48 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" ?> | ||||
| <!DOCTYPE mapper | ||||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||||
| <mapper namespace="com.ruoyi.bgt.mapper.BgtProjectTaskProgressMapper"> | ||||
|  | ||||
|     <resultMap type="com.ruoyi.bgt.domain.BgtProjectTaskProgress" id="BgtProjectTaskProgressResult"> | ||||
|         <result property="id" column="id"/> | ||||
|         <result property="projectId" column="project_id"/> | ||||
|         <result property="sectionId" column="section_id"/> | ||||
|         <result property="subId" column="sub_id"/> | ||||
|         <result property="taskId" column="task_id"/> | ||||
|         <result property="progressName" column="progress_name"/> | ||||
|         <result property="director" column="director"/> | ||||
|         <result property="uploader" column="uploader"/> | ||||
|         <result property="progress" column="progress"/> | ||||
|         <result property="progressDescribe" column="progress_describe"/> | ||||
|         <result property="progressAnnex" column="progress_annex"/> | ||||
|         <result property="auditStatus" column="audit_status"/> | ||||
|         <result property="reviewerId" column="reviewer_id"/> | ||||
|         <result property="delFlag" column="del_flag"/> | ||||
|         <result property="createBy" column="create_by"/> | ||||
|         <result property="createTime" column="create_time"/> | ||||
|         <result property="updateBy" column="update_by"/> | ||||
|         <result property="updateTime" column="update_time"/> | ||||
|         <result property="remark" column="remark"/> | ||||
|     </resultMap> | ||||
|  | ||||
|     <select id="appQueryPageList" resultType="com.ruoyi.bgt.domain.vo.BgtProjectTaskProgressVO"> | ||||
|         select bptp.id, | ||||
|                bptp.progress_name, | ||||
|                bptp.uploader, | ||||
|                bptp.progress, | ||||
|                bptp.audit_status, | ||||
|                bptp.create_time, | ||||
|                fpt.task_staff_num, | ||||
|                fpt.task_name, | ||||
|                zp.project_name | ||||
|         from bgt_project_task_progress bptp | ||||
|                  left join fbs_project_task fpt on bptp.task_id = fpt.id | ||||
|                  left join zbf_project zp on bptp.project_id = zp.id | ||||
|         where bptp.create_by = #{dto.createBy} | ||||
|         <if test="dto.auditStatus != null and dto.auditStatus != '' "> | ||||
|             and  bptp.audit_status = #{dto.auditStatus} | ||||
|         </if> | ||||
|     </select> | ||||
|  | ||||
| </mapper> | ||||
| @ -0,0 +1,20 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" ?> | ||||
| <!DOCTYPE mapper | ||||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||||
| <mapper namespace="com.ruoyi.fbs.mapper.FbsProjectTaskApplyMapper"> | ||||
|  | ||||
|     <resultMap type="com.ruoyi.fbs.domain.FbsProjectTaskApply" id="FbsProjectTaskApplyResult"> | ||||
|         <result property="id" column="id"/> | ||||
|         <result property="taskId" column="task_id"/> | ||||
|         <result property="userId" column="user_id"/> | ||||
|         <result property="delFlag" column="del_flag"/> | ||||
|         <result property="createBy" column="create_by"/> | ||||
|         <result property="createTime" column="create_time"/> | ||||
|         <result property="updateBy" column="update_by"/> | ||||
|         <result property="updateTime" column="update_time"/> | ||||
|         <result property="remark" column="remark"/> | ||||
|     </resultMap> | ||||
|  | ||||
|  | ||||
| </mapper> | ||||
| @ -0,0 +1,59 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" ?> | ||||
| <!DOCTYPE mapper | ||||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||||
| <mapper namespace="com.ruoyi.fbs.mapper.FbsProjectTaskMapper"> | ||||
|  | ||||
|     <resultMap type="com.ruoyi.fbs.domain.FbsProjectTask" id="FbsProjectTaskResult"> | ||||
|         <result property="id" column="id"/> | ||||
|         <result property="projectId" column="project_id"/> | ||||
|         <result property="sectionId" column="section_id"/> | ||||
|         <result property="subId" column="sub_id"/> | ||||
|         <result property="taskName" column="task_name"/> | ||||
|         <result property="taskAddress" column="task_address"/> | ||||
|         <result property="taskAmount" column="task_amount"/> | ||||
|         <result property="taskStaffNum" column="task_staff_num"/> | ||||
|         <result property="taskBeginTime" column="task_begin_time"/> | ||||
|         <result property="taskContactPerson" column="task_contact_person"/> | ||||
|         <result property="taskContactPhone" column="task_contact_phone"/> | ||||
|         <result property="taskDescribe" column="task_describe"/> | ||||
|         <result property="taskImg" column="task_img"/> | ||||
|         <result property="qualification" column="qualification"/> | ||||
|         <result property="userId" column="user_id"/> | ||||
|         <result property="delFlag" column="del_flag"/> | ||||
|         <result property="createBy" column="create_by"/> | ||||
|         <result property="createTime" column="create_time"/> | ||||
|         <result property="updateBy" column="update_by"/> | ||||
|         <result property="updateTime" column="update_time"/> | ||||
|         <result property="remark" column="remark"/> | ||||
|     </resultMap> | ||||
|  | ||||
|  | ||||
|     <select id="appQueryPageList" resultType="com.ruoyi.fbs.domain.vo.AppTaskVO"> | ||||
|         select fpt.id, | ||||
|                fpt.task_name, | ||||
|                task_staff_num, | ||||
|                task_amount, | ||||
|                zp.project_name, | ||||
|                task_describe, | ||||
|                task_address, | ||||
|                fpt.create_time, | ||||
|                (select count(task_id) from fbs_project_task_apply where task_id = fpt.id) as applyNum | ||||
|         from fbs_project_task fpt | ||||
|                  left join zbf_project zp on fpt.project_id = zp.id | ||||
|         where fpt.user_id is null | ||||
|         <if test="dto.taskName != null and dto.taskName != '' "> | ||||
|             and fpt.task_name like concat('%', #{dto.taskName}, '%') | ||||
|         </if> | ||||
|         <if test="dto.taskName != null and dto.taskName != '' "> | ||||
|             and fpt.task_name like concat('%', #{dto.taskName}, '%') | ||||
|         </if> | ||||
|         <if test="dto.userId != null "> | ||||
|             and fpt.user_id = #{dto.userId} | ||||
|         </if> | ||||
|         <if test="dto.status != null and dto.status != '' "> | ||||
|             and fpt.status = #{dto.status} | ||||
|         </if> | ||||
|     </select> | ||||
|  | ||||
| </mapper> | ||||
| @ -0,0 +1,26 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" ?> | ||||
| <!DOCTYPE mapper | ||||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||||
| <mapper namespace="com.ruoyi.zbf.mapper.ZbfProjectMapper"> | ||||
|  | ||||
|     <resultMap type="com.ruoyi.zbf.domain.ZbfProject" id="ZbfProjectResult"> | ||||
|         <result property="id" column="id"/> | ||||
|         <result property="userId" column="user_id"/> | ||||
|         <result property="unitName" column="unit_name"/> | ||||
|         <result property="creditCode" column="credit_code"/> | ||||
|         <result property="projectName" column="project_name"/> | ||||
|         <result property="projectImg" column="project_img"/> | ||||
|         <result property="projectAddress" column="project_address"/> | ||||
|         <result property="contactPerson" column="contact_person"/> | ||||
|         <result property="contactPhone" column="contact_phone"/> | ||||
|         <result property="delFlag" column="del_flag"/> | ||||
|         <result property="createBy" column="create_by"/> | ||||
|         <result property="createTime" column="create_time"/> | ||||
|         <result property="updateBy" column="update_by"/> | ||||
|         <result property="updateTime" column="update_time"/> | ||||
|         <result property="remark" column="remark"/> | ||||
|     </resultMap> | ||||
|  | ||||
|  | ||||
| </mapper> | ||||
| @ -0,0 +1,21 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" ?> | ||||
| <!DOCTYPE mapper | ||||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||||
| <mapper namespace="com.ruoyi.zbf.mapper.ZbfProjectSectionMapper"> | ||||
|  | ||||
|     <resultMap type="com.ruoyi.zbf.domain.ZbfProjectSection" id="ZbfProjectSectionResult"> | ||||
|         <result property="id" column="id"/> | ||||
|         <result property="projectId" column="project_id"/> | ||||
|         <result property="sectionName" column="section_name"/> | ||||
|         <result property="sectionDescribe" column="section_describe"/> | ||||
|         <result property="delFlag" column="del_flag"/> | ||||
|         <result property="createBy" column="create_by"/> | ||||
|         <result property="createTime" column="create_time"/> | ||||
|         <result property="updateBy" column="update_by"/> | ||||
|         <result property="updateTime" column="update_time"/> | ||||
|         <result property="remark" column="remark"/> | ||||
|     </resultMap> | ||||
|  | ||||
|  | ||||
| </mapper> | ||||
| @ -0,0 +1,25 @@ | ||||
| <?xml version="1.0" encoding="UTF-8" ?> | ||||
| <!DOCTYPE mapper | ||||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | ||||
| <mapper namespace="com.ruoyi.zbf.mapper.ZbfProjectSubcontractingMapper"> | ||||
|  | ||||
|     <resultMap type="com.ruoyi.zbf.domain.ZbfProjectSubcontracting" id="ZbfProjectSubcontractingResult"> | ||||
|         <result property="id" column="id"/> | ||||
|         <result property="projectId" column="project_id"/> | ||||
|         <result property="sectionId" column="section_id"/> | ||||
|         <result property="subName" column="sub_name"/> | ||||
|         <result property="subDescribe" column="sub_describe"/> | ||||
|         <result property="subAmount" column="sub_amount"/> | ||||
|         <result property="qualification" column="qualification"/> | ||||
|         <result property="userId" column="user_id"/> | ||||
|         <result property="delFlag" column="del_flag"/> | ||||
|         <result property="createBy" column="create_by"/> | ||||
|         <result property="createTime" column="create_time"/> | ||||
|         <result property="updateBy" column="update_by"/> | ||||
|         <result property="updateTime" column="update_time"/> | ||||
|         <result property="remark" column="remark"/> | ||||
|     </resultMap> | ||||
|  | ||||
|  | ||||
| </mapper> | ||||
		Reference in New Issue
	
	Block a user
	 zt
					zt