diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/半盘禁用.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/半盘禁用.png new file mode 100644 index 0000000..cc7e7a1 --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/半盘禁用.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/半盘空闲.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/半盘空闲.png new file mode 100644 index 0000000..24a71eb --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/半盘空闲.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/半盘锁定.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/半盘锁定.png new file mode 100644 index 0000000..f194f89 --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/半盘锁定.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/整盘禁用.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/整盘禁用.png new file mode 100644 index 0000000..405af2e --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/整盘禁用.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/整盘空闲.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/整盘空闲.png new file mode 100644 index 0000000..81cc782 --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/整盘空闲.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/整盘锁定.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/整盘锁定.png new file mode 100644 index 0000000..5de1dc6 --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/整盘锁定.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空.png new file mode 100644 index 0000000..963d22b --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空柜禁用.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空柜禁用.png new file mode 100644 index 0000000..f2c5019 --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空柜禁用.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空柜空闲.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空柜空闲.png new file mode 100644 index 0000000..db1e5c4 --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空柜空闲.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空柜锁定.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空柜锁定.png new file mode 100644 index 0000000..e4acf03 --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空柜锁定.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空盘禁用.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空盘禁用.png new file mode 100644 index 0000000..cbf57da --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空盘禁用.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空盘空闲.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空盘空闲.png new file mode 100644 index 0000000..6292c16 --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空盘空闲.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空盘锁定.png b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空盘锁定.png new file mode 100644 index 0000000..0723711 --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/assets/icon/空盘锁定.png diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/ContainerPrintForm.vue b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/ContainerPrintForm.vue index 48bfa16..7cf885a 100644 --- a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/ContainerPrintForm.vue +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/ContainerPrintForm.vue @@ -12,10 +12,10 @@ <tbody > <tr style=" width:80px;height:60px;"> <td > - <barcode :value="source.code" :margin="0" :margin-bottom="20" :margin-top="10" :margin-left="10" :height="120" font-size="30"></barcode> + <barcode :value="source.code" :margin="15" :margin-bottom="20" :margin-top="40" :margin-left="0" :height="120" font-size="30"></barcode> </td> <td > - <barcode :value="source.code" :margin="0" :margin-bottom="20" :margin-top="10" :margin-left="10" :height="120" font-size="30"></barcode> + <barcode :value="source.code" :margin="15" :margin-bottom="20" :margin-top="40" :margin-left="10" :height="120" font-size="30"></barcode> </td> </tr> </tbody> diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/LocationPrintForm.vue b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/LocationPrintForm.vue index 161a51a..c6e51d8 100644 --- a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/LocationPrintForm.vue +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/LocationPrintForm.vue @@ -12,10 +12,10 @@ <tbody > <tr style=" width:80px;height:60px;"> <td > - <barcode :value="source.code" :margin="0" :margin-bottom="20" :margin-top="10" :margin-left="10" :height="120" font-size="30"></barcode> + <barcode :value="source.code" :margin="15" :margin-bottom="20" :margin-top="40" :margin-left="0" :height="120" font-size="30"></barcode> </td> <td > - <barcode :value="source.code" :margin="0" :margin-bottom="20" :margin-top="10" :margin-left="10" :height="120" font-size="30"></barcode> + <barcode :value="source.code" :margin="15" :margin-bottom="20" :margin-top="40" :margin-left="0" :height="120" font-size="30"></barcode> </td> </tr> </tbody> diff --git a/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/monitor/locationstatus.vue b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/monitor/locationstatus.vue new file mode 100644 index 0000000..cd1a94b --- /dev/null +++ b/jeecg-boot-master/ant-design-vue-jeecg/src/views/system/monitor/locationstatus.vue @@ -0,0 +1,154 @@ +<template> +<!-- <style>--> +<!-- #img_list li{--> +<!-- font-size: 10px;--> +<!-- /*width: 50px;*/--> +<!-- text-align: left;--> +<!-- margin: 5px 20px 5px 5px;--> +<!-- }--> +<!-- #img_list li img{--> +<!-- height: 35px;--> +<!-- width: 35px;--> +<!-- }--> +<!-- #info_list{--> +<!-- width: 100%;--> +<!-- display:inline-block;--> +<!-- }--> +<!-- #info_list li{--> +<!-- margin:8px 3px 0 5px;--> +<!-- }--> +<!-- #info_list li span{--> +<!-- font-size: 12px;--> +<!-- display: inline-block;--> +<!-- /*width: 65px;*/--> +<!-- text-align: center;--> +<!-- }--> +<!-- .grid{--> +<!-- display: inline-block;--> +<!-- width: 50px;--> +<!-- height: 50px;--> +<!-- /*margin: 12px 6px;*/--> +<!-- margin-bottom: 6px;--> +<!-- background-size:cover;--> +<!-- /*background-image: url("../img/icon/空柜空闲.png");*/--> +<!-- }--> +<!-- #location span{--> +<!-- display: inline-block;--> +<!-- text-align: right;--> +<!-- width: 50px;--> +<!-- margin-right: 10px;--> +<!-- }--> +<!-- </style>--> + <div class="container-div"> + <div class="row"> + <div class="col-sm-12 select-info"> + <form id="container-form"> + <div class="select-list"> + <ul id="select_info"> + <li> + <select id="zoneCode" name="zoneCode" style="width: 100px"> + <option selected></option> + </select> + </li> + <li> + 第 + <select id="editable-num" name="num" style="width: 70px"> + </select> + </li> + <li> + <select id="editable-select" name="col" style="width: 70px"> + <option value="row" selected>行</option> + <option value="line">列</option> + <option value="layer">层</option> + </select> + </li> + <!-- <li>货主编码:--> + <!-- <input type="text" name="receiptCompanyCode" id="receiptCompanyCode">--> + <!-- </li>--> + <li> + <a class="btn btn-primary btn-rounded btn-sm" onclick="Search()"><i class="fa fa-search"></i> 搜索</a> + </li> + </ul> + </div> + </form> + </div> + <div class="col-sm-12 select-info"> + <form id="receiptHeader-form"> + <div class="select-list"> + <ul id="img_list" style=""> + <li> + 空柜空闲:<img src="~@/assets/icon/空柜空闲.png"> + </li> + <li> + 空盘空闲:<img src="~@/assets/icon/空盘空闲.png"> + </li> + <li> + 半盘空闲:<img src="~@/assets/icon/半盘空闲.png"> + </li> + <li> + 整盘空闲:<img src="~@/assets/icon/整盘空闲.png"> + </li> + <li> + 空柜锁定:<img src="~@/assets/icon/空柜锁定.png"> + </li> + <li> + 空盘锁定:<img src="~@/assets/icon/空盘锁定.png"> + </li> + <li> + 半盘锁定:<img src="~@/assets/icon/半盘锁定.png"> + </li> + <li> + 整盘锁定:<img src="~@/assets/icon/整盘锁定.png"> + </li> + <li> + 空柜禁用:<img src="~@/assets/icon/空柜禁用.png"> + </li> + <li> + 空盘禁用:<img src="~@/assets/icon/空盘禁用.png"> + </li> + <li> + 半盘禁用:<img src="~@/assets/icon/半盘禁用.png"> + </li> + <li> + 整盘禁用:<img src="~@/assets/icon/整盘禁用.png"> + </li> + <li><span style="font-size: 12px">库位统计情况:</span> + <input style="width: 400px; font-size: 12px" type="text" id="zone" disabled/> + </li> + </ul><br><br> + <ul id="info_list"> + <li><span>库位:</span><input type="text" id="code" disabled/></li> + <li><span>容器编码:</span><input type="text" id="containerCode" disabled/></li> + <li><span>物料信息:<select id="material" style="width: auto"><option>无</option></select></span></li> + <li> + <a class="btn btn-success btn-rounded btn-sm" onclick="checkLocationCode()" ><i class="fa fa-eye"></i> 出库查看</a> + </li> + </ul> + <!-- <ul>--> + <!-- <li style="float:left;margin-left: 40px"><button type="button" class="btn btn-sm btn-success" onclick="searchLocation()">查看库位</button></li>--> + <!-- <li style="float:left;margin-left: 20px"><button type="button" class="btn btn-sm btn-success" onclick="searchInventory()">查看库存</button></li>--> + <!-- </ul>--> + </div> + </form> + </div> + <div class="col-sm-12 select-info"> + <!--style="width: 100%;overflow-x: scroll;white-space:nowrap"--> + <div id="borderCol" style="overflow-y: scroll;white-space:nowrap"> + <div class="location" id="location"> + <!--<div class="grid"></div>--> + </div> + </div> + </div> + </div> + </div> +</template> + +<script> + export default { + name: 'locationstatus' + } +</script> + +<style scoped> + +</style> \ No newline at end of file diff --git a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/controller/LocationController.java b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/controller/LocationController.java index 37c5ae5..2544fa9 100644 --- a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/controller/LocationController.java +++ b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/controller/LocationController.java @@ -184,6 +184,23 @@ public class LocationController extends JeecgController<Location, ILocationServi return Result.OK("批量删除成功!"); } + + + /** + * 查询库位列表 + * @return + */ + @ApiOperation(value="库位监控-查询库位列表", notes="库位监控-查询库位列表") + @GetMapping(value = "/getAllLocation") + public Result getAllLocation(String type) { + if(StringUtils.isEmpty(type)) { + return Result.error("type不能为空"); + } + return Result.OK(locationService.getAllLocation(type)); + } + + + /** * 通过id查询 * diff --git a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/entity/LocationInfo.java b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/entity/LocationInfo.java new file mode 100644 index 0000000..e5ff7b4 --- /dev/null +++ b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/entity/LocationInfo.java @@ -0,0 +1,17 @@ +package org.jeecg.modules.wms.config.location.entity; + +import lombok.Data; + +/** + * + * @author Enzo Cotter + * @date 2019/10/25 + */ +@Data +public class LocationInfo { + private long maxRow; + private long minRow = 1; + private long maxLine; + private long maxLayer; + private long maxGrid; +} diff --git a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/mapper/LocationMapper.java b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/mapper/LocationMapper.java index 9c138a6..bdebe71 100644 --- a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/mapper/LocationMapper.java +++ b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/mapper/LocationMapper.java @@ -14,4 +14,9 @@ import org.jeecg.modules.wms.config.location.entity.Location; */ public interface LocationMapper extends BaseMapper<Location> { + Location getAllLocation(@Param("warehouseCode") String warehouseCode, @Param("type") String type); + + + int getFirstRowOfZone(@Param("warehouseCode") String warehouseCode, @Param("locationType") String locationType); + } diff --git a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/service/ILocationService.java b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/service/ILocationService.java index 0df9608..61e94a2 100644 --- a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/service/ILocationService.java +++ b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/service/ILocationService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.common.api.vo.Result; import org.jeecg.modules.wms.config.location.entity.BatchLocation; import org.jeecg.modules.wms.config.location.entity.Location; +import org.jeecg.modules.wms.config.location.entity.LocationInfo; import java.util.List; @@ -39,4 +40,6 @@ public interface ILocationService extends IService<Location> { boolean haveUncompleteTaskInNear(Location location); Result batchAdd(BatchLocation batchLocation); + + LocationInfo getAllLocation(String type); } diff --git a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/service/impl/LocationServiceImpl.java b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/service/impl/LocationServiceImpl.java index 29d7a68..572466c 100644 --- a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/service/impl/LocationServiceImpl.java +++ b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/location/service/impl/LocationServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import org.jeecg.common.api.vo.Result; import org.jeecg.modules.wms.config.location.entity.BatchLocation; import org.jeecg.modules.wms.config.location.entity.Location; +import org.jeecg.modules.wms.config.location.entity.LocationInfo; import org.jeecg.modules.wms.config.location.mapper.LocationMapper; import org.jeecg.modules.wms.config.location.service.ILocationService; import org.jeecg.modules.wms.config.locationType.entity.LocationType; @@ -42,6 +43,8 @@ public class LocationServiceImpl extends ServiceImpl<LocationMapper, Location> i private ILocationTypeService locationTypeService; @Resource private IZoneService zoneService; + @Resource + private LocationMapper locationMapper; @Override public Location getLocationByCode(String locationCode, String warehouseCode) { @@ -332,6 +335,22 @@ public class LocationServiceImpl extends ServiceImpl<LocationMapper, Location> i return Result.ok("批量增加库位成功"); } + @Override + public LocationInfo getAllLocation(String type) { + if (StringUtils.isNotEmpty(type)) { + Location location = locationMapper.getAllLocation("sysLoginModel.getWarehouseCode()", type); + LocationInfo locationInfo = new LocationInfo(); + locationInfo.setMaxRow(location.getRow()); + locationInfo.setMaxLine(location.getIcolumn()); + locationInfo.setMaxLayer(location.getLayer()); + locationInfo.setMaxGrid(location.getGrid()); + int minRow = locationMapper.getFirstRowOfZone("ShiroUtils.getWarehouseCode()", type); + locationInfo.setMinRow(minRow); + return locationInfo; + } + return null; + } + private boolean getOutSideCanMove(Location location) { Location locaiton2 = getInsideNear(location); if (locaiton2.getStatus().equals(QuantityConstant.STATUS_LOCATION_LOCK)) { diff --git a/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/monitor/locationstatus/controller/LocationStatusController.java b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/monitor/locationstatus/controller/LocationStatusController.java new file mode 100644 index 0000000..b4bab32 --- /dev/null +++ b/jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/monitor/locationstatus/controller/LocationStatusController.java @@ -0,0 +1,25 @@ +package org.jeecg.modules.wms.monitor.locationstatus.controller; + +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.jeecg.modules.wms.framework.controller.BaseController; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +/** + * Created by Enzo Cotter on 2019/10/25. + */ +@Controller +@RequestMapping("/monitor/locationstatus") +public class LocationStatusController extends BaseController { + + private String prefix = "monitor/locationstatus"; + + @RequiresPermissions("locationstatus:bill:view") + @GetMapping() + public String locationStatus() + { + return prefix + "/locationstatus"; + } + +}