Commit 2b0d791c authored by Allen Chen's avatar Allen Chen

commit

parent f9f6fa73
......@@ -7,6 +7,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
......@@ -20,6 +21,7 @@ import org.ta.pddserver.model.enums.OrderRejectCode;
import org.ta.pddserver.model.enums.StatusEnum;
import org.ta.pddserver.model.pddjy.request.*;
import org.ta.pddserver.model.pddjy.response.PddServiceConsoDerelictionResponse;
import org.ta.pddserver.service.StorageService;
import org.ta.pddserver.service.impl.*;
import org.ta.pddserver.serviceutil.WaybillOperator;
import org.ta.pddserver.utils.*;
......@@ -69,6 +71,16 @@ public class PddLocalController {
@Resource
WaybillOperator waybillOperator;
@Autowired
private LogOrderItemImpl logOrderItemImpl;
@Autowired
private CollectOrderDetailImpl collectOrderDetailImpl;
@Autowired
private AreaImpl areaImpl;
@Autowired
private StorageImpl storageImpl;
@Autowired
private OutboundNoticeImpl outboundNoticeImpl;
/*集运单列表*/
@Operation(
......@@ -81,6 +93,18 @@ public class PddLocalController {
return JsonResponse.generateLocalCommonSuccessResponse(logOrderImpl.getListByRequest(logOrderListRequest));
}
@PostMapping("/logOrderInfo")
public Map<String, Object> logOrderInfo(HttpServletRequest request, @RequestBody LogOrderListRequest logOrderListRequest) {
Map<String, Object> map = new HashMap<>();
LogOrderInfoResponse logOrderInfoResponse = logOrderImpl.getLogOrderInfo(logOrderListRequest.getLogisticsOrderCode());
List<LogOrderMailDetailEntity> logOrderMailDetailList = logOrderMailDetailImpl.getListByCode(logOrderListRequest.getLogisticsOrderCode());
List<LogOrderItemResponse> logOrderItemList = logOrderItemImpl.getListByLogisticsOrderCode(logOrderListRequest.getLogisticsOrderCode());
map.put("info", logOrderInfoResponse);
map.put("detailList", logOrderMailDetailList);
map.put("itemList", logOrderItemList);
return JsonResponse.generateLocalCommonSuccessResponse(map);
}
/*包裹列表*/
@Operation(
summary = "签收、入库列表",
......@@ -166,6 +190,27 @@ public class PddLocalController {
return JsonResponse.generateLocalCommonSuccessResponse(collectOrderImpl.getList(collectOrderListRequest));
}
/*出库详情*/
@Operation(
summary = "出库详情",
description = "",
deprecated = false // 是否废弃
)
@PostMapping("/collectOrderInfo")
public Map<String, Object> collectOrderInfo(HttpServletRequest request, @RequestBody CollectOrderListRequest collectOrderListRequest) {
CollectOrderInfoResponse collectOrderResponse = collectOrderImpl.getInfoByOrderCode(collectOrderListRequest.getOrderCode());
List<CollectMailDetailEntity> mailDetailList = collectMailDetailImpl.getListByOrderCode(collectOrderListRequest.getOrderCode());
List<CollectOrderDetailResponse> orderDetailList = collectOrderDetailImpl.getListByOrderCode(collectOrderListRequest.getOrderCode());
CollectReceiverDetailEntity collectReceiver = collectReceiverDetailImpl.getInfoByOrderCode(collectOrderListRequest.getOrderCode());
Map<String, Object> map = new HashMap<>();
map.put("info", collectOrderResponse);
map.put("mail", mailDetailList);
map.put("detail", orderDetailList);
map.put("receiver", collectReceiver);
return JsonResponse.generateLocalCommonSuccessResponse(map);
}
// /*拆包列表*/
// @Operation(
// summary = "分页查询拆包列表",
......@@ -236,10 +281,12 @@ public class PddLocalController {
}
List<CollectMailDetailEntity> list = collectMailDetailImpl.getListByOrderCode(collectMailDetail.getOrderCode());
CollectOrderResponse collectOrderResponse = collectOrderImpl.getByOrderCode(collectMailDetail.getOrderCode());
CollectReceiverDetailEntity collectReceiver = collectReceiverDetailImpl.getInfoByOrderCode(collectMailDetail.getOrderCode());
map.put("collectMailDetail", collectMailDetail);
map.put("list", list);
map.put("collectOrder", collectOrderResponse);
map.put("collectReceiver", collectReceiver);
// CollectOutMailDetailEntity collectOutMailDetail = collectOutMailDetailImpl.getInfoByMailNo(mailNoRequest.getMailNo());
// List<CollectOutMailDetailResponse> list = collectOutMailDetailImpl.getListByOrderCode(collectOutMailDetail.getOrderCode());
......@@ -262,6 +309,8 @@ public class PddLocalController {
public JSONObject receive(HttpServletRequest request, @RequestBody ReceiveRequest receiveRequest) {
LogOrderMailDetailEntity mailNoResponse = logOrderMailDetailImpl.getAllInfoByMailNo(receiveRequest.getMailNo());
boolean key = false;
String action = receiveRequest.getAction();
PddServiceConsoFirstBizActionNotifyRequest notifyRequest = new PddServiceConsoFirstBizActionNotifyRequest();
......@@ -280,6 +329,75 @@ public class PddLocalController {
notifyRequest.setBizActionDesc("仓库签收");
notifyResult.setCode(0);
logOrderMailDetailIoEntity.setStatus(StatusEnum.SIGNED.getCode());
//根据logisticsOrderCode 判断是否已存放
StorageEntity storageEntity = storageImpl.getInfoByLogisticsOrderCode(mailNoResponse.getLogisticsOrderCode());
if(storageEntity == null){
//计算存储位置
List<AreaEntity> list = areaImpl.getList();
for(AreaEntity lists : list){
// 根据code 计算占用
//获取所有入库数量
int num = storageImpl.findAllCount();
//获取所有应入库但未入库数量
Integer reNum = storageImpl.findReNumCount();
reNum = (reNum == null) ? 0 : reNum;
// 区域总可用数量
int blank = lists.getTotal() - lists.getReserved();
// 实际可使用数量
int actual = blank - reNum - num;
//需要数量
int need = logOrderMailDetailImpl.findCountByLogisticsOrderCode(mailNoResponse.getLogisticsOrderCode());
if(actual >= need){
//区域可用
storageEntity = new StorageEntity();
storageEntity.setLogisticsOrderCode(mailNoResponse.getLogisticsOrderCode());
storageEntity.setCode(lists.getCode());
storageEntity.setMailNo(receiveRequest.getMailNo());
storageEntity.setNum(1);
storageEntity.setTotal(need);
storageImpl.save(storageEntity);
key = true;
break;
}
}
if(!key){
//没有匹配到合适区域
return JsonResponse.generateLocalCommonFailedResponse("-1", "暂无可用区域");
}
}else {
StorageEntity storage = storageImpl.getInfoByMailNo(receiveRequest.getMailNo());
if(storage == null){
StorageEntity storageNew = new StorageEntity();
storageNew.setLogisticsOrderCode(storageEntity.getLogisticsOrderCode());
storageNew.setCode(storageEntity.getCode());
storageNew.setMailNo(receiveRequest.getMailNo());
storageNew.setNum(storageEntity.getNum());
storageNew.setTotal(storageEntity.getTotal());
storageImpl.save(storageNew);
//获取已签收
//已签收 + 1
storageImpl.updateNumByLogisticsOrderCode(mailNoResponse.getLogisticsOrderCode());
}else {
return JsonResponse.generateLocalCommonFailedResponse("-1", "请勿重复签收");
}
}
} else if (action.equals("warehouse_reject_sign")) {
notifyRequest.setBizActionDesc("仓库拒签");
notifyResult.setCode(receiveRequest.getCode());
......@@ -1274,10 +1392,117 @@ public class PddLocalController {
}
// /*流水查询*/
// @PostMapping("/logOrderMailDetailIoSelect")
// public JSONObject logOrderMailDetailIoSelect(HttpServletRequest request, @RequestBody LogOrderMailDetailIoRequest param) {
// return JsonResponse.generateLocalCommonSuccessResponse(logOrderMailDetailIoImpl.getListByRequest(param));
// }
/*区域列表*/
@PostMapping("/areaList")
public JSONObject areaList(HttpServletRequest request, @RequestBody AreaListRequest areaListRequest) {
return JsonResponse.generateLocalCommonSuccessResponse(areaImpl.areaList(areaListRequest));
}
/*区域新增*/
@PostMapping("/areaAdd")
public JSONObject areaAdd(HttpServletRequest request, @RequestBody AreaEntity areaEntity) {
return areaImpl.areaAdd(areaEntity);
}
/*区域修改*/
@PostMapping("/areaEdit")
public JSONObject areaEdit(HttpServletRequest request, @RequestBody AreaEntity areaEntity) {
return areaImpl.areaEdit(areaEntity);
}
/*区域删除*/
@PostMapping("/areaDele")
public JSONObject areaDele(HttpServletRequest request, @RequestBody AreaEntity areaEntity) {
return areaImpl.areaDele(areaEntity);
}
/*通过运单号查询存放区域*/
@PostMapping("/storageSelect")
public JSONObject storageSelect(HttpServletRequest request, @RequestBody StorageRequest storageRequest) {
return JsonResponse.generateLocalCommonSuccessResponse(storageImpl.storageSelect(storageRequest.getMailNo()));
}
/*确认上架*/
@PostMapping("/storageAdd")
public JSONObject storageAdd(HttpServletRequest request, @RequestBody StorageRequest storageRequest) {
StorageEntity storageEntity = storageImpl.getInfoByMailNo(storageRequest.getMailNo());
if(storageEntity == null) {
return JsonResponse.generateLocalCommonFailedResponse("-1", "未查询到商品区域信息");
}
if(storageEntity.getPlace() != null){
return JsonResponse.generateLocalCommonFailedResponse("-1", "请勿重复上架");
}
storageEntity.setPlace(storageRequest.getPlace());
storageImpl.updateById(storageEntity);
return JsonResponse.generateLocalCommonSuccessResponse(true);
}
/*待拆包列表*/
@PostMapping("/unpackNoticeList")
public JSONObject unpackNoticeList(HttpServletRequest request, @RequestBody UnpackNoticeListRequest unpackNoticeListRequest) {
return JsonResponse.generateLocalCommonSuccessResponse(unpackNoticeImpl.getListByRequest(unpackNoticeListRequest));
}
/*详情列表*/
@PostMapping("/storageList")
public JSONObject storageList(HttpServletRequest request, @RequestBody StorageListRequest storageListRequest) {
List<StorageListResponse> list = storageImpl.storageList(storageListRequest.getLogisticsOrderCode());
return JsonResponse.generateLocalCommonSuccessResponse(list);
}
/*待出库列表*/
@PostMapping("/outboundNoticeList")
public JSONObject outboundNoticeList(HttpServletRequest request, @RequestBody OutboundNoticeListRequest outboundNoticeListRequest) {
return JsonResponse.generateLocalCommonSuccessResponse(outboundNoticeImpl.getListByRequest(outboundNoticeListRequest));
}
/*拣货下架*/
@PostMapping("/storageDel")
public JSONObject storageDel(HttpServletRequest request, @RequestBody StorageDelRequest storageDelRequest) {
List<StorageListResponse> list = storageImpl.storageList(storageDelRequest.getLogisticsOrderCode());
List<String> toMailList = new ArrayList<>();
List<StorageListResponse> toRemoveList = new ArrayList<>();
if(list.size() != storageDelRequest.getMailNo().size()){
return JsonResponse.generateLocalCommonFailedResponse("-1", "下架包裹数量异常");
}
String ids = "(";
for (StorageListResponse lists : list) {
for (String mailNoLists : storageDelRequest.getMailNo()) {
if (lists.getMailNo().equals(mailNoLists)) {
toRemoveList.add(lists);
toMailList.add(mailNoLists);
ids += mailNoLists + ",";
}
}
}
ids = ids.substring(0, ids.length() - 1);
ids += ")";
list.removeAll(toRemoveList);
storageDelRequest.getMailNo().removeAll(toMailList);
if(list.size() != 0 || storageDelRequest.getMailNo().size() != 0){
return JsonResponse.generateLocalCommonFailedResponse("-1", "下架包裹信息异常");
}
//删除位置
storageImpl.storageDel(ids);
//根据type 区分修改状态
if(("pick").equals(storageDelRequest.getType())){
// 出库拣货下架
outboundNoticeImpl.updateStatusByOrderCode(storageDelRequest.getLogisticsOrderCode(), StatusEnum.PICKDOWN.getCode());
} else {
// 拆包下架
unpackNoticeImpl.updateStatusByOrderCode(storageDelRequest.getLogisticsOrderCode(), StatusEnum.UNPACKFINISHPICK.getCode());
}
return JsonResponse.generateLocalCommonSuccessResponse(true);
}
}
package org.ta.pddserver.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@TableName("area")
@Data
public class AreaEntity {
@TableId(value = "uid")
private String uid;
@TableField(value = "created")
private String created;
@TableField(value = "updated")
private String updated;
@TableField(value = "state")
private Integer state;
@TableField(value = "remarks")
private String remarks;
@TableField(value = "status")
private Integer status;
@TableField(value = "code")
private String code;
@TableField(value = "reserved")
private int reserved;
@TableField(value = "second")
private int second;
@TableField(value = "third")
private int third;
@TableField(value = "fourth")
private int fourth;
@TableField(value = "total")
private int total;
}
package org.ta.pddserver.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@TableName("storage")
@Data
public class StorageEntity {
@TableId(value = "uid")
private String uid;
@TableField(value = "logisticsOrderCode")
private String logisticsOrderCode;
@TableField(value = "mailNo")
private String mailNo;
@TableField(value = "code")
private String code;
@TableField(value = "place")
private String place;
@TableField(value = "created")
private String created;
@TableField(value = "num")
private int num;
@TableField(value = "total")
private int total;
}
package org.ta.pddserver.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.ta.pddserver.entity.AreaEntity;
import org.ta.pddserver.entity.CollectOrderEntity;
import org.ta.pddserver.model.api.request.AreaListRequest;
import org.ta.pddserver.model.api.request.CollectOrderListRequest;
import org.ta.pddserver.model.api.request.LogOrderListRequest;
import org.ta.pddserver.model.api.response.CollectOrderInfoResponse;
import org.ta.pddserver.model.api.response.CollectOrderListResponse;
import org.ta.pddserver.model.api.response.CollectOrderResponse;
import org.ta.pddserver.model.api.response.LogOrderListResponse;
import java.util.List;
@Mapper
public interface AreaMapper extends BaseMapper<AreaEntity> {
@Select("SELECT count(`uid`) FROM `area` WHERE `state` > 0")
Integer countUsable(AreaListRequest param);
@Select("SELECT * FROM `area` WHERE `state` > 0 ORDER BY uid DESC LIMIT #{offset}, #{size}; ")
List<AreaEntity> getListByRequest(AreaListRequest param);
@Select("SELECT * FROM `area` WHERE `state` > 0 AND `code` = #{code};")
AreaEntity getInfoByCode(@Param("code") String code);
@Select("SELECT * FROM `area` WHERE `state` > 0 AND `uid` = #{uid}")
AreaEntity getInfoByUid(@Param("uid") String uid);
@Select("SELECT * FROM `area` WHERE `state` > 0 ORDER BY `uid` ASC")
List<AreaEntity> getList();
}
......@@ -2,9 +2,16 @@ package org.ta.pddserver.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.ta.pddserver.entity.LogOrderItemEntity;
import org.ta.pddserver.model.api.response.LogOrderItemResponse;
import java.util.List;
@Mapper
public interface LogOrderItemMapper extends BaseMapper<LogOrderItemEntity> {
@Select("SELECT `itemName`, `categoryName`, `totalActualPayment`,`currencyUnit`, `currency`, `itemQuantity`, `itemPicUrl`,`itemSkuProperty`,`chargedStatus`,`goodsType`,`magneticStatus` FROM `log_order_item` WHERE `logisticsOrderCode` = #{logisticsOrderCode}")
List<LogOrderItemResponse> getListByLogisticsOrderCode(@Param("logisticsOrderCode") String logisticsOrderCode);
}
......@@ -46,4 +46,7 @@ public interface LogOrderMailDetailMapper extends BaseMapper<LogOrderMailDetailE
@Select("SELECT COUNT(*) FROM `log_order_mail_detail` WHERE `logisticsOrderCode` = #{logisticsOrderCode} AND `status` = ${status} ORDER BY `uid` DESC LIMIT 1;")
Long getSumByCodeStatus(@Param("logisticsOrderCode") String logisticsOrderCode, @Param("status") Long status);
@Select("SELECT COUNT(*) FROM `log_order_mail_detail` WHERE `logisticsOrderCode` = #{logisticsOrderCode}")
int findCountByLogisticsOrderCode(@Param("logisticsOrderCode") String logisticsOrderCode);
}
......@@ -7,6 +7,7 @@ import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.ta.pddserver.entity.LogOrderEntity;
import org.ta.pddserver.model.api.request.LogOrderListRequest;
import org.ta.pddserver.model.api.response.LogOrderInfoResponse;
import org.ta.pddserver.model.api.response.LogOrderListResponse;
import java.util.List;
......@@ -34,4 +35,7 @@ public interface LogOrderMapper extends BaseMapper<LogOrderEntity> {
@Update("UPDATE `log_order` SET `status` = ${status} WHERE `logisticsOrderCode` = #{logisticsOrderCode}")
void updateStatusByOrderCode(@Param("logisticsOrderCode") String logisticsOrderCode, @Param("status") int status);
@Select("SELECT `logisticsOrderCode`,`bizType`, `consoType`, `dereRecogCode`, `num`, `packageQuantity`, `updated`, `status`, `buyerCode` FROM `log_order` WHERE `logisticsOrderCode` = #{logisticsOrderCode} ")
LogOrderInfoResponse getLogOrderInfo(@Param("logisticsOrderCode") String logisticsOrderCode);
}
......@@ -2,9 +2,15 @@ package org.ta.pddserver.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.ta.pddserver.entity.OrderCreateEntity;
import org.ta.pddserver.entity.OutboundNoticeEntity;
import org.ta.pddserver.model.api.request.OutboundNoticeListRequest;
import org.ta.pddserver.model.api.request.UnpackNoticeListRequest;
import org.ta.pddserver.model.api.response.OutboundNoticeListResponse;
import org.ta.pddserver.model.api.response.UnpackNoticeListResponse;
import java.util.List;
......@@ -13,4 +19,13 @@ public interface OutboundNoticeMapper extends BaseMapper<OutboundNoticeEntity> {
// 根据用户名查找用户
@Select("SELECT * FROM `outbound_notice` WHERE `username` = #{username};")
List<OutboundNoticeEntity> selectByUsername(String username);
@Select("SELECT count(`uid`) FROM `outbound_notice` WHERE `status` = 1")
Integer countUsable(OutboundNoticeListRequest param);
@Select("SELECT `orderCode`, `status` FROM `outbound_notice` WHERE `status` = 1 ORDER BY `uid` DESC LIMIT #{offset}, #{size}; ")
List<OutboundNoticeListResponse> getListByRequest(OutboundNoticeListRequest param);
@Update("UPDATE `outbound_notice` SET `status` = ${status} WHERE `orderCode` = #{orderCode} ")
void updateStatusByOrderCode(@Param("orderCode") String orderCode, @Param("status") int status);
}
package org.ta.pddserver.mapper;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.*;
import org.ta.pddserver.entity.AreaEntity;
import org.ta.pddserver.entity.StorageEntity;
import org.ta.pddserver.model.api.request.AreaListRequest;
import org.ta.pddserver.model.api.response.StorageListResponse;
import org.ta.pddserver.model.api.response.StorageResponse;
import java.util.List;
@Mapper
public interface StorageMapper extends BaseMapper<StorageEntity> {
@Select("SELECT * FROM `storage` WHERE `logisticsOrderCode` = #{logisticsOrderCode} ORDER BY `uid` DESC LIMIT 1; ")
StorageEntity getInfoByLogisticsOrderCode(@Param("logisticsOrderCode") String logisticsOrderCode);
@Select("SELECT * FROM `storage` WHERE `mailNo` = #{mailNo};")
StorageEntity getInfoByMailNo(@Param("mailNo") String mailNo);
@Select("SELECT COUNT(*) FROM `storage` WHERE `logisticsOrderCode` = #{logisticsOrderCode} ")
int findCountByLogisticsOrderCode(@Param("logisticsOrderCode") String logisticsOrderCode);
@Update("UPDATE `storage` SET `num` = `num` + 1 WHERE `logisticsOrderCode` = #{logisticsOrderCode}")
void updateNumByLogisticsOrderCode(String logisticsOrderCode);
@Select("SELECT COUNT(`uid`) FROM `storage`")
int findAllCount();
@Select("SELECT SUM(IFNULL(`total`, 0) - IFNULL(`num`, 0)) FROM `storage` WHERE `num` <> `total` ")
Integer findReNumCount();
@Select("SELECT `code` FROM `storage` WHERE `mailNo` = #{mailNo}")
StorageResponse storageSelect(@Param("mailNo") String mailNo);
@Select("SELECT `mailNo`, `code` , `place` FROM `storage` WHERE `logisticsOrderCode` = #{logisticsOrderCode} ")
List<StorageListResponse> storageList(@Param("logisticsOrderCode") String logisticsOrderCode);
@Delete("DELETE FROM `storage` WHERE `mailNo` IN ${ids}")
void storageDel(@Param("ids") String ids);
}
......@@ -2,9 +2,15 @@ package org.ta.pddserver.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.ta.pddserver.entity.FeeQueryEntity;
import org.ta.pddserver.entity.UnpackNoticeEntity;
import org.ta.pddserver.model.api.request.LogOrderListRequest;
import org.ta.pddserver.model.api.request.UnpackNoticeListRequest;
import org.ta.pddserver.model.api.response.LogOrderListResponse;
import org.ta.pddserver.model.api.response.UnpackNoticeListResponse;
import java.util.List;
......@@ -16,4 +22,14 @@ public interface UnpackNoticeMapper extends BaseMapper<UnpackNoticeEntity> {
@Select("SELECT * FROM `unpack_notice` WHERE `orderCode` = #{orderCode} ORDER BY `uid` DESC LIMIT 1;")
UnpackNoticeEntity selectByOrderCode(String orderCode);
@Select("SELECT count(`uid`) FROM `unpack_notice` WHERE `status` = 1 ")
Integer countUsable(UnpackNoticeListRequest param);
@Select("SELECT `orderCode`, `status` FROM `unpack_notice` WHERE `status` = 1 ORDER BY `uid` DESC LIMIT #{offset}, #{size}; ")
List<UnpackNoticeListResponse> getListByRequest(UnpackNoticeListRequest param);
@Update("UPDATE `unpack_notice` SET `status` = ${status} WHERE `orderCode` = #{orderCode} ")
void updateStatusByOrderCode(@Param("orderCode") String orderCode, @Param("status") int status);
}
package org.ta.pddserver.model.api.request;
import lombok.Data;
import org.ta.pddserver.model.common.PageTool;
@Data
public class AreaListRequest extends PageTool {
}
package org.ta.pddserver.model.api.request;
import lombok.Data;
import org.ta.pddserver.model.common.PageTool;
@Data
public class OutboundNoticeListRequest extends PageTool {
}
package org.ta.pddserver.model.api.request;
import lombok.Data;
import java.util.List;
@Data
public class StorageDelRequest {
private String logisticsOrderCode;
private List<String> mailNo;
private String type;
}
package org.ta.pddserver.model.api.request;
import lombok.Data;
import org.ta.pddserver.model.common.PageTool;
@Data
public class StorageListRequest {
private String logisticsOrderCode;
}
package org.ta.pddserver.model.api.request;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.ta.pddserver.model.common.PageTool;
@Data
public class StorageRequest {
@Schema(
description = "运单号",
example = "P12345678",
defaultValue = "",
requiredMode = Schema.RequiredMode.REQUIRED // 必填
)
private String mailNo;
@Schema(
description = "区域位置",
example = "P12345678",
defaultValue = "",
requiredMode = Schema.RequiredMode.NOT_REQUIRED // 必填
)
private String place;
}
package org.ta.pddserver.model.api.request;
import lombok.Data;
import org.ta.pddserver.model.common.PageTool;
@Data
public class UnpackNoticeListRequest extends PageTool {
}
package org.ta.pddserver.model.api.response;
import lombok.Data;
@Data
public class LogOrderInfoResponse {
private String updated;
private String logisticsOrderCode;
private String bizType;
private String consoType;
private String dereRecogCode;
private int packageQuantity;
private int num;
private int status;
private String buyerCode;
}
package org.ta.pddserver.model.api.response;
import lombok.Data;
@Data
public class LogOrderItemResponse {
private String itemName;
private String categoryName;
private int totalActualPayment;
private String currencyUnit;
private String currency;
private int itemQuantity;
private String itemPicUrl;
private String itemSkuProperty;
private int chargedStatus;
private String goodsType;
private int magneticStatus;
}
package org.ta.pddserver.model.api.response;
import lombok.Data;
@Data
public class LogOrderMailDetailResponse {
private String updated;
private String logisticsOrderCode;
private String bizType;
private String consoType;
private String dereRecogCode;
private int packageQuantity;
private int num;
private int status;
private String buyerCode;
}
package org.ta.pddserver.model.api.response;
import lombok.Data;
@Data
public class OutboundNoticeListResponse {
private String orderCode;
private int status;
}
package org.ta.pddserver.model.api.response;
import lombok.Data;
@Data
public class StorageListResponse {
private String mailNo;
private String code;
private String place;
}
package org.ta.pddserver.model.api.response;
import lombok.Data;
@Data
public class StorageResponse {
private String code;
}
package org.ta.pddserver.model.api.response;
import lombok.Data;
@Data
public class UnpackNoticeListResponse {
private String orderCode;
private int status;
}
......@@ -12,12 +12,13 @@ public enum StatusEnum {
BOUNDERROR(23, "入库异常"),
UNPACK(30, "通知拆包"),
UNPACKBEGINPICK(31, "开始拣货"),
UNPACKFINISHPICK(32, "拣货完成"),
UNPACKFINISHPICK(32, "拣货下架"),
FINISHUNPACK(35, "拆包完成"),
FINISHUNPACKERROR(36, "拆包完成异常"),
OUTBOUND(40, "通知出库"),
BEGINPICK(50, "开始拣货"),
BEGINPICKERROR(51, "开始拣货异常"),
PICKDOWN(52, "拣货下架"),
FINISHPICK(55, "拣货完成"),
FINISHPICKERROR(56, "拣货完成异常"),
FINISHOUTBOUND(60, "出库"),
......
package org.ta.pddserver.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.ta.pddserver.entity.AreaEntity;
public interface AreaService extends IService<AreaEntity> {
}
package org.ta.pddserver.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.ta.pddserver.entity.AreaEntity;
import org.ta.pddserver.entity.StorageEntity;
public interface StorageService extends IService<StorageEntity> {
}
package org.ta.pddserver.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.ta.pddserver.entity.AreaEntity;
import org.ta.pddserver.mapper.AreaMapper;
import org.ta.pddserver.model.api.request.AreaListRequest;
import org.ta.pddserver.model.api.request.LogOrderListRequest;
import org.ta.pddserver.model.api.response.LogOrderListResponse;
import org.ta.pddserver.service.AreaService;
import org.ta.pddserver.utils.JsonResponse;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class AreaImpl extends ServiceImpl<AreaMapper, AreaEntity> implements AreaService {
public Map<String, Object> areaList(AreaListRequest param) {
Integer count = baseMapper.countUsable(param);
param.checkPage(count,20);
List<AreaEntity> list = baseMapper.getListByRequest(param);
Map<String, Object> map = new HashMap<>();
map.put("total", count);
map.put("list", list);
map.put("page", param.getPage());
return map;
}
public JSONObject areaAdd(AreaEntity areaEntity) {
AreaEntity ae = baseMapper.getInfoByCode(areaEntity.getCode());
if(ae ==null){
baseMapper.insert(areaEntity);
return JsonResponse.generateLocalCommonSuccessResponse(true);
}else {
return JsonResponse.generateLocalCommonFailedResponse("-1", "区域已存在");
}
}
public JSONObject areaEdit(AreaEntity areaEntity) {
AreaEntity ae = baseMapper.getInfoByUid(areaEntity.getUid());
if(ae == null){
return JsonResponse.generateLocalCommonFailedResponse("-1", "区域信息不存在");
}else {
AreaEntity ae2 = baseMapper.getInfoByCode(areaEntity.getCode());
if(ae2 ==null){
//名称不重复,可以用
baseMapper.updateById(areaEntity);
}else {
if(areaEntity.getUid().equals(ae2.getUid())){
//同一条可以修改
baseMapper.updateById(ae);
}else {
//code 重复
return JsonResponse.generateLocalCommonFailedResponse("-1", "区域名称已存在");
}
}
}
return JsonResponse.generateLocalCommonSuccessResponse(true);
}
public JSONObject areaDele(AreaEntity areaEntity) {
AreaEntity ae = baseMapper.getInfoByUid(areaEntity.getUid());
if(ae == null){
return JsonResponse.generateLocalCommonFailedResponse("-1", "区域信息不存在");
}else if(ae.getState() < 1){
return JsonResponse.generateLocalCommonFailedResponse("-1", "区域信息已删除,请勿重复操作");
}
ae.setState(-1);
baseMapper.updateById(ae);
return JsonResponse.generateLocalCommonSuccessResponse(true);
}
public List<AreaEntity> getList() {
return baseMapper.getList();
}
}
\ No newline at end of file
......@@ -6,6 +6,7 @@ import org.springframework.stereotype.Service;
import org.ta.pddserver.entity.LogOrderEntity;
import org.ta.pddserver.mapper.LogOrderMapper;
import org.ta.pddserver.model.api.request.LogOrderListRequest;
import org.ta.pddserver.model.api.response.LogOrderInfoResponse;
import org.ta.pddserver.model.api.response.LogOrderListResponse;
import org.ta.pddserver.service.LogOrderService;
......@@ -47,4 +48,8 @@ public class LogOrderImpl extends ServiceImpl<LogOrderMapper, LogOrderEntity> im
public void updateStatusByOrderCode(String logisticsOrderCode, int status) {
baseMapper.updateStatusByOrderCode(logisticsOrderCode, status);
}
public LogOrderInfoResponse getLogOrderInfo(String logisticsOrderCode) {
return baseMapper.getLogOrderInfo(logisticsOrderCode);
}
}
\ No newline at end of file
......@@ -5,9 +5,15 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.ta.pddserver.entity.LogOrderItemEntity;
import org.ta.pddserver.mapper.LogOrderItemMapper;
import org.ta.pddserver.model.api.response.LogOrderItemResponse;
import org.ta.pddserver.service.LogOrderItemService;
import java.util.List;
@Service
public class LogOrderItemImpl extends ServiceImpl<LogOrderItemMapper, LogOrderItemEntity> implements LogOrderItemService {
public List<LogOrderItemResponse> getListByLogisticsOrderCode(String logisticsOrderCode) {
return baseMapper.getListByLogisticsOrderCode(logisticsOrderCode);
}
}
\ No newline at end of file
......@@ -64,4 +64,8 @@ public class LogOrderMailDetailImpl extends ServiceImpl<LogOrderMailDetailMapper
public Long getSumByCodeStatus(String logisticsOrderCode, Long status) {
return baseMapper.getSumByCodeStatus(logisticsOrderCode, status);
}
public int findCountByLogisticsOrderCode(String logisticsOrderCode) {
return baseMapper.findCountByLogisticsOrderCode(logisticsOrderCode);
}
}
\ No newline at end of file
......@@ -5,10 +5,32 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.ta.pddserver.entity.OutboundNoticeEntity;
import org.ta.pddserver.mapper.OutboundNoticeMapper;
import org.ta.pddserver.model.api.request.OutboundNoticeListRequest;
import org.ta.pddserver.model.api.request.UnpackNoticeListRequest;
import org.ta.pddserver.model.api.response.OutboundNoticeListResponse;
import org.ta.pddserver.model.api.response.UnpackNoticeListResponse;
import org.ta.pddserver.service.OutboundNoticeService;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class OutboundNoticeImpl extends ServiceImpl<OutboundNoticeMapper, OutboundNoticeEntity> implements OutboundNoticeService {
public Map<String, Object> getListByRequest(OutboundNoticeListRequest param) {
Integer count = baseMapper.countUsable(param);
param.checkPage(count,20);
List<OutboundNoticeListResponse> list = baseMapper.getListByRequest(param);
Map<String, Object> map = new HashMap<>();
map.put("total", count);
map.put("list", list);
map.put("page", param.getPage());
return map;
}
public void updateStatusByOrderCode(String orderCode, int status) {
baseMapper.updateStatusByOrderCode(orderCode, status);
}
}
\ No newline at end of file
package org.ta.pddserver.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.ta.pddserver.entity.StorageEntity;
import org.ta.pddserver.mapper.StorageMapper;
import org.ta.pddserver.model.api.request.StorageListRequest;
import org.ta.pddserver.model.api.response.StorageListResponse;
import org.ta.pddserver.model.api.response.StorageResponse;
import org.ta.pddserver.service.StorageService;
import java.util.List;
@Service
public class StorageImpl extends ServiceImpl<StorageMapper, StorageEntity> implements StorageService {
public StorageEntity getInfoByLogisticsOrderCode(String logisticsOrderCode) {
return baseMapper.getInfoByLogisticsOrderCode(logisticsOrderCode);
}
public StorageEntity getInfoByMailNo(String mailNo) {
return baseMapper.getInfoByMailNo(mailNo);
}
public int findCountByLogisticsOrderCode(String logisticsOrderCode) {
return baseMapper.findCountByLogisticsOrderCode(logisticsOrderCode);
}
public void updateNumByLogisticsOrderCode(String logisticsOrderCode) {
baseMapper.updateNumByLogisticsOrderCode(logisticsOrderCode);
}
public int findAllCount() {
return baseMapper.findAllCount();
}
public Integer findReNumCount() {
return baseMapper.findReNumCount();
}
public StorageResponse storageSelect(String mailNo) {
return baseMapper.storageSelect(mailNo);
}
public List<StorageListResponse> storageList(String logisticsOrderCode) {
return baseMapper.storageList(logisticsOrderCode);
}
public void storageDel(String ids) {
baseMapper.storageDel(ids);
}
}
\ No newline at end of file
......@@ -3,13 +3,16 @@ package org.ta.pddserver.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.ta.pddserver.entity.FeeQueryEntity;
import org.ta.pddserver.entity.UnpackNoticeEntity;
import org.ta.pddserver.mapper.FeeQueryMapper;
import org.ta.pddserver.mapper.UnpackNoticeMapper;
import org.ta.pddserver.service.FeeQueryService;
import org.ta.pddserver.model.api.request.UnpackNoticeListRequest;
import org.ta.pddserver.model.api.response.UnpackNoticeListResponse;
import org.ta.pddserver.service.UnpackNoticeService;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class UnpackNoticeImpl extends ServiceImpl<UnpackNoticeMapper, UnpackNoticeEntity> implements UnpackNoticeService {
......@@ -17,4 +20,19 @@ public class UnpackNoticeImpl extends ServiceImpl<UnpackNoticeMapper, UnpackNoti
public UnpackNoticeEntity getByCode(String orderCode) {
return this.baseMapper.selectByOrderCode(orderCode);
}
public Map<String, Object> getListByRequest(UnpackNoticeListRequest param) {
Integer count = baseMapper.countUsable(param);
param.checkPage(count,20);
List<UnpackNoticeListResponse> list = baseMapper.getListByRequest(param);
Map<String, Object> map = new HashMap<>();
map.put("total", count);
map.put("list", list);
map.put("page", param.getPage());
return map;
}
public void updateStatusByOrderCode(String orderCode, int status) {
baseMapper.updateStatusByOrderCode(orderCode, status);
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment