Browse Source

扫描商品库位标签详情页

master
fanzongzhe 10 months ago
parent
commit
8b46eeff95
  1. 7
      anrui-gateway/src/main/resources/application.yml
  2. 49
      yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsH5Rest.java
  3. 1
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java
  4. 10
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.java
  5. 49
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml
  6. 60
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java
  7. 26
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsListTagH5Vo.java
  8. 42
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsTagH5Vo.java
  9. 33
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/HouseRackH5Vo.java
  10. 38
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/HouseRackListVo.java

7
anrui-gateway/src/main/resources/application.yml

@ -135,6 +135,11 @@ spring:
- StripPrefix=1
ignore:
whites:
- /wms/apiadmin/WmsH5/house #扫描库位标签详情页
- /wms/apiadmin/WmsH5/goods #扫描商品标签详情页
- /portal/v1/regions/treeList
- /portal/v1/sysuser/reGetPwd #忘记密码
- /portal/v1/sysuser/login #pc端登录
@ -190,6 +195,8 @@ ignore:
- /portal/v1/appuser/updateAppId #解绑用户的appId
whitesTwo: #包含所有
###swagger相关开始
- /doc.html

49
yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsH5Rest.java

@ -0,0 +1,49 @@
package com.yxt.wms.apiadmin.inventroy;
import com.yxt.common.core.result.ResultBean;
import com.yxt.wms.biz.inventory.wmsgoodstag.app.AppTagInit;
import com.yxt.wms.biz.inventory.wmsinventory.WmsInventoryService;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsTagH5Vo;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackH5Vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* @author Fan
* @description
* @date 2024/6/26 8:52
*/
@Api(tags = "扫描标签")
@RestController
@RequestMapping("/apiadmin/WmsH5")
public class WmsH5Rest {
@Autowired
private WmsInventoryService wmsInventoryService;
@GetMapping("house")
@ApiOperation("扫描库位标签看详情")
ResultBean<HouseRackH5Vo> scanHouseTag(@RequestParam("sid") String sid) {
ResultBean<HouseRackH5Vo> rb = ResultBean.fireFail();
HouseRackH5Vo vo = wmsInventoryService.scanHouseTag(sid);
if (null == vo) {
return rb.fail();
}
return rb.success().setData(vo);
}
@GetMapping("goods")
@ApiOperation("扫描商品标签看详情")
ResultBean<GoodsTagH5Vo> scanGoodsTag(@RequestParam("sid") String sid) {
ResultBean<GoodsTagH5Vo> rb = ResultBean.fireFail();
GoodsTagH5Vo vo = wmsInventoryService.scanGoodsTag(sid);
if (null == vo) {
return rb.fail();
}
return rb.success().setData(vo);
}
}

1
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java

@ -73,6 +73,7 @@ public class WmsGoodsTagService extends MybatisBaseService<WmsGoodsTagMapper, Wm
}
//ToDo:添加查询条件
// qw.eq("a.printState", 0);
qw.orderByDesc("a.id");
IPage<WmsReceiptBill> page = PagerUtil.queryToPage(pagerQuery);
IPage<GoodsTagListVo> pagging = baseMapper.goodsList(page, qw);
MyPagerVo<GoodsTagListVo> p = MyPagerUtil.pageToVo(pagging, null);

10
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.java

@ -4,6 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsListTagH5Vo;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsTagH5Vo;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackH5Vo;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackListVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -52,4 +56,10 @@ public interface WmsInventoryMapper extends BaseMapper<WmsInventory> {
IPage<WmsInventoryHandleSelectList> handleGoodsListPage(IPage<WmsInventory> page, @Param(Constants.WRAPPER) QueryWrapper<WmsInventory> qw);
List<WmsInventory> getListByGoodsID(@Param("goodsID") String goodsID);
List<HouseRackListVo> selGoodsListForScanRackTag(@Param("houseRackSid") String houseRackSid);
GoodsTagH5Vo selGoodsH5Vo(@Param("goodsID") String goodsID);
List<GoodsListTagH5Vo> selGoodsListForScanGoodsTag(@Param("goodsID") String goodsID);
}

