diff --git a/src/main/java/org/springblade/common/cache/DeptCache.java b/src/main/java/org/springblade/common/cache/DeptCache.java
new file mode 100644
index 0000000..53f5aa8
--- /dev/null
+++ b/src/main/java/org/springblade/common/cache/DeptCache.java
@@ -0,0 +1,58 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.common.cache;
+
+import org.springblade.core.cache.utils.CacheUtil;
+import org.springblade.core.tool.utils.SpringUtil;
+import org.springblade.modules.system.pojo.entity.Dept;
+import org.springblade.modules.system.service.IDeptService;
+
+/**
+ * 系统缓存
+ *
+ * @author Chill
+ */
+public class DeptCache {
+ public static final String DEPT_CACHE = "blade:";
+ public static final String DEPT_CACHE_ID = "dept:id:";
+
+ private static final IDeptService DeptService;
+
+ static {
+ DeptService = SpringUtil.getBean(IDeptService.class);
+ }
+
+ /**
+ * 获取用户
+ *
+ * @param DeptId 用户id
+ * @return
+ */
+ public static Dept getDept(Long DeptId) {
+ return CacheUtil.get(DEPT_CACHE, DEPT_CACHE_ID, DeptId, () -> DeptService.getById(DeptId));
+ }
+
+}
diff --git a/src/main/java/org/springblade/modules/business/contraller/MaintenanceController.java b/src/main/java/org/springblade/modules/business/contraller/MaintenanceController.java
index 1ba5db7..ed9c624 100644
--- a/src/main/java/org/springblade/modules/business/contraller/MaintenanceController.java
+++ b/src/main/java/org/springblade/modules/business/contraller/MaintenanceController.java
@@ -123,6 +123,7 @@ public class MaintenanceController extends BladeController {
public R taskSupervisorConfirm(@RequestBody MaintenanceTask task) {
MaintenanceTask taskOld = taskService.getById(task.getId());
taskOld.setServicemanId(task.getServicemanId());
+ taskOld.setServicemanName(task.getServicemanName());
taskOld.setTaskStatus(MaintenanceStatusEnum.TASK_SUPERVISOR_CONFIRM.getValue());
taskService.updateById(taskOld);
@@ -278,7 +279,7 @@ public class MaintenanceController extends BladeController {
taskOld.setApproveResult(CommonConstant.FALSE_INT);
taskOld.setApproveTime(DateUtil.now());
taskOld.setApproveRemark(task.getApproveRemark());
- taskOld.setRepairStatus(MaintenanceStatusEnum.REPAIR_SERVICEMAN_CREATE.getValue());
+ taskOld.setRepairStatus(MaintenanceStatusEnum.SUPERVISOR_CONFIRM_REFUSE.getValue());
taskService.updateById(taskOld);
return R.success();
@@ -315,7 +316,7 @@ public class MaintenanceController extends BladeController {
taskOld.setApproveResult(CommonConstant.FALSE_INT);
taskOld.setApproveTime(DateUtil.now());
taskOld.setApproveRemark(task.getApproveRemark());
- taskOld.setRepairStatus(MaintenanceStatusEnum.REPAIR_SERVICEMAN_CREATE.getValue());
+ taskOld.setRepairStatus(MaintenanceStatusEnum.CUSTOMER_CONFIRM_REFUSE.getValue());
taskService.updateById(taskOld);
return R.success();
diff --git a/src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java b/src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java
index a0d3060..a3afc40 100644
--- a/src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java
+++ b/src/main/java/org/springblade/modules/business/contraller/WorkOrderController.java
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.json.JSONObject;
+import org.springblade.common.cache.DeptCache;
import org.springblade.common.constant.CommonConstant;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.log.annotation.ApiLog;
@@ -15,6 +16,7 @@ import org.springblade.core.mp.support.Query;
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.core.tool.utils.StringPool;
import org.springblade.modules.business.enums.WorkOrderStatusEnum;
import org.springblade.modules.business.pojo.dto.workorder.WorkOrderDTO;
@@ -105,6 +107,13 @@ public class WorkOrderController extends BladeController {
// 执行分页查询
IPage pages = workOrderService.page(Condition.getPage(query), wrapper);
+
+ pages.getRecords().forEach(order -> {
+ if (Func.isNotEmpty(order.getReportUnit())) {
+ order.setReportUnitName(DeptCache.getDept(Long.parseLong(order.getReportUnit())).getDeptName());
+ }
+ });
+
// 返回查询结果
return R.data(pages);
}
@@ -188,7 +197,7 @@ public class WorkOrderController extends BladeController {
public R serviceReject(@RequestBody WorkOrder workOrder) {
WorkOrder workOrderOld = workOrderService.getById(workOrder.getId());
workOrderOld.setRepaiRejectReason(workOrder.getRepaiRejectReason());
- workOrderOld.setStatus(WorkOrderStatusEnum.CUSTOMER_SUBMIT.getValue());
+ workOrderOld.setStatus(WorkOrderStatusEnum.SERVICE_REFUSE.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getRepaiRejectReason());
@@ -248,7 +257,7 @@ public class WorkOrderController extends BladeController {
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
workOrderOld.setRepaiTeamRejectReason(workOrder.getRepaiTeamRejectReason());
- workOrderOld.setStatus(WorkOrderStatusEnum.SERVICEMAN_CONFIRM.getValue());
+ workOrderOld.setStatus(WorkOrderStatusEnum.SUPERVISOR_CONFIRM_REFUSE.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getApproveRemark());
@@ -294,7 +303,7 @@ public class WorkOrderController extends BladeController {
workOrderOld.setApproveResult(workOrder.getApproveResult());
workOrderOld.setApproveTime(workOrder.getApproveTime());
workOrderOld.setApproveRemark(workOrder.getApproveRemark());
- workOrderOld.setStatus(WorkOrderStatusEnum.SERVICEMAN_CONFIRM.getValue());
+ workOrderOld.setStatus(WorkOrderStatusEnum.CUSTOMER_CONFIRM_REFUSE.getValue());
workOrderService.updateById(workOrderOld);
WorkOrderApproval approval = new WorkOrderApproval(workOrder.getId(), AuthUtil.getUserId(), CommonConstant.FALSE_STR, DateUtil.now(), workOrder.getApproveRemark());
diff --git a/src/main/java/org/springblade/modules/business/enums/MaintenanceStatusEnum.java b/src/main/java/org/springblade/modules/business/enums/MaintenanceStatusEnum.java
index d1850d7..fa3de66 100644
--- a/src/main/java/org/springblade/modules/business/enums/MaintenanceStatusEnum.java
+++ b/src/main/java/org/springblade/modules/business/enums/MaintenanceStatusEnum.java
@@ -46,10 +46,18 @@ public enum MaintenanceStatusEnum {
* 维修人员提交,待主管审批
*/
REPAIR_SERVICEMAN_SUBMIT(2),
+ /**
+ * 主管审核拒绝,待提交维修方案
+ */
+ SUPERVISOR_CONFIRM_REFUSE(101),
/**
* 主管审批通过,待客户审批
*/
REPAIR_SUPERVISOR_CONFIRM(3),
+ /**
+ * 客户审核拒绝,待主管审核
+ */
+ CUSTOMER_CONFIRM_REFUSE(102),
/**
* 客户审批通过, 维修中
*/
diff --git a/src/main/java/org/springblade/modules/business/enums/WorkOrderStatusEnum.java b/src/main/java/org/springblade/modules/business/enums/WorkOrderStatusEnum.java
index adf7c85..07d1502 100644
--- a/src/main/java/org/springblade/modules/business/enums/WorkOrderStatusEnum.java
+++ b/src/main/java/org/springblade/modules/business/enums/WorkOrderStatusEnum.java
@@ -17,41 +17,65 @@ public enum WorkOrderStatusEnum {
*/
DRAFT(-1),
/**
- * 客户提交,维修人员拒绝, 待客服处理
+ * 客户提交 待客服处理
*/
CUSTOMER_SUBMIT(0),
+
+ /**
+ * 维修人员拒绝, 待客服处理
+ */
+ SERVICE_REFUSE(100),
+
/**
* 客服分配维修人员,待维修人员确认
*/
SERVICE_SUBMIT(1),
+
/**
- * 维修人员确认, 主管审核拒绝,客户审核拒绝,待提交维修方案
+ * 维修人员确认,,待提交维修方案
*/
SERVICEMAN_CONFIRM(2),
+
/**
* 维修人员提交,待主管审批
*/
SUPERVISOR_CONFIRM(3),
+
+ /**
+ * 主管审核拒绝,待提交维修方案
+ */
+ SUPERVISOR_CONFIRM_REFUSE(101),
+
/**
* 主管审批通过,待客户审批
*/
CUSTOMER_CONFIRM(4),
+
+ /**
+ * 客户审核拒绝,待主管审核
+ */
+ CUSTOMER_CONFIRM_REFUSE(102),
+
/**
* 客户审批通过, 维修中
*/
REPAIRING(5),
+
/**
* 维修完成,待评价
*/
REPAIR_FINISH(6),
+
/**
* 评价完成,待客服确认付款
*/
EVALUATE_FINISH(7),
+
/**
* 工单关闭
*/
CLOSE(8),
+
/**
* 已开发票
*/
diff --git a/src/main/java/org/springblade/modules/business/pojo/entity/maintenance/MaintenanceTask.java b/src/main/java/org/springblade/modules/business/pojo/entity/maintenance/MaintenanceTask.java
index 5c61f03..fec2351 100644
--- a/src/main/java/org/springblade/modules/business/pojo/entity/maintenance/MaintenanceTask.java
+++ b/src/main/java/org/springblade/modules/business/pojo/entity/maintenance/MaintenanceTask.java
@@ -65,6 +65,11 @@ public class MaintenanceTask extends BaseEntity {
*/
private Long servicemanId;
+ /**
+ * 巡检人
+ */
+ private String servicemanName;
+
/**
* 巡检说明
*/
diff --git a/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrder.java b/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrder.java
index e2c38c1..38bf724 100644
--- a/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrder.java
+++ b/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrder.java
@@ -1,5 +1,6 @@
package org.springblade.modules.business.pojo.entity.workorder;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@@ -93,6 +94,12 @@ public class WorkOrder extends BaseEntity {
*/
private String reportUnit;
+ /**
+ * 提报单位名称
+ */
+ @TableField(exist = false)
+ private String reportUnitName;
+
/**
* 维修班组
*/
diff --git a/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrderRepairMaterial.java b/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrderRepairMaterial.java
index 7674e06..4642772 100644
--- a/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrderRepairMaterial.java
+++ b/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrderRepairMaterial.java
@@ -22,6 +22,11 @@ public class WorkOrderRepairMaterial extends BaseEntity {
*/
private Long orderId;
+ /**
+ * 库存id
+ */
+ private String inventoryId;
+
/**
* 物料名称
*/
diff --git a/src/main/java/org/springblade/modules/system/controller/UserRegisterController.java b/src/main/java/org/springblade/modules/system/controller/UserRegisterController.java
index 9abc30e..3534f29 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserRegisterController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserRegisterController.java
@@ -2,6 +2,7 @@ package org.springblade.modules.system.controller;
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;
@@ -24,6 +25,7 @@ import org.springblade.core.tenant.annotation.NonDS;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.constant.BladeConstant;
import org.springblade.core.tool.constant.RoleConstant;
+import org.springblade.core.tool.utils.DigestUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringPool;
import org.springblade.core.tool.utils.StringUtil;
@@ -133,7 +135,7 @@ public class UserRegisterController {
public R auditRefuse(@RequestBody User user) {
user = userService.getById(user.getId());
user.setStatus(STATUS_REGISTER_NO);
- return R.status(userService.updateUser(user));
+ return R.status(userService.removeById(user));
}
/**
@@ -211,4 +213,46 @@ public class UserRegisterController {
return R.data(user, "注册成功");
}
+
+ /**
+ * 重置密码
+ *
+ * @return
+ */
+ @PostMapping("/reset-pwd")
+ @Operation(summary = "重置密码", description = "重置密码")
+ public R resetPwd(@Parameter(description = "用户信息", required = true) @RequestBody UserRegisterDto userDto) {
+ String phone = userDto.getPhone();
+ String verifyCode = userDto.getVerifyCode();
+
+ if (StringUtil.isBlank(phone)) {
+ return R.fail("手机号为空");
+ }
+
+ if (StringUtil.isBlank(verifyCode)) {
+ return R.fail("验证码为空");
+ }
+
+ // 从缓存中获取验证码
+ String redisKey = UserCache.USER_REGISTER_CODE + phone;
+ String cacheVerifyCode = (String) redisTemplate.opsForValue().get(redisKey);
+
+ // 判断验证码是否正确
+ if (!verifyCode.equals(cacheVerifyCode)) {
+ return R.fail("验证码错误");
+ }
+
+ redisTemplate.delete(redisKey);
+
+ User user = userService.getOne(Wrappers.lambdaQuery(User.class).eq(User::getPhone, userDto.getPhone()));
+ if (Func.isEmpty(user)){
+ return R.fail("用户不存在");
+ }
+
+ CacheUtil.clear(USER_CACHE);
+ userService.update(Wrappers.update().lambda().set(User::getPassword, DigestUtil.encrypt(userDto.getPassword())).eq(User::getPhone, userDto.getPhone()));
+
+ return R.success("重置密码成功");
+ }
+
}