This commit is contained in:
2022-10-20 19:56:12 +08:00
parent c460827f28
commit 88e0fded15
3 changed files with 57 additions and 27 deletions

View File

@@ -115,7 +115,7 @@ public class StatisticalReportServiceImpl implements StatisticalReportService {
//1、库存现存量现有库存 - 开单领料重量 //1、库存现存量现有库存 - 开单领料重量
JSONObject mater_ivt = WQL.getWO("statistical_report_query_01").addParam("flag", "4").addParam("material_id", material_id).process().uniqueResult(0); JSONObject mater_ivt = WQL.getWO("statistical_report_query_01").addParam("flag", "4").addParam("material_id", material_id).process().uniqueResult(0);
//查询开单领料重量 //查询开单领料重量
JSONObject form_qty = WQL.getWO("statistical_report_query_01").addParam("flag", "5").addParam("material_id", material_id).addParam("begin_time",begin_time).addParam("end_time",end_time).process().uniqueResult(0); JSONObject form_qty = WQL.getWO("statistical_report_query_01").addParam("flag", "5").addParam("material_id", material_id).process().uniqueResult(0);
double now_ivt = 0; double now_ivt = 0;
double need_qty = 0; double need_qty = 0;
@@ -175,14 +175,14 @@ public class StatisticalReportServiceImpl implements StatisticalReportService {
jo7.put(material_id, String.format("%.3f", safe_qty)); jo7.put(material_id, String.format("%.3f", safe_qty));
//8、采购缺口库存+待检+在途+最低储备-排产量 //8、采购缺口库存+待检+在途+最低储备-排产量
double buy_qty = bom_qty - (now_ivt + noin_qty + notqty + safe_qty); double buy_qty = bom_qty + safe_qty - (canuse_num.doubleValue() + noin_qty + notqty);
jo8.put(material_id, String.format("%.3f", buy_qty)); jo8.put(material_id, String.format("%.3f", buy_qty));
//6、覆盖日期物料库存可坚持到哪一天库存现存量减每天需求量哪天<0,取前一天 //6、覆盖日期物料库存可坚持到哪一天库存现存量减每天需求量哪天<0,取前一天
for (int j = 1; j <= betweenDay; j++) { for (int j = 1; j <= betweenDay; j++) {
DateTime newDate = DateUtil.offsetDay(date1, j); DateTime newDate = DateUtil.offsetDay(date1, j);
//查询该物料当天的需求量 //查询该物料当天的需求量
JSONObject today_qty = WQL.getWO("statistical_report_query_01").addParam("flag", "8").addParam("material_id", material_id).addParam("begin_time",newDate).process().uniqueResult(0); JSONObject today_qty = WQL.getWO("statistical_report_query_01").addParam("flag", "8").addParam("material_id", material_id).addParam("begin_time", newDate.toString().substring(0, 10) + "%").process().uniqueResult(0);
double need_weight = 0; double need_weight = 0;
if (ObjectUtil.isNotEmpty(today_qty)) { if (ObjectUtil.isNotEmpty(today_qty)) {
need_weight = today_qty.getDoubleValue("qty"); need_weight = today_qty.getDoubleValue("qty");
@@ -207,8 +207,9 @@ public class StatisticalReportServiceImpl implements StatisticalReportService {
public Map<String, Object> materPlanDtlQuery(Map whereJson) { public Map<String, Object> materPlanDtlQuery(Map whereJson) {
String begin_time = MapUtil.getStr(whereJson, "begin_time"); String begin_time = MapUtil.getStr(whereJson, "begin_time");
String end_time = MapUtil.getStr(whereJson, "end_time"); String end_time = MapUtil.getStr(whereJson, "end_time");
String org_id = MapUtil.getStr(whereJson, "org_id");
//查询日期内的排产日计划物料信息 //查询日期内的排产日计划物料信息
JSONArray jsonArr = WQL.getWO("statistical_report_query_01").addParam("flag", "9").addParam("begin_time",begin_time).addParam("end_time",end_time).process().getResultJSONArray(0); JSONArray jsonArr = WQL.getWO("statistical_report_query_01").addParam("flag", "9").addParam("begin_time", begin_time).addParam("end_time", end_time).addParam("org_id", org_id).process().getResultJSONArray(0);
JSONArray rows = new JSONArray(); JSONArray rows = new JSONArray();
for (int i = 0; i < jsonArr.size(); i++) { for (int i = 0; i < jsonArr.size(); i++) {
JSONObject row = jsonArr.getJSONObject(i); JSONObject row = jsonArr.getJSONObject(i);

View File

@@ -27,6 +27,7 @@
输入.create_mode TYPEAS s_string 输入.create_mode TYPEAS s_string
输入.bill_status TYPEAS s_string 输入.bill_status TYPEAS s_string
输入.material_id TYPEAS s_string 输入.material_id TYPEAS s_string
输入.org_id TYPEAS s_string
[临时表] [临时表]
@@ -474,6 +475,7 @@
mps_bd_productdailyplan plan mps_bd_productdailyplan plan
LEFT JOIN md_me_producmaterialext ext ON ext.material_id = plan.material_id LEFT JOIN md_me_producmaterialext ext ON ext.material_id = plan.material_id
LEFT JOIN md_me_materialbase materialbase ON materialbase.material_id = plan.material_id LEFT JOIN md_me_materialbase materialbase ON materialbase.material_id = plan.material_id
LEFT JOIN sys_dept dept ON dept.`code` = plan.plan_org_code
WHERE WHERE
plan.status = '01' plan.status = '01'
OPTION 输入.begin_time <> "" OPTION 输入.begin_time <> ""
@@ -482,6 +484,9 @@
OPTION 输入.end_time <> "" OPTION 输入.end_time <> ""
plan.planstart_date <= 输入.end_time plan.planstart_date <= 输入.end_time
ENDOPTION ENDOPTION
OPTION 输入.org_id <> ""
dept.dept_id = 输入.org_id
ENDOPTION
UNION ALL UNION ALL
@@ -505,6 +510,9 @@
ENDOPTION ENDOPTION
OPTION 输入.end_time <> "" OPTION 输入.end_time <> ""
wo.planstart_time <= 输入.end_time wo.planstart_time <= 输入.end_time
ENDOPTION
OPTION 输入.org_id <> ""
wo.org_id = 输入.org_id
ENDOPTION ENDOPTION
GROUP BY GROUP BY
planstart_time,wo.material_id planstart_time,wo.material_id

View File

@@ -14,6 +14,23 @@
<el-form-item label="统计日期"> <el-form-item label="统计日期">
<date-range-picker v-model="query.createTime" class="date-item"/> <date-range-picker v-model="query.createTime" class="date-item"/>
</el-form-item> </el-form-item>
<el-form-item label="所属组织">
<el-select
v-model="query.org_id"
clearable
size="mini"
placeholder="所属组织"
class="filter-item"
@change="crud.toQuery"
>
<el-option
v-for="item in Depts"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
<rrOperation/> <rrOperation/>
</el-form> </el-form>
</div> </div>
@@ -69,6 +86,7 @@ import crudInspectionsheetmst from '@/api/wms/ql/inspectionsheetmst'
import { download } from '@/api/data' import { download } from '@/api/data'
import { downloadFile } from '@/utils' import { downloadFile } from '@/utils'
import Date from '@/utils/datetime' import Date from '@/utils/datetime'
import workorder from '@/api/wms/pdm/workorder'
const start = new Date() const start = new Date()
export default { export default {
@@ -98,6 +116,7 @@ export default {
cols: [], cols: [],
cols2: [], cols2: [],
dtlList: [], dtlList: [],
Depts: [],
statusList: [], statusList: [],
permission: {}, permission: {},
rules: {} rules: {}
@@ -106,7 +125,9 @@ export default {
beforeCreate() { beforeCreate() {
}, },
created() { created() {
workorder.getDepts().then(res => {
this.Depts = res
})
}, },
methods: { methods: {
// 钩子在获取表格数据之前执行false 则代表不获取数据 // 钩子在获取表格数据之前执行false 则代表不获取数据