Merge branch 'develop-QA'

develop-QA
Tom Li 3 months ago
commit ffd01d8dbf
  1. 24
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/dto/RelTeamSetUserDTO.java
  2. 49
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/entity/RelTeamSetUser.java
  3. 244
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/entity/TeamSet.java
  4. 24
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/vo/RelTeamSetUserVO.java
  5. 19
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/vo/TeamSetVO.java
  6. 15
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/basic/pojo/vo/UrlVO.java
  7. 11
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/IotHardness.java
  8. 6
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/entity/ReviewSheet.java
  9. 13
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/request/ReviewSheetErpSearch.java
  10. 14
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/request/ReviewSheetInitSearch.java
  11. 13
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/request/ReviewSheetRedoSearch.java
  12. 13
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/request/ReviewSheetScrapSearch.java
  13. 13
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/request/ReviewSheetSelfSearch.java
  14. 3
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/InspectionItemVO.java
  15. 7
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/InspectionTaskDetailVO.java
  16. 16
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/InspectionTaskListVO.java
  17. 38
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/InspectionTaskSubPartVO.java
  18. 7
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/ReviewFaultVO.java
  19. 35
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/ReviewSheetErpListVO.java
  20. 41
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/ReviewSheetInitListVO.java
  21. 24
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/ReviewSheetRedoListVO.java
  22. 29
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/ReviewSheetScrapListVO.java
  23. 41
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/ReviewSheetSelfListVO.java
  24. 18
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/ReviewSheetVO.java
  25. 7
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/WorkPlanItemDetailVO.java
  26. 10
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/vo/WorkPlanItemVO.java
  27. 237
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/RelTeamSetUserController.java
  28. 13
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/controller/TeamSetController.java
  29. 45
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/excel/RelTeamSetUserExcel.java
  30. 40
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/mapper/RelTeamSetUserMapper.java
  31. 18
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/mapper/RelTeamSetUserMapper.xml
  32. 44
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/IRelTeamSetUserService.java
  33. 90
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/ITeamSetService.java
  34. 61
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/RelTeamSetUserServiceImpl.java
  35. 90
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/service/impl/TeamSetServiceImpl.java
  36. 36
      blade-service/blade-desk/src/main/java/org/springblade/desk/basic/wrapper/RelTeamSetUserWrapper.java
  37. 102
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/constant/ReviewSheetConst.java
  38. 56
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/InspectionTaskController.java
  39. 362
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/IotHardnessController.java
  40. 336
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/IotThicknessController.java
  41. 146
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/ReviewSheetController.java
  42. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/InspectionTaskMapper.xml
  43. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/IotHardnessMapper.xml
  44. 7
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IInspectionTaskService.java
  45. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IReviewDutyService.java
  46. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IReviewFaultService.java
  47. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IReviewSheetService.java
  48. 75
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/InspectionTaskServiceImpl.java
  49. 17
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/ReviewDutyServiceImpl.java
  50. 48
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/ReviewFaultServiceImpl.java
  51. 54
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/ReviewSheetServiceImpl.java
  52. 19
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/WorkPlanItemServiceImpl.java
  53. 37
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/wrapper/ReviewSheetErpListWrapper.java
  54. 37
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/wrapper/ReviewSheetInitListWrapper.java
  55. 37
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/wrapper/ReviewSheetRedoListWrapper.java
  56. 37
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/wrapper/ReviewSheetScrapListWrapper.java
  57. 37
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/wrapper/ReviewSheetSelfListWrapper.java

@ -0,0 +1,24 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.pojo.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.basic.pojo.entity.RelTeamSetUser;
import java.io.Serial;
/**
* [班组用户关联] 数据传输对象实体类
*
* @author Tom Shuo
* @since 2026-01-13
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class RelTeamSetUserDTO extends RelTeamSetUser {
@Serial
private static final long serialVersionUID = 1L;
}

@ -0,0 +1,49 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
import java.io.Serial;
import java.math.BigDecimal;
/**
* [班组用户关联] 实体类
*
* @author Tom Shuo
* @since 2026-01-13
*/
@Data
@TableName("BA_REL_TEAM_SET_USER")
@Schema(description = "RelTeamSetUser Entity对象")
@EqualsAndHashCode(callSuper = true)
public class RelTeamSetUser extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* [班组]id
*/
public static final String COL_TEAM_SET_ID = "TEAM_SET_ID";
/**
* [用户]id
*/
public static final String COL_USER_ID = "USER_ID";
/**
* [班组]id
*/
@Schema(description = "[班组]id")
private Long teamSetId;
/**
* [用户]id
*/
@Schema(description = "[用户]id")
private Long userId;
}

@ -24,143 +24,143 @@ import java.io.Serial;
@EqualsAndHashCode(callSuper = true)
public class TeamSet extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
@Serial
private static final long serialVersionUID = 1L;
/**
* 编码
*/
/**
* 编码
*/
public static final String COL_TS_CODE = "TS_CODE";
/**
* 名称
*/
/**
* 名称
*/
public static final String COL_TS_NAME = "TS_NAME";
/**
* 调度员
*/
/**
* 调度员
*/
public static final String COL_DISPATCHER = "DISPATCHER";
/**
* 班组长;外键人员
*/
/**
* 班组长[用户]id
*/
public static final String COL_TEAM_LEADER = "TEAM_LEADER";
/**
* 班次;外键班次
*/
/**
* 班次;外键班次
*/
public static final String COL_CS_ID = "CS_ID";
/**
* 日分派时间
*/
/**
* 日分派时间
*/
public static final String COL_DAY_PUT_DUE_TIME = "DAY_PUT_DUE_TIME";
/**
* 创建人;外键人员
*/
/**
* 创建人;外键人员
*/
public static final String COL_CREATE_MAN = "CREATE_MAN";
/**
* 作业中心
*/
/**
* 作业中心
*/
public static final String COL_WC_ID = "WC_ID";
/**
*
*/
/**
*
*/
public static final String COL_SPECIAL = "SPECIAL";
/**
*
*/
/**
*
*/
public static final String COL_PLANNER = "PLANNER";
/**
*
*/
/**
*
*/
public static final String COL_TEAM_MEMBER = "TEAM_MEMBER";
/**
*
*/
/**
*
*/
public static final String COL_SPEC_DAY_PUT_DUE_TIME = "SPEC_DAY_PUT_DUE_TIME";
/**
*
*/
/**
*
*/
public static final String COL_EX_CHANGE_TIME = "EX_CHANGE_TIME";
/**
* 类型;1针孔2壳体3烧结4园区5外协
*/
/**
* 类型-[1]针孔;[2]-壳体;[3]烧结;[4]:园区;[5]:外协;
*/
public static final String COL_TS_TYPE = "TS_TYPE";
/**
* 备注
*/
/**
* 备注
*/
public static final String COL_REMARK = "REMARK";
/**
* 编码
*/
@Schema(description = "编码")
private String tsCode;
/**
* 名称
*/
@Schema(description = "名称")
private String tsName;
/**
* 调度员
*/
@Schema(description = "调度员")
private Long dispatcher;
/**
* 班组长;外键人员
*/
@Schema(description = "班组长;外键(人员)")
private Long teamLeader;
/**
* 班次;外键班次
*/
@Schema(description = "班次;外键(班次)")
private Long csId;
/**
* 日分派时间
*/
@Schema(description = "日分派时间")
private String dayPutDueTime;
/**
* 创建人;外键人员
*/
@Schema(description = "创建人;外键(人员)")
private Long createMan;
/**
* 作业中心
*/
@Schema(description = "作业中心")
private Long wcId;
/**
*
*/
@Schema(description = "")
private String special;
/**
*
*/
@Schema(description = "")
private Long planner;
/**
*
*/
@Schema(description = "")
private String teamMember;
/**
*
*/
@Schema(description = "")
private String specDayPutDueTime;
/**
*
*/
@Schema(description = "")
private String exChangeTime;
/**
* 类型;1针孔2壳体3烧结4园区5外协
*/
@Schema(description = "类型;1、针孔,2、壳体,3、烧结,4、园区,5、外协")
private Short tsType;
/**
* 备注
*/
@Schema(description = "备注")
private String remark;
/**
* 编码
*/
@Schema(description = "编码")
private String tsCode;
/**
* 名称
*/
@Schema(description = "名称")
private String tsName;
/**
* 调度员
*/
@Schema(description = "调度员")
private Long dispatcher;
/**
* 班组长;外键人员
*/
@Schema(description = "班组长[用户]id")
private Long teamLeader;
/**
* 班次;外键班次
*/
@Schema(description = "班次;外键(班次)")
private Long csId;
/**
* 日分派时间
*/
@Schema(description = "日分派时间")
private String dayPutDueTime;
/**
* 创建人;外键人员
*/
@Schema(description = "创建人;外键(人员)")
private Long createMan;
/**
* 作业中心
*/
@Schema(description = "作业中心")
private Long wcId;
/**
* 特殊标识
*/
@Schema(description = "")
private String special;
/**
* 计划员[用户]id
*/
@Schema(description = "")
private Long planner;
/**
* 班组成员
*/
@Schema(description = "")
private String teamMember;
/**
* 特殊日分派时间
*/
@Schema(description = "")
private String specDayPutDueTime;
/**
* 轮换时间
*/
@Schema(description = "")
private String exChangeTime;
/**
* 类型-[1]针孔;[2]-壳体;[3]烧结;[4]:园区;[5]:外协;
*/
@Schema(description = "类型-[1]针孔;[2]-壳体;[3]烧结;[4]:园区;[5]:外协;")
private Short tsType;
/**
* 备注
*/
@Schema(description = "备注")
private String remark;
}

@ -0,0 +1,24 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.pojo.vo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.basic.pojo.entity.RelTeamSetUser;
import java.io.Serial;
/**
* [班组用户关联] 视图实体类
*
* @author Tom Shuo
* @since 2026-01-13
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class RelTeamSetUserVO extends RelTeamSetUser {
@Serial
private static final long serialVersionUID = 1L;
}

@ -3,6 +3,7 @@
*/
package org.springblade.desk.basic.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.basic.pojo.entity.TeamSet;
@ -18,7 +19,21 @@ import java.io.Serial;
@Data
@EqualsAndHashCode(callSuper = true)
public class TeamSetVO extends TeamSet {
@Serial
private static final long serialVersionUID = 1L;
@Serial
private static final long serialVersionUID = 1L;
@Schema(description = "班组长[用户]真名")
private String teamLeaderRealName;
@Schema(description = "计划员[用户]真名")
private Long plannerRealName;
@Schema(description = "调度员[用户]真名")
private Long dispatcherRealName;
@Schema(description = "[班次]名称")
private String shiftsName;
@Schema(description = "类型分类")
private String tsTypeName;
}

@ -0,0 +1,15 @@
package org.springblade.desk.basic.pojo.vo;
import lombok.Data;
import lombok.EqualsAndHashCode;
@Data
@EqualsAndHashCode()
public class UrlVO {
public UrlVO(String url) {
this.url = url;
}
private String url = "";
}

@ -68,6 +68,10 @@ public class IotHardness extends BaseEntity {
* [设备]id
*/
public static final String COL_EQUIPMENT_ID = "EQUIPMENT_ID";
/**
* IP
*/
public static final String COL_IP = "IP";
/**
* 编码
@ -118,5 +122,10 @@ public class IotHardness extends BaseEntity {
* [设备]id
*/
@Schema(description = "[设备]id")
private BigDecimal equipmentId;
private Long equipmentId;
/**
* [设备]id
*/
@Schema(description = "ip")
private String ip;
}

