This commit is contained in:
zds
2022-12-05 19:11:58 +08:00
parent 49f8cf6cfd
commit 8f14b98765
6 changed files with 138 additions and 4 deletions

View File

@@ -181,4 +181,44 @@
ENDSELECT
ENDPAGEQUERY
ENDIF
ENDIF
IF 输入.flag = "5"
QUERY
SELECT
SUM (ISNULL(weight,0)) AS weight,
pallet_code,
material_code,
material_name,
pcsn,
status,
available,
MAX(inputtime) AS inputtime
FROM
VWmsInventory
WHERE
1=1
OPTION 输入.material_code <> ""
(material_code like 输入.material_code or
material_uuid like 输入.material_code)
ENDOPTION
OPTION 输入.pcsn <> ""
pcsn like 输入.pcsn
ENDOPTION
OPTION 输入.begin_time <> ""
inputtime >= 输入.begin_time
ENDOPTION
OPTION 输入.end_time <> ""
inputtime <= 输入.end_time
ENDOPTION
OPTION 输入.status <> ""
status = 输入.status
ENDOPTION
OPTION 输入.available <> ""
available = 输入.available
ENDOPTION
group by material_code,material_name,available,pcsn,status,pallet_code
order by material_code,pcsn
ENDSELECT
ENDQUERY
ENDIF

View File

@@ -13,6 +13,9 @@ import org.springframework.data.domain.Pageable;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Map;
/**
@@ -51,7 +54,11 @@ public class LibraryqueryController {
libraryqueryService.outLk(json);
return new ResponseEntity<>(HttpStatus.OK);
}
@ApiOperation("导出数据")
@GetMapping(value = "/download")
public void download(HttpServletResponse response, @RequestParam Map whereJson) throws IOException {
libraryqueryService.download(whereJson, response);
}
@GetMapping("/getPoint")
@Log("获取站点")
@ApiOperation("获取站点")

View File

@@ -4,6 +4,9 @@ package org.nl.wms.lk.service;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.springframework.data.domain.Pageable;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Map;
/**
@@ -27,6 +30,14 @@ public interface LibraryqueryService {
*/
void outLk(JSONObject json);
/**
*
* @param whereJson
* @param response
* @throws IOException
*/
void download(Map whereJson, HttpServletResponse response) throws IOException;
/**
* 获取站点
*/

View File

@@ -2,15 +2,18 @@
package org.nl.wms.lk.service.impl;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.nl.exception.BadRequestException;
import org.nl.ext.lk.service.WmsToLkService;
import org.nl.utils.FileUtil;
import org.nl.wms.lk.service.LibraryqueryService;
import org.nl.wql.WQL;
import org.nl.wql.core.bean.WQLObject;
@@ -19,6 +22,8 @@ import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.*;
/**
@@ -114,4 +119,54 @@ public class LibraryqueryServiceImpl implements LibraryqueryService {
JSONObject json = WQL.getWO("QLK01").setDbname("dataSource2").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "");
return json;
}
@Override
public void download(Map whereJson, HttpServletResponse response) throws IOException {
String material_code = MapUtil.getStr(whereJson, "material_code");
String pcsn = MapUtil.getStr(whereJson, "pcsn");
HashMap<String, String> map = new HashMap<>();
map.put("flag", "5");
if (ObjectUtil.isNotEmpty(material_code)) {
map.put("material_code","%"+material_code+"%" );
}
if (ObjectUtil.isNotEmpty(pcsn)) {
map.put("pcsn","%"+pcsn+"%" );
}
map.put("begin_time", MapUtil.getStr(whereJson,"begin_time"));
map.put("end_time", MapUtil.getStr(whereJson,"end_time"));
map.put("status", MapUtil.getStr(whereJson,"status"));
map.put("available", MapUtil.getStr(whereJson,"available"));
JSONArray rows = WQL.getWO("QLK01").setDbname("dataSource2").addParamMap(map).process().getResultJSONArray(0);
List<Map<String, Object>> list = new ArrayList<>();
for (int i = 0; i < rows.size(); i++) {
JSONObject jo = rows.getJSONObject(i);
Map<String, Object> dtl_map = new LinkedHashMap<>();
dtl_map.put("托盘", jo.getString("pallet_code"));
dtl_map.put("物料编码", jo.getString("material_code"));
dtl_map.put("物料名称", jo.getString("material_name"));
dtl_map.put("批号", jo.getString("pcsn"));
dtl_map.put("重量", jo.getString("weight"));
String status = jo.getString("status");
if(status.equals("00")){
dtl_map.put("品质类型", "待检品");
}else if(status.equals("01")){
dtl_map.put("品质类型", "合格品");
}else if(status.equals("02")){
dtl_map.put("品质类型", "不良品");
}else{
dtl_map.put("品质类型", "其他");
}
if(jo.getString("available").equals("1")){
dtl_map.put("是否可用", "可用");
}else{
dtl_map.put("是否可用", "不可用");
}
dtl_map.put("入库时间", jo.getString("inputtime"));
list.add(dtl_map);
}
FileUtil.downloadExcel(list, response);
}
}

View File

@@ -349,7 +349,7 @@
OPTION 输入.set_type <> ""
ProductMaterialSet.set_type = 输入.set_type
ENDOPTION
order by classstandard.class_code asc,ProductMaterialSet.set_material_id
order by classstandard.class_code,materialbase.material_code
ENDSELECT
ENDQUERY
ENDIF

View File

@@ -92,11 +92,21 @@
>
立库出库
</el-button>
<el-button
slot="right"
class="filter-item"
type="primary"
icon="el-icon-position"
size="mini"
@click="downdtl()"
>
导出excel
</el-button>
</crudOperation>
<!--表格渲染-->
<el-table ref="table" :max-height="590" v-loading="crud.loading" :data="crud.data" size="mini" style="width: 100%;" @selection-change="crud.selectionChangeHandler">
<el-table-column type="selection" width="55" />
<el-table-column show-overflow-tooltip prop="pallet_code" label="托盘" width="120px">
<el-table-column prop="pallet_code" label="托盘" width="120px">
<template slot-scope="scope">
<el-link type="warning" @click="queryDtl(scope.row)">{{ scope.row.pallet_code }}</el-link>
</template>
@@ -125,6 +135,8 @@ import udOperation from '@crud/UD.operation'
import pagination from '@crud/Pagination'
import DateRangePicker from '@/components/DateRangePicker'
import QueryDtlDialog from '@/views/wms/lk/libraryquery/QueryDtlDialog'
import { download } from '@/api/data'
import { downloadFile } from '@/utils'
const defaultForm = { agvaddr: null }
export default {
@@ -181,6 +193,15 @@ export default {
this.crud.toQuery()
})
},
downdtl() {
crud.downloadLoading = true
download('/api/libraryquery/download', this.crud.query).then(result => {
downloadFile(result, '立库库存', 'xlsx')
crud.downloadLoading = false
}).catch(() => {
crud.downloadLoading = false
})
},
queryDtl(row) {
this.openParam = row
this.queryDtlShow = true