Przeglądaj źródła

设备管理-接口定义

haogh 1 rok temu
rodzic
commit
1df914dbe8

+ 97 - 0
sop-api/src/main/java/com/qmth/sop/server/api/DeviceDeliveryManageController.java

@@ -0,0 +1,97 @@
+package com.qmth.sop.server.api;
+
+import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.sop.business.bean.params.DevicePlaceParam;
+import com.qmth.sop.business.bean.result.DevicePlaceResult;
+import com.qmth.sop.business.bean.result.DeviceSignResult;
+import com.qmth.sop.common.annotation.OperationLog;
+import com.qmth.sop.common.contant.SystemConstant;
+import com.qmth.sop.common.enums.DeviceStatusEnum;
+import com.qmth.sop.common.enums.LogTypeEnum;
+import com.qmth.sop.common.enums.TransferModeEnum;
+import com.qmth.sop.common.util.Result;
+import com.qmth.sop.common.util.ResultUtil;
+import io.swagger.annotations.*;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+@Api(tags = "设备管理Controller")
+@RestController
+@RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + SystemConstant.PREFIX_URL_DEVICE_MANAGE)
+public class DeviceDeliveryManageController {
+
+
+    @ApiOperation(value = "设备签收登记列表查询")
+    @RequestMapping(value = "/sign/list", method = RequestMethod.POST)
+    @ApiResponses({ @ApiResponse(code = 200, message = "返回信息", response = DeviceSignResult.class) })
+    public Result signList(@ApiParam(value = "派单号") @RequestParam String crmNo) {
+        return ResultUtil.ok();
+    }
+
+    @ApiOperation(value="设备签收")
+    @RequestMapping(value = "sign" , method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @OperationLog(logType = LogTypeEnum.UPDATE)
+    public Result sign(@ApiParam(value = "设备发货id", required = true) @RequestParam String id) {
+        return ResultUtil.ok();
+    }
+
+    @ApiOperation(value="设备未签收")
+    @RequestMapping(value = "unsigned" , method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @OperationLog(logType = LogTypeEnum.UPDATE)
+    public Result unsigned(@ApiParam(value = "设备发货id", required = true) @RequestParam String id) {
+        return ResultUtil.ok();
+    }
+
+
+    @ApiOperation(value="设备签收编辑")
+    @RequestMapping(value = "sign/edit" , method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @OperationLog(logType = LogTypeEnum.UPDATE)
+    public Result signEdit(@ApiParam(value = "设备发货id", required = true) @RequestParam String id,
+                           @ApiParam(value = "设备状态", required = true) @RequestParam DeviceStatusEnum deviceStatus) {
+        return ResultUtil.ok();
+    }
+
+    @ApiOperation(value = "设备去处登记列表查询")
+    @RequestMapping(value = "/place/list", method = RequestMethod.POST)
+    @ApiResponses({ @ApiResponse(code = 200, message = "返回信息", response = DevicePlaceResult.class) })
+    public Result placeList(@ApiParam(value = "派单号") @RequestParam String crmNo) {
+        return ResultUtil.ok();
+    }
+
+
+    @ApiOperation(value="设备去处登记入库")
+    @RequestMapping(value = "in" , method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @OperationLog(logType = LogTypeEnum.UPDATE)
+    public Result in(@ApiParam(value = "设备发货id", required = true) @RequestParam String id,
+                     @ApiParam(value = "快递单号:入库方式-选择邮寄不能为空", required = false) @RequestParam String expressNo,
+                     @ApiParam(value = "备注:入库方式-选择其他的时候不能为空", required = false) @RequestParam String remark) {
+        return ResultUtil.ok();
+    }
+
+    @ApiOperation(value="设备去处登记中转")
+    @RequestMapping(value = "transfer" , method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @OperationLog(logType = LogTypeEnum.UPDATE)
+    public Result transfer(@ApiParam(value = "设备发货id", required = true) @RequestParam String id,
+                           @ApiParam(value = "中转方式", required = true) @RequestParam TransferModeEnum transferMode,
+                           @ApiParam(value = "快递单号", required = false) @RequestParam String expressNo,
+                           @ApiParam(value = "接收方单号", required = true) @RequestParam String receiveCrmNo,
+                           @ApiParam(value = "备注", required = false) @RequestParam String remark) {
+        return ResultUtil.ok();
+    }
+
+    @ApiOperation(value="设备去处编辑")
+    @RequestMapping(value = "place/edit" , method = RequestMethod.POST)
+    @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = Object.class)})
+    @OperationLog(logType = LogTypeEnum.UPDATE)
+    public Result placeEdit(@Valid @ApiParam(value = "设备去处编辑信息", required = true) @RequestBody DevicePlaceParam devicePlaceParam) {
+        return ResultUtil.ok();
+    }
+
+
+}

+ 75 - 0
sop-business/src/main/java/com/qmth/sop/business/bean/params/DevicePlaceParam.java

@@ -0,0 +1,75 @@
+package com.qmth.sop.business.bean.params;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import com.qmth.sop.common.enums.TransferModeEnum;
+import io.swagger.annotations.ApiModelProperty;
+import org.hibernate.validator.constraints.Range;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description: 设备去处登记更新参数
+ * @Author: haoguanghui
+ * @Date: 2024/05/16
+ */
+public class DevicePlaceParam {
+
+    @ApiModelProperty("id")
+    @NotNull(message = "缺少id")
+    @Range(min = 1L, message = "缺少id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long id;
+
+    @ApiModelProperty("中转方式: MAIL-邮寄,OTHER-其他")
+    private TransferModeEnum transferMode;
+
+    @ApiModelProperty("快递单号")
+    private String expressNo;
+
+    @ApiModelProperty("接收方单号")
+    private String receiveCrmNo;
+
+    @ApiModelProperty("备注")
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public TransferModeEnum getTransferMode() {
+        return transferMode;
+    }
+
+    public void setTransferMode(TransferModeEnum transferMode) {
+        this.transferMode = transferMode;
+    }
+
+    public String getExpressNo() {
+        return expressNo;
+    }
+
+    public void setExpressNo(String expressNo) {
+        this.expressNo = expressNo;
+    }
+
+    public String getReceiveCrmNo() {
+        return receiveCrmNo;
+    }
+
+    public void setReceiveCrmNo(String receiveCrmNo) {
+        this.receiveCrmNo = receiveCrmNo;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+}

+ 123 - 0
sop-business/src/main/java/com/qmth/sop/business/bean/result/DevicePlaceResult.java

@@ -0,0 +1,123 @@
+package com.qmth.sop.business.bean.result;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import com.qmth.sop.common.enums.DeviceDeliveryStatusEnum;
+import com.qmth.sop.common.enums.DeviceStatusEnum;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+
+public class DevicePlaceResult implements Serializable {
+
+    @ApiModelProperty("主键ID")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long id;
+
+    @ApiModelProperty("设备序列号")
+    private String serialNo;
+
+    @ApiModelProperty("设备型号")
+    private String model;
+
+    @ApiModelProperty("设备状态")
+    private DeviceStatusEnum deviceStatus;
+
+    @ApiModelProperty("设备归属")
+    private String supplierName;
+
+    @ApiModelProperty("设备归属")
+    private String remark;
+
+    @ApiModelProperty("设备使用状态")
+    private DeviceDeliveryStatusEnum status;
+
+    @ApiModelProperty("接收方单号")
+    private String receiveCrmNo;
+
+    @ApiModelProperty("运输方式")
+    private String transportMode;
+
+    @ApiModelProperty("是否可编辑,1:可编辑 0:不可编辑")
+    private Boolean canEdit;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getSerialNo() {
+        return serialNo;
+    }
+
+    public void setSerialNo(String serialNo) {
+        this.serialNo = serialNo;
+    }
+
+    public String getModel() {
+        return model;
+    }
+
+    public void setModel(String model) {
+        this.model = model;
+    }
+
+    public DeviceStatusEnum getDeviceStatus() {
+        return deviceStatus;
+    }
+
+    public void setDeviceStatus(DeviceStatusEnum deviceStatus) {
+        this.deviceStatus = deviceStatus;
+    }
+
+    public String getSupplierName() {
+        return supplierName;
+    }
+
+    public void setSupplierName(String supplierName) {
+        this.supplierName = supplierName;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public DeviceDeliveryStatusEnum getStatus() {
+        return status;
+    }
+
+    public void setStatus(DeviceDeliveryStatusEnum status) {
+        this.status = status;
+    }
+
+    public String getReceiveCrmNo() {
+        return receiveCrmNo;
+    }
+
+    public void setReceiveCrmNo(String receiveCrmNo) {
+        this.receiveCrmNo = receiveCrmNo;
+    }
+
+    public String getTransportMode() {
+        return transportMode;
+    }
+
+    public void setTransportMode(String transportMode) {
+        this.transportMode = transportMode;
+    }
+
+    public Boolean getCanEdit() {
+        return canEdit;
+    }
+
+    public void setCanEdit(Boolean canEdit) {
+        this.canEdit = canEdit;
+    }
+}

+ 101 - 0
sop-business/src/main/java/com/qmth/sop/business/bean/result/DeviceSignResult.java

@@ -0,0 +1,101 @@
+package com.qmth.sop.business.bean.result;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import com.qmth.sop.common.enums.DeviceDeliveryStatusEnum;
+import com.qmth.sop.common.enums.DeviceStatusEnum;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+
+public class DeviceSignResult implements Serializable {
+
+    @ApiModelProperty("主键ID")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long id;
+
+    @ApiModelProperty("派单号")
+    private String cmrNo;
+
+    @ApiModelProperty("设备序列号")
+    private String serialNo;
+
+    @ApiModelProperty("设备型号")
+    private String model;
+
+    @ApiModelProperty("设备状态")
+    private DeviceStatusEnum deviceStatus;
+
+    @ApiModelProperty("设备归属")
+    private String supplierName;
+
+    @ApiModelProperty("出库快递单号")
+    private String expressNo;
+
+    @ApiModelProperty("状态")
+    private DeviceDeliveryStatusEnum status;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getCmrNo() {
+        return cmrNo;
+    }
+
+    public void setCmrNo(String cmrNo) {
+        this.cmrNo = cmrNo;
+    }
+
+    public String getSerialNo() {
+        return serialNo;
+    }
+
+    public void setSerialNo(String serialNo) {
+        this.serialNo = serialNo;
+    }
+
+    public String getModel() {
+        return model;
+    }
+
+    public void setModel(String model) {
+        this.model = model;
+    }
+
+    public DeviceStatusEnum getDeviceStatus() {
+        return deviceStatus;
+    }
+
+    public void setDeviceStatus(DeviceStatusEnum deviceStatus) {
+        this.deviceStatus = deviceStatus;
+    }
+
+    public String getSupplierName() {
+        return supplierName;
+    }
+
+    public void setSupplierName(String supplierName) {
+        this.supplierName = supplierName;
+    }
+
+    public String getExpressNo() {
+        return expressNo;
+    }
+
+    public void setExpressNo(String expressNo) {
+        this.expressNo = expressNo;
+    }
+
+    public DeviceDeliveryStatusEnum getStatus() {
+        return status;
+    }
+
+    public void setStatus(DeviceDeliveryStatusEnum status) {
+        this.status = status;
+    }
+}

+ 3 - 0
sop-business/src/main/resources/db/log/haoguanghui_update_log.sql

@@ -4,3 +4,6 @@ ALTER TABLE t_b_device_delivery
 ALTER TABLE t_b_device_delivery
     ADD COLUMN `source_id` bigint NULL COMMENT '设备来源ID,不为空,说明该设备由其他单号中转过来' AFTER `device_status`;
 
+-- 2024-05-16
+ALTER TABLE t_b_device_delivery
+    ADD COLUMN `remark` varchar(200) NULL COMMENT '其他的运输方式说明' AFTER `source_id`;

+ 1 - 0
sop-common/src/main/java/com/qmth/sop/common/contant/SystemConstant.java

@@ -267,6 +267,7 @@ public class SystemConstant {
     public static final String PREFIX_URL_FXXK = "/open/fxxk";
     public static final String PREFIX_URL_SSO = "/sso";
     public static final String PREFIX_URL_DEVICE_DELIVERY = "/admin/device/delivery";
+    public static final String PREFIX_URL_DEVICE_MANAGE = "/admin/device/manage";
 
     /**
      * 缓存配置

+ 23 - 0
sop-common/src/main/java/com/qmth/sop/common/enums/TransferModeEnum.java

@@ -0,0 +1,23 @@
+package com.qmth.sop.common.enums;
+
+/**
+ * @Description: 中转方式
+ * @Author: haoguanghui
+ * @Date: 2024/5/16
+ */
+public enum TransferModeEnum {
+
+    MAIL("邮寄"),
+
+    OTHER("其他");
+
+    private String title;
+
+    TransferModeEnum(String title) {
+        this.title = title;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+}