Commit 7c0ea8d1 by xue_wengang

重点人员,组件子集处理

parent ad1dbbcb
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<div class="formContent" style="margin-top: 20px"> <div class="formContent" style="margin-top: 20px">
<div style="margin: 0px auto; border-radius: 8px"> <div style="margin: 0px auto; border-radius: 8px">
<div class="groupTitleBox"> <div class="groupTitleBox">
<span class="groupTitle">{{ propFormField[0].title }}</span> <span class="groupTitle">{{ propTitle }}</span>
</div> </div>
<el-form <el-form
ref="formLabelAlign" ref="formLabelAlign"
...@@ -18,6 +18,10 @@ ...@@ -18,6 +18,10 @@
:key="groupItem.index" :key="groupItem.index"
> >
<div> <div>
<div class="subTitle">
<div>{{ groupItem.title }}</div>
<!-- <div class="bottomLine"></div> -->
</div>
<div class="zdyLine"> <div class="zdyLine">
<el-form-item <el-form-item
:rules="rules[item.id]" :rules="rules[item.id]"
...@@ -339,680 +343,649 @@ ...@@ -339,680 +343,649 @@
v-for="(item2, index2) in item.childrenAsAdd" v-for="(item2, index2) in item.childrenAsAdd"
:key="index2" :key="index2"
> >
<div v-if="item2.flag" id="childrenAsAdd"> <div v-if="item2.flag">
<div v-if="!item2.flag2"> <div v-for="(item3, ind) in item2.list" :key="ind">
<div v-for="(item3, ind) in item2.list" :key="ind"> <div
<div> v-for="(reakData, realIndex) in formLabelAlign[
<div item2.id
v-for="(reakData, realIndex) in formLabelAlign[ ]"
item2.id style="position: relative"
:key="realIndex"
>
<span class="addName"
>{{
item2.name.substring(0, item2.name.length - 1)
}}{{ realIndex + 1 }}:</span
>
<span class="addContent">
<!-- <i
:class="'zdyicon ' + item2.iconClass"
v-if="!type2"
@click="deleteObj(reakData, item2)"
></i> -->
<el-form-item
v-for="item4 in item3.name"
:label="item4.name"
v-show="!item4.hidden"
:prop="`${item2.id}[${realIndex}].${item4.id}`"
:key="item4.id"
:ref="`${item2.id}[${realIndex}].${item4.id}`"
:class="[
'item' + item4.col
]" ]"
style="position: relative" :rules="
:key="realIndex" rules[`${item2.id}${realIndex}.${item4.id}`]
"
:style="{
height: item4.id == 'ryzp' ? '185px' : '36px',
}"
> >
<span class="addName" <!--输入框-->
>{{ <div
item2.name.substring( v-if="item4.type == 'text'"
0, style="position: relative"
item2.name.length - 1
)
}}{{ realIndex + 1 }}:</span
> >
<span class="addContent"> <el-input
<i :placeholder="item4.placeholder"
:class="'zdyicon ' + item2.iconClass" v-model="reakData[item4.id]"
@click="deleteObj(reakData)" :disabled="item4.disabled"
v-if="realIndex != 0" @focus="item4.focus || ''"
></i>
<el-form-item
v-for="item4 in item3.name"
:label="item4.name"
:prop="`${item2.id}[${realIndex}].${item4.id}`"
:key="item4.id"
:ref="`${item2.id}[${realIndex}].${item4.id}`"
:class="[
'item' + item4.col,
item4.prop == 'checkEmpty'
? redColor
: '',
]"
:rules="
rules[
`${item2.id}${realIndex}.${item4.id}`
]
"
:style="{
height:
item4.id == 'ryzp' ? '185px' : '36px',
}"
> >
<!--输入框--> <i
<div v-if="item4.showIcon == 'bhrzjhm'"
v-if="item4.type == 'text'" @click="getbhrData(item4)"
style="position: relative" slot="suffix"
> class="el-input__icon"
<el-input :class="item4.icon"
:placeholder="item4.placeholder" style="cursor: pointer; color: #3670ff"
v-model="reakData[item4.id]" title="被害人信息提取"
:disabled="item4.disabled" ></i>
@focus="item4.focus || ''" <i
> v-if="item4.showIcon == 'xyrzjhm'"
<i @click="getxyrData()"
v-if="item4.showIcon == 'bhrzjhm'" slot="suffix"
@click="getbhrData(item4)" class="el-input__icon"
slot="suffix" :class="item4.icon"
class="el-input__icon" style="cursor: pointer; color: #3670ff"
:class="item4.icon" title="犯罪嫌疑人信息提取"
style=" ></i>
cursor: pointer; </el-input>
color: #3670ff; </div>
" <div
title="被害人信息提取" v-else-if="item4.type == 'datetime'"
></i> style="display: flex; padding-right: 78px"
<i >
v-if="item4.showIcon == 'xyrzjhm'" <el-date-picker
@click="getxyrData()" v-model="reakData[item4.id_1]"
slot="suffix" format="yyyy-MM-dd HH:mm:ss"
class="el-input__icon" :disabled="item4.disabled"
:class="item4.icon" value-format="yyyy-MM-dd HH:mm:ss"
style=" type="datetime"
cursor: pointer; >
color: #3670ff; </el-date-picker>
" <span style="padding: 0 5px"></span>
title="犯罪嫌疑人信息提取" <el-date-picker
></i> v-model="reakData[item4.id_2]"
</el-input> format="yyyy-MM-dd HH:mm:ss"
</div> :disabled="item4.disabled"
<div value-format="yyyy-MM-dd HH:mm:ss"
v-else-if="item4.type == 'datetime'" type="datetime"
style="display: flex; padding-right: 78px" >
> </el-date-picker>
<el-date-picker </div>
v-model="reakData[item4.id_1]" <div
format="yyyy-MM-dd HH:mm:ss" class="zdyInputW"
:disabled="item4.disabled" v-else-if="item4.type == 'radio'"
value-format="yyyy-MM-dd HH:mm:ss" >
type="datetime" <el-radio-group
> v-model="reakData[item4.id]"
</el-date-picker> size="small"
<span style="padding: 0 5px"></span> :disabled="item4.disabled"
<el-date-picker >
v-model="reakData[item4.id_2]" <el-radio
format="yyyy-MM-dd HH:mm:ss" :label="item5.value"
:disabled="item4.disabled" v-for="item5 in item4.radioData"
value-format="yyyy-MM-dd HH:mm:ss" :key="item5.value"
type="datetime" >{{ item5.name }}</el-radio
>
</el-date-picker>
</div>
<div
class="zdyInputW"
v-else-if="item4.type == 'radio'"
>
<el-radio-group
v-model="reakData[item4.id]"
size="small"
:disabled="item4.disabled"
>
<el-radio
:label="item5.value"
v-for="item5 in item4.radioData"
:key="item5.value"
>{{ item5.name }}</el-radio
>
</el-radio-group>
</div>
<div
class="addChildBtn"
v-else-if="item4.type == 'button'"
> >
<el-button type="primary"> </el-radio-group>
<i class="el-icon-plus"></i </div>
><span>新增</span> <div
</el-button> class="addChildBtn"
</div> v-else-if="item4.type == 'button'"
<div >
class="zdyInputW" <el-button type="primary">
v-else-if="item4.type == 'lazyCodeTree'" <i class="el-icon-plus"></i
:class="item4.lazycodeTree" ><span>新增</span>
</el-button>
</div>
<div
class="zdyInputW"
v-else-if="item4.type == 'lazyCodeTree'"
:class="item4.lazycodeTree"
>
<el-cascader
:props="item4.props"
v-model="reakData[item4.id]"
:placeholder="item4.placeholder"
:show-all-levels="false"
>
</el-cascader>
</div>
<!--字典弹框懒加载 @emitValue="getLbValue"-->
<div
class="zdyInputW"
v-else-if="item4.type == 'lazyCodeTreeDialog'"
>
<lazy-select-tree-dialog
:placeholder="'请选择' + item4.name"
:sendId="item4.id"
v-model="reakData[item4.id]"
:formData="reakData"
:currentItem="item4"
/>
</div>
<!--字典框 @emitValue="getLbValue"-->
<div
class="zdyInputW"
v-else-if="item4.type == 'code'"
>
<select-tree
v-model="reakData[item4.id]"
:placeholder="'请选择' + item4.name"
:options="item4.codeOptions"
:sendId="item4.id"
/>
</div>
<!--字典弹框 @emitValue="getLbValue"-->
<div
class="zdyInputW"
v-else-if="item4.type == 'codeTree'"
>
<select-tree-dialog
:placeholder="'请选择' + item4.name"
:sendId="item4.id"
:formData="reakData"
:currentItem="item4"
v-model="reakData[item4.id]"
/>
</div>
<div
class="zdyInputW"
v-else-if="item4.type == 'checkboxBotton'"
>
<div style="display: flex">
<span
v-for="item5 in item4.checkboxData"
:label="item5"
style="
margin-left: 20px;
border: 1px solid;
padding: 0 10px;
border-radius: 5px;
font-size: 15px;
width: 142px;
text-align: center;
color: #1a81e1;
"
:key="item5"
>{{ item5 }}</span
> >
<el-cascader </div>
:props="item4.props" </div>
v-model="reakData[item4.id]" <!--文本域-->
:placeholder="item4.placeholder" <el-input
:show-all-levels="false" type="textarea"
> :placeholder="item4.placeholder"
</el-cascader> v-model="reakData[item4.id]"
</div> v-else-if="item4.type == 'textarea'"
<!--字典弹框懒加载 @emitValue="getLbValue"--> :disabled="item4.disabled"
>
</el-input>
<!-- 时间框 -->
<el-date-picker
v-model="reakData[item4.id]"
v-else-if="item4.type == 'date'"
:placeholder="item4.placeholder"
format="yyyy 年 MM 月 dd 日"
value-format="timestamp"
clearable
>
</el-date-picker>
<!-- 时间区间 -->
<el-date-picker
v-model="reakData[item4.id]"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
value-format="yyyy-MM-dd HH:mm:ss"
v-else-if="item4.type == 'datearea'"
>
</el-date-picker>
<el-date-picker
v-model="reakData[item4.id]"
:disabled="item4.disabled"
type="date"
placeholder="选择日期"
value-format="yyyy-MM-dd HH:mm:ss"
v-else-if="item4.type == 'dates'"
:class="item4.date"
>
</el-date-picker>
<!--文件上传-->
<el-upload
class="upload-demo"
action="#"
ref="uploadFile"
:accept="item4.acceptType"
:before-upload="
normalPictureBeforeAvatarUpload
"
:on-change="
(file, fileList) =>
handleChange(
file,
fileList,
item4,
item2,
realIndex
)
"
:on-remove="
(flie, fileList) =>
handleRemove(
flie,
fileList,
item4,
item2,
realIndex
)
"
:before-remove="
(flie, fileList) =>
handleBeforeRemove(
flie,
fileList,
item4,
item2,
realIndex
)
"
:auto-upload="false"
:http-request="httpRequest"
:on-preview="
(flie, fileList) =>
handlerPreview(
flie,
fileList,
item4,
item2,
realIndex
)
"
:file-list="
fileLists[item2.id] &&
fileLists[item2.id][realIndex]
? fileLists[item2.id][realIndex][item4.id]
: []
"
v-model="reakData[item4.id + '1']"
v-else-if="item4.type == 'file'"
>
<el-button
size="small"
@click="
item4.name == '法律文书:' ||
item2.name == '犯罪嫌疑人信息:'
? uploadFlws()
: ''
"
type="primary"
>上传附件</el-button
>
<span
v-if="item4.id == 'flwsDzwjnr'"
style="
color: red;
margin-left: 20px;
font-size: 13px;
"
>支持png,jpg,doc,pdf格式,大小不超过3MB</span
>
<span
v-else-if="item4.id == 'asjfjDzwjnr'"
style="
color: red;
margin-left: 20px;
font-size: 13px;
"
>支持mp4,png,jpg,doc,pdf格式,大小不超过20MB</span
>
<span
v-else
style="
color: red;
margin-left: 20px;
font-size: 13px;
"
>支持jpg,jpeg,png,doc,pdf,docx格式,大小不超过3MB</span
>
</el-upload>
<div
class="manPhtot"
v-if="item4.type == 'pictureWithPreview'"
>
<div
v-if="
bhrFileLists[realIndex]
? Object.prototype.hasOwnProperty.call(
bhrFileLists[realIndex],
'src'
)
? true
: false
: false
"
class="relative"
>
<div <div
class="zdyInputW" class="shadow"
v-else-if=" @click="deleteZp('bhr', realIndex)"
item4.type == 'lazyCodeTreeDialog' ></div>
<img
:src="
'data:image/gif;base64,' +
bhrFileLists[realIndex]['src']
" "
> class="avatar2"
<lazy-select-tree-dialog />
:placeholder="'请选择' + item4.name" </div>
:sendId="item4.id" <el-upload
v-model="reakData[item4.id]" v-else
:formData="reakData" class="avatar-uploader"
:currentItem="item4" action="#"
:show-file-list="true"
:auto-upload="false"
:on-success="handleAvatarSuccess2"
:before-upload="beforeAvatarUpload"
:limit="1"
:on-change="
(file, fileList) => {
handleChange(
file,
fileList,
item4,
item2,
realIndex,
'1'
);
}
"
>
<div slot="file" slot-scope="{ file }">
<img
class="el-upload-list__item-thumbnail"
:src="file.url"
alt=""
/> />
</div> </div>
<img
v-if="reakData.src"
:src="
'data:image/gif;base64,' + reakData.src
"
class="avatar"
/>
<i
v-else
class="el-icon-plus avatar-uploader-icon"
></i>
</el-upload>
</div>
<div
class="manPhtot"
v-if="item4.type == 'manPhtot'"
style="display: flex"
>
<div style="text-align: center">
<div <div
class="zdyInputW" v-if="
v-else-if="item4.type == 'checkboxBotton'" zpFileLists[realIndex]
? Object.prototype.hasOwnProperty.call(
zpFileLists[realIndex],
'src1'
)
? true
: false
: false
"
class="relative"
> >
<div style="display: flex"> <div
<span class="shadow"
v-for="item5 in item4.checkboxData" @click="deleteZp('fzxyr', realIndex, 1)"
:label="item5" ></div>
style=" <img
margin-left: 20px; :src="
border: 1px solid; 'data:image/gif;base64,' +
padding: 0 10px; zpFileLists[realIndex]['src1']
border-radius: 5px; "
font-size: 15px; class="avatar2"
width: 142px; />
text-align: center;
color: #1a81e1;
"
:key="item5"
>{{ item5 }}</span
>
</div>
</div> </div>
<!--文本域-->
<el-input
type="textarea"
:placeholder="item4.placeholder"
v-model="reakData[item4.id]"
v-else-if="item4.type == 'textarea'"
:disabled="item4.disabled"
>
</el-input>
<!-- 时间框 -->
<el-date-picker
v-model="reakData[item4.id]"
v-else-if="item4.type == 'date'"
:placeholder="item4.placeholder"
format="yyyy 年 MM 月 dd 日"
value-format="timestamp"
clearable
>
</el-date-picker>
<!-- 时间区间 -->
<el-date-picker
v-model="reakData[item4.id]"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
@change="dateChange(reakData[item4.id])"
value-format="yyyy-MM-dd HH:mm:ss"
v-else-if="item4.type == 'datearea'"
>
</el-date-picker>
<el-date-picker
v-model="reakData[item4.id]"
:disabled="item4.disabled"
type="date"
placeholder="选择日期"
value-format="yyyy-MM-dd HH:mm:ss"
v-else-if="item4.type == 'dates'"
:class="item4.date"
>
</el-date-picker>
<!--文件上传-->
<el-upload <el-upload
class="upload-demo" v-else
action="#" action="#"
ref="uploadFile" :class="
:accept="item4.acceptType" showBtnImg
:auto-upload="false" ? 'uoloadSty'
:before-upload=" : noneBtnImg
normalPictureBeforeAvatarUpload ? 'disUoloadSty'
: ''
" "
list-type="picture-card"
:auto-upload="false"
:on-success="handleAvatarSuccesszm"
:on-remove="handleDealImgRemove1"
:limit="1"
:on-change=" :on-change="
(file, fileList) => (file, fileList) => {
handleChange( handleChange(
file, file,
fileList, fileList,
item4, item4,
item2, item2,
realIndex realIndex,
) '1'
" );
:on-remove=" }
(flie, fileList) =>
handleRemove(
flie,
fileList,
item4,
item2,
realIndex
)
"
:before-remove="
(flie, fileList) =>
handleBeforeRemove(
flie,
fileList,
item4,
item2,
realIndex
)
"
:http-request="httpRequest"
:on-preview="
(flie, fileList) =>
handlerPreview(
flie,
fileList,
item4,
item2,
realIndex
)
" "
:file-list=" :before-upload="beforeAvatarUpload"
fileLists[item2.id] &&
fileLists[item2.id][realIndex]
? fileLists[item2.id][realIndex][
item4.id
]
: []
"
v-model="reakData[item4.id + '1']"
v-else-if="item4.type == 'file'"
> >
<el-button <img
size="small" v-if="item4.src1"
@click=" :src="item4.src1"
item4.name == '法律文书:' || class="avatar"
item2.name == '犯罪嫌疑人信息:' />
? uploadFlws() <i
: ''
"
type="primary"
>上传附件</el-button
>
<span
v-if="item4.id == 'flwsDzwjnr'"
style="
color: red;
margin-left: 20px;
font-size: 13px;
"
>支持png,jpg,doc,pdf格式,大小不超过3MB</span
>
<span
v-else-if="item4.id == 'asjfjDzwjnr'"
style="
color: red;
margin-left: 20px;
font-size: 13px;
"
>支持mp4,png,jpg,doc,pdf格式,大小不超过20MB</span
>
<span
v-else v-else
style=" class="
color: red; el-icon-plus
margin-left: 20px; avatar-uploader-icon
font-size: 13px;
" "
>支持jpg,jpeg,png,doc,pdf,docx格式,大小不超过3MB</span ></i>
>
</el-upload> </el-upload>
<div class="manName">正面</div>
</div>
<div
style="
text-align: center;
margin-left: 20px;
"
>
<div <div
class="manPhtot" v-if="
v-if="item4.type == 'pictureWithPreview'" zpFileLists[realIndex]
? Object.prototype.hasOwnProperty.call(
zpFileLists[realIndex],
'src2'
)
? true
: false
: false
"
class="relative"
> >
<div <div
v-if=" class="shadow"
bhrFileLists[realIndex] @click="deleteZp('fzxyr', realIndex, 2)"
? Object.prototype.hasOwnProperty.call( ></div>
bhrFileLists[realIndex], <img
'src' :src="
) 'data:image/gif;base64,' +
? true zpFileLists[realIndex]['src2']
: false
: false
" "
class="relative" class="avatar2"
> />
<div </div>
class="shadow"
@click="deleteZp('bhr', realIndex)"
></div>
<img
:src="
'data:image/gif;base64,' +
bhrFileLists[realIndex]['src']
"
class="avatar2"
/>
</div>
<el-upload <el-upload
v-else
action="#"
:class="
showBtnImg2
? 'uoloadSty'
: noneBtnImg2
? 'disUoloadSty'
: ''
"
list-type="picture-card"
:auto-upload="false"
:on-success="handleAvatarSuccesszc"
:on-remove="handleDealImgRemove2"
:limit="1"
:on-change="
(file, fileList) => {
handleChange(
file,
fileList,
item4,
item2,
realIndex,
'2'
);
}
"
:before-upload="beforeAvatarUpload"
>
<img
v-if="item4.src2"
:src="item4.src2"
class="avatar"
/>
<i
v-else v-else
class="avatar-uploader" class="
action="#" el-icon-plus
:show-file-list="true" avatar-uploader-icon
:auto-upload="false"
:on-success="handleAvatarSuccess2"
:before-upload="beforeAvatarUpload"
:limit="1"
:on-change="
(file, fileList) => {
handleChange(
file,
fileList,
item4,
item2,
realIndex,
'1'
);
}
" "
> ></i>
<div slot="file" slot-scope="{ file }"> </el-upload>
<img <div class="manName">左侧面面</div>
class=" </div>
el-upload-list__item-thumbnail <div
" style="
:src="file.url" text-align: center;
alt="" margin-left: 20px;
/> "
</div> >
<img
v-if="reakData.src"
:src="
'data:image/gif;base64,' +
reakData.src
"
class="avatar"
/>
<i
v-else
class="
el-icon-plus
avatar-uploader-icon
"
></i>
</el-upload>
</div>
<div <div
class="manPhtot" v-if="
v-if="item4.type == 'manPhtot'" zpFileLists[realIndex]
style="display: flex" ? Object.prototype.hasOwnProperty.call(
zpFileLists[realIndex],
'src3'
)
? true
: false
: false
"
class="relative"
> >
<div style="text-align: center">
<div
v-if="
zpFileLists[realIndex]
? Object.prototype.hasOwnProperty.call(
zpFileLists[realIndex],
'src1'
)
? true
: false
: false
"
class="relative"
>
<div
class="shadow"
@click="
deleteZp('fzxyr', realIndex, 1)
"
></div>
<img
:src="
'data:image/gif;base64,' +
zpFileLists[realIndex]['src1']
"
class="avatar2"
/>
</div>
<el-upload
v-else
action="#"
:class="
showBtnImg
? 'uoloadSty'
: noneBtnImg
? 'disUoloadSty'
: ''
"
list-type="picture-card"
:auto-upload="false"
:on-success="handleAvatarSuccesszm"
:on-remove="handleDealImgRemove1"
:limit="1"
:on-change="
(file, fileList) => {
handleChange(
file,
fileList,
item4,
item2,
realIndex,
'1'
);
}
"
:before-upload="beforeAvatarUpload"
>
<img
v-if="item4.src1"
:src="item4.src1"
class="avatar"
/>
<i
v-else
class="
el-icon-plus
avatar-uploader-icon
"
></i>
</el-upload>
<div class="manName">正面</div>
</div>
<div <div
style=" class="shadow"
text-align: center; @click="deleteZp('fzxyr', realIndex, 3)"
margin-left: 20px; ></div>
<img
:src="
'data:image/gif;base64,' +
zpFileLists[realIndex]['src3']
" "
> class="avatar2"
<div />
v-if="
zpFileLists[realIndex]
? Object.prototype.hasOwnProperty.call(
zpFileLists[realIndex],
'src2'
)
? true
: false
: false
"
class="relative"
>
<div
class="shadow"
@click="
deleteZp('fzxyr', realIndex, 2)
"
></div>
<img
:src="
'data:image/gif;base64,' +
zpFileLists[realIndex]['src2']
"
class="avatar2"
/>
</div>
<el-upload
v-else
action="#"
:class="
showBtnImg2
? 'uoloadSty'
: noneBtnImg2
? 'disUoloadSty'
: ''
"
list-type="picture-card"
:auto-upload="false"
:on-success="handleAvatarSuccesszc"
:on-remove="handleDealImgRemove2"
:limit="1"
:on-change="
(file, fileList) => {
handleChange(
file,
fileList,
item4,
item2,
realIndex,
'2'
);
}
"
:before-upload="beforeAvatarUpload"
>
<img
v-if="item4.src2"
:src="item4.src2"
class="avatar"
/>
<i
v-else
class="
el-icon-plus
avatar-uploader-icon
"
></i>
</el-upload>
<div class="manName">左侧面面</div>
</div>
<div
style="
text-align: center;
margin-left: 20px;
"
>
<div
v-if="
zpFileLists[realIndex]
? Object.prototype.hasOwnProperty.call(
zpFileLists[realIndex],
'src3'
)
? true
: false
: false
"
class="relative"
>
<div
class="shadow"
@click="
deleteZp('fzxyr', realIndex, 3)
"
></div>
<img
:src="
'data:image/gif;base64,' +
zpFileLists[realIndex]['src3']
"
class="avatar2"
/>
</div>
<el-upload
v-else
action="#"
:class="
showBtnImg3
? 'uoloadSty'
: noneBtnImg3
? 'disUoloadSty'
: ''
"
list-type="picture-card"
:auto-upload="false"
:on-success="handleAvatarSuccessyc"
:on-remove="handleDealImgRemove3"
:limit="1"
:on-change="
(file, fileList) => {
handleChange(
file,
fileList,
item4,
item2,
realIndex,
'3'
);
}
"
:before-upload="beforeAvatarUpload"
>
<img
v-if="item4.src3"
:src="item4.src3"
class="avatar"
/>
<i
v-else
class="
el-icon-plus
avatar-uploader-icon
"
></i>
</el-upload>
<div class="manName">右侧面</div>
</div>
</div> </div>
<span
v-if="item4.type == 'manPhtot'" <el-upload
style=" v-else
color: red; action="#"
margin-left: 20px; :class="
font-size: 15px; showBtnImg3
? 'uoloadSty'
: noneBtnImg3
? 'disUoloadSty'
: ''
"
list-type="picture-card"
:auto-upload="false"
:on-success="handleAvatarSuccessyc"
:on-remove="handleDealImgRemove3"
:limit="1"
:on-change="
(file, fileList) => {
handleChange(
file,
fileList,
item4,
item2,
realIndex,
'3'
);
}
" "
>支持jpg,jpeg,png格式,大小不超过3MB</span :before-upload="beforeAvatarUpload"
> >
</el-form-item> <img
</span> v-if="item4.src3"
</div> :src="item4.src3"
</div> class="avatar"
/>
<i
v-else
class="
el-icon-plus
avatar-uploader-icon
"
></i>
</el-upload>
<div class="manName">右侧面</div>
</div>
</div>
<span
v-if="item4.type == 'manPhtot'"
style="
color: red;
margin-left: 20px;
font-size: 15px;
"
>支持jpg,jpeg,png格式,大小不超过3MB</span
>
</el-form-item>
</span>
</div> </div>
</div> </div>
<div v-else style="position: absolute; top: -25px"> <div class="addChildBtn">
<span class="addName"
>{{
item2.name.substring(0, item2.name.length - 1)
}}:</span
>
<span style="display: inline-block">
<i
class="iconfont icontiqu"
style="
cursor: pointer;
font-size: 20px;
position: absolute;
top: 34px;
right: -25px;
"
title="提取"
></i>
</span>
</div>
<div class="addChildBtn" v-show="item2.noshowMoreBtn">
<el-button type="primary" @click="handelFrom(item2)"> <el-button type="primary" @click="handelFrom(item2)">
<i class="el-icon-plus"></i><span>添加</span> <i class="el-icon-plus"></i><span>添加</span>
</el-button> </el-button>
...@@ -1062,6 +1035,7 @@ export default { ...@@ -1062,6 +1035,7 @@ export default {
type: Object, type: Object,
default: () => {}, default: () => {},
}, },
propTitle: String,
}, },
data() { data() {
return { return {
...@@ -1188,14 +1162,8 @@ export default { ...@@ -1188,14 +1162,8 @@ export default {
//1.1二级字典处理 //1.1二级字典处理
if (item.type == "lazyCodeTree" || item.type == "codeTree") { if (item.type == "lazyCodeTree" || item.type == "codeTree") {
if (item.multiple) { if (item.multiple) {
// self.formLabelAlign[item.id].forEach((subitmes) => { let str = `#${self.formLabelAlign[item.id].join("#")}`;
// params.append(objStr + item.id, subitmes); params.append(objStr + item.id, str);
// });
let str = `#${self.formLabelAlign[item.id].join('#')}`
params.append(
objStr + item.id,
str
);
} else { } else {
params.append( params.append(
objStr + item.id, objStr + item.id,
...@@ -1212,11 +1180,8 @@ export default { ...@@ -1212,11 +1180,8 @@ export default {
} }
} else if (item.type == "setValue") { } else if (item.type == "setValue") {
if (item.multiple) { if (item.multiple) {
let str = `#${self.formLabelAlign[item.id].join('#')}` let str = `#${self.formLabelAlign[item.id].join("#")}`;
params.append( params.append(objStr + item.id, str);
objStr + item.id,
str
);
} else { } else {
if (item.id == "jsrXm") { if (item.id == "jsrXm") {
let arr = item.codeOptions.filter( let arr = item.codeOptions.filter(
...@@ -1420,8 +1385,9 @@ export default { ...@@ -1420,8 +1385,9 @@ export default {
} }
//2.有childrenAsAdd表单数据处理 //2.有childrenAsAdd表单数据处理
if (item.childrenAsAdd) { if (item.childrenAsAdd) {
debugger
item.childrenAsAdd.forEach((subItem) => { item.childrenAsAdd.forEach((subItem) => {
if (subItem.flag == self.formLabelAlign[item.id]) { debugger
//如果遍历到的编号和所选择的编号一致 //如果遍历到的编号和所选择的编号一致
self.formLabelAlign[subItem.id].forEach((val5, index) => { self.formLabelAlign[subItem.id].forEach((val5, index) => {
//遍历每一个数组的值 //遍历每一个数组的值
...@@ -1493,7 +1459,6 @@ export default { ...@@ -1493,7 +1459,6 @@ export default {
} }
} }
}); });
}
}); });
} }
}); });
...@@ -1552,6 +1517,50 @@ export default { ...@@ -1552,6 +1517,50 @@ export default {
debugger; debugger;
}, },
httpRequest() {}, httpRequest() {},
//新增表单数据
handelFrom(obj) {
let self = this,
addObj;
if (obj.flag2) {
obj.flag2 = false;
} else {
self.propFormField.forEach((groupItem) => {
groupItem.data.forEach((val) => {
if (val.childrenAsAdd) {
val.childrenAsAdd.forEach((val2, index2) => {
//遍历list数组
if (val2 == obj) {
//通过比较两个对象是否相等 将formLabelAlign里绑定的数据复制了一份
addObj = JSON.parse(
JSON.stringify(self.formLabelAlign[val2.id][0])
);
//实现深拷贝赋值
for (var val3 in addObj) {
addObj[val3] = "";
}
self.$set(
self.formLabelAlign[val2.id],
self.formLabelAlign[val2.id].length,
addObj
);
for (var f = 0; f < val2.list[0].name.length; f++) {
if (val2.list[0].name[f].type == "file") {
self.fileLists[val2.id][
self.formLabelAlign[val2.id].length - 1
] = {};
self.fileLists[val2.id][
self.formLabelAlign[val2.id].length - 1
][val2.list[0].name[f].id] == [];
}
}
this.$message.success("新增成功");
}
});
}
});
});
}
},
}, },
mounted() { mounted() {
var self = this; var self = this;
...@@ -1629,6 +1638,17 @@ $-header-fontSize: 18px; ...@@ -1629,6 +1638,17 @@ $-header-fontSize: 18px;
} }
#formCommonPage { #formCommonPage {
width: 100% !important; width: 100% !important;
.subTitle {
div {
font-size: 14px;
font-family: Source Han Sans CN;
font-weight: 600;
line-height: 48px;
height: 48px;
color: #363636;
opacity: 1;
}
}
.sjjcShadow { .sjjcShadow {
width: 100%; width: 100%;
height: 100vh; height: 100vh;
...@@ -1680,7 +1700,7 @@ $-header-fontSize: 18px; ...@@ -1680,7 +1700,7 @@ $-header-fontSize: 18px;
background: #fdfdfd !important; background: #fdfdfd !important;
} }
/deep/.el-input__inner { /deep/.el-input__inner {
height: 29px; height: 32px;
} }
/deep/.el-checkbox-button, /deep/.el-checkbox-button,
/deep/.el-checkbox-button__inner { /deep/.el-checkbox-button__inner {
...@@ -1711,7 +1731,6 @@ $-header-fontSize: 18px; ...@@ -1711,7 +1731,6 @@ $-header-fontSize: 18px;
height: 48px; height: 48px;
font-size: 16px; font-size: 16px;
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
border-bottom: 1px solid #e4e4e4;
font-weight: bold; font-weight: bold;
line-height: 48px; line-height: 48px;
color: #363636; color: #363636;
...@@ -1724,9 +1743,13 @@ $-header-fontSize: 18px; ...@@ -1724,9 +1743,13 @@ $-header-fontSize: 18px;
//分块组级卡片 //分块组级卡片
.paneGroupDiv { .paneGroupDiv {
background: #ffffff; background: #ffffff;
padding: 0 40px;
padding-bottom: 20px;
// 表单元素的真实容器 // 表单元素的真实容器
.zdyLine { .zdyLine {
padding: 0px 20px 20px 20px; padding-bottom: 20px;
border-bottom: 1px solid #e4e4e4;
/deep/.el-form-item { /deep/.el-form-item {
margin-bottom: 0px !important; margin-bottom: 0px !important;
.el-form-item__label { .el-form-item__label {
...@@ -1747,7 +1770,7 @@ $-header-fontSize: 18px; ...@@ -1747,7 +1770,7 @@ $-header-fontSize: 18px;
margin-bottom: 10px; margin-bottom: 10px;
} }
.el-input__inner { .el-input__inner {
border-radius: 2px; border-radius: 4px;
} }
.codeTree { .codeTree {
.el-select { .el-select {
......
...@@ -407,7 +407,7 @@ ...@@ -407,7 +407,7 @@
pageBs != 'hmxsGl' && pageBs != 'hmxsGl' &&
pageBs != 'ryxsGl' && pageBs != 'ryxsGl' &&
pageBs != 'caseGl' && pageBs != 'caseGl' &&
pageBs != 'rwbd' && pageBs != 'rwbd' &&
pageBs != 'rySp' && pageBs != 'rySp' &&
pageBs != 'myaddZdry' && pageBs != 'myaddZdry' &&
pageBs != 'rwbdjs' pageBs != 'rwbdjs'
...@@ -422,9 +422,13 @@ ...@@ -422,9 +422,13 @@
</div> </div>
<div <div
v-else-if=" v-else-if="
((pageBs != 'rwbd' && pageBs != 'rwbdjs') && (columnTitle.prop == 'xxzjbh' || columnTitle.prop == 'asjbh' || columnTitle.prop == 'xm' )) || (pageBs != 'rwbd' &&
((pageBs == 'rwbd' || pageBs == 'rwbdjs') && columnTitle.prop == 'rwmc') pageBs != 'rwbdjs' &&
(columnTitle.prop == 'xxzjbh' ||
columnTitle.prop == 'asjbh' ||
columnTitle.prop == 'xm')) ||
((pageBs == 'rwbd' || pageBs == 'rwbdjs') &&
columnTitle.prop == 'rwmc')
" "
> >
<!-- 暂时修改成这样 --> <!-- 暂时修改成这样 -->
...@@ -474,6 +478,22 @@ ...@@ -474,6 +478,22 @@
}} }}
</el-tag> </el-tag>
</div> </div>
<div
v-else-if="columnTitle.prop == 'zjhm'"
style="font-size: 13px !important"
>
<span
style="border: 1px solid rgb(64, 158, 255); padding: 0px 4px"
>{{
columnTitle["gradeLev"] == 10
? "一般"
: columnTitle["gradeLev"] == 20
? "危险"
: "高危"
}}</span
>
{{ scope.row[columnTitle.prop] }}
</div>
<div v-else v-html="scope.row[columnTitle.prop]"> <div v-else v-html="scope.row[columnTitle.prop]">
{{ columnTitle.prop }} {{ columnTitle.prop }}
</div> </div>
...@@ -500,7 +520,12 @@ ...@@ -500,7 +520,12 @@
class="edit" class="edit"
style="margin-right: 16px" style="margin-right: 16px"
v-if=" v-if="
!(pageBs == 'rySp' || pageBs == 'yhkxsGl' || pageBs == 'rwbd'|| pageBs == 'rwbdjs') !(
pageBs == 'rySp' ||
pageBs == 'yhkxsGl' ||
pageBs == 'rwbd' ||
pageBs == 'rwbdjs'
)
" "
>修改</span >修改</span
> >
......
...@@ -18,6 +18,7 @@ import zdryRoutes from "./modules/zdry"; ...@@ -18,6 +18,7 @@ import zdryRoutes from "./modules/zdry";
import rlqbxsRoutes from "./modules/rlqbxs"; import rlqbxsRoutes from "./modules/rlqbxs";
import xsjsdbRoutes from "./modules/xsjsdb"; import xsjsdbRoutes from "./modules/xsjsdb";
import zjclRoutes from "./modules/zjcl"; import zjclRoutes from "./modules/zjcl";
import userAuthRoutes from "./modules/userAuth";
const originalPush = VueRouter.prototype.push; const originalPush = VueRouter.prototype.push;
...@@ -49,6 +50,7 @@ const mainRouters = [ ...@@ -49,6 +50,7 @@ const mainRouters = [
rlqbxsRoutes, rlqbxsRoutes,
xsjsdbRoutes, xsjsdbRoutes,
zjclRoutes, zjclRoutes,
userAuthRoutes,
{ {
path: "*", path: "*",
name: "error", name: "error",
......
import menuLayout from "@/layout/menuLayout.vue";
const menuLayouts = [
{
path: "/queryUser",
name: "queryUser",
meta: {
isAdd: true,
title: '用户管理'
},
component: () => import("@/views/userAuth/queryUser.vue")
}
];
export default {
path: "/right",
component: menuLayout,
children: [...menuLayouts]
};
\ No newline at end of file
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
:formField="formField" :formField="formField"
:formLabelAligns="formLabelAlign" :formLabelAligns="formLabelAlign"
@submit="submit" @submit="submit"
:propTitle="title"
> >
</form-compontent> </form-compontent>
</div> </div>
...@@ -20,16 +21,43 @@ export default { ...@@ -20,16 +21,43 @@ export default {
}, },
data() { data() {
return { return {
title: "可疑线索管理",
formField: [ formField: [
//基本信息 //基本信息
{ {
title: "可疑线索管理", title: "可疑线索",
id: 1, id: 1,
objStr: "", objStr: "",
index: 0, index: 0,
data: kysscj, data: kysscj,
}, },
{ {
title: "可疑线索0000",
id: 10,
objStr: "",
index: 20,
data: [
{
name: "测试:",
col: "1",
noshowMoreBtn: false, //是否显示添加按钮
childrenAsAdd: [
{
name: "测试:",
id: "test",
flag: true,
list: [
{
name: kysscj,
},
],
iconClass: "el-icon-close",
},
],
},
],
},
{
title: "线索提供者", title: "线索提供者",
id: 2, id: 2,
objStr: "", objStr: "",
......
<template>
<div class="Content">
<right-content
:pageBs="pageBs"
:header="header"
:cxFormData="cxFormData"
:cxQueryField="cxQueryField"
:cxDefaultFormThead="cxDefaultFormThead"
:cxUrl="cxUrl"
@add="add"
></right-content>
</div>
</template>
<script>
import rightContent from "@c/ptCxForm_components.vue";
export default {
name: "jdcxsGl",
components: {
rightContent
},
data() {
return {
header: "用户管理",
pageBs: "queryUser",
cxFormData: {
username: "",
limit: 10,
page: 1,
policemanid:""
},
cxQueryField: [
{
name: "用户名",
id: "username",
type: "text",
value: "",
placeholder: "",
col: "3",
},
{
name: "警号",
id: "policemanid",
type: "text",
value: "",
placeholder: "",
col: "3",
},
],
cxDefaultFormThead: [
{
label: "登录名",
prop: "username",
},
{
label: "用户姓名",
prop: "trueName",
},
{
label: "用户单位",
prop: "unitname"
},
{
label: "警号",
prop: "policemanid",
},
{
label: "用户状态",
prop: "openFlag",
},
],
cxUrl: "/sysuser/selectUserNewList",
Menu: [
{
id: "queryUser",
label: "用户管理",
index: "queryUser",
auth: "M0101",
className: "iconfont iconrizhi",
disabled: false,
},
],
};
},
created() {
this.$store.commit("user/SET_Menu", this.Menu);
// debugger
},
methods: {
add() {
this.$router.pushToTab("addJdcxs");
},
},
};
</script>
<style>
.el-dialog__body {
padding: 10px 15px !important;
}
.rightContent .el-input__inner,
#formCommonPage .el-input__inner {
height: 32px;
line-height: 32px;
font-family: inherit;
}
.el-table__header-wrapper th,
.el-table__header-wrapper tr {
background: #f4f6f7;
}
.rightContent .el-input__icon,
#formCommonPage .el-input__icon,
.el-input__suffix-inner {
line-height: 36px;
}
.rightContent .el-range-separator {
position: relative;
top: -4px;
}
.rightContent .el-textarea__inner,
#formCommonPage .el-textarea__inner {
width: 100%;
font-family: inherit;
}
.rightContent .el-range-input,
#formCommonPage .el-range-input {
vertical-align: top;
}
.rightContent .el-date-editor .el-range__close-icon {
margin-top: -4px;
}
.rightContent .el-form-item__error {
left: calc(66% - 27px);
top: 12px;
}
.success-row {
background-color: #fbf9f4 !important;
}
.Content .el-input,
.Content .el-date-editor--daterange.el-input__inner {
width: 100% !important;
}
</style>
<style scoped lang="scss">
@import "@/assets/styles/rightContent.scss";
</style>
...@@ -181,6 +181,7 @@ export default { ...@@ -181,6 +181,7 @@ export default {
{ {
label: "身份证号", label: "身份证号",
prop: "zjhm", prop: "zjhm",
width: '230px'
}, },
{ {
label: "作案年龄", label: "作案年龄",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment