Prechádzať zdrojové kódy

添加主表和商品表代码

cuixiaodong 10 mesiacov pred
rodič
commit
de8a8493d5

+ 17 - 0
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/controller/product/StockInfoManagerController.java

@@ -3,6 +3,7 @@ package com.hys.app.raycoswebapi.controller.product;
 import com.hys.app.framework.context.user.AdminUserContext;
 import com.hys.app.framework.database.WebPage;
 import com.hys.app.model.erp.dto.SaleChannelDTO;
+import com.hys.app.model.erp.dto.WarehouseEntryDTO;
 import com.hys.app.model.support.LogClient;
 import com.hys.app.model.support.validator.annotation.Log;
 import com.hys.app.raycoswebapi.model.dao.product.RaycosStockDao;
@@ -48,5 +49,21 @@ public class StockInfoManagerController {
         return stockInfoManager.add(stockInfoDto);
     }
 
+    @ApiOperation(value = "修改")
+    @PutMapping("/update/{id}")
+    @Log(client = LogClient.admin, detail = "编辑ID为[${id}]的入库单")
+    public void updateInfo(@PathVariable Long id, @RequestBody @Valid StockInfoDto stockInfoDto) {
+        AdminUserContext.hasCompany();
+        stockInfoDto.setId(id);
+        stockInfoManager.updateInfo(stockInfoDto);
+    }
+
+    @ApiOperation(value = "删除")
+    @DeleteMapping("/delete/{id}")
+    @Log(client = LogClient.admin, detail = "删除ID为[${ids}]的入库单")
+    public void delete(@PathVariable Long id) {
+        stockInfoManager.delete(id);
+    }
+
 }
 

+ 70 - 0
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/controller/product/StockplusInfoManagerController.java

@@ -0,0 +1,70 @@
+package com.hys.app.raycoswebapi.controller.product;
+
+import com.hys.app.framework.context.user.AdminUserContext;
+import com.hys.app.framework.database.WebPage;
+import com.hys.app.model.support.LogClient;
+import com.hys.app.model.support.validator.annotation.Log;
+import com.hys.app.raycoswebapi.model.dao.product.RaycosStockDao;
+import com.hys.app.raycoswebapi.model.dao.product.RaycosStockplusDao;
+import com.hys.app.raycoswebapi.model.dto.product.StockInfoDto;
+import com.hys.app.raycoswebapi.model.dto.product.StockplusDto;
+import com.hys.app.raycoswebapi.service.product.StockInfoManager;
+import com.hys.app.raycoswebapi.service.product.StockplusInfoManager;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+/**
+ * stock相关api
+ *
+ * @author 崔晓冬
+ * @since 2024年8月9日12:20:17
+ */
+@RestController
+@RequestMapping("/admin/webapi/stockplusinfo")
+@Api(tags = "stock信息相关API")
+@Validated
+public class StockplusInfoManagerController {
+
+    @Autowired
+    private StockplusInfoManager stockplusInfoManager;
+
+
+
+    @ApiOperation(value = "分页列表")
+    @GetMapping("/list")
+    public WebPage<RaycosStockplusDao> list(StockplusDto queryParams) {
+        AdminUserContext.hasSuperAdminQuery(queryParams.getCompanyId());
+        return stockplusInfoManager.list(queryParams);
+    }
+
+    @ApiOperation(value = "添加")
+    @PostMapping("/insert")
+    @Log(client = LogClient.admin, detail = "新增sku主表")
+    public Long add(@RequestBody @Valid StockplusDto queryParams) {
+        AdminUserContext.hasCompany();
+        return stockplusInfoManager.add(queryParams);
+    }
+
+    @ApiOperation(value = "修改")
+    @PutMapping("/update/{id}")
+    @Log(client = LogClient.admin, detail = "编辑ID为[${id}]的入库单")
+    public void updateInfo(@PathVariable Long id, @RequestBody @Valid StockplusDto stockplusDto) {
+        AdminUserContext.hasCompany();
+        stockplusDto.setId(id);
+        stockplusInfoManager.updateInfo(stockplusDto);
+    }
+
+    @ApiOperation(value = "删除")
+    @DeleteMapping("/delete/{id}")
+    @Log(client = LogClient.admin, detail = "删除ID为[${ids}]的入库单")
+    public void delete(@PathVariable Long id) {
+        stockplusInfoManager.delete(id);
+    }
+
+}
+

+ 82 - 0
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/mapper/product/StockplusInfoMapper.java

