diff --git a/nxhs-service/src/main/java/cc/yunxi/controller/DeviceController.java b/nxhs-service/src/main/java/cc/yunxi/controller/DeviceController.java index ef70b6e..2f43840 100644 --- a/nxhs-service/src/main/java/cc/yunxi/controller/DeviceController.java +++ b/nxhs-service/src/main/java/cc/yunxi/controller/DeviceController.java @@ -93,14 +93,15 @@ public class DeviceController { result.put("deviceCode", device.getDeviceCode());//设备代码 result.put("deviceName", deviceVO.getDeviceCode());//设备名称 result.put("userStatus", device.getUseStatus());//设备状态 + result.put("companyId", device.getBeLongCompanyId());//所属公司 List list = new ArrayList<>(); for (RecycleBucket bucket : buckets) { Map _bucket = new HashMap<>(); _bucket.put("bucketCode", bucket.getBucketCode());//桶编码 _bucket.put("doorNum", bucket.getDoorNum());//门号 _bucket.put("showOrd", bucket.getShowOrd());//显示顺序 - _bucket.put("productCode", bucket.getProductCode());// - _bucket.put("productSubCode", bucket.getProductSubCode());// + _bucket.put("productCode", bucket.getProductCode());//产品大类 + _bucket.put("productSubCode", bucket.getProductSubCode());//产品子类 _bucket.put("isShow", bucket.getIsShow());//是否显示 _bucket.put("showName", bucket.getShowName());//显示名称 BigDecimal price = calculatePrice(bucket, config);//综合计算价格 @@ -150,6 +151,8 @@ public class DeviceController { respVO.setUserStatus(device.getUseStatus()); respVO.setCleanLock(Integer.valueOf(config.getCleanLock())); respVO.setUsePhoneLogin(config.getAllowPhoneLogin()); + //二维码 + fillQrCode(device.getDeviceCodeQr(), respVO); //桶配置 fillBucketConfig(respVO, buckets, config); //宣传配置 @@ -207,6 +210,18 @@ public class DeviceController { respVO.setPosterList(posters); } + private void fillQrCode(String qrCode, DeviceRespVO respVO) { + ArrayList posters = new ArrayList<>(); + List files = JSONUtil.toList(qrCode, FileUploadRespVO.class); + if (files.size() > 0) { + FileUploadRespVO file = files.get(0); + byte[] download = fileService.download(file.getUrl()); + String base64 = fileService.encodeToBase64(download); + respVO.setQrCode(base64); + } + } + + private BigDecimal calculatePrice(RecycleBucket bucket, RecycleDeviceConfig config) { BigDecimal bucketPrice = bucket.getPrice(); if (null != bucketPrice && bucketPrice.compareTo(BigDecimal.ZERO) > 0) { @@ -301,10 +316,9 @@ public class DeviceController { return result; } - @PostMapping("/customerLogin") + @PostMapping("/cleanerLogin") @ApiOperation("清运员手机号登录") public CommonResult cleanerLogin(@RequestBody LoginReqVO loginReqVO) { - Recycler recycler = recyclerService.getRecyclerByPhoneNumber(loginReqVO.getPhone()); if (recycler == null) { throw new BizIllegalException("登录失败:你还不是清运员,请先注册!"); @@ -336,7 +350,6 @@ public class DeviceController { @PostMapping("/delivery") @ApiOperation("投递订单上传") public CommonResult delivery(@RequestBody DeliveryOrderVO orderVO) { -// UserDTO user = UserContext.getUser(); RecycleDevice device = deviceService.getByDeviceCode(orderVO.getDeviceCode()); if (null == device || StrUtil.isEmpty(device.getBeLongCompanyId())) { diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDevice.java b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDevice.java index f334e73..1174dc0 100644 --- a/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDevice.java +++ b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDevice.java @@ -54,6 +54,9 @@ public class RecycleDevice { @TableField(value = "BE_LONG_RECYCLER_PHONE") @ApiModelProperty("回收员手机号") private String beLongRecyclerPhone; + @TableField(value = "DEVICE_CODE_QR") + @ApiModelProperty("设备二维码") + private String deviceCodeQr; @TableField(value = "LATITUDE") @ApiModelProperty("纬度") private String latitude; diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CleanOrderVO.java b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CleanOrderVO.java index 2890c16..4c60ae9 100644 --- a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CleanOrderVO.java +++ b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CleanOrderVO.java @@ -41,8 +41,8 @@ public class CleanOrderVO { private String phone; @ApiModelProperty("登录方式") private String loginType; - @ApiModelProperty("上报类型") - private String reportType; + @ApiModelProperty(value = "公司id", required = true) + private String companyId; @ApiModelProperty("上报时间") private String reportTime; @ApiModelProperty("抓拍") diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeliveryOrderVO.java b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeliveryOrderVO.java index 738a2dc..6de87ce 100644 --- a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeliveryOrderVO.java +++ b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeliveryOrderVO.java @@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.List; @@ -39,6 +41,9 @@ public class DeliveryOrderVO { private String userId; @ApiModelProperty("用户手机") private String phone; + @ApiModelProperty(value = "所属公司", required = true, example = "1") + @NotBlank(message = "所属公司不能为空") + private String companyId; @ApiModelProperty("登录方式") private String loginType; @ApiModelProperty("上报时间") diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeviceRespVO.java b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeviceRespVO.java index 02c23aa..d0bc971 100644 --- a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeviceRespVO.java +++ b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeviceRespVO.java @@ -25,8 +25,10 @@ public class DeviceRespVO { @ApiModelProperty(value = "是否开启清理锁", required = true, example = "1") @NotNull(message = "是否开启清理锁不能为空") private Integer cleanLock; - @ApiModelProperty("是否开启手机号登录") + @ApiModelProperty(value = "是否开启手机号登录",required = true, example = "1") private String usePhoneLogin; + @ApiModelProperty(value = "公司id", required = true) + private String companyId; @ApiModelProperty("设备桶清单") private List bucketList; @ApiModelProperty("设备二维码")