diff --git a/wms-vue/src/components/duochaxun/Pandianmingxi.vue b/wms-vue/src/components/duochaxun/Pandianmingxi.vue new file mode 100644 index 0000000..628d05f --- /dev/null +++ b/wms-vue/src/components/duochaxun/Pandianmingxi.vue @@ -0,0 +1,761 @@ + + + + + diff --git a/wms-vue/src/components/duochaxun/Xuliehao.vue b/wms-vue/src/components/duochaxun/Xuliehao.vue new file mode 100644 index 0000000..5f034f5 --- /dev/null +++ b/wms-vue/src/components/duochaxun/Xuliehao.vue @@ -0,0 +1,540 @@ + + + + + diff --git a/wms-vue/src/router/router.js b/wms-vue/src/router/router.js index 0ca066b..450ef28 100644 --- a/wms-vue/src/router/router.js +++ b/wms-vue/src/router/router.js @@ -22,7 +22,7 @@ const routes=[ meta:{ title:'首页' }, - component: () => import('../components/Login') + component: () => import('../components/duochaxun/Pandianmingxi') }, { path:'/Zhengliqingdan', @@ -68,10 +68,26 @@ const routes=[ path:'/Liaoxiangjiankong', name:'Liaoxiangjiankong', meta:{ - title:'' + title:'料箱监控' }, component: () => import('@/components/duochaxun/Liaoxiangjiankong.vue') }, + { + path:'/Pandianmingxi', + name:'Pandianmingxi', + meta:{ + title:'盘点明细查询' + }, + component: () => import('@/components/duochaxun/Pandianmingxi.vue') + }, + { + path:'/Xuliehao', + name:'Xuliehao', + meta:{ + title:'序列号库存清点' + }, + component: () => import('@/components/duochaxun/Xuliehao.vue') + }, ] } diff --git a/wms/src/main/java/com/yc/wms/bean/Pandianming.java b/wms/src/main/java/com/yc/wms/bean/Pandianming.java new file mode 100644 index 0000000..332f5f8 --- /dev/null +++ b/wms/src/main/java/com/yc/wms/bean/Pandianming.java @@ -0,0 +1,6 @@ +package com.yc.wms.bean; + +public class Pandianming { + // + public String code; +} diff --git a/wms/src/main/java/com/yc/wms/bean/Xuliehao.java b/wms/src/main/java/com/yc/wms/bean/Xuliehao.java new file mode 100644 index 0000000..1c8ff45 --- /dev/null +++ b/wms/src/main/java/com/yc/wms/bean/Xuliehao.java @@ -0,0 +1,5 @@ +package com.yc.wms.bean; + +public class Xuliehao { + public String code; +} diff --git a/wms/src/main/java/com/yc/wms/controller/PandianmingxiController.java b/wms/src/main/java/com/yc/wms/controller/PandianmingxiController.java new file mode 100644 index 0000000..01c6c47 --- /dev/null +++ b/wms/src/main/java/com/yc/wms/controller/PandianmingxiController.java @@ -0,0 +1,38 @@ +package com.yc.wms.controller; + +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; +import com.yc.wms.bean.Pandianming; +import com.yc.wms.service.Kucunrizhi; +import com.yc.wms.service.Pandianmingxi; +import com.yc.wms.until.QueryPageUtil; +import com.yc.wms.until.Result; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@Slf4j +@RequestMapping("/Pandianmingxi") +public class PandianmingxiController { + + @Autowired + private Pandianmingxi pandianmingxi; + + @PostMapping("/queryPan") + public Result queryUser(@RequestBody String json) { + QueryPageUtil query =new QueryPageUtil(); + JSONObject jsonObject= JSONUtil.parseObj(json); + query.setPageSize((int)jsonObject.get("pageSize")); + query.setPageNum((int)jsonObject.get("pageNum")); + + JSONObject param= (JSONObject)jsonObject.get("param"); + + Pandianming p = JSONUtil.toBean(param.toString(), Pandianming.class); + + return pandianmingxi.QueryJson(query,p); + } +} diff --git a/wms/src/main/java/com/yc/wms/controller/UserController.java b/wms/src/main/java/com/yc/wms/controller/UserController.java index ec923b8..5fd2322 100644 --- a/wms/src/main/java/com/yc/wms/controller/UserController.java +++ b/wms/src/main/java/com/yc/wms/controller/UserController.java @@ -48,7 +48,7 @@ public class UserController { // return result; JSONArray array=new JSONArray(); JSONObject data=new JSONObject(); - int menuCount=6; + int menuCount=8; for (int i=1;i<=menuCount;i++){ JSONObject menu=new JSONObject(); menu.put("id",i); @@ -77,6 +77,14 @@ public class UserController { menu.put("menuName", "料箱监控"); menu.put("menuComponent","/Liaoxiangjiankong"); menu.put("menuClick","Liaoxiangjiankong"); + }else if(i==7) { + menu.put("menuName", "盘点明细查询"); + menu.put("menuComponent","/Pandianmingxi"); + menu.put("menuClick","Pandianmingxi"); + }else if(i==8) { + menu.put("menuName", "序列号库存清点"); + menu.put("menuComponent","/Xuliehao"); + menu.put("menuClick","Xuliehao"); } menu.put("menuLevel",i); menu.put("menuParentCode",i); diff --git a/wms/src/main/java/com/yc/wms/controller/XuliehaoqingdanController.java b/wms/src/main/java/com/yc/wms/controller/XuliehaoqingdanController.java new file mode 100644 index 0000000..e58a0ad --- /dev/null +++ b/wms/src/main/java/com/yc/wms/controller/XuliehaoqingdanController.java @@ -0,0 +1,39 @@ +package com.yc.wms.controller; + +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; +import com.yc.wms.bean.Pandianming; +import com.yc.wms.bean.Xuliehao; +import com.yc.wms.service.Pandianmingxi; +import com.yc.wms.service.Xuliehaoqingdan; +import com.yc.wms.until.QueryPageUtil; +import com.yc.wms.until.Result; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@Slf4j +@RequestMapping("/Xuliehaoqingdan") +public class XuliehaoqingdanController { + + @Autowired + private Xuliehaoqingdan xuliehaoqingdan; + + @PostMapping("/queryXu") + public Result queryUser(@RequestBody String json) { + QueryPageUtil query =new QueryPageUtil(); + JSONObject jsonObject= JSONUtil.parseObj(json); + query.setPageSize((int)jsonObject.get("pageSize")); + query.setPageNum((int)jsonObject.get("pageNum")); + + JSONObject param= (JSONObject)jsonObject.get("param"); + + Xuliehao x = JSONUtil.toBean(param.toString(), Xuliehao.class); + + return xuliehaoqingdan.QueryJson(query,x); + } +} diff --git a/wms/src/main/java/com/yc/wms/service/Pandianmingxi.java b/wms/src/main/java/com/yc/wms/service/Pandianmingxi.java new file mode 100644 index 0000000..6d19493 --- /dev/null +++ b/wms/src/main/java/com/yc/wms/service/Pandianmingxi.java @@ -0,0 +1,11 @@ +package com.yc.wms.service; + +import com.yc.wms.bean.Pandianming; +import com.yc.wms.until.QueryPageUtil; +import com.yc.wms.until.Result; + +public interface Pandianmingxi { + + // 条件查询加分页 + Result QueryJson(QueryPageUtil query, Pandianming pandianming); +} diff --git a/wms/src/main/java/com/yc/wms/service/Xuliehaoqingdan.java b/wms/src/main/java/com/yc/wms/service/Xuliehaoqingdan.java new file mode 100644 index 0000000..c0b607d --- /dev/null +++ b/wms/src/main/java/com/yc/wms/service/Xuliehaoqingdan.java @@ -0,0 +1,12 @@ +package com.yc.wms.service; + +import com.yc.wms.bean.Pandianming; +import com.yc.wms.bean.Xuliehao; +import com.yc.wms.until.QueryPageUtil; +import com.yc.wms.until.Result; + +public interface Xuliehaoqingdan { + + // 条件查询加分页 + Result QueryJson(QueryPageUtil query, Xuliehao xuliehao); +} diff --git a/wms/src/main/java/com/yc/wms/service/impl/JianhuojiemianImpl.java b/wms/src/main/java/com/yc/wms/service/impl/JianhuojiemianImpl.java index 777d7f5..6953040 100644 --- a/wms/src/main/java/com/yc/wms/service/impl/JianhuojiemianImpl.java +++ b/wms/src/main/java/com/yc/wms/service/impl/JianhuojiemianImpl.java @@ -91,7 +91,7 @@ public class JianhuojiemianImpl implements Jianhuojiemian { //SAP类型 if(jianhuojiemian.sourceType!=null){ if(!jianhuojiemian.sourceType.trim().equals("")){ - sql+=" and item.name like "+"'%"+jianhuojiemian.sourceType.trim()+"%'"; + sql+=" and pt.sourceType like "+"'%"+jianhuojiemian.sourceType.trim()+"%'"; } } diff --git a/wms/src/main/java/com/yc/wms/service/impl/PandianmingxiImpl.java b/wms/src/main/java/com/yc/wms/service/impl/PandianmingxiImpl.java new file mode 100644 index 0000000..af3cd20 --- /dev/null +++ b/wms/src/main/java/com/yc/wms/service/impl/PandianmingxiImpl.java @@ -0,0 +1,64 @@ +package com.yc.wms.service.impl; + +import com.yc.wms.bean.Liaoxiangjiankong; +import com.yc.wms.bean.Pandianming; +import com.yc.wms.service.Pandianmingxi; +import com.yc.wms.until.QueryPageUtil; +import com.yc.wms.until.Result; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; +import org.springframework.stereotype.Service; + +import java.text.SimpleDateFormat; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service +@Slf4j +public class PandianmingxiImpl implements Pandianmingxi { + + @Autowired + private NamedParameterJdbcTemplate jdbcTemplate; + + @Override + public Result QueryJson(QueryPageUtil query, Pandianming pandianming) { + + int pageNum = query.getPageNum();//当前页 + int pageSize = query.getPageSize();//条数 + + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + + String sql="select Row_number() OVER(ORDER BY cr.id) as Row_Num, cr.id,cp.CODE cp_code,cr.count_Code,\n" + + "i.code i_code,i.NAME i_name,i.UNIT,cr.QUANTITY ,\n" + + "cr.COUNT_QUANTITY ,cr.DELTA_QUANTITY ,lc.code lc_code,\n" + + "z.NAME z_name,cr.targetArea ,w1.NAME w1_name,w.NAME w_name,\n" + + "cr.barCode ,ik.PROP_C1 ,ik.PROP_D2 ,ik.PROP_C2 ,\n" + + "ik.PROP_C3 ,ik.PROP_C5 ,ik.PROP_C9 ,cr.issued_Date ,\n" + + "cr.Open_Date ,\n" + + "cr.end_Date ,\n" + + "case WHEN cr.DELTA_QUANTITY =0 then 0 else 1 end as sfcy ,cr.NEED_COUNT \n" + + " from COUNT_RECORD cr\n" + + " left join COUNT_PLAN cp on cp.id=cr.COUNT_PLAN_ID\n" + + " left join LOCATION lc on lc.id=cr.LOCATION_ID\n" + + " left join zone z on z.id=lc.ZONE_ID\n" + + " left join worker w on w.id=cr.WORKER_ID\n" + + " left join worker w1 on w1.id=cr.WORKER1_ID\n" + + " left join ITEM_KEY ik on ik.id=cr.ITEM_KEY_ID\n" + + " left join item i on i.id=ik.ITEM_ID\n" + + " where cr.count_Code is not NULL "; + + + String sqlCount = "select count(t.id) as nums from (" + sql+") t"; + String sqlFy = "select t.* from(" + sql+") t"; + + sqlFy+= " WHERE Row_Num BETWEEN " + (pageNum-1) * pageSize + " AND " + (pageNum) * pageSize; + + //查询单数据 + Map listCount = jdbcTemplate.queryForMap(sqlCount, new HashMap<>()); + //查询多条数据据 + List> maps = jdbcTemplate.queryForList(sqlFy, new HashMap<>()); + return Result.success(Long.parseLong(listCount.get("nums").toString()),maps); + } +} diff --git a/wms/src/main/java/com/yc/wms/service/impl/XuliehaoqingdanImpl.java b/wms/src/main/java/com/yc/wms/service/impl/XuliehaoqingdanImpl.java new file mode 100644 index 0000000..664030e --- /dev/null +++ b/wms/src/main/java/com/yc/wms/service/impl/XuliehaoqingdanImpl.java @@ -0,0 +1,60 @@ +package com.yc.wms.service.impl; + +import com.yc.wms.bean.Xuliehao; +import com.yc.wms.service.Xuliehaoqingdan; +import com.yc.wms.until.QueryPageUtil; +import com.yc.wms.until.Result; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; +import org.springframework.stereotype.Service; + +import java.text.SimpleDateFormat; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service +@Slf4j +public class XuliehaoqingdanImpl implements Xuliehaoqingdan { + + @Autowired + private NamedParameterJdbcTemplate jdbcTemplate; + + @Override + public Result QueryJson(QueryPageUtil query, Xuliehao xuliehao) { + + int pageNum = query.getPageNum();//当前页 + int pageSize = query.getPageSize();//条数 + + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + + String sql="select Row_number() OVER(ORDER BY inv.id) as Row_Num, inv.id,lc.CODE lc_code,i.CODE i_code,inv.BAR_CODE ,i.NAME i_name,i.UNIT ,\n" + + "inv.STATUS ,inv.QUANTITY ,inv.QUEUED_QUANTITY ,\n" + + "ik.PROP_C1 ,ik.PROP_C2 ,ik.PROP_C3 ,ik.PROP_C5 ,ik.PROP_C9 ,ik.PROP_D2 ,\n" + + "z.NAME z_name,inv.STORAGE_DATE ,case when inv.coun_Plan is null then '否' else '是' end as sfpd\n" + + " from INVENTORY inv\n" + + " left join ITEM_KEY ik on ik.id=inv.ITEM_KEY_ID\n" + + " left join item i on i.id=ik.ITEM_ID\n" + + " left join LOCATION lc on lc.id=inv.LOCATION_ID\n" + + " left join [ZONE] z on z.id=lc.ZONE_ID\n" + + " WHERE 1=1\n" + + " and inv.quantity>0\n" + + " and lc.type not in ('RECEIVE','SHIP')\n" + + " and i.BE_MARK_WEIGHT=1"; + + + + String sqlCount = "select count(t.id) as nums from (" + sql+") t"; + String sqlFy = "select t.* from(" + sql+") t"; + + sqlFy+= " WHERE Row_Num BETWEEN " + (pageNum-1) * pageSize + " AND " + (pageNum) * pageSize; + + //查询单数据 + Map listCount = jdbcTemplate.queryForMap(sqlCount, new HashMap<>()); + //查询多条数据据 + List> maps = jdbcTemplate.queryForList(sqlFy, new HashMap<>()); + return Result.success(Long.parseLong(listCount.get("nums").toString()),maps); + + } +}