Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
bdc
/
bdcdj-web
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
4e163b1a
authored
2023-12-13 14:24:38 +0800
by
renchao@pashanhoo.com
Browse Files
Options
Browse Files
Tag
Download
Plain Diff
Merge branch 'dev'
2 parents
57301a31
784f3522
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
324 additions
and
431 deletions
README.md
package.json
public/config.json
src/image/duijie.png
src/router/index.js
src/utils/operation.js
src/views/components/imagePreview.vue
src/views/djbworkflow/components/clxx/dialog/imagePreview.vue
src/views/djbworkflow/components/clxx/index.vue
src/views/home/index.scss
src/views/login/index.vue
src/views/registerBook/components/clxx/dialog/imagePreview.vue
src/views/registerBook/djbFrameall.vue
src/views/sjgx/gbmsjgx/gbmsjgx.vue
src/views/sjgx/jkgnck/djbcxdata.js
src/views/sjgx/sbxtsjts/djbcxdata.js
src/views/system/dymbgl/components/editDialog.vue
src/views/tjfx/cstj/index.vue
src/views/tjfx/tjltj/index.vue
src/views/workflow/components/clxx/clxxUnify.vue
src/views/workflow/components/dialog/txdw.vue
src/views/xxba/components/clxx/dialog/imagePreview.vue
src/views/xxba/components/clxx/index.vue
src/views/ywbl/ycsl/ycsl.vue
vue.config.js
README.md
View file @
4e163b1
...
...
@@ -40,5 +40,8 @@ import { popupDialog,popupCacel} from "@/utils/popup.js";
popupDialog(title, "xxxx", data);
popupCacel() 可以关闭弹框
<!-- 高拍仪类型 -->
<!-- lt:良田 jy:捷宇 -->
...
...
package.json
View file @
4e163b1
...
...
@@ -34,7 +34,9 @@
"vue-router"
:
"3.0.2"
,
"vue-seamless-scroll"
:
"^1.1.23"
,
"vuex"
:
"3.1.0"
,
"x2js"
:
"^3.4.4"
"x2js"
:
"^3.4.4"
,
"xlsx"
:
"^0.17.0"
,
"xlsx-style"
:
"^0.8.13"
},
"devDependencies"
:
{
"@vue/cli-plugin-babel"
:
"4.4.4"
,
...
...
public/config.json
View file @
4e163b1
...
...
@@ -2,5 +2,6 @@
"TITLE"
:
"不动产登记系统"
,
"SERVERAPI"
:
"/bdcdj"
,
"IDCARDURL"
:
"http://127.0.0.1:33088/function=get_idcard&readnew=0"
,
"adapter"
:
"dysqs-630222"
"adapter"
:
"dysqs-630222"
,
"gaopaiyi"
:
"jy"
}
\ No newline at end of file
...
...
src/image/duijie.png
0 → 100644
View file @
4e163b1
415 KB
src/router/index.js
View file @
4e163b1
...
...
@@ -126,6 +126,13 @@ export const asyncRoutes = [
component
:
()
=>
import
(
'@/views/ywbl/ybx/ybx.vue'
),
name
:
'ybx'
,
meta
:
{
title
:
'已办箱'
}
},
{
path
:
'ycsl'
,
id
:
'24'
,
parentId
:
'2'
,
component
:
()
=>
import
(
'@/views/ywbl/ycsl/ycsl.vue'
),
name
:
'ycsl'
,
meta
:
{
title
:
'一窗受理'
}
},
]
},
...
...
src/utils/operation.js
View file @
4e163b1
...
...
@@ -66,7 +66,6 @@ export function judgeSort (arr) {
}
return
arr
}
// 上下移动
/**
* @description: 上下移动
* @param {*} bsmDict
...
...
@@ -98,7 +97,6 @@ export function realMove (bsmDict, operate, data) {
}
data
=
judgeSort
(
changeSort
(
data
,
bsmDict
));
}
// 获取所有父节点
/**
* @description: 获取所有父节点
* @param {*} treeData
...
...
src/views/components/imagePreview.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-1
1-14 13:25:36
* @LastEditTime: 2023-1
2-13 13:44:24
-->
<
template
>
<div
class=
"rlPopup"
>
...
...
@@ -12,7 +12,8 @@
<i
class=
"el-icon-arrow-right"
></i>
</div>
<div
class=
"img-list-wrap"
v-Loading=
"loading"
>
<img
src=
"http://127.0.0.1:38088/video=stream&camidx=0"
v-if=
"isScan"
alt=
"高拍仪"
>
<img
id=
"photo"
src=
""
v-show=
"isScan && this.BASE_API.gaopaiyi=='jy'"
alt=
"高拍仪捷宇"
>
<img
src=
"http://127.0.0.1:38088/video=stream&camidx=0"
v-if=
"isScan && this.BASE_API.gaopaiyi=='lt'"
alt=
"高拍仪良田"
>
<div
v-for=
"(img, i) in previewImg.imgList"
:key=
"i"
v-else
>
<photo-zoom
:url=
"img.fjurl"
:bigWidth=
"165"
v-if=
"i === previewImg.index"
:scale=
"2"
overlayStyle=
"width: 100%;height:100%"
>
...
...
@@ -89,6 +90,7 @@
showViewer
:
false
,
initialIndex
:
0
,
allLi
:
[],
webSocket
:
null
}
},
watch
:
{
...
...
@@ -107,9 +109,37 @@
}
},
created
()
{
let
that
=
this
this
.
maxLength
=
0
;
this
.
allLi
=
_
.
cloneDeep
(
this
.
previewImg
.
imgList
).
map
(
item
=>
item
.
fjurl
)
this
.
thumbnailImages
=
this
.
previewImg
.
imgList
if
(
this
.
BASE_API
.
gaopaiyi
==
'jy'
)
{
this
.
webSocket
=
new
WebSocket
(
'ws://localhost:1818'
);
this
.
webSocket
.
onmessage
=
function
(
event
)
{
let
begin_data
=
"data:image/jpeg;base64,"
;
document
.
getElementById
(
'photo'
).
src
=
begin_data
+
event
.
data
;
if
(
event
.
data
.
indexOf
(
'BeginsGetBase64'
)
>=
0
)
{
let
blob
=
that
.
dataURLtoBlob
(
'data:image/png;base64,'
+
event
.
data
.
replace
(
'BeginsGetBase64'
,
''
).
replace
(
'EndsGetBase64'
,
''
));
let
file
=
that
.
blobToFile
(
blob
);
var
formData
=
new
FormData
();
formData
.
append
(
'file'
,
file
)
formData
.
append
(
"bsmSj"
,
that
.
previewImg
.
bsmSj
);
formData
.
append
(
"bsmSlsq"
,
that
.
previewImg
.
bsmSlsq
);
if
(
that
.
previewImg
.
imgList
.
length
>
0
)
{
formData
.
append
(
"ssBsmClmx"
,
that
.
previewImg
.
imgList
[
that
.
previewImg
.
index
].
bsmClmx
);
}
uploadSjClmx
(
formData
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
that
.
$emit
(
'updateList'
,
{
children
:
res
.
result
,
bsmSj
:
that
.
previewImg
.
bsmSj
})
that
.
$message
({
message
:
'上传成功!'
,
type
:
'success'
})
}
})
}
}
}
},
computed
:
{
isFirst
()
{
...
...
@@ -164,32 +194,36 @@
* @description: 拍照
* @author: renchao
*/
handleViewScan
()
{
function
dataURLtoBlob
(
base64String
)
{
const
arr
=
base64String
.
split
(
','
);
if
(
arr
.
length
!==
2
)
{
throw
new
Error
(
'Invalid Base64 format'
);
}
const
mime
=
arr
[
0
].
match
(
/:
(
.*
?)
;/
)[
1
];
if
(
!
mime
)
{
throw
new
Error
(
'Cannot retrieve MIME type'
);
}
const
bstr
=
atob
(
arr
[
1
]);
const
n
=
bstr
.
length
;
const
u8arr
=
new
Uint8Array
(
n
);
for
(
let
i
=
0
;
i
<
n
;
i
++
)
{
u8arr
[
i
]
=
bstr
.
charCodeAt
(
i
);
}
return
new
Blob
([
u8arr
],
{
type
:
mime
});
dataURLtoBlob
(
base64String
)
{
const
arr
=
base64String
.
split
(
','
);
if
(
arr
.
length
!==
2
)
{
throw
new
Error
(
'Invalid Base64 format'
);
}
const
mime
=
arr
[
0
].
match
(
/:
(
.*
?)
;/
)[
1
];
if
(
!
mime
)
{
throw
new
Error
(
'Cannot retrieve MIME type'
);
}
const
bstr
=
atob
(
arr
[
1
]);
const
n
=
bstr
.
length
;
const
u8arr
=
new
Uint8Array
(
n
);
for
(
let
i
=
0
;
i
<
n
;
i
++
)
{
u8arr
[
i
]
=
bstr
.
charCodeAt
(
i
);
}
function
blobToFile
(
blob
)
{
let
name
=
getUuid
(
8
)
+
'.jpg'
const
file
=
new
File
([
blob
],
name
);
return
file
;
return
new
Blob
([
u8arr
],
{
type
:
mime
});
},
blobToFile
(
blob
)
{
let
name
=
getUuid
(
8
)
+
'.jpg'
const
file
=
new
File
([
blob
],
name
);
return
file
;
},
handleViewScan
()
{
if
(
this
.
BASE_API
.
gaopaiyi
==
'jy'
)
{
this
.
webSocket
.
send
(
'sGetBase64'
);
return
}
getAltimeterInfo
().
then
(
res
=>
{
let
blob
=
dataURLtoBlob
(
'data:image/png;base64,'
+
res
.
data
.
photoBase64
);
let
file
=
blobToFile
(
blob
);
let
blob
=
this
.
dataURLtoBlob
(
'data:image/png;base64,'
+
res
.
data
.
photoBase64
);
let
file
=
this
.
blobToFile
(
blob
);
var
formData
=
new
FormData
();
formData
.
append
(
'file'
,
file
)
formData
.
append
(
"bsmSj"
,
this
.
previewImg
.
bsmSj
);
...
...
src/views/djbworkflow/components/clxx/dialog/imagePreview.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-1
1-14 13:25:42
* @LastEditTime: 2023-1
2-13 14:19:09
-->
<
template
>
<div
class=
"rlPopup"
>
...
...
@@ -12,7 +12,8 @@
<i
class=
"el-icon-arrow-right"
></i>
</div>
<div
class=
"img-list-wrap"
v-Loading=
"loading"
>
<img
src=
"http://127.0.0.1:38088/video=stream&camidx=0"
v-if=
"isScan"
alt=
"高拍仪"
>
<img
id=
"photo"
src=
""
v-show=
"isScan && this.BASE_API.gaopaiyi=='jy'"
alt=
"高拍仪捷宇"
>
<img
src=
"http://127.0.0.1:38088/video=stream&camidx=0"
v-if=
"isScan && this.BASE_API.gaopaiyi=='lt'"
alt=
"高拍仪"
>
<div
v-for=
"(img, i) in previewImg.imgList"
:key=
"i"
v-else
>
<photo-zoom
:url=
"img.fjurl"
:bigWidth=
"165"
v-if=
"i === previewImg.index"
:scale=
"2"
overlayStyle=
"width: 100%;height:100%"
>
...
...
@@ -89,6 +90,7 @@
showViewer
:
false
,
initialIndex
:
0
,
allLi
:
[],
webSocket
:
null
}
},
watch
:
{
...
...
@@ -107,9 +109,36 @@
}
},
created
()
{
let
that
=
this
this
.
maxLength
=
0
;
this
.
allLi
=
_
.
cloneDeep
(
this
.
previewImg
.
imgList
).
map
(
item
=>
item
.
fjurl
)
this
.
thumbnailImages
=
this
.
previewImg
.
imgList
if
(
this
.
BASE_API
.
gaopaiyi
==
'jy'
)
{
this
.
webSocket
=
new
WebSocket
(
'ws://localhost:1818'
);
this
.
webSocket
.
onmessage
=
function
(
event
)
{
let
begin_data
=
"data:image/jpeg;base64,"
;
document
.
getElementById
(
'photo'
).
src
=
begin_data
+
event
.
data
;
if
(
event
.
data
.
indexOf
(
'BeginsGetBase64'
)
>=
0
)
{
let
blob
=
that
.
dataURLtoBlob
(
'data:image/png;base64,'
+
event
.
data
.
replace
(
'BeginsGetBase64'
,
''
).
replace
(
'EndsGetBase64'
,
''
));
let
file
=
that
.
blobToFile
(
blob
);
var
formData
=
new
FormData
();
formData
.
append
(
'file'
,
file
)
formData
.
append
(
"bsmSj"
,
that
.
previewImg
.
bsmSj
);
if
(
that
.
previewImg
.
imgList
.
length
>
0
)
{
formData
.
append
(
"index"
,
that
.
previewImg
.
imgList
[
that
.
previewImg
.
index
].
sxh
);
}
uploadSjClmx
(
formData
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
that
.
$emit
(
'updateList'
,
{
children
:
res
.
result
,
bsmSj
:
that
.
previewImg
.
bsmSj
})
that
.
$message
({
message
:
'上传成功!'
,
type
:
'success'
})
}
})
}
}
}
},
computed
:
{
isFirst
()
{
...
...
@@ -164,28 +193,32 @@
* @description: 拍照
* @author: renchao
*/
handleViewScan
()
{
function
dataURLtoBlob
(
base64String
)
{
const
arr
=
base64String
.
split
(
','
);
if
(
arr
.
length
!==
2
)
{
throw
new
Error
(
'Invalid Base64 format'
);
}
const
mime
=
arr
[
0
].
match
(
/:
(
.*
?)
;/
)[
1
];
if
(
!
mime
)
{
throw
new
Error
(
'Cannot retrieve MIME type'
);
}
const
bstr
=
atob
(
arr
[
1
]);
const
n
=
bstr
.
length
;
const
u8arr
=
new
Uint8Array
(
n
);
for
(
let
i
=
0
;
i
<
n
;
i
++
)
{
u8arr
[
i
]
=
bstr
.
charCodeAt
(
i
);
}
return
new
Blob
([
u8arr
],
{
type
:
mime
});
dataURLtoBlob
(
base64String
)
{
const
arr
=
base64String
.
split
(
','
);
if
(
arr
.
length
!==
2
)
{
throw
new
Error
(
'Invalid Base64 format'
);
}
const
mime
=
arr
[
0
].
match
(
/:
(
.*
?)
;/
)[
1
];
if
(
!
mime
)
{
throw
new
Error
(
'Cannot retrieve MIME type'
);
}
const
bstr
=
atob
(
arr
[
1
]);
const
n
=
bstr
.
length
;
const
u8arr
=
new
Uint8Array
(
n
);
for
(
let
i
=
0
;
i
<
n
;
i
++
)
{
u8arr
[
i
]
=
bstr
.
charCodeAt
(
i
);
}
function
blobToFile
(
blob
)
{
let
name
=
getUuid
(
8
)
+
'.jpg'
const
file
=
new
File
([
blob
],
name
);
return
file
;
return
new
Blob
([
u8arr
],
{
type
:
mime
});
},
blobToFile
(
blob
)
{
let
name
=
getUuid
(
8
)
+
'.jpg'
const
file
=
new
File
([
blob
],
name
);
return
file
;
},
handleViewScan
()
{
if
(
this
.
BASE_API
.
gaopaiyi
==
'jy'
)
{
this
.
webSocket
.
send
(
'sGetBase64'
);
return
}
getAltimeterInfo
().
then
(
res
=>
{
let
blob
=
dataURLtoBlob
(
'data:image/png;base64,'
+
res
.
data
.
photoBase64
);
...
...
src/views/djbworkflow/components/clxx/index.vue
View file @
4e163b1
...
...
@@ -46,6 +46,7 @@
</div>
<image-preview
ref=
"imageRef"
:key=
"imgKey"
v-if=
"tableData.length > 0"
:previewImg=
"previewImg"
@
updateList=
"updateList"
...
...
@@ -75,6 +76,7 @@
},
data
()
{
return
{
imgKey
:
0
,
isDialog
:
false
,
iclass
:
""
,
// 材料目录选中
...
...
@@ -284,6 +286,7 @@
if
(
this
.
$refs
.
imageRef
)
{
this
.
$refs
.
imageRef
.
initialIndex
=
0
}
this
.
imgKey
++
},
/**
* @description: 小图片点击
...
...
src/views/home/index.scss
View file @
4e163b1
...
...
@@ -57,8 +57,8 @@
.home-left
{
width
:
70%
;
padding-right
:
3px
;
height
:
100%
;
font-size
:
14px
;
min-height
:
625px
;
.list-title
{
overflow
:
hidden
;
...
...
@@ -81,7 +81,8 @@
.box-mountNode
{
flex
:
1
;
height
:
calc
(
100%
-
490px
);
// height: calc(100% - 490px);
min-height
:
130px
;
}
.home-right
{
...
...
@@ -89,6 +90,7 @@
width
:
30%
;
display
:
flex
;
flex-direction
:
column
;
min-height
:
620px
;
.list-title
{
overflow
:
hidden
;
...
...
src/views/login/index.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-
07-19 09:50:45
* @LastEditTime: 2023-
11-30 17:07:18
-->
<
template
>
<div
id=
"login"
>
...
...
@@ -260,7 +260,12 @@
position
:
absolute
;
left
:
50%
;
top
:
calc
(
50%
+
10px
);
transform
:
translate
(
-50%
,
-50%
);
margin
:
-225px
0
0
-468px
;
}
@media
screen
and
(
max-width
:
1440px
)
{
.login-content-wrap
{
transform
:
scale
(
0.8
);
}
}
.login-logo
{
height
:
70px
;
...
...
src/views/registerBook/components/clxx/dialog/imagePreview.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-1
1-14 13:25:49
* @LastEditTime: 2023-1
2-13 13:59:52
-->
<
template
>
<div
class=
"rlPopup"
>
...
...
@@ -12,8 +12,7 @@
<i
class=
"el-icon-arrow-right"
></i>
</div>
<div
class=
"img-list-wrap"
v-Loading=
"loading"
>
<img
src=
"http://127.0.0.1:38088/video=stream&camidx=0"
v-if=
"isScan"
alt=
""
>
<div
v-for=
"(img, i) in previewImg.imgList"
:key=
"i"
v-else
>
<div
v-for=
"(img, i) in previewImg.imgList"
:key=
"i"
>
<photo-zoom
:url=
"img.fjurl"
:bigWidth=
"165"
v-if=
"i === previewImg.index"
:scale=
"2"
overlayStyle=
"width: 100%;height:100%"
>
</photo-zoom>
...
...
@@ -60,8 +59,6 @@
loading
:
false
,
key
:
0
,
isScan
:
false
,
// 打开高拍仪
scanTitle
:
'打开高拍仪'
,
transform
:
{
scale
:
1
,
degree
:
0
...
...
src/views/registerBook/djbFrameall.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-1
1-10 10:36:22
* @LastEditTime: 2023-1
2-13 14:24:09
-->
<
template
>
<div
class=
"content loadingtext"
>
...
...
@@ -57,8 +57,6 @@
<
script
>
import
{
getBdcqljqtsx
,
getBdcqljqtsxBdcdyh
}
from
"@/api/djbDetail.js"
;
import
{
loadTreeData
,
loadsfqData
,
getNode
}
from
"./djbFrameData.js"
;
import
{
searchTaskToDo
}
from
"@/api/workflow/search.js"
;
import
{
leftMenu
}
from
"@/api/workFlow.js"
;
export
default
{
data
()
{
return
{
...
...
@@ -106,57 +104,6 @@
obj
=
obj
.
substring
(
index
+
1
,
obj
.
length
);
return
obj
;
},
// 通过不动产业务号获取参数
/**
* @description: 通过不动产业务号获取参数
* @author: renchao
*/
// getdata () {
// this.queryForm = {
// bdcdyh: this.getCaption(window.location.href),
// currentPage: 1,
// djlx: "",
// pageSize: 10,
// qllx: "",
// ywh: "",
// ywly: "",
// };
// if (this.queryForm) {
// this.$startLoading();
// searchTaskToDo({
// ...this.queryForm,
// }).then((res) => {
// if (res.code === 200) {
// let { records } = res.result;
// this.loadBdcdylist(records[0].bsmSlsq, records[0].bestepid);
// this.$endLoading();
// }
// });
// }
// },
// 获取不动产信息
/**
* @description: 获取不动产信息
* @param {*} a
* @param {*} b
* @author: renchao
*/
// loadBdcdylist (a, b) {
// var formdata = new FormData();
// formdata.append("bsmSlsq", a);
// formdata.append("bestepid", b);
// leftMenu(formdata).then((res) => {
// if (res.code === 200) {
// if (res.result) {
// this.currentSelectProps = res.result[0];
// this.loadData(this.currentSelectProps.bdcdyh);
// }
// }
// });
// },
/**
* @description: getBdcdyh
* @author: miaofang
...
...
src/views/sjgx/gbmsjgx/gbmsjgx.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-07-19 15:04:26
-->
<
template
>
<div
class=
"from-clues"
>
<!-- 表单部分 -->
<div
class=
"from-clues-header"
>
<el-form
:model=
"queryForm"
ref=
"queryForm"
label-width=
"70px"
>
<el-row>
<el-col
:span=
"5"
>
<el-form-item
label=
"接口类型"
>
<el-input
placeholder=
"请输入编号"
v-model=
"queryForm.jklx"
class=
"width200px"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"调用状态"
>
<el-input
placeholder=
"请输入编号"
v-model=
"queryForm.dyzt"
class=
"width200px"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"5"
>
<el-form-item
label=
"访问IP"
>
<el-input
placeholder=
"请输入IP"
v-model=
"queryForm.fwip"
class=
"width200px"
clearable
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"访问时间"
>
<el-input
placeholder=
"请输入业务号"
v-model=
"queryForm.fwsj"
clearable
class=
"width200px"
>
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"10"
>
<el-form-item
label=
"请求地址"
>
<el-input
placeholder=
"请输入url"
v-model=
"queryForm.qqdz"
class=
"width500px"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-row>
<el-row>
<el-col
:span=
"20"
>
<el-form-item
label=
"请求头数据"
>
<el-input
placeholder=
"请输入请求头数据"
v-model=
"queryForm.qqtsj"
class=
"width500px"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"20"
>
<el-form-item
label=
"入参数据"
>
<el-input
placeholder=
"请输入参数"
v-model=
"queryForm.rcsj"
class=
"width500px"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"5"
>
<el-form-item
label=
"调用描述"
>
<el-input
placeholder=
"调用描述"
v-model=
"queryForm.dyms"
class=
"width200px"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"5"
>
<el-form-item
label=
"返回数据"
>
<el-input
placeholder=
"返回数据"
v-model=
"queryForm.fhsj"
class=
"width200px"
clearable
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"4"
class=
"btnColRight"
>
<el-form-item>
<el-button
type=
"primary"
@
click=
"queryClick()"
>
发送
</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<!-- 表格 -->
<div
class=
"duijie"
>
<img
src=
"../../../image/duijie.png"
alt=
""
>
</div>
</
template
>
<
script
>
export
default
{
export
default
{
}
</
script
>
data
()
{
return
{
queryForm
:
{
jklx
:
""
,
dyzt
:
""
,
fwip
:
""
,
fwsj
:
""
,
qqdz
:
""
,
qqtsj
:
""
,
rcsj
:
""
,
dyms
:
""
,
fhsj
:
""
,
},
}
},
<
style
lang=
"scss"
scoped
>
.duijie
{
width
:
100%
;
height
:
100%
;
margin
:
auto
;
text-align
:
center
}
</
script
>
<
style
scoped
lang=
"scss"
>
@import
"~@/styles/public.scss"
;
</
style
>
\ No newline at end of file
}
</
style
>
...
...
src/views/sjgx/jkgnck/djbcxdata.js
View file @
4e163b1
...
...
@@ -22,7 +22,7 @@ class data extends filter {
)
}
},
{
label
:
"推送状态"
,
render
:
(
h
,
scope
)
=>
{
...
...
@@ -52,12 +52,12 @@ class data extends filter {
// width: '110',
},
{
prop
:
"
ywh1
"
,
prop
:
"
djywmc
"
,
label
:
"登记业务名称"
,
// width: '110',
},
{
prop
:
"
ywh2
"
,
prop
:
"
djqxmc
"
,
label
:
"登记情形名称"
,
// width: '110',
},
...
...
@@ -75,8 +75,8 @@ class data extends filter {
label
:
"推送时间"
,
},
{
prop
:
"
createtime1
"
,
label
:
"响应时
间
"
,
prop
:
"
xysj
"
,
label
:
"响应时
长
"
,
},
{
label
:
'操作'
,
...
...
src/views/sjgx/sbxtsjts/djbcxdata.js
View file @
4e163b1
...
...
@@ -22,7 +22,7 @@ class data extends filter {
)
}
},
{
label
:
"推送状态"
,
render
:
(
h
,
scope
)
=>
{
...
...
@@ -52,12 +52,12 @@ class data extends filter {
// width: '110',
},
{
prop
:
"
ywh1
"
,
prop
:
"
djywmc
"
,
label
:
"登记业务名称"
,
// width: '110',
},
{
prop
:
"
ywh2
"
,
prop
:
"
djqxmc
"
,
label
:
"登记情形名称"
,
// width: '110',
},
...
...
@@ -75,8 +75,8 @@ class data extends filter {
label
:
"推送时间"
,
},
{
prop
:
"
createtime1
"
,
label
:
"响应时
间
"
,
prop
:
"
xysj
"
,
label
:
"响应时
长
"
,
},
{
label
:
'操作'
,
...
...
src/views/system/dymbgl/components/editDialog.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-11-2
1 16:30:43
* @LastEditTime: 2023-11-2
3 13:29:37
-->
<
template
>
<el-form
ref=
"ruleForm"
:model=
"ruleForm"
label-width=
"100px"
:rules=
"rules"
>
...
...
@@ -109,6 +109,7 @@
* @author: renchao
*/
addTemplate
()
{
store
.
dispatch
(
'user/refreshPage'
,
false
);
addPrintTemplate
(
this
.
ruleForm
).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
store
.
dispatch
(
'user/refreshPage'
,
true
);
...
...
src/views/tjfx/cstj/index.vue
View file @
4e163b1
...
...
@@ -34,10 +34,7 @@
<el-col
:span=
"5"
class=
"btnColRight"
>
<el-form-item>
<el-button
type=
"primary"
native-type=
"submit"
@
click=
"handleSearch"
<el-button
type=
"primary"
native-type=
"submit"
@
click=
"chchch"
>
查询
</el-button
>
<el-button
type=
"primary"
native-type=
"submit"
@
click=
"derive"
...
...
@@ -53,6 +50,7 @@
</
template
>
<
script
>
import
*
as
echarts
from
"echarts"
;
import
XLSX
from
"xlsx"
;
export
default
{
components
:
{},
data
()
{
...
...
@@ -76,23 +74,21 @@ export default {
data3
:
[],
xAxisData
:
[
"赵龙龙"
,
"刘龙龙"
,
"田龙龙"
,
"任龙龙"
,
"孙龙龙"
,
"李龙龙"
,
"周龙龙"
,
"刘刚"
,
"任启亮"
,
"梁亚博"
,
"李含"
,
"周路"
,
],
};
},
mounted
()
{
this
.
setdata
();
this
.
setdata
();
// 创建一个 ECharts 实例
this
.
chart
=
echarts
.
init
(
this
.
$refs
.
chart
);
// 在 ECharts 实例中配置图表
this
.
chart
.
setOption
(
this
.
getOption
());
this
.
chooseDateQuick
(
0
);
},
methods
:
{
setdata
()
{
...
...
@@ -102,9 +98,24 @@ export default {
}
},
// 导出
derive
()
{},
derive
()
{
this
.
exdata
=
[[
"受理人员"
,
"收件数"
,
"退件数"
,
"推荐率"
]];
this
.
xAxisData
.
forEach
((
item
,
index
)
=>
{
console
.
log
(
"this.exdata[index+1]"
,
this
.
exdata
[
index
+
1
]);
this
.
exdata
.
push
([]);
this
.
exdata
[
index
+
1
].
push
(
item
);
this
.
exdata
[
index
+
1
].
push
(
this
.
data1
[
index
]);
this
.
exdata
[
index
+
1
].
push
(
this
.
data2
[
index
]);
this
.
exdata
[
index
+
1
].
push
(
this
.
data3
[
index
]);
});
console
.
log
(
"this.exdata"
,
this
.
exdata
);
const
ws
=
XLSX
.
utils
.
aoa_to_sheet
(
this
.
exdata
);
const
wb
=
XLSX
.
utils
.
book_new
();
XLSX
.
utils
.
book_append_sheet
(
wb
,
ws
,
"Sheet1"
);
XLSX
.
writeFile
(
wb
,
"收件与超时统计情况.xlsx"
);
},
// 查询
handleSear
ch
()
{
chch
ch
()
{
console
.
log
(
"dateRange"
,
this
.
dateRange
);
},
getOption
()
{
...
...
@@ -289,10 +300,16 @@ export default {
return `
$
{
year
}
-
$
{
month
}
-
$
{
day
}
`;
},
// 某日期向前/向后num天
jumpNumDay(date, num, linkStr = '-') {
date = new Date(date.getTime() + (num * 24 * 60 * 60 * 1000))
return date.getFullYear() + linkStr + this.changeNum(date.getMonth() + 1) + linkStr + this.changeNum(date.getDate())
},
jumpNumDay(date, num, linkStr = "-") {
date = new Date(date.getTime() + num * 24 * 60 * 60 * 1000);
return (
date.getFullYear() +
linkStr +
this.changeNum(date.getMonth() + 1) +
linkStr +
this.changeNum(date.getDate())
);
},
},
};
</
script
>
...
...
@@ -306,8 +323,6 @@ jumpNumDay(date, num, linkStr = '-') {
padding-top
:
3px
;
background-color
:
#ffffff
;
margin-bottom
:
10px
;
}
.rowAc
{
margin-left
:
10px
;
...
...
src/views/tjfx/tjltj/index.vue
View file @
4e163b1
...
...
@@ -37,7 +37,7 @@
<el-button
type=
"primary"
native-type=
"submit"
@
click=
"
handleSear
ch"
@
click=
"
chch
ch"
>
查询
</el-button
>
<el-button
type=
"primary"
native-type=
"submit"
@
click=
"derive"
...
...
@@ -53,6 +53,7 @@
</
template
>
<
script
>
import
*
as
echarts
from
"echarts"
;
import
XLSX
from
'xlsx'
;
export
default
{
components
:
{},
data
()
{
...
...
@@ -75,13 +76,13 @@ export default {
data2
:
[
1
,
4
,
1
,
3
,
2
,
3
,
4
],
data3
:
[],
xAxisData
:
[
"
赵红红
"
,
"
刘红红
"
,
"
田红红
"
,
"
任红红
"
,
"
孙红红
"
,
"
李红红
"
,
"
周红红
"
,
"
任超
"
,
"
杨威
"
,
"
魏娜
"
,
"
张祎旋
"
,
"
苗菁
"
,
"
王文刚
"
,
"
单帅旗
"
,
],
};
},
...
...
@@ -102,9 +103,27 @@ export default {
}
},
// 导出
derive
()
{},
// 导出
derive
()
{
this
.
exdata
=
[
[
'受理人员'
,
'收件数'
,
'退件数'
,
'推荐率'
]
];
this
.
xAxisData
.
forEach
((
item
,
index
)
=>
{
console
.
log
(
"this.exdata[index+1]"
,
this
.
exdata
[
index
+
1
]);
this
.
exdata
.
push
([])
this
.
exdata
[
index
+
1
].
push
(
item
)
this
.
exdata
[
index
+
1
].
push
(
this
.
data1
[
index
])
this
.
exdata
[
index
+
1
].
push
(
this
.
data2
[
index
])
this
.
exdata
[
index
+
1
].
push
(
this
.
data3
[
index
])
})
console
.
log
(
"this.exdata"
,
this
.
exdata
);
const
ws
=
XLSX
.
utils
.
aoa_to_sheet
(
this
.
exdata
);
const
wb
=
XLSX
.
utils
.
book_new
();
XLSX
.
utils
.
book_append_sheet
(
wb
,
ws
,
'Sheet1'
);
XLSX
.
writeFile
(
wb
,
'收件与退件统计情况.xlsx'
);
},
// 查询
handleSear
ch
()
{
chch
ch
()
{
console
.
log
(
"dateRange"
,
this
.
dateRange
);
},
getOption
()
{
...
...
@@ -135,8 +154,6 @@ export default {
<span font-size: 16px; font-weight: 600;">
${
params
.
name
}
:
${
Number
(
params
.
value
).
toFixed
(
2
)
+
"%"
}
<
/span
>
<
/div>`
;
}
,
},
...
...
src/views/workflow/components/clxx/clxxUnify.vue
View file @
4e163b1
...
...
@@ -46,6 +46,7 @@
</div>
<image-preview
ref=
"imageRef"
:key=
"imgKey"
v-if=
"tableData.length > 0"
:previewImg=
"previewImg"
:ableOperation=
"ableOperation"
...
...
@@ -66,6 +67,7 @@
components
:
{
clxxAddDialog
,
imagePreview
,
clxxDetailDialog
},
data
()
{
return
{
imgKey
:
0
,
//表单是否可操作
ableOperation
:
true
,
isDialog
:
false
,
...
...
@@ -292,6 +294,7 @@
if
(
this
.
$refs
.
imageRef
)
{
this
.
$refs
.
imageRef
.
initialIndex
=
0
}
this
.
imgKey
++
},
/**
* @description: 小图片点击
...
...
src/views/workflow/components/dialog/txdw.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-11-23 17:20:01
-->
<
template
>
<iframe
:src=
"ip +'/txdw/#/' + formData.bsmZd"
frameborder=
"0"
style=
"width: 100%; height:710px;"
></iframe>
</
template
>
...
...
src/views/xxba/components/clxx/dialog/imagePreview.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-1
1-14 13:25:52
* @LastEditTime: 2023-1
2-13 13:56:14
-->
<
template
>
<div
class=
"rlPopup"
>
...
...
@@ -12,7 +12,8 @@
<i
class=
"el-icon-arrow-right"
></i>
</div>
<div
class=
"img-list-wrap"
v-Loading=
"loading"
>
<img
src=
"http://127.0.0.1:38088/video=stream&camidx=0"
v-if=
"isScan"
alt=
"高拍仪"
>
<img
id=
"photo"
src=
""
v-show=
"isScan && this.BASE_API.gaopaiyi=='jy'"
alt=
"高拍仪捷宇"
>
<img
src=
"http://127.0.0.1:38088/video=stream&camidx=0"
v-if=
"isScan && this.BASE_API.gaopaiyi=='lt'"
alt=
"高拍仪良田"
>
<div
v-for=
"(img, i) in previewImg.imgList"
:key=
"i"
v-else
>
<photo-zoom
:url=
"img.fileurl"
:bigWidth=
"165"
v-if=
"i === previewImg.index"
:scale=
"2"
overlayStyle=
"width: 100%;height:100%"
>
...
...
@@ -89,6 +90,7 @@
showViewer
:
false
,
initialIndex
:
0
,
allLi
:
[],
webSocket
:
null
}
},
watch
:
{
...
...
@@ -107,9 +109,35 @@
}
},
created
()
{
let
that
=
this
this
.
maxLength
=
0
;
this
.
allLi
=
_
.
cloneDeep
(
this
.
previewImg
.
imgList
).
map
(
item
=>
item
.
fjurl
)
this
.
thumbnailImages
=
this
.
previewImg
.
imgList
if
(
this
.
BASE_API
.
gaopaiyi
==
'jy'
)
{
this
.
webSocket
=
new
WebSocket
(
'ws://localhost:1818'
);
this
.
webSocket
.
onmessage
=
function
(
event
)
{
let
begin_data
=
"data:image/jpeg;base64,"
;
document
.
getElementById
(
'photo'
).
src
=
begin_data
+
event
.
data
;
if
(
event
.
data
.
indexOf
(
'BeginsGetBase64'
)
>=
0
)
{
let
blob
=
that
.
dataURLtoBlob
(
'data:image/png;base64,'
+
event
.
data
.
replace
(
'BeginsGetBase64'
,
''
).
replace
(
'EndsGetBase64'
,
''
));
let
file
=
that
.
blobToFile
(
blob
);
var
formData
=
new
FormData
();
formData
.
append
(
'file'
,
file
)
if
(
that
.
previewImg
.
imgList
.
length
>
0
)
{
formData
.
append
(
"index"
,
that
.
previewImg
.
imgList
[
that
.
previewImg
.
index
].
sxh
);
}
uploadSjClmx
(
formData
,
that
.
previewImg
.
bsmMaterial
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
that
.
$emit
(
'updateList'
,
{
children
:
res
.
result
,
bsmMaterial
:
that
.
previewImg
.
bsmMaterial
})
that
.
$message
({
message
:
'上传成功!'
,
type
:
'success'
})
}
})
}
}
}
},
computed
:
{
isFirst
()
{
...
...
@@ -168,28 +196,32 @@
* @description: 拍照
* @author: renchao
*/
handleViewScan
()
{
function
dataURLtoBlob
(
base64String
)
{
const
arr
=
base64String
.
split
(
','
);
if
(
arr
.
length
!==
2
)
{
throw
new
Error
(
'Invalid Base64 format'
);
}
const
mime
=
arr
[
0
].
match
(
/:
(
.*
?)
;/
)[
1
];
if
(
!
mime
)
{
throw
new
Error
(
'Cannot retrieve MIME type'
);
}
const
bstr
=
atob
(
arr
[
1
]);
const
n
=
bstr
.
length
;
const
u8arr
=
new
Uint8Array
(
n
);
for
(
let
i
=
0
;
i
<
n
;
i
++
)
{
u8arr
[
i
]
=
bstr
.
charCodeAt
(
i
);
}
return
new
Blob
([
u8arr
],
{
type
:
mime
});
dataURLtoBlob
(
base64String
)
{
const
arr
=
base64String
.
split
(
','
);
if
(
arr
.
length
!==
2
)
{
throw
new
Error
(
'Invalid Base64 format'
);
}
const
mime
=
arr
[
0
].
match
(
/:
(
.*
?)
;/
)[
1
];
if
(
!
mime
)
{
throw
new
Error
(
'Cannot retrieve MIME type'
);
}
const
bstr
=
atob
(
arr
[
1
]);
const
n
=
bstr
.
length
;
const
u8arr
=
new
Uint8Array
(
n
);
for
(
let
i
=
0
;
i
<
n
;
i
++
)
{
u8arr
[
i
]
=
bstr
.
charCodeAt
(
i
);
}
function
blobToFile
(
blob
)
{
let
name
=
getUuid
(
8
)
+
'.jpg'
const
file
=
new
File
([
blob
],
name
);
return
file
;
return
new
Blob
([
u8arr
],
{
type
:
mime
});
},
blobToFile
(
blob
)
{
let
name
=
getUuid
(
8
)
+
'.jpg'
const
file
=
new
File
([
blob
],
name
);
return
file
;
},
handleViewScan
()
{
if
(
this
.
BASE_API
.
gaopaiyi
==
'jy'
)
{
this
.
webSocket
.
send
(
'sGetBase64'
);
return
}
getAltimeterInfo
().
then
(
res
=>
{
let
blob
=
dataURLtoBlob
(
'data:image/png;base64,'
+
res
.
data
.
photoBase64
);
...
...
src/views/xxba/components/clxx/index.vue
View file @
4e163b1
...
...
@@ -46,6 +46,7 @@
</div>
<image-preview
ref=
"imageRef"
:key=
"imgKey"
v-if=
"tableData.length > 0"
:previewImg=
"previewImg"
@
updateList=
"updateList"
...
...
@@ -75,6 +76,7 @@
},
data
()
{
return
{
imgKey
:
0
,
isDialog
:
false
,
iclass
:
""
,
// 材料目录选中
...
...
@@ -275,6 +277,7 @@
if
(
this
.
$refs
.
imageRef
)
{
this
.
$refs
.
imageRef
.
initialIndex
=
0
}
this
.
imgKey
++
},
/**
* @description: 小图片点击
...
...
src/views/ywbl/ycsl/ycsl.vue
View file @
4e163b1
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-11-15 09:41:55
-->
<
template
>
<div
class=
"from-clues"
>
<!-- 家庭房产 -->
<div
class=
"from-clues-header"
>
<el-form
:model=
"queryForm"
@
submit
.
native
.
prevent
ref=
"queryForm"
label-width=
"70px"
>
<el-row>
<el-col
:span=
"5"
>
<el-form-item
label=
"申请编号"
>
<el-input
placeholder=
"申请编号"
v-model=
"queryForm.sqbh"
clearable
class=
"width100"
>
</el-input>
</el-form-item>
</el-col>
<el-col
:span=
"9"
class=
"flex"
>
<el-form-item
label=
"申请时间"
>
<el-date-picker
v-model=
"queryForm.date1"
type=
"date"
placeholder=
"开始日期"
value-format=
"yyyy-MM-dd"
clearable
>
</el-date-picker>
至
<el-date-picker
v-model=
"queryForm.date2"
type=
"date"
placeholder=
"结束日期"
value-format=
"yyyy-MM-dd"
clearable
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"权利人"
>
<el-input
placeholder=
"权利人"
v-model=
"queryForm.qlr"
clearable
class=
"width100"
>
</el-input>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"义务人"
>
<el-input
placeholder=
"义务人"
v-model=
"queryForm.ywr"
clearable
class=
"width100"
>
</el-input>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"办理状态"
>
<el-input
placeholder=
"办理状态"
v-model=
"queryForm.blzt"
clearable
class=
"width100"
>
</el-input>
</el-form-item>
</el-col>
<el-col
:span=
"19"
class=
"btnColRight"
>
<el-button
type=
"primary"
native-type=
"submit"
@
click=
"handleSearch"
>
查询
</el-button>
</el-col>
</el-row>
</el-form>
</div>
<!-- 表格 -->
<div
class=
"from-clues-content"
>
<lb-table
:page-size=
"pageData.size"
class=
"loadingtext"
:current-page
.
sync=
"pageData.current"
:total=
"tableData.total"
@
size-change=
"handleSizeChange"
@
p-current-change=
"handleCurrentChange"
:column=
"tableData.columns"
:data=
"tableData.data"
>
</lb-table>
</div>
<div
class=
"duijie"
>
<img
src=
"../../../image/duijie.png"
alt=
""
>
</div>
</
template
>
<
script
>
import
table
from
"@/utils/mixin/table"
;
import
{
datas
,
sendThis
}
from
"./data"
;
export
default
{
name
:
"jtfc"
,
mixins
:
[
table
],
mounted
()
{
sendThis
(
this
);
this
.
queryClick
();
},
data
()
{
return
{
sqcxBsm
:
""
,
queryForm
:
{
sqbh
:
""
,
date1
:
""
,
date2
:
""
,
qlr
:
""
,
ywr
:
""
,
blzt
:
""
},
tableData
:
{
columns
:
datas
.
columns
(),
data
:
[{}]
}
}
},
activated
()
{
this
.
queryClick
()
},
methods
:
{
/**
* @description: 初始化数据
* @author: renchao
*/
queryClick
()
{
// this.$startLoading()
},
handleViewClick
()
{
this
.
$popupDialog
(
"查看详情"
,
"ywbl/ycsl/components/detail"
,
{},
"75%"
)
}
}
}
export
default
{
}
</
script
>
<
style
scoped
lang=
"scss"
>
@import
"~@/styles/public.scss"
;
<
style
lang=
"scss"
scoped
>
.duijie
{
width
:
100%
;
height
:
100%
;
margin
:
auto
;
text-align
:
center
}
</
style
>
...
...
vue.config.js
View file @
4e163b1
...
...
@@ -63,6 +63,9 @@ module.exports = {
entry
:
{
app
:
'./src/main.js'
},
externals
:
[{
'./cptable'
:
'var cptable'
}],
resolve
:
{
alias
:
{
'@'
:
resolve
(
'src'
)
...
...
Please
register
or
sign in
to post a comment