@ -125,7 +125,7 @@ public class ReviewSheet extends BaseEntity {
*/
public static final String COL_REVIEW_STATUS = "REVIEW_STATUS";
/**
* 业务类型-[1]:内部审理返修;[2]:内部审理报废;[3]:ERP审理返修;[4]:ERP审理报废;
* 业务类型-[1]:内部审理返修;[2]:内部审理报废;[3]:ERP审理;
*/
public static final String COL_BIZ_TYPE = "BIZ_TYPE";
/**
@ -229,7 +229,7 @@ public class ReviewSheet extends BaseEntity {
* 不合格数量
*/
@Schema(description = "不合格数量")
private Short unqualifiedQty;
private Double unqualifiedQty;
/**
* 上级编号
*/
@ -304,7 +304,7 @@ public class ReviewSheet extends BaseEntity {
* 业务类型-[1]:内部审理返修;[2]:内部审理报废;[3]:ERP审理;
*/
@Schema(description = "业务类型-[1]:内部审理返修;[2]:内部审理报废;[3]:ERP审理;")
private Short bizType;
private Integer bizType;
/**
* 物料号
*/

@ -0,0 +1,13 @@
package org.springblade.desk.quality.pojo.request;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* todo:
*/
@Data
@EqualsAndHashCode()
public class ReviewSheetErpSearch {
}

@ -0,0 +1,14 @@
package org.springblade.desk.quality.pojo.request;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
/**
* todo:
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class ReviewSheetInitSearch extends ReviewSheet {
}

@ -0,0 +1,13 @@
package org.springblade.desk.quality.pojo.request;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* todo:
*/
@Data
@EqualsAndHashCode()
public class ReviewSheetRedoSearch {
}

@ -0,0 +1,13 @@
package org.springblade.desk.quality.pojo.request;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* todo:
*/
@Data
@EqualsAndHashCode()
public class ReviewSheetScrapSearch {
}

@ -0,0 +1,13 @@
package org.springblade.desk.quality.pojo.request;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* todo:
*/
@Data
@EqualsAndHashCode()
public class ReviewSheetSelfSearch {
}

@ -3,6 +3,7 @@
*/
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.InspectionItem;
@ -21,4 +22,6 @@ public class InspectionItemVO extends InspectionItem {
@Serial
private static final long serialVersionUID = 1L;
@Schema(description = "检验类型 名称")
private String itemTypeName = "检验类型A";
}

@ -3,6 +3,7 @@
*/
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.InspectionTask;
@ -27,6 +28,12 @@ public class InspectionTaskDetailVO extends InspectionTask {
@Serial
private static final long serialVersionUID = 1L;
/**
* todo:
*/
@Schema(description = "工序名称")
private String processName = "工序名称A";
private InspectionTaskListVO orderInfo;
private List<RemindMsg> remindMsgList;

@ -3,6 +3,7 @@
*/
package org.springblade.desk.quality.pojo.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -56,10 +57,14 @@ public class InspectionTaskListVO extends InspectionTask {
private String batchNo = "XXXX12345";
@Schema(description = "分批号")
private String poBatchNo = "XXXX12345";
@Schema(description = "当前工序")
@Schema(description = "当前[工序]名称")
private String currentProcessName = "XXXX12345";
@Schema(description = "下个工序")
@Schema(description = "当前[工序]id")
private Long currentProcessId = 100L;
@Schema(description = "下个[工序]名称")
private String nextProcessName = "XXXX12345";
@Schema(description = "下个[工序]id")
private Long nextProcessId = 100L;
@Schema(description = "面积")
private Double area = 100.10;
@Schema(description = "总面积")
@ -69,6 +74,7 @@ public class InspectionTaskListVO extends InspectionTask {
@Schema(description = "接收时间")
private LocalDateTime receiveDate = LocalDateTime.now();
@Schema(description = "订单-产品号")
private String prodCode = "XXXX12345";
@Schema(description = "订单-产品型号")
@ -95,4 +101,10 @@ public class InspectionTaskListVO extends InspectionTask {
private String remark;
@Schema(description = "订单-提醒内容")
private String remindContent;
// todo:
@Schema(description = "同槽编号/同炉编号")
private String sameNo = "tank-1001";
// todo:
@Schema(description = "材料")
private String material = "铜";
}

@ -0,0 +1,38 @@
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
@Data
@EqualsAndHashCode()
public class InspectionTaskSubPartVO {
// todo:
@Schema(description = "子件号")
private String subPartCode = "SU11";
@Schema(description = "子件名称")
private String subPartName = "XS";
@Schema(description = "数量")
private Double qty = 100d;
@Schema(description = "产品型号")
private String prodTypeName = "iw100";
@Schema(description = "子件类型")
private String subPartTypeName = "subX1";
@Schema(description = "镀种")
private String plateName = "镀金";
@Schema(description = "材料")
private String material = "Au";
@Schema(description = "面积")
private Double area = 100d;
@Schema(description = "总面积")
private Double totalArea = 100d;
@Schema(description = "镀层代码")
private String matCode = "mat100";
@Schema(description = "镀层厚度")
private Long thickness = 10L;
@Schema(description = "备注")
private String remark = "";
@Schema(description = "修改人")
private String updateUserRealName = "";
}

@ -3,6 +3,7 @@
*/
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.ReviewFault;
@ -21,4 +22,10 @@ public class ReviewFaultVO extends ReviewFault {
@Serial
private static final long serialVersionUID = 1L;
@Schema(description = "故障类别[缺陷]名称")
private String ngType2Name;
@Schema(description = "问题大类[缺陷]名称")
private String ngType3Name;
@Schema(description = "问题小类[缺陷]名称")
private String ngType4Name;
}

@ -0,0 +1,35 @@
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.basic.pojo.vo.BaseEntityVO;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
@Data
@EqualsAndHashCode(callSuper = true)
public class ReviewSheetErpListVO extends ReviewSheet {
@Schema(description = "BaseEntityVO")
private BaseEntityVO base;
@Schema(description = "审理状态 名称")
private String reviewStatusName;
@Schema(description = "审理[用户]真名")
private String reviewUserRealName;
@Schema(description = "打回[用户]真名")
private String backUserRealName;
@Schema(description = "责任零件")
private String dutyPart;
@Schema(description = "责任批号")
private String dutyBatNo;
@Schema(description = "工序号")
private String processNo;
@Schema(description = "工序名称")
private String processName;
@Schema(description = "发生单位")
private String ngOrg;
@Schema(description = "责任部门")
private String dutyDeptName;
@Schema(description = "零件号")
private String partCode;
}

@ -0,0 +1,41 @@
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.basic.pojo.vo.BaseEntityVO;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
@Data
@EqualsAndHashCode(callSuper = true)
public class ReviewSheetInitListVO extends ReviewSheet {
@Schema(description = "BaseEntityVO")
private BaseEntityVO base;
@Schema(description = "单据编号")
private String docCode;
@Schema(description = "车间订单号")
private String woCode;
@Schema(description = "产品编号")
private String prodCode;
@Schema(description = "产品名称")
private String prodName;
@Schema(description = "产品型号名称")
private String prodTypeName;
@Schema(description = "生产标识")
private String prodIdent;
@Schema(description = "批次号")
private String batchNo;
@Schema(description = "流程卡号")
private String cardNo;
@Schema(description = "生产数量")
private Double poQty;
@Schema(description = "[生产处置单]模式 名称")
private String reviewOrderModeName;
@Schema(description = "打回[用户]真名")
private String backUserRealName;
@Schema(description = "审理状态 名称")
private String reviewStatusName;
@Schema(description = "审理[用户]真名")
private String reviewUserRealName;
}

@ -0,0 +1,24 @@
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.basic.pojo.vo.BaseEntityVO;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
@Data
@EqualsAndHashCode(callSuper = true)
public class ReviewSheetRedoListVO extends ReviewSheet {
@Schema(description = "BaseEntityVO")
private BaseEntityVO base;
@Schema(description = "审理状态 名称")
private String reviewStatusName;
@Schema(description = "审理[用户]真名")
private String reviewUserRealName;
@Schema(description = "打回[用户]真名")
private String backUserRealName;
@Schema(description = "车间订单号")
private String woCode;
}

@ -0,0 +1,29 @@
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.basic.pojo.vo.BaseEntityVO;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
@Data
@EqualsAndHashCode(callSuper = true)
public class ReviewSheetScrapListVO extends ReviewSheet {
@Schema(description = "BaseEntityVO")
private BaseEntityVO base;
@Schema(description = "审理状态 名称")
private String reviewStatusName;
@Schema(description = "审理[用户]真名")
private String reviewUserRealName;
@Schema(description = "打回[用户]真名")
private String backUserRealName;
@Schema(description = "车间订单号")
private String woCode;
@Schema(description = "供应商代码")
private String oemCode;
@Schema(description = "供应商名称")
private String oemName;
@Schema(description = "镀前价格")
private String priceBeforePlate;
}

@ -0,0 +1,41 @@
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.basic.pojo.vo.BaseEntityVO;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
@Data
@EqualsAndHashCode(callSuper = true)
public class ReviewSheetSelfListVO extends ReviewSheet {
@Schema(description = "BaseEntityVO")
private BaseEntityVO base;
@Schema(description = "单据编号")
private String docCode;
@Schema(description = "车间订单号")
private String woCode;
@Schema(description = "产品编号")
private String prodCode;
@Schema(description = "产品名称")
private String prodName;
@Schema(description = "产品型号名称")
private String prodTypeName;
@Schema(description = "生产标识")
private String prodIdent;
@Schema(description = "批次号")
private String batchNo;
@Schema(description = "流程卡号")
private String cardNo;
@Schema(description = "生产数量")
private Double poQty;
@Schema(description = "[生产处置单]模式 名称")
private String reviewOrderModeName;
@Schema(description = "打回[用户]真名")
private String backUserRealName;
@Schema(description = "审理状态 名称")
private String reviewStatusName;
@Schema(description = "审理[用户]真名")
private String reviewUserRealName;
}

@ -3,6 +3,7 @@
*/
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
@ -11,7 +12,7 @@ import java.io.Serial;
import java.util.List;
/**
* [生产处置单] 视图实体类
* [生产处置单] 视图实体类 detail详情
*
* @author Tom Shuo
* @since 2026-01-06
@ -22,13 +23,12 @@ public class ReviewSheetVO extends ReviewSheet {
@Serial
private static final long serialVersionUID = 1L;
@Schema(description = "故障list")
private List<ReviewFaultVO> faultList;
@Schema(description = "故障删除ids")
private String faultDeleteIds = "";
@Schema(description = "责任零件list")
private List<ReviewDutyVO> dutyList;
private String dutyDeleteIds;
private List<ReviewFaultVO> faultList;
private String faultDeleteIds;
private Integer submitErpType;
@Schema(description = "责任零件删除ids")
private String dutyDeleteIds = "";
}

@ -3,6 +3,7 @@
*/
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.WorkPlanItemDetail;
@ -18,7 +19,9 @@ import java.io.Serial;
@Data
@EqualsAndHashCode(callSuper = true)
public class WorkPlanItemDetailVO extends WorkPlanItemDetail {
@Serial
private static final long serialVersionUID = 1L;
@Serial
private static final long serialVersionUID = 1L;
@Schema(description = "[量具]名称")
private String mtName = "标尺1";
}

@ -3,6 +3,7 @@
*/
package org.springblade.desk.quality.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.quality.pojo.entity.InspectionItem;
@ -25,9 +26,14 @@ public class WorkPlanItemVO extends WorkPlanItem {
@Serial
private static final long serialVersionUID = 1L;
@Schema(description = "检验员 真名")
private String checkUserRealName;
@Schema(description = "检验项目 Obj")
private InspectionItemVO item;
@Schema(description = "检验标准 Obj")
private StandardVO standard;
// @Schema(description = "工序对象 Obj")
// private DsProcessEntity process;
@Schema(description = "wp详情 List")
private List<WorkPlanItemDetailVO> wpItemDetailList;
}

@ -0,0 +1,237 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.excel.RelTeamSetUserExcel;
import org.springblade.desk.basic.pojo.entity.RelTeamSetUser;
import org.springblade.desk.basic.pojo.vo.RelTeamSetUserVO;
import org.springblade.desk.basic.service.IRelTeamSetUserService;
import org.springblade.desk.basic.util.ExcelExtUtil;
import org.springblade.desk.basic.wrapper.RelTeamSetUserWrapper;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* [班组用户关联] 控制器
*
* @author Tom Shuo
* @since 2026-01-13
*/
@RestController
@RequestMapping("/RelTeamSetUser")
@Data
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@Slf4j
@Tag(name = "[班组用户关联]", description = "[班组用户关联]接口")
public class RelTeamSetUserController extends BladeController {
@Resource
private IRelTeamSetUserService service;
/**
* [班组用户关联] 详情
*/
@GetMapping("/detail")
@ApiOperationSupport(order = 10)
@Operation(summary = "详情", description = "传入RelTeamSetUser Obj")
public R<RelTeamSetUserVO> detail(RelTeamSetUser relTeamSetUser) {
QueryWrapper<RelTeamSetUser> qw = Condition.getQueryWrapper(relTeamSetUser);
RelTeamSetUser detail = service.getOne(qw);
RelTeamSetUserVO detailVO = RelTeamSetUserWrapper.build().entityVO(detail);
service.setVOValue(detailVO);
return R.data(detailVO);
}
/**
* [班组用户关联] list分页
*/
@GetMapping("/list")
@ApiOperationSupport(order = 20)
@Operation(summary = "list分页", description = "传入RelTeamSetUser Obj")
public R<IPage<RelTeamSetUserVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> relTeamSetUser,
Query query) {
QueryWrapper<RelTeamSetUser> qw = Condition.getQueryWrapper(relTeamSetUser, RelTeamSetUser.class);
IPage<RelTeamSetUser> pages = service.page(Condition.getPage(query), qw);
IPage<RelTeamSetUserVO> pagesVO = RelTeamSetUserWrapper.build().pageVO(pages);
pagesVO.getRecords()
.stream()
.peek(service::setVOValue)
.collect(Collectors.toList());
return R.data(pagesVO);
}
/**
* [班组用户关联] page分页
*/
@GetMapping("/page")
@ApiOperationSupport(order = 21)
@Operation(summary = "page分页", description = "传入RelTeamSetUser Obj")
public R<IPage<RelTeamSetUserVO>> page(RelTeamSetUserVO relTeamSetUser, Query query) {
IPage<RelTeamSetUserVO> pagesVO = service.selectRelTeamSetUserPage(
Condition.getPage(query), relTeamSetUser
);
return R.data(pagesVO);
}
/**
* [班组用户关联] list下拉选择
*/
@GetMapping("/listForSelect")
@ApiOperationSupport(order = 22)
@Operation(summary = "list下拉选择", description = "")
public R<List<RelTeamSetUserVO>> listForSelect() {
List<RelTeamSetUser> list = service.list();
List<RelTeamSetUserVO> listVO = RelTeamSetUserWrapper.build().listVO(list);
return R.data(listVO);
}
/**
* [班组用户关联] 新增一条
*/
@PostMapping("/save")
@ApiOperationSupport(order = 30)
@Operation(summary = "新增一条", description = "传入RelTeamSetUser Obj")
public R save(@Valid @RequestBody RelTeamSetUser addOne) {
addOne.setId(null);
return R.status(service.save(addOne));
}
/**
* [班组用户关联] 新增批量
*/
@PostMapping("/saveBat")
@ApiOperationSupport(order = 31)
@Operation(summary = "新增批量", description = "传入RelTeamSetUser List")
public R saveBat(@Valid @RequestBody List<RelTeamSetUser> addList) {
addList.forEach(one -> {
one.setId(null);
});
return R.status(service.saveBatch(addList));
}
/**
* [班组用户关联] 修改一条
*/
@PostMapping("/update")
@ApiOperationSupport(order = 40)
@Operation(summary = "修改一条", description = "传入RelTeamSetUser Obj")
public R update(@Valid @RequestBody RelTeamSetUser updateOne) {
return R.status(service.updateById(updateOne));
}
/**
* [班组用户关联] 修改批量
*/
@PostMapping("/updateBat")
@ApiOperationSupport(order = 41)
@Operation(summary = "修改批量", description = "传入RelTeamSetUser List")
public R updateBat(@Valid @RequestBody List<RelTeamSetUser> updateList) {
return R.status(service.updateBatchById(updateList));
}
/**
* [班组用户关联] 新增或修改一条
*/
@PostMapping("/submit")
@ApiOperationSupport(order = 50)
@Operation(summary = "新增或修改一条", description = "传入RelTeamSetUser Obj")
public R submit(@Valid @RequestBody RelTeamSetUser mergeOne) {
return R.status(service.saveOrUpdate(mergeOne));
}
/**
* [班组用户关联] 新增或修改批量
*/
@PostMapping("/submitBat")
@ApiOperationSupport(order = 51)
@Operation(summary = "新增或修改批量", description = "传入RelTeamSetUser List")
public R submitBat(@Valid @RequestBody List<RelTeamSetUser> mergeList) {
return R.status(service.saveOrUpdateBatch(mergeList));
}
/**
* [班组用户关联] 逻辑删除
*/
@PostMapping("/remove")
@ApiOperationSupport(order = 61)
@Operation(summary = "逻辑删除", description = "传入ids")
public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
return R.status(service.deleteLogic(Func.toLongList(ids)));
}
/**
* [班组用户关联] 导出Excel
*/
@GetMapping("/exportExcel")
@ApiOperationSupport(order = 70)
@Operation(summary = "导出Excel", description = "传入RelTeamSetUser")
public void exportExcel(@Parameter(hidden = true) @RequestParam Map<String, Object> relTeamSetUser,
BladeUser bladeUser, HttpServletResponse response) {
QueryWrapper<RelTeamSetUser> qw = Condition.getQueryWrapper(relTeamSetUser, RelTeamSetUser.class);
//if (!AuthUtil.isAdministrator()) {
// queryWrapper.lambda().eq(RelTeamSetUser::getTenantId, bladeUser.getTenantId());
//}
//queryWrapper.lambda().eq(RelTeamSetUserEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
List<RelTeamSetUserExcel> list = service.exportRelTeamSetUser(qw);
ExcelUtil.export(response, "[班组用户关联]数据" + DateUtil.time(),
"[班组用户关联]数据表", list, RelTeamSetUserExcel.class);
}
/**
* [班组用户关联] 下载Excel模板
*/
@GetMapping("/downloadExcelTemplate")
@ApiOperationSupport(order = 71)
@Operation(summary = "下载Excel模板", description = "")
public ResponseEntity<org.springframework.core.io.Resource> downloadExcelTemplate() {
return ExcelExtUtil.downloadXlsTemplate(
"Excel/QA/ImportTemplate-CycleTestItem.xls",
"导入模版-周期试验项目.xls");
}
/**
* [班组用户关联] 导入Excel
*/
@PostMapping("/importExcel")
@ApiOperationSupport(order = 72)
@Operation(summary = "导入Excel", description = "MultipartFile")
public R importExcel(@RequestParam("file") MultipartFile file) {
R checkR = ExcelExtUtil.importExcelCheck(file);
if (checkR != null) {
return checkR;
}
List<RelTeamSetUser> importList = ExcelUtil.read(
file, 0, 1, RelTeamSetUser.class
);
return R.status(service.saveBatch(importList));
}
}

@ -127,6 +127,19 @@ public class TeamSetController extends BladeController {
return R.data(listVO);
}
/**
* [班组] getOneByUserId
*/
@GetMapping("/getOneByUserId")
@ApiOperationSupport(order = 23)
@Operation(summary = "getOneByUserId", description = "")
public R<TeamSetVO> getOneByUserId(
@Parameter(description = "用户id", required = true) @RequestParam Long userId) {
TeamSet one = service.getOneByUserId(userId);
TeamSetVO vo = TeamSetWrapper.build().entityVO(one);
return R.data(vo);
}
/**
* [班组] 新增一条
*/

@ -0,0 +1,45 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* [班组用户关联] Excel实体类
*
* @author Tom Shuo
* @since 2026-01-13
*/
@Data
@ColumnWidth(25)
@HeadRowHeight(20)
@ContentRowHeight(18)
public class RelTeamSetUserExcel implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* [班组]id
*/
@ColumnWidth(20)
@ExcelProperty("[班组]id")
private BigDecimal teamSetId;
/**
* [用户]id
*/
@ColumnWidth(20)
@ExcelProperty("[用户]id")
private BigDecimal userId;
}

@ -0,0 +1,40 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.springblade.desk.basic.excel.RelTeamSetUserExcel;
import org.springblade.desk.basic.pojo.entity.RelTeamSetUser;
import org.springblade.desk.basic.pojo.vo.RelTeamSetUserVO;
import java.util.List;
/**
* [班组用户关联] Mapper 接口
*
* @author Tom Shuo
* @since 2026-01-13
*/
public interface RelTeamSetUserMapper extends BaseMapper<RelTeamSetUser> {
/**
* 自定义分页
*
* @param page 分页参数
* @param relTeamSetUser 查询参数
* @return List<RelTeamSetUserVO>
*/
List<RelTeamSetUserVO> selectRelTeamSetUserPage(IPage page, RelTeamSetUserVO relTeamSetUser);
/**
* 获取导出数据
*
* @param queryWrapper 查询条件
* @return List<RelTeamSetUserExcel>
*/
List<RelTeamSetUserExcel> exportRelTeamSetUser(@Param("ew") Wrapper<RelTeamSetUser> queryWrapper);
}

@ -0,0 +1,18 @@
<?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="org.springblade.desk.basic.mapper.RelTeamSetUserMapper">
<!-- 通用查询映射结果 -->
<resultMap id="relTeamSetUserResultMap" type="org.springblade.desk.basic.pojo.entity.RelTeamSetUser">
<result column="TEAM_SET_ID" property="teamSetId"/>
<result column="USER_ID" property="userId"/>
</resultMap>
<select id="selectRelTeamSetUserPage" resultMap="relTeamSetUserResultMap">
SELECT * FROM BA_REL_TEAM_SET_USER WHERE is_deleted = 0
</select>
<select id="exportRelTeamSetUser" resultType="org.springblade.desk.basic.excel.RelTeamSetUserExcel">
SELECT * FROM BA_REL_TEAM_SET_USER ${ew.customSqlSegment}
</select>
</mapper>

@ -0,0 +1,44 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import org.springblade.desk.basic.excel.RelTeamSetUserExcel;
import org.springblade.desk.basic.pojo.entity.RelTeamSetUser;
import org.springblade.desk.basic.pojo.vo.RelTeamSetUserVO;
import java.util.List;
/**
* [班组用户关联] 服务类
*
* @author Tom Shuo
* @since 2026-01-13
*/
public interface IRelTeamSetUserService extends BaseService<RelTeamSetUser> {
/**
* 自定义分页
*
* @param page 分页参数
* @param relTeamSetUser 查询参数
* @return IPage<RelTeamSetUserVO>
*/
IPage<RelTeamSetUserVO> selectRelTeamSetUserPage(IPage<RelTeamSetUserVO> page, RelTeamSetUserVO relTeamSetUser);
/**
* 导出数据
*
* @param queryWrapper 查询条件
* @return List<RelTeamSetUserExcel>
*/
List<RelTeamSetUserExcel> exportRelTeamSetUser(Wrapper<RelTeamSetUser> queryWrapper);
/**
* VO
* @param vo
*/
void setVOValue(RelTeamSetUserVO vo);
}

@ -6,9 +6,11 @@ package org.springblade.desk.basic.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import org.springblade.core.tool.api.R;
import org.springblade.desk.basic.excel.TeamSetExcel;
import org.springblade.desk.basic.pojo.entity.TeamSet;
import org.springblade.desk.basic.pojo.vo.TeamSetVO;
import org.springblade.system.pojo.entity.User;
import java.util.List;
@ -19,20 +21,76 @@ import java.util.List;
* @since 2025-12-16
*/
public interface ITeamSetService extends BaseService<TeamSet> {
/**
* 自定义分页
*
* @param page 分页参数
* @param teamSet 查询参数
* @return IPage<TeamSetVO>
*/
IPage<TeamSetVO> selectTeamSetPage(IPage<TeamSetVO> page, TeamSetVO teamSet);
/**
* 导出数据
*
* @param queryWrapper 查询条件
* @return List<TeamSetExcel>
*/
List<TeamSetExcel> exportTeamSet(Wrapper<TeamSet> queryWrapper);
/**
* 自定义分页
*
* @param page 分页参数
* @param teamSet 查询参数
* @return IPage<TeamSetVO>
*/
IPage<TeamSetVO> selectTeamSetPage(IPage<TeamSetVO> page, TeamSetVO teamSet);
/**
* 导出数据
*
* @param queryWrapper 查询条件
* @return List<TeamSetExcel>
*/
List<TeamSetExcel> exportTeamSet(Wrapper<TeamSet> queryWrapper);
/**
*
* @param id [班组]id
* @return 用户 list
*/
List<User> listUserByTeamId(Long id);
/**
*
* @param userId [用户]id
* @return 用户所在班组 list
*/
List<TeamSet> listByUserId(Long userId);
/**
*
* @param userId [用户]id
* @return 用户所在班组
*/
TeamSet getOneByUserId(Long userId);
/**
* 设置 班组成员
*
* @param ids
* @return
*/
R setUsers(String ids);
/**
* 设置 日分派时间
*
* @param id
* @param dayPutDueTime
* @return
*/
R setDayPutDueTime(Long id, String dayPutDueTime);
/**
* 设置 特殊日分派时间
*
* @param id
* @param specDayPutDueTime
* @return
*/
R setSpecDayPutDueTime(Long id, String specDayPutDueTime);
/**
* 设置 轮换时间
*
* @param id
* @param exChangeTime
* @return
*/
R setExChangeTime(Long id, String exChangeTime);
}

@ -0,0 +1,61 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.service.impl;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import jakarta.annotation.Resource;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.desk.basic.excel.RelTeamSetUserExcel;
import org.springblade.desk.basic.mapper.RelTeamSetUserMapper;
import org.springblade.desk.basic.pojo.entity.RelTeamSetUser;
import org.springblade.desk.basic.pojo.vo.RelTeamSetUserVO;
import org.springblade.desk.basic.service.IRelTeamSetUserService;
import org.springblade.system.feign.IDictClient;
import org.springblade.system.feign.IUserClient;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* [班组用户关联] 服务实现类
*
* @author Tom Shuo
* @since 2026-01-13
*/
@Service
@Data
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@Slf4j
public class RelTeamSetUserServiceImpl extends BaseServiceImpl<RelTeamSetUserMapper, RelTeamSetUser> implements IRelTeamSetUserService {
@Resource
private IUserClient userClient;
@Resource
private IDictClient dictClient;
@Override
public IPage<RelTeamSetUserVO> selectRelTeamSetUserPage(IPage<RelTeamSetUserVO> page, RelTeamSetUserVO relTeamSetUser) {
return page.setRecords(baseMapper.selectRelTeamSetUserPage(page, relTeamSetUser));
}
@Override
public List<RelTeamSetUserExcel> exportRelTeamSetUser(Wrapper<RelTeamSetUser> queryWrapper) {
List<RelTeamSetUserExcel> relTeamSetUserList = baseMapper.exportRelTeamSetUser(queryWrapper);
//relTeamSetUserList.forEach(relTeamSetUser -> {
// relTeamSetUser.setTypeName(DictCache.getValue(DictEnum.YES_NO, RelTeamSetUser.getType()));
//});
return relTeamSetUserList;
}
@Override
public void setVOValue(RelTeamSetUserVO vo) {
}
}

@ -4,18 +4,30 @@
package org.springblade.desk.basic.service.impl;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
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.core.toolkit.Wrappers;
import jakarta.annotation.Resource;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.excel.TeamSetExcel;
import org.springblade.desk.basic.mapper.TeamSetMapper;
import org.springblade.desk.basic.pojo.entity.RelTeamSetUser;
import org.springblade.desk.basic.pojo.entity.TeamSet;
import org.springblade.desk.basic.pojo.vo.TeamSetVO;
import org.springblade.desk.basic.service.IRelTeamSetUserService;
import org.springblade.desk.basic.service.ITeamSetService;
import org.springblade.desk.order.pojo.entity.YieldPlan;
import org.springblade.system.pojo.entity.User;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
@ -30,17 +42,69 @@ import java.util.List;
@EqualsAndHashCode(callSuper = true)
public class TeamSetServiceImpl extends BaseServiceImpl<TeamSetMapper, TeamSet> implements ITeamSetService {
@Override
public IPage<TeamSetVO> selectTeamSetPage(IPage<TeamSetVO> page, TeamSetVO teamSet) {
return page.setRecords(baseMapper.selectTeamSetPage(page, teamSet));
}
@Override
public List<TeamSetExcel> exportTeamSet(Wrapper<TeamSet> queryWrapper) {
List<TeamSetExcel> teamSetList = baseMapper.exportTeamSet(queryWrapper);
//teamSetList.forEach(teamSet -> {
// teamSet.setTypeName(DictCache.getValue(DictEnum.YES_NO, TeamSet.getType()));
//});
return teamSetList;
}
@Resource
private IRelTeamSetUserService relTeamSetUserService;
@Override
public IPage<TeamSetVO> selectTeamSetPage(IPage<TeamSetVO> page, TeamSetVO teamSet) {
return page.setRecords(baseMapper.selectTeamSetPage(page, teamSet));
}
@Override
public List<TeamSetExcel> exportTeamSet(Wrapper<TeamSet> queryWrapper) {
List<TeamSetExcel> teamSetList = baseMapper.exportTeamSet(queryWrapper);
//teamSetList.forEach(teamSet -> {
// teamSet.setTypeName(DictCache.getValue(DictEnum.YES_NO, TeamSet.getType()));
//});
return teamSetList;
}
@Override
public List<User> listUserByTeamId(Long teamId) {
return List.of();
}
@Override
public List<TeamSet> listByUserId(Long userId) {
LambdaQueryWrapper<RelTeamSetUser> qw = Wrappers.lambdaQuery(RelTeamSetUser.class)
.ne(RelTeamSetUser::getUserId, userId);
List<RelTeamSetUser> rList = relTeamSetUserService.list(qw);
List<TeamSet> tsList = new ArrayList<>();
for (RelTeamSetUser rel : rList) {
TeamSet ts = getById(rel.getTeamSetId());
tsList.add(ts);
}
return tsList;
}
@Override
public TeamSet getOneByUserId(Long userId) {
return listByUserId(userId).get(0);
}
@Override
public R setUsers(String ids) {
return null;
}
@Override
public R setDayPutDueTime(Long id, String dayPutDueTime) {
TeamSet f = getById(id);
f.setDayPutDueTime(dayPutDueTime);
return R.status(updateById(f));
}
@Override
public R setSpecDayPutDueTime(Long id, String specDayPutDueTime) {
TeamSet f = getById(id);
f.setSpecDayPutDueTime(specDayPutDueTime);
return R.status(updateById(f));
}
@Override
public R setExChangeTime(Long id, String exChangeTime) {
TeamSet f = getById(id);
f.setExChangeTime(exChangeTime);
return R.status(updateById(f));
}
}

@ -0,0 +1,36 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.basic.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.desk.basic.pojo.entity.RelTeamSetUser;
import org.springblade.desk.basic.pojo.vo.RelTeamSetUserVO;
import java.util.Objects;
/**
* [班组用户关联] 包装类,返回视图层所需的字段
*
* @author Tom Shuo
* @since 2026-01-13
*/
public class RelTeamSetUserWrapper extends BaseEntityWrapper<RelTeamSetUser, RelTeamSetUserVO> {
public static RelTeamSetUserWrapper build() {
return new RelTeamSetUserWrapper();
}
@Override
public RelTeamSetUserVO entityVO(RelTeamSetUser relTeamSetUser) {
RelTeamSetUserVO VO = Objects.requireNonNull(BeanUtil.copyProperties(relTeamSetUser, RelTeamSetUserVO.class));
//User createUser = UserCache.getUser(relTeamSetUser.getCreateUser());
//User updateUser = UserCache.getUser(relTeamSetUser.getUpdateUser());
//relTeamSetUserVO.setCreateUserName(createUser.getName());
//relTeamSetUserVO.setUpdateUserName(updateUser.getName());
return VO;
}
}

@ -5,22 +5,62 @@ package org.springblade.desk.quality.constant;
*/
public interface ReviewSheetConst {
/**
* 新建
*/
Integer S_NEW = 1;
/**
* 打回
*/
Integer S_REPULSE = 3;
/**
* 审理中
*/
Integer S_HEAR = 6;
/**
* 审理完成
*/
Integer S_COMPLETE = 10;
Integer S_INIT = 0;
// [1]:内部审理返修;[2]:内部审理报废;[3]:ERP审理;
interface BizType {
Integer T_1 = 1;
Integer T_2 = 2;
Integer T_3 = 3;
}
interface ERP {
/**
* 新建
*/
Integer S_NEW = 1;
/**
* 打回
*/
Integer S_REPULSE = 3;
/**
* 审理中
*/
Integer S_HEAR = 6;
/**
* 审理完成
*/
Integer S_COMPLETE = 10;
/**
* 让步接收
*/
Integer REVIEW_STATUS_3 = 3;
/**
* 返工
*/
Integer REVIEW_STATUS_4 = 4;
/**
* 返修
*/
Integer REVIEW_STATUS_5 = 5;
/**
* 报废
*/
Integer REVIEW_STATUS_6 = 6;
/**
* 挑出报废
*/
Integer REVIEW_STATUS_7 = 7;
/**
* 退库更换
*/
Integer REVIEW_STATUS_8 = 8;
/**
* 退回
*/
Integer REVIEW_STATUS_15 = 15;
}
/**
@ -35,34 +75,4 @@ public interface ReviewSheetConst {
* 售后模式
*/
Integer MODE_AFTER_SALES = 3;
/**
* 让步接收
*/
Integer REVIEW_STATUS_3 = 3;
/**
* 返工
*/
Integer REVIEW_STATUS_4 = 4;
/**
* 返修
*/
Integer REVIEW_STATUS_5 = 5;
/**
* 报废
*/
Integer REVIEW_STATUS_6 = 6;
/**
* 挑出报废
*/
Integer REVIEW_STATUS_7 = 7;
/**
* 退库更换
*/
Integer REVIEW_STATUS_8 = 8;
/**
* 退回
*/
Integer REVIEW_STATUS_15 = 15;
}

@ -22,6 +22,7 @@ import org.springblade.core.secure.BladeUser;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.pojo.vo.UrlVO;
import org.springblade.desk.quality.constant.QAModuleConst;
import org.springblade.desk.quality.excel.InspectionTaskExcel;
import org.springblade.desk.quality.pojo.entity.InspectionTask;
@ -29,11 +30,14 @@ import org.springblade.desk.quality.pojo.request.InspectionTaskSearch;
import org.springblade.desk.quality.pojo.request.InspectionTaskStartNew;
import org.springblade.desk.quality.pojo.vo.InspectionTaskDetailVO;
import org.springblade.desk.quality.pojo.vo.InspectionTaskListVO;
import org.springblade.desk.quality.pojo.vo.InspectionTaskSubPartVO;
import org.springblade.desk.quality.service.IInspectionTaskService;
import org.springblade.desk.quality.service.InspectionTaskService2;
import org.springblade.desk.quality.wrapper.InspectionTaskDetailWrapper;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.view.RedirectView;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@ -169,23 +173,55 @@ public class InspectionTaskController extends BladeController {
return service.fill(taskDetailVO);
}
/**
* [检验任务] 查询同槽/同炉
*/
@GetMapping("/getSameList")
@ApiOperationSupport(order = 7)
@Operation(summary = "查询同槽/同炉", description = "id")
public R getSameList(@Parameter(description = "主键", required = true) @RequestParam Long id) {
return service.getSamePlace(id);
}
/**
* [检验任务] 同槽 检验结果应用
*/
@GetMapping("/sameTankResultCopy")
@GetMapping("/sameResultCopy")
@ApiOperationSupport(order = 101)
@Operation(summary = "同槽结果应用", description = "传入inspectionTask id")
public R sameTankResultCopy(@Parameter(hidden = true) @RequestParam Long id) {
return null;
@Operation(summary = "同槽/同炉结果应用", description = "传入inspectionTask id")
public R sameResultCopy(@Parameter(hidden = true) @RequestParam Long sourceId,
@Parameter(hidden = true) @RequestParam Long targetId) {
return service.sameResultCopy(sourceId, targetId);
}
/**
* [检验任务] 同炉 检验结果应用
* 工序名称为 烧结包装防护页面展示内容
* [检验任务] 特殊 子件列表
*/
@GetMapping("/sameFurnaceResultCopy")
@ApiOperationSupport(order = 102)
@Operation(summary = "同槽结果应用", description = "传入inspectionTask id")
public R sameFurnaceResultCopy(@Parameter(hidden = true) @RequestParam Long id) {
return null;
@GetMapping("/subPartList")
@ApiOperationSupport(order = 101)
@Operation(summary = "烧结包装防护-子件列表", description = "传入inspectionTask id")
public R subPartList(@Parameter(hidden = true) @RequestParam Long id) {
// todo: 车间订单关联查询
List<InspectionTaskSubPartVO> list = new ArrayList<>();
list.add(new InspectionTaskSubPartVO());
list.add(new InspectionTaskSubPartVO());
return R.data(list);
}
@GetMapping("/toQaRecord")
@ApiOperationSupport(order = 101)
@Operation(summary = "跳转-质量记录", description = "传入inspectionTask id")
public R toQaRecord(@Parameter(hidden = true) @RequestParam Long id) {
String url = "https://www.baidu.com" + "?id=" + id;
return R.data(new UrlVO(url));
}
@GetMapping("/toCertificate")
@ApiOperationSupport(order = 101)
@Operation(summary = "跳转-合格证", description = "传入inspectionTask id")
public R toCertificate(@Parameter(hidden = true) @RequestParam Long id) {
String url = "https://www.baidu.com" + "?id=" + id;
return R.data(new UrlVO(url));
}
}

@ -10,6 +10,7 @@ import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor;
@ -21,6 +22,7 @@ import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
@ -31,6 +33,8 @@ import org.springblade.desk.quality.pojo.entity.IotHardness;
import org.springblade.desk.quality.pojo.vo.IotHardnessVO;
import org.springblade.desk.quality.service.IIotHardnessService;
import org.springblade.desk.quality.wrapper.IotHardnessWrapper;
import org.springblade.system.feign.IUserClient;
import org.springblade.system.pojo.entity.UserInfo;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@ -55,184 +59,228 @@ import java.util.stream.Collectors;
public class IotHardnessController extends BladeController {
@Resource
private IIotHardnessService service;
/**
* [IOT硬度] 详情
*/
@GetMapping("/detail")
@ApiOperationSupport(order = 10)
@Operation(summary = "详情", description = "传入IotHardness Obj")
public R<IotHardnessVO> detail(IotHardness iotHardness) {
QueryWrapper<IotHardness> qw = Condition.getQueryWrapper(iotHardness);
IotHardness detail = service.getOne(qw);
IotHardnessVO detailVO = IotHardnessWrapper.build().entityVO(detail);
service.setVOValue(detailVO);
return R.data(detailVO);
}
/**
* [IOT硬度] list分页
*/
@GetMapping("/list")
@ApiOperationSupport(order = 20)
@Operation(summary = "list分页", description = "传入IotHardness Obj")
public R<IPage<IotHardnessVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> iotHardness,
Query query) {
private IIotHardnessService service;
@Resource
private IUserClient iUserClient;
/**
* [IOT硬度] 详情
*/
@GetMapping("/detail")
@ApiOperationSupport(order = 10)
@Operation(summary = "详情", description = "传入IotHardness Obj")
public R<IotHardnessVO> detail(IotHardness iotHardness) {
QueryWrapper<IotHardness> qw = Condition.getQueryWrapper(iotHardness);
IotHardness detail = service.getOne(qw);
IotHardnessVO detailVO = IotHardnessWrapper.build().entityVO(detail);
service.setVOValue(detailVO);
return R.data(detailVO);
}
/**
* [IOT硬度] list分页
*/
@GetMapping("/list")
@ApiOperationSupport(order = 20)
@Operation(summary = "list分页", description = "传入IotHardness Obj")
public R<IPage<IotHardnessVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> iotHardness,
Query query) {
QueryWrapper<IotHardness> qw = Condition.getQueryWrapper(iotHardness, IotHardness.class);
IPage<IotHardness> pages = service.page(Condition.getPage(query), qw);
IPage<IotHardnessVO> pagesVO = IotHardnessWrapper.build().pageVO(pages);
pagesVO.getRecords()
.stream()
.peek(service::setVOValue)
.collect(Collectors.toList());
return R.data(pagesVO);
}
/**
* [IOT硬度] page分页
*/
@GetMapping("/page")
@ApiOperationSupport(order = 21)
@Operation(summary = "page分页", description = "传入IotHardness Obj")
public R<IPage<IotHardnessVO>> page(IotHardnessVO iotHardness, Query query) {
IPage<IotHardnessVO> pagesVO = service.selectIotHardnessPage(
Condition.getPage(query), iotHardness
);
return R.data(pagesVO);
}
/**
IPage<IotHardness> pages = service.page(Condition.getPage(query), qw);
IPage<IotHardnessVO> pagesVO = IotHardnessWrapper.build().pageVO(pages);
pagesVO.getRecords()
.stream()
.peek(service::setVOValue)
.collect(Collectors.toList());
return R.data(pagesVO);
}
@GetMapping("/getDataFirst")
@ApiOperationSupport(order = 20)
@Operation(summary = "获取硬度检测值 getData", description = "传入IotHardness Obj")
public R<List<IotHardness>> getDataFirst(HttpServletRequest request,
@Parameter(hidden = true) @RequestParam Map<String, Object> map) {
// 根据ip关联查询
// todo:
// BladeUser loginUser = AuthUtil.getUser();
// Long userId = loginUser.getUserId();
// R<UserInfo> rUI = iUserClient.userInfo(userId);
// if (rUI.isSuccess() && rUI.getData() != null) {
//
// }
QueryWrapper<IotHardness> qw = Condition.getQueryWrapper(map, IotHardness.class);
List<IotHardness> list = service.list(qw);
return R.data(list);
}
@GetMapping("/getDataRefresh")
@ApiOperationSupport(order = 20)
@Operation(summary = "获取硬度检测值 getData", description = "传入IotHardness Obj")
public R<List<IotHardness>> getDataRefresh(HttpServletRequest request,
@Parameter(hidden = true) @RequestParam Map<String, Object> map) {
// 根据ip关联查询
// todo:
// BladeUser loginUser = AuthUtil.getUser();
// Long userId = loginUser.getUserId();
// R<UserInfo> rUI = iUserClient.userInfo(userId);
// if (rUI.isSuccess() && rUI.getData() != null) {
//
// }
QueryWrapper<IotHardness> qw = Condition.getQueryWrapper(map, IotHardness.class);
List<IotHardness> list = service.list(qw);
return R.data(list);
}
/**
* [IOT硬度] page分页
*/
@GetMapping("/page")
@ApiOperationSupport(order = 21)
@Operation(summary = "page分页", description = "传入IotHardness Obj")
public R<IPage<IotHardnessVO>> page(IotHardnessVO iotHardness, Query query) {
IPage<IotHardnessVO> pagesVO = service.selectIotHardnessPage(
Condition.getPage(query), iotHardness
);
return R.data(pagesVO);
}
/**
* [IOT硬度] list下拉选择
*/
@GetMapping("/listForSelect")
@ApiOperationSupport(order = 22)
@Operation(summary = "list下拉选择", description = "")
@Operation(summary = "list下拉选择", description = "")
public R<List<IotHardnessVO>> listForSelect() {
List<IotHardness> list = service.list();
List<IotHardnessVO> listVO = IotHardnessWrapper.build().listVO(list);
return R.data(listVO);
}
/**
* [IOT硬度] 新增一条
*/
@PostMapping("/save")
@ApiOperationSupport(order = 30)
@Operation(summary = "新增一条", description = "传入IotHardness Obj")
public R save(@Valid @RequestBody IotHardness addOne) {
addOne.setId(null);
return R.status(service.save(addOne));
}
/**
List<IotHardness> list = service.list();
List<IotHardnessVO> listVO = IotHardnessWrapper.build().listVO(list);
return R.data(listVO);
}
/**
* [IOT硬度] 新增一条
*/
@PostMapping("/save")
@ApiOperationSupport(order = 30)
@Operation(summary = "新增一条", description = "传入IotHardness Obj")
public R save(@Valid @RequestBody IotHardness addOne) {
addOne.setId(null);
return R.status(service.save(addOne));
}
/**
* [IOT硬度] 新增批量
*/
@PostMapping("/saveBat")
@ApiOperationSupport(order = 31)
@Operation(summary = "新增批量", description = "传入IotHardness List")
public R saveBat(@Valid @RequestBody List<IotHardness> addList) {
addList.forEach(one -> {
one.setId(null);
});
return R.status(service.saveBatch(addList));
}
/**
* [IOT硬度] 修改一条
*/
@PostMapping("/update")
@ApiOperationSupport(order = 40)
@Operation(summary = "修改一条", description = "传入IotHardness Obj")
public R update(@Valid @RequestBody IotHardness updateOne) {
return R.status(service.updateById(updateOne));
}
@PostMapping("/saveBat")
@ApiOperationSupport(order = 31)
@Operation(summary = "新增批量", description = "传入IotHardness List")
public R saveBat(@Valid @RequestBody List<IotHardness> addList) {
addList.forEach(one -> {
one.setId(null);
});
return R.status(service.saveBatch(addList));
}
/**
* [IOT硬度] 修改一条
*/
@PostMapping("/update")
@ApiOperationSupport(order = 40)
@Operation(summary = "修改一条", description = "传入IotHardness Obj")
public R update(@Valid @RequestBody IotHardness updateOne) {
return R.status(service.updateById(updateOne));
}
/**
* [IOT硬度] 修改批量
*/
@PostMapping("/updateBat")
@ApiOperationSupport(order = 41)
@Operation(summary = "修改批量", description = "传入IotHardness List")
@Operation(summary = "修改批量", description = "传入IotHardness List")
public R updateBat(@Valid @RequestBody List<IotHardness> updateList) {
return R.status(service.updateBatchById(updateList));
}
/**
* [IOT硬度] 新增或修改一条
*/
@PostMapping("/submit")
@ApiOperationSupport(order = 50)
@Operation(summary = "新增或修改一条", description = "传入IotHardness Obj")
public R submit(@Valid @RequestBody IotHardness mergeOne) {
return R.status(service.saveOrUpdate(mergeOne));
}
/**
* [IOT硬度] 新增或修改一条
*/
@PostMapping("/submit")
@ApiOperationSupport(order = 50)
@Operation(summary = "新增或修改一条", description = "传入IotHardness Obj")
public R submit(@Valid @RequestBody IotHardness mergeOne) {
return R.status(service.saveOrUpdate(mergeOne));
}
/**
/**
* [IOT硬度] 新增或修改批量
*/
@PostMapping("/submitBat")
@ApiOperationSupport(order = 51)
@Operation(summary = "新增或修改批量", description = "传入IotHardness List")
public R submitBat(@Valid @RequestBody List<IotHardness> mergeList) {
return R.status(service.saveOrUpdateBatch(mergeList));
}
/**
* [IOT硬度] 逻辑删除
*/
@PostMapping("/remove")
@ApiOperationSupport(order = 61)
@Operation(summary = "逻辑删除", description = "传入ids")
public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
return R.status(service.deleteLogic(Func.toLongList(ids)));
}
/**
* [IOT硬度] 导出Excel
*/
@GetMapping("/exportExcel")
@ApiOperationSupport(order = 70)
@Operation(summary = "导出Excel", description = "传入IotHardness")
public void exportExcel(@Parameter(hidden = true) @RequestParam Map<String, Object> iotHardness,
BladeUser bladeUser, HttpServletResponse response) {
QueryWrapper<IotHardness> qw = Condition.getQueryWrapper(iotHardness, IotHardness.class);
//if (!AuthUtil.isAdministrator()) {
// queryWrapper.lambda().eq(IotHardness::getTenantId, bladeUser.getTenantId());
//}
//queryWrapper.lambda().eq(IotHardnessEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
List<IotHardnessExcel> list = service.exportIotHardness(qw);
ExcelUtil.export(response, "[IOT硬度]数据" + DateUtil.time(),
"[IOT硬度]数据表", list, IotHardnessExcel.class);
}
/**
@PostMapping("/submitBat")
@ApiOperationSupport(order = 51)
@Operation(summary = "新增或修改批量", description = "传入IotHardness List")
public R submitBat(@Valid @RequestBody List<IotHardness> mergeList) {
return R.status(service.saveOrUpdateBatch(mergeList));
}
/**
* [IOT硬度] 逻辑删除
*/
@PostMapping("/remove")
@ApiOperationSupport(order = 61)
@Operation(summary = "逻辑删除", description = "传入ids")
public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
return R.status(service.deleteLogic(Func.toLongList(ids)));
}
/**
* [IOT硬度] 导出Excel
*/
@GetMapping("/exportExcel")
@ApiOperationSupport(order = 70)
@Operation(summary = "导出Excel", description = "传入IotHardness")
public void exportExcel(@Parameter(hidden = true) @RequestParam Map<String, Object> iotHardness,
BladeUser bladeUser, HttpServletResponse response) {
QueryWrapper<IotHardness> qw = Condition.getQueryWrapper(iotHardness, IotHardness.class);
//if (!AuthUtil.isAdministrator()) {
// queryWrapper.lambda().eq(IotHardness::getTenantId, bladeUser.getTenantId());
//}
//queryWrapper.lambda().eq(IotHardnessEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
List<IotHardnessExcel> list = service.exportIotHardness(qw);
ExcelUtil.export(response, "[IOT硬度]数据" + DateUtil.time(),
"[IOT硬度]数据表", list, IotHardnessExcel.class);
}
/**
* [IOT硬度] 下载Excel模板
*/
@GetMapping("/downloadExcelTemplate")
@ApiOperationSupport(order = 71)
@Operation(summary = "下载Excel模板", description = "")
public ResponseEntity<org.springframework.core.io.Resource> downloadExcelTemplate() {
return ExcelExtUtil.downloadXlsTemplate(
"Excel/QA/ImportTemplate-CycleTestItem.xls",
"导入模版-周期试验项目.xls");
}
/**
* [IOT硬度] 导入Excel
*/
@PostMapping("/importExcel")
@ApiOperationSupport(order = 72)
@Operation(summary = "导入Excel", description = "MultipartFile")
public R importExcel(@RequestParam("file") MultipartFile file) {
R checkR = ExcelExtUtil.importExcelCheck(file);
if (checkR != null) {
return checkR;
}
List<IotHardness> importList = ExcelUtil.read(
file, 0, 1, IotHardness.class
);
return R.status(service.saveBatch(importList));
}
@GetMapping("/downloadExcelTemplate")
@ApiOperationSupport(order = 71)
@Operation(summary = "下载Excel模板", description = "")
public ResponseEntity<org.springframework.core.io.Resource> downloadExcelTemplate() {
return ExcelExtUtil.downloadXlsTemplate(
"Excel/QA/ImportTemplate-CycleTestItem.xls",
"导入模版-周期试验项目.xls");
}
/**
* [IOT硬度] 导入Excel
*/
@PostMapping("/importExcel")
@ApiOperationSupport(order = 72)
@Operation(summary = "导入Excel", description = "MultipartFile")
public R importExcel(@RequestParam("file") MultipartFile file) {
R checkR = ExcelExtUtil.importExcelCheck(file);
if (checkR != null) {
return checkR;
}
List<IotHardness> importList = ExcelUtil.read(
file, 0, 1, IotHardness.class
);
return R.status(service.saveBatch(importList));
}
}

