fix:coding#481统计中心优化

This commit is contained in:
shijing 2024-09-13 15:43:16 +08:00
parent 58bf615de3
commit 4b9b768647
6 changed files with 492 additions and 154 deletions

View File

@ -3294,6 +3294,17 @@ const routes = [
},
component: "statistics/task_rate_gx.vue",
},
//人员绩效统计——光芯
{
path: "/work_statistics",
name: "work_statistics",
meta: {
title: "人员生产统计",
icon: "el-icon-trend-charts",
perms: ["work_statistics"],
},
component: "statistics/work_statistics.vue",
},
//库存统计——光芯
{
path: "/statistic_inm",

View File

@ -2,6 +2,39 @@
<el-container>
<el-header>
<div class="right-panel">
<!-- 检验类型 -->
<el-select v-model="query.process_name"
placeholder="检验类型">
<el-option
v-for="item in options"
:key="item.value"
:label="item.name"
:value="item.value"
>
</el-option>
</el-select>
<!-- 检验人 -->
<!-- <el-select v-model="query.test_user"
placeholder="检验人">
<el-option
v-for="item in userOptions"
:key="item.id"
:label="item.name"
:value="item.id"
>
</el-option>
</el-select>
<el-select v-model="query.shift"
placeholder="班次">
<el-option
v-for="item in shiftOptions"
:key="item.id"
:label="item.name"
:value="item.id"
>
</el-option>
</el-select> -->
<el-date-picker
v-model="query.start_date"
type="date"
@ -18,8 +51,13 @@
</div>
<el-button @click="handleExport" type="primary">导出</el-button>
</el-header>
<el-main style="background: #ffffff">
<scTable :data="tableData" id="exportDiv">
<el-main class="nopadding">
<scTable
:data="tableData"
id="exportDiv"
stripe
hideDo
hidePagination>
<el-table-column type="index" width="50" />
<el-table-column label="物料名称" prop="物料名"></el-table-column>
<el-table-column label="规格" prop="规格"> </el-table-column>
@ -32,7 +70,7 @@
</el-table-column>
<el-table-column label="检验数" prop="检验数"></el-table-column>
<el-table-column label="合格数" prop="合格数量"></el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="不合格数" align="center" v-if="query.process_name == '一次超洗'">
<el-table-column label="黑圈内径" prop="黑圈内径"></el-table-column>
<el-table-column label="黑圈内径圆度" prop="黑圈内径圆度"></el-table-column>
<el-table-column label="黑圈外径" prop="黑圈外径"></el-table-column>
@ -43,6 +81,9 @@
<el-table-column label="厚度" prop="厚度"></el-table-column>
<el-table-column label="准合格" prop="准合格"></el-table-column>
<el-table-column label="圆准" prop="圆准"></el-table-column>
<el-table-column label="合计" prop="不合格数"></el-table-column>
</el-table-column>
<el-table-column label="不合格数" align="center" v-else>
<el-table-column label="脏" prop="脏"></el-table-column>
<el-table-column label="气泡" prop="气泡"></el-table-column>
<el-table-column label="水纹" prop="水纹"></el-table-column>
@ -61,7 +102,6 @@
</el-main>
</el-container>
</template>
<script>
export default {
name: "chart",
@ -69,12 +109,25 @@ export default {
data() {
return {
query:{
start_date:'',
fw_type:'prod',
end_date:'',
fw_type:'prod'
start_date:'',
process_name:'一次超洗',
group_by_dept: ", dept.id",
group_by_user: ", suser.id",
group_by_shift: ", shift.id",
select_col_dept: ", dept.name as 部门",
select_col_user: ", suser.name as 检验人",
select_col_shift: ", shift.name as 班次"
},
currentDate: "",
tableData: [],
options:[
{name:'外观',value:'一次超洗'},
{name:'尺寸',value:'二次超洗'}
],
userOptions:[],
shiftOptions:[],
};
},
mounted() {
@ -88,8 +141,22 @@ export default {
let queryDate = year + "-" + month + "-" + day;
that.query.start_date = that.query.end_date = that.currentDate = queryDate;
this.getData();
this.getUsers();
this.getShifts();
},
methods: {
getUsers(){
let that = this;
this.$API.system.user.list.req({ page: 0, posts__code__contains: "check" }).then((res) => {
that.userOptions = res;
});
},
getShifts(){
let that = this;
that.$API.mtm.shift.list.req({ page: 0 }).then((res) => {
that.shiftOptions = res;
});
},
getData() {
let that = this;
let obj = {};

View File

@ -125,6 +125,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -183,6 +185,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -241,6 +245,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -299,6 +305,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -357,6 +365,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -415,6 +425,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -473,6 +485,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -531,6 +545,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -589,6 +605,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -647,6 +665,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -705,6 +725,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -763,6 +785,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -821,6 +845,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -879,6 +905,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
@ -937,6 +965,8 @@
</el-table-column>
<el-table-column label="合格数" prop="合格数">
</el-table-column>
<el-table-column label="前道不良" prop="加工前不良">
</el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>

View File

@ -2,14 +2,27 @@
<el-container>
<el-header>
<div class="right-panel">
<el-select v-model="query.process_name"
style="width: 200px"
placeholder="请选择工序">
<el-option
v-for="item in options"
:key="item.name"
:label="item.name"
:value="item.name"
>
</el-option>
</el-select>
<el-date-picker
v-model="query.start_date"
type="date"
placeholder="查询日期"
value-format="YYYY-MM-DD"
style="width: 160px"
style="width: 200px"
>
</el-date-picker>
<el-input v-model="query.m_s"
placeholder="物料名称" clearable style="width:200px"></el-input>
<el-button
type="primary"
icon="el-icon-search"
@ -18,8 +31,13 @@
</div>
<el-button @click="handleExport" type="primary">导出</el-button>
</el-header>
<el-main style="background: #ffffff">
<scTable :data="tableData" id="exportDiv">
<el-main>
<scTable
:data="tableData"
id="exportDiv"
stripe
hideDo
hidePagination>
<el-table-column type="index" width="50" />
<el-table-column label="物料名称" prop="物料名"></el-table-column>
<el-table-column label="规格" prop="规格"> </el-table-column>
@ -33,28 +51,16 @@
<el-table-column label="检验数" prop="检验数"></el-table-column>
<el-table-column label="合格数" prop="合格数"></el-table-column>
<el-table-column label="不合格数" align="center">
<el-table-column label="黑圈内径" prop="黑圈内径"></el-table-column>
<el-table-column label="黑圈内径圆度" prop="黑圈内径圆度"></el-table-column>
<el-table-column label="黑圈外径" prop="黑圈外径"></el-table-column>
<el-table-column label="黑圈外径圆度" prop="黑圈外径圆度"></el-table-column>
<el-table-column label="产品外径" prop="产品外径"></el-table-column>
<el-table-column label="产品圆度" prop="产品圆度"></el-table-column>
<el-table-column label="产品同心度" prop="产品同心度"></el-table-column>
<el-table-column label="厚度" prop="厚度"></el-table-column>
<el-table-column label="准合格" prop="准合格"></el-table-column>
<el-table-column label="圆准" prop="圆准"></el-table-column>
<el-table-column label="脏" prop="脏"></el-table-column>
<el-table-column label="划伤" prop="划伤"></el-table-column>
<el-table-column label="气泡" prop="气泡"></el-table-column>
<el-table-column label="水纹" prop="水纹"></el-table-column>
<el-table-column label="崩边" prop="崩边"></el-table-column>
<el-table-column label="棕边" prop="棕边"></el-table-column>
<el-table-column label="棕圈" prop="棕圈"></el-table-column>
<el-table-column label="划伤" prop="划伤"></el-table-column>
<el-table-column label="雾面" prop="雾面"></el-table-column>
<el-table-column label="小崩边" prop="小崩边"></el-table-column>
<el-table-column label="麻点" prop="麻点"></el-table-column>
<el-table-column label="黑圈变形" prop="黑圈变形"></el-table-column>
<el-table-column label="倒角" prop="倒角"></el-table-column>
<el-table-column label="线痕" prop="线痕"></el-table-column>
<el-table-column label="破损" prop="破损"></el-table-column>
<el-table-column label="蓝圈" prop="蓝圈"></el-table-column>
<el-table-column label="其他" prop="其他"></el-table-column>
<el-table-column label="合计" prop="不合格数"></el-table-column>
</el-table-column>
</scTable>
@ -69,12 +75,21 @@ export default {
data() {
return {
query:{
start_date:'',
m_s:'',
fw_type:'process',
end_date:'',
fw_type:'process'
start_date:'',
process_name:'',
group_by_dept: ", dept.id",
group_by_user: ", suser.id",
group_by_shift: ", shift.id",
select_col_dept: ", dept.name as 部门",
select_col_user: ", suser.name as 检验人",
select_col_shift: ", shift.name as 班次"
},
currentDate: "",
tableData: [],
options:[],
};
},
mounted() {
@ -87,14 +102,21 @@ export default {
day = day < 10 ? "0" + day : day;
let queryDate = year + "-" + month + "-" + day;
that.query.start_date = that.query.end_date = that.currentDate = queryDate;
this.getProcess();
this.getData();
},
methods: {
getProcess(){
let that = this;
that.$API.mtm.process.list.req({ page: 0}).then((res) => {
that.options = res;
});
},
getData() {
let that = this;
let obj = {};
obj.query = that.query;
that.tableData =[];
that.$API.bi.dataset.exec.req('ftestDay', obj).then((res) => {
that.tableData = res.data2.ds0;
console.log(that.tableData);

View File

@ -2,12 +2,25 @@
<el-container>
<el-header>
<div class="right-panel">
<el-select v-model="material__name">
<el-select v-model="searchType" style="width: 200px" @change="searchTypeChange">
<el-option label="原料批次号" value="batch"></el-option>
<el-option label="物料名称" value="material"></el-option>
</el-select>
<el-input
v-if="searchType === 'batch'"
v-model="query.batch" placeholder="物料批次"
clearable style="width:200px"
></el-input>
<el-select v-else
v-model="query.m_name"
style="width: 200px"
@change="materialChange"
placeholder="请选择物料">
<el-option
v-for="item in options"
:key="item"
:label="item"
:value="item"
:key="item.id"
:label="item.name"
:value="item.name"
>
</el-option>
</el-select>
@ -16,76 +29,78 @@
icon="el-icon-search"
@click="handleQuery"
></el-button>
<el-button
@click="handleExport"
class="tables"
type="primary"
>导出</el-button
>
</div>
</el-header>
<el-main id="elMain">
<el-row :gutter="10" id="elCol">
<el-col :lg="12">
<el-card shadow="never">
<div id="bachart1"></div>
<!-- <scEcharts height="500px" :option="option"></scEcharts> -->
</el-card>
</el-col>
<el-col :lg="12">
<el-card shadow="never" style="position: relative">
<el-button
@click="handleExport"
class="tables"
type="primary"
>导出</el-button
>
<el-table
:data="tableData1"
id="exportDiv7"
:height="tableHeight"
>
<el-table-column type="index" width="50" />
<el-table-column
label="任务编号"
prop="number"
min-width="100px"
>
</el-table-column>
<el-table-column label="计划数" prop="count">
</el-table-column>
<el-table-column label="完成数" prop="count_ok">
</el-table-column>
<el-table-column label="完成率" prop="rate">
</el-table-column>
</el-table>
</el-card>
</el-col>
</el-row>
<el-main class="nopadding">
<scTable
:data="tableData"
id="exportDiv"
stripe
hideDo
hidePagination
>
<el-table-column type="index" width="50" />
<el-table-column label="部门" prop="部门">
</el-table-column>
<el-table-column label="工段" prop="工段">
</el-table-column>
<el-table-column label="原料数" prop="原料数">
</el-table-column>
<el-table-column label="待加工原料数" prop="待加工原料数">
</el-table-column>
<el-table-column label="非本段产物数" prop="非本段产物数">
</el-table-column>
<el-table-column label="待加工产物数" prop="待加工产物数">
</el-table-column>
<el-table-column label="加工中原料数" prop="加工中原料数">
</el-table-column>
<el-table-column label="加工中产物数" prop="加工中产物数">
</el-table-column>
<el-table-column label="合格品数" prop="合格品数">
</el-table-column>
<el-table-column label="不合格品数" prop="不合格品数">
</el-table-column>
<el-table-column label="返工品数" prop="返工品数">
</el-table-column>
<el-table-column label="检验数" prop="检验数">
</el-table-column>
<el-table-column label="废品数" prop="废品数">
</el-table-column>
<el-table-column label="仓库原料数" prop="仓库原料数">
</el-table-column>
<el-table-column label="仓库合格品数" prop="仓库合格品数">
</el-table-column>
<el-table-column label="仓库合格成品数" prop="仓库合格成品数">
</el-table-column>
</scTable>
</el-main>
</el-container>
</template>
<script>
import * as echarts from "echarts";
import T from "@/components/scEcharts/echarts-theme-T.js";
echarts.registerTheme("T", T);
import scEcharts from "@/components/scEcharts";
function deepCopy(obj) {
return JSON.parse(JSON.stringify(obj));
}
export default {
name: "chart",
components: {
scEcharts,
},
data() {
return {
currentYear:'',
currentMonth:'',
start_date:'',
end_date:'',
queryDate:'',
option:{},
seriesData1:[],
seriesData2:[],
seriesData3:[],
material__name:'',
options:['白片','DDG片','一次抛','外协海富'],
query: {
batch: "",
m_name: "",
m_model: "",
m_specification: ""
},
searchType:'batch',
options:[],
tableData:[],
basicOption: {
backgroundColor: "transparent",
title: {
@ -132,77 +147,49 @@ export default {
};
},
mounted() {
let that = this;
let that = this;
that.getOptions();
that.getInmMaterial();
},
methods: {
getOptions(){
let that = this;
let obj = {};
obj.page = 0;
obj.type__in = "10,20";
obj.is_hidden = false;
that.options = [];
that.$API.mtm.material.list.req(obj).then((res) => {
if(res.length>0){
that.options = res;
}
});
},
getInmMaterial(){
let that = this;
let obj = {
name__contains:that.material__name,
page:0
};
this.$API.mtm.material.list.req(obj).then(res=>{
console.log('InmMaterial',res);
that.getWmaterial();
if(res.length>0){
res.forEach(item => {
that.seriesData3[0]+=item.count;
});
let obj = {};
obj.query = that.query;
that.tableData =[];
that.$API.bi.dataset.exec.req('batch_search', this.query).then((res) => {
if(res.data2.ds0){
that.tableData = res.data2.ds0;
}
})
});
},
getWmaterial(){
searchTypeChange(){
this.query.batch = '';
this.query.m_name = '';
this.query.m_model = '';
this.query.m_specification = '';
},
materialChange(val){
let that = this;
let obj = {
material__name__contains:that.material__name,
page:0
};
this.$API.wpm.wmaterial.list.req(obj).then(res=>{
console.log('Wmaterial',res);
if(res.length>0){
res.forEach(item => {
if(item.belong_dept_name=="扫边车间"){
if(item.count_xtest==null){
seriesData3[1]+=item.count;
}else{
seriesData1[1]+=item.count;
}
}else if(item.belong_dept_name=="黑化车间"){
if(item.count_xtest==null){
seriesData3[2]+=item.count;
}else{
seriesData1[2]+=item.count;
}
}else if(item.belong_dept_name=="减薄车间"){
if(item.count_xtest==null){
seriesData3[3]+=item.count;
}else{
seriesData1[3]+=item.count;
}
}else if(item.belong_dept_name=="精雕车间"){
if(item.count_xtest==null){
seriesData3[4]+=item.count;
}else{
seriesData1[4]+=item.count;
}
}else if(item.belong_dept_name=="倒角车间"){
if(item.count_xtest==null){
seriesData3[5]+=item.count;
}else{
seriesData1[5]+=item.count;
}
}else if(item.belong_dept_name=="磨抛车间"){
if(item.count_xtest==null){
seriesData3[6]+=item.count;
}else{
seriesData1[6]+=item.count;
}
}
});
console.log(val);
that.options.forEach((item) => {
if (item.name == val) {
that.query.m_model = item.model;
that.query.m_specification = item.specification;
}
let option = deepCopy(that.basicOption);
that.setChart("bachart1", option);
})
},
handleQuery(){
@ -234,9 +221,7 @@ export default {
width: 100%;
height: 500px;
}
.tables{
width:
}
.tableHead {
background:rgb(0,176,240);
height:40px;

View File

@ -0,0 +1,223 @@
<template>
<el-container>
<el-aside style="width: 45%; background: #ffffff">
<el-container>
<el-header>
<div class="left-panel">
<span style="font-size: 14px">人员生产统计</span>
</div>
<div class="right-panel">
<!-- 工段 -->
<el-select
v-model="query.mgroup_name"
>
<el-option
v-for="item in options"
:key="item.name"
:label="item.name"
:value="item.name"
>
</el-option>
</el-select>
<!-- 日期 -->
<el-date-picker
v-model="queryData"
type="date"
placeholder="查询日期"
value-format="YYYY-MM-DD"
style="width: 160px"
@change="dateChange"
>
</el-date-picker>
<el-button
type="primary"
icon="el-icon-search"
@click="searchHandle"
></el-button>
<el-button @click="handleExport('1')" type="primary"
>导出</el-button>
</div>
</el-header>
<el-main>
<scTable
ref="tables1"
:data="tableData"
id="exportDiv1"
@row-click="rowClick"
stripe
hideDo
hidePagination
>
<el-table-column label="工段" prop="工段"></el-table-column>
<el-table-column label="操作人" prop="操作人"></el-table-column>
<el-table-column label="生产数" prop="生产数"></el-table-column>
<el-table-column label="合格数" prop="合格数"></el-table-column>
<el-table-column label="不合格数" prop="不合格数"></el-table-column>
<el-table-column label="合格率" prop="合格率"></el-table-column>
<el-table-column label="日期" prop="日期"></el-table-column>
</scTable>
</el-main>
</el-container>
</el-aside>
<el-main class="nopadding">
<el-container>
<el-header>
<div class="left-panel">
<span style="font-size: 14px">人员生产统计详情</span>
</div>
<div class="right-panel">
<el-button @click="handleExport('2')" type="primary"
>导出</el-button
>
</div>
</el-header>
<el-main>
<scTable
ref="tables2"
:data="tableData2"
id="exportDiv2"
stripe
hideDo
hidePagination
>
<el-table-column label="工段" prop="工段"></el-table-column>
<el-table-column label="物料名" prop="物料名"></el-table-column>
<el-table-column label="操作人" prop="操作人"></el-table-column>
<el-table-column label="规格" prop="规格"></el-table-column>
<el-table-column label="型号" prop="型号"></el-table-column>
<el-table-column label="生产数" prop="生产数"></el-table-column>
<el-table-column label="合格数" prop="合格数"></el-table-column>
<el-table-column label="不合格数" prop="不合格数"></el-table-column>
<el-table-column label="合格率" prop="合格率"></el-table-column>
<el-table-column label="日期" prop="日期"></el-table-column>
</scTable>
</el-main>
</el-container>
</el-main>
</el-container>
</template>
<script>
import { mioTypeEnum } from "@/utils/enum.js";
function deepCopy(obj) {
return JSON.parse(JSON.stringify(obj));
}
const ondDayTime = 86400000;
export default {
name: "chart",
data() {
return {
query:{
start_date:"",
end_date:''
},
start_date: "",
end_date: "",
options:[],
tableData: [],
tableData2: [],
queryData:'',
};
},
mounted() {
let that = this;
let date = new Date();
that.query.start_date = that.start_date = that.queryData =
that.query.end_date = that.end_date = date.toISOString().split('T')[0];
// let week = date.getDay(); //week
// let weekFirst = week - 1; //
// let weekLast = 7 - week; //
// if (week == 0) {
// weekFirst = 6;
// weekLast = 0; //
// } else {
// weekFirst = week - 1;
// weekLast = 7 - week;
// }
// let first = new Date(new Date(date.getTime() - weekFirst * ondDayTime)); //
// let last = new Date(new Date(date.getTime() + weekLast * ondDayTime)); //
// this.query.start_date = this.start_date = first.toISOString().split('T')[0];
// this.query.end_date = this.end_date = last.toISOString().split('T')[0];
this.getMgroup();
},
methods: {
getWeekDate(dateTime) {
let date = new Date(dateTime);
let week = date.getDay(); //week
let weekFirst = week - 1; //
let weekLast = 7 - week; //
if (week == 0) {
weekFirst = 6;
weekLast = 0; //
} else {
weekFirst = week - 1;
weekLast = 7 - week;
}
let first = new Date(new Date(date.getTime() - weekFirst * ondDayTime)); //
let last = new Date(new Date(date.getTime() + weekLast * ondDayTime)); //
this.query.start_date = first.toISOString().split('T')[0];
this.query.end_date = last.toISOString().split('T')[0];
},
getMgroup(){
let that = this;
this.$API.mtm.mgroup.list.req({page:0}).then((res) => {
that.options = res;
that.query.mgroup_name = res[0].name;
that.getTableData();
})
},
searchHandle() {
let that = this;
that.tableData = [];
that.getTableData();
},
dateChange(){
this.query.start_date = this.query.end_date = this.queryData;
},
//
getTableData() {
let that = this;
let obj = {};
let query = deepCopy(that.query);
query.group_by_material = "";
query.select_col_material = "";
obj.query = query;
that.$API.bi.dataset.exec.req('ryjxtj', obj).then((res) => {
if (res.data2.ds0) {
that.tableData = res.data2.ds0;
}
});
},
rowClick(row){
console.log(row);
let that = this;
let obj = {};
let query = deepCopy(that.query);
query.where_user = "and userd.name = '"+row.操作人+"'";
obj.query = query;
that.tableData2 = [];
that.$API.bi.dataset.exec.req('ryjxtj', obj).then((res) => {
if( res.data2.ds0){
that.tableData2 = res.data2.ds0;
}
})
},
handleExport(val) {
this.exportLoading = true;
let id = "#exportDiv" + val;
let name = val == "1" ? "库存统计" : "库存出入库统计";
this.$XLSX(id, name);
this.exportLoading = false;
},
},
};
</script>
<style scoped>
.tables {
position: absolute;
top: 4px;
right: 6px;
z-index: 10;
}
</style>