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 f4a5aec..b8dbd35 100644 --- a/nxhs-service/src/main/java/cc/yunxi/controller/DeviceController.java +++ b/nxhs-service/src/main/java/cc/yunxi/controller/DeviceController.java @@ -2,17 +2,17 @@ package cc.yunxi.controller; import cc.yunxi.common.domain.CommonResult; -import cc.yunxi.domain.po.RecycleBucket; -import cc.yunxi.domain.po.RecycleDevice; -import cc.yunxi.domain.po.RecycleDeviceConfig; +import cc.yunxi.common.exception.BizIllegalException; +import cc.yunxi.domain.dto.UserDTO; +import cc.yunxi.domain.po.*; import cc.yunxi.domain.vo.device.*; import cc.yunxi.domain.vo.file.FileUploadRespVO; -import cc.yunxi.service.IFileService; -import cc.yunxi.service.IRecycleBucketService; -import cc.yunxi.service.IRecycleDeviceConfigService; -import cc.yunxi.service.IRecycleDeviceService; +import cc.yunxi.service.*; import cc.yunxi.utils.DeviceStatusManager; +import cc.yunxi.utils.UserContext; import cn.hutool.core.util.StrUtil; +import cn.hutool.http.HttpUtil; +import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModelProperty; @@ -24,9 +24,8 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.Base64; -import java.util.List; +import java.time.format.DateTimeFormatter; +import java.util.*; /** *

@@ -45,13 +44,18 @@ public class DeviceController { @Resource private DeviceStatusManager deviceStatusManager; - @Resource - private IRecycleDeviceService recycleDeviceService; + private IRecycleDeviceService deviceService; + @Resource + private IRecycleDeviceConfigService configService; + @Resource + private IRecycleBucketService bucketService; @Resource - private IRecycleDeviceConfigService recycleDeviceConfigService; + private IRecycleDeviceEventService eventService; @Resource - private IRecycleBucketService recycleBucketService; + private IRecycleCleanOrderService cleanOrderService; + @Resource + private IRecycleDeliveryOrderService deliveryOrderService; @Resource private IFileService fileService; @@ -61,37 +65,51 @@ public class DeviceController { public CommonResult conf(@RequestBody DeviceVO deviceVO) { CommonResult result = new CommonResult<>(); DeviceRespVO respVO = new DeviceRespVO(); - RecycleDevice device = recycleDeviceService.getByDeviceCode(deviceVO.getDeviceCode()); + RecycleDevice device = deviceService.getByDeviceCode(deviceVO.getDeviceCode()); if (device == null) { - return result.error(400, "设备不存在"); + return CommonResult.error(404, "设备不存在"); } String companyId = device.getBeLongCompanyId(); if (StrUtil.isBlank(companyId)) { - return result.error(400, "设备未绑定公司,还未投用!!"); + return CommonResult.error(404, "设备未绑定公司,还未投用!!"); } - RecycleDeviceConfig config = recycleDeviceConfigService.getByCompanyId(companyId); + RecycleDeviceConfig config = configService.getByCompanyId(companyId); if (config == null) { - return result.error(400, "设备未配置!!"); + return CommonResult.error(404, "设备未配置配置项!!"); } - List buckets = recycleBucketService.getByDeviceCode(deviceVO.getDeviceCode()); + List buckets = bucketService.getByDeviceCode(deviceVO.getDeviceCode()); if (buckets.size() == 0) { - return result.error(400, "当前设备没有桶配置清单!!"); + return CommonResult.error(404, "当前设备没有桶配置清单!!"); } respVO.setDeviceCode(device.getDeviceCode()); respVO.setDeviceName(device.getDeviceName()); respVO.setUserStatus(device.getUseStatus()); respVO.setCleanLock(Integer.valueOf(config.getCleanLock())); respVO.setUsePhoneLogin(config.getAllowPhoneLogin()); + //桶配置 + fillBucketConfig(respVO, buckets, config); + //宣传配置 + respVO.setPromotionSet(config.getPromotionSet()); + respVO.setSlogan(config.getPromotionSlogans()); + String pics = config.getPromotionPic1(); + fillPoster(pics, respVO); + result.setData(respVO); + result.setMsg("success"); + return result; + } + + private void fillBucketConfig(DeviceRespVO respVO, List buckets, RecycleDeviceConfig config) { ArrayList list = new ArrayList<>(); for (RecycleBucket bucket : buckets) { DeviceRespVO.Bucket _bucket = new DeviceRespVO.Bucket(); + BigDecimal price = calculatePrice(bucket, config);//计算价格 _bucket.setBucketCode(bucket.getBucketCode()); _bucket.setDoorNum(bucket.getDoorNum()); _bucket.setOrdNum(bucket.getShowOrd()); _bucket.setCode(bucket.getProductCode()); _bucket.setSubCode(bucket.getProductSubCode()); _bucket.setShowText(bucket.getShowName()); - _bucket.setPrice(bucket.getPrice()); + _bucket.setPrice(price); _bucket.setSingleWeightLimit(BigDecimal.ZERO); _bucket.setTotalWeightLimit(bucket.getWarningWeight()); _bucket.setSmokeAlarm(bucket.getSmogSet()); @@ -107,10 +125,11 @@ public class DeviceController { list.add(_bucket); } respVO.setBucketList(list); - respVO.setPromotionSet(config.getPromotionSet()); - respVO.setSlogan(config.getPromotionSlogans()); + + } + + private void fillPoster(String pics, DeviceRespVO respVO) { ArrayList posters = new ArrayList<>(); - String pics = config.getPromotionPic1(); List files = JSONUtil.toList(pics, FileUploadRespVO.class); for (int i = 0; i < files.size(); i++) { FileUploadRespVO file = files.get(i); @@ -122,8 +141,75 @@ public class DeviceController { posters.add(poster); } respVO.setPosterList(posters); - result.setData(respVO); - return result; + } + + private BigDecimal calculatePrice(RecycleBucket bucket, RecycleDeviceConfig config) { + BigDecimal bucketPrice = bucket.getPrice(); + if (null != bucketPrice && bucketPrice.compareTo(BigDecimal.ZERO) > 0) { + return bucketPrice;//优先桶配置 + } + + BigDecimal price = BigDecimal.ZERO; + BigDecimal comm = config.getDeliveryPrice();//统一价格 + if (comm != null && comm.compareTo(BigDecimal.ZERO) > 0) { + price = comm; + } + + BigDecimal doorNumPrice = BigDecimal.ZERO;//按编号算价格 + Integer doorNum = bucket.getDoorNum(); + switch (doorNum) { + case 1: + doorNumPrice = config.getBucket1Price(); + break; + case 2: + doorNumPrice = config.getBucket2Price(); + break; + case 3: + doorNumPrice = config.getBucket3Price(); + break; + case 4: + doorNumPrice = config.getBucket4Price(); + break; + case 5: + doorNumPrice = config.getBucket5Price(); + break; + case 6: + doorNumPrice = config.getBucket6Price(); + break; + case 7: + doorNumPrice = config.getBucket7Price(); + break; + case 8: + doorNumPrice = config.getBucket8Price(); + break; + case 9: + doorNumPrice = config.getBucket9Price(); + break; + case 10: + doorNumPrice = config.getBucket10Price(); + break; + case 11: + doorNumPrice = config.getBucket11Price(); + break; + case 12: + doorNumPrice = config.getBucket12Price(); + break; + default: + break; + } + if (doorNumPrice.compareTo(BigDecimal.ZERO) > 0) { + price = doorNumPrice; + } + return price; + } + + private String uploadImages(List snaps) { + List list = new ArrayList<>(); + for (Snap snap : snaps) { + FileUploadRespVO uploadRespVO = fileService.uploadImage(snap.getImage(), snap.getFileName()); + list.add(uploadRespVO); + } + return JSONUtil.toJsonStr(list); } //手机号登录 @@ -131,6 +217,7 @@ public class DeviceController { @ApiModelProperty("手机号登录") public CommonResult login(@RequestBody LoginReqVO loginReqVO) { CommonResult result = new CommonResult<>(); + //todo return result; } @@ -139,25 +226,134 @@ public class DeviceController { @PostMapping("/delivery") @ApiModelProperty("投递订单上传") public CommonResult delivery(@RequestBody DeliveryOrderVO orderVO) { +// UserDTO user = UserContext.getUser(); + RecycleDevice device = deviceService.getByDeviceCode(orderVO.getDeviceCode()); - return null; + if (null == device || StrUtil.isEmpty(device.getBeLongCompanyId())) { + throw new BizIllegalException("上传失败:根据设备编号,未查询到设备信息!!"); + } + String companyId = device.getBeLongCompanyId(); + //查询配置 + RecycleDeviceConfig config = configService.getByCompanyId(companyId); + String adjustSet = config.getDeliveryAdjustSet();//审核配置 + + RecycleDeliveryOrder order = new RecycleDeliveryOrder(); + order.setDeviceCode(orderVO.getDeviceCode()); + order.setBucketCode(orderVO.getBucketCode()); + order.setDeviceOrderNo(orderVO.getDeviceOrderNo()); + order.setDoorNum(orderVO.getDoorNum()); + order.setBagNo(orderVO.getBagNo()); + order.setOriginalWeight(orderVO.getOriginalWeight()); + order.setReportWeight(orderVO.getWeight()); + order.setPrice(orderVO.getPrice()); + order.setProductCode(orderVO.getProductCode()); + order.setProductSubCode(orderVO.getProductSubCode()); + order.setTotalPrice(orderVO.getTotalPrice()); + if ("1".equals(adjustSet)) {//自动审核 + order.setAdjustStatus(1); + order.setAdjustWeight(orderVO.getWeight()); + order.setAdjustPrice(orderVO.getTotalPrice()); + order.setAdjustComm("自动审核"); + } else {//手动审核 + order.setAdjustStatus(0); + order.setAdjustWeight(BigDecimal.ZERO); + order.setAdjustPrice(BigDecimal.ZERO); + order.setAdjustComm(""); + } + order.setBagNo(orderVO.getBagNo()); + order.setDeliverId(orderVO.getUserId()); + order.setPhone(orderVO.getPhone()); + // 上传照片 + List images = orderVO.getImages(); + String photos = uploadImages(images); + order.setPhoto(photos); + order.setCompanyId(companyId);//绑定订单对应商户 + order.setLoginType(orderVO.getLoginType()); + // order.setStartTime(orderVO.getStartTime()); +// order.setFinishTime(orderVO.getFinishTime()); + order.setReportTime(new Date()); + + deliveryOrderService.save(order); + return CommonResult.success(orderVO.getDeviceOrderNo()); } //清运重量上传 @PostMapping("/clean") @ApiModelProperty("清运订单上传") public CommonResult clean(@RequestBody CleanOrderVO orderVO) { + UserDTO user = UserContext.getUser(); + RecycleDevice device = deviceService.getByDeviceCode(orderVO.getDeviceCode()); + if (null == device) { + throw new BizIllegalException("上传失败:根据设备编号,未查询到设备信息!!"); + } - return null; + //查询配置 + RecycleDeviceConfig config = configService.getByCompanyId(user.getCompanyId()); + String adjustSet = config.getCleanAdjustSet();//审核配置 + //查询桶 +// RecycleBucket bucket = bucketService.getByBucketCode(orderVO.getBucketCode()); + + RecycleCleanOrder order = new RecycleCleanOrder(); + order.setDeviceCode(orderVO.getDeviceCode()); + order.setBucketCode(orderVO.getBucketCode()); + order.setDoorNum(orderVO.getDoorNum()); + order.setProductCode(orderVO.getProductCode()); + order.setProductSubCode(orderVO.getProductSubCode()); + order.setPrice(orderVO.getPrice()); + //开始时间 + //完成时间 + List images = orderVO.getImages(); + if (images == null || images.size() == 0) { + throw new BizIllegalException("上传失败:未上传抓拍图片!!"); + } else { + String result = uploadImages(images); + order.setPhoto(result); + } + //审核 + if ("1".equals(adjustSet)) { + order.setAdjustStatus(1); + order.setAdjustComm("自动审核"); + order.setAdjustWeight(orderVO.getTotalWeight()); + order.setAdjustPrice(orderVO.getTotalPrice()); + } else { + order.setAdjustStatus(0); + order.setAdjustComm(""); + order.setAdjustWeight(BigDecimal.ZERO); + order.setAdjustPrice(BigDecimal.ZERO); + } +// order.setStartTime(orderVO.getStartTime()); +// order.setFinishTime(orderVO.getFinishTime()); + order.setReportTime(new Date()); + order.setCreatorUserId(orderVO.getUserId()); + order.setCreatorTime(new Date()); + order.setPhone(orderVO.getPhone()); + order.setCompanyId(user.getCompanyId()); + cleanOrderService.save(order); + return CommonResult.success(orderVO.getDeviceOrderNo()); } //设备事件上报 @PostMapping("/event") @ApiModelProperty("设备事件上报") public CommonResult event(@RequestBody DeviceEventVO eventVO) { - CommonResult result = new CommonResult<>(); + RecycleDevice device = deviceService.getByDeviceCode(eventVO.getDeviceCode()); - return result; + RecycleDeviceEvent event = new RecycleDeviceEvent(); + event.setDeviceCode(eventVO.getDeviceCode()); + event.setPhone(eventVO.getPhone()); + event.setIsLocal("0"); + event.setEventType(eventVO.getEventType()); +// event.setEventTime(eventVO.getEventTime()); + event.setEventDesc(eventVO.getEventDesc()); + event.setDoorNum(eventVO.getDoorNum()); + event.setBucketCode(eventVO.getBucketCode()); + event.setOrderNo(eventVO.getOrderNum()); + event.setOrderType(eventVO.getOrderType()); + event.setCompanyId(device.getCompanyId()); + event.setCreateUserId(eventVO.getUserId());//公司 + event.setCreateTime(new Date()); + eventService.save(event); + return CommonResult.success("事件上报成功"); } //设备心跳上报 @@ -177,9 +373,65 @@ public class DeviceController { @ApiModelProperty("设备命令下发") @PostMapping("/command") public CommonResult command(@RequestBody CommandVO commandVO) { + String deviceCode = commandVO.getDeviceCode(); + UserDTO user = UserContext.getUser(); + DeviceStatus status = deviceStatusManager.getDeviceStatus(deviceCode); + + // 判断设备是否在线 + Boolean online = status.getOnline(); + if (!online) return CommonResult.error(400, "设备不在线"); + + String ip = status.getIp(); + // 下发指令 + String res = HttpUtil.post("http://" + ip + "/command", JSONUtil.toJsonStr(commandVO), 1000); + // 记录指令下发事件 + CommonResult _result = JSONUtil.toBean(res, CommonResult.class); + RecycleDeviceEvent event = new RecycleDeviceEvent(); + event.setDeviceCode(deviceCode); + event.setBucketCode("");// + event.setDoorNum(0);// + event.setEventType(deviceCode); + event.setEventDesc("设备命令下发"); + event.setEventTime(new Date()); + event.setIsLocal("0");//远程调用 - //todo 记录指令下发事件 - return null; + if (_result.getCode() != 200) { + event.setEventResult("1"); + } else { + event.setEventResult("0"); + } + event.setCreateUserId(user.getId()); + event.setCreateTime(new Date()); + event.setCompanyId(user.getCompanyId()); + event.setOrganizeJsonId(""); + eventService.save(event); + + return _result; + } + + @ApiModelProperty("获取设备状态") + @PostMapping("/status") + public CommonResult command(@RequestBody DeviceVO deviceVO) + { + String deviceCode = deviceVO.getDeviceCode(); + CommandVO cmd = new CommandVO(); + cmd.setCmd(CMDEnum.status); + cmd.setDeviceCode(deviceCode); + cmd.setOptTime(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + cmd.setRemark("获取设备状态"); + DeviceStatus status = deviceStatusManager.getDeviceStatus(deviceCode); + // 判断设备是否在线 + Boolean online = status.getOnline(); + if (!online) return CommonResult.error(400, "设备不在线"); + String post = HttpUtil.post("http://" + status.getIp() + "/command", JSONUtil.toJsonStr(cmd), 1000); + JSONObject json = JSONUtil.parseObj(post); + Integer code = json.getInt("code"); + if (code == 200 || code == 201) { + + } else { + return CommonResult.error(400, json.getStr("msg")); + } + return CommonResult.success("状态已更新", "success"); } } diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleCleanOrder.java b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleCleanOrder.java new file mode 100644 index 0000000..afecd44 --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleCleanOrder.java @@ -0,0 +1,115 @@ +package cc.yunxi.domain.po; + +import com.baomidou.mybatisplus.annotation.*; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 回收柜清运单 + * + * @版本: V3.5 + * @版权: 引迈信息技术有限公司(https://www.jnpfsoft.com) + * @作者: JNPF开发平台组 + * @日期: 2024-05-29 + */ +@Data +@TableName("nx_recycle_clean_order") +public class RecycleCleanOrder { + @TableId(value = "ID", type = IdType.ASSIGN_UUID) + private String id; + @TableField(value = "ORDER_NO") + @ApiModelProperty("订单号") + private String orderNo; + @TableField(value = "DEVICE_CODE") + @ApiModelProperty("设备编码") + private String deviceCode; + @TableField(value = "BUCKET_CODE") + @ApiModelProperty("桶编码") + private String bucketCode; + @TableField(value = "DOOR_NUM") + @ApiModelProperty("总重量") + private String doorNum; + @TableField(value = "DEVICE_ORDER_NO") + @ApiModelProperty("设备订单号") + private String deviceOrderNo; + @TableField(value = "PRODUCT_CODE") + @ApiModelProperty("回收大类") + private String productCode; + @TableField(value = "PRODUCT_SUB_CODE") + @ApiModelProperty("回收子类") + private String productSubCode; + @TableField(value = "PRICE") + @ApiModelProperty("单价") + private BigDecimal price; + @TableField(value = "WEIGHT") + @ApiModelProperty("重量") + private BigDecimal weight; + @TableField(value = "TOTAL_PRICE") + @ApiModelProperty("本单金额") + private BigDecimal totalPrice; + @TableField(value = "ADJUST_WEIGHT") + @ApiModelProperty("审核重量") + private BigDecimal adjustWeight; + @TableField(value = "ADJUST_PRICE") + @ApiModelProperty("本单审核金额") + private BigDecimal adjustPrice; + @TableField(value = "CLEAN_USER_ID") + @ApiModelProperty("清运员") + private String cleanUserId; + @TableField(value = "PHONE") + @ApiModelProperty("清运员手机号") + private String phone; + @TableField(value = "ENTRY_STATUS") + @ApiModelProperty("入库状态 0 待入库 1 已入库") + private Integer entryStatus; + @TableField(value = "BAG_NO") + @ApiModelProperty("垃圾袋编号") + private String bagNo; + @TableField(value = "ADJUST_STATUS") + @ApiModelProperty("审核状态 0 待审核 1 通过 3 调整通过 4 拒绝") + private Integer adjustStatus; + @TableField(value = "ADJUST_COMM") + @ApiModelProperty("审核意见") + private String adjustComm; + @TableField(value = "PHOTO") + @ApiModelProperty("抓拍照片") + private String photo; + @TableField(value = "F_TENANT_ID") + @ApiModelProperty("租户") + private String tenantId; + @TableField("F_CREATOR_TIME") + private Date creatorTime; + @TableField("F_CREATOR_USER_ID") + private String creatorUserId; + @TableField("F_LAST_MODIFY_TIME") + private Date lastModifyTime; + @TableField("F_LAST_MODIFY_USER_ID") + private String lastModifyUserId; + @TableField("F_DELETE_TIME") + private Date deleteTime; + @TableField("F_DELETE_USER_ID") + private Integer deleteUserId; + @TableField("F_DELETE_MARK") + private String deleteMark; + @TableField("COMPANY_ID") + private String companyId; + @TableField("DEPARTMENT_ID") + private String departmentId; + @TableField("ORGANIZE_JSON_ID") + private String organizeJsonId; + @TableField("F_VERSION") + private Integer version; + @TableField("F_FLOW_ID") + private String flowId; + @TableField(value = "START_TIME" , updateStrategy = FieldStrategy.IGNORED) + private Date startTime; + @TableField(value = "FINISH_TIME" , updateStrategy = FieldStrategy.IGNORED) + private Date finishTime; + @TableField(value = "LOGIN_TYPE" , updateStrategy = FieldStrategy.IGNORED) + private String loginType; + @TableField(value = "REPORT_TIME" , updateStrategy = FieldStrategy.IGNORED) + private Date reportTime; +} diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleCleanOrderEntity.java b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleCleanOrderEntity.java deleted file mode 100644 index 9d8250e..0000000 --- a/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleCleanOrderEntity.java +++ /dev/null @@ -1,87 +0,0 @@ -package cc.yunxi.domain.po; - -import com.baomidou.mybatisplus.annotation.FieldStrategy; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 回收柜清运单 - * - * @版本: V3.5 - * @版权: 引迈信息技术有限公司(https://www.jnpfsoft.com) - * @作者: JNPF开发平台组 - * @日期: 2024-05-29 - */ -@Data -@TableName("nx_recycle_clean_order") -public class RecycleCleanOrderEntity { - @TableId(value ="ID" ) - private String id; - @TableField(value = "ORDER_NO" , updateStrategy = FieldStrategy.IGNORED) - private String orderNo; - @TableField(value = "DEVICE_CODE" , updateStrategy = FieldStrategy.IGNORED) - private String deviceCode; - @TableField(value = "BUCKET_CODE" , updateStrategy = FieldStrategy.IGNORED) - private String bucketCode; - @TableField(value = "DOOR_NUM" , updateStrategy = FieldStrategy.IGNORED) - private String doorNum; - @TableField(value = "PRODUCT_CODE" , updateStrategy = FieldStrategy.IGNORED) - private String productCode; - @TableField(value = "DEVICE_ORDER_NO" , updateStrategy = FieldStrategy.IGNORED) - private String deviceOrderNo; - @TableField(value = "PRODUCT_SUB_CODE" , updateStrategy = FieldStrategy.IGNORED) - private String productSubCode; - @TableField(value = "PRICE" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal price; - @TableField(value = "WEIGHT" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal weight; - @TableField(value = "TOTAL_PRICE" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal totalPrice; - @TableField(value = "ADJUST_WEIGHT" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal adjustWeight; - @TableField(value = "ADJUST_PRICE" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal adjustPrice; - @TableField(value = "CLEAN_USER_ID" , updateStrategy = FieldStrategy.IGNORED) - private String cleanUserId; - @TableField(value = "PHONE" , updateStrategy = FieldStrategy.IGNORED) - private String phone; - @TableField(value = "ENTRY_STATUS" , updateStrategy = FieldStrategy.IGNORED) - private Integer entryStatus; - @TableField(value = "BAG_NO" , updateStrategy = FieldStrategy.IGNORED) - private String bagNo; - @TableField(value = "ADJUST_STATUS" , updateStrategy = FieldStrategy.IGNORED) - private Integer adjustStatus; - @TableField(value = "ADJUST_COMM" , updateStrategy = FieldStrategy.IGNORED) - private String adjustComm; - @TableField(value = "F_TENANT_ID" , updateStrategy = FieldStrategy.IGNORED) - private String tenantId; - @TableField("F_CREATOR_TIME") - private Date creatorTime; - @TableField("F_CREATOR_USER_ID") - private String creatorUserId; - @TableField("F_LAST_MODIFY_TIME") - private Date lastModifyTime; - @TableField("F_LAST_MODIFY_USER_ID") - private String lastModifyUserId; - @TableField("F_DELETE_TIME") - private Date deleteTime; - @TableField("F_DELETE_USER_ID") - private Integer deleteUserId; - @TableField("F_DELETE_MARK") - private String deleteMark; - @TableField("COMPANY_ID") - private String companyId; - @TableField("DEPARTMENT_ID") - private String departmentId; - @TableField("ORGANIZE_JSON_ID") - private String organizeJsonId; - @TableField("F_VERSION") - private Integer version; - @TableField("F_FLOW_ID") - private String flowId; -} diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDeliveryOrder.java b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDeliveryOrder.java new file mode 100644 index 0000000..fda7862 --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDeliveryOrder.java @@ -0,0 +1,131 @@ +package cc.yunxi.domain.po; + +import com.baomidou.mybatisplus.annotation.FieldStrategy; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 回收柜投递订单 + * + * @版本: V3.5 + * @版权: 引迈信息技术有限公司(https://www.jnpfsoft.com) + * @作者: JNPF开发平台组 + * @日期: 2024-05-31 + */ +@Data +@TableName("nx_recycle_delivery_order") +public class RecycleDeliveryOrder { + @TableId(value = "ID") + @ApiModelProperty("主键") + private String id; + @TableField(value = "ORDER_NO") + @ApiModelProperty("订单号") + private String orderNo; + @TableField(value = "DEVICE_ORDER_NO") + @ApiModelProperty("设备订单号") + private String deviceOrderNo; + @TableField(value = "DEVICE_CODE") + @ApiModelProperty("设备编码") + private String deviceCode; + @TableField(value = "BUCKET_CODE") + @ApiModelProperty("桶编号") + private String bucketCode; + @TableField(value = "DOOR_NUM") + @ApiModelProperty("门号") + private Integer doorNum; + @TableField(value = "BAG_NO") + @ApiModelProperty("垃圾袋编号") + private String bagNo; + @TableField(value = "ORIGINAL_WEIGHT") + @ApiModelProperty("桶内原重") + private BigDecimal originalWeight; + @TableField(value = "REPORT_WEIGHT") + @ApiModelProperty("上报重量") + private BigDecimal reportWeight; + @TableField(value = "ADJUST_WEIGHT") + @ApiModelProperty("审核重量") + private BigDecimal adjustWeight; + @TableField(value = "PRODUCT_CODE") + @ApiModelProperty("回收大类") + private String productCode; + @TableField(value = "PRODUCT_SUB_CODE") + @ApiModelProperty("回收子类") + private String productSubCode; + @TableField(value = "PRICE") + @ApiModelProperty("单价") + private BigDecimal price; + @TableField(value = "TOTAL_PRICE") + @ApiModelProperty("总价") + private BigDecimal totalPrice; + @TableField(value = "ADJUST_PRICE") + @ApiModelProperty("审核总价") + private BigDecimal adjustPrice; + @TableField(value = "ADJUST_SET") + @ApiModelProperty("审核设置") + private Integer adjustSet; + @TableField(value = "ADJUST_STATUS") + @ApiModelProperty("审核状态 0:未审核 1:通过 2:调整通过 3:拒绝") + private Integer adjustStatus; + @TableField(value = "ADJUST_COMM") + @ApiModelProperty("审核意见") + private String adjustComm; + @TableField(value = "DELIVER_ID") + @ApiModelProperty("投递员id") + private String deliverId; + @TableField(value = "PHONE") + @ApiModelProperty("投递员手机") + private String phone; + @TableField(value = "CLEAN_STATUS") + @ApiModelProperty("清运状态") + private Integer cleanStatus; + @TableField(value = "CLEAN_NO") + @ApiModelProperty("清运单号") + private String cleanNo; + @TableField(value = "CLEANER_PHONE") + @ApiModelProperty("清运员手机号") + private String cleanerPhone; + @TableField(value = "LOGIN_TYPE") + @ApiModelProperty("登录方式") + private String loginType; + @TableField(value = "PHOTO") + @ApiModelProperty("抓拍") + private String photo; + @TableField("F_FLOW_ID") + private String flowId; + @TableField("F_CREATOR_TIME") + private Date creatorTime; + @TableField("F_CREATOR_USER_ID") + private String creatorUserId; + @TableField("F_LAST_MODIFY_TIME") + private Date lastModifyTime; + @TableField("F_LAST_MODIFY_USER_ID") + private String lastModifyUserId; + @TableField("F_DELETE_TIME") + private Date deleteTime; + @TableField("F_DELETE_USER_ID") + private String deleteUserId; + @TableField("F_DELETE_MARK") + private String deleteMark; + @TableField("F_TENANT_ID") + private String tenantId; + @TableField("COMPANY_ID") + private String companyId; + @TableField("DEPARTMENT_ID") + private String departmentId; + @TableField("ORGANIZE_JSON_ID") + private String organizeJsonId; + @TableField("F_VERSION") + private Integer version; + @TableField(value = "START_TIME" , updateStrategy = FieldStrategy.IGNORED) + private Date startTime; + @TableField(value = "FINISH_TIME" , updateStrategy = FieldStrategy.IGNORED) + private Date finishTime; + @TableField(value = "REPORT_TIME" , updateStrategy = FieldStrategy.IGNORED) + private Date reportTime; +} diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDeliveryOrderEntity.java b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDeliveryOrderEntity.java deleted file mode 100644 index ec53108..0000000 --- a/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDeliveryOrderEntity.java +++ /dev/null @@ -1,99 +0,0 @@ -package cc.yunxi.domain.po; - -import com.baomidou.mybatisplus.annotation.FieldStrategy; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * 回收柜投递订单 - * - * @版本: V3.5 - * @版权: 引迈信息技术有限公司(https://www.jnpfsoft.com) - * @作者: JNPF开发平台组 - * @日期: 2024-05-31 - */ -@Data -@TableName("nx_recycle_delivery_order") -public class RecycleDeliveryOrderEntity { - @TableId(value ="ID" ) - private String id; - @TableField(value = "ORDER_NO" , updateStrategy = FieldStrategy.IGNORED) - private String orderNo; - @TableField(value = "DEVICE_ORDER_NO" , updateStrategy = FieldStrategy.IGNORED) - private Integer deviceOrderNo; - @TableField(value = "DEVICE_CODE" , updateStrategy = FieldStrategy.IGNORED) - private String deviceCode; - @TableField(value = "BUCKET_CODE" , updateStrategy = FieldStrategy.IGNORED) - private String bucketCode; - @TableField(value = "DOOR_NUM" , updateStrategy = FieldStrategy.IGNORED) - private Integer doorNum; - @TableField(value = "BAG_NO" , updateStrategy = FieldStrategy.IGNORED) - private Integer bagNo; - @TableField(value = "ORIGINAL_WEIGHT" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal originalWeight; - @TableField(value = "REPORT_WEIGHT" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal reportWeight; - @TableField(value = "ADJUST_WEIGHT" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal adjustWeight; - @TableField(value = "PRODUCT_CODE" , updateStrategy = FieldStrategy.IGNORED) - private String productCode; - @TableField(value = "PRODUCT_SUB_CODE" , updateStrategy = FieldStrategy.IGNORED) - private String productSubCode; - @TableField(value = "PRICE" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal price; - @TableField(value = "TOTAL_PRICE" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal totalPrice; - @TableField(value = "ADJUST_PRICE" , updateStrategy = FieldStrategy.IGNORED) - private BigDecimal adjustPrice; - @TableField(value = "ADJUST_SET" , updateStrategy = FieldStrategy.IGNORED) - private Integer adjustSet; - @TableField(value = "ADJUST_STATUS" , updateStrategy = FieldStrategy.IGNORED) - private Integer adjustStatus; - @TableField(value = "ADJUST_COMM" , updateStrategy = FieldStrategy.IGNORED) - private String adjustComm; - @TableField(value = "DELIVER_ID" , updateStrategy = FieldStrategy.IGNORED) - private String deliverId; - @TableField(value = "PHONE" , updateStrategy = FieldStrategy.IGNORED) - private String phone; - @TableField(value = "CLEAN_STATUS" , updateStrategy = FieldStrategy.IGNORED) - private Integer cleanStatus; - @TableField(value = "CLEAN_NO" , updateStrategy = FieldStrategy.IGNORED) - private String cleanNo; - @TableField(value = "CLEANER_PHONE" , updateStrategy = FieldStrategy.IGNORED) - private String cleanerPhone; - @TableField(value = "LOGIN_TYPE" , updateStrategy = FieldStrategy.IGNORED) - private Integer loginType; - @TableField(value = "PHOTO" , updateStrategy = FieldStrategy.IGNORED) - private String photo; - @TableField("F_FLOW_ID") - private String flowId; - @TableField("F_CREATOR_TIME") - private Date creatorTime; - @TableField("F_CREATOR_USER_ID") - private String creatorUserId; - @TableField("F_LAST_MODIFY_TIME") - private Date lastModifyTime; - @TableField("F_LAST_MODIFY_USER_ID") - private String lastModifyUserId; - @TableField("F_DELETE_TIME") - private Date deleteTime; - @TableField("F_DELETE_USER_ID") - private String deleteUserId; - @TableField("F_DELETE_MARK") - private String deleteMark; - @TableField("F_TENANT_ID") - private String tenantId; - @TableField("COMPANY_ID") - private String companyId; - @TableField("DEPARTMENT_ID") - private String departmentId; - @TableField("ORGANIZE_JSON_ID") - private String organizeJsonId; - @TableField("F_VERSION") - private Integer version; -} diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDeviceEvent.java b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDeviceEvent.java new file mode 100644 index 0000000..8956807 --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/domain/po/RecycleDeviceEvent.java @@ -0,0 +1,71 @@ +package cc.yunxi.domain.po; + +import com.baomidou.mybatisplus.annotation.*; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + + +@Data +@ApiModel("回收设备事件表") +@TableName("nx_recycle_device_event") +public class RecycleDeviceEvent { + @TableId(value = "ID",type = IdType.ASSIGN_ID) + private String id; + @TableField(value = "DEVICE_CODE") + @ApiModelProperty("设备编码") + private String deviceCode; + @TableField(value = "BUCKET_CODE") + @ApiModelProperty("桶编码") + private String bucketCode; + @TableField(value = "DOOR_NUM") + @ApiModelProperty("门号") + private Integer doorNum; + @TableField(value = "EVENT_TYPE") + @ApiModelProperty("事件类型") + private String eventType; + @TableField(value = "EVENT_TIME") + @ApiModelProperty("事件时间") + private Date eventTime; + @TableField(value = "EVENT_DESC") + @ApiModelProperty("事件描述") + private String eventDesc; + @TableField(value = "EVENT_RESULT") + @ApiModelProperty("执行结果") + private String eventResult; + @TableField(value = "IS_LOCAL") + @ApiModelProperty("本地调用 0-否 1-是") + private String isLocal; + @TableField("orderNo") + @ApiModelProperty("订单号") + private String orderNo; + @TableField("orderType") + @ApiModelProperty("订单类型") + private String orderType; + @TableField("phone") + @ApiModelProperty("用户手机号") + private String phone; + @TableField("IMAGES") + @ApiModelProperty("抓拍") + private String images; + @TableField("F_CREATE_USER_ID") + private String createUserId; + @TableField("F_CREATE_TIME") + private Date createTime; + @TableField("F_LAST_MODIFY_USER_ID") + private String lastModifyUserId; + @TableField("F_LAST_MODIFY_TIME") + private Date lastModifyTime; + @TableField("F_TENANT_ID") + private String tenantId; + @TableField("COMPANY_ID") + private String companyId; + @TableField("DEPARTMENT_ID") + private String departmentId; + @TableField("ORGANIZE_JSON_ID") + private String organizeJsonId; + @TableField("F_FLOW_ID") + private String flowId; +} diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CMDEnum.java b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CMDEnum.java new file mode 100644 index 0000000..0800a36 --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CMDEnum.java @@ -0,0 +1,29 @@ +package cc.yunxi.domain.vo.device; + +import cc.yunxi.common.enums.SwaggerDisplayEnum; +import com.baomidou.mybatisplus.annotation.EnumValue; +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +@SwaggerDisplayEnum +public enum CMDEnum { + + reboot("reboot", "重启设备"), + restart("restart", "重启应用"), + update("update", "更新应用"), + deliveryOpen("deliveryOpen", "投递开门"), + deliveryClose("deliveryClose", "投递关门"), + delay("delay", "投递延时"), + cleanOpen("cleanOpen", "清运开门"), + snapshot("snapshot", "抓拍"), + adjust("adjust", "远程校准"), + clear("clear", "远程清零"), + status("status", "获取状态"); + + @EnumValue + private final String value; + + private final String desc; +} 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 2e85d9b..2890c16 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 @@ -1,26 +1,50 @@ package cc.yunxi.domain.vo.device; import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.math.BigDecimal; +import java.util.List; + @Data @ApiModel("清运单") public class CleanOrderVO { - private String id; - private String orderNo; - private String orderType; - private String orderStatus; - private String orderTime; - private String orderAddress; - private String orderDesc; - private String orderUser; - private String orderUserPhone; - private String orderUserAddress; - private String orderUserAddressDetail; - private String orderUserAddressLongitude; - private String orderUserAddressLatitude; - private String orderUserAddressArea; - private String orderUserAddressAreaCode; - private String orderUserAddressCity; + @ApiModelProperty("设备订单号") + private String deviceOrderNo; + @ApiModelProperty("设备编号") + private String deviceCode; + @ApiModelProperty("桶编号") + private String bucketCode; + @ApiModelProperty("门号") + private String doorNum; + @ApiModelProperty("回收大类") + private String productCode; + @ApiModelProperty("回收子类") + private String productSubCode; + @ApiModelProperty("单价") + private BigDecimal price; + @ApiModelProperty("本单重量") + private BigDecimal totalWeight; + @ApiModelProperty("总价") + private BigDecimal totalPrice; + @ApiModelProperty("开始时间") + private String startTime; + @ApiModelProperty("完成时间") + private String finishTime; + @ApiModelProperty("投递员id") + private String userId; + @ApiModelProperty("垃圾袋编号") + private String bagNo; + @ApiModelProperty("手机号") + private String phone; + @ApiModelProperty("登录方式") + private String loginType; + @ApiModelProperty("上报类型") + private String reportType; + @ApiModelProperty("上报时间") + private String reportTime; + @ApiModelProperty("抓拍") + private List images; } diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CommandVO.java b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CommandVO.java index d747f2b..173038f 100644 --- a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CommandVO.java +++ b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/CommandVO.java @@ -11,15 +11,17 @@ import java.time.LocalDateTime; @Data @ApiModel("设备控制命令") public class CommandVO { + @ApiModelProperty(value = "设备编码", required = true, example = "DE00011") + @NotBlank(message = "设备编码不能为空") + private String deviceCode; @ApiModelProperty(value = "命令", required = true, example = "reboot") - @NotBlank(message = "命令不能为空") - private String cmd; - @ApiModelProperty(value = "命令参数", required = true, example = "设备编码") - @NotBlank(message = "命令参数不能为空") + @NotNull(message = "命令不能为空") + private CMDEnum cmd; + @ApiModelProperty(value = "命令参数") private String data; @ApiModelProperty(value = "操作时间", required = true, example = "admin") @NotNull(message = "操作时间不能为空") - private LocalDateTime optTime; + private String optTime; @ApiModelProperty(value = "备注", example = "重启设备") private String remark; 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 6431a24..738a2dc 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 @@ -11,22 +11,24 @@ import java.util.List; @Data @ApiModel("投递单") public class DeliveryOrderVO { - @ApiModelProperty("订单号") - private String orderNum; + @ApiModelProperty("设备订单号") + private String deviceOrderNo; @ApiModelProperty("设备编码") private String deviceCode; @ApiModelProperty("桶编码") private String bucketCode; @ApiModelProperty("门号") - private String doorNum; + private Integer doorNum; @ApiModelProperty("回收大类") - private String code; + private String productCode; @ApiModelProperty("回收子类") - private String subCode; + private String productSubCode; @ApiModelProperty("回收单价") private BigDecimal price; @ApiModelProperty("重量") private BigDecimal weight; + @ApiModelProperty("桶内原重") + private BigDecimal originalWeight; @ApiModelProperty("总价") private BigDecimal totalPrice; @ApiModelProperty("开始时间") @@ -37,10 +39,12 @@ public class DeliveryOrderVO { private String userId; @ApiModelProperty("用户手机") private String phone; - @ApiModelProperty("上报类型") - private String reportType; + @ApiModelProperty("登录方式") + private String loginType; @ApiModelProperty("上报时间") private LocalDateTime reportTime; @ApiModelProperty("抓拍图片") private List images; + @ApiModelProperty("垃圾袋编号") + private String bagNo; } diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeviceEventVO.java b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeviceEventVO.java index 6c1f92e..a182be0 100644 --- a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeviceEventVO.java +++ b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/DeviceEventVO.java @@ -4,30 +4,36 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; + @Data @ApiModel("设备事件") public class DeviceEventVO { - @ApiModelProperty("设备编码") + @ApiModelProperty(value = "设备编码", required = true, example = "DE123") + @NotBlank(message = "设备编码不能为空") private String deviceCode; @ApiModelProperty("桶编码") private String bucketCode; @ApiModelProperty("门号") - private String doorNum; + private Integer doorNum; + @NotBlank(message = "事件类型不能为空") @ApiModelProperty("事件类型") private String eventType; + @NotBlank(message = "事件时间不能为空") @ApiModelProperty("事件时间") private String eventTime; @ApiModelProperty("事件描述") private String eventDesc; @ApiModelProperty("订单号") - private String orderNo; + private String orderNum; @ApiModelProperty("订单类型") private String orderType; @ApiModelProperty("用户ID") private String userId; @ApiModelProperty("用户手机号") private String phone; - @ApiModelProperty("是否本地") + @NotBlank(message = "是否本地不能为空") + @ApiModelProperty(value = "是否本地", required = true, allowableValues = "0,1", example = "0") private String isLocal; } diff --git a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/Snap.java b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/Snap.java index 2b00a88..32bfe24 100644 --- a/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/Snap.java +++ b/nxhs-service/src/main/java/cc/yunxi/domain/vo/device/Snap.java @@ -13,6 +13,9 @@ public class Snap { private String inside; @ApiModelProperty("抓拍时间") private String takeTime; + + @ApiModelProperty(value = "文件名",required = true,example = "123.jpg") + private String fileName; @ApiModelProperty("图片") - private byte[] image; + private String image; } diff --git a/nxhs-service/src/main/java/cc/yunxi/mapper/RecycleCleanOrderMapper.java b/nxhs-service/src/main/java/cc/yunxi/mapper/RecycleCleanOrderMapper.java new file mode 100644 index 0000000..1cca84b --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/mapper/RecycleCleanOrderMapper.java @@ -0,0 +1,11 @@ +package cc.yunxi.mapper; + +import cc.yunxi.domain.po.RecycleCleanOrder; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface RecycleCleanOrderMapper extends BaseMapper { + + // TODO 此处编写RecycleDevice的mapper.xml文件中需要的方法 +} diff --git a/nxhs-service/src/main/java/cc/yunxi/mapper/RecycleDeliveryOrderMapper.java b/nxhs-service/src/main/java/cc/yunxi/mapper/RecycleDeliveryOrderMapper.java new file mode 100644 index 0000000..a7cdb44 --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/mapper/RecycleDeliveryOrderMapper.java @@ -0,0 +1,11 @@ +package cc.yunxi.mapper; + +import cc.yunxi.domain.po.RecycleDeliveryOrder; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface RecycleDeliveryOrderMapper extends BaseMapper { + + // TODO 此处编写RecycleDevice的mapper.xml文件中需要的方法 +} diff --git a/nxhs-service/src/main/java/cc/yunxi/mapper/RecycleDeviceEventMapper.java b/nxhs-service/src/main/java/cc/yunxi/mapper/RecycleDeviceEventMapper.java new file mode 100644 index 0000000..764bd93 --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/mapper/RecycleDeviceEventMapper.java @@ -0,0 +1,11 @@ +package cc.yunxi.mapper; + +import cc.yunxi.domain.po.RecycleDeviceEvent; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface RecycleDeviceEventMapper extends BaseMapper { + + // TODO 此处编写RecycleDevice的mapper.xml文件中需要的方法 +} diff --git a/nxhs-service/src/main/java/cc/yunxi/service/IRecycleCleanOrderService.java b/nxhs-service/src/main/java/cc/yunxi/service/IRecycleCleanOrderService.java new file mode 100644 index 0000000..7f64570 --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/service/IRecycleCleanOrderService.java @@ -0,0 +1,8 @@ +package cc.yunxi.service; + +import cc.yunxi.domain.po.RecycleCleanOrder; +import cc.yunxi.domain.po.RecycleDeviceEvent; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface IRecycleCleanOrderService extends IService { +} diff --git a/nxhs-service/src/main/java/cc/yunxi/service/IRecycleDeliveryOrderService.java b/nxhs-service/src/main/java/cc/yunxi/service/IRecycleDeliveryOrderService.java new file mode 100644 index 0000000..7e221cd --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/service/IRecycleDeliveryOrderService.java @@ -0,0 +1,8 @@ +package cc.yunxi.service; + +import cc.yunxi.domain.po.RecycleDeliveryOrder; +import cc.yunxi.domain.po.RecycleDeviceEvent; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface IRecycleDeliveryOrderService extends IService { +} diff --git a/nxhs-service/src/main/java/cc/yunxi/service/IRecycleDeviceEventService.java b/nxhs-service/src/main/java/cc/yunxi/service/IRecycleDeviceEventService.java new file mode 100644 index 0000000..2a149ab --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/service/IRecycleDeviceEventService.java @@ -0,0 +1,7 @@ +package cc.yunxi.service; + +import cc.yunxi.domain.po.RecycleDeviceEvent; +import com.baomidou.mybatisplus.extension.service.IService; + +public interface IRecycleDeviceEventService extends IService { +} diff --git a/nxhs-service/src/main/java/cc/yunxi/service/impl/FileServiceImpl.java b/nxhs-service/src/main/java/cc/yunxi/service/impl/FileServiceImpl.java index 7377a1f..c994ad2 100644 --- a/nxhs-service/src/main/java/cc/yunxi/service/impl/FileServiceImpl.java +++ b/nxhs-service/src/main/java/cc/yunxi/service/impl/FileServiceImpl.java @@ -97,7 +97,11 @@ public class FileServiceImpl extends ServiceImpl implements IF @Override public byte[] download(String url) { // 默认为本地存储拉取 todo - String filePath = basePath + java.io.File.separator + url; + String filePath = System.getProperty("user.dir")+ url; + String osName = System.getProperty("os.name").toLowerCase(); + if(osName.contains("win")){ + filePath = filePath.replace("/","\\"); + } if (!FileUtil.exist(filePath)) { throw new BizIllegalException("下载资源不存在"); } diff --git a/nxhs-service/src/main/java/cc/yunxi/service/impl/RecycleCleanOrderServiceImpl.java b/nxhs-service/src/main/java/cc/yunxi/service/impl/RecycleCleanOrderServiceImpl.java new file mode 100644 index 0000000..ad394ca --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/service/impl/RecycleCleanOrderServiceImpl.java @@ -0,0 +1,11 @@ +package cc.yunxi.service.impl; + +import cc.yunxi.domain.po.RecycleCleanOrder; +import cc.yunxi.mapper.RecycleCleanOrderMapper; +import cc.yunxi.service.IRecycleCleanOrderService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +@Service +public class RecycleCleanOrderServiceImpl extends ServiceImpl implements IRecycleCleanOrderService { +} diff --git a/nxhs-service/src/main/java/cc/yunxi/service/impl/RecycleDeliveryOrderServiceImpl.java b/nxhs-service/src/main/java/cc/yunxi/service/impl/RecycleDeliveryOrderServiceImpl.java new file mode 100644 index 0000000..78b3616 --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/service/impl/RecycleDeliveryOrderServiceImpl.java @@ -0,0 +1,11 @@ +package cc.yunxi.service.impl; + +import cc.yunxi.domain.po.RecycleDeliveryOrder; +import cc.yunxi.mapper.RecycleDeliveryOrderMapper; +import cc.yunxi.service.IRecycleDeliveryOrderService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +@Service +public class RecycleDeliveryOrderServiceImpl extends ServiceImpl implements IRecycleDeliveryOrderService { +} diff --git a/nxhs-service/src/main/java/cc/yunxi/service/impl/RecycleDeviceEventServiceImpl.java b/nxhs-service/src/main/java/cc/yunxi/service/impl/RecycleDeviceEventServiceImpl.java new file mode 100644 index 0000000..2ca888b --- /dev/null +++ b/nxhs-service/src/main/java/cc/yunxi/service/impl/RecycleDeviceEventServiceImpl.java @@ -0,0 +1,12 @@ +package cc.yunxi.service.impl; + +import cc.yunxi.domain.po.RecycleDeviceEvent; +import cc.yunxi.mapper.RecycleDeviceEventMapper; +import cc.yunxi.service.IRecycleDeviceEventService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +@Service +public class RecycleDeviceEventServiceImpl extends ServiceImpl implements IRecycleDeviceEventService { + +} diff --git a/nxhs-service/src/main/resources/mapper/RecycleCleanOrderMapper.xml b/nxhs-service/src/main/resources/mapper/RecycleCleanOrderMapper.xml new file mode 100644 index 0000000..e8f151a --- /dev/null +++ b/nxhs-service/src/main/resources/mapper/RecycleCleanOrderMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nxhs-service/src/main/resources/mapper/RecycleDeliveryOrderMapper.xml b/nxhs-service/src/main/resources/mapper/RecycleDeliveryOrderMapper.xml new file mode 100644 index 0000000..29aac71 --- /dev/null +++ b/nxhs-service/src/main/resources/mapper/RecycleDeliveryOrderMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/nxhs-service/src/main/resources/mapper/RecycleDeviceEventMapper.xml b/nxhs-service/src/main/resources/mapper/RecycleDeviceEventMapper.xml new file mode 100644 index 0000000..841ce5f --- /dev/null +++ b/nxhs-service/src/main/resources/mapper/RecycleDeviceEventMapper.xml @@ -0,0 +1,6 @@ + + + + + +