49
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml

@ -293,4 +293,53 @@
<select id="getListByGoodsID" resultType="com.yxt.wms.biz.inventory.wmsinventory.WmsInventory">
select * from wms_inventory wi where wi.goodsID =#{goodsID} and wi.count > 0
</select>
<select id="selGoodsListForScanRackTag"
resultType="com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackListVo">
SELECT
wi.goodsID,
b.supplierName provider,
wi.goodsSpuName goodsName,
wi.goodsSkuCode numId,
wi.count num,
CONCAT( ( date_format ( wi.firstInDate, '%Y-%m-%d' )), ' (库龄)',( DATEDIFF( NOW(), wi.firstInDate )), '天' ) inboundTime
FROM
wms_inventory AS wi
LEFT JOIN wms_goods_tag AS t ON wi.goodsID = t.goodsID
LEFT JOIN wms_receipt_bill AS b ON t.billSid = b.sid
WHERE
wi.warehouseRackSid = #{houseRackSid}
</select>
<select id="selGoodsH5Vo" resultType="com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsTagH5Vo">
SELECT
wi.goodsID,
b.supplierName provider,
wi.goodsSpuName goodsName,
wi.goodsSkuCode numId,
wi.unit,
wi.goodsSkuOwnSpec,
CONCAT( ( date_format ( wi.firstInDate, '%Y-%m-%d' )), ' (库龄)',( DATEDIFF( NOW(), wi.firstInDate )), '天' ) inboundTime
FROM
wms_inventory AS wi
LEFT JOIN wms_goods_tag AS t ON wi.goodsID = t.goodsID
LEFT JOIN wms_receipt_bill AS b ON t.billSid = b.sid
WHERE
wi.goodsID = #{goodsID}
ORDER BY
wi.firstInDate ASC
LIMIT 1
</select>
<select id="selGoodsListForScanGoodsTag"
resultType="com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsListTagH5Vo">
SELECT
wi.count num,
r.rackCode houseAddress,
CONCAT( i.warehouseName, '-', a.areaName ) houseName
FROM
wms_inventory AS wi
LEFT JOIN wms_warehouse_info AS i ON wi.warehouseSid = i.sid
LEFT JOIN wms_warehouse_rack AS r ON wi.warehouseRackSid = r.sid
LEFT JOIN wms_warehouse_area AS a ON r.locationSid = a.sid
WHERE
wi.goodsID = #{goodsID}
</select>
</mapper>

60
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java

