From a255936315b333a1114b868a07b6699b7e00aef2 Mon Sep 17 00:00:00 2001 From: aikai Date: Thu, 8 Aug 2024 10:52:29 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=B0=83=E6=95=B4ws=E9=97=AE=E9=A2=98-=20?= =?UTF-8?q?=E5=92=8C=E8=80=83=E5=8B=A4=E8=AE=B0=E5=BD=95=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../attendance/punchrecord/AttendancePunchRecordMapper.java | 4 ++-- .../yudao/module/smartfactory/service/hik/HikServiceImpl.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/attendance/punchrecord/AttendancePunchRecordMapper.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/attendance/punchrecord/AttendancePunchRecordMapper.java index f753f1a8..a06e027e 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/attendance/punchrecord/AttendancePunchRecordMapper.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/attendance/punchrecord/AttendancePunchRecordMapper.java @@ -20,7 +20,7 @@ import java.util.List; */ @Mapper public interface AttendancePunchRecordMapper extends BaseMapperX { - +// default PageResult selectPage(AttendancePunchRecordPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eqIfPresent(AttendancePunchRecordDO::getUserId, reqVO.getUserId()) @@ -36,7 +36,7 @@ public interface AttendancePunchRecordMapper extends BaseMapperX Date: Fri, 9 Aug 2024 14:46:07 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=85=B7=E4=BD=93=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E6=98=AF=E5=90=A6=E5=8F=AF=E4=BB=A5=E5=A4=96?= =?UTF-8?q?=E5=8B=A4=E6=89=93=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../equipment/vo/userExt/UsersExtRespVO.java | 7 ++++++- .../controller/admin/user/UserController.java | 8 ++++++++ .../vo/user/UserUpdateFieldworkReqVO.java | 20 +++++++++++++++++++ .../dal/dataobject/user/AdminUserDO.java | 13 +++++++++++- .../attendance/AttendanceServiceImpl.java | 2 +- .../system/service/user/AdminUserService.java | 9 +++++++++ .../service/user/AdminUserServiceImpl.java | 9 +++++++++ .../mapper/equipment/UsersExtMapper.xml | 3 ++- 8 files changed, 67 insertions(+), 4 deletions(-) create mode 100644 yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/user/UserUpdateFieldworkReqVO.java diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/equipment/vo/userExt/UsersExtRespVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/equipment/vo/userExt/UsersExtRespVO.java index 07e595b0..8579c6e9 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/equipment/vo/userExt/UsersExtRespVO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/equipment/vo/userExt/UsersExtRespVO.java @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.system.controller.admin.equipment.vo.userExt; +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; import com.alibaba.excel.annotation.ExcelProperty; import io.swagger.v3.oas.annotations.media.Schema; @@ -31,6 +32,10 @@ public class UsersExtRespVO { @ExcelProperty("部门名称") private String deptName; + @Schema(description = "是否允许外勤打卡 0否 1是", example = "0") + @ExcelProperty("是否允许外勤打卡") + private Integer fieldworkFlag; + @Schema(description = "人脸图片地址") @ExcelProperty("人脸图片") private String faceImg; @@ -47,4 +52,4 @@ public class UsersExtRespVO { @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) private LocalDateTime createTime; -} \ No newline at end of file +} diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserController.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserController.java index 6cfdf08f..e548c125 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserController.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/UserController.java @@ -94,6 +94,14 @@ public class UserController { return success(true); } + + @PutMapping("/update-fieldwork") + @Operation(summary = "修改用户外勤打卡状态") + public CommonResult updateFieldwork(@Valid @RequestBody UserUpdateFieldworkReqVO reqVO) { + userService.updateFieldwork(reqVO.getId(), reqVO.getFieldworkFlag()); + return success(true); + } + @GetMapping("/page") @Operation(summary = "获得用户分页列表") @PreAuthorize("@ss.hasPermission('system:user:list')") diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/user/UserUpdateFieldworkReqVO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/user/UserUpdateFieldworkReqVO.java new file mode 100644 index 00000000..cf8bf8af --- /dev/null +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/user/UserUpdateFieldworkReqVO.java @@ -0,0 +1,20 @@ +package cn.iocoder.yudao.module.system.controller.admin.user.vo.user; + +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; +import cn.iocoder.yudao.framework.common.validation.InEnum; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +@Schema(description = "管理后台 - 用户更新状态 Request VO") +@Data +public class UserUpdateFieldworkReqVO { + + @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") + @NotNull(message = "角色编号不能为空") + private Long id; + + @Schema(description = "是否允许外勤打卡 0否 1是", example = "0") + private Integer fieldworkFlag; +} diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/user/AdminUserDO.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/user/AdminUserDO.java index e51baca3..a232c734 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/user/AdminUserDO.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/user/AdminUserDO.java @@ -4,7 +4,10 @@ import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; import cn.iocoder.yudao.framework.mybatis.core.type.JsonLongSetTypeHandler; import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO; import cn.iocoder.yudao.module.system.enums.common.SexEnum; -import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; @@ -92,6 +95,14 @@ public class AdminUserDO extends TenantBaseDO { * 枚举 {@link CommonStatusEnum} */ private Integer status; + + /** + * 是否允许外勤打卡 0否 1是 + *

+ * 枚举 {@link CommonStatusEnum} + */ + private Integer fieldworkFlag; + /** * 用户类型 * 1:公司用户 2:工厂用户 diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/attendance/AttendanceServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/attendance/AttendanceServiceImpl.java index 8d9c5d30..0d0ce89e 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/attendance/AttendanceServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/attendance/AttendanceServiceImpl.java @@ -258,7 +258,7 @@ public class AttendanceServiceImpl implements AttendanceService { LocalDateTime localDateTime = dto.getLocalDateTime(); LocalDateTime nextDayDateTime = LocalDateTimeUtil.offset(localDateTime, 1, ChronoUnit.DAYS); AttendanceGroupDO activationGroup = dto.getActivationGroup(); - vo.setFieldworkFlag(activationGroup.getFieldworkFlag()); + vo.setFieldworkFlag(dto.getUser().getFieldworkFlag() == null ? activationGroup.getFieldworkFlag() : dto.getUser().getFieldworkFlag()); // - 根据经纬度判断是否在对应班组的打卡点上 - 如果是考勤机的话默认就是在打卡点 vo.setPunchPoint(AttendanceGroupDO.PUNCH_TYPE_ATTENDANCE_MACHINE.equals(dto.getPunchType()) ? Constants.TRUE : GeoUtil.distance(Double.parseDouble(dto.getLatitude()), Double.parseDouble(dto.getLongitude()) diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserService.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserService.java index 3a99f129..3884d257 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserService.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserService.java @@ -94,6 +94,14 @@ public interface AdminUserService { */ void updateUserStatus(Long id, Integer status); + /** + * 修改外勤打卡状态 + * + * @param id 用户编号 + * @param fieldworkFlag 状态 + */ + void updateFieldwork(Long id, Integer fieldworkFlag); + /** * 删除用户 * @@ -308,4 +316,5 @@ public interface AdminUserService { * @return */ IPage getAllUserListByGroupIds(UserPageDTO dto); + } diff --git a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java index c87a99e7..6f091c19 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java +++ b/yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/user/AdminUserServiceImpl.java @@ -230,6 +230,15 @@ public class AdminUserServiceImpl implements AdminUserService { userMapper.updateById(updateObj); } + @Override + public void updateFieldwork(Long id, Integer fieldworkFlag) { + // 更新状态 + AdminUserDO updateObj = new AdminUserDO(); + updateObj.setId(id); + updateObj.setFieldworkFlag(fieldworkFlag); + userMapper.updateById(updateObj); + } + @Override @Transactional(rollbackFor = Exception.class) public void deleteUser(Long id) { diff --git a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/equipment/UsersExtMapper.xml b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/equipment/UsersExtMapper.xml index fe39163a..2685c4a7 100644 --- a/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/equipment/UsersExtMapper.xml +++ b/yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/equipment/UsersExtMapper.xml @@ -14,6 +14,7 @@ b.id, a.id AS userId, a.nickname AS userName, + a.fieldwork_flag as fieldworkFlag, a.dept_id AS dept_id, b.face_img AS faceImg, b.attendance_machine_nos AS attendanceMachineNos, @@ -56,4 +57,4 @@ - \ No newline at end of file + From 5d05355f128b7ca987ee59b11586ac20877583b9 Mon Sep 17 00:00:00 2001 From: aikai Date: Fri, 9 Aug 2024 15:24:04 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=BA=93=E4=BD=8D=E5=AD=90=E8=A1=A8?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E6=B7=BB=E5=8A=A0=E5=B1=82=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../depotlocationitem/vo/DepotLocationItemPageReqVO.java | 5 +++++ .../depotlocationitem/vo/DepotLocationItemRespVO.java | 5 +++++ .../depotlocationitem/vo/DepotLocationItemSaveReqVO.java | 3 +++ .../dataobject/depotlocationitem/DepotLocationItemDO.java | 7 ++++++- 4 files changed, 19 insertions(+), 1 deletion(-) diff --git a/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemPageReqVO.java b/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemPageReqVO.java index 50ea5e05..6806a08d 100644 --- a/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemPageReqVO.java +++ b/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemPageReqVO.java @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.wms.controller.admin.depotlocationitem.vo; +import com.alibaba.excel.annotation.ExcelProperty; import lombok.*; import java.util.*; import io.swagger.v3.oas.annotations.media.Schema; @@ -24,6 +25,10 @@ public class DepotLocationItemPageReqVO extends PageParam { @Schema(description = "行") private Integer rowNum; + @Schema(description = "层") + private Integer layerNum; + + @Schema(description = "上边框json{routeCheck: true,type: top}") private String top; diff --git a/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemRespVO.java b/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemRespVO.java index e4e3e431..d9822cfc 100644 --- a/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemRespVO.java +++ b/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemRespVO.java @@ -29,6 +29,11 @@ public class DepotLocationItemRespVO { @ExcelProperty("行") private Integer rowNum; + @ExcelProperty("层") + @Schema(description = "层") + private Integer layerNum; + + @Schema(description = "上边框json{routeCheck: true,type: top}") @ExcelProperty("上边框json{routeCheck: true,type: top}") private String top; diff --git a/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemSaveReqVO.java b/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemSaveReqVO.java index 0ca39485..59b7f721 100644 --- a/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemSaveReqVO.java +++ b/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/controller/admin/depotlocationitem/vo/DepotLocationItemSaveReqVO.java @@ -22,6 +22,9 @@ public class DepotLocationItemSaveReqVO { @Schema(description = "行") private Integer rowNum; + @Schema(description = "层") + private Integer layerNum; + @Schema(description = "上边框json{routeCheck: true,type: top}") private String top; diff --git a/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/dal/dataobject/depotlocationitem/DepotLocationItemDO.java b/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/dal/dataobject/depotlocationitem/DepotLocationItemDO.java index 550001ab..134fc0f8 100644 --- a/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/dal/dataobject/depotlocationitem/DepotLocationItemDO.java +++ b/yudao-module-wms/yudao-module-wms-biz/src/main/java/cn/iocoder/yudao/module/wms/dal/dataobject/depotlocationitem/DepotLocationItemDO.java @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.wms.dal.dataobject.depotlocationitem; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; import java.time.LocalDateTime; @@ -39,6 +40,10 @@ public class DepotLocationItemDO extends BaseDO { * 行 */ private Integer rowNum; + /** + * 层 + */ + private Integer layerNum; /** * 上边框json{routeCheck: true,type:"top"} */ @@ -60,4 +65,4 @@ public class DepotLocationItemDO extends BaseDO { */ private String coordinate; -} \ No newline at end of file +}