diff --git a/src/main/java/com/zhgd/xmgl/config/OperLogAspect.java b/src/main/java/com/zhgd/xmgl/config/OperLogAspect.java index 625417fd5..83054aa39 100644 --- a/src/main/java/com/zhgd/xmgl/config/OperLogAspect.java +++ b/src/main/java/com/zhgd/xmgl/config/OperLogAspect.java @@ -213,9 +213,9 @@ public class OperLogAspect { BeanUtil.copyProperties(ReflectUtil.invoke(mapperObj, selectIdMethod, idField.get(obj)), obj); } } - Pair changePair = getBeforeAndAfterDataChange(beforeList, afterList); - operlog.setDataChangeBefore(changePair.getLeft()); - operlog.setDataChangeAfter(changePair.getRight()); +// Pair changePair = getBeforeAndAfterDataChange(beforeList, afterList); +// operlog.setDataChangeBefore(changePair.getLeft()); +// operlog.setDataChangeAfter(changePair.getRight()); } } catch (Exception e) { log.error("处理前后数据异常", e); diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ContractorMonthlyDetailController.java b/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ContractorMonthlyDetailController.java index b108342d1..99bbe9019 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ContractorMonthlyDetailController.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ContractorMonthlyDetailController.java @@ -147,6 +147,7 @@ public class ContractorMonthlyDetailController { @ApiImplicitParam(name = "hasDefault", value = "1有默认值", paramType = "query", required = true, dataType = "Integer"), @ApiImplicitParam(name = "levelType", value = "时间级别:1月2周", paramType = "query", required = true, dataType = "Integer"), @ApiImplicitParam(name = "groupId", value = "项目组id", paramType = "query", required = true, dataType = "Integer"), + @ApiImplicitParam(name = "deviceId", value = "设备id", paramType = "query", required = true, dataType = "Integer"), }) @GetMapping(value = "/queryContractorMonthlyDetailInfo") public Result queryDetail(@ApiIgnore @RequestParam HashMap param, HttpServletRequest request) { diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ProjectHomeCarouselController.java b/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ProjectHomeCarouselController.java index feb2de5f3..744c29bd3 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ProjectHomeCarouselController.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ProjectHomeCarouselController.java @@ -1,53 +1,30 @@ package com.zhgd.xmgl.modules.baotou.controller; -import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.zhgd.annotation.OperLog; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiOperation; -import io.swagger.annotations.ApiImplicitParams; -import java.util.HashMap; -import springfox.documentation.annotations.ApiIgnore; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.net.URLDecoder; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import com.zhgd.jeecg.common.api.vo.Result; -import com.zhgd.jeecg.common.system.query.QueryGenerator; -import com.zhgd.jeecg.common.util.oConvertUtils; -import org.apache.commons.collections.MapUtils; import com.zhgd.xmgl.modules.baotou.entity.ProjectHomeCarousel; import com.zhgd.xmgl.modules.baotou.service.IProjectHomeCarouselService; - -import org.simpleframework.xml.core.Validate; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; - -import org.jeecgframework.poi.excel.ExcelImportUtil; -import org.jeecgframework.poi.excel.def.NormalExcelConstants; -import org.jeecgframework.poi.excel.entity.ExportParams; -import org.jeecgframework.poi.excel.entity.ImportParams; -import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; - +import org.apache.commons.collections.MapUtils; +import org.simpleframework.xml.core.Validate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; -import org.springframework.web.multipart.MultipartHttpServletRequest; -import org.springframework.web.servlet.ModelAndView; -import com.alibaba.fastjson.JSON; +import springfox.documentation.annotations.ApiIgnore; + +import java.util.HashMap; +import java.util.List; - /** +/** * @Title: Controller * @Description: 首页轮播图 * @author: pds - * @date: 2024-11-25 + * @date: 2024-11-25 * @version: V1.0 */ @RestController @@ -55,85 +32,99 @@ import com.alibaba.fastjson.JSON; @Slf4j @Api(tags = "首页轮播图相关Api") public class ProjectHomeCarouselController { - @Autowired - private IProjectHomeCarouselService projectHomeCarouselService; + @Autowired + private IProjectHomeCarouselService projectHomeCarouselService; - /** - * 分页列表查询 - * @return - */ + /** + * 分页列表查询 + * + * @return + */ @OperLog(operModul = "首页轮播图管理", operType = "分页查询", operDesc = "分页列表查询首页轮播图信息") - @ApiOperation(value = "分页列表查询首页轮播图信息", notes = "分页列表查询首页轮播图信息", httpMethod="GET") - @ApiImplicitParams({ - @ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"), - @ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"), - }) - @GetMapping(value = "/page") - public Result> queryPageList(@ApiIgnore @RequestParam HashMap param) { - return Result.success(projectHomeCarouselService.queryPageList(param)); - } + @ApiOperation(value = "分页列表查询首页轮播图信息", notes = "分页列表查询首页轮播图信息", httpMethod = "GET") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"), + @ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"), + }) + @GetMapping(value = "/page") + public Result> queryPageList(@ApiIgnore @RequestParam HashMap param) { + return Result.success(projectHomeCarouselService.queryPageList(param)); + } - /** - * 列表查询 - * @return - */ + /** + * 列表查询 + * + * @return + */ @OperLog(operModul = "首页轮播图管理", operType = "列表查询", operDesc = "列表查询首页轮播图信息") - @ApiOperation(value = "列表查询首页轮播图信息", notes = "列表查询首页轮播图信息", httpMethod="GET") - @GetMapping(value = "/list") - public Result> queryList(@ApiIgnore @RequestParam HashMap param) { - return Result.success(projectHomeCarouselService.queryList(param)); - } + @ApiOperation(value = "列表查询首页轮播图信息", notes = "列表查询首页轮播图信息", httpMethod = "GET") + @GetMapping(value = "/list") + public Result> queryList(@ApiIgnore @RequestParam HashMap param) { + return Result.success(projectHomeCarouselService.queryList(param)); + } - /** - * 添加 - * @param projectHomeCarousel - * @return - */ + /** + * 添加 + * + * @param projectHomeCarousel + * @return + */ @OperLog(operModul = "首页轮播图管理", operType = "添加", operDesc = "添加首页轮播图信息") - @ApiOperation(value = "添加首页轮播图信息", notes = "添加首页轮播图信息" , httpMethod="POST") - @PostMapping(value = "/add") - public Result add(@RequestBody @Validate ProjectHomeCarousel projectHomeCarousel) { - projectHomeCarouselService.add(projectHomeCarousel); - return Result.ok(); - } - - /** - * 编辑 - * @param projectHomeCarousel - * @return - */ - @OperLog(operModul = "首页轮播图管理", operType = "编辑", operDesc = "编辑首页轮播图信息") - @ApiOperation(value = "编辑首页轮播图信息", notes = "编辑首页轮播图信息" , httpMethod="POST") - @PostMapping(value = "/edit") - public Result edit(@RequestBody ProjectHomeCarousel projectHomeCarousel) { - projectHomeCarouselService.edit(projectHomeCarousel); - return Result.ok(); - } - - /** - * 通过id删除 - * @return - */ - @OperLog(operModul = "首页轮播图管理", operType = "删除", operDesc = "删除首页轮播图信息") - @ApiOperation(value = "删除首页轮播图信息", notes = "删除首页轮播图信息" , httpMethod="POST") - @ApiImplicitParam(name = "id", value = "首页轮播图ID", paramType = "body", required = true, dataType = "String", example = "{\"id\":\"1\"}") - @PostMapping(value = "/delete") - public Result delete(@ApiIgnore @RequestBody HashMap map) { - projectHomeCarouselService.delete(MapUtils.getString(map, "id")); + @ApiOperation(value = "添加首页轮播图信息", notes = "添加首页轮播图信息", httpMethod = "POST") + @PostMapping(value = "/add") + public Result add(@RequestBody @Validate ProjectHomeCarousel projectHomeCarousel) { + projectHomeCarouselService.add(projectHomeCarousel); return Result.ok(); - } + } - /** - * 通过id查询 - * @param id - * @return - */ + @OperLog(operModul = "首页轮播图管理", operType = "", operDesc = "保存首页轮播图信息") + @ApiOperation(value = "保存首页轮播图信息", notes = "保存首页轮播图信息", httpMethod = "POST") + @PostMapping(value = "/save") + public Result saveAll(@RequestBody @Validate HashMap param) { + projectHomeCarouselService.saveAll(param); + return Result.ok(); + } + + /** + * 编辑 + * + * @param projectHomeCarousel + * @return + */ + @OperLog(operModul = "首页轮播图管理", operType = "编辑", operDesc = "编辑首页轮播图信息") + @ApiOperation(value = "编辑首页轮播图信息", notes = "编辑首页轮播图信息", httpMethod = "POST") + @PostMapping(value = "/edit") + public Result edit(@RequestBody ProjectHomeCarousel projectHomeCarousel) { + projectHomeCarouselService.edit(projectHomeCarousel); + return Result.ok(); + } + + /** + * 通过id删除 + * + * @return + */ + @OperLog(operModul = "首页轮播图管理", operType = "删除", operDesc = "删除首页轮播图信息") + @ApiOperation(value = "删除首页轮播图信息", notes = "删除首页轮播图信息", httpMethod = "POST") + @ApiImplicitParam(name = "id", value = "首页轮播图ID", paramType = "body", required = true, dataType = "String", example = "{\"id\":\"1\"}") + @PostMapping(value = "/delete") + public Result delete(@ApiIgnore @RequestBody HashMap map) { + projectHomeCarouselService.delete(MapUtils.getString(map, "id")); + return Result.ok(); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ @OperLog(operModul = "首页轮播图管理", operType = "通过id查询", operDesc = "通过id查询首页轮播图信息") - @ApiOperation(value = "通过id查询首页轮播图信息", notes = "通过id查询首页轮播图信息" , httpMethod="GET") - @ApiImplicitParam(name = "id", value = "首页轮播图ID", paramType = "query", required = true, dataType = "Integer") - @GetMapping(value = "/queryById") - public Result queryById(@RequestParam(name="id",required=true) String id) { - return Result.success(projectHomeCarouselService.queryById(id)); - } + @ApiOperation(value = "通过id查询首页轮播图信息", notes = "通过id查询首页轮播图信息", httpMethod = "GET") + @ApiImplicitParam(name = "id", value = "首页轮播图ID", paramType = "query", required = true, dataType = "Integer") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name = "id", required = true) String id) { + return Result.success(projectHomeCarouselService.queryById(id)); + } } diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ProjectHomeNameController.java b/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ProjectHomeNameController.java index 2980cca68..f8c33a1dc 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ProjectHomeNameController.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/controller/ProjectHomeNameController.java @@ -1,53 +1,30 @@ package com.zhgd.xmgl.modules.baotou.controller; -import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.zhgd.annotation.OperLog; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiOperation; -import io.swagger.annotations.ApiImplicitParams; -import java.util.HashMap; -import springfox.documentation.annotations.ApiIgnore; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.net.URLDecoder; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import com.zhgd.jeecg.common.api.vo.Result; -import com.zhgd.jeecg.common.system.query.QueryGenerator; -import com.zhgd.jeecg.common.util.oConvertUtils; -import org.apache.commons.collections.MapUtils; import com.zhgd.xmgl.modules.baotou.entity.ProjectHomeName; import com.zhgd.xmgl.modules.baotou.service.IProjectHomeNameService; - -import org.simpleframework.xml.core.Validate; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; - -import org.jeecgframework.poi.excel.ExcelImportUtil; -import org.jeecgframework.poi.excel.def.NormalExcelConstants; -import org.jeecgframework.poi.excel.entity.ExportParams; -import org.jeecgframework.poi.excel.entity.ImportParams; -import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; - +import org.apache.commons.collections.MapUtils; +import org.simpleframework.xml.core.Validate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; -import org.springframework.web.multipart.MultipartHttpServletRequest; -import org.springframework.web.servlet.ModelAndView; -import com.alibaba.fastjson.JSON; +import springfox.documentation.annotations.ApiIgnore; + +import java.util.HashMap; +import java.util.List; - /** +/** * @Title: Controller * @Description: 首页名称 * @author: pds - * @date: 2024-11-25 + * @date: 2024-11-25 * @version: V1.0 */ @RestController @@ -55,85 +32,99 @@ import com.alibaba.fastjson.JSON; @Slf4j @Api(tags = "首页名称相关Api") public class ProjectHomeNameController { - @Autowired - private IProjectHomeNameService projectHomeNameService; + @Autowired + private IProjectHomeNameService projectHomeNameService; - /** - * 分页列表查询 - * @return - */ + /** + * 分页列表查询 + * + * @return + */ @OperLog(operModul = "首页名称管理", operType = "分页查询", operDesc = "分页列表查询首页名称信息") - @ApiOperation(value = "分页列表查询首页名称信息", notes = "分页列表查询首页名称信息", httpMethod="GET") - @ApiImplicitParams({ - @ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"), - @ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"), - }) - @GetMapping(value = "/page") - public Result> queryPageList(@ApiIgnore @RequestParam HashMap param) { - return Result.success(projectHomeNameService.queryPageList(param)); - } + @ApiOperation(value = "分页列表查询首页名称信息", notes = "分页列表查询首页名称信息", httpMethod = "GET") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"), + @ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"), + }) + @GetMapping(value = "/page") + public Result> queryPageList(@ApiIgnore @RequestParam HashMap param) { + return Result.success(projectHomeNameService.queryPageList(param)); + } - /** - * 列表查询 - * @return - */ + /** + * 列表查询 + * + * @return + */ @OperLog(operModul = "首页名称管理", operType = "列表查询", operDesc = "列表查询首页名称信息") - @ApiOperation(value = "列表查询首页名称信息", notes = "列表查询首页名称信息", httpMethod="GET") - @GetMapping(value = "/list") - public Result> queryList(@ApiIgnore @RequestParam HashMap param) { - return Result.success(projectHomeNameService.queryList(param)); - } + @ApiOperation(value = "列表查询首页名称信息", notes = "列表查询首页名称信息", httpMethod = "GET") + @GetMapping(value = "/list") + public Result> queryList(@ApiIgnore @RequestParam HashMap param) { + return Result.success(projectHomeNameService.queryList(param)); + } - /** - * 添加 - * @param projectHomeName - * @return - */ + /** + * 添加 + * + * @param projectHomeName + * @return + */ @OperLog(operModul = "首页名称管理", operType = "添加", operDesc = "添加首页名称信息") - @ApiOperation(value = "添加首页名称信息", notes = "添加首页名称信息" , httpMethod="POST") - @PostMapping(value = "/add") - public Result add(@RequestBody @Validate ProjectHomeName projectHomeName) { - projectHomeNameService.add(projectHomeName); - return Result.ok(); - } - - /** - * 编辑 - * @param projectHomeName - * @return - */ - @OperLog(operModul = "首页名称管理", operType = "编辑", operDesc = "编辑首页名称信息") - @ApiOperation(value = "编辑首页名称信息", notes = "编辑首页名称信息" , httpMethod="POST") - @PostMapping(value = "/edit") - public Result edit(@RequestBody ProjectHomeName projectHomeName) { - projectHomeNameService.edit(projectHomeName); - return Result.ok(); - } - - /** - * 通过id删除 - * @return - */ - @OperLog(operModul = "首页名称管理", operType = "删除", operDesc = "删除首页名称信息") - @ApiOperation(value = "删除首页名称信息", notes = "删除首页名称信息" , httpMethod="POST") - @ApiImplicitParam(name = "id", value = "首页名称ID", paramType = "body", required = true, dataType = "String", example = "{\"id\":\"1\"}") - @PostMapping(value = "/delete") - public Result delete(@ApiIgnore @RequestBody HashMap map) { - projectHomeNameService.delete(MapUtils.getString(map, "id")); + @ApiOperation(value = "添加首页名称信息", notes = "添加首页名称信息", httpMethod = "POST") + @PostMapping(value = "/add") + public Result add(@RequestBody @Validate ProjectHomeName projectHomeName) { + projectHomeNameService.add(projectHomeName); return Result.ok(); - } + } - /** - * 通过id查询 - * @param id - * @return - */ + @OperLog(operModul = "首页名称管理", operType = "", operDesc = "保存首页名称信息") + @ApiOperation(value = "保存首页名称信息", notes = "保存首页名称信息", httpMethod = "POST") + @PostMapping(value = "/save") + public Result saveName(@RequestBody @Validate ProjectHomeName projectHomeName) { + projectHomeNameService.saveName(projectHomeName); + return Result.ok(); + } + + /** + * 编辑 + * + * @param projectHomeName + * @return + */ + @OperLog(operModul = "首页名称管理", operType = "编辑", operDesc = "编辑首页名称信息") + @ApiOperation(value = "编辑首页名称信息", notes = "编辑首页名称信息", httpMethod = "POST") + @PostMapping(value = "/edit") + public Result edit(@RequestBody ProjectHomeName projectHomeName) { + projectHomeNameService.edit(projectHomeName); + return Result.ok(); + } + + /** + * 通过id删除 + * + * @return + */ + @OperLog(operModul = "首页名称管理", operType = "删除", operDesc = "删除首页名称信息") + @ApiOperation(value = "删除首页名称信息", notes = "删除首页名称信息", httpMethod = "POST") + @ApiImplicitParam(name = "id", value = "首页名称ID", paramType = "body", required = true, dataType = "String", example = "{\"id\":\"1\"}") + @PostMapping(value = "/delete") + public Result delete(@ApiIgnore @RequestBody HashMap map) { + projectHomeNameService.delete(MapUtils.getString(map, "id")); + return Result.ok(); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ @OperLog(operModul = "首页名称管理", operType = "通过id查询", operDesc = "通过id查询首页名称信息") - @ApiOperation(value = "通过id查询首页名称信息", notes = "通过id查询首页名称信息" , httpMethod="GET") - @ApiImplicitParam(name = "id", value = "首页名称ID", paramType = "query", required = true, dataType = "Integer") - @GetMapping(value = "/queryById") - public Result queryById(@RequestParam(name="id",required=true) String id) { - return Result.success(projectHomeNameService.queryById(id)); - } + @ApiOperation(value = "通过id查询首页名称信息", notes = "通过id查询首页名称信息", httpMethod = "GET") + @ApiImplicitParam(name = "id", value = "首页名称ID", paramType = "query", required = true, dataType = "Integer") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name = "id", required = true) String id) { + return Result.success(projectHomeNameService.queryById(id)); + } } diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/entity/ContractorMonthlyQuantity.java b/src/main/java/com/zhgd/xmgl/modules/baotou/entity/ContractorMonthlyQuantity.java index c7b12a32a..0577dd957 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/entity/ContractorMonthlyQuantity.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/entity/ContractorMonthlyQuantity.java @@ -3,6 +3,7 @@ package com.zhgd.xmgl.modules.baotou.entity; import java.io.Serializable; import java.util.Date; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @@ -50,6 +51,7 @@ public class ContractorMonthlyQuantity implements Serializable { /**更新时间*/ @ApiModelProperty(value="更新时间") private java.util.Date updateTime ; + /**1承包商2项目组**/ @ApiModelProperty(value="1承包商2项目组") private java.lang.Integer type ; /**1工程量2计划工程量*/ diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/entity/ProjectHomeWork.java b/src/main/java/com/zhgd/xmgl/modules/baotou/entity/ProjectHomeWork.java index 474a370d9..013cb3525 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/entity/ProjectHomeWork.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/entity/ProjectHomeWork.java @@ -2,7 +2,10 @@ package com.zhgd.xmgl.modules.baotou.entity; import java.io.Serializable; import java.util.Date; +import java.util.List; + import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @@ -54,4 +57,8 @@ public class ProjectHomeWork implements Serializable { /**更新时间*/ @ApiModelProperty(value="更新时间") private java.util.Date updateTime ; + + @TableField(exist = false) + @ApiModelProperty(value="操作内容") + private List opList; } diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/mapper/xml/ProjectHomeWorkMapper.xml b/src/main/java/com/zhgd/xmgl/modules/baotou/mapper/xml/ProjectHomeWorkMapper.xml index af56c5611..bf0377591 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/mapper/xml/ProjectHomeWorkMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/mapper/xml/ProjectHomeWorkMapper.xml @@ -6,6 +6,10 @@ select * from ( select t.* from project_home_work t + where 1=1 + + and t.project_home_work_id is null + )t ${ew.customSqlSegment} diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/service/IProjectHomeCarouselService.java b/src/main/java/com/zhgd/xmgl/modules/baotou/service/IProjectHomeCarouselService.java index 8743b8b3a..8d131c38f 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/service/IProjectHomeCarouselService.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/service/IProjectHomeCarouselService.java @@ -50,4 +50,6 @@ public interface IProjectHomeCarouselService extends IService param); + } diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/service/IProjectHomeNameService.java b/src/main/java/com/zhgd/xmgl/modules/baotou/service/IProjectHomeNameService.java index f5e8bd165..25c8148f4 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/service/IProjectHomeNameService.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/service/IProjectHomeNameService.java @@ -50,4 +50,5 @@ public interface IProjectHomeNameService extends IService { */ ProjectHomeName queryById(String id); + void saveName(ProjectHomeName projectHomeName); } diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ContractorMonthlyDetailServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ContractorMonthlyDetailServiceImpl.java index bad411b31..1b1f93040 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ContractorMonthlyDetailServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ContractorMonthlyDetailServiceImpl.java @@ -1,5 +1,4 @@ package com.zhgd.xmgl.modules.baotou.service.impl; -import java.util.Date; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; @@ -16,6 +15,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gexin.fastjson.JSON; import com.gexin.fastjson.JSONArray; import com.gexin.fastjson.JSONObject; +import com.gexin.fastjson.TypeReference; import com.zhgd.jeecg.common.execption.OpenAlertException; import com.zhgd.jeecg.common.system.query.QueryGenerator; import com.zhgd.xmgl.modules.baotou.entity.*; @@ -27,11 +27,11 @@ import com.zhgd.xmgl.modules.worker.service.impl.EnterpriseInfoServiceImpl; import com.zhgd.xmgl.security.util.SecurityUtils; import com.zhgd.xmgl.util.*; import org.apache.commons.collections.MapUtils; -import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.util.*; @@ -45,6 +45,7 @@ import java.util.stream.Collectors; * @version: V1.0 */ @Service +@Transactional(rollbackFor = Exception.class) public class ContractorMonthlyDetailServiceImpl extends ServiceImpl implements IContractorMonthlyDetailService { @Autowired private IContractorMonthlyDetailService contractorMonthlyDetailService; @@ -139,14 +140,95 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl details = contractorMonthlyDetailMapper.selectList(new LambdaQueryWrapper() - .eq(ContractorMonthlyDetail::getContentType, detail.getContentType()) + .eq(ContractorMonthlyDetail::getContentType, contentType) .eq(ContractorMonthlyDetail::getPeriodId, detail.getPeriodId()) ); ContractorMonthlyPeriod p = contractorMonthlyPeriodService.getById(detail.getPeriodId()); if (p == null) { throw new OpenAlertException("计划不存在"); } + this.removeMonthWordEdit(detail, p); + if (CollUtil.isEmpty(details)) { + this.add(detail); + } else { + detail.setId(details.get(0).getId()); + this.edit(detail); + } + if (Objects.equals(contentType, 1) || Objects.equals(contentType, 2)) { + this.saveRelationPeriod(detail, p); + } else if (Objects.equals(contentType, 5) || Objects.equals(contentType, 6)) { + JSONObject rootJo = JSON.parseObject(detail.getContent()); + int length = SheetUtils.getColDataLength(this.getCellData(rootJo), 3, "B"); + ContractorMonthlyQuantity quantity = contractorMonthlyQuantityService.getOne(new LambdaQueryWrapper() + .eq(ContractorMonthlyQuantity::getPeriodId, p.getId()) + .eq(ContractorMonthlyQuantity::getType, p.getType()) + .eq(ContractorMonthlyQuantity::getDesignType, designType) + ); + ContractorMonthlyDesign design = contractorMonthlyDesignService.getOne(new LambdaQueryWrapper() + .eq(ContractorMonthlyDesign::getDeviceId, p.getDeviceId()) + .eq(ContractorMonthlyDesign::getDesignType, designType) + .eq(ContractorMonthlyDesign::getType, p.getType()) + ); + JSONObject cellData = SheetUtils.getCellData(rootJo); + List designList = SheetUtils.getColDataList(cellData, 3, "C", length); + if (design == null) { + design = new ContractorMonthlyDesign(); + design.setProjectSn(detail.getProjectSn()); + design.setDeviceId(p.getDeviceId()); + design.setDesignType(designType); + design.setQuantity(JSON.toJSONString(designList)); + design.setType(p.getType()); + contractorMonthlyDesignService.save(design); + } else { + design.setQuantity(JSON.toJSONString(designList)); + design.setType(p.getType()); + contractorMonthlyDesignService.updateById(design); + } + List mwList = SheetUtils.getColDataList(cellData, 3, "D", length); + List arriveList; + List remarkList; + if (p.getLevelType() == 1) { + arriveList = SheetUtils.getColDataList(cellData, 3, "G", length); + remarkList = SheetUtils.getColDataList(cellData, 3, "I", length); + } else { + arriveList = SheetUtils.getColDataList(cellData, 3, "H", length); + remarkList = SheetUtils.getColDataList(cellData, 3, "J", length); + } + if (quantity == null) { + quantity = new ContractorMonthlyQuantity(); + quantity.setProjectSn(detail.getProjectSn()); + quantity.setPeriodId(p.getId()); + if (p.getLevelType() == 2) { + quantity.setWeekQuantity(JSON.toJSONString(mwList)); + } + if (p.getLevelType() == 1) { + quantity.setMonthQuantity(JSON.toJSONString(mwList)); + } + quantity.setArriveGoods(JSON.toJSONString(arriveList)); + quantity.setRemarks(JSON.toJSONString(remarkList)); + quantity.setType(p.getType()); + quantity.setDesignType(designType); + contractorMonthlyQuantityService.save(quantity); + } else { + if (p.getLevelType() == 2) { + quantity.setWeekQuantity(JSON.toJSONString(mwList)); + } + if (p.getLevelType() == 1) { + quantity.setMonthQuantity(JSON.toJSONString(mwList)); + } + quantity.setArriveGoods(JSON.toJSONString(arriveList)); + quantity.setRemarks(JSON.toJSONString(remarkList)); + quantity.setType(p.getType()); + quantity.setDesignType(designType); + contractorMonthlyQuantityService.updateById(quantity); + } + } + } + + private void removeMonthWordEdit(ContractorMonthlyDetail detail, ContractorMonthlyPeriod p) { if (detail.getContentType() == 7 && p.getType() == 2) { //去掉添加的编辑 String content = detail.getContent(); @@ -166,69 +248,6 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl() - .eq(ContractorMonthlyQuantity::getPeriodId, p.getId())); - ContractorMonthlyDesign design = contractorMonthlyDesignService.getOne(new LambdaQueryWrapper() - .eq(ContractorMonthlyDesign::getDeviceId, p.getDeviceId())); - JSONObject cellData = SheetUtils.getCellData(rootJo); - List designList = SheetUtils.getColDataList(cellData, 3, "C", length); - if (design == null) { - design = new ContractorMonthlyDesign(); - design.setProjectSn(detail.getProjectSn()); - design.setDeviceId(p.getDeviceId()); - design.setDesignType(detail.getContentType() == 5 ? 1 : 2); - design.setQuantity(JSON.toJSONString(designList)); - contractorMonthlyDesignService.save(design); - } else { - design.setQuantity(JSON.toJSONString(designList)); - contractorMonthlyDesignService.updateById(design); - } - List mwList = SheetUtils.getColDataList(cellData, 3, "D", length); - List arriveList; - List remarkList; - if (p.getLevelType() == 1) { - arriveList = SheetUtils.getColDataList(cellData, 3, "G", length); - remarkList = SheetUtils.getColDataList(cellData, 3, "J", length); - } else { - arriveList = SheetUtils.getColDataList(cellData, 3, "H", length); - remarkList = SheetUtils.getColDataList(cellData, 3, "I", length); - } - if (quantity == null) { - quantity = new ContractorMonthlyQuantity(); - quantity.setProjectSn(detail.getProjectSn()); - quantity.setPeriodId(p.getId()); - if (p.getLevelType() == 2) { - quantity.setWeekQuantity(JSON.toJSONString(mwList)); - } - if (p.getLevelType() == 1) { - quantity.setMonthQuantity(JSON.toJSONString(mwList)); - } - quantity.setArriveGoods(JSON.toJSONString(arriveList)); - quantity.setRemarks(JSON.toJSONString(remarkList)); - contractorMonthlyQuantityService.save(quantity); - } else { - if (p.getLevelType() == 2) { - quantity.setWeekQuantity(JSON.toJSONString(mwList)); - } - if (p.getLevelType() == 1) { - quantity.setMonthQuantity(JSON.toJSONString(mwList)); - } - quantity.setArriveGoods(JSON.toJSONString(arriveList)); - quantity.setRemarks(JSON.toJSONString(remarkList)); - contractorMonthlyQuantityService.updateById(quantity); - } - } } private void saveRelationPeriod(ContractorMonthlyDetail detail, ContractorMonthlyPeriod p) { @@ -277,6 +296,7 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl details1 = contractorMonthlyDetailMapper.selectList(new LambdaQueryWrapper() .eq(ContractorMonthlyDetail::getPeriodId, periodId)); @@ -318,12 +338,39 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl split = StrUtil.split(v, "承包商"); + if (CollUtil.isNotEmpty(split)) { + jo.put("v", group.getProjectGroupName() + "项目组" + split.get(split.size() - 1)); + } + JSONObject jo1 = cellDataJo.getJSONObject("2").getJSONObject("0"); + jo1.put("v", "编制单位:" + group.getProjectGroupName()); + content = JSON.toJSONString(rootJo); + } + //工程量的单位名称变成xxx + if (contentType == 5 || contentType == 6) { + JSONObject rootJo = JSON.parseObject(content); + JSONObject cellDataJo = this.getCellData(rootJo); + JSONObject jo = cellDataJo.getJSONObject("1").getJSONObject("0"); + String v = jo.getString("v"); + List split = StrUtil.split(v, "填报单位:"); + if (CollUtil.isNotEmpty(split)) { + jo.put("v", split.get(0) + "填报单位:xxx单位"); + } + content = JSON.toJSONString(rootJo); + } if (CollUtil.isEmpty(details)) { //新增详情 ContractorMonthlyDetail d1 = new ContractorMonthlyDetail(); d1.setPeriodId(period.getId()); d1.setContentType(contentType); - d1.setContent(detail.getContent()); + d1.setContent(content); d1.setType(2); d1.setProjectSn(detail.getProjectSn()); baseMapper.insert(d1); @@ -333,23 +380,24 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl designs = contractorMonthlyDesignService.list(new LambdaQueryWrapper() .eq(ContractorMonthlyDesign::getDeviceId, p1.getDeviceId()) - .eq(ContractorMonthlyDesign::getType, 1) - .eq(ContractorMonthlyDesign::getDesignType, contentType == 5 ? 1 : 2) + .eq(ContractorMonthlyDesign::getDesignType, designType) ); if (CollUtil.isNotEmpty(designs)) { Optional op = designs.stream().filter(o -> o.getType() == 1).findFirst(); @@ -359,6 +407,7 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl quantityList = contractorMonthlyQuantityService.list(new LambdaQueryWrapper() .eq(ContractorMonthlyQuantity::getPeriodId, p1.getId()) - .eq(ContractorMonthlyQuantity::getType, 1) - .eq(ContractorMonthlyQuantity::getDesignType, contentType == 5 ? 1 : 2) + .eq(ContractorMonthlyQuantity::getDesignType, designType) ); -// if (CollUtil.isNotEmpty(quantityList)) { -// Optional op = quantityList.stream().filter(o -> o.getType() == 1).findFirst(); -// if (op.isPresent()) { -// Optional op1 = quantityList.stream().filter(o -> o.getType() == 2).findFirst(); -// ContractorMonthlyQuantity cd = op.get(); -// if (op1.isPresent()) { -// ContractorMonthlyQuantity d = op1.get(); -// d.setQuantity(cd.getQuantity()); -// contractorMonthlyDesignService.updateById(d); -// } else { -// ContractorMonthlyQuantity d = BeanUtil.toBean(cd, ContractorMonthlyQuantity.class); -// d.setId(null); -// d.setType(2); -// contractorMonthlyDesignService.save(d); -// } -// } -// } + if (CollUtil.isNotEmpty(quantityList)) { + Optional op = quantityList.stream().filter(o -> o.getType() == 1).findFirst(); + if (op.isPresent()) { + ContractorMonthlyQuantity cd = this.getGroupQuantity(p1, designType); + Optional op1 = quantityList.stream().filter(o -> o.getType() == 2).findFirst(); + if (op1.isPresent()) { + cd.setId(op1.get().getId()); + cd.setType(2); + contractorMonthlyQuantityService.updateById(cd); + } else { + cd.setId(null); + cd.setType(2); + contractorMonthlyQuantityService.save(cd); + } + } + } } } } + private ContractorMonthlyQuantity getGroupQuantity(ContractorMonthlyPeriod period, int designType) { + Long deviceId = period.getDeviceId(); + Long groupId = period.getGroupId(); + Long periodId = period.getId(); + Integer levelType = period.getLevelType(); + ContractorMonthlyQuantity monthlyQuantity = new ContractorMonthlyQuantity(); + monthlyQuantity.setProjectSn(period.getProjectSn()); + monthlyQuantity.setPeriodId(periodId); + Integer type = period.getType(); + monthlyQuantity.setType(type); + monthlyQuantity.setDesignType(designType); + //查询所有的period + List periodList = contractorMonthlyPeriodService.list(new LambdaQueryWrapper() + .eq(ContractorMonthlyPeriod::getDeviceId, deviceId) + .eq(ContractorMonthlyPeriod::getGroupId, groupId) + ); + if (CollUtil.isNotEmpty(periodList)) { + List quantityList = contractorMonthlyQuantityService.list(new LambdaQueryWrapper() + .eq(ContractorMonthlyQuantity::getDesignType, designType) + .eq(ContractorMonthlyQuantity::getType, type) + .in(ContractorMonthlyQuantity::getPeriodId, periodList.stream().map(ContractorMonthlyPeriod::getId).collect(Collectors.toList()))); + int month = DateUtil.month(new Date()); + int year = DateUtil.year(new Date()); + List quantityList1 = quantityList.stream().filter(o -> Objects.equals(o.getPeriodId(), periodId)).collect(Collectors.toList()); + if (CollUtil.isNotEmpty(quantityList1)) { + if (levelType == 2) { + //周 + List wmQuantitys = quantityList1.stream().map(ContractorMonthlyQuantity::getWeekQuantity).collect(Collectors.toList()); + monthlyQuantity.setWeekQuantity(JSON.toJSONString(this.sumListJson(wmQuantitys))); + } else { + //月 + //本月完成量 + List wmQuantitys = quantityList1.stream().map(ContractorMonthlyQuantity::getMonthQuantity).collect(Collectors.toList()); + monthlyQuantity.setMonthQuantity(JSON.toJSONString(this.sumListJson(wmQuantitys))); + } + //本期到货 + List arriveGoods = quantityList1.stream().map(ContractorMonthlyQuantity::getArriveGoods).collect(Collectors.toList()); + monthlyQuantity.setArriveGoods(JSON.toJSONString(this.sumListJson(arriveGoods))); + //备注 + List remarks = quantityList1.stream().map(ContractorMonthlyQuantity::getRemarks).collect(Collectors.toList()); + monthlyQuantity.setRemarks(JSON.toJSONString(this.splitListJson(remarks))); + } + } + return monthlyQuantity; + } + private void buildToCellDataForThree(JSONObject toCellDataJo, JSONObject fromCellDataJo) { //插入一列:columnCount+1,mergeData[].endColumn+1,cellData挪动,columnData(哪行多宽) String addEnterprise = fromCellDataJo.getJSONObject("4").getJSONObject("3").getString("v"); @@ -488,18 +581,16 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl() - .eq(ContractorMonthlyDetail::getContentType, contentType) - .eq(ContractorMonthlyDetail::getPeriodId, beforeP.getId())); - if (detail1 != null) { - JSONObject toJo = JSON.parseObject(content); - JSONObject toCellDataJo = getCellData(toJo); - JSONObject fromCellDataJo = getCellData(JSON.parseObject(detail1.getContent())); - int fl = SheetUtils.getColDataLength(fromCellDataJo, 8, 5); - int tl = SheetUtils.getColDataLength(toCellDataJo, 8, 5); - SheetUtils.replaceArea(fromCellDataJo, toCellDataJo, 8, 5, fl + 7, 7, 8, 2, tl + 7, 4); - content = JSON.toJSONString(toJo); - } + ContractorMonthlyPeriod p1 = contractorMonthlyPeriodService.getBeforePeriod(period); + ContractorMonthlyPeriod beforeP = contractorMonthlyPeriodService.queryByEntity(p1); + if (beforeP != null) { + ContractorMonthlyDetail detail1 = contractorMonthlyDetailMapper.selectOne(new LambdaQueryWrapper() + .eq(ContractorMonthlyDetail::getContentType, contentType) + .eq(ContractorMonthlyDetail::getPeriodId, beforeP.getId())); + if (detail1 != null) { + JSONObject toJo = JSON.parseObject(content); + JSONObject toCellDataJo = getCellData(toJo); + JSONObject fromCellDataJo = getCellData(JSON.parseObject(detail1.getContent())); + int fl = SheetUtils.getColDataLength(fromCellDataJo, 8, 5); + int tl = SheetUtils.getColDataLength(toCellDataJo, 8, 5); + SheetUtils.replaceArea(fromCellDataJo, toCellDataJo, 8, 5, fl + 7, 7, 8, 2, tl + 7, 4); + content = JSON.toJSONString(toJo); } } } } - if (contentType == 7) { + //设置工程量的本周月等的量 + if (Objects.equals(contentType, 5) || Objects.equals(contentType, 6)) { + content = this.getFiveContent(contentType, periodId, levelType, type, groupId, deviceId, enterpriseId, content); + } + + if (contentType == 7 && type == 2) { //设置月报编辑权限,增加编辑链接 List titleIds = contractorMonthlyConfigService.list(new LambdaQueryWrapper() .eq(ContractorMonthlyConfig::getUserId, SecurityUtils.getUser().getUserId())).stream().map(ContractorMonthlyConfig::getTitleId).collect(Collectors.toList()); @@ -603,33 +707,35 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl() .eq(ContractorMonthlyDesign::getDeviceId, deviceId) + .eq(ContractorMonthlyDesign::getDesignType, designType) .eq(ContractorMonthlyDesign::getType, contentType == 5 ? 1 : 2) ); if (design != null) { - List list = BeanUtil.copyToList(JSON.parseArray(design.getQuantity()), String.class); + List list = JSON.parseObject(design.getQuantity(), new TypeReference>() { + }); SheetUtils.setColDataList(toCellDataJo, 3, "C", list); } //查询所有的period @@ -640,22 +746,26 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl quantityList = contractorMonthlyQuantityService.list(new LambdaQueryWrapper() + .eq(ContractorMonthlyQuantity::getType, type) + .eq(ContractorMonthlyQuantity::getDesignType, designType) .in(ContractorMonthlyQuantity::getPeriodId, periodList.stream().map(ContractorMonthlyPeriod::getId).collect(Collectors.toList()))); - int month = DateUtil.month(new Date()); - int year = DateUtil.year(new Date()); Optional op = quantityList.stream().filter(o -> Objects.equals(o.getPeriodId(), periodId)).collect(Collectors.toList()).stream().findAny(); if (op.isPresent()) { + ContractorMonthlyPeriod thisP = periodList.stream().filter(o -> Objects.equals(o.getId(), periodId)).findFirst().get(); + int month = thisP.getMonth(); + int year = thisP.getYear(); + int whichWeek = thisP.getWhichWeek(); ContractorMonthlyQuantity quantity = op.get(); if (levelType == 2) { //周 String wmQuantity = quantity.getWeekQuantity(); SheetUtils.setColDataList(toCellDataJo, 3, "D", wmQuantity); //本月完成量 - List pids1 = periodList.stream().filter(o -> isLessOrEqual(o, year, month, null)).map(ContractorMonthlyPeriod::getId).collect(Collectors.toList()); + List pids1 = periodList.stream().filter(o -> isLessOrEqual(o, year, month, whichWeek)).map(ContractorMonthlyPeriod::getId).collect(Collectors.toList()); List months = quantityList.stream().filter(o -> pids1.contains(o.getPeriodId())).map(ContractorMonthlyQuantity::getWeekQuantity).collect(Collectors.toList()); SheetUtils.setColDataList(toCellDataJo, 3, "E", this.sumListJson(months)); //本年累计完成量 - List pids2 = periodList.stream().filter(o -> isLessOrEqual(o, year, null, null)).map(ContractorMonthlyPeriod::getId).collect(Collectors.toList()); + List pids2 = periodList.stream().filter(o -> isLessOrEqual(o, year, month, whichWeek)).map(ContractorMonthlyPeriod::getId).collect(Collectors.toList()); List years = quantityList.stream().filter(o -> pids2.contains(o.getPeriodId())).map(ContractorMonthlyQuantity::getWeekQuantity).collect(Collectors.toList()); SheetUtils.setColDataList(toCellDataJo, 3, "F", this.sumListJson(years)); //开累完成量 @@ -675,7 +785,7 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl pids2 = periodList.stream().filter(o -> isLessOrEqual(o, year, null, null)).map(ContractorMonthlyPeriod::getId).collect(Collectors.toList()); + List pids2 = periodList.stream().filter(o -> isLessOrEqual(o, year, month, whichWeek)).map(ContractorMonthlyPeriod::getId).collect(Collectors.toList()); List years = quantityList.stream().filter(o -> pids2.contains(o.getPeriodId())).map(ContractorMonthlyQuantity::getMonthQuantity).collect(Collectors.toList()); SheetUtils.setColDataList(toCellDataJo, 3, "E", this.sumListJson(years)); //开累完成量 @@ -705,7 +815,6 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl sumListJson(List months) { List monthList = new ArrayList<>(); for (String s : months) { @@ -722,6 +831,25 @@ public class ContractorMonthlyDetailServiceImpl extends ServiceImpl splitListJson(List ss) { + List rs = new ArrayList<>(); + for (String s : ss) { + JSONArray array = JSON.parseArray(s); + for (int i = 0; i < array.size(); i++) { + if (rs.size() < i + 1) { + rs.add(""); + } + String d = array.getString(i); + String s1 = rs.get(i); + if (StrUtil.isNotBlank(s1) && StrUtil.isNotBlank(d)) { + s1 += ","; + } + rs.add(i, s1 + d); + } + } + return rs; + } + @Override public void saveAllInfo(HashMap param) { for (Map.Entry entry : param.entrySet()) { diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ContractorMonthlyPeriodServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ContractorMonthlyPeriodServiceImpl.java index 28a671140..32cd4427e 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ContractorMonthlyPeriodServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ContractorMonthlyPeriodServiceImpl.java @@ -8,12 +8,15 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.zhgd.jeecg.common.execption.OpenAlertException; import com.zhgd.jeecg.common.system.query.QueryGenerator; +import com.zhgd.xmgl.modules.baotou.entity.ContractorMonthlyDesign; import com.zhgd.xmgl.modules.baotou.entity.ContractorMonthlyDetail; import com.zhgd.xmgl.modules.baotou.entity.ContractorMonthlyPeriod; -import com.zhgd.xmgl.modules.baotou.entity.ContractorMonthlyPeriod; +import com.zhgd.xmgl.modules.baotou.entity.ContractorMonthlyQuantity; import com.zhgd.xmgl.modules.baotou.mapper.ContractorMonthlyPeriodMapper; +import com.zhgd.xmgl.modules.baotou.service.IContractorMonthlyDesignService; import com.zhgd.xmgl.modules.baotou.service.IContractorMonthlyDetailService; import com.zhgd.xmgl.modules.baotou.service.IContractorMonthlyPeriodService; +import com.zhgd.xmgl.modules.baotou.service.IContractorMonthlyQuantityService; import com.zhgd.xmgl.util.PageUtil; import com.zhgd.xmgl.util.RefUtil; import org.springframework.beans.factory.annotation.Autowired; @@ -35,6 +38,10 @@ public class ContractorMonthlyPeriodServiceImpl extends ServiceImpl queryPageList(HashMap param) { @@ -100,7 +107,9 @@ public class ContractorMonthlyPeriodServiceImpl extends ServiceImpl() - .eq(ContractorMonthlyDetail::getPeriodId, contractorMonthlyPeriod.getId())); + .eq(ContractorMonthlyDetail::getPeriodId, id)); + contractorMonthlyQuantityService.remove(new LambdaQueryWrapper() + .eq(ContractorMonthlyQuantity::getPeriodId, id)); } @Override diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeCarouselServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeCarouselServiceImpl.java index 953337c51..132e7d0df 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeCarouselServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeCarouselServiceImpl.java @@ -1,37 +1,43 @@ package com.zhgd.xmgl.modules.baotou.service.impl; -import com.zhgd.jeecg.common.execption.OpenAlertException; -import com.zhgd.xmgl.modules.baotou.entity.ProjectHomeCarousel; -import com.zhgd.xmgl.modules.baotou.mapper.ProjectHomeCarouselMapper; -import com.zhgd.xmgl.modules.baotou.service.IProjectHomeCarouselService; -import org.springframework.stereotype.Service; +import cn.hutool.core.collection.CollUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.zhgd.jeecg.common.system.query.QueryGenerator; -import com.zhgd.xmgl.util.PageUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gexin.fastjson.JSON; +import com.gexin.fastjson.TypeReference; +import com.zhgd.jeecg.common.execption.OpenAlertException; +import com.zhgd.jeecg.common.system.query.QueryGenerator; +import com.zhgd.xmgl.modules.baotou.entity.ProjectHomeCarousel; +import com.zhgd.xmgl.modules.baotou.mapper.ProjectHomeCarouselMapper; +import com.zhgd.xmgl.modules.baotou.service.IProjectHomeCarouselService; +import com.zhgd.xmgl.util.PageUtil; +import com.zhgd.xmgl.util.RefUtil; +import org.apache.commons.collections.MapUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + import java.util.HashMap; import java.util.List; -import com.zhgd.xmgl.util.RefUtil; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.beans.factory.annotation.Autowired; /** * @Description: 首页轮播图 * @author: pds - * @date: 2024-11-25 + * @date: 2024-11-25 * @version: V1.0 */ @Service public class ProjectHomeCarouselServiceImpl extends ServiceImpl implements IProjectHomeCarouselService { @Autowired private ProjectHomeCarouselMapper projectHomeCarouselMapper; + @Override public IPage queryPageList(HashMap param) { QueryWrapper queryWrapper = this.getQueryWrapper(param); Page page = PageUtil.getPage(param); - IPage pageList = baseMapper.queryList(page, queryWrapper,param); + IPage pageList = baseMapper.queryList(page, queryWrapper, param); pageList.setRecords(this.dealList(pageList.getRecords())); return pageList; } @@ -39,7 +45,7 @@ public class ProjectHomeCarouselServiceImpl extends ServiceImpl queryList(HashMap param) { QueryWrapper queryWrapper = getQueryWrapper(param); - return dealList(baseMapper.queryList(queryWrapper,param)); + return dealList(baseMapper.queryList(queryWrapper, param)); } private QueryWrapper getQueryWrapper(HashMap param) { @@ -61,7 +67,7 @@ public class ProjectHomeCarouselServiceImpl extends ServiceImpl param) { + String projectSn = MapUtils.getString(param, "projectSn"); + projectHomeCarouselMapper.delete(new LambdaQueryWrapper() + .eq(ProjectHomeCarousel::getProjectSn, projectSn)); + List fileUrlList = JSON.parseObject(JSON.toJSONString(param.get("fileUrlList")), new TypeReference>() { + }); + if (CollUtil.isNotEmpty(fileUrlList)) { + for (ProjectHomeCarousel carousel : fileUrlList) { + carousel.setProjectSn(projectSn); + projectHomeCarouselMapper.insert(carousel); + } + } + } + } diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeNameServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeNameServiceImpl.java index 4d7be0097..f0041b4ad 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeNameServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeNameServiceImpl.java @@ -1,37 +1,39 @@ package com.zhgd.xmgl.modules.baotou.service.impl; -import com.zhgd.jeecg.common.execption.OpenAlertException; -import com.zhgd.xmgl.modules.baotou.entity.ProjectHomeName; -import com.zhgd.xmgl.modules.baotou.mapper.ProjectHomeNameMapper; -import com.zhgd.xmgl.modules.baotou.service.IProjectHomeNameService; -import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.zhgd.jeecg.common.system.query.QueryGenerator; -import com.zhgd.xmgl.util.PageUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.zhgd.jeecg.common.execption.OpenAlertException; +import com.zhgd.jeecg.common.system.query.QueryGenerator; +import com.zhgd.xmgl.modules.baotou.entity.ProjectHomeName; +import com.zhgd.xmgl.modules.baotou.mapper.ProjectHomeNameMapper; +import com.zhgd.xmgl.modules.baotou.service.IProjectHomeNameService; +import com.zhgd.xmgl.util.PageUtil; +import com.zhgd.xmgl.util.RefUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + import java.util.HashMap; import java.util.List; -import com.zhgd.xmgl.util.RefUtil; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.beans.factory.annotation.Autowired; /** * @Description: 首页名称 * @author: pds - * @date: 2024-11-25 + * @date: 2024-11-25 * @version: V1.0 */ @Service public class ProjectHomeNameServiceImpl extends ServiceImpl implements IProjectHomeNameService { @Autowired private ProjectHomeNameMapper projectHomeNameMapper; + @Override public IPage queryPageList(HashMap param) { QueryWrapper queryWrapper = this.getQueryWrapper(param); Page page = PageUtil.getPage(param); - IPage pageList = baseMapper.queryList(page, queryWrapper,param); + IPage pageList = baseMapper.queryList(page, queryWrapper, param); pageList.setRecords(this.dealList(pageList.getRecords())); return pageList; } @@ -39,7 +41,7 @@ public class ProjectHomeNameServiceImpl extends ServiceImpl queryList(HashMap param) { QueryWrapper queryWrapper = getQueryWrapper(param); - return dealList(baseMapper.queryList(queryWrapper,param)); + return dealList(baseMapper.queryList(queryWrapper, param)); } private QueryWrapper getQueryWrapper(HashMap param) { @@ -61,7 +63,7 @@ public class ProjectHomeNameServiceImpl extends ServiceImpl() + .eq(ProjectHomeName::getWhichType, projectHomeName.getWhichType()) + .eq(ProjectHomeName::getProjectSn, projectHomeName.getProjectSn()) + ); + if (name == null) { + baseMapper.insert(projectHomeName); + } else { + projectHomeName.setId(name.getId()); + baseMapper.updateById(projectHomeName); + } + } + } diff --git a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeWorkServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeWorkServiceImpl.java index 5060c3437..5c5864f82 100644 --- a/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeWorkServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/baotou/service/impl/ProjectHomeWorkServiceImpl.java @@ -1,37 +1,42 @@ package com.zhgd.xmgl.modules.baotou.service.impl; -import com.zhgd.jeecg.common.execption.OpenAlertException; -import com.zhgd.xmgl.modules.baotou.entity.ProjectHomeWork; -import com.zhgd.xmgl.modules.baotou.mapper.ProjectHomeWorkMapper; -import com.zhgd.xmgl.modules.baotou.service.IProjectHomeWorkService; -import org.springframework.stereotype.Service; +import cn.hutool.core.collection.CollUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.zhgd.jeecg.common.system.query.QueryGenerator; -import com.zhgd.xmgl.util.PageUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.zhgd.jeecg.common.execption.OpenAlertException; +import com.zhgd.jeecg.common.system.query.QueryGenerator; +import com.zhgd.xmgl.modules.baotou.entity.ProjectHomeWork; +import com.zhgd.xmgl.modules.baotou.mapper.ProjectHomeWorkMapper; +import com.zhgd.xmgl.modules.baotou.service.IProjectHomeWorkService; +import com.zhgd.xmgl.util.PageUtil; +import com.zhgd.xmgl.util.RefUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + import java.util.HashMap; import java.util.List; -import com.zhgd.xmgl.util.RefUtil; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.beans.factory.annotation.Autowired; /** * @Description: 首页办事指南 * @author: pds - * @date: 2024-11-25 + * @date: 2024-11-25 * @version: V1.0 */ @Service +@Transactional(rollbackFor = Exception.class) public class ProjectHomeWorkServiceImpl extends ServiceImpl implements IProjectHomeWorkService { @Autowired private ProjectHomeWorkMapper projectHomeWorkMapper; + @Override public IPage queryPageList(HashMap param) { QueryWrapper queryWrapper = this.getQueryWrapper(param); Page page = PageUtil.getPage(param); - IPage pageList = baseMapper.queryList(page, queryWrapper,param); + IPage pageList = baseMapper.queryList(page, queryWrapper, param); pageList.setRecords(this.dealList(pageList.getRecords())); return pageList; } @@ -39,7 +44,7 @@ public class ProjectHomeWorkServiceImpl extends ServiceImpl queryList(HashMap param) { QueryWrapper queryWrapper = getQueryWrapper(param); - return dealList(baseMapper.queryList(queryWrapper,param)); + return dealList(baseMapper.queryList(queryWrapper, param)); } private QueryWrapper getQueryWrapper(HashMap param) { @@ -56,24 +61,47 @@ public class ProjectHomeWorkServiceImpl extends ServiceImpl() + .eq(ProjectHomeWork::getProjectHomeWorkId, id)); + List opList = projectHomeWork.getOpList(); + if (CollUtil.isNotEmpty(opList)) { + for (ProjectHomeWork homeWork : opList) { + homeWork.setId(null); + homeWork.setProjectHomeWorkId(id); + homeWork.setProjectSn(projectHomeWork.getProjectSn()); + homeWork.setWhichModule(projectHomeWork.getWhichModule()); + projectHomeWorkMapper.insert(homeWork); + } + } } @Override public void edit(ProjectHomeWork projectHomeWork) { ProjectHomeWork oldProjectHomeWork = baseMapper.selectById(projectHomeWork.getId()); - if(oldProjectHomeWork==null) { + if (oldProjectHomeWork == null) { throw new OpenAlertException("未找到对应实体"); } baseMapper.updateById(projectHomeWork); + + this.saveOpList(projectHomeWork); } @Override public void delete(String id) { ProjectHomeWork projectHomeWork = baseMapper.selectById(id); - if(projectHomeWork==null) { + if (projectHomeWork == null) { throw new OpenAlertException("未找到对应实体"); } baseMapper.deleteById(id); + + projectHomeWorkMapper.delete(new LambdaQueryWrapper() + .eq(ProjectHomeWork::getProjectHomeWorkId, id)); } @Override diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/mapper/WorkerAttendanceMapper.java b/src/main/java/com/zhgd/xmgl/modules/worker/mapper/WorkerAttendanceMapper.java index 13213a5cf..8720e6163 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/mapper/WorkerAttendanceMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/mapper/WorkerAttendanceMapper.java @@ -138,7 +138,7 @@ public interface WorkerAttendanceMapper extends BaseMapper { * @param workerId * @return */ - String getWorkerAttendanceMinTime(@Param("workerId") Integer workerId); + String getWorkerAttendanceMinTime(@Param("workerId") String workerId); /** * 查询今日最晚通行的时间 @@ -146,7 +146,7 @@ public interface WorkerAttendanceMapper extends BaseMapper { * @param workerId * @return */ - String getWorkerAttendanceMaxTime(@Param("workerId") Integer workerId); + String getWorkerAttendanceMaxTime(@Param("workerId") String workerId); /** * 统计某日出勤人数统计 diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerAttendanceServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerAttendanceServiceImpl.java index 9bbc9e049..9a7d0ba76 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerAttendanceServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerAttendanceServiceImpl.java @@ -492,8 +492,8 @@ public class WorkerAttendanceServiceImpl extends ServiceImpl getPersonAttendanceTime(Map map) { Map data = new HashMap<>(16); - String enterTime = workerAttendanceMapper.getWorkerAttendanceMinTime(MapUtils.getInteger(map, "workerId")); - String outTime = workerAttendanceMapper.getWorkerAttendanceMaxTime(MapUtils.getInteger(map, "workerId")); + String enterTime = workerAttendanceMapper.getWorkerAttendanceMinTime(MapUtils.getString(map, "workerId")); + String outTime = workerAttendanceMapper.getWorkerAttendanceMaxTime(MapUtils.getString(map, "workerId")); data.put("enterTime", enterTime); data.put("outTime", outTime); return data; diff --git a/src/main/java/com/zhgd/xmgl/util/SheetUtils.java b/src/main/java/com/zhgd/xmgl/util/SheetUtils.java index 9dcac91ab..f89d40030 100644 --- a/src/main/java/com/zhgd/xmgl/util/SheetUtils.java +++ b/src/main/java/com/zhgd/xmgl/util/SheetUtils.java @@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.StrUtil; import com.gexin.fastjson.JSON; import com.gexin.fastjson.JSONObject; +import com.gexin.fastjson.TypeReference; import java.util.*; @@ -102,15 +103,15 @@ public class SheetUtils { /** * 获取col连续不为空的数量 * - * @param jo + * @param cellDataJo * @param row * @param col * @return */ - public static int getColDataLength(JSONObject jo, int row, int col) { + public static int getColDataLength(JSONObject cellDataJo, int row, int col) { int num = 0; - for (int r1 = row; r1 < jo.size(); r1++) { - String v = Optional.ofNullable(jo.getJSONObject(row + "")).map(m -> m.getJSONObject(col + "")).map(m -> m.getString("v")).orElse(null); + for (int r1 = row; r1 < cellDataJo.size(); r1++) { + String v = Optional.ofNullable(cellDataJo.getJSONObject(row + "")).map(m -> m.getJSONObject(col + "")).map(m -> m.getString("v")).orElse(null); if (StrUtil.isBlank(v)) { break; } @@ -119,8 +120,8 @@ public class SheetUtils { return num; } - public static int getColDataLength(JSONObject jo, int row, String col) { - return getColDataLength(jo, row, Integer.parseInt(getColNum(col))); + public static int getColDataLength(JSONObject cellDataJo, int row, String col) { + return getColDataLength(cellDataJo, row, Integer.parseInt(getColNum(col))); } public static String getColNum(String col) { @@ -166,7 +167,7 @@ public class SheetUtils { } public static void setColDataList(JSONObject toCellDataJo, int row, String col, String jsonStr) { - List addList = BeanUtil.copyToList(JSON.parseArray(jsonStr), String.class); + List addList = JSON.parseObject(jsonStr,new TypeReference>(){}); setColDataList(toCellDataJo, row, col, addList); }