### commit message
#### 1. 添加用户常用应用配置功能 新增了用户常用应用配置的CRUD接口和相应的数据库表。实现了用户可以自定义常用菜单和流程的功能,以提高操作便捷性。 #### 2. 优化工厂窑炉表及查询功能 调整了工厂窑炉表的产能字段类型,并优化了相应的查询接口,提高了查询效率和数据的一致性。
This commit is contained in:
parent
f1661ea3b0
commit
fb5eca9b3a
@ -1,5 +1,6 @@
|
|||||||
package cn.iocoder.yudao.module.system.controller.admin.auth.vo;
|
package cn.iocoder.yudao.module.system.controller.admin.auth.vo;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
||||||
@ -86,6 +87,8 @@ public class AuthPermissionInfoRespVO {
|
|||||||
@Schema(description = "是否总是显示", example = "false")
|
@Schema(description = "是否总是显示", example = "false")
|
||||||
private Boolean alwaysShow;
|
private Boolean alwaysShow;
|
||||||
|
|
||||||
|
@Schema(description = "是否已选择 (用于常用菜单赛选 true 已选 false 未选)", example = "false")
|
||||||
|
private Boolean selectedFlag;
|
||||||
/**
|
/**
|
||||||
* 子路由
|
* 子路由
|
||||||
*/
|
*/
|
||||||
|
@ -0,0 +1,95 @@
|
|||||||
|
package cn.iocoder.yudao.module.system.controller.admin.commonlyused;
|
||||||
|
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
import javax.validation.*;
|
||||||
|
import javax.servlet.http.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||||
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
|
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||||
|
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.system.dal.dataobject.commonlyused.CommonlyUsedDO;
|
||||||
|
import cn.iocoder.yudao.module.system.service.commonlyused.CommonlyUsedService;
|
||||||
|
|
||||||
|
@Tag(name = "管理后台 - 用户常用应用配置")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/system/commonly-used")
|
||||||
|
@Validated
|
||||||
|
public class CommonlyUsedController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private CommonlyUsedService commonlyUsedService;
|
||||||
|
|
||||||
|
@PostMapping("/create")
|
||||||
|
@Operation(summary = "创建用户常用应用配置")
|
||||||
|
@PreAuthorize("@ss.hasPermission('system:commonly-used:create')")
|
||||||
|
public CommonResult<Long> createCommonlyUsed(@Valid @RequestBody CommonlyUsedSaveReqVO createReqVO) {
|
||||||
|
return success(commonlyUsedService.createCommonlyUsed(createReqVO));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/update")
|
||||||
|
@Operation(summary = "更新用户常用应用配置")
|
||||||
|
@PreAuthorize("@ss.hasPermission('system:commonly-used:update')")
|
||||||
|
public CommonResult<Boolean> updateCommonlyUsed(@Valid @RequestBody CommonlyUsedSaveReqVO updateReqVO) {
|
||||||
|
commonlyUsedService.updateCommonlyUsed(updateReqVO);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/delete")
|
||||||
|
@Operation(summary = "删除用户常用应用配置")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
|
@PreAuthorize("@ss.hasPermission('system:commonly-used:delete')")
|
||||||
|
public CommonResult<Boolean> deleteCommonlyUsed(@RequestParam("id") Long id) {
|
||||||
|
commonlyUsedService.deleteCommonlyUsed(id);
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/get")
|
||||||
|
@Operation(summary = "获得用户常用应用配置")
|
||||||
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
|
@PreAuthorize("@ss.hasPermission('system:commonly-used:query')")
|
||||||
|
public CommonResult<CommonlyUsedRespVO> getCommonlyUsed(@RequestParam("id") Long id) {
|
||||||
|
CommonlyUsedDO commonlyUsed = commonlyUsedService.getCommonlyUsed(id);
|
||||||
|
return success(BeanUtils.toBean(commonlyUsed, CommonlyUsedRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/list")
|
||||||
|
@Operation(summary = "获得用户常用应用配置列表")
|
||||||
|
@PreAuthorize("@ss.hasPermission('system:commonly-used:query')")
|
||||||
|
public CommonResult<CommonlyUsedVO> getCommonlyUsedList() {
|
||||||
|
CommonlyUsedVO vo = commonlyUsedService.getCommonlyUsedList();
|
||||||
|
return success(vo);
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/export-excel")
|
||||||
|
@Operation(summary = "导出用户常用应用配置 Excel")
|
||||||
|
@PreAuthorize("@ss.hasPermission('system:commonly-used:export')")
|
||||||
|
@OperateLog(type = EXPORT)
|
||||||
|
public void exportCommonlyUsedExcel(@Valid CommonlyUsedPageReqVO pageReqVO,
|
||||||
|
HttpServletResponse response) throws IOException {
|
||||||
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
|
List<CommonlyUsedDO> list = commonlyUsedService.getCommonlyUsedPage(pageReqVO).getList();
|
||||||
|
// 导出 Excel
|
||||||
|
ExcelUtils.write(response, "用户常用应用配置.xls", "数据", CommonlyUsedRespVO.class,
|
||||||
|
BeanUtils.toBean(list, CommonlyUsedRespVO.class));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,37 @@
|
|||||||
|
package cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo;
|
||||||
|
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 用户常用应用配置分页 Request VO")
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
public class CommonlyUsedPageReqVO extends PageParam {
|
||||||
|
|
||||||
|
@Schema(description = "用户id", example = "2072")
|
||||||
|
private Long userId;
|
||||||
|
|
||||||
|
@Schema(description = "类型 1流程 2菜单", example = "1")
|
||||||
|
private Integer type;
|
||||||
|
|
||||||
|
@Schema(description = "路由地址")
|
||||||
|
private String routing;
|
||||||
|
|
||||||
|
@Schema(description = "菜单id或流程id 根据具体类型来", example = "11898")
|
||||||
|
private String objectId;
|
||||||
|
|
||||||
|
@Schema(description = "排序(从小到大)")
|
||||||
|
private Integer sort;
|
||||||
|
|
||||||
|
@Schema(description = "创建时间")
|
||||||
|
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||||
|
private LocalDateTime[] createTime;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,52 @@
|
|||||||
|
package cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.util.*;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import com.alibaba.excel.annotation.*;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 用户常用应用配置 Response VO")
|
||||||
|
@Data
|
||||||
|
@ExcelIgnoreUnannotated
|
||||||
|
public class CommonlyUsedRespVO {
|
||||||
|
|
||||||
|
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "18873")
|
||||||
|
@ExcelProperty("编号")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@Schema(description = "用户id", example = "2072")
|
||||||
|
@ExcelProperty("用户id")
|
||||||
|
private Long userId;
|
||||||
|
|
||||||
|
@Schema(description = "类型 1流程 2菜单", example = "1")
|
||||||
|
@ExcelProperty("类型 1流程 2菜单")
|
||||||
|
private Integer type;
|
||||||
|
|
||||||
|
@Schema(description = "路由地址")
|
||||||
|
@ExcelProperty("路由地址")
|
||||||
|
private String routing;
|
||||||
|
|
||||||
|
@Schema(description = "菜单id或流程id 根据具体类型来", example = "11898")
|
||||||
|
@ExcelProperty("菜单id或流程id 根据具体类型来")
|
||||||
|
private String objectId;
|
||||||
|
|
||||||
|
@Schema(description = "排序(从小到大)")
|
||||||
|
@ExcelProperty("排序(从小到大)")
|
||||||
|
private Integer sort;
|
||||||
|
|
||||||
|
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
|
@ExcelProperty("创建时间")
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
@Schema(description = "名称")
|
||||||
|
@ExcelProperty("名称")
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
@Schema(description = "图标")
|
||||||
|
@ExcelProperty("图标")
|
||||||
|
private String img;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,31 @@
|
|||||||
|
package cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo;
|
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import javax.validation.constraints.*;
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
@Schema(description = "管理后台 - 用户常用应用配置新增/修改 Request VO")
|
||||||
|
@Data
|
||||||
|
public class CommonlyUsedSaveReqVO {
|
||||||
|
|
||||||
|
@Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "18873")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@Schema(description = "用户id", example = "2072")
|
||||||
|
private Long userId;
|
||||||
|
|
||||||
|
@Schema(description = "类型 1流程 2菜单", example = "1")
|
||||||
|
private Integer type;
|
||||||
|
|
||||||
|
@Schema(description = "路由地址")
|
||||||
|
private String routing;
|
||||||
|
|
||||||
|
@Schema(description = "菜单id或流程id 根据具体类型来", example = "11898")
|
||||||
|
private String objectId;
|
||||||
|
|
||||||
|
@Schema(description = "排序(从小到大)")
|
||||||
|
private Integer sort;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
package cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.AuthPermissionInfoRespVO;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class CommonlyUsedVO {
|
||||||
|
|
||||||
|
@Schema(description = "用户常用应用配置")
|
||||||
|
private List<CommonlyUsedRespVO> commonlyUsedRespVOS;
|
||||||
|
|
||||||
|
@Schema(description = "菜单树形列表")
|
||||||
|
private List<AuthPermissionInfoRespVO.MenuVO> menus;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,51 @@
|
|||||||
|
package cn.iocoder.yudao.module.system.dal.dataobject.commonlyused;
|
||||||
|
|
||||||
|
import lombok.*;
|
||||||
|
import java.util.*;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import com.baomidou.mybatisplus.annotation.*;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户常用应用配置 DO
|
||||||
|
*
|
||||||
|
* @author 艾楷
|
||||||
|
*/
|
||||||
|
@TableName("system_commonly_used")
|
||||||
|
@KeySequence("system_commonly_used_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||||
|
@Data
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@ToString(callSuper = true)
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class CommonlyUsedDO extends BaseDO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编号
|
||||||
|
*/
|
||||||
|
@TableId
|
||||||
|
private Long id;
|
||||||
|
/**
|
||||||
|
* 用户id
|
||||||
|
*/
|
||||||
|
private Long userId;
|
||||||
|
/**
|
||||||
|
* 类型 1流程 2菜单
|
||||||
|
*/
|
||||||
|
private Integer type;
|
||||||
|
/**
|
||||||
|
* 路由地址
|
||||||
|
*/
|
||||||
|
private String routing;
|
||||||
|
/**
|
||||||
|
* 菜单id或流程id 根据具体类型来
|
||||||
|
*/
|
||||||
|
private String objectId;
|
||||||
|
/**
|
||||||
|
* 排序(从小到大)
|
||||||
|
*/
|
||||||
|
private Integer sort;
|
||||||
|
|
||||||
|
}
|
@ -4,6 +4,7 @@ import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
|||||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
import cn.iocoder.yudao.module.system.enums.permission.MenuTypeEnum;
|
import cn.iocoder.yudao.module.system.enums.permission.MenuTypeEnum;
|
||||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@ -103,5 +104,10 @@ public class MenuDO extends BaseDO {
|
|||||||
* 如果为 false 时,当该菜单只有一个子菜单时,不展示自己,直接展示子菜单
|
* 如果为 false 时,当该菜单只有一个子菜单时,不展示自己,直接展示子菜单
|
||||||
*/
|
*/
|
||||||
private Boolean alwaysShow;
|
private Boolean alwaysShow;
|
||||||
|
/**
|
||||||
|
* 是否已选择 (用于常用菜单赛选 true 已选 false 未选)
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private Boolean selectedFlag;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,31 @@
|
|||||||
|
package cn.iocoder.yudao.module.system.dal.mysql.commonlyused;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import cn.iocoder.yudao.module.system.dal.dataobject.commonlyused.CommonlyUsedDO;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户常用应用配置 Mapper
|
||||||
|
*
|
||||||
|
* @author 艾楷
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface CommonlyUsedMapper extends BaseMapperX<CommonlyUsedDO> {
|
||||||
|
|
||||||
|
default PageResult<CommonlyUsedDO> selectPage(CommonlyUsedPageReqVO reqVO) {
|
||||||
|
return selectPage(reqVO, new LambdaQueryWrapperX<CommonlyUsedDO>()
|
||||||
|
.eqIfPresent(CommonlyUsedDO::getUserId, reqVO.getUserId())
|
||||||
|
.eqIfPresent(CommonlyUsedDO::getType, reqVO.getType())
|
||||||
|
.eqIfPresent(CommonlyUsedDO::getRouting, reqVO.getRouting())
|
||||||
|
.eqIfPresent(CommonlyUsedDO::getObjectId, reqVO.getObjectId())
|
||||||
|
.eqIfPresent(CommonlyUsedDO::getSort, reqVO.getSort())
|
||||||
|
.betweenIfPresent(CommonlyUsedDO::getCreateTime, reqVO.getCreateTime())
|
||||||
|
.orderByDesc(CommonlyUsedDO::getId));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -89,7 +89,7 @@ public class DeptAssetsInOutStockServiceImpl implements DeptAssetsInOutStockServ
|
|||||||
if (CollectionUtil.isNotEmpty(list)) {
|
if (CollectionUtil.isNotEmpty(list)) {
|
||||||
for (DeptAssetsInOutStockSaveReqVO vo : list) {
|
for (DeptAssetsInOutStockSaveReqVO vo : list) {
|
||||||
DeptAssetsInOutStockDO deptAssetsInOutStock = new DeptAssetsInOutStockDO();
|
DeptAssetsInOutStockDO deptAssetsInOutStock = new DeptAssetsInOutStockDO();
|
||||||
deptAssetsInOutStock.setOutDeptId(outDeptId == -1 ? null : outDeptId);
|
deptAssetsInOutStock.setOutDeptId(outDeptId);
|
||||||
deptAssetsInOutStock.setInDeptId(vo.getInDeptId());
|
deptAssetsInOutStock.setInDeptId(vo.getInDeptId());
|
||||||
deptAssetsInOutStock.setNum(vo.getNum());
|
deptAssetsInOutStock.setNum(vo.getNum());
|
||||||
deptAssetsInOutStock.setInOutNo(IdWorker.get32UUID());
|
deptAssetsInOutStock.setInOutNo(IdWorker.get32UUID());
|
||||||
@ -131,7 +131,7 @@ public class DeptAssetsInOutStockServiceImpl implements DeptAssetsInOutStockServ
|
|||||||
updateAssetsList.add(assetsDO);
|
updateAssetsList.add(assetsDO);
|
||||||
} else {
|
} else {
|
||||||
DeptAssetsDO deptAssetsDO = deptAssetsDOMap.get(outDeptId + "_" + dto.getAssetsId());
|
DeptAssetsDO deptAssetsDO = deptAssetsDOMap.get(outDeptId + "_" + dto.getAssetsId());
|
||||||
if (dto.getType() == 0 && (deptAssetsDO.getStock() - outNum <= 0)) {
|
if (deptAssetsDO.getStock() - outNum <= 0) {
|
||||||
deptAssetDeptIdDelIds.add(outDeptId);
|
deptAssetDeptIdDelIds.add(outDeptId);
|
||||||
deptAssetAssetsIdDelIds.add(dto.getAssetsId());
|
deptAssetAssetsIdDelIds.add(dto.getAssetsId());
|
||||||
} else {
|
} else {
|
||||||
@ -184,9 +184,11 @@ public class DeptAssetsInOutStockServiceImpl implements DeptAssetsInOutStockServ
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!deptAssetDeptIdDelIds.isEmpty() && !deptAssetAssetsIdDelIds.isEmpty()) {
|
if (!deptAssetDeptIdDelIds.isEmpty() && !deptAssetAssetsIdDelIds.isEmpty()) {
|
||||||
deptAssetsMapper.update(new DeptAssetsDO().setStock(0), new LambdaQueryWrapper<DeptAssetsDO>()
|
LambdaQueryWrapper<DeptAssetsDO> updateOrDelWrapper = new LambdaQueryWrapper<DeptAssetsDO>()
|
||||||
.in(DeptAssetsDO::getDeptId, deptAssetDeptIdDelIds)
|
.in(DeptAssetsDO::getDeptId, deptAssetDeptIdDelIds)
|
||||||
.in(DeptAssetsDO::getAssetsId, deptAssetAssetsIdDelIds));
|
.in(DeptAssetsDO::getAssetsId, deptAssetAssetsIdDelIds);
|
||||||
|
deptAssetsMapper.update(new DeptAssetsDO().setStock(0), updateOrDelWrapper);
|
||||||
|
deptAssetsMapper.delete(updateOrDelWrapper);
|
||||||
}
|
}
|
||||||
if (!updateDeptAssetsList.isEmpty() || !editDeptAssetsList.isEmpty()) {
|
if (!updateDeptAssetsList.isEmpty() || !editDeptAssetsList.isEmpty()) {
|
||||||
updateDeptAssetsList.addAll(editDeptAssetsList);
|
updateDeptAssetsList.addAll(editDeptAssetsList);
|
||||||
|
@ -0,0 +1,64 @@
|
|||||||
|
package cn.iocoder.yudao.module.system.service.commonlyused;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.CommonlyUsedPageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.CommonlyUsedRespVO;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.CommonlyUsedSaveReqVO;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.CommonlyUsedVO;
|
||||||
|
import cn.iocoder.yudao.module.system.dal.dataobject.commonlyused.CommonlyUsedDO;
|
||||||
|
|
||||||
|
import javax.validation.Valid;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户常用应用配置 Service 接口
|
||||||
|
*
|
||||||
|
* @author 艾楷
|
||||||
|
*/
|
||||||
|
public interface CommonlyUsedService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建用户常用应用配置
|
||||||
|
*
|
||||||
|
* @param createReqVO 创建信息
|
||||||
|
* @return 编号
|
||||||
|
*/
|
||||||
|
Long createCommonlyUsed(@Valid CommonlyUsedSaveReqVO createReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新用户常用应用配置
|
||||||
|
*
|
||||||
|
* @param updateReqVO 更新信息
|
||||||
|
*/
|
||||||
|
void updateCommonlyUsed(@Valid CommonlyUsedSaveReqVO updateReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除用户常用应用配置
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
*/
|
||||||
|
void deleteCommonlyUsed(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得用户常用应用配置
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
* @return 用户常用应用配置
|
||||||
|
*/
|
||||||
|
CommonlyUsedDO getCommonlyUsed(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得用户常用应用配置分页
|
||||||
|
*
|
||||||
|
* @param pageReqVO 分页查询
|
||||||
|
* @return 用户常用应用配置分页
|
||||||
|
*/
|
||||||
|
PageResult<CommonlyUsedDO> getCommonlyUsedPage(CommonlyUsedPageReqVO pageReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得用户常用应用配置列表
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
CommonlyUsedVO getCommonlyUsedList();
|
||||||
|
}
|
@ -0,0 +1,136 @@
|
|||||||
|
package cn.iocoder.yudao.module.system.service.commonlyused;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
|
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
|
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.AuthPermissionInfoRespVO;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.CommonlyUsedPageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.CommonlyUsedRespVO;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.CommonlyUsedSaveReqVO;
|
||||||
|
import cn.iocoder.yudao.module.system.controller.admin.commonlyused.vo.CommonlyUsedVO;
|
||||||
|
import cn.iocoder.yudao.module.system.convert.auth.AuthConvert;
|
||||||
|
import cn.iocoder.yudao.module.system.dal.dataobject.commonlyused.CommonlyUsedDO;
|
||||||
|
import cn.iocoder.yudao.module.system.dal.dataobject.permission.MenuDO;
|
||||||
|
import cn.iocoder.yudao.module.system.dal.mysql.commonlyused.CommonlyUsedMapper;
|
||||||
|
import cn.iocoder.yudao.module.system.service.permission.MenuService;
|
||||||
|
import cn.iocoder.yudao.module.system.service.permission.PermissionService;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户常用应用配置 Service 实现类
|
||||||
|
*
|
||||||
|
* @author 艾楷
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@Validated
|
||||||
|
public class CommonlyUsedServiceImpl implements CommonlyUsedService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private CommonlyUsedMapper commonlyUsedMapper;
|
||||||
|
@Resource
|
||||||
|
private PermissionService permissionService;
|
||||||
|
@Resource
|
||||||
|
private MenuService menuService;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long createCommonlyUsed(CommonlyUsedSaveReqVO createReqVO) {
|
||||||
|
// 插入
|
||||||
|
CommonlyUsedDO commonlyUsed = BeanUtils.toBean(createReqVO, CommonlyUsedDO.class);
|
||||||
|
commonlyUsedMapper.insert(commonlyUsed);
|
||||||
|
// 返回
|
||||||
|
return commonlyUsed.getId();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateCommonlyUsed(CommonlyUsedSaveReqVO updateReqVO) {
|
||||||
|
// 更新
|
||||||
|
CommonlyUsedDO updateObj = BeanUtils.toBean(updateReqVO, CommonlyUsedDO.class);
|
||||||
|
commonlyUsedMapper.updateById(updateObj);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteCommonlyUsed(Long id) {
|
||||||
|
// 删除
|
||||||
|
commonlyUsedMapper.deleteById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CommonlyUsedDO getCommonlyUsed(Long id) {
|
||||||
|
return commonlyUsedMapper.selectById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResult<CommonlyUsedDO> getCommonlyUsedPage(CommonlyUsedPageReqVO pageReqVO) {
|
||||||
|
|
||||||
|
return commonlyUsedMapper.selectPage(pageReqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CommonlyUsedVO getCommonlyUsedList() {
|
||||||
|
Long userId = SecurityFrameworkUtils.getLoginUserId();
|
||||||
|
CommonlyUsedVO vo = new CommonlyUsedVO();
|
||||||
|
// -- 搜索我的常用
|
||||||
|
List<CommonlyUsedDO> list = commonlyUsedMapper.selectList(new LambdaQueryWrapper<CommonlyUsedDO>()
|
||||||
|
.eq(CommonlyUsedDO::getDeleted, 0).eq(CommonlyUsedDO::getUserId, userId).orderByAsc(CommonlyUsedDO::getSort));
|
||||||
|
Map<Long, CommonlyUsedDO> map = list.stream().collect(Collectors.toMap(CommonlyUsedDO::getId, a -> a));
|
||||||
|
List<CommonlyUsedRespVO> commonlyUsedRespVOS = new ArrayList<>();
|
||||||
|
// -- 获取菜单列表
|
||||||
|
List<MenuDO> menuList = new ArrayList<>();
|
||||||
|
Set<Long> roleIds = permissionService.getUserRoleIdListByUserId(getLoginUserId());
|
||||||
|
if (CollectionUtil.isNotEmpty(roleIds)) {
|
||||||
|
Set<Long> menuIds = permissionService.getRoleMenuListByRoleId(roleIds);
|
||||||
|
if (CollectionUtil.isNotEmpty(menuIds)) {
|
||||||
|
menuList = menuService.getMenuList(menuIds);
|
||||||
|
menuList.removeIf(menu -> !CommonStatusEnum.ENABLE.getStatus().equals(menu.getStatus()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
List<String> menuIds = new ArrayList<>();
|
||||||
|
List<String> processIds = new ArrayList<>();
|
||||||
|
if (!list.isEmpty()) {
|
||||||
|
// 区分出菜单和流程
|
||||||
|
List<CommonlyUsedDO> myProcessList = list.stream().filter(a -> a.getType() == 1).collect(Collectors.toList());
|
||||||
|
List<CommonlyUsedDO> myMenuList = list.stream().filter(a -> a.getType() == 2).collect(Collectors.toList());
|
||||||
|
if (CollectionUtil.isNotEmpty(myProcessList)) {
|
||||||
|
processIds = myProcessList.stream().map(CommonlyUsedDO::getObjectId).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
if (CollectionUtil.isNotEmpty(myMenuList)) {
|
||||||
|
menuIds = myMenuList.stream().map(CommonlyUsedDO::getObjectId).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
// -- 将菜单列表转树形
|
||||||
|
}
|
||||||
|
for (MenuDO menuDO : menuList) {
|
||||||
|
menuDO.setSelectedFlag(false);
|
||||||
|
if (menuIds.contains(String.valueOf(menuDO.getId()))) {
|
||||||
|
menuDO.setSelectedFlag(true);
|
||||||
|
CommonlyUsedRespVO commonlyUsedRespVO = BeanUtils.toBean(menuDO, CommonlyUsedRespVO.class);
|
||||||
|
commonlyUsedRespVO.setImg(menuDO.getIcon());
|
||||||
|
commonlyUsedRespVO.setName(menuDO.getName());
|
||||||
|
commonlyUsedRespVOS.add(commonlyUsedRespVO);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// -- 获取流程列表
|
||||||
|
|
||||||
|
|
||||||
|
List<AuthPermissionInfoRespVO.MenuVO> menus = AuthConvert.INSTANCE.buildMenuTree(menuList);
|
||||||
|
vo.setMenus(menus);
|
||||||
|
vo.setCommonlyUsedRespVOS(commonlyUsedRespVOS);
|
||||||
|
|
||||||
|
// TODO: 2024/9/5 还差流程的实现
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,12 @@
|
|||||||
|
<?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="cn.iocoder.yudao.module.system.dal.mysql.commonlyused.CommonlyUsedMapper">
|
||||||
|
|
||||||
|
<!--
|
||||||
|
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
|
||||||
|
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
|
||||||
|
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
|
||||||
|
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
||||||
|
-->
|
||||||
|
|
||||||
|
</mapper>
|
@ -34,9 +34,9 @@ public class FactoryForkliftRespVO {
|
|||||||
@ExcelProperty("叉车id")
|
@ExcelProperty("叉车id")
|
||||||
private Long forkliftId;
|
private Long forkliftId;
|
||||||
//
|
//
|
||||||
// @Schema(description = "部门id", example = "23631")
|
@Schema(description = "部门id", example = "23631")
|
||||||
// @ExcelProperty("部门id")
|
@ExcelProperty("部门id")
|
||||||
// private Long deptId;
|
private Long deptId;
|
||||||
//
|
//
|
||||||
// @Schema(description = "部门名称", example = "23631")
|
// @Schema(description = "部门名称", example = "23631")
|
||||||
// @ExcelProperty("部门名称")
|
// @ExcelProperty("部门名称")
|
||||||
|
@ -75,8 +75,8 @@ public class FactoryKilnController {
|
|||||||
@Operation(summary = "获得工厂窑炉分页")
|
@Operation(summary = "获得工厂窑炉分页")
|
||||||
@PreAuthorize("@ss.hasPermission('smartfactory:factory-kiln:query')")
|
@PreAuthorize("@ss.hasPermission('smartfactory:factory-kiln:query')")
|
||||||
public CommonResult<PageResult<FactoryKilnRespVO>> getFactoryKilnPage(@Valid FactoryKilnPageReqVO pageReqVO) {
|
public CommonResult<PageResult<FactoryKilnRespVO>> getFactoryKilnPage(@Valid FactoryKilnPageReqVO pageReqVO) {
|
||||||
PageResult<FactoryKilnDO> pageResult = factoryKilnService.getFactoryKilnPage(pageReqVO);
|
PageResult<FactoryKilnRespVO> pageResult = factoryKilnService.getFactoryKilnPage(pageReqVO);
|
||||||
return success(BeanUtils.toBean(pageResult, FactoryKilnRespVO.class));
|
return success(pageResult);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/export-excel")
|
@GetMapping("/export-excel")
|
||||||
@ -86,10 +86,10 @@ public class FactoryKilnController {
|
|||||||
public void exportFactoryKilnExcel(@Valid FactoryKilnPageReqVO pageReqVO,
|
public void exportFactoryKilnExcel(@Valid FactoryKilnPageReqVO pageReqVO,
|
||||||
HttpServletResponse response) throws IOException {
|
HttpServletResponse response) throws IOException {
|
||||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
List<FactoryKilnDO> list = factoryKilnService.getFactoryKilnPage(pageReqVO).getList();
|
List<FactoryKilnRespVO> list = factoryKilnService.getFactoryKilnPage(pageReqVO).getList();
|
||||||
// 导出 Excel
|
// 导出 Excel
|
||||||
ExcelUtils.write(response, "工厂窑炉.xls", "数据", FactoryKilnRespVO.class,
|
ExcelUtils.write(response, "工厂窑炉.xls", "数据", FactoryKilnRespVO.class,
|
||||||
BeanUtils.toBean(list, FactoryKilnRespVO.class));
|
list);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -1,6 +1,8 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo;
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
@ -22,7 +24,7 @@ public class FactoryKilnPageReqVO extends PageParam {
|
|||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
@Schema(description = "产能")
|
@Schema(description = "产能")
|
||||||
private Integer capacity;
|
private BigDecimal capacity;
|
||||||
|
|
||||||
@Schema(description = "创建时间")
|
@Schema(description = "创建时间")
|
||||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||||
|
@ -2,6 +2,8 @@ package cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo;
|
|||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
@ -14,20 +16,22 @@ import com.alibaba.excel.annotation.*;
|
|||||||
public class FactoryKilnRespVO {
|
public class FactoryKilnRespVO {
|
||||||
|
|
||||||
@Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "1055")
|
@Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "1055")
|
||||||
@ExcelProperty("主键id")
|
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
@Schema(description = "工厂id", requiredMode = Schema.RequiredMode.REQUIRED, example = "25583")
|
@Schema(description = "工厂id", requiredMode = Schema.RequiredMode.REQUIRED, example = "25583")
|
||||||
@ExcelProperty("工厂id")
|
|
||||||
private Long factoryId;
|
private Long factoryId;
|
||||||
|
|
||||||
|
@Schema(description = "工厂名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "25583")
|
||||||
|
@ExcelProperty("工厂名称")
|
||||||
|
private String factoryName;
|
||||||
|
|
||||||
@Schema(description = "名称", example = "赵六")
|
@Schema(description = "名称", example = "赵六")
|
||||||
@ExcelProperty("名称")
|
@ExcelProperty("名称")
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
@Schema(description = "产能")
|
@Schema(description = "产能")
|
||||||
@ExcelProperty("产能")
|
@ExcelProperty("产能")
|
||||||
private Integer capacity;
|
private BigDecimal capacity;
|
||||||
|
|
||||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
@ExcelProperty("创建时间")
|
@ExcelProperty("创建时间")
|
||||||
|
@ -2,6 +2,8 @@ package cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo;
|
|||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import javax.validation.constraints.*;
|
import javax.validation.constraints.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@ -21,6 +23,6 @@ public class FactoryKilnSaveReqVO {
|
|||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
@Schema(description = "产能")
|
@Schema(description = "产能")
|
||||||
private Integer capacity;
|
private BigDecimal capacity;
|
||||||
|
|
||||||
}
|
}
|
@ -1,33 +1,31 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline;
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline;
|
||||||
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||||
import javax.annotation.Resource;
|
|
||||||
import org.springframework.validation.annotation.Validated;
|
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
|
||||||
import io.swagger.v3.oas.annotations.Parameter;
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
|
||||||
|
|
||||||
import javax.validation.constraints.*;
|
|
||||||
import javax.validation.*;
|
|
||||||
import javax.servlet.http.*;
|
|
||||||
import java.util.*;
|
|
||||||
import java.io.IOException;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
|
||||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||||
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.*;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLinePageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLineRespVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.*;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLineSaveReqVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorypackingline.FactoryPackingLineDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorypackingline.FactoryPackingLineDO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.service.factorypackingline.FactoryPackingLineService;
|
import cn.iocoder.yudao.module.smartfactory.service.factorypackingline.FactoryPackingLineService;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import javax.validation.Valid;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||||
|
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
|
||||||
|
|
||||||
@Tag(name = "管理后台 - 打包线配置")
|
@Tag(name = "管理后台 - 打包线配置")
|
||||||
@RestController
|
@RestController
|
||||||
@ -75,8 +73,8 @@ public class FactoryPackingLineController {
|
|||||||
@Operation(summary = "获得打包线配置分页")
|
@Operation(summary = "获得打包线配置分页")
|
||||||
@PreAuthorize("@ss.hasPermission('smartfactory:factory-packing-line:query')")
|
@PreAuthorize("@ss.hasPermission('smartfactory:factory-packing-line:query')")
|
||||||
public CommonResult<PageResult<FactoryPackingLineRespVO>> getFactoryPackingLinePage(@Valid FactoryPackingLinePageReqVO pageReqVO) {
|
public CommonResult<PageResult<FactoryPackingLineRespVO>> getFactoryPackingLinePage(@Valid FactoryPackingLinePageReqVO pageReqVO) {
|
||||||
PageResult<FactoryPackingLineDO> pageResult = factoryPackingLineService.getFactoryPackingLinePage(pageReqVO);
|
PageResult<FactoryPackingLineRespVO> pageResult = factoryPackingLineService.getFactoryPackingLinePage(pageReqVO);
|
||||||
return success(BeanUtils.toBean(pageResult, FactoryPackingLineRespVO.class));
|
return success(pageResult);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/export-excel")
|
@GetMapping("/export-excel")
|
||||||
@ -86,10 +84,9 @@ public class FactoryPackingLineController {
|
|||||||
public void exportFactoryPackingLineExcel(@Valid FactoryPackingLinePageReqVO pageReqVO,
|
public void exportFactoryPackingLineExcel(@Valid FactoryPackingLinePageReqVO pageReqVO,
|
||||||
HttpServletResponse response) throws IOException {
|
HttpServletResponse response) throws IOException {
|
||||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||||
List<FactoryPackingLineDO> list = factoryPackingLineService.getFactoryPackingLinePage(pageReqVO).getList();
|
List<FactoryPackingLineRespVO> list = factoryPackingLineService.getFactoryPackingLinePage(pageReqVO).getList();
|
||||||
// 导出 Excel
|
// 导出 Excel
|
||||||
ExcelUtils.write(response, "打包线配置.xls", "数据", FactoryPackingLineRespVO.class,
|
ExcelUtils.write(response, "打包线配置.xls", "数据", FactoryPackingLineRespVO.class, list);
|
||||||
BeanUtils.toBean(list, FactoryPackingLineRespVO.class));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -1,12 +1,11 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo;
|
package cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo;
|
||||||
|
|
||||||
|
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||||
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.*;
|
import lombok.Data;
|
||||||
import java.util.*;
|
|
||||||
import java.util.*;
|
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import com.alibaba.excel.annotation.*;
|
|
||||||
|
|
||||||
@Schema(description = "管理后台 - 打包线配置 Response VO")
|
@Schema(description = "管理后台 - 打包线配置 Response VO")
|
||||||
@Data
|
@Data
|
||||||
@ -21,6 +20,10 @@ public class FactoryPackingLineRespVO {
|
|||||||
@ExcelProperty("工厂id")
|
@ExcelProperty("工厂id")
|
||||||
private Long factoryId;
|
private Long factoryId;
|
||||||
|
|
||||||
|
@Schema(description = "工厂名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "24676")
|
||||||
|
@ExcelProperty("工厂名称")
|
||||||
|
private String factoryName;
|
||||||
|
|
||||||
@Schema(description = "打包线名称", example = "王五")
|
@Schema(description = "打包线名称", example = "王五")
|
||||||
@ExcelProperty("打包线名称")
|
@ExcelProperty("打包线名称")
|
||||||
private String name;
|
private String name;
|
||||||
@ -33,6 +36,10 @@ public class FactoryPackingLineRespVO {
|
|||||||
@ExcelProperty("窑炉id")
|
@ExcelProperty("窑炉id")
|
||||||
private Long kilnId;
|
private Long kilnId;
|
||||||
|
|
||||||
|
@Schema(description = "窑炉名称", example = "15240")
|
||||||
|
@ExcelProperty("窑炉名称")
|
||||||
|
private String kilnName;
|
||||||
|
|
||||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
@ExcelProperty("创建时间")
|
@ExcelProperty("创建时间")
|
||||||
private LocalDateTime createTime;
|
private LocalDateTime createTime;
|
||||||
|
@ -43,6 +43,15 @@ public class FactoryScreenDataController {
|
|||||||
return success(provincesDataList);
|
return success(provincesDataList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/v2/getStaffData")
|
||||||
|
@Operation(summary = "大屏员工信息数据")
|
||||||
|
@OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
||||||
|
@PermitAll
|
||||||
|
public CommonResult<StaffDataRespVO> getStaffDataV2(@RequestParam(required = false) Long factoryId) {
|
||||||
|
StaffDataRespVO staffDataRespVO = screenDataService.getStaffDataV2(factoryId);
|
||||||
|
return success(staffDataRespVO);
|
||||||
|
}
|
||||||
|
|
||||||
@GetMapping("/getStaffData")
|
@GetMapping("/getStaffData")
|
||||||
@Operation(summary = "大屏员工信息数据")
|
@Operation(summary = "大屏员工信息数据")
|
||||||
@OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
@OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorykiln;
|
package cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorykiln;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
@ -38,6 +40,6 @@ public class FactoryKilnDO extends BaseDO {
|
|||||||
/**
|
/**
|
||||||
* 产能
|
* 产能
|
||||||
*/
|
*/
|
||||||
private Integer capacity;
|
private BigDecimal capacity;
|
||||||
|
|
||||||
}
|
}
|
@ -1,13 +1,15 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.dal.mysql.factorykiln;
|
package cn.iocoder.yudao.module.smartfactory.dal.mysql.factorykiln;
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.FactoryKilnPageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.FactoryKilnRespVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorykiln.FactoryKilnDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorykiln.FactoryKilnDO;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.*;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 工厂窑炉 Mapper
|
* 工厂窑炉 Mapper
|
||||||
@ -26,4 +28,12 @@ public interface FactoryKilnMapper extends BaseMapperX<FactoryKilnDO> {
|
|||||||
.orderByDesc(FactoryKilnDO::getId));
|
.orderByDesc(FactoryKilnDO::getId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页
|
||||||
|
*
|
||||||
|
* @param vo
|
||||||
|
* @param page
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
IPage<FactoryKilnRespVO> getFactoryKilnPage(@Param("vo") FactoryKilnPageReqVO vo, @Param("page") Page<Object> page);
|
||||||
}
|
}
|
@ -1,13 +1,15 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.dal.mysql.factorypackingline;
|
package cn.iocoder.yudao.module.smartfactory.dal.mysql.factorypackingline;
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLinePageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLineRespVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorypackingline.FactoryPackingLineDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorypackingline.FactoryPackingLineDO;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.*;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 打包线配置 Mapper
|
* 打包线配置 Mapper
|
||||||
@ -27,4 +29,12 @@ public interface FactoryPackingLineMapper extends BaseMapperX<FactoryPackingLine
|
|||||||
.orderByDesc(FactoryPackingLineDO::getId));
|
.orderByDesc(FactoryPackingLineDO::getId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页列表
|
||||||
|
*
|
||||||
|
* @param vo
|
||||||
|
* @param page
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
IPage<FactoryPackingLineRespVO> getFactoryPackingLinePage(@Param("vo") FactoryPackingLinePageReqVO vo, @Param("page") Page<Object> page);
|
||||||
}
|
}
|
@ -37,4 +37,11 @@ public interface StaffMapper extends BaseMapperX<StaffDO> {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<StaffDO> getStaffData(@Param("factoryId") Long factoryId);
|
List<StaffDO> getStaffData(@Param("factoryId") Long factoryId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取员工信息
|
||||||
|
* @param factoryId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<StaffDO> getStaffDataV2(@Param("factoryId") Long factoryId);
|
||||||
}
|
}
|
@ -50,6 +50,6 @@ public interface FactoryKilnService {
|
|||||||
* @param pageReqVO 分页查询
|
* @param pageReqVO 分页查询
|
||||||
* @return 工厂窑炉分页
|
* @return 工厂窑炉分页
|
||||||
*/
|
*/
|
||||||
PageResult<FactoryKilnDO> getFactoryKilnPage(FactoryKilnPageReqVO pageReqVO);
|
PageResult<FactoryKilnRespVO> getFactoryKilnPage(FactoryKilnPageReqVO pageReqVO);
|
||||||
|
|
||||||
}
|
}
|
@ -1,11 +1,15 @@
|
|||||||
package cn.iocoder.yudao.module.smartfactory.service.factorykiln;
|
package cn.iocoder.yudao.module.smartfactory.service.factorykiln;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.ArrayUtil;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.util.MyBatisUtils;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.FactoryKilnPageReqVO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.FactoryKilnPageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.FactoryKilnRespVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.FactoryKilnSaveReqVO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.FactoryKilnSaveReqVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorykiln.FactoryKilnDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorykiln.FactoryKilnDO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.mysql.factorykiln.FactoryKilnMapper;
|
import cn.iocoder.yudao.module.smartfactory.dal.mysql.factorykiln.FactoryKilnMapper;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
@ -51,8 +55,9 @@ public class FactoryKilnServiceImpl implements FactoryKilnService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PageResult<FactoryKilnDO> getFactoryKilnPage(FactoryKilnPageReqVO pageReqVO) {
|
public PageResult<FactoryKilnRespVO> getFactoryKilnPage(FactoryKilnPageReqVO pageReqVO) {
|
||||||
return factoryKilnMapper.selectPage(pageReqVO);
|
IPage<FactoryKilnRespVO> pageResult = factoryKilnMapper.getFactoryKilnPage(pageReqVO,MyBatisUtils.buildPage(pageReqVO));
|
||||||
|
return new PageResult<>(pageResult.getRecords(), pageResult.getTotal());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -50,6 +50,6 @@ public interface FactoryPackingLineService {
|
|||||||
* @param pageReqVO 分页查询
|
* @param pageReqVO 分页查询
|
||||||
* @return 打包线配置分页
|
* @return 打包线配置分页
|
||||||
*/
|
*/
|
||||||
PageResult<FactoryPackingLineDO> getFactoryPackingLinePage(FactoryPackingLinePageReqVO pageReqVO);
|
PageResult<FactoryPackingLineRespVO> getFactoryPackingLinePage(FactoryPackingLinePageReqVO pageReqVO);
|
||||||
|
|
||||||
}
|
}
|
@ -2,10 +2,14 @@ package cn.iocoder.yudao.module.smartfactory.service.factorypackingline;
|
|||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.util.MyBatisUtils;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.FactoryKilnRespVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLinePageReqVO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLinePageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLineRespVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLineSaveReqVO;
|
import cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLineSaveReqVO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorypackingline.FactoryPackingLineDO;
|
import cn.iocoder.yudao.module.smartfactory.dal.dataobject.factorypackingline.FactoryPackingLineDO;
|
||||||
import cn.iocoder.yudao.module.smartfactory.dal.mysql.factorypackingline.FactoryPackingLineMapper;
|
import cn.iocoder.yudao.module.smartfactory.dal.mysql.factorypackingline.FactoryPackingLineMapper;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
@ -51,8 +55,10 @@ public class FactoryPackingLineServiceImpl implements FactoryPackingLineService
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PageResult<FactoryPackingLineDO> getFactoryPackingLinePage(FactoryPackingLinePageReqVO pageReqVO) {
|
public PageResult<FactoryPackingLineRespVO> getFactoryPackingLinePage(FactoryPackingLinePageReqVO pageReqVO) {
|
||||||
return factoryPackingLineMapper.selectPage(pageReqVO);
|
IPage<FactoryPackingLineRespVO> pageResult = factoryPackingLineMapper.getFactoryPackingLinePage(pageReqVO, MyBatisUtils.buildPage(pageReqVO));
|
||||||
|
return new PageResult<>(pageResult.getRecords(), pageResult.getTotal());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -122,4 +122,11 @@ public interface ScreenDataService {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
ObtainFactoryInboundAndOutboundStatusVO getObtainFactoryInboundAndOutboundStatus(Long factoryId);
|
ObtainFactoryInboundAndOutboundStatusVO getObtainFactoryInboundAndOutboundStatus(Long factoryId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询员工数据
|
||||||
|
* @param factoryId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
StaffDataRespVO getStaffDataV2(Long factoryId);
|
||||||
}
|
}
|
@ -420,4 +420,9 @@ public class ScreenDataServiceImpl implements ScreenDataService {
|
|||||||
|
|
||||||
return vo;
|
return vo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StaffDataRespVO getStaffDataV2(Long factoryId) {
|
||||||
|
return staffService.getStaffDataV2(factoryId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -66,4 +66,11 @@ public interface StaffService {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Integer getCount();
|
Integer getCount();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询工厂员工信息
|
||||||
|
* @param factoryId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
StaffDataRespVO getStaffDataV2(Long factoryId);
|
||||||
}
|
}
|
@ -75,4 +75,15 @@ public class StaffServiceImpl implements StaffService {
|
|||||||
return Math.toIntExact(staffMapper.selectCount(new LambdaQueryWrapperX<StaffDO>().eq(StaffDO::getStatus, 1)));
|
return Math.toIntExact(staffMapper.selectCount(new LambdaQueryWrapperX<StaffDO>().eq(StaffDO::getStatus, 1)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StaffDataRespVO getStaffDataV2(Long factoryId) {
|
||||||
|
StaffDataRespVO vo = new StaffDataRespVO();
|
||||||
|
List<StaffDO> dos = staffMapper.getStaffDataV2(factoryId);
|
||||||
|
vo.setTotal(dos.size());
|
||||||
|
vo.setMaleTotal((int) dos.stream().filter(a -> a.getSex() == 0).count());
|
||||||
|
vo.setFemaleTotal((int) dos.stream().filter(a -> a.getSex() == 1).count());
|
||||||
|
vo.setStaffInfos(dos);
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -13,14 +13,39 @@
|
|||||||
resultType="cn.iocoder.yudao.module.smartfactory.controller.admin.factoryforklift.vo.FactoryForkliftRespVO">
|
resultType="cn.iocoder.yudao.module.smartfactory.controller.admin.factoryforklift.vo.FactoryForkliftRespVO">
|
||||||
select a.id,
|
select a.id,
|
||||||
a.assets_no as assetsNo,
|
a.assets_no as assetsNo,
|
||||||
d.name as name,
|
d.id AS factoryId,
|
||||||
|
d.name as factoryName,
|
||||||
c.id as forkliftId,
|
c.id as forkliftId,
|
||||||
|
b.dept_id as deptId,
|
||||||
c.*
|
c.*
|
||||||
from zc_assets as a
|
from zc_assets as a
|
||||||
left join zc_dept_assets as b on a.id = b.assets_id
|
LEFT JOIN zc_dept_assets AS b ON a.id = b.assets_id
|
||||||
left join sf_factory_forklift as c on a.assets_no = c.assets_no
|
LEFT JOIN system_dept AS dept ON dept.id = b.dept_id
|
||||||
left join sf_factory_info as d on c.factory_id = d.id
|
LEFT JOIN sf_factory_forklift AS c ON a.assets_no = c.assets_no
|
||||||
|
LEFT JOIN sf_factory_info AS d ON dept.factory_id = d.id
|
||||||
<where>
|
<where>
|
||||||
|
b.deleted = 0 AND b.stock > 0
|
||||||
|
<if test="vo.assetsNo != null and vo.assetsNo != ''">
|
||||||
|
and a.assets_no = #{vo.assetsNo}
|
||||||
|
</if>
|
||||||
|
<if test="vo.factoryId != null">
|
||||||
|
and c.factory_id = #{vo.factoryId}
|
||||||
|
</if>
|
||||||
|
<if test="vo.useType != null">
|
||||||
|
and c.use_type = #{vo.useType}
|
||||||
|
</if>
|
||||||
|
<if test="vo.name != null and vo.name != ''">
|
||||||
|
and c.name like concat('%', #{vo.name}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="vo.modelNo != null and vo.modelNo != ''">
|
||||||
|
and c.model_no like concat('%', #{vo.modelNo}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="vo.manufacturer != null and vo.manufacturer != ''">
|
||||||
|
and c.manufacturer like concat('%', #{vo.manufacturer}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="vo.licensePlate != null and vo.licensePlate != ''">
|
||||||
|
and c.license_plate like concat('%', #{vo.licensePlate}, '%')
|
||||||
|
</if>
|
||||||
<if test="vo.typeIds != null and vo.typeIds.size() > 0">
|
<if test="vo.typeIds != null and vo.typeIds.size() > 0">
|
||||||
and a.type_id in
|
and a.type_id in
|
||||||
<foreach collection="vo.typeIds" open="(" item="typeId" separator="," close=")">
|
<foreach collection="vo.typeIds" open="(" item="typeId" separator="," close=")">
|
||||||
|
@ -9,4 +9,22 @@
|
|||||||
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
<select id="getFactoryKilnPage"
|
||||||
|
resultType="cn.iocoder.yudao.module.smartfactory.controller.admin.factorykiln.vo.FactoryKilnRespVO">
|
||||||
|
select
|
||||||
|
a.*,
|
||||||
|
b.name as factoryName
|
||||||
|
from sf_factory_kiln as a
|
||||||
|
left join sf_factory_info as b on a.factory_id = b.id
|
||||||
|
<where>
|
||||||
|
a.deleted = 0
|
||||||
|
<if test="vo.factoryId != null">
|
||||||
|
and a.factory_id = #{vo.factoryId}
|
||||||
|
</if>
|
||||||
|
<if test="vo.name != null and vo.name != ''">
|
||||||
|
and a.name like concat('%', #{vo.name}, '%')
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
order by a.capacity desc
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -9,4 +9,28 @@
|
|||||||
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
<select id="getFactoryPackingLinePage"
|
||||||
|
resultType="cn.iocoder.yudao.module.smartfactory.controller.admin.factorypackingline.vo.FactoryPackingLineRespVO">
|
||||||
|
select a.*,
|
||||||
|
b.name as factoryName,
|
||||||
|
c.name as kilnName
|
||||||
|
from sf_factory_packing_line as a
|
||||||
|
left join sf_factory_info as b on a.factory_id = b.id
|
||||||
|
left join sf_factory_kiln as c on a.kiln_id = c.id
|
||||||
|
<where>
|
||||||
|
a.deleted = 0
|
||||||
|
<if test="vo.factoryId != null">
|
||||||
|
and a.factory_id = #{vo.factoryId}
|
||||||
|
</if>
|
||||||
|
<if test="vo.kilnId != null">
|
||||||
|
and a.kiln_id = #{vo.kilnId}
|
||||||
|
</if>
|
||||||
|
<if test="vo.type != null">
|
||||||
|
and a.type = #{vo.type}
|
||||||
|
</if>
|
||||||
|
<if test="vo.name != null and vo.name != ''">
|
||||||
|
and a.name like concat('%', #{vo.name}, '%')
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -25,4 +25,31 @@
|
|||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getStaffDataV2" resultType="cn.iocoder.yudao.module.smartfactory.dal.dataobject.staff.StaffDO">
|
||||||
|
SELECT
|
||||||
|
a.id as id,
|
||||||
|
a.id as staffNo,
|
||||||
|
a.nickname as nickName,
|
||||||
|
a.age as age,
|
||||||
|
a.sex as sex,
|
||||||
|
ext.work_type as workType,
|
||||||
|
b.factory_id as factoryId,
|
||||||
|
a.idcard as idCard,
|
||||||
|
a.status as status,
|
||||||
|
d.label as postName
|
||||||
|
FROM
|
||||||
|
system_users AS a
|
||||||
|
LEFT JOIN system_users_ext AS ext ON a.id = ext.user_id
|
||||||
|
LEFT JOIN system_dept AS b ON a.dept_id = b.id
|
||||||
|
LEFT JOIN sf_factory_info AS c ON b.factory_id = c.id
|
||||||
|
left join system_dict_data as d on ext.work_type = d.value
|
||||||
|
<where>
|
||||||
|
a.user_type = 2
|
||||||
|
and a.deleted = 0
|
||||||
|
and d.dict_type = 'user_work_type'
|
||||||
|
<if test="factoryId != null">
|
||||||
|
and b.factory_id = #{factoryId}
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
Loading…
Reference in New Issue
Block a user