@@ -0,0 +1,82 @@
+package com.hys.app.raycoswebapi.mapper.product;
+
+import com.hys.app.framework.database.WebPage;
+import com.hys.app.framework.database.mybatisplus.base.BaseMapperX;
+import com.hys.app.raycoswebapi.model.dao.product.RaycosStockplusDao;
+import com.hys.app.raycoswebapi.model.dao.product.RaycosStockplusDao;
+import com.hys.app.raycoswebapi.model.dto.product.StockInfoDto;
+import com.hys.app.raycoswebapi.model.dto.product.StockplusDto;
+
+public interface StockplusInfoMapper extends BaseMapperX<RaycosStockplusDao> {
+    default WebPage<RaycosStockplusDao> selectPage(StockplusDto params) {
+        return lambdaQuery()
+                .eqIfPresent(RaycosStockplusDao::getStockId, params.getStockId())
+                .eqIfPresent(RaycosStockplusDao::getOriginalSku, params.getOriginalSku())
+                .eqIfPresent(RaycosStockplusDao::getStockPicture, params.getStockPicture())
+                .eqIfPresent(RaycosStockplusDao::getSalePicture, params.getSalePicture())
+                .eqIfPresent(RaycosStockplusDao::getLength, params.getLength())
+                .eqIfPresent(RaycosStockplusDao::getWidth, params.getWidth())
+                .eqIfPresent(RaycosStockplusDao::getHeight, params.getHeight())
+                .eqIfPresent(RaycosStockplusDao::getVolume, params.getVolume())
+                .eqIfPresent(RaycosStockplusDao::getWeight, params.getWeight())
+                .eqIfPresent(RaycosStockplusDao::getVolumeWeight, params.getVolumeWeight())
+                .likeIfPresent(RaycosStockplusDao::getDeclareName, params.getDeclareName())
+                .likeIfPresent(RaycosStockplusDao::getDeclareEname, params.getDeclareEname())
+                .likeIfPresent(RaycosStockplusDao::getDeclareName, params.getDeclareName())
+                .eqIfPresent(RaycosStockplusDao::getDeclareValue, params.getDeclareValue())
+                .eqIfPresent(RaycosStockplusDao::getPackageId, params.getPackageId())
+                .eqIfPresent(RaycosStockplusDao::getPackageCount, params.getPackageCount())
+                .eqIfPresent(RaycosStockplusDao::getCommodityMaterial, params.getCommodityMaterial())
+                .eqIfPresent(RaycosStockplusDao::getRemark, params.getRemark())
+                .eqIfPresent(RaycosStockplusDao::getCommodityUse, params.getCommodityUse())
+                .eqIfPresent(RaycosStockplusDao::getIsLocationPicture, params.getIsLocationPicture())
+                .eqIfPresent(RaycosStockplusDao::getNoLiquidCosmetic, params.getNoLiquidCosmetic())
+                .eqIfPresent(RaycosStockplusDao::getMagnetic, params.getMagnetic())
+                .eqIfPresent(RaycosStockplusDao::getPowder, params.getPowder())
+                .eqIfPresent(RaycosStockplusDao::getDeveloperId, params.getDeveloperId())
+                .eqIfPresent(RaycosStockplusDao::getDeclareCode, params.getDeclareCode())
+                .eqIfPresent(RaycosStockplusDao::getIsPurchaseWeight, params.getIsPurchaseWeight())
+                .eqIfPresent(RaycosStockplusDao::getSaleRemark, params.getSaleRemark())
+                .eqIfPresent(RaycosStockplusDao::getPurchaseRemark, params.getPurchaseRemark())
+                .eqIfPresent(RaycosStockplusDao::getStockDetailImg, params.getStockDetailImg())
+                .eqIfPresent(RaycosStockplusDao::getWeightSection, params.getWeightSection())
+                .eqIfPresent(RaycosStockplusDao::getIspaste, params.getIspaste())
+                .eqIfPresent(RaycosStockplusDao::getVolumeWeightType, params.getVolumeWeightType())
+                .eqIfPresent(RaycosStockplusDao::getTempPicture, params.getTempPicture())
+                .eqIfPresent(RaycosStockplusDao::getIsGift, params.getIsGift())
+                .eqIfPresent(RaycosStockplusDao::getPurchasePackageId, params.getPurchasePackageId())
+                .eqIfPresent(RaycosStockplusDao::getFinancial, params.getFinancial())
+                .eqIfPresent(RaycosStockplusDao::getExtend, params.getExtend())
+                .eqIfPresent(RaycosStockplusDao::getChargedproperty, params.getChargedproperty())
+                .eqIfPresent(RaycosStockplusDao::getUpdateTime, params.getUpdateTime())
+                .eqIfPresent(RaycosStockplusDao::getTrademarkRegisterNo, params.getTrademarkRegisterNo())
+                .eqIfPresent(RaycosStockplusDao::getTrademarkExpireTime, params.getTrademarkExpireTime())
+                .eqIfPresent(RaycosStockplusDao::getTrademarkRegisterTime, params.getTrademarkRegisterTime())
+                .eqIfPresent(RaycosStockplusDao::getManufacturer, params.getManufacturer())
+                .eqIfPresent(RaycosStockplusDao::getProductWarningDays, params.getProductWarningDays())
+                .eqIfPresent(RaycosStockplusDao::getIsGoogsExpireManage, params.getIsGoogsExpireManage())
+                .eqIfPresent(RaycosStockplusDao::getShelfLifeDays, params.getShelfLifeDays())
+                .eqIfPresent(RaycosStockplusDao::getDevAssistant, params.getDevAssistant())
+                .eqIfPresent(RaycosStockplusDao::getDutyElement, params.getDutyElement())
+                .eqIfPresent(RaycosStockplusDao::getUnitId, params.getUnitId())
+                .eqIfPresent(RaycosStockplusDao::getGoodsPackageId, params.getGoodsPackageId())
+                .eqIfPresent(RaycosStockplusDao::getInnerPackageNum, params.getInnerPackageNum())
+                .eqIfPresent(RaycosStockplusDao::getSaleUrl, params.getSaleUrl())
+                .eqIfPresent(RaycosStockplusDao::getPackagingLength, params.getPackagingLength())
+                .eqIfPresent(RaycosStockplusDao::getPackagingWidth, params.getPackagingWidth())
+                .eqIfPresent(RaycosStockplusDao::getPackagingHeight, params.getPackagingHeight())
+                .eqIfPresent(RaycosStockplusDao::getPackagingVolume, params.getPackagingVolume())
+                .eqIfPresent(RaycosStockplusDao::getPackagingVolumeweight, params.getPackagingVolumeweight())
+                .eqIfPresent(RaycosStockplusDao::getSpecMode, params.getSpecMode())
+                .eqIfPresent(RaycosStockplusDao::getOriginCountry, params.getOriginCountry())
+                .eqIfPresent(RaycosStockplusDao::getDomesticSource, params.getDomesticSource())
+                .eqIfPresent(RaycosStockplusDao::getLevyExemption, params.getLevyExemption())
+                .eqIfPresent(RaycosStockplusDao::getIsFlammables, params.getIsFlammables())
+                .eqIfPresent(RaycosStockplusDao::getIsKnife, params.getIsKnife())
+                .eqIfPresent(RaycosStockplusDao::getIsBospicture, params.getIsBospicture())
+                .eqIfPresent(RaycosStockplusDao::getContSign, params.getContSign())
+                .orderByDesc(RaycosStockplusDao::getUpdateTime)
+                .page(params);
+    }
+
+}

