Browse Source

仓库选择

master
han\hanst 9 months ago
parent
commit
68e048f57b
  1. 26
      src/main/java/com/gaotao/modules/warehouse/controller/WarehouseController.java
  2. 9
      src/main/java/com/gaotao/modules/warehouse/dao/WarehouseMapper.java
  3. 9
      src/main/java/com/gaotao/modules/warehouse/service/WarehouseService.java
  4. 6
      src/main/java/com/gaotao/modules/warehouse/service/impl/WarehouseServiceImpl.java
  5. 15
      src/main/resources/mapper/warehouse/WarehouseMapper.xml

26
src/main/java/com/gaotao/modules/warehouse/controller/WarehouseController.java

@ -3,9 +3,11 @@ package com.gaotao.modules.warehouse.controller;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.gaotao.common.utils.PageUtils; import com.gaotao.common.utils.PageUtils;
import com.gaotao.common.utils.R; import com.gaotao.common.utils.R;
import com.gaotao.modules.sys.entity.SysUserEntity;
import com.gaotao.modules.warehouse.entity.*; import com.gaotao.modules.warehouse.entity.*;
import com.gaotao.modules.warehouse.service.WarehouseService; import com.gaotao.modules.warehouse.service.WarehouseService;
import io.lettuce.core.ScriptOutputType; import io.lettuce.core.ScriptOutputType;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
@ -13,6 +15,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List; import java.util.List;
import java.util.Map;
@RequestMapping("/warehouse") @RequestMapping("/warehouse")
@RestController @RestController
@ -251,4 +254,27 @@ public class WarehouseController {
R r = warehouseService.transferInventoryStock(data); R r = warehouseService.transferInventoryStock(data);
return r; return r;
} }
/**
* 根据用户名和工厂获取授权的仓库列表
* @param params 包含site的参数
* @return 仓库列表
*/
@PostMapping("getUserAuthorizedWarehouses")
public R getUserAuthorizedWarehouses(@RequestBody Map<String, Object> params) {
try {
SysUserEntity sysUserEntity = (SysUserEntity) SecurityUtils.getSubject().getPrincipal();
String userName = sysUserEntity.getUsername();
String site = (String) params.get("site");
if (site == null || site.trim().isEmpty()) {
return R.error("工厂参数不能为空");
}
List<Map<String, Object>> warehouseList = warehouseService.getUserAuthorizedWarehouses(userName, site.trim());
return R.ok().put("data", warehouseList);
} catch (Exception e) {
return R.error("获取仓库列表失败");
}
}
} }

9
src/main/java/com/gaotao/modules/warehouse/dao/WarehouseMapper.java

@ -8,6 +8,7 @@ import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
import java.util.Map;
@Mapper @Mapper
public interface WarehouseMapper extends BaseMapper<InventoryStock> { public interface WarehouseMapper extends BaseMapper<InventoryStock> {
@ -44,4 +45,12 @@ public interface WarehouseMapper extends BaseMapper<InventoryStock> {
IPage<InventoryPart> getInventoryStockList(Page<InventoryPart> locationPage, @Param("params")InventoryPart data); IPage<InventoryPart> getInventoryStockList(Page<InventoryPart> locationPage, @Param("params")InventoryPart data);
IPage<InventoryStock> getInventoryStockManageList(Page<InventoryStock> page, @Param("params")InventoryStock data); IPage<InventoryStock> getInventoryStockManageList(Page<InventoryStock> page, @Param("params")InventoryStock data);
/**
* 根据用户名和工厂获取用户授权的仓库列表包含仓库名称
* @param userName 用户名
* @param site 工厂编码
* @return 仓库列表
*/
List<Map<String, Object>> getUserAuthorizedWarehouses(@Param("userName") String userName, @Param("site") String site);
} }

9
src/main/java/com/gaotao/modules/warehouse/service/WarehouseService.java

@ -6,6 +6,7 @@ import com.gaotao.common.utils.R;
import com.gaotao.modules.warehouse.entity.*; import com.gaotao.modules.warehouse.entity.*;
import java.util.List; import java.util.List;
import java.util.Map;
public interface WarehouseService { public interface WarehouseService {
List<Warehouse> getWarehouseList(Warehouse data); List<Warehouse> getWarehouseList(Warehouse data);
@ -45,4 +46,12 @@ public interface WarehouseService {
InventoryStock getInventoryStockDetail(InventoryStock data); InventoryStock getInventoryStockDetail(InventoryStock data);
R transferInventoryStock(java.util.Map<String, Object> data); R transferInventoryStock(java.util.Map<String, Object> data);
/**
* 根据用户名和工厂获取用户授权的仓库列表包含仓库名称
* @param userName 用户名
* @param site 工厂编码
* @return 仓库列表
*/
List<Map<String, Object>> getUserAuthorizedWarehouses(String userName, String site);
} }

6
src/main/java/com/gaotao/modules/warehouse/service/impl/WarehouseServiceImpl.java

@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
import java.util.Map;
@Service @Service
public class WarehouseServiceImpl implements WarehouseService { public class WarehouseServiceImpl implements WarehouseService {
@ -403,4 +404,9 @@ public class WarehouseServiceImpl implements WarehouseService {
} }
} }
@Override
public List<Map<String, Object>> getUserAuthorizedWarehouses(String userName, String site) {
return warehouseMapper.getUserAuthorizedWarehouses(userName, site);
}
} }

15
src/main/resources/mapper/warehouse/WarehouseMapper.xml

@ -318,4 +318,19 @@
</where> </where>
ORDER BY site, warehouse_id, part_no, batch_no, location_id ORDER BY site, warehouse_id, part_no, batch_no, location_id
</select> </select>
<!-- 根据用户名和工厂获取用户授权的仓库列表(包含仓库名称) -->
<select id="getUserAuthorizedWarehouses" resultType="java.util.Map">
SELECT
w.WareHouseID as warehouseid,
w.WareHouseName as warehousename,
w.WareHouseType as warehousetype,
w.active as active
FROM AccessWarehouse aw
LEFT JOIN warehouse w ON aw.warehouse_id = w.WareHouseID AND aw.site = w.site
WHERE aw.userid = #{userName}
AND aw.site = #{site}
AND w.Active = 'Y'
ORDER BY w.WareHouseID
</select>
</mapper> </mapper>
Loading…
Cancel
Save