Skip to content
项目
群组
代码片段
帮助
正在加载...
登录/注册
切换导航
广
广东建设用地-前端
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
广东建设用地
广东建设用地-前端
Commits
47b940ce
提交
47b940ce
authored
11月 30, 2023
作者:
gjx
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
添加修改密码的以及权限控制
上级
18ba5b2f
隐藏空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
211 行增加
和
180 行删除
+211
-180
api.ts
src/api/common/api.ts
+6
-0
AcceptanceModal.vue
src/components/customComponent/AcceptanceModal.vue
+1
-2
index.vue
src/layouts/default/index.vue
+17
-8
UpFilling.vue
src/views/dkgl/fxpg/UpFilling.vue
+4
-4
ViewDetail.vue
src/views/dkgl/fxpg/ViewDetail.vue
+88
-86
Failed.vue
src/views/dkgl/gkpg/Failed.vue
+1
-1
Filling.vue
src/views/dkgl/gkpg/Filling.vue
+64
-52
Improved.vue
src/views/dkgl/gkpg/Improved.vue
+1
-1
DataFilling.vue
src/views/dkgl/investigate/modal/DataFilling.vue
+2
-2
ViewData.vue
src/views/dkgl/investigate/modal/ViewData.vue
+4
-4
UserPasswordModal.vue
...iews/system/usersetting/commponents/UserPasswordModal.vue
+23
-20
没有找到文件。
src/api/common/api.ts
浏览文件 @
47b940ce
...
...
@@ -38,6 +38,12 @@ export const categoryList = () => {
url
:
'/sys/api/tree/hylb'
});
};
// 修改密码
export
const
updatePassword
=
(
params
)
=>
{
return
defHttp
.
put
({
url
:
'/sys/user/updatePassword'
,
params
});
};
// 下达意见
export
const
xiadayijian
=
(
params
)
=>
{
return
defHttp
.
post
({
url
:
`/xiadayijian`
,
params
});
...
...
src/components/customComponent/AcceptanceModal.vue
浏览文件 @
47b940ce
...
...
@@ -43,7 +43,6 @@
{
label
:
'附件'
,
field
:
'clyjfj'
,
required
:
true
,
component
:
'JUpload'
,
componentProps
:
{
showUploadList
:
false
,
...
...
@@ -82,7 +81,7 @@
}
});
//设置标题
const
title
=
ref
(
'
下达指导
意见'
);
const
title
=
ref
(
'
受理
意见'
);
//表单提交事件
async
function
handleSubmit
()
{
try
{
...
...
src/layouts/default/index.vue
浏览文件 @
47b940ce
...
...
@@ -63,6 +63,7 @@
import
{
useAppInject
}
from
'/@/hooks/web/useAppInject'
;
import
{
useForm
,
BasicForm
,
FormSchema
}
from
'/@/components/Form'
;
import
{
useUserStore
}
from
'/@/store/modules/user'
;
import
{
updatePassword
}
from
'@/api/common/api'
;
import
dayjs
from
'dayjs'
;
export
default
defineComponent
({
...
...
@@ -126,35 +127,44 @@
if
(
userStore
?.
userInfo
?.
loginTenantId
==
1
)
open
.
value
=
true
;
//自定义表单字段
const
formSchemas
:
FormSchema
[]
=
[
{
label
:
'用户名称'
,
field
:
'username'
,
component
:
'InputPassword'
,
defaultValue
:
userStore
?.
userInfo
?.
username
,
required
:
true
,
show
:
false
,
},
{
label
:
'旧密码'
,
field
:
'
dwmc
'
,
field
:
'
oldpassword
'
,
component
:
'InputPassword'
,
required
:
true
,
},
{
label
:
'新密码'
,
field
:
'
dwmc
'
,
field
:
'
password
'
,
component
:
'InputPassword'
,
required
:
true
,
dynamicRules
:
()
=>
{
return
[{
pattern
:
/^
(
[
a-zA-Z0-9_-
])
+@
([
a-zA-Z0-9_-
])
+
((\.[
a-zA-Z0-9_-
]{2,3}){1,2})
$/
,
message
:
'密码格式有误'
,
required
:
true
}];
return
[{
pattern
:
/^
(
?=
.*
[
a-zA-Z
])(?=
.*
\d)(?=
.*
[
~!@#$%^&*()_+`
\-
={}:";'<>?,.
/])
.
{8,}
$/
,
message
:
'密码格式有误'
,
required
:
true
}];
},
},
{
label
:
'重复新密码'
,
field
:
'
dwmc
'
,
field
:
'
confirmpassword
'
,
component
:
'InputPassword'
,
dynamicRules
:
({
values
})
=>
rules
.
confirmPassword
(
values
,
true
),
required
:
true
,
},
{
label
:
'收到账户的时间'
,
field
:
'
zhsj
'
,
field
:
'
day
'
,
component
:
'DatePicker'
,
defaultValue
:
day
.
value
,
required
:
true
,
componentProps
:
{
disabled
:
true
,
//日期格式化,页面上显示的值
format
:
'YYYY-MM-DD'
,
//返回值格式化(绑定值的格式)
...
...
@@ -172,12 +182,11 @@
});
//表单提交事件
async
function
handleSubmit
(
v
)
{
async
function
handleSubmit
()
{
try
{
let
values
=
await
validate
();
//提交表单
// await editDk(values);
//关闭弹窗
await
updatePassword
(
values
);
open
.
value
=
false
;
//刷新列表
}
finally
{
...
...
src/views/dkgl/fxpg/UpFilling.vue
浏览文件 @
47b940ce
...
...
@@ -39,7 +39,7 @@
labelFirst=
"风险"
:objec=
"[
{
name: '公
式
截图',
name: '公
示
截图',
},
{ name: '风险评估报告' },
]"
...
...
@@ -106,7 +106,7 @@
createMessage
.
warn
(
'请填写网址'
);
return
;
}
if
(
!
reg
.
test
(
res
.
gswz
)){
if
(
!
reg
.
test
(
res
.
gswz
))
{
createMessage
.
warn
(
'请输入正确的网址'
);
return
false
;
}
...
...
@@ -123,10 +123,10 @@
if
(
saveFlg
.
value
)
{
saveFlg
.
value
=
false
;
const
res
=
await
chilrenMgst
?.
value
.
getFormValueTrhj
();
if
(
res
.
wrmj
>
dsInfor
.
value
.
wrdkjbxxb
.
zdmj
)
{
if
(
res
.
wrmj
>
dsInfor
.
value
.
wrdkjbxxb
.
zdmj
)
{
createMessage
.
warn
(
'风险管控修复土壤污染面积不能超过地块占地面积'
);
saveFlg
.
value
=
true
;
return
false
return
false
;
}
res
.
wrdkid
=
wrdkid
.
value
;
if
(
dsInfor
?.
value
?.
trhjfxxx
?.
id
)
res
.
id
=
dsInfor
.
value
.
trhjfxxx
.
id
;
...
...
src/views/dkgl/fxpg/ViewDetail.vue
浏览文件 @
47b940ce
...
...
@@ -32,12 +32,16 @@
<soilMessageTable
:data=
"data.trhjfxxx"
/>
</a-collapse-panel>
<a-collapse-panel
key=
"5"
header=
"风险评估文件上传"
>
<CdUpload
:data=
"data.fxpg"
labelFirst=
"风险"
:objec=
"[
{
name: '公式截图',
},
{ name: '风险评估报告' },
]"
/>
<CdUpload
:data=
"data.fxpg"
labelFirst=
"风险"
:objec=
"[
{
name: '公示截图',
},
{ name: '风险评估报告' },
]"
/>
</a-collapse-panel>
<a-collapse-panel
key=
"6"
header=
"填报进度"
>
<fillProgress
:List=
"data.lzjd"
/>
...
...
@@ -53,13 +57,11 @@
</Border>
<!-- 专家组意见 -->
<Border
title=
"专家组意见"
v-model=
"isexpert"
>
<ViewZjz
class=
"w-[98%] mx-auto"
:data=
"data?.ps?.zjz || []"
:dcjdPsfs=
"data?.ps?.dcjdPsfs"
v-show=
"isexpert"
/>
<ViewZjz
class=
"w-[98%] mx-auto"
:data=
"data?.ps?.zjz || []"
:dcjdPsfs=
"data?.ps?.dcjdPsfs"
v-show=
"isexpert"
/>
</Border>
<!-- 参会人员信息 -->
<Border
title=
"参会人员信息"
v-model=
"isparticipant"
>
<ViewChry
class=
"w-[98%] mx-auto"
:data=
"data?.ps?.chry || []"
:dcjdPsfs=
"data?.ps?.dcjdPsfs"
v-show=
"isparticipant"
/>
<ViewChry
class=
"w-[98%] mx-auto"
:data=
"data?.ps?.chry || []"
:dcjdPsfs=
"data?.ps?.dcjdPsfs"
v-show=
"isparticipant"
/>
</Border>
<!-- 归档材料信息 -->
<Border
title=
"归档材料信息"
v-model=
"ismaterial"
>
...
...
@@ -76,89 +78,89 @@
<!-- </BasicDrawer> -->
</template>
<
script
lang=
"ts"
setup
>
import
{
ref
}
from
'vue'
;
import
DkTable
from
'/@/components/customComponent/DkTable.vue'
;
import
suBainTable
from
'/@/components/customComponent/fxpg/fxpgInfro.vue'
;
import
unitMessageTable
from
'/@/components/customComponent/unitMessageTable.vue'
;
// 单位检测信息请传不同的obj
import
soilMessageTable
from
'/@/components/customComponent/fxpg/trfxView.vue'
;
// import dkbjfileUpload from '/@/components/customComponent/CdUpload.vue';
import
CdUpload
from
'/@/components/customComponent/CdUpload.vue'
;
import
fillProgress
from
'/@/components/customComponent/fillProgress.vue'
;
import
MaterialUpload
from
'./components/MaterialUpload.vue'
;
import
Border
from
'/@/components/customComponent/Border.vue'
;
// 公共组件
import
ViewZjz
from
'/@/views/dkgl/investigate/components/ViewZjz.vue'
;
// 公共组件
import
ViewChry
from
'/@/views/dkgl/investigate/components/ViewChry.vue'
;
// 公共组件
import
ViewGdcl
from
'/@/components/customComponent/ViewGdcl.vue'
;
// 公共组件
import
HistoryInfo
from
'/@/components/customComponent/HistoryInfo.vue'
;
// 公共组件
import
History
from
'@/components/customComponent/History.vue'
;
import
{
useUserStore
}
from
'/@/store/modules/user'
;
import
AdviceModal
from
'@/components/customComponent/AdviceModal.vue'
;
import
{
useModal
}
from
'/@/components/Modal'
;
import
{
ref
}
from
'vue'
;
import
DkTable
from
'/@/components/customComponent/DkTable.vue'
;
import
suBainTable
from
'/@/components/customComponent/fxpg/fxpgInfro.vue'
;
import
unitMessageTable
from
'/@/components/customComponent/unitMessageTable.vue'
;
// 单位检测信息请传不同的obj
import
soilMessageTable
from
'/@/components/customComponent/fxpg/trfxView.vue'
;
// import dkbjfileUpload from '/@/components/customComponent/CdUpload.vue';
import
CdUpload
from
'/@/components/customComponent/CdUpload.vue'
;
import
fillProgress
from
'/@/components/customComponent/fillProgress.vue'
;
import
MaterialUpload
from
'./components/MaterialUpload.vue'
;
import
Border
from
'/@/components/customComponent/Border.vue'
;
// 公共组件
import
ViewZjz
from
'/@/views/dkgl/investigate/components/ViewZjz.vue'
;
// 公共组件
import
ViewChry
from
'/@/views/dkgl/investigate/components/ViewChry.vue'
;
// 公共组件
import
ViewGdcl
from
'/@/components/customComponent/ViewGdcl.vue'
;
// 公共组件
import
HistoryInfo
from
'/@/components/customComponent/HistoryInfo.vue'
;
// 公共组件
import
History
from
'@/components/customComponent/History.vue'
;
import
{
useUserStore
}
from
'/@/store/modules/user'
;
import
AdviceModal
from
'@/components/customComponent/AdviceModal.vue'
;
import
{
useModal
}
from
'/@/components/Modal'
;
import
{
useRouter
}
from
'vue-router'
;
import
{
plotDetails
}
from
'/@/api/common/api'
;
import
{
useRouter
}
from
'vue-router'
;
import
{
plotDetails
}
from
'/@/api/common/api'
;
const
[
registerModal
,
{
openModal
}]
=
useModal
();
const
[
registerAdviceModal
,
{
openModal
:
openAdviceModal
}]
=
useModal
();
const
{
userInfo
}:
any
=
useUserStore
();
let
router
=
useRouter
();
// 注册路由
const
data
=
ref
<
any
>
({});
const
param
=
ref
<
any
>
(
router
.
currentRoute
.
value
.
query
);
const
[
registerModal
,
{
openModal
}]
=
useModal
();
const
[
registerAdviceModal
,
{
openModal
:
openAdviceModal
}]
=
useModal
();
const
{
userInfo
}:
any
=
useUserStore
();
let
router
=
useRouter
();
// 注册路由
const
data
=
ref
<
any
>
({});
const
param
=
ref
<
any
>
(
router
.
currentRoute
.
value
.
query
);
// 评审信息
const
isreview
=
ref
(
true
);
const
isexpert
=
ref
(
true
);
const
isparticipant
=
ref
(
true
);
const
ismaterial
=
ref
(
true
);
// 评审信息
const
isreview
=
ref
(
true
);
const
isexpert
=
ref
(
true
);
const
isparticipant
=
ref
(
true
);
const
ismaterial
=
ref
(
true
);
//手风琴
const
activeKey
=
ref
([
'1'
,
'2'
,
'4'
,
'5'
,
'6'
]);
const
active
=
ref
(
'1'
);
getInfor
();
// 获取地块基本信息
async
function
getInfor
()
{
data
.
value
=
await
plotDetails
({
wrdkid
:
param
.
value
.
wrdkid
,
scjdbm
:
'S3'
,
});
// 默认展开所有面板
const
prefixes
=
[
'3-'
];
const
arrays
=
[
data
.
value
.
bzdw
];
for
(
let
i
=
0
;
i
<
arrays
.
length
;
i
++
)
{
arrays
[
i
].
forEach
((
el
,
index
)
=>
{
activeKey
.
value
.
push
(
prefixes
[
i
]
+
index
);
//手风琴
const
activeKey
=
ref
([
'1'
,
'2'
,
'4'
,
'5'
,
'6'
]);
const
active
=
ref
(
'1'
);
getInfor
();
// 获取地块基本信息
async
function
getInfor
()
{
data
.
value
=
await
plotDetails
({
wrdkid
:
param
.
value
.
wrdkid
,
scjdbm
:
'S3'
,
});
// 默认展开所有面板
const
prefixes
=
[
'3-'
];
const
arrays
=
[
data
.
value
.
bzdw
];
for
(
let
i
=
0
;
i
<
arrays
.
length
;
i
++
)
{
arrays
[
i
].
forEach
((
el
,
index
)
=>
{
activeKey
.
value
.
push
(
prefixes
[
i
]
+
index
);
});
}
}
}
// 点击退改历史退回意见
function
backHistory
(
v
)
{
let
obj
:
any
=
{
wrdkid
:
param
.
value
.
wrdkid
,
scjdbm
:
'S3'
,
jdnzt
:
data
.
value
.
jdnzt
,
};
if
(
v
==
'tg'
)
{
openModal
(
true
,
{
record
:
obj
,
showFooter
:
true
,
}
);
}
else
if
(
v
==
'xdyj'
)
{
obj
.
title
=
'下达意见'
;
openAdviceModal
(
true
,
{
record
:
obj
,
showFooter
:
true
,
}
);
}
else
if
(
v
==
'bjzdyj'
)
{
obj
.
title
=
'边界指导意见'
;
openAdviceModal
(
true
,
{
record
:
obj
,
showFooter
:
true
,
}
);
// 点击退改历史退回意见
function
backHistory
(
v
)
{
let
obj
:
any
=
{
wrdkid
:
param
.
value
.
wrdkid
,
scjdbm
:
'S3'
,
jdnzt
:
data
.
value
.
jdnzt
,
};
if
(
v
==
'tg'
)
{
openModal
(
true
,
{
record
:
obj
,
showFooter
:
true
,
});
}
else
if
(
v
==
'xdyj'
)
{
obj
.
title
=
'下达意见'
;
openAdviceModal
(
true
,
{
record
:
obj
,
showFooter
:
true
,
});
}
else
if
(
v
==
'bjzdyj'
)
{
obj
.
title
=
'边界指导意见'
;
openAdviceModal
(
true
,
{
record
:
obj
,
showFooter
:
true
,
});
}
}
}
</
script
>
<
style
lang=
"less"
scoped
>
:deep(.ant-collapse-borderless) {
width: 100%;
}
:deep(.ant-collapse-borderless) {
width: 100%;
}
</
style
>
src/views/dkgl/gkpg/Failed.vue
浏览文件 @
47b940ce
...
...
@@ -30,7 +30,7 @@
</template>
<!--插槽:table标题-->
<
template
#
tableTitle
>
<a-button
type=
"primary"
@
click=
"skip()"
v-auth=
"'
dkdc-tbz-zltb
'"
>
查看报告列表
</a-button>
<a-button
type=
"primary"
@
click=
"skip()"
v-auth=
"'
gkpg-psbtg-fa
'"
>
查看报告列表
</a-button>
</
template
>
</BasicTable>
</div>
...
...
src/views/dkgl/gkpg/Filling.vue
浏览文件 @
47b940ce
...
...
@@ -4,13 +4,25 @@
<BasicTable
@
register=
"registerTable"
:rowSelection=
"rowSelection"
>
<!-- 行业分类 -->
<template
#
form-suspect=
"
{ model, field }">
<a-select
v-model:value=
"model[field]"
placeholder=
"请选择行业分类"
:fieldNames=
"
{ label: 'text', value: 'value' }"
:options="isSuspectOptions" @change="changeSuspect">
</a-select>
<a-select
v-model:value=
"model[field]"
placeholder=
"请选择行业分类"
:fieldNames=
"
{ label: 'text', value: 'value' }"
:options="isSuspectOptions"
@change="changeSuspect"
>
</a-select>
</
template
>
<
template
#
form-category=
"{ model, field }"
>
<a-tree-select
v-model:value=
"model[field]"
show-search
placeholder=
"请选择二级"
allow-clear
tree-default-expand-all
:field-names=
"
{ label: 'name', value: 'id', children: 'children' }" :tree-data="treeData"
tree-node-filter-prop="label">
<a-tree-select
v-model:value=
"model[field]"
show-search
placeholder=
"请选择二级"
allow-clear
tree-default-expand-all
:field-names=
"
{ label: 'name', value: 'id', children: 'children' }"
:tree-data="treeData"
tree-node-filter-prop="label"
>
<template
#
suffixIcon
>
<SmileOutlined
/>
</
template
>
...
...
@@ -18,62 +30,62 @@
</template>
<!--插槽:table标题-->
<
template
#
tableTitle
>
<a-button
type=
"primary"
@
click=
"skip"
v-auth=
"'
dkdc-tbz-zltb
'"
>
查看报告列表
</a-button>
<a-button
type=
"primary"
@
click=
"skip"
v-auth=
"'
gkpg-tbz-fa
'"
>
查看报告列表
</a-button>
</
template
>
</BasicTable>
</div>
</template>
<
script
lang=
"ts"
name=
"dkgl-gkpg-Filling"
setup
>
import
{
BasicTable
}
from
'/@/components/Table'
;
import
{
useListPage
}
from
'/@/hooks/system/useListPage'
;
import
{
useRouter
}
from
'vue-router'
;
import
{
useMessage
}
from
'/@/hooks/web/useMessage'
;
import
{
columns
,
searchFormSchema
,
useSuspectsData
,
useCategoryData
}
from
'./data'
;
import
{
fillingList
,
getImportUrl
,
getExportUrl
}
from
'./api'
;
import
{
BasicTable
}
from
'/@/components/Table'
;
import
{
useListPage
}
from
'/@/hooks/system/useListPage'
;
import
{
useRouter
}
from
'vue-router'
;
import
{
useMessage
}
from
'/@/hooks/web/useMessage'
;
import
{
columns
,
searchFormSchema
,
useSuspectsData
,
useCategoryData
}
from
'./data'
;
import
{
fillingList
,
getImportUrl
,
getExportUrl
}
from
'./api'
;
let
router
=
useRouter
();
const
{
createMessage
}
=
useMessage
();
let
router
=
useRouter
();
const
{
createMessage
}
=
useMessage
();
//注册table数据
const
{
tableContext
}
=
useListPage
({
tableProps
:
{
title
:
'风险管控效果评估-填报中'
,
api
:
fillingList
,
columns
,
canResize
:
false
,
clickToRowSelect
:
true
,
showActionColumn
:
false
,
//定义rowSelection的类型,默认是checkbox多选,可以设置成radio单选
rowKey
:
'wrdkid'
,
rowSelection
:
{
type
:
'radio'
},
formConfig
:
{
labelWidth
:
120
,
schemas
:
searchFormSchema
,
autoSubmitOnEnter
:
true
,
showAdvancedButton
:
false
,
//注册table数据
const
{
tableContext
}
=
useListPage
({
tableProps
:
{
title
:
'风险管控效果评估-填报中'
,
api
:
fillingList
,
columns
,
canResize
:
false
,
clickToRowSelect
:
true
,
showActionColumn
:
false
,
//定义rowSelection的类型,默认是checkbox多选,可以设置成radio单选
rowKey
:
'wrdkid'
,
rowSelection
:
{
type
:
'radio'
},
formConfig
:
{
labelWidth
:
120
,
schemas
:
searchFormSchema
,
autoSubmitOnEnter
:
true
,
showAdvancedButton
:
false
,
},
},
},
exportConfig
:
{
name
:
'风险管控效果评估-填报中'
,
url
:
getExportUrl
,
},
importConfig
:
{
url
:
getImportUrl
,
},
});
const
isSuspectOptions
=
useSuspectsData
().
data
;
// 行业分类
const
useCategory
=
useCategoryData
();
const
treeData
=
useCategory
.
data
;
// 行业类别-数据
const
changeSuspect
=
useCategory
.
changeIsSuspect
;
// 行业类别-方法
const
[
registerTable
,
{
},
{
rowSelection
,
selectedRowKeys
}]
=
tableContext
;
// 点击基本信息跳转
function
skip
()
{
if
(
selectedRowKeys
.
value
.
length
==
0
)
{
createMessage
.
info
(
'请选择需要处理的内容,每次只能选中一条'
);
return
exportConfig
:
{
name
:
'风险管控效果评估-填报中'
,
url
:
getExportUrl
,
},
importConfig
:
{
url
:
getImportUrl
,
},
});
const
isSuspectOptions
=
useSuspectsData
().
data
;
// 行业分类
const
useCategory
=
useCategoryData
();
const
treeData
=
useCategory
.
data
;
// 行业类别-数据
const
changeSuspect
=
useCategory
.
changeIsSuspect
;
// 行业类别-方法
const
[
registerTable
,
{},
{
rowSelection
,
selectedRowKeys
}]
=
tableContext
;
// 点击基本信息跳转
function
skip
()
{
if
(
selectedRowKeys
.
value
.
length
==
0
)
{
createMessage
.
info
(
'请选择需要处理的内容,每次只能选中一条'
);
return
;
}
router
.
push
(
`/dkgl/gkpg/DetailList?wrdkid=
${
selectedRowKeys
.
value
[
0
]}
&type=填报&jdnzt=T1`
);
}
router
.
push
(
`/dkgl/gkpg/DetailList?wrdkid=
${
selectedRowKeys
.
value
[
0
]}
&type=填报&jdnzt=T1`
)
}
</
script
>
<
style
scoped
></
style
>
src/views/dkgl/gkpg/Improved.vue
浏览文件 @
47b940ce
...
...
@@ -30,7 +30,7 @@
</template>
<!--插槽:table标题-->
<
template
#
tableTitle
>
<a-button
type=
"primary"
@
click=
"skip()"
v-auth=
"'
dkdc-tbz-zltb
'"
>
查看报告列表
</a-button>
<a-button
type=
"primary"
@
click=
"skip()"
v-auth=
"'
gkpg-pshdws-fa
'"
>
查看报告列表
</a-button>
</
template
>
</BasicTable>
</div>
...
...
src/views/dkgl/investigate/modal/DataFilling.vue
浏览文件 @
47b940ce
...
...
@@ -145,10 +145,10 @@
</a-collapse-panel>
<a-collapse-panel
header=
"初步调查文件上传"
:forceRender=
"true"
v-if=
"dsInfor.wrdkjbxxb.dclx == 3 || dsInfor.wrdkjbxxb.dclx == 1"
key=
"140000"
>
<CdUpload
:data=
"dsInfor.cbdc"
:objec=
"[{ name: '公
式
照片' }, { name: '初步调查报告' }]"
/>
<CdUpload
:data=
"dsInfor.cbdc"
:objec=
"[{ name: '公
示
照片' }, { name: '初步调查报告' }]"
/>
</a-collapse-panel>
<a-collapse-panel
header=
"详细调查文件上传"
:forceRender=
"true"
v-if=
"dsInfor.wrdkjbxxb.dclx == 3 || dsInfor.wrdkjbxxb.dclx == 2"
key=
"150000"
>
<CdUpload
labelFirst=
"详细调查"
:objec=
"[{ name: '公
式
照片' }, { name: '详细调查报告' }]"
:data=
"dsInfor.xxdc"
/>
<CdUpload
labelFirst=
"详细调查"
:objec=
"[{ name: '公
示
照片' }, { name: '详细调查报告' }]"
:data=
"dsInfor.xxdc"
/>
</a-collapse-panel>
<a-collapse-panel
header=
"填报进度"
v-if=
"dsInfor.lzjd"
:forceRender=
"true"
key=
"150001"
>
<fillProgress
:List=
"dsInfor.lzjd"
></fillProgress>
...
...
src/views/dkgl/investigate/modal/ViewData.vue
浏览文件 @
47b940ce
...
...
@@ -40,7 +40,7 @@
<unitMessageTable
:labelFirst=
"'详细'"
:data=
"item"
/>
</a-collapse-panel>
<a-collapse-panel
key=
"3"
v-if=
"data?.wrdkjbxxb?.dclx == 3 || data?.wrdkjbxxb?.dclx == 2"
header=
"详细调查报告基本信息"
>
<suBainTable
:data=
"data.xxdc"
:text-lable=
"'详细'"
/>
<suBainTable
:data=
"data.xxdc"
:text-lable=
"'详细'"
/>
</a-collapse-panel>
<a-collapse-panel
header=
"详细调查报告编制单位基本信息"
...
...
@@ -65,10 +65,10 @@
<sensitivityTable
:data=
"data.mgst"
/>
</a-collapse-panel>
<a-collapse-panel
key=
"13"
header=
"初步调查文件上传"
v-if=
"data?.wrdkjbxxb?.dclx == 3 || data?.wrdkjbxxb?.dclx == 1"
>
<CdUpload
:data=
"data.cbdc"
:objec=
"[{ name: '公
式
照片' }, { name: '初步调查报告' }]"
/>
<CdUpload
:data=
"data.cbdc"
:objec=
"[{ name: '公
示
照片' }, { name: '初步调查报告' }]"
/>
</a-collapse-panel>
<a-collapse-panel
key=
"14"
header=
"详细调查文件上传"
v-if=
"data?.wrdkjbxxb?.dclx == 3 || data?.wrdkjbxxb?.dclx == 2"
>
<CdUpload
labelFirst=
"详细调查"
:objec=
"[{ name: '公
式
照片' }, { name: '详细调查报告' }]"
:data=
"data.xxdc"
/>
<CdUpload
labelFirst=
"详细调查"
:objec=
"[{ name: '公
示
照片' }, { name: '详细调查报告' }]"
:data=
"data.xxdc"
/>
</a-collapse-panel>
<a-collapse-panel
header=
"填报进度"
key=
"15"
>
<fillProgress
:List=
"data.lzjd"
/>
...
...
@@ -182,7 +182,7 @@
const
arrays
=
[
cbdcBzdw
.
value
,
cbjcdw
.
value
,
xxdcBzdw
.
value
,
xxjcdw
.
value
];
for
(
let
i
=
0
;
i
<
arrays
.
length
;
i
++
)
{
arrays
[
i
].
forEach
((
el
,
index
)
=>
{
arrays
[
i
].
forEach
((
el
,
index
)
=>
{
activeKey
.
value
.
push
(
prefixes
[
i
]
+
index
);
});
}
...
...
src/views/system/usersetting/commponents/UserPasswordModal.vue
浏览文件 @
47b940ce
...
...
@@ -25,27 +25,30 @@
import
{
BasicModal
,
useModalInner
}
from
'/@/components/Modal'
;
import
{
Rule
}
from
'/@/components/Form/index'
;
import
{
updateUserPassword
}
from
'../UserSetting.api'
;
import
{
useMessage
}
from
"/@/hooks/web/useMessage"
;
import
{
useUserStore
,
useUserStoreWithOut
}
from
"/@/store/modules/user"
;
import
{
useMessage
}
from
'/@/hooks/web/useMessage'
;
import
{
useUserStore
,
useUserStoreWithOut
}
from
'/@/store/modules/user'
;
const
$message
=
useMessage
();
//用户名
const
username
=
ref
<
string
>
(
''
)
const
username
=
ref
<
string
>
(
''
)
;
const
formRef
=
ref
();
const
formState
=
reactive
({
oldpassword
:
''
,
password
:
''
,
oldpassword
:
''
,
password
:
''
,
});
// 声明Emits
const
emit
=
defineEmits
([
'success'
,
'register'
]);
//表单赋值
const
[
registerModal
,
{
setModalProps
,
closeModal
}]
=
useModalInner
(
async
(
data
)
=>
{
setModalProps
({
confirmLoading
:
false
});
username
.
value
=
data
.
record
.
username
username
.
value
=
data
.
record
.
username
;
});
const
userStore
=
useUserStore
();
const
validatorRules
:
Record
<
string
,
Rule
[]
>
=
{
password
:
[{
required
:
true
,
validator
:
checkPassword
},{
pattern
:
/^
(?=
.*
[
0-9
])(?=
.*
[
a-zA-Z
])(
.
{8,20})
$/
,
message
:
'8-20位,需包含字母和数字'
}],
password
:
[
{
required
:
true
,
validator
:
checkPassword
},
{
pattern
:
/^
(?=
.*
[
0-9
])(?=
.*
[
a-zA-Z
])(
.
{8,20})
$/
,
message
:
'8-20位,需包含字母和数字'
},
],
oldpassword
:
[{
required
:
true
,
message
:
'请输入原有密码'
}],
};
...
...
@@ -56,20 +59,20 @@
setModalProps
({
confirmLoading
:
true
});
//提交表单
values
.
username
=
unref
(
username
);
values
.
confirmpassword
=
values
.
password
;
await
updateUserPassword
(
values
).
then
((
res
)
=>
{
if
(
res
.
success
)
{
values
.
confirmpassword
=
values
.
password
;
await
updateUserPassword
(
values
).
then
((
res
)
=>
{
if
(
res
.
success
)
{
$message
.
createMessage
.
info
({
content
:
'密码修改成功,请重新登录!3s后自动退出登录'
,
duration
:
3
})
content
:
'密码修改成功,请重新登录!3s后自动退出登录'
,
duration
:
3
,
})
;
//3s后返回登录页面
setTimeout
(()
=>
{
setTimeout
(()
=>
{
userStore
.
logout
(
true
);
},
3000
)
},
3000
);
//关闭弹窗
closeModal
();
}
else
{
}
else
{
$message
.
createMessage
.
warn
(
res
.
message
);
}
});
...
...
@@ -82,7 +85,7 @@
* 验证新密码是否为空
*/
function
checkPassword
(
_rule
:
Rule
,
value
:
string
)
{
if
(
value
===
''
)
{
if
(
value
===
''
)
{
return
Promise
.
reject
(
'请输入新密码'
);
}
return
Promise
.
resolve
();
...
...
@@ -106,9 +109,9 @@
padding-top: 10px;
padding-bottom: 10px;
}
.forget{
.forget
{
float: right;
color: #1e88e5!important;
cursor: pointer
color: #1e88e5
!important;
cursor: pointer
;
}
</
style
>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论