+ 6 - 0
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/model/dao/product/RaycosStockDao.java

@@ -183,6 +183,12 @@ public class RaycosStockDao implements Serializable {
     @ApiModelProperty(name = "creatorId", value = "创建者id")
     private Long creatorId;
 
+    @ApiModelProperty(name = "creator", value = "创建者")
+    private String creator;
+
+    @ApiModelProperty(name = "updater", value = "更新者")
+    private String updater;
+
     @ApiModelProperty(name = "purchasePrice", value = "采购价")
     private Double purchasePrice;
 

+ 60 - 64
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/model/dto/product/StockInfoDto.java

@@ -10,7 +10,7 @@ import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.ToString;
 
-import java.sql.Timestamp;
+import java.lang.Long;
 
 @Data
 @EqualsAndHashCode(callSuper = true)
@@ -64,157 +64,154 @@ public class StockInfoDto extends BaseQueryParam {
     @ApiModelProperty(name = "is_tort", value = "是否侵权:1是 2否")
     private Long isTort;
 
-    @ApiModelProperty(name = "hasVirtualSku", value = "是否有虚拟sku")
+    @ApiModelProperty(name = "has_virtual_sku", value = "是否有虚拟sku")
     private Long hasVirtualSku;
 
-    @ApiModelProperty(name = "buyerId", value = "采购员ID(员工ID)")
+    @ApiModelProperty(name = "buyer_id", value = "采购员ID(员工ID)")
     private Long buyerId;
 
-    @ApiModelProperty(name = "salesId", value = "销售员ID(员工ID)")
+    @ApiModelProperty(name = "sales_id", value = "销售员ID(员工ID)")
     private Long salesId;
 
-    @ApiModelProperty(name = "deliverId", value = "配货员(员工ID),多个之间用,分隔,1个时:,id,")
+    @ApiModelProperty(name = "deliver_id", value = "配货员(员工ID),多个之间用,分隔,1个时:,id,")
     private String deliverId;
 
-    @ApiModelProperty(name = "artDesignerId", value = "美工")
+    @ApiModelProperty(name = "art_designer_id", value = "美工")
     private Long artDesignerId;
 
-    @ApiModelProperty(name = "defaultCost", value = "默认成本价")
+    @ApiModelProperty(name = "default_cost", value = "默认成本价")
     private Double defaultCost;
 
-    @ApiModelProperty(name = "stockQuantity", value = "库存数量")
+    @ApiModelProperty(name = "stock_quantity", value = "库存数量")
     private Long stockQuantity;
 
-    @ApiModelProperty(name = "forecastDaySale", value = "forecastDaySale")
+    @ApiModelProperty(name = "forecast_day_sale", value = "forecastDaySale")
     private Double forecastDaySale;
 
-    @ApiModelProperty(name = "shippingQuantity", value = "在途数量")
+    @ApiModelProperty(name = "shipping_quantity", value = "在途数量")
     private Long shippingQuantity;
 
-    @ApiModelProperty(name = "waitingQuantity", value = "未发货数量")
+    @ApiModelProperty(name = "waiting_quantity", value = "未发货数量")
     private Long waitingQuantity;
 
-    @ApiModelProperty(name = "quantityInterval1", value = "本周")
+    @ApiModelProperty(name = "quantity_interval1", value = "本周")
     private Long quantityInterval1;
 
-    @ApiModelProperty(name = "quantityInterval2", value = "上周")
+    @ApiModelProperty(name = "quantity_interval2", value = "上周")
     private Long quantityInterval2;
 
-    @ApiModelProperty(name = "", value = "")
+    @ApiModelProperty(name = "quantity_interval3", value = "quantity_interval3")
     private Long quantityInterval3;
 
-    @ApiModelProperty(name = "", value = "")
+    @ApiModelProperty(name = "quantity_interval4", value = "quantity_interval4")
     private Long quantityInterval4;
 
-    @ApiModelProperty(name = "", value = "")
+    @ApiModelProperty(name = "quantity_interval5", value = "quantity_interval5")
     private Long quantityInterval5;
 
-    @ApiModelProperty(name = "", value = "")
+    @ApiModelProperty(name = "quantity_interval6", value = "quantity_interval6")
     private Long quantityInterval6;
 
-    @ApiModelProperty(name = "isSingleWarehouse", value = "是否单仓库 : 1 是  2  否")
+    @ApiModelProperty(name = "is_single_warehouse", value = "是否单仓库 : 1 是  2  否")
     private Long isSingleWarehouse;
 
-    @ApiModelProperty(name = "defaultWarehouseId", value = "默认仓库ID(冗余字段,便于订单查找)")
+    @ApiModelProperty(name = "default_warehouse_id", value = "默认仓库ID(冗余字段,便于订单查找)")
     private Long defaultWarehouseId;
 
-    @ApiModelProperty(name = "defaultStockWarehouseDetailId", value = "默认库存SKU对应仓位ID(冗余字段,便于订单查找)")
+    @ApiModelProperty(name = "default_stock_warehouse_detail_id", value = "默认库存SKU对应仓位ID(冗余字段,便于订单查找)")
     private Long defaultStockWarehouseDetailId;
 
-    @ApiModelProperty(name = "defaultGridCode", value = "默认仓位号")
+    @ApiModelProperty(name = "default_grid_code", value = "默认仓位号")
     private String defaultGridCode;
 
-    @ApiModelProperty(name = "timeCreated", value = "创建时间")
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-    private Timestamp timeCreated;
+    @ApiModelProperty(name = "time_created", value = "创建时间")
+    private Long timeCreated;
 
-    @ApiModelProperty(name = "timeModify", value = "修改时间")
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-    private Timestamp timeModify;
+    @ApiModelProperty(name = "time_modify", value = "修改时间")
+    private Long timeModify;
 
-    @ApiModelProperty(name = "purchaseType", value = "1.分仓采购 2.智能联合统一采购")
+    @ApiModelProperty(name = "purchase_type", value = "1.分仓采购 2.智能联合统一采购")
     private Long purchaseType;
 
-    @ApiModelProperty(name = "isCloud", value = "是否云分销商品1:是;2:否")
+    @ApiModelProperty(name = "is_cloud", value = "是否云分销商品1:是;2:否")
     private Long isCloud;
 
-    @ApiModelProperty(name = "retailSku", value = "供货商子sku")
+    @ApiModelProperty(name = "retail_sku", value = "供货商子sku")
     private String retailSku;
 
-    @ApiModelProperty(name = "platformId", value = "平台类型id")
+    @ApiModelProperty(name = "platform_id", value = "平台类型id")
     private Long platformId;
 
-    @ApiModelProperty(name = "platformUrl", value = "平台链接")
+    @ApiModelProperty(name = "platform_url", value = "平台链接")
     private String platformUrl;
 
-    @ApiModelProperty(name = "retailId", value = "供应商id")
+    @ApiModelProperty(name = "retail_id", value = "供应商id")
     private Long retailId;
 
-    @ApiModelProperty(name = "livenessType", value = "活跃度:1:爆款;2:旺款;3:平款;4:滞销款;")
+    @ApiModelProperty(name = "liveness_type", value = "活跃度:1:爆款;2:旺款;3:平款;4:滞销款;")
     private Long livenessType;
 
-    @ApiModelProperty(name = "isNewType", value = "是否新款:1:是")
+    @ApiModelProperty(name = "is_new_type", value = "是否新款:1:是")
     private Long isNewType;
 
-    @ApiModelProperty(name = "isMachining", value = "是否有加工产品:1有,2无")
+    @ApiModelProperty(name = "is_machining", value = "是否有加工产品:1有,2无")
     private Long isMachining;
 
-    @ApiModelProperty(name = "updateDate1", value = "最新出库时间")
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-    private Timestamp updateDate1;
+    @ApiModelProperty(name = "update_date1", value = "最新出库时间")
+    private Long updateDate1;
 
-    @ApiModelProperty(name = "updateDate2", value = "最新入库时间")
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-    private Timestamp updateDate2;
+    @ApiModelProperty(name = "update_date2", value = "最新入库时间")
+    private Long updateDate2;
 
-    @ApiModelProperty(name = "stopSelltime", value = "停止销售时间")
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-    private Timestamp stopSelltime;
+    @ApiModelProperty(name = "stop_selltime", value = "停止销售时间")
+    private Long stopSelltime;
 
-    @ApiModelProperty(name = "defaultRetailId", value = "默认供应商编号")
+    @ApiModelProperty(name = "default_retail_id", value = "默认供应商编号")
     private Long defaultRetailId;
 
-    @ApiModelProperty(name = "creatorId", value = "创建者id")
+    @ApiModelProperty(name = "creator_id", value = "创建者id")
     private Long creatorId;
 
-    @ApiModelProperty(name = "purchasePrice", value = "采购价")
+    @ApiModelProperty(name = "creator", value = "创建者")
+    private String creator;
+    @ApiModelProperty(name = "updater", value = "更新者")
+    private String updater;
+
+    @ApiModelProperty(name = "purchase_price", value = "采购价")
     private Double purchasePrice;
 
-    @ApiModelProperty(name = "processCost", value = "加工费用")
+    @ApiModelProperty(name = "process_cost", value = "加工费用")
     private Double processCost;
 
-    @ApiModelProperty(name = "shippingCost", value = "采购运费")
+    @ApiModelProperty(name = "shipping_cost", value = "采购运费")
     private Double shippingCost;
 
     @ApiModelProperty(name = "parent_brand_id", value = "父级品牌ID")
     private Long parentBrandId;
 
-    @ApiModelProperty(name = "brandId", value = "品牌ID")
+    @ApiModelProperty(name = "brand_id", value = "品牌ID")
     private Long brandId;
 
-    @ApiModelProperty(name = "isList", value = "是否开启序列号管理 1.开启 2.不开启")
+    @ApiModelProperty(name = "is_list", value = "是否开启序列号管理 1.开启 2.不开启")
     private Long isList;
 
-    @ApiModelProperty(name = "lastTime", value = "修改时间")
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-    private Timestamp lastTime;
+    @ApiModelProperty(name = "last_time", value = "修改时间")
+    private Long lastTime;
 
-    @ApiModelProperty(name = "minPaidtime", value = "未发货量订单最早时间")
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-    private Timestamp minPaidtime;
+    @ApiModelProperty(name = "min_paidtime", value = "未发货量订单最早时间")
+    private Long minPaidtime;
 
-    @ApiModelProperty(name = "IsSynchro", value = "自动同步平台库存 1启用 2停用")
+    @ApiModelProperty(name = "is_synchro", value = "自动同步平台库存 1启用 2停用")
     private Long isSynchro;
 
     @ApiModelProperty(name = "third_category_id", value = "三级目录Id")
     private Long thirdCategoryId;
 
     @ApiModelProperty(name = "update_time", value = "最后更新时间")
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-    private Timestamp updateTime;
+    private Long updateTime;
 
     @ApiModelProperty(name = "status_updatetime", value = "sku状态更新时间")
-    private Timestamp statusUpdatetime;
+    private Long statusUpdatetime;
 
     @ApiModelProperty(name = "all_quantity", value = "后台计算使用")
     private Long allQuantity;
@@ -226,8 +223,7 @@ public class StockInfoDto extends BaseQueryParam {
     private Long isActive;
 
     @ApiModelProperty(name = "last_paid_time", value = "最近付款时间")
-    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
-    private Timestamp lastPaidTime;
+    private Long lastPaidTime;
 
     @ApiModelProperty(name = "last_provider_id", value = "最新入库供应商ID")
     private Long lastProviderId;

+ 228 - 0
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/model/dto/product/StockplusDto.java

@@ -0,0 +1,228 @@
+package com.hys.app.raycoswebapi.model.dto.product;
+
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.hys.app.framework.database.BaseQueryParam;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+import java.io.Serializable;
+
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class StockplusDto extends BaseQueryParam {
+
+  private static final long serialVersionUID = 1L;
+
+  @TableId(type = IdType.ASSIGN_ID)
+  @ApiModelProperty(hidden = true)
+  private Long id;
+
+  @ApiModelProperty(name = "company_id", value = "Company ID")
+  private Long companyId;
+
+  @ApiModelProperty(name = "stock_id", value = "Stock ID(唯一对应)")
+  private Long stockId;
+
+  @ApiModelProperty(name = "original_sku", value = "originalSku")
+  private String originalSku;
+
+  @ApiModelProperty(name = "stock_picture", value = "库存图片")
+  private String stockPicture;
+
+  @ApiModelProperty(name = "sale_picture", value = "销售图片")
+  private String salePicture;
+
+  @ApiModelProperty(name = "length", value = "长度")
+  private Double length;
+
+  @ApiModelProperty(name = "width", value = "宽度")
+  private Double width;
+
+  @ApiModelProperty(name = "height", value = "高度")
+  private Double height;
+
+  @ApiModelProperty(name = "volume", value = "体积")
+  private Long volume;
+
+  @ApiModelProperty(name = "weight", value = "单品重量")
+  private Double weight;
+
+  @ApiModelProperty(name = "volume_weight", value = "体积重")
+  private Double volumeWeight;
+
+  @ApiModelProperty(name = "declare_name", value = "报关名称")
+  private String declareName;
+
+  @ApiModelProperty(name = "declare_ename", value = "英文申报名")
+  private String declareEname;
+
+  @ApiModelProperty(name = "declare_value", value = "申报价格")
+  private Double declareValue;
+
+  @ApiModelProperty(name = "package_id", value = "包材ID")
+  private Long packageId;
+
+  @ApiModelProperty(name = "package_count", value = "可包装个数")
+  private Long packageCount;
+
+  @ApiModelProperty(name = "commodity_material", value = "商品材质")
+  private String commodityMaterial;
+
+  @ApiModelProperty(name = "remark", value = "备注")
+  private String remark;
+
+  @ApiModelProperty(name = "commodity_use", value = "商品用途")
+  private String commodityUse;
+
+  @ApiModelProperty(name = "is_location_picture", value = "是否本地图片1是2不是")
+  private Long isLocationPicture;
+
+  @ApiModelProperty(name = "no_liquid_cosmetic", value = "0:非液体,2:液体(化妆品),1:非液体(化妆品),3:液体(非化妆品)")
+  private Long noLiquidCosmetic;
+
+  @ApiModelProperty(name = "magnetic", value = "带磁")
+  private Long magnetic;
+
+  @ApiModelProperty(name = "powder", value = "粉末:1:是;2:不是")
+  private Long powder;
+
+  @ApiModelProperty(name = "developer_id", value = "开发员")
+  private Long developerId;
+
+  @ApiModelProperty(name = "declare_code", value = "报关编号")
+  private String declareCode;
+
+  @ApiModelProperty(name = "is_purchase_weight", value = "是否在采购的时候修改了重量,1:否 2:是")
+  private Long isPurchaseWeight;
+
+  @ApiModelProperty(name = "sale_remark", value = "销售备注")
+  private String saleRemark;
+
+  @ApiModelProperty(name = "purchase_remark", value = "采购备注")
+  private String purchaseRemark;
+
+  @ApiModelProperty(name = "stock_detail_img", value = "产品细节图(多张)")
+  private String stockDetailImg;
+
+  @ApiModelProperty(name = "weight_section", value = "重量区间,例如:1-10,必须有-,两边必须为数字(小数)")
+  private String weightSection;
+
+  @ApiModelProperty(name = "ispaste", value = "是否为膏体 1:是2:不是")
+  private Long ispaste;
+
+  @ApiModelProperty(name = "volume_weight_type", value = "体积重类型:5000kg;6000kg")
+  private Long volumeWeightType;
+
+  @ApiModelProperty(name = "temp_picture", value = "临时图片")
+  private String tempPicture;
+
+  @ApiModelProperty(name = "is_gift", value = "是否赠品 1:是 2:否 (代表是否可作为赠品)")
+  private Long isGift;
+
+  @ApiModelProperty(name = "purchase_package_id", value = "采购包材ID")
+  private Long purchasePackageId;
+
+  @ApiModelProperty(name = "compete_url", value = "竞品链接")
+  private String competeUrl;
+
+  @ApiModelProperty(name = "purchase_package_count", value = "商品包材可包装数量")
+  private Long purchasePackageCount;
+
+  @ApiModelProperty(name = "financial", value = "财务编号")
+  private String financial;
+
+  @ApiModelProperty(name = "extend", value = "扩展属性")
+  private String extend;
+
+  @ApiModelProperty(name = "chargedproperty", value = "带电属性 0 属性未设置 1 纯电 2内置不可拆卸 3内置可拆卸")
+  private Long chargedproperty;
+
+  @ApiModelProperty(name = "update_time", value = "最后更新时间")
+  private Long updateTime;
+
+  @ApiModelProperty(name = "trademark_register_no", value = "商标注册号")
+  private String trademarkRegisterNo;
+
+  @ApiModelProperty(name = "trademark_register_time", value = "商标注册时间")
+  private Long trademarkRegisterTime;
+
+  @ApiModelProperty(name = "trademark_expire_time", value = "商标到期时间")
+  private Long trademarkExpireTime;
+
+  @ApiModelProperty(name = "manufacturer", value = "厂商")
+  private String manufacturer;
+
+  @ApiModelProperty(name = "product_warning_days", value = "商品预警天数")
+  private Long productWarningDays;
+
+  @ApiModelProperty(name = "is_googs_expire_manage", value = "商品有效期管理 0 不开启 1开启")
+  private Long isGoogsExpireManage;
+
+  @ApiModelProperty(name = "shelf_life_days", value = "保质期天数")
+  private Long shelfLifeDays;
+
+  @ApiModelProperty(name = "dev_assistant", value = "开发助理")
+  private Long devAssistant;
+
+  @ApiModelProperty(name = "duty_element", value = "申报要素")
+  private String dutyElement;
+
+  @ApiModelProperty(name = "unit_id", value = "单位ID,DHL申报专用")
+  private Long unitId;
+
+  @ApiModelProperty(name = "goods_package_id", value = "商品包材ID(限制十个)")
+  private String goodsPackageId;
+
+  @ApiModelProperty(name = "inner_package_num", value = "内包装数量")
+  private Long innerPackageNum;
+
+  @ApiModelProperty(name = "sale_url", value = "产品销售链接")
+  private String saleUrl;
+
+  @ApiModelProperty(name = "packaging_length", value = "包装后长度")
+  private Double packagingLength;
+
+  @ApiModelProperty(name = "packaging_width", value = "包装后宽度")
+  private Double packagingWidth;
+
+  @ApiModelProperty(name = "packaging_height", value = "包装后高度")
+  private Double packagingHeight;
+
+  @ApiModelProperty(name = "packaging_volume", value = "包装后体积")
+  private Long packagingVolume;
+
+  @ApiModelProperty(name = "packaging_volumeweight", value = "包装后体积重")
+  private Double packagingVolumeweight;
+
+  @ApiModelProperty(name = "spec_mode", value = "报关规格型号")
+  private String specMode;
+
+  @ApiModelProperty(name = "origin_country", value = "原产国(地区)")
+  private String originCountry;
+
+  @ApiModelProperty(name = "domestic_source", value = "境内货源地")
+  private String domesticSource;
+
+  @ApiModelProperty(name = "levy_exemption", value = "征免")
+  private String levyExemption;
+
+  @ApiModelProperty(name = "is_flammables", value = "是否为易燃品1:是2:不是")
+  private Long isFlammables;
+
+  @ApiModelProperty(name = "is_knife", value = "是否为刀具:1:是2:不是")
+  private Long isKnife;
+
+  @ApiModelProperty(name = "is_bospicture", value = "图片是否上传到百度云1已上传2未上传")
+  private Long isBospicture;
+
+  @ApiModelProperty(name = "cont_sign", value = "图>片上传到百度云返回的唯一编码")
+  private String contSign;
+
+}

+ 3 - 0
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/service/product/StockInfoManager.java

@@ -25,5 +25,8 @@ public interface StockInfoManager extends BaseService<RaycosStockDao> {
 
     Long add(StockInfoDto stockInfoDto);
 
+    void updateInfo(StockInfoDto stockInfoDto);
+
+    void delete(Long id);
 }
 

+ 31 - 0
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/service/product/StockplusInfoManager.java

@@ -0,0 +1,31 @@
+package com.hys.app.raycoswebapi.service.product;
+
+import com.hys.app.framework.database.WebPage;
+import com.hys.app.framework.database.mybatisplus.base.BaseService;
+import com.hys.app.raycoswebapi.model.dao.product.RaycosStockDao;
+import com.hys.app.raycoswebapi.model.dao.product.RaycosStockplusDao;
+import com.hys.app.raycoswebapi.model.dto.product.StockInfoDto;
+import com.hys.app.raycoswebapi.model.dto.product.StockplusDto;
+
+/**
+ * stock表相关
+ *
+ * @author 崔晓冬
+ * @since 2024年8月9日12:19:19
+ */
+public interface StockplusInfoManager extends BaseService<RaycosStockplusDao> {
+    /**
+     * 分页列表
+     *
+     * @param queryParams 查询条件
+     * @return 分页数据
+     */
+    WebPage<RaycosStockplusDao> list(StockplusDto queryParams);
+
+    Long add(StockplusDto stockplusDto);
+
+    void updateInfo(StockplusDto stockplusDto);
+
+    void delete(Long id);
+}
+

+ 17 - 0
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/service/product/impl/StockInfoManagerImpl.java

@@ -1,9 +1,13 @@
 package com.hys.app.raycoswebapi.service.product.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.hys.app.framework.database.WebPage;
 import com.hys.app.framework.database.mybatisplus.base.BaseServiceImpl;
+import com.hys.app.framework.exception.ServiceException;
+import com.hys.app.framework.util.DateUtil;
 import com.hys.app.model.erp.dos.WarehouseEntryDO;
+import com.hys.app.model.erp.dos.WarehouseEntryProductDO;
 import com.hys.app.model.erp.dto.SaleChannelDTO;
 import com.hys.app.raycoswebapi.mapper.product.StockInfoMapper;
 import com.hys.app.raycoswebapi.model.dao.product.RaycosStockDao;
@@ -27,10 +31,23 @@ public class StockInfoManagerImpl extends BaseServiceImpl<StockInfoMapper, Rayco
     @Transactional(rollbackFor = Exception.class)
     public Long add(StockInfoDto stockInfoDto) {
         RaycosStockDao raycosStockDao = BeanUtil.copyProperties(stockInfoDto, RaycosStockDao.class);
+        raycosStockDao.setTimeCreated(DateUtil.getDateline());
         save(raycosStockDao);
         Long id = raycosStockDao.getId();
 
         return id;
     }
 
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void updateInfo(StockInfoDto stockInfoDto) {
+        RaycosStockDao raycosStockDao = BeanUtil.copyProperties(stockInfoDto, RaycosStockDao.class);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void delete(Long id) {
+        RaycosStockDao aDo = getById(id);
+        removeById(id);
+    }
 }

+ 51 - 0
raycos-web-api/src/main/java/com/hys/app/raycoswebapi/service/product/impl/StockplusInfoManagerImpl.java

@@ -0,0 +1,51 @@
+package com.hys.app.raycoswebapi.service.product.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.hys.app.framework.database.WebPage;
+import com.hys.app.framework.database.mybatisplus.base.BaseServiceImpl;
+import com.hys.app.framework.util.DateUtil;
+import com.hys.app.raycoswebapi.mapper.product.StockInfoMapper;
+import com.hys.app.raycoswebapi.mapper.product.StockplusInfoMapper;
+import com.hys.app.raycoswebapi.model.dao.product.RaycosStockDao;
+import com.hys.app.raycoswebapi.model.dao.product.RaycosStockplusDao;
+import com.hys.app.raycoswebapi.model.dto.product.StockInfoDto;
+import com.hys.app.raycoswebapi.model.dto.product.StockplusDto;
+import com.hys.app.raycoswebapi.service.product.StockInfoManager;
+import com.hys.app.raycoswebapi.service.product.StockplusInfoManager;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+@Service
+@AllArgsConstructor
+public class StockplusInfoManagerImpl extends BaseServiceImpl<StockplusInfoMapper, RaycosStockplusDao> implements StockplusInfoManager {
+
+    @Override
+    public WebPage<RaycosStockplusDao> list(StockplusDto queryParams) {
+        WebPage<RaycosStockplusDao> page = baseMapper.selectPage(queryParams);
+        return page;
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Long add(StockplusDto stockInfoDto) {
+        RaycosStockplusDao raycosStockplusDao = BeanUtil.copyProperties(stockInfoDto, RaycosStockplusDao.class);
+        save(raycosStockplusDao);
+        Long id = raycosStockplusDao.getId();
+
+        return id;
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void updateInfo(StockplusDto stockplusDto) {
+        RaycosStockplusDao raycosStockplusDao = BeanUtil.copyProperties(stockplusDto, RaycosStockplusDao.class);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void delete(Long id) {
+        RaycosStockplusDao aDo = getById(id);
+        removeById(id);
+    }
+}