@ -10,6 +10,12 @@ import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.biz.base.wmswarehouserack.WmsHouseInfoVo;
import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackService;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsListTagH5Vo;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsTagH5Vo;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackH5Vo;
import com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackListVo;
import com.yxt.wms.biz.inventory.wmsinventorybill.WmsInventoryBill;
import com.yxt.wms.biz.inventory.wmsinventorybill.WmsInventoryBillService;
import com.yxt.wms.feign.base.basegoodssku.BaseGoodsSkuDetailsVo;
@ -39,6 +45,9 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private WmsWarehouseRackService wmsWarehouseRackService;
public PagerVo<WmsInventoryVo> listPage(PagerQuery<WmsInventoryQuery> pq) {
WmsInventoryQuery query = pq.getParams();
QueryWrapper<WmsInventory> qw = new QueryWrapper<>();
@ -330,7 +339,7 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(0)).getData();
useOrgSid = sysOrganization.getSid();
}
qw.eq("v.useOrgSid",useOrgSid);
qw.eq("v.useOrgSid", useOrgSid);
}
IPage<WmsInventory> page = PagerUtil.queryToPage(pq);
IPage<WmsInventoryPackageVo> pagging = baseMapper.getPackageGoodsVo(page, qw);
@ -502,4 +511,53 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
List<WmsInventory> list = baseMapper.getListByGoodsID(goodsID);
return rb.setData(list);
}
//---------------------app扫描标签二维码-------------------------
/**
* 扫描库位标签查看详情
*
* @param sid
* @return
*/
public HouseRackH5Vo scanHouseTag(String sid) {
HouseRackH5Vo vo = new HouseRackH5Vo();
String[] split = sid.split("#");
String houseRackSid = split[0];
WmsHouseInfoVo infoVo = wmsWarehouseRackService.selHouseInfoByFullCode(houseRackSid).getData();
String houseName = "";
String areaName = "";
String rackName = "";
if (null != infoVo) {
if (StringUtils.isNotBlank(infoVo.getWarehouseName())) {
houseName = infoVo.getWarehouseName();
}
if (StringUtils.isNotBlank(infoVo.getWareAreaName())) {
areaName = infoVo.getWareAreaName();
}
if (StringUtils.isNotBlank(infoVo.getWarehouseRackName())) {
rackName = infoVo.getWarehouseRackName();
}
vo.setHouseName(houseName + "-" + areaName + "-" + rackName);
if (StringUtils.isNotBlank(infoVo.getWarehouseRackCode())) {
vo.setHouseAddress(infoVo.getWarehouseRackCode());
}
} else {
return null;
}
List<HouseRackListVo> list = baseMapper.selGoodsListForScanRackTag(houseRackSid);
if (!list.isEmpty()) {
vo.setList(list);
}
return vo;
}
public GoodsTagH5Vo scanGoodsTag(String sid) {
GoodsTagH5Vo vo = baseMapper.selGoodsH5Vo(sid);
List<GoodsListTagH5Vo> list = baseMapper.selGoodsListForScanGoodsTag(sid);
if (!list.isEmpty()) {
vo.setList(list);
}
return vo;
}
}

26
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsListTagH5Vo.java

@ -0,0 +1,26 @@
package com.yxt.wms.biz.inventory.wmsinventory.appH5;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/6/26 10:40
*/
@Data
public class GoodsListTagH5Vo {
/**
* 库位编码
*/
private String houseAddress;
/**
* 仓库+库区
*/
private String houseName;
/**
* 商品数量
*/
private String num;
}

42
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsTagH5Vo.java

@ -0,0 +1,42 @@
package com.yxt.wms.biz.inventory.wmsinventory.appH5;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author Fan
* @description
* @date 2024/6/26 10:40
*/
@Data
public class GoodsTagH5Vo {
/**
* 商品名称
*/
private String goodsName;
/**
* 规格
*/
private String goodsSkuOwnSpec;
/**
* 首次入库日期
*/
private String inboundTime;
/**
* 图号
*/
private String numId;
/**
* 供应商
*/
private String provider;
/**
* 计量单位
*/
private String unit;
private List<GoodsListTagH5Vo> list;
}

33
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/HouseRackH5Vo.java

@ -0,0 +1,33 @@
package com.yxt.wms.biz.inventory.wmsinventory.appH5;
import com.yxt.wms.biz.inventory.wmsgoodstag.app.ListElement;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author Fan
* @description
* @date 2024/6/26 8:54
*/
@Data
public class HouseRackH5Vo {
/**
* 1-2-50
*/
private String houseAddress;
/**
* 库区名+库位名
*/
private String houseName;
@ApiModelProperty("列表")
public List<HouseRackListVo> list;
}

38
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/HouseRackListVo.java

@ -0,0 +1,38 @@
package com.yxt.wms.biz.inventory.wmsinventory.appH5;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/6/26 10:12
*/
@Data
public class HouseRackListVo {
/**
* 商品id
*/
private String goodsID;
/**
* 商品名称
*/
private String goodsName;
/**
* 首次入库日期
*/
private String inboundTime;
/**
* 商品数量
*/
private String num;
/**
* 图号
*/
private String numId;
/**
* 供应商
*/
private String provider;
}
Loading…
Cancel
Save