关于推荐库位 java前端与SQL语句后面的结合
-----------------------------------------------------------------------------------
select a1.id,a1.name,a1.sort,a1.type,a3.value - (a1.nums/a2.nums)*100 as nums,a3.value,a1.nums,a2.nums,a1.packageNum
from (
select swr.id,swr.name,swr.sort,srscm.area_id as type,count(swl.id) as nums,ifnull(sum(swl.package_num),0) packageNum
from sys_warehouse_roadway swr
join sys_warehouse_location swl on swr.id = swl.roadway_id
and swl.status = 1 and swl.delete_status = 0 and swl.package_num > 0
join sys_recommend_store_code_mapping srscm on srscm.area_id = swr.area_id
where swr.status = 1 AND swr.delete_status = 0 and swr.name='A10'
GROUP BY swr.id,swr.name,swr.sort,srscm.area_id
) a1,
(
select swr.id,swr.name,swr.sort,srscm.area_id as type,count(1) as nums
from sys_warehouse_roadway swr
left join sys_warehouse_location swl on swr.id = swl.roadway_id and swl.status = 1 and swl.delete_status = 0
left join sys_recommend_store_code_mapping srscm on srscm.area_id = swr.area_id
where swr.status = 1 AND swr.delete_status = 0 and swr.name='A10'
GROUP BY swr.id,swr.name,swr.sort,srscm.area_id
) a2,
(
select * from sys_key_value skv where skv.key = 'RecommandStorePercent'
) a3
where a1.id = a2.id
-- -------------------------------------------------------------------------------------
select swr.id,swr.name,swr.sort as type,count(swl.id) as nums,ifnull(sum(swl.package_num),0) packageNum
from sys_warehouse_roadway swr
left join sys_warehouse_location swl on swr.id = swl.roadway_id
and swl.status = 1 and swl.delete_status = 0 and swl.package_num > 0
where swr.status = 1 AND swr.delete_status = 0
GROUP BY swr.id,swr.name,swr.sort
select swr.id,swr.name,swr.sort,count(1) as nums,count(swl.id) as nums2
from sys_warehouse_roadway swr
left join sys_warehouse_location swl on swr.id = swl.roadway_id and swl.status = 1 and swl.delete_status = 0
where swr.status = 1 AND swr.delete_status = 0
GROUP BY swr.id,swr.name,swr.sort
-- --巷道是通过(包裹类型 国家等决定选取那个巷道).
-- --说明:1.首先统计巷道下包裹库存率在80%以下的巷道 (swl.package_num>0 查询此巷道下的有包裹的库位(swl.package_num>0)数/ 此巷道下的总库位数)
---选择库位:(在库位表 根据库位包裹数的升序 查到最少包裹巷道的库位)
select swl.id,swl.name from sys_warehouse_location swl
where swl.roadway_id = #{roadWayId} and swl.status = 1
ORDER BY swl.package_num
LIMIT 1
-------------------------------------------------------------------------在JaVA 里面的写法
// 过滤巷道是否饱和
List<RoadWayInfoRecommendDTO> baoheList = roadWayInfoList.stream().filter(a -> a.getNums() > 0).collect(Collectors.toList());
//记录日志
logDTO.setRequest("a.getNums() > 0,过滤掉已经饱和的巷道");
logDTO.setResponse("过滤已经饱和的巷道" + JSONObject.toJSON(baoheList));
recommendStoreCodeManager.insertRecommendStoreCodeLog(logDTO);
List<RoadWayInfoRecommendDTO> serchList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(baoheList)) {
// 未饱和
ListUtils.sort(baoheList, "nums", true);
ListUtils.sort(baoheList, "sort", true);
serchList = baoheList;
} else {
// 已饱和
ListUtils.sort(roadWayInfoList, "packageNum", true);
serchList = roadWayInfoList;
}
long roadwayId = serchList.get(0).getId();
// 获取开始时间
startTime = System.currentTimeMillis();
LocationInfoRecommendDTO randomLocationInfo = recommendDAO.getRandomLocation(roadwayId, 0);
// 获取结束时间
endTime = System.currentTimeMillis();
runTime = (endTime - startTime) + "ms";
logDTO.setRequest("首单根据巷道获取任意库位查询时间");
logDTO.setResponse(runTime);
recommendStoreCodeManager.insertRecommendStoreCodeLog(logDTO);
if (randomLocationInfo == null) {
message = "根据巷道" + roadwayId + "未获取到任意库位";
logDTO.setRequest("{\"roadwayId\":\"" + roadwayId + "\"}");
logDTO.setResponse(message);
recommendStoreCodeManager.insertRecommendStoreCodeLog(logDTO);
response.setSucess(false);
response.setMessage(message);
response.setRecommendStoreCode("");
return response;
}
//记录日志
logDTO.setRequest("{\"roadwayId\":\"" + roadwayId + "\"}");
logDTO.setResponse("根据巷道,获取库位信息" + JSONObject.toJSON(randomLocationInfo));
recommendStoreCodeManager.insertRecommendStoreCodeLog(logDTO);
response.setSucess(true);
response.setRecommendStoreCode(randomLocationInfo.getName());
response.setMessage("");
return response;
-----------------------------------------------------------------
关于推荐库位 java前端与SQL语句后面的结合的更多相关文章
- java中的sql语句中如果有like怎么写
我先是在SQL server中写了如下语句: 这样是顺利执行的,可是我把这句话复制到Java代码中打出来却报错了, 刚开始我还以为是前端没有传回来值,待我一句一句打印发现,它提示我rs没有next.到 ...
- java中写sql语句的小小细节
来源于:http://www.cnblogs.com/reine98/p/6180472.html 看如下一条sql语句 1 2 3 4 5 6 String sql="SELECT * F ...
- Java 实现对Sql语句解析
原文地址:http://www.cnblogs.com/zcftech/archive/2013/06/10/3131286.html 最近要实现一个简易的数据库系统,除了要考虑如何高效的存储和访问数 ...
- java/jsp执行sql语句的方式
首先给出sql驱动包 引入sql包 import java.sql.*;//java <%@ page import="java.sql.*"%>//jsp 连接mys ...
- java动态拼接sql语句并且执行时给sql语句的参数赋值
问题 在这里举一个例子,比如我要做一个多条件模糊查询,用户输入的时候有可能输入一个条件,也有可能输入两个条件,这时执行查询的sql语句就不确定了,但可以用动态拼接sql语句来解决这个问题. 解决方法 ...
- mysql 遍历所有的库并根据表和sql语句备份
建库.用户语句 create database test_hb; create user ' test_hb'@'%' identified by '123456'; grant all privil ...
- JAVA程序中SQL语句无法传递中文参数
vi /etc/my.cnf [mysqld]# The default character set that will be used when a new schema or table is# ...
- 查看SQL语句的真实执行计划
DBMS_XPLAN包中display_cursor函数不同于display函数,display_cursor用于显示SQL语句的真实的执行计划,在大多数情况下,显示真实的执行计划有助于更好的分析SQ ...
- SQL语句备份和还原数据库
1,使用SQL最简单备份,还原数据库 1 /* 备份 */ 2 backup database Test to disk='D:/Test.bak' 3 /* 还原 */ 4 restore data ...
随机推荐
- Theme Section---hdu4763(kmp, Next数组的运用)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4763 题意就是求s串中满足EAEBE格式的E的最大长度:我们可以枚举前缀和后缀的所有匹配(k)看是否在 ...
- yum源的报错排除
echo "http://vault.centos.org/6.5/os/x86_64/" > /var/cache/yum/x86_64/6/base/mirrorlist ...
- CheckStyle——检查编码格式等是否符合规范
CheckStyle 一.checkstyle简介 checkstyle是idea中的一个插件,可以很方便的帮我们检查java代码中的格式错误,它能够自动化代码规范检查过程,从而使得开发人员从这项重要 ...
- sap 动态字段的使用
1.sap中的动态字段其实类似c#里面的指针,都是指向的地址. 只是写法不同,sap 中的field-symbols就是类似指针. , b TYPE i. FIELD-SYMBOLS <fs&g ...
- macOS 上安装 PECL
一.简介 PECL(The PHP Extension Community Library)是 PHP 扩展的存储库,为 PHP 所有的扩展提供提供托管和下载服务. 通过 PEAR(PHP Exten ...
- 编写项目readme文件
1.使用markdown 编写项目说明,markdown 编辑器推荐使用 小书匠 2.在当前项目根目录下使用cmd中的tree 命令 生成项目结构文件到指定的txt文件中,具体命令为:tree d: ...
- Angular 笔记系列(二)数据绑定
数据绑定这块儿没啥说的,简单两个例子带过了. Hello World: <!DOCTYPE html> <html ng-app> <head> <title ...
- qqwry.dat输出乱码问题及maven打包后资源文件大小不一致的问题
使用qqwry.dat进行IP地理位置查询时,遇到一个问题即在本地测试时查询纯真库时正常,没有任何问题,但是打包传到服务器上便出现了乱码问题. 1.首先排除服务器的字符集编码的影响 使用如下命令验证了 ...
- webpack.dev.conf.js详解
转载自:https://www.cnblogs.com/ye-hcj/p/7087205.html webpack.dev.conf.js详解 //引入当前目录下的utils.js文件模块var ut ...
- Connecting to a Remote Serial Port over TCP/IP
https://www.acmesystems.it/socat This article illustrates how to realize a lan to serial gateway Rem ...