Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
jml0128
/
xrk-bi
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 95c2e332
authored
Mar 23, 2022
by
llj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat:可配置pdf模板渲染
1 parent
754e97a1
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
51 additions
and
43 deletions
src/App.vue
src/packages/task-recored/src/editScene/components/header.vue
src/packages/task-recored/src/editScene/components/main.vue
src/packages/task-recored/src/editScene/index.vue
src/App.vue
View file @
95c2e33
...
@@ -45,7 +45,7 @@ export default {
...
@@ -45,7 +45,7 @@ export default {
return
{
return
{
isMobile
:
+
getQueryVariable
(
'mobile'
)
===
1
,
isMobile
:
+
getQueryVariable
(
'mobile'
)
===
1
,
isPrint
:
+
getQueryVariable
(
'print'
)
===
1
,
isPrint
:
+
getQueryVariable
(
'print'
)
===
1
,
projectType
:
+
getQueryVariable
(
'projectType'
)
||
6
,
projectType
:
+
getQueryVariable
(
'projectType'
)
||
20
,
// componentName: getQueryVariable('componentName') || 'XrkBi'
// componentName: getQueryVariable('componentName') || 'XrkBi'
componentName
:
'editScene'
componentName
:
'editScene'
};
};
...
...
src/packages/task-recored/src/editScene/components/header.vue
View file @
95c2e33
<
template
>
<
template
>
<div>
<div>
<div
class=
"title"
>
张三
—任务记录数据报表
</div>
<div
class=
"title"
>
{{
resData
.
fullName
}}
—任务记录数据报表
</div>
<div
class=
"block_box"
>
<div
class=
"block_box"
>
<div
class=
"bi_title"
>
<div
class=
"bi_title"
>
<div
class=
"bi_title_text"
>
<div
class=
"bi_title_text"
>
...
@@ -19,39 +19,37 @@
...
@@ -19,39 +19,37 @@
<div
class=
"info"
>
<div
class=
"info"
>
<div
class=
"info-item"
>
<div
class=
"info-item"
>
<span>
项目执行人:
</span>
<span>
项目执行人:
</span>
<span>
张三
</span>
<span>
{{
resData
.
fullName
}}
</span>
</div>
</div>
<div
class=
"info-item"
>
<div
class=
"info-item"
>
<span>
项目名称:
</span>
<span>
项目名称:
</span>
<span>
xxxx准入
</span>
<span>
{{
resData
.
projectName
}}
</span>
</div>
</div>
<div
class=
"info-item"
>
<div
class=
"info-item"
>
<span>
电话:
</span>
<span>
电话:
</span>
<span>
13222222222
</span>
<span>
{{
resData
.
phone
}}
</span>
</div>
</div>
<div
class=
"info-item"
>
<div
v-if=
"resData.gongyeNameIsShow == 1"
class=
"info-item"
>
<span>
发行单位
:
</span>
<span>
项目方
:
</span>
<span>
<span>
杭州大江东产业集聚区设宝广告设计工作室杭州大江东产业集聚区设宝广告设计工作室杭州大江东产业集聚区设宝广告设计工作室杭州大江东产业集聚区设宝广告设计工作室
{{
resData
.
gongyeName
}}
</span>
</span>
</div>
</div>
<div
class=
"info-item"
>
<div
class=
"info-item"
>
<span
v-if=
"from === 'gongye'"
>
工业:
</span>
<span>
{{
resData
.
enterpriseTitle
}}
</span>
<span
v-if=
"from === 'cso'"
>
服务商:
</span>
<span>
{{
resData
.
enterpriseName
}}
</span>
<span>
XXXXX服务商
</span>
</div>
</div>
<div
class=
"info-item"
>
<div
class=
"info-item"
>
<span>
任务提交时间:
</span>
<span>
任务提交时间:
</span>
<span>
2021-03-31 21:21:21
</span>
<span>
{{
dateFormat
(
resData
.
finishDt
)
}}
</span>
</div>
</div>
<div
class=
"info-item"
>
<div
class=
"info-item"
>
<span>
任务编码:
</span>
<span>
任务编码:
</span>
<span>
PZ_1620375371338
</span>
<span>
{{
resData
.
taskCode
}}
</span>
</div>
</div>
<div
class=
"info-item"
>
<div
v-if=
"resData.isAuditGongye > 0"
class=
"info-item"
>
<span
v-if=
"from === 'gongye'"
>
工业审核人:
</span>
<span>
服务商审核人:
</span>
<span
v-if=
"from === 'cso'"
>
服务商审核人:
</span>
<span>
{{
resData
.
csoAuditUser
}}
</span>
<span>
xxxxxxx
</span>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -59,10 +57,15 @@
...
@@ -59,10 +57,15 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
dateFormat
from
'../../../../../tools/dateFormat'
;
export
default
{
export
default
{
props
:
{
props
:
{
from
:
{
from
:
String
,
type
:
String
resData
:
Object
},
methods
:
{
dateFormat
(
e
)
{
return
dateFormat
(
e
);
}
}
}
}
};
};
...
...
src/packages/task-recored/src/editScene/components/main.vue
View file @
95c2e33
<
template
>
<
template
>
<div>
<div>
<div
class=
"block_box"
>
<div
v-if=
"+projectType === 20"
class=
"block_box"
>
<div
class=
"bi_title"
>
<div
class=
"bi_title"
>
<div
class=
"bi_title_text"
>
<div
class=
"bi_title_text"
>
<div
class=
"bi_title_text_content"
>
<div
class=
"bi_title_text_content"
>
...
@@ -55,7 +55,10 @@
...
@@ -55,7 +55,10 @@
<
div
class
=
"bi_title"
>
<
div
class
=
"bi_title"
>
<
div
class
=
"bi_title_text"
>
<
div
class
=
"bi_title_text"
>
<
div
class
=
"bi_title_text_content"
>
<
div
class
=
"bi_title_text_content"
>
<
div
class
=
"bi_title_text_index"
>
03
<
/div
>
<!--
任务内容信息标题顺序
可配置是
03
调研是
02
-->
<
div
class
=
"bi_title_text_index"
>
{{
{
19
:
'02'
,
20
:
'03'
}
[
+
projectType
]
}}
<
/div
>
任务内容信息
任务内容信息
<
/div
>
<
/div
>
<
img
<
img
...
@@ -67,7 +70,7 @@
...
@@ -67,7 +70,7 @@
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
v
-
for
=
"(item, index) in resData.contentTitleList"
:
key
=
"item.id"
>
<
div
v
-
for
=
"(item, index) in resData.contentTitleList"
:
key
=
"item.id"
>
<!--
单选题
/
投票题
/
多选
-->
<!--
单选题
/
多选
/
投票题
-->
<
div
v
-
if
=
"[1, 2, 3].includes(item.type)"
class
=
"question-item"
>
<
div
v
-
if
=
"[1, 2, 3].includes(item.type)"
class
=
"question-item"
>
<
div
class
=
"question-item-title"
>
<
div
class
=
"question-item-title"
>
<
span
>
{{
`${index + 1
}
.${item.title
}
`
}}
<
/span
>
<
span
>
{{
`${index + 1
}
.${item.title
}
`
}}
<
/span
>
...
@@ -92,7 +95,7 @@
...
@@ -92,7 +95,7 @@
<!--
单填空
/
多填空
/
数字填空
/
打分
/
时间
/
月度
/
描述
-->
<!--
单填空
/
多填空
/
数字填空
/
打分
/
时间
/
月度
/
描述
-->
<
div
<
div
v
-
else
-
if
=
"[4, 5,
19, 6, 14, 15
, 18].includes(item.type)"
v
-
else
-
if
=
"[4, 5,
6, 7, 19, 14, 15, 17
, 18].includes(item.type)"
class
=
"question-item"
class
=
"question-item"
>
>
<
div
class
=
"question-item-title"
>
<
div
class
=
"question-item-title"
>
...
@@ -112,17 +115,17 @@
...
@@ -112,17 +115,17 @@
备注:
{{
item
.
remark
}}
备注:
{{
item
.
remark
}}
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<!--
图片题
/
签名题
-->
<!--
图片题
/
签名题
/
定位题
-->
<
div
v
-
else
-
if
=
"[20, 13].includes(item.type)"
class
=
"question-item"
>
<
div
v
-
else
-
if
=
"[20, 13
, 16
].includes(item.type)"
class
=
"question-item"
>
<
div
class
=
"question-item-title"
>
<
div
class
=
"question-item-title"
>
<
span
>
{{
`${index + 1
}
.${item.title
}
`
}}
<
/span
>
<
span
>
{{
`${index + 1
}
.${item.title
}
`
}}
<
/span
>
<
span
>
{{
titleMap
(
item
.
type
)
}}
<
/span
>
<
span
>
{{
titleMap
(
item
.
type
)
}}
<
/span
>
<
/div
>
<
/div
>
<
img
<
img
v
-
if
=
"item.type === 20"
v
-
if
=
"item.type === 20
|| item.type === 16
"
style
=
"margin-top: 10px"
style
=
"margin-top: 10px"
width
=
"180"
width
=
"180"
:
src
=
"item.
answer
"
:
src
=
"item.
type === 20 ? item.answer : item.addressPicUrl
"
alt
=
"img"
alt
=
"img"
/>
/>
<
img
<
img
...
@@ -140,7 +143,7 @@
...
@@ -140,7 +143,7 @@
<
/div
>
<
/div
>
<!--
文件题
-->
<!--
文件题
-->
<
div
<
div
v
-
else
-
if
=
"[9, 10, 11, 12].includes(item.type)"
v
-
else
-
if
=
"[
8,
9, 10, 11, 12].includes(item.type)"
class
=
"question-item"
class
=
"question-item"
>
>
<
div
class
=
"question-item-title"
>
<
div
class
=
"question-item-title"
>
...
@@ -173,20 +176,26 @@ const qustionMap = {
...
@@ -173,20 +176,26 @@ const qustionMap = {
4
:
'【单项填空题】'
,
4
:
'【单项填空题】'
,
5
:
'【多项填空题】'
,
5
:
'【多项填空题】'
,
6
:
'【打分题】'
,
6
:
'【打分题】'
,
19
:
'【数字填空
题】'
,
7
:
'【地址
题】'
,
20
:
'【图片题
】'
,
8
:
'【上传附件
】'
,
9
:
'【上传pdf】'
,
9
:
'【上传pdf】'
,
10
:
'【上传word】'
,
10
:
'【上传word】'
,
12
:
'【上传ppt】'
,
11
:
'【上传excel】'
,
11
:
'【上传excel】'
,
12
:
'【上传ppt】'
,
13
:
'【图片题】'
,
13
:
'【图片题】'
,
14
:
'【时间题】'
,
14
:
'【时间题】'
,
15
:
'【月度题】'
,
15
:
'【月度题】'
,
18
:
'【描述题】'
16
:
'【定位题】'
,
17
:
'【描述题】'
,
18
:
'【描述题】'
,
19
:
'【数字填空题】'
,
20
:
'【图片题】'
,
22
:
'【姓名填空题】'
}
;
}
;
export
default
{
export
default
{
props
:
{
props
:
{
resData
:
Object
resData
:
Object
,
projectType
:
[
String
,
Number
]
}
,
}
,
data
()
{
data
()
{
return
{
}
;
return
{
}
;
...
@@ -198,9 +207,6 @@ export default {
...
@@ -198,9 +207,6 @@ export default {
titleMap
(
type
)
{
titleMap
(
type
)
{
return
qustionMap
[
type
];
return
qustionMap
[
type
];
}
}
}
,
created
()
{
console
.
log
(
this
.
resData
,
'questionList'
);
}
}
}
;
}
;
<
/script
>
<
/script
>
...
...
src/packages/task-recored/src/editScene/index.vue
View file @
95c2e33
<
template
>
<
template
>
<div
class=
"template-container"
>
<div
class=
"template-container"
>
<Header
:from=
"from"
></Header>
<Header
:from=
"from"
:resData=
"resData"
></Header>
<Main
:resData=
"resData"
></Main>
<Main
:resData=
"resData"
:projectType=
"projectType"
></Main>
<Footer></Footer>
<Footer></Footer>
</div>
</div>
</
template
>
</
template
>
...
@@ -16,14 +16,13 @@ export default {
...
@@ -16,14 +16,13 @@ export default {
props
:
{
props
:
{
from
:
{
from
:
{
type
:
String
,
type
:
String
,
default
:
'
cso
'
default
:
'
gongye
'
},
},
projectType
:
{
projectType
:
{
type
:
String
||
Number
,
type
:
[
Number
,
String
]
default
:
'20'
},
},
taskId
:
{
taskId
:
{
type
:
String
||
Number
,
type
:
[
String
,
Number
]
,
default
:
'1209161'
default
:
'1209161'
}
}
},
},
...
@@ -39,7 +38,7 @@ export default {
...
@@ -39,7 +38,7 @@ export default {
},
},
created
()
{
created
()
{
makeSceneTaskInfo
({
taskId
:
this
.
taskId
}).
then
(
res
=>
{
makeSceneTaskInfo
({
taskId
:
this
.
taskId
}).
then
(
res
=>
{
this
.
resData
=
res
.
data
[
0
]
;
this
.
resData
=
res
.
data
;
});
});
}
}
};
};
...
...
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment