@ -12,7 +12,7 @@
< header -content :auths ="auths_auth_mixin" >
< header -content :auths ="auths_auth_mixin" >
< template # search >
< template # search >
< div style = "display: flex" >
< div style = "display: flex" >
< el -date -picker v-model ="selectDate" size="small" :clearable="false" style="width: 14 0px;" @change="getTransfer"> < / el -date -picker >
< el -date -picker type = "daterange" v-model ="selectDate" size="small" :clearable="false" style="width: 22 0px;" @change="getTransfer"> < / el -date -picker >
<!-- < Button - - >
<!-- < Button - - >
<!-- style = "margin-left: 10px" -- >
<!-- style = "margin-left: 10px" -- >
<!-- type = "primary" -- >
<!-- type = "primary" -- >
@ -29,25 +29,30 @@
< / div >
< / div >
< el -card >
< el -card >
< div class = "title" > { { $moment( selectDate ). format ( 'YYYY-MM-DD' ) } } 调度指令执行情况 < / div >
< div class = "title" > { { selectDate[ 0 ] ? $moment( selectDate [0 ] ). format ( 'YYYY-MM-DD' ) : "-" } } ~ { { selectDate [ 1 ] ? $moment ( selectDate [ 1 ] ) . format ( 'YYYY-MM-DD' ) : "-" } } 调度指令执行情况 < / div >
< p style = "text-indent: 30px;line-height: 1.2;padding: 20px 0;" > { { weather . weather } } < / p >
< p style = "text-indent: 30px;line-height: 1.2;padding: 20px 0;" > { { weather . weather } } < / p >
< div v-for ="(item, index) in showData " :key="item.value">
< div v-for ="(item, index) in showData .filter(i => i._data.size > 0) " :key="item.value">
< div class = "item" v-if ="item._data. length > 0">
< div class = "item" v-if ="item._data. size > 0">
< div class = "sub-title" > { { numberToChinese ( index + 1 ) } } . { { item . key } } < / div >
< div class = "sub-title" > { { numberToChinese ( index + 1 ) } } . { { item . key } } < / div >
< div v-for ="(item1, index1) in item._data" :key="item1.id ">
< div v-for ="(item1, index1) in Array.from(item._data)" :key="item1[0] ">
< div class = "name" >
< div class = "name" >
{ { index1 + 1 } } . { { item1 .equipment _id _equipments _id _relation ? item1 . equipment _id _equipments _id _relation . name : '' } }
{ { index1 + 1 } } . { { item1 [1 ] [ 0 ] .equipment _id _equipments _id _relation ? item1 [ 1 ] [ 0 ] . equipment _id _equipments _id _relation . name : '' } }
< / div >
< / div >
< div v-for ="(item2, index2) in item1[1].sort((a,b) => new Date(a.act_start_time).valueOf() - new Date(b.act_start_time).valueOf())" :key="item2.id" style="display: flex;" >
< div style = "text-indent: 60px;" > { { index1 + 1 } } . { { index2 + 1 } } < / div >
< div >
< div class = "time" >
< div class = "time" >
< span > 时间 : < / span >
< span > 时间 : < / span >
< span > { { $moment ( item1 . act _start _time ) . format ( 'YYYY-MM-DD HH:mm' ) } } - { { $moment ( item1 . act _end _time ) . format ( 'HH:mm' ) } } < / span >
< span > { { item2. act _start _time ? $moment ( item2 . act _start _time ) . format ( 'YYYY-MM-DD HH:mm' ) : "-" } } ~ { { item2 . act _end _time ? $moment ( item2 . act _end _time ) . format ( 'HH:mm' ) : "-" } } < / span >
< / div >
< / div >
< div class = "content" >
< div class = "content" >
< span > 内容 : < / span >
< span > 内容 : < / span >
< span > { { item1 . content } } < / span >
< span > { { item2 . to _transfer _id ? "[调整]" : "" } } { { item2 . content } } < / span >
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
@ -64,7 +69,7 @@ import {
AlignmentType ,
AlignmentType ,
TextRun ,
TextRun ,
Packer ,
Packer ,
convertInchesToTwip
convertInchesToTwip ,
} from "docx" ;
} from "docx" ;
import { saveAs } from 'file-saver' ;
import { saveAs } from 'file-saver' ;
import { index , save } from "@/api/system/baseForm" ;
import { index , save } from "@/api/system/baseForm" ;
@ -86,7 +91,7 @@ export default {
weather : { } ,
weather : { } ,
transfers : [ ] ,
transfers : [ ] ,
showData : [ ] ,
showData : [ ] ,
selectDate : new Date ( ) ,
selectDate : [ new Date ( ) , new Date ( ) ] ,
}
}
} ,
} ,
methods : {
methods : {
@ -207,11 +212,12 @@ export default {
table _name : "transfers" ,
table _name : "transfers" ,
page : 1 ,
page : 1 ,
page _size : 999 ,
page _size : 999 ,
sort _name : "equipment_id" ,
filter : [
filter : [
{
{
key : 'start_time' ,
key : 'start_time' ,
op : 'range' ,
op : 'range' ,
value : ` ${ this . $moment ( this . selectDate ). startOf ( 'days' ) . format ( 'YYYY-MM-DD HH:mm:ss' ) } , ${ this . $moment ( this . selectDate ) . endOf ( 'days' ) . format ( 'YYYY-MM-DD HH:mm:ss' ) } `
value : ` ${ this . $moment ( this . selectDate [0 ] || new Date ( ) ). startOf ( 'days' ) . format ( 'YYYY-MM-DD HH:mm:ss' ) } , ${ this . $moment ( this . selectDate [ 1 ] || new Date ( ) ) . endOf ( 'days' ) . format ( 'YYYY-MM-DD HH:mm:ss' ) } `
} ,
} ,
{
{
key : 'status' ,
key : 'status' ,
@ -224,18 +230,23 @@ export default {
this . showData = this . areas . map ( i => {
this . showData = this . areas . map ( i => {
return {
return {
... i ,
... i ,
_data : [ ]
_data : new Map ( )
}
}
} )
} )
this . transfers . forEach ( item => {
this . transfers . forEach ( item => {
let filterData = this . showData . find ( i => i . value === item . equipment _id _equipments _id _relation . area )
let filterData = this . showData . find ( i => i . value === item . equipment _id _equipments _id _relation . area )
if ( filterData ) {
if ( filterData ) {
filterData . _data . push ( item )
if ( filterData . _data . has ( item . equipment _id ) ) {
filterData . _data . get ( item . equipment _id ) . push ( item )
} else {
filterData . _data . set ( item . equipment _id , [ item ] )
}
}
}
} )
} )
} catch ( e ) {
} catch ( e ) {
}
}
console . log ( this . showData )
} ,
} ,
async exportDocx ( ) {
async exportDocx ( ) {
@ -244,7 +255,7 @@ export default {
{
{
children : [
children : [
new Paragraph ( {
new Paragraph ( {
text : ` ${ this . $moment( this . selectDate ). format ( 'YYYY年MM月DD日' ) } 调度指令执行情况 ` ,
text : ` ${ this . selectDate[ 0 ] ? this . $moment( this . selectDate [0 ] ). format ( 'YYYY年MM月DD日' ) : "-" } ~ ${ this . selectDate [ 1 ] ? this . $moment ( this . selectDate [ 1 ] ) . format ( 'YYYY年MM月DD日' ) : "-" } 调度指令执行情况 ` ,
heading : HeadingLevel . HEADING _1 ,
heading : HeadingLevel . HEADING _1 ,
alignment : AlignmentType . CENTER ,
alignment : AlignmentType . CENTER ,
spacing : {
spacing : {
@ -266,7 +277,7 @@ export default {
} )
} )
]
]
} ) ,
} ) ,
... this . showData . filter ( i => ( i . _data && i . _data . length > 0 ) ) . map ( ( i , index ) => (
... this . showData . filter ( i => ( i . _data && i . _data . size > 0 ) ) . map ( ( i , index ) => (
[
[
new Paragraph ( {
new Paragraph ( {
spacing : {
spacing : {
@ -281,7 +292,7 @@ export default {
} ) ,
} ) ,
]
]
} ) ,
} ) ,
... i . _data . map ( ( i1 , index1 ) => (
... Array . from ( i . _data ) . map ( ( i1 , index1 ) => (
[
[
new Paragraph ( {
new Paragraph ( {
spacing : {
spacing : {
@ -293,19 +304,28 @@ export default {
} ,
} ,
children : [
children : [
new TextRun ( {
new TextRun ( {
text : ` ${ index1 + 1 } . ${ i1 .equipment _id _equipments _id _relation . name } ` ,
text : ` ${ index1 + 1 } . ${ i1 [1 ] [ 0 ] . equipment _id _equipments _id _relation ? i1 [ 1 ] [ 0 ] .equipment _id _equipments _id _relation . name : '' } ` ,
size : 24 ,
size : 24 ,
} ) ,
} ) ,
]
} ) ,
... i1 [ 1 ] . sort ( ( a , b ) => new Date ( a . act _start _time ) . valueOf ( ) - new Date ( b . act _start _time ) . valueOf ( ) ) . map ( ( i2 , index2 ) => {
return new Paragraph ( {
indent : {
firstLine : convertInchesToTwip ( 0.8 )
} ,
children : [
new TextRun ( {
new TextRun ( {
text : ` \ n时间: ${ this . $moment ( i1 . act _start _time ) . format ( 'YYYY-MM-DD HH:mm' ) } - ${ this . $moment ( i1 . act _end _time ) . format ( 'HH:mm' ) } ` ,
text : ` ${ index1 + 1 } . ${ index2 + 1 } ` ,
size : 18
size : 20 ,
} ) ,
} ) ,
new TextRun ( {
new TextRun ( {
text : ` \ n内容: ${ i1 . content || '' } ` ,
text : ` 时间: ${ i2 . act _start _time ? this . $moment ( i2 . act _start _time ) . format ( 'YYYY-MM-DD HH:mm' ) : "-" } ~ ${ i2 . act _end _time ? this . $moment ( i2 . act _end _time ) . format ( 'HH:mm' ) : "-" } \ n \ t ${ i2 . to _transfer _id ? "[调整]" : "" } 内容: ${ i2 . content || '' } ` ,
size : 18
size : 18
} )
} )
]
]
} )
} )
} )
]
]
) ) . flat ( )
) ) . flat ( )
]
]
@ -316,7 +336,7 @@ export default {
} )
} )
const blob = await Packer . toBlob ( document )
const blob = await Packer . toBlob ( document )
saveAs ( blob , ` ${ this . $moment( this . selectDate ). format ( 'YYYY-MM-DD' ) } 调令.docx ` )
saveAs ( blob , ` ${ this . selectDate[ 0 ] ? this . $moment( this . selectDate [0 ] ) . format ( 'YYYY年MM月DD日' ) : "-" } ~ ${ this . selectDate [ 1 ] ? this . $moment ( this . selectDate [ 1 ] ) . format ( 'YYYY年MM月DD日' ) : "-" } 调度指令执行情况 ` )
}
}
} ,
} ,
computed : {
computed : {
@ -355,12 +375,12 @@ export default {
padding : 6 px 0 ;
padding : 6 px 0 ;
}
}
. time {
. time {
text - indent : 6 0px ;
text - indent : 1 0px ;
line - height : 1.5 ;
line - height : 1.5 ;
}
}
. content {
. content {
text - indent : 6 0px ;
text - indent : 1 0px ;
line - height : 1.5 ;
line - height : 1.5 ;
}
}