@ -3,13 +3,16 @@
*/
package org.springblade.desk.quality.controller;
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.core.toolkit.Wrappers;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.Valid;
import lombok.AllArgsConstructor;
@ -21,12 +24,15 @@ import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.util.ExcelExtUtil;
import org.springblade.desk.quality.constant.QAModuleConst;
import org.springblade.desk.quality.excel.IotThicknessExcel;
import org.springblade.desk.quality.pojo.entity.InspectionTask;
import org.springblade.desk.quality.pojo.entity.IotHardness;
import org.springblade.desk.quality.pojo.entity.IotThickness;
import org.springblade.desk.quality.pojo.vo.IotThicknessVO;
import org.springblade.desk.quality.service.IIotThicknessService;
@ -55,184 +61,202 @@ import java.util.stream.Collectors;
public class IotThicknessController extends BladeController {
@Resource
private IIotThicknessService service;
/**
* [IOT厚度] 详情
*/
@GetMapping("/detail")
@ApiOperationSupport(order = 10)
@Operation(summary = "详情", description = "传入IotThickness Obj")
public R<IotThicknessVO> detail(IotThickness iotThickness) {
QueryWrapper<IotThickness> qw = Condition.getQueryWrapper(iotThickness);
IotThickness detail = service.getOne(qw);
IotThicknessVO detailVO = IotThicknessWrapper.build().entityVO(detail);
service.setVOValue(detailVO);
return R.data(detailVO);
}
/**
* [IOT厚度] list分页
*/
@GetMapping("/list")
@ApiOperationSupport(order = 20)
@Operation(summary = "list分页", description = "传入IotThickness Obj")
public R<IPage<IotThicknessVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> iotThickness,
Query query) {
private IIotThicknessService service;
/**
* [IOT厚度] 详情
*/
@GetMapping("/detail")
@ApiOperationSupport(order = 10)
@Operation(summary = "详情", description = "传入IotThickness Obj")
public R<IotThicknessVO> detail(IotThickness iotThickness) {
QueryWrapper<IotThickness> qw = Condition.getQueryWrapper(iotThickness);
IotThickness detail = service.getOne(qw);
IotThicknessVO detailVO = IotThicknessWrapper.build().entityVO(detail);
service.setVOValue(detailVO);
return R.data(detailVO);
}
/**
* [IOT厚度] list分页
*/
@GetMapping("/list")
@ApiOperationSupport(order = 20)
@Operation(summary = "list分页", description = "传入IotThickness Obj")
public R<IPage<IotThicknessVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> iotThickness,
Query query) {
QueryWrapper<IotThickness> qw = Condition.getQueryWrapper(iotThickness, IotThickness.class);
IPage<IotThickness> pages = service.page(Condition.getPage(query), qw);
IPage<IotThicknessVO> pagesVO = IotThicknessWrapper.build().pageVO(pages);
pagesVO.getRecords()
.stream()
.peek(service::setVOValue)
.collect(Collectors.toList());
return R.data(pagesVO);
}
/**
* [IOT厚度] page分页
*/
@GetMapping("/page")
@ApiOperationSupport(order = 21)
@Operation(summary = "page分页", description = "传入IotThickness Obj")
public R<IPage<IotThicknessVO>> page(IotThicknessVO iotThickness, Query query) {
IPage<IotThicknessVO> pagesVO = service.selectIotThicknessPage(
Condition.getPage(query), iotThickness
);
return R.data(pagesVO);
}
/**
IPage<IotThickness> pages = service.page(Condition.getPage(query), qw);
IPage<IotThicknessVO> pagesVO = IotThicknessWrapper.build().pageVO(pages);
pagesVO.getRecords()
.stream()
.peek(service::setVOValue)
.collect(Collectors.toList());
return R.data(pagesVO);
}
@GetMapping("/getData")
@ApiOperationSupport(order = 20)
@Operation(summary = "获取厚度检测值 getData", description = "传入IotHardness Obj")
public R<List<IotThickness>> getData(HttpServletRequest request,
@Parameter(hidden = true) @RequestParam Map<String, Object> map) {
// 根据ip关联查询
// BladeUser loginUser = AuthUtil.getUser();
// Long userId = loginUser.getUserId();
// R<UserInfo> rUI = iUserClient.userInfo(userId);
// if (rUI.isSuccess() && rUI.getData() != null) {
//
// }
QueryWrapper<IotThickness> qw = Condition.getQueryWrapper(map, IotThickness.class);
List<IotThickness> list = service.list(qw);
return R.data(list);
}
/**
* [IOT厚度] page分页
*/
@GetMapping("/page")
@ApiOperationSupport(order = 21)
@Operation(summary = "page分页", description = "传入IotThickness Obj")
public R<IPage<IotThicknessVO>> page(IotThicknessVO iotThickness, Query query) {
IPage<IotThicknessVO> pagesVO = service.selectIotThicknessPage(
Condition.getPage(query), iotThickness
);
return R.data(pagesVO);
}
/**
* [IOT厚度] list下拉选择
*/
@GetMapping("/listForSelect")
@ApiOperationSupport(order = 22)
@Operation(summary = "list下拉选择", description = "")
@Operation(summary = "list下拉选择", description = "")
public R<List<IotThicknessVO>> listForSelect() {
List<IotThickness> list = service.list();
List<IotThicknessVO> listVO = IotThicknessWrapper.build().listVO(list);
return R.data(listVO);
List<IotThickness> list = service.list();
List<IotThicknessVO> listVO = IotThicknessWrapper.build().listVO(list);
return R.data(listVO);
}
/**
* [IOT厚度] 新增一条
*/
@PostMapping("/save")
@ApiOperationSupport(order = 30)
@Operation(summary = "新增一条", description = "传入IotThickness Obj")
public R save(@Valid @RequestBody IotThickness addOne) {
addOne.setId(null);
return R.status(service.save(addOne));
}
/**
* [IOT厚度] 新增一条
*/
@PostMapping("/save")
@ApiOperationSupport(order = 30)
@Operation(summary = "新增一条", description = "传入IotThickness Obj")
public R save(@Valid @RequestBody IotThickness addOne) {
addOne.setId(null);
return R.status(service.save(addOne));
}
/**
/**
* [IOT厚度] 新增批量
*/
@PostMapping("/saveBat")
@ApiOperationSupport(order = 31)
@Operation(summary = "新增批量", description = "传入IotThickness List")
public R saveBat(@Valid @RequestBody List<IotThickness> addList) {
addList.forEach(one -> {
one.setId(null);
});
return R.status(service.saveBatch(addList));
}
/**
* [IOT厚度] 修改一条
*/
@PostMapping("/update")
@ApiOperationSupport(order = 40)
@Operation(summary = "修改一条", description = "传入IotThickness Obj")
public R update(@Valid @RequestBody IotThickness updateOne) {
return R.status(service.updateById(updateOne));
}
@PostMapping("/saveBat")
@ApiOperationSupport(order = 31)
@Operation(summary = "新增批量", description = "传入IotThickness List")
public R saveBat(@Valid @RequestBody List<IotThickness> addList) {
addList.forEach(one -> {
one.setId(null);
});
return R.status(service.saveBatch(addList));
}
/**
* [IOT厚度] 修改一条
*/
@PostMapping("/update")
@ApiOperationSupport(order = 40)
@Operation(summary = "修改一条", description = "传入IotThickness Obj")
public R update(@Valid @RequestBody IotThickness updateOne) {
return R.status(service.updateById(updateOne));
}
/**
* [IOT厚度] 修改批量
*/
@PostMapping("/updateBat")
@ApiOperationSupport(order = 41)
@Operation(summary = "修改批量", description = "传入IotThickness List")
@Operation(summary = "修改批量", description = "传入IotThickness List")
public R updateBat(@Valid @RequestBody List<IotThickness> updateList) {
return R.status(service.updateBatchById(updateList));
}
/**
* [IOT厚度] 新增或修改一条
*/
@PostMapping("/submit")
@ApiOperationSupport(order = 50)
@Operation(summary = "新增或修改一条", description = "传入IotThickness Obj")
public R submit(@Valid @RequestBody IotThickness mergeOne) {
return R.status(service.saveOrUpdate(mergeOne));
}
/**
/**
* [IOT厚度] 新增或修改一条
*/
@PostMapping("/submit")
@ApiOperationSupport(order = 50)
@Operation(summary = "新增或修改一条", description = "传入IotThickness Obj")
public R submit(@Valid @RequestBody IotThickness mergeOne) {
return R.status(service.saveOrUpdate(mergeOne));
}
/**
* [IOT厚度] 新增或修改批量
*/
@PostMapping("/submitBat")
@ApiOperationSupport(order = 51)
@Operation(summary = "新增或修改批量", description = "传入IotThickness List")
public R submitBat(@Valid @RequestBody List<IotThickness> mergeList) {
return R.status(service.saveOrUpdateBatch(mergeList));
}
/**
* [IOT厚度] 逻辑删除
*/
@PostMapping("/remove")
@ApiOperationSupport(order = 61)
@Operation(summary = "逻辑删除", description = "传入ids")
public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
return R.status(service.deleteLogic(Func.toLongList(ids)));
}
/**
* [IOT厚度] 导出Excel
*/
@GetMapping("/exportExcel")
@ApiOperationSupport(order = 70)
@Operation(summary = "导出Excel", description = "传入IotThickness")
public void exportExcel(@Parameter(hidden = true) @RequestParam Map<String, Object> iotThickness,
BladeUser bladeUser, HttpServletResponse response) {
QueryWrapper<IotThickness> qw = Condition.getQueryWrapper(iotThickness, IotThickness.class);
//if (!AuthUtil.isAdministrator()) {
// queryWrapper.lambda().eq(IotThickness::getTenantId, bladeUser.getTenantId());
//}
//queryWrapper.lambda().eq(IotThicknessEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
List<IotThicknessExcel> list = service.exportIotThickness(qw);
ExcelUtil.export(response, "[IOT厚度]数据" + DateUtil.time(),
"[IOT厚度]数据表", list, IotThicknessExcel.class);
}
/**
@PostMapping("/submitBat")
@ApiOperationSupport(order = 51)
@Operation(summary = "新增或修改批量", description = "传入IotThickness List")
public R submitBat(@Valid @RequestBody List<IotThickness> mergeList) {
return R.status(service.saveOrUpdateBatch(mergeList));
}
/**
* [IOT厚度] 逻辑删除
*/
@PostMapping("/remove")
@ApiOperationSupport(order = 61)
@Operation(summary = "逻辑删除", description = "传入ids")
public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
return R.status(service.deleteLogic(Func.toLongList(ids)));
}
/**
* [IOT厚度] 导出Excel
*/
@GetMapping("/exportExcel")
@ApiOperationSupport(order = 70)
@Operation(summary = "导出Excel", description = "传入IotThickness")
public void exportExcel(@Parameter(hidden = true) @RequestParam Map<String, Object> iotThickness,
BladeUser bladeUser, HttpServletResponse response) {
QueryWrapper<IotThickness> qw = Condition.getQueryWrapper(iotThickness, IotThickness.class);
//if (!AuthUtil.isAdministrator()) {
// queryWrapper.lambda().eq(IotThickness::getTenantId, bladeUser.getTenantId());
//}
//queryWrapper.lambda().eq(IotThicknessEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
List<IotThicknessExcel> list = service.exportIotThickness(qw);
ExcelUtil.export(response, "[IOT厚度]数据" + DateUtil.time(),
"[IOT厚度]数据表", list, IotThicknessExcel.class);
}
/**
* [IOT厚度] 下载Excel模板
*/
@GetMapping("/downloadExcelTemplate")
@ApiOperationSupport(order = 71)
@Operation(summary = "下载Excel模板", description = "")
public ResponseEntity<org.springframework.core.io.Resource> downloadExcelTemplate() {
return ExcelExtUtil.downloadXlsTemplate(
"Excel/QA/ImportTemplate-CycleTestItem.xls",
"导入模版-周期试验项目.xls");
}
/**
* [IOT厚度] 导入Excel
*/
@PostMapping("/importExcel")
@ApiOperationSupport(order = 72)
@Operation(summary = "导入Excel", description = "MultipartFile")
public R importExcel(@RequestParam("file") MultipartFile file) {
R checkR = ExcelExtUtil.importExcelCheck(file);
if (checkR != null) {
return checkR;
}
List<IotThickness> importList = ExcelUtil.read(
file, 0, 1, IotThickness.class
);
return R.status(service.saveBatch(importList));
}
@GetMapping("/downloadExcelTemplate")
@ApiOperationSupport(order = 71)
@Operation(summary = "下载Excel模板", description = "")
public ResponseEntity<org.springframework.core.io.Resource> downloadExcelTemplate() {
return ExcelExtUtil.downloadXlsTemplate(
"Excel/QA/ImportTemplate-CycleTestItem.xls",
"导入模版-周期试验项目.xls");
}
/**
* [IOT厚度] 导入Excel
*/
@PostMapping("/importExcel")
@ApiOperationSupport(order = 72)
@Operation(summary = "导入Excel", description = "MultipartFile")
public R importExcel(@RequestParam("file") MultipartFile file) {
R checkR = ExcelExtUtil.importExcelCheck(file);
if (checkR != null) {
return checkR;
}
List<IotThickness> importList = ExcelUtil.read(
file, 0, 1, IotThickness.class
);
return R.status(service.saveBatch(importList));
}
}

@ -28,22 +28,30 @@ import org.springblade.core.tool.utils.DateUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.util.ExcelExtUtil;
import org.springblade.desk.quality.constant.QAModuleConst;
import org.springblade.desk.quality.constant.ReviewSheetConst;
import org.springblade.desk.quality.excel.ReviewSheetExcel;
import org.springblade.desk.quality.pojo.entity.ReviewDuty;
import org.springblade.desk.quality.pojo.entity.ReviewFault;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
import org.springblade.desk.quality.pojo.request.ReviewSheetInitSearch;
import org.springblade.desk.quality.pojo.request.ReviewSheetRedoSearch;
import org.springblade.desk.quality.pojo.request.ReviewSheetScrapSearch;
import org.springblade.desk.quality.pojo.request.ReviewSheetSelfSearch;
import org.springblade.desk.quality.pojo.vo.ReviewDutyVO;
import org.springblade.desk.quality.pojo.vo.ReviewFaultVO;
import org.springblade.desk.quality.pojo.vo.ReviewSheetInitListVO;
import org.springblade.desk.quality.pojo.vo.ReviewSheetVO;
import org.springblade.desk.quality.service.IReviewDutyService;
import org.springblade.desk.quality.service.IReviewFaultService;
import org.springblade.desk.quality.service.IReviewSheetService;
import org.springblade.desk.quality.wrapper.ReviewDutyWrapper;
import org.springblade.desk.quality.wrapper.ReviewSheetInitListWrapper;
import org.springblade.desk.quality.wrapper.ReviewSheetWrapper;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@ -87,12 +95,56 @@ public class ReviewSheetController extends BladeController {
/**
* [生产处置单] list分页
*/
@GetMapping("/list")
// @GetMapping("/list")
// @ApiOperationSupport(order = 20)
// @Operation(summary = "list分页", description = "传入ReviewSheet Obj")
// public R<IPage<ReviewSheetVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> reviewSheet,
// Query query) {
// QueryWrapper<ReviewSheet> qw = Condition.getQueryWrapper(reviewSheet, ReviewSheet.class);
// IPage<ReviewSheet> pages = service.page(Condition.getPage(query), qw);
// IPage<ReviewSheetVO> pagesVO = ReviewSheetWrapper.build().pageVO(pages);
// pagesVO.getRecords()
// .stream()
// .peek(service::setVOValue)
// .collect(Collectors.toList());
// return R.data(pagesVO);
// }
/**
*
*
* [生产处置单] list分页
*/
@PostMapping("/listInit")
@ApiOperationSupport(order = 20)
@Operation(summary = "list分页", description = "传入ReviewSheet Obj")
public R<IPage<ReviewSheetVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> reviewSheet,
Query query) {
QueryWrapper<ReviewSheet> qw = Condition.getQueryWrapper(reviewSheet, ReviewSheet.class);
@Operation(summary = "生产处置单list分页", description = "传入ReviewSheet Obj")
public R<IPage<ReviewSheetInitListVO>> listInit(@Parameter(hidden = true) @RequestParam(required = false)
ReviewSheetInitSearch search, Query query) {
Map demo = new HashMap();
demo.put("status", ReviewSheetConst.S_INIT);
QueryWrapper<ReviewSheet> qw = Condition.getQueryWrapper(demo, ReviewSheet.class);
IPage<ReviewSheet> pages = service.page(Condition.getPage(query), qw);
IPage<ReviewSheetInitListVO> pagesVO = ReviewSheetInitListWrapper.build().pageVO(pages);
// todo:
// pagesVO.getRecords()
// .stream()
// .peek(service::setVOValue)
// .collect(Collectors.toList());
return R.data(pagesVO);
}
/**
* [生产处置单] 返工审理list分页
*/
@PostMapping("/listRedo")
@ApiOperationSupport(order = 20)
@Operation(summary = "返工审理list分页", description = "传入ReviewSheet Obj")
public R<IPage<ReviewSheetVO>> listRedo(@Parameter(hidden = true) @RequestParam(required = false)
ReviewSheetRedoSearch search, Query query) {
Map demo = new HashMap();
demo.put("bizType", ReviewSheetConst.BizType.T_1);
QueryWrapper<ReviewSheet> qw = Condition.getQueryWrapper(demo, ReviewSheet.class);
IPage<ReviewSheet> pages = service.page(Condition.getPage(query), qw);
IPage<ReviewSheetVO> pagesVO = ReviewSheetWrapper.build().pageVO(pages);
pagesVO.getRecords()
@ -102,20 +154,78 @@ public class ReviewSheetController extends BladeController {
return R.data(pagesVO);
}
/**
* [生产处置单] 返工审理list分页
*/
@PostMapping("/listScrap")
@ApiOperationSupport(order = 20)
@Operation(summary = "返工审理list分页", description = "传入ReviewSheet Obj")
public R<IPage<ReviewSheetVO>> listScrap(@Parameter(hidden = true) @RequestParam(required = false)
ReviewSheetScrapSearch search, Query query) {
Map demo = new HashMap();
demo.put("bizType", ReviewSheetConst.BizType.T_2);
QueryWrapper<ReviewSheet> qw = Condition.getQueryWrapper(demo, ReviewSheet.class);
IPage<ReviewSheet> pages = service.page(Condition.getPage(query), qw);
IPage<ReviewSheetVO> pagesVO = ReviewSheetWrapper.build().pageVO(pages);
pagesVO.getRecords()
.stream()
.peek(service::setVOValue)
.collect(Collectors.toList());
return R.data(pagesVO);
}
/**
* [生产处置单] page分页
* [生产处置单] list分页
*/
@GetMapping("/page")
@ApiOperationSupport(order = 21)
@Operation(summary = "page分页", description = "传入ReviewSheet Obj")
public R<IPage<ReviewSheetVO>> page(ReviewSheetVO reviewSheet, Query query) {
IPage<ReviewSheetVO> pagesVO = service.selectReviewSheetPage(
Condition.getPage(query), reviewSheet
);
@PostMapping("/listSelf")
@ApiOperationSupport(order = 20)
@Operation(summary = "内部list分页", description = "传入ReviewSheet Obj")
public R<IPage<ReviewSheetVO>> listSelf(@Parameter(hidden = true) @RequestParam(required = false)
ReviewSheetSelfSearch search, Query query) {
Map demo = new HashMap();
QueryWrapper<ReviewSheet> qw = Condition.getQueryWrapper(demo, ReviewSheet.class);
qw.in("bizType", ReviewSheetConst.BizType.T_1, ReviewSheetConst.BizType.T_2);
IPage<ReviewSheet> pages = service.page(Condition.getPage(query), qw);
IPage<ReviewSheetVO> pagesVO = ReviewSheetWrapper.build().pageVO(pages);
pagesVO.getRecords()
.stream()
.peek(service::setVOValue)
.collect(Collectors.toList());
return R.data(pagesVO);
}
/**
* [生产处置单] list分页
*/
@PostMapping("/listErp")
@ApiOperationSupport(order = 20)
@Operation(summary = "ERPlist分页", description = "传入ReviewSheet Obj")
public R<IPage<ReviewSheetVO>> listErp(@Parameter(hidden = true) @RequestParam Map<String, Object> reviewSheet,
Query query) {
QueryWrapper<ReviewSheet> qw = Condition.getQueryWrapper(reviewSheet, ReviewSheet.class);
qw.eq("bizType", ReviewSheetConst.BizType.T_3);
IPage<ReviewSheet> pages = service.page(Condition.getPage(query), qw);
IPage<ReviewSheetVO> pagesVO = ReviewSheetWrapper.build().pageVO(pages);
pagesVO.getRecords()
.stream()
.peek(service::setVOValue)
.collect(Collectors.toList());
return R.data(pagesVO);
}
/**
* [生产处置单] page分页
*/
// @GetMapping("/page")
// @ApiOperationSupport(order = 21)
// @Operation(summary = "page分页", description = "传入ReviewSheet Obj")
// public R<IPage<ReviewSheetVO>> page(ReviewSheetVO reviewSheet, Query query) {
// IPage<ReviewSheetVO> pagesVO = service.selectReviewSheetPage(
// Condition.getPage(query), reviewSheet
// );
// return R.data(pagesVO);
// }
/**
* [生产处置单] list下拉选择
*/
@ -290,4 +400,14 @@ public class ReviewSheetController extends BladeController {
);
return R.status(service.saveBatch(importList));
}
/**
* [生产处置单] 修改一条
*/
@PostMapping("/fill")
@ApiOperationSupport(order = 40)
@Operation(summary = "fill", description = "ReviewSheetVO Obj")
public R fill(@Valid @RequestBody ReviewSheetVO vo) {
return service.fill(vo);
}
}

@ -90,6 +90,6 @@
<if test="q.fromType != null">
AND task.FROM_TYPE = #{q.fromType}
</if>
ORDER BY ID DESC
ORDER BY task.ID DESC
</select>
</mapper>

@ -16,6 +16,7 @@
<result column="REMARK" property="remark"/>
<result column="UPLOAD_DATE" property="uploadDate"/>
<result column="EQUIPMENT_ID" property="equipmentId"/>
<result column="IP" property="ip"/>
</resultMap>
<select id="selectIotHardnessPage" resultMap="iotHardnessResultMap">

@ -1,10 +1,12 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.v3.oas.annotations.Parameter;
import org.springblade.common.exception.BusinessException;
import org.springblade.core.mp.base.BaseService;
import org.springblade.core.tool.api.R;
@ -14,6 +16,7 @@ import org.springblade.desk.quality.pojo.request.InspectionTaskSearch;
import org.springblade.desk.quality.pojo.request.InspectionTaskStartNew;
import org.springblade.desk.quality.pojo.vo.InspectionTaskDetailVO;
import org.springblade.desk.quality.pojo.vo.InspectionTaskListVO;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
@ -108,5 +111,9 @@ public interface IInspectionTaskService extends BaseService<InspectionTask> {
IPage<InspectionTaskListVO> listSearch(IPage<InspectionTaskListVO> page, InspectionTaskSearch search);
R getSamePlace(Long id);
R sameResultCopy(Long sourceId, Long targetId);
Integer refreshStatusAndQty(Long id);
}

@ -9,6 +9,7 @@ import org.springblade.core.mp.base.BaseService;
import org.springblade.desk.quality.excel.ReviewDutyExcel;
import org.springblade.desk.quality.pojo.entity.ReviewDuty;
import org.springblade.desk.quality.pojo.vo.ReviewDutyVO;
import org.springblade.desk.quality.pojo.vo.ReviewFaultVO;
import java.util.List;
@ -54,4 +55,6 @@ public interface IReviewDutyService extends BaseService<ReviewDuty> {
* @date 2022-12-20 15:01
*/
List<ReviewDuty> listByRsId(Long rsId);
List<ReviewDutyVO> listVOByRsId(Long rsId);
}

@ -53,4 +53,6 @@ public interface IReviewFaultService extends BaseService<ReviewFault> {
* @date 2022-12-20 15:06
*/
List<ReviewFault> listByRsId(Long rsId);
List<ReviewFaultVO> listVOByRsId(Long rsId);
}

@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import org.springblade.core.tool.api.R;
import org.springblade.desk.basic.service.en.EnBaseService;
import org.springblade.desk.quality.excel.ReviewSheetExcel;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
@ -131,5 +132,7 @@ public interface IReviewSheetService extends EnBaseService<ReviewSheet> {
*/
void deleteReviewOrder(String trialId) throws Exception;
R fill(ReviewSheetVO vo);
}

@ -13,10 +13,13 @@ import jakarta.annotation.Resource;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.springblade.common.constant.CommonConstant;
import org.springblade.common.exception.BusinessException;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.secure.BladeUser;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.desk.basic.constant.BaseCol;
import org.springblade.desk.basic.constant.BaseValue;
@ -29,11 +32,9 @@ import org.springblade.desk.quality.mapper.InspectionTaskMapper;
import org.springblade.desk.quality.pojo.entity.*;
import org.springblade.desk.quality.pojo.request.InspectionTaskSearch;
import org.springblade.desk.quality.pojo.request.InspectionTaskStartNew;
import org.springblade.desk.quality.pojo.vo.InspectionTaskDetailVO;
import org.springblade.desk.quality.pojo.vo.InspectionTaskListVO;
import org.springblade.desk.quality.pojo.vo.WorkPlanItemDetailVO;
import org.springblade.desk.quality.pojo.vo.WorkPlanItemVO;
import org.springblade.desk.quality.pojo.vo.*;
import org.springblade.desk.quality.service.*;
import org.springblade.desk.quality.wrapper.IndicatorYearWrapper;
import org.springblade.desk.quality.wrapper.InspectionTaskListWrapper;
import org.springblade.system.feign.IDictClient;
import org.springblade.system.feign.IUserClient;
@ -42,6 +43,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.*;
import java.util.stream.Collectors;
/**
* [检验任务] 服务实现类
@ -183,14 +185,17 @@ public class InspectionTaskServiceImpl extends BaseServiceImpl<InspectionTaskMap
// 关联
wpItem.setItemId(iItem.getId());
wpItem.setTaskId(task.getId());
// todo:
wpItem.setWpId(1L);
wpItem.setStandardId(2000482194736316418L);
wpItem.setCheckQty(0d);
wpItem.setTestQty(0d);
wpItem.setLossQty(0d);
// 新插入 WorkPlanItem
wpItemService.save(wpItem);
if (InspectionItemConst.SPECIAL_TYPE_1.equals(iItem.getSpecialType()) ||
InspectionItemConst.SPECIAL_TYPE_2.equals(iItem.getSpecialType()) ||
if (InspectionItemConst.SPECIAL_TYPE_1.equals(iItem.getSpecialType())) {
// 测厚 不创建 WorkPlanItemDetail
} else if (InspectionItemConst.SPECIAL_TYPE_2.equals(iItem.getSpecialType()) ||
InspectionItemConst.SPECIAL_TYPE_3.equals(iItem.getSpecialType())) {
for (int i = 0; i < 4; i++) {
WorkPlanItemDetail wpItemDetail = new WorkPlanItemDetail();
@ -213,13 +218,28 @@ public class InspectionTaskServiceImpl extends BaseServiceImpl<InspectionTaskMap
for (WorkPlanItemVO wpItemVO : detailVO.getWpItemList()) {
WorkPlanItem wpItem = new WorkPlanItem();
BeanUtil.copyProperties(wpItemVO, wpItem);
if (!InspectionTaskConst.CHECK_RESULT_TODO.equals(wpItem.getCheckResult())) {
BladeUser bu = AuthUtil.getUser();
if (bu != null) {
log.info("bu = {}", bu);
wpItem.setCheckUserId(bu.getUserId());
}
wpItem.setCheckDate(LocalDateTime.now());
}
// 更新 WorkPlanItem
wpItemService.updateById(wpItem);
//
for (WorkPlanItemDetailVO wpItemDetailVO : wpItemVO.getWpItemDetailList()) {
WorkPlanItemDetail wpItemDetail = new WorkPlanItemDetail();
BeanUtil.copyProperties(wpItemDetailVO, wpItemDetail);
// 更新 WorkPlanItemDetail
wpItemDetailService.updateById(wpItemDetail);
wpItemDetail.setWorkPlanItemId(wpItem.getId());
if (IdUtil.isValid(wpItemDetail.getId())) {
// 更新 WorkPlanItemDetail
wpItemDetailService.updateById(wpItemDetail);
} else {
// 保存
wpItemDetailService.save(wpItemDetail);
}
}
}
//
@ -232,6 +252,45 @@ public class InspectionTaskServiceImpl extends BaseServiceImpl<InspectionTaskMap
return page.setRecords(baseMapper.listSearch(page, search));
}
@Override
public R getSamePlace(Long id) {
LambdaQueryWrapper<InspectionTask> qw = Wrappers.lambdaQuery();
// todo: 需要生产支持
qw.eq(InspectionTask::getId, 2010526540823642113L);
List<InspectionTask> list = baseMapper.selectList(qw);
List<InspectionTaskListVO> listVO = InspectionTaskListWrapper.build().listVO(list);
for (InspectionTaskListVO one : listVO) {
setListVOValue(one);
}
return R.data(listVO);
}
@SneakyThrows
@Override
public R sameResultCopy(Long sourceId, Long targetId) {
InspectionTask source = null;
InspectionTask target = null;
{
LambdaQueryWrapper<InspectionTask> qw1 = Wrappers.lambdaQuery();
qw1.eq(InspectionTask::getId, sourceId);
source = baseMapper.selectById(qw1);
}
{
LambdaQueryWrapper<InspectionTask> qw2 = Wrappers.lambdaQuery();
qw2.eq(InspectionTask::getId, targetId);
target = baseMapper.selectById(qw2);
}
log.info("source = {}", source);
log.info("target = {}", target);
if (source == null || target == null) {
return R.fail("失败");
}
// todo: copy 赋值
// throw new IllegalAccessException("");
return R.success();
}
@Override
public Integer refreshStatusAndQty(Long id) {
InspectionTask task = getById(id);

@ -18,8 +18,12 @@ import org.springblade.desk.order.pojo.entity.YieldOrderCraft;
import org.springblade.desk.quality.excel.ReviewDutyExcel;
import org.springblade.desk.quality.mapper.ReviewDutyMapper;
import org.springblade.desk.quality.pojo.entity.ReviewDuty;
import org.springblade.desk.quality.pojo.entity.ReviewFault;
import org.springblade.desk.quality.pojo.vo.ReviewDutyVO;
import org.springblade.desk.quality.pojo.vo.ReviewFaultVO;
import org.springblade.desk.quality.service.IReviewDutyService;
import org.springblade.desk.quality.wrapper.ReviewDutyWrapper;
import org.springblade.desk.quality.wrapper.ReviewFaultWrapper;
import org.springblade.system.feign.IDictClient;
import org.springblade.system.feign.IUserClient;
import org.springframework.stereotype.Service;
@ -71,4 +75,17 @@ public class ReviewDutyServiceImpl extends BaseServiceImpl<ReviewDutyMapper, Rev
.eq(ReviewDuty::getIsDeleted, CommonConstant.DELETE_FALSE);
return baseMapper.selectList(queryWrapper);
}
@Override
public List<ReviewDutyVO> listVOByRsId(Long rsId) {
LambdaQueryWrapper<ReviewDuty> queryWrapper = Wrappers.lambdaQuery(ReviewDuty.class)
.eq(ReviewDuty::getReviewSheetId, rsId)
.eq(ReviewDuty::getIsDeleted, CommonConstant.DELETE_FALSE);
List<ReviewDuty> list = baseMapper.selectList(queryWrapper);
List<ReviewDutyVO> listVO = ReviewDutyWrapper.build().listVO(list);
for (ReviewDutyVO vo : listVO) {
setVOValue(vo);
}
return listVO;
}
}

@ -19,12 +19,15 @@ import org.springblade.desk.quality.mapper.ReviewFaultMapper;
import org.springblade.desk.quality.pojo.entity.ReviewDuty;
import org.springblade.desk.quality.pojo.entity.ReviewFault;
import org.springblade.desk.quality.pojo.vo.ReviewFaultVO;
import org.springblade.desk.quality.service.INgService;
import org.springblade.desk.quality.service.IReviewFaultService;
import org.springblade.desk.quality.wrapper.ReviewFaultWrapper;
import org.springblade.system.feign.IDictClient;
import org.springblade.system.feign.IUserClient;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
/**
* [生产处置单-问题故障] 服务实现类
@ -44,24 +47,28 @@ public class ReviewFaultServiceImpl extends BaseServiceImpl<ReviewFaultMapper, R
private IUserClient userClient;
@Resource
private IDictClient dictClient;
@Resource
private INgService ngService;
@Override
public IPage<ReviewFaultVO> selectReviewFaultPage(IPage<ReviewFaultVO> page, ReviewFaultVO reviewFault) {
return page.setRecords(baseMapper.selectReviewFaultPage(page, reviewFault));
}
@Override
public IPage<ReviewFaultVO> selectReviewFaultPage(IPage<ReviewFaultVO> page, ReviewFaultVO reviewFault) {
return page.setRecords(baseMapper.selectReviewFaultPage(page, reviewFault));
}
@Override
public List<ReviewFaultExcel> exportReviewFault(Wrapper<ReviewFault> queryWrapper) {
List<ReviewFaultExcel> reviewFaultList = baseMapper.exportReviewFault(queryWrapper);
//reviewFaultList.forEach(reviewFault -> {
// reviewFault.setTypeName(DictCache.getValue(DictEnum.YES_NO, ReviewFault.getType()));
//});
return reviewFaultList;
}
@Override
public List<ReviewFaultExcel> exportReviewFault(Wrapper<ReviewFault> queryWrapper) {
List<ReviewFaultExcel> reviewFaultList = baseMapper.exportReviewFault(queryWrapper);
//reviewFaultList.forEach(reviewFault -> {
// reviewFault.setTypeName(DictCache.getValue(DictEnum.YES_NO, ReviewFault.getType()));
//});
return reviewFaultList;
}
@Override
@Override
public void setVOValue(ReviewFaultVO vo) {
vo.setNgType2Name(ngService.getById(vo.getNgType2Id()).getName());
vo.setNgType3Name(ngService.getById(vo.getNgType3Id()).getName());
vo.setNgType4Name(ngService.getById(vo.getNgType4Id()).getName());
}
@Override
@ -71,4 +78,17 @@ public class ReviewFaultServiceImpl extends BaseServiceImpl<ReviewFaultMapper, R
.eq(ReviewFault::getIsDeleted, CommonConstant.DELETE_FALSE);
return baseMapper.selectList(queryWrapper);
}
@Override
public List<ReviewFaultVO> listVOByRsId(Long rsId) {
LambdaQueryWrapper<ReviewFault> queryWrapper = Wrappers.lambdaQuery(ReviewFault.class)
.eq(ReviewFault::getReviewSheetId, rsId)
.eq(ReviewFault::getIsDeleted, CommonConstant.DELETE_FALSE);
List<ReviewFault> list = baseMapper.selectList(queryWrapper);
List<ReviewFaultVO> listVO = ReviewFaultWrapper.build().listVO(list);
for (ReviewFaultVO vo : listVO) {
setVOValue(vo);
}
return listVO;
}
}

@ -3,6 +3,7 @@
*/
package org.springblade.desk.quality.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@ -15,28 +16,28 @@ import lombok.EqualsAndHashCode;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springblade.common.exception.BusinessException;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.service.en.impl.EnBaseServiceImpl;
import org.springblade.desk.basic.util.IdUtil;
import org.springblade.desk.device.pojo.entity.FeiBaSetEntity;
import org.springblade.desk.quality.constant.InspectionTaskConst;
import org.springblade.desk.quality.constant.ReviewSheetConst;
import org.springblade.desk.quality.excel.ReviewSheetExcel;
import org.springblade.desk.quality.mapper.ReviewSheetMapper;
import org.springblade.desk.quality.pojo.entity.InspectionTask;
import org.springblade.desk.quality.pojo.entity.ReviewDuty;
import org.springblade.desk.quality.pojo.entity.ReviewFault;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
import org.springblade.desk.quality.pojo.vo.PpmReportDetailModel;
import org.springblade.desk.quality.pojo.vo.PrintChildReviewSheet;
import org.springblade.desk.quality.pojo.vo.ReviewSheetVO;
import org.springblade.desk.quality.pojo.vo.*;
import org.springblade.desk.quality.service.IInspectionTaskService;
import org.springblade.desk.quality.service.IReviewDutyService;
import org.springblade.desk.quality.service.IReviewFaultService;
import org.springblade.desk.quality.service.IReviewSheetService;
import org.springblade.system.feign.IDictClient;
import org.springblade.system.feign.IUserClient;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
/**
@ -55,6 +56,10 @@ public class ReviewSheetServiceImpl extends EnBaseServiceImpl<ReviewSheetMapper,
@Resource
private IInspectionTaskService taskService;
@Resource
private IReviewFaultService faultService;
@Resource
private IReviewDutyService dutyService;
@Resource
private IUserClient userClient;
@ -77,7 +82,8 @@ public class ReviewSheetServiceImpl extends EnBaseServiceImpl<ReviewSheetMapper,
@Override
public void setVOValue(ReviewSheetVO vo) {
vo.setFaultList(faultService.listVOByRsId(vo.getId()));
vo.setDutyList(dutyService.listVOByRsId(vo.getId()));
}
/**
@ -103,7 +109,7 @@ public class ReviewSheetServiceImpl extends EnBaseServiceImpl<ReviewSheetMapper,
}
LambdaQueryWrapper<ReviewSheet> qw = Wrappers.lambdaQuery();
qw.eq(ReviewSheet::getWcId, wcId);
qw.in(ReviewSheet::getStatus, ReviewSheetConst.S_NEW, ReviewSheetConst.S_HEAR);
qw.in(ReviewSheet::getStatus, ReviewSheetConst.ERP.S_NEW, ReviewSheetConst.ERP.S_HEAR);
qw.orderByAsc(ReviewSheet::getRsCode);
return baseMapper.selectList(qw);
}
@ -115,7 +121,7 @@ public class ReviewSheetServiceImpl extends EnBaseServiceImpl<ReviewSheetMapper,
}
LambdaQueryWrapper<ReviewSheet> qw = Wrappers.lambdaQuery();
qw.eq(ReviewSheet::getWpId, wpId);
qw.eq(ReviewSheet::getStatus, ReviewSheetConst.S_HEAR);
qw.eq(ReviewSheet::getStatus, ReviewSheetConst.ERP.S_HEAR);
return baseMapper.selectOne(qw);
}
@ -145,7 +151,7 @@ public class ReviewSheetServiceImpl extends EnBaseServiceImpl<ReviewSheetMapper,
rs.setMemo(memo);
rs.setReviewDate(LocalDateTime.now());
rs.setReviewStatus((int) resultStatus); // todo:
rs.setStatus(ReviewSheetConst.S_COMPLETE);
rs.setStatus(ReviewSheetConst.ERP.S_COMPLETE);
// 装配模式
if (ReviewSheetConst.MODE_ASSEMBLY.equals(rs.getReviewOrderMode())) {
@ -174,6 +180,32 @@ public class ReviewSheetServiceImpl extends EnBaseServiceImpl<ReviewSheetMapper,
// todo:
}
@Override
public R fill(ReviewSheetVO vo) {
// 关联rsId
for (ReviewFaultVO voF : vo.getFaultList()) {
voF.setReviewSheetId(vo.getId());
}
if (StringUtils.isNotBlank(vo.getFaultDeleteIds())) {
faultService.deleteLogic(Func.toLongList(vo.getFaultDeleteIds()));
}
List<ReviewFault> listF = BeanUtil.copyToList(vo.getFaultList(), ReviewFault.class);
faultService.saveOrUpdateBatch(listF);
// 关联rsId
for (ReviewDutyVO voD : vo.getDutyList()) {
voD.setReviewSheetId(vo.getId());
}
if (StringUtils.isNotBlank(vo.getDutyDeleteIds())) {
dutyService.deleteLogic(Func.toLongList(vo.getDutyDeleteIds()));
}
List<ReviewDuty> listD = BeanUtil.copyToList(vo.getDutyList(), ReviewDuty.class);
dutyService.saveOrUpdateBatch(listD);
ReviewSheet bs = BeanUtil.copyProperties(vo, ReviewSheet.class);
// ReviewSheetVO
saveOrUpdate(bs);
return R.success("");
}
@Override
public ReviewSheet getByRsCode(String rsCode) {
LambdaQueryWrapper<ReviewSheet> qw = Wrappers.lambdaQuery();

@ -14,6 +14,8 @@ import lombok.EqualsAndHashCode;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.api.R;
import org.springblade.desk.basic.util.IdUtil;
import org.springblade.desk.quality.constant.InspectionItemConst;
import org.springblade.desk.quality.excel.WorkPlanItemExcel;
import org.springblade.desk.quality.mapper.WorkPlanItemMapper;
@ -32,6 +34,7 @@ import org.springblade.desk.quality.wrapper.StandardWrapper;
import org.springblade.desk.quality.wrapper.WorkPlanItemWrapper;
import org.springblade.system.feign.IDictClient;
import org.springblade.system.feign.IUserClient;
import org.springblade.system.pojo.entity.UserInfo;
import org.springframework.stereotype.Service;
import java.util.List;
@ -51,10 +54,6 @@ import java.util.stream.Collectors;
public class WorkPlanItemServiceImpl extends BaseServiceImpl<WorkPlanItemMapper, WorkPlanItem>
implements IWorkPlanItemService {
@Resource
private IUserClient userClient;
@Resource
private IDictClient dictClient;
@Resource
private IInspectionItemService inspectionItemService;
@Resource
@ -62,6 +61,12 @@ public class WorkPlanItemServiceImpl extends BaseServiceImpl<WorkPlanItemMapper,
@Resource
private IStandardService standardService;
@Resource
private IUserClient userClient;
@Resource
private IDictClient dictClient;
@Override
public IPage<WorkPlanItemVO> selectWorkPlanItemPage(IPage<WorkPlanItemVO> page, WorkPlanItemVO workPlanItem) {
return page.setRecords(baseMapper.selectWorkPlanItemPage(page, workPlanItem));
@ -78,6 +83,12 @@ public class WorkPlanItemServiceImpl extends BaseServiceImpl<WorkPlanItemMapper,
@Override
public void setVOValue(WorkPlanItemVO vo) {
if (IdUtil.isValid(vo.getCheckUserId())) {
R<UserInfo> rUI = userClient.userInfo(vo.getCheckUserId());
if (rUI != null && rUI.isSuccess() && rUI.getData().getUser() != null) {
vo.setCheckUserRealName(rUI.getData().getUser().getRealName());
}
}
{
InspectionItem item = inspectionItemService.getById(vo.getItemId());
InspectionItemVO itemVO = InspectionItemWrapper.build().entityVO(item);

@ -0,0 +1,37 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
import org.springblade.desk.quality.pojo.vo.ReviewSheetErpListVO;
import org.springblade.desk.quality.pojo.vo.ReviewSheetInitListVO;
import java.util.Objects;
/**
* [生产处置单] 包装类,返回视图层所需的字段
*
* @author Tom Shuo
* @since 2026-01-06
*/
public class ReviewSheetErpListWrapper extends BaseEntityWrapper<ReviewSheet, ReviewSheetErpListVO> {
public static ReviewSheetErpListWrapper build() {
return new ReviewSheetErpListWrapper();
}
@Override
public ReviewSheetErpListVO entityVO(ReviewSheet reviewSheet) {
ReviewSheetErpListVO VO = Objects.requireNonNull(BeanUtil.copyProperties(reviewSheet, ReviewSheetErpListVO.class));
//User createUser = UserCache.getUser(reviewSheet.getCreateUser());
//User updateUser = UserCache.getUser(reviewSheet.getUpdateUser());
//reviewSheetVO.setCreateUserName(createUser.getName());
//reviewSheetVO.setUpdateUserName(updateUser.getName());
return VO;
}
}

@ -0,0 +1,37 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
import org.springblade.desk.quality.pojo.vo.ReviewSheetInitListVO;
import org.springblade.desk.quality.pojo.vo.ReviewSheetVO;
import java.util.Objects;
/**
* [生产处置单] 包装类,返回视图层所需的字段
*
* @author Tom Shuo
* @since 2026-01-06
*/
public class ReviewSheetInitListWrapper extends BaseEntityWrapper<ReviewSheet, ReviewSheetInitListVO> {
public static ReviewSheetInitListWrapper build() {
return new ReviewSheetInitListWrapper();
}
@Override
public ReviewSheetInitListVO entityVO(ReviewSheet reviewSheet) {
ReviewSheetInitListVO VO = Objects.requireNonNull(BeanUtil.copyProperties(reviewSheet, ReviewSheetInitListVO.class));
//User createUser = UserCache.getUser(reviewSheet.getCreateUser());
//User updateUser = UserCache.getUser(reviewSheet.getUpdateUser());
//reviewSheetVO.setCreateUserName(createUser.getName());
//reviewSheetVO.setUpdateUserName(updateUser.getName());
return VO;
}
}

@ -0,0 +1,37 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
import org.springblade.desk.quality.pojo.vo.ReviewSheetErpListVO;
import org.springblade.desk.quality.pojo.vo.ReviewSheetRedoListVO;
import java.util.Objects;
/**
* [生产处置单] 包装类,返回视图层所需的字段
*
* @author Tom Shuo
* @since 2026-01-06
*/
public class ReviewSheetRedoListWrapper extends BaseEntityWrapper<ReviewSheet, ReviewSheetRedoListVO> {
public static ReviewSheetRedoListWrapper build() {
return new ReviewSheetRedoListWrapper();
}
@Override
public ReviewSheetRedoListVO entityVO(ReviewSheet reviewSheet) {
ReviewSheetRedoListVO VO = Objects.requireNonNull(BeanUtil.copyProperties(reviewSheet, ReviewSheetRedoListVO.class));
//User createUser = UserCache.getUser(reviewSheet.getCreateUser());
//User updateUser = UserCache.getUser(reviewSheet.getUpdateUser());
//reviewSheetVO.setCreateUserName(createUser.getName());
//reviewSheetVO.setUpdateUserName(updateUser.getName());
return VO;
}
}

@ -0,0 +1,37 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
import org.springblade.desk.quality.pojo.vo.ReviewSheetRedoListVO;
import org.springblade.desk.quality.pojo.vo.ReviewSheetScrapListVO;
import java.util.Objects;
/**
* [生产处置单] 包装类,返回视图层所需的字段
*
* @author Tom Shuo
* @since 2026-01-06
*/
public class ReviewSheetScrapListWrapper extends BaseEntityWrapper<ReviewSheet, ReviewSheetScrapListVO> {
public static ReviewSheetScrapListWrapper build() {
return new ReviewSheetScrapListWrapper();
}
@Override
public ReviewSheetScrapListVO entityVO(ReviewSheet reviewSheet) {
ReviewSheetScrapListVO VO = Objects.requireNonNull(BeanUtil.copyProperties(reviewSheet, ReviewSheetScrapListVO.class));
//User createUser = UserCache.getUser(reviewSheet.getCreateUser());
//User updateUser = UserCache.getUser(reviewSheet.getUpdateUser());
//reviewSheetVO.setCreateUserName(createUser.getName());
//reviewSheetVO.setUpdateUserName(updateUser.getName());
return VO;
}
}

@ -0,0 +1,37 @@
/**
* Author: Tom Shuo
*/
package org.springblade.desk.quality.wrapper;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.desk.quality.pojo.entity.ReviewSheet;
import org.springblade.desk.quality.pojo.vo.ReviewSheetScrapListVO;
import org.springblade.desk.quality.pojo.vo.ReviewSheetSelfListVO;
import java.util.Objects;
/**
* [生产处置单] 包装类,返回视图层所需的字段
*
* @author Tom Shuo
* @since 2026-01-06
*/
public class ReviewSheetSelfListWrapper extends BaseEntityWrapper<ReviewSheet, ReviewSheetSelfListVO> {
public static ReviewSheetSelfListWrapper build() {
return new ReviewSheetSelfListWrapper();
}
@Override
public ReviewSheetSelfListVO entityVO(ReviewSheet reviewSheet) {
ReviewSheetSelfListVO VO = Objects.requireNonNull(BeanUtil.copyProperties(reviewSheet, ReviewSheetSelfListVO.class));
//User createUser = UserCache.getUser(reviewSheet.getCreateUser());
//User updateUser = UserCache.getUser(reviewSheet.getUpdateUser());
//reviewSheetVO.setCreateUserName(createUser.getName());
//reviewSheetVO.setUpdateUserName(updateUser.getName());
return VO;
}
}
Loading…
Cancel
Save