Commit 0033db70 by 米嘉伟

feat(*):权限,报表迁移

parent 2f2104eb
/*
* @Author: your name
* @Date: 2022-03-25 16:36:01
* @LastEditTime: 2022-04-03 12:06:58
* @LastEditors: Please set LastEditors
* @LastEditTime: 2022-07-25 11:14:12
* @LastEditors: zhangchaojun 893499851@qq.com
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \uuuz\founder_vue\src\i18n\zh-cn.js
*/
......@@ -34,7 +34,8 @@ export default {
add_person: '新增人员',
selected: '已选择',
sum: '项​',
clear_up: '清除',
clear_up: '清空',
back: '返回',
option: '操作',
edit: '修改',
compile: '编辑',
......@@ -88,16 +89,33 @@ export default {
seconds: '秒',
have_overtime: '已超时',
save_success: '保存成功',
save_fail: '保存失败',
fptx_export: 'FPTX导出',
follow: '关注',
cancel_follow_data_not_cancel: '确认取消关注该数据吗?该操作无法撤消!',
copy_data: '复制数据',
print: '打印',
confirm_delete_data_option_not_cancel: '确认要删除该数据吗?该操作无法撤消!',
delete_fail_barcode_exits_follow_list: '删除失败:条码号在关注列表中存在',
confirm_close: '确认关闭?',
whether_confirm_delete: '是否确认删除?',
please_input: '请输入',
please_select: '请选择',
whether_delete_selected_data: '是否确定删除已选择的数据?',
deletion_cancelled: '已取消删除',
filter_condition_exists_Please_re_select: '该筛选条件已存在!请重新选择!',
please_select_text: '请选择内容',
rename: '重命名',
origin_order_number: '原序号:',
edit_order_number: '修改序号:',
please_edit_order_number: '请修改序号',
sure_delete_case_fingerprint_image: '您确定要删除此枚案件指纹图像吗?',
sure_delete_case_hand_image: '您确定要删除此枚案件掌纹图像吗?',
please_input_number: '请输入数字',
delete_picture_success: '删除图片成功!',
delete_picture_fail: '删除图片失败!',
pre_step: '上一步',
go_back_fail: '返回上一步失败',
// 基本信息--
......@@ -181,8 +199,8 @@ export default {
edit_number: '改号',
data_type: '数据类型',
features: '特征',
sarehousing_time: '入库时间'
sarehousing_time: '入库时间',
zkzj: '只看自己',
},
// 菜单
......@@ -234,7 +252,9 @@ export default {
stbzxxfsh: '省厅比中信息复/审核',
xtfkgl: '系统分库管理',
tjbb: '统计报表',
czrz: '操作日志'
czrz: '操作日志',
grzx:'个人中心',
picture_import: '图片导入'
},
// 登录页面
Login: {
......@@ -295,7 +315,8 @@ export default {
zzwtqinfo: '指掌纹提取信息',
ryljfk: '人员逻辑分库',
nyxx: '捺印信息',
tjbxzzzw: '提交并新增指掌纹',
tjbxzzzw: '提交并新增人像',
tjbxzrx: '提交并修改人像',
csrq_pp: '请输入和出生日期匹配的证件号码'
},
// 指纹采集器
......@@ -407,7 +428,16 @@ export default {
getting_info: '正在获取信息,请稍后',
warning: '警告',
finger_repeat_collect: '该指位采集重复',
not_correspond_roll_finger: '与滚动指位对应不上'
not_correspond_roll_finger: '与滚动指位对应不上',
finger_plane_acquisition: '连指平面采集',
missing_palm: '缺掌',
qualified_palmprint: '合格掌纹',
left_plane_palm: '左半掌',
right_plane_palm: '右半掌',
left_side_palm: '左侧掌',
right_side_palm: '右侧掌',
data_being_processed: '数据正在处理,请稍后再试!',
The_hand_type_is_different_from_the_specified: '手类型与指定的不同!'
},
// FPTX导入 / FPTX导入任务
FptxDr: {
......@@ -505,6 +535,11 @@ export default {
// 全部人员库
Allperson: {
input_barcode_vague_search: '请输入条码,*支持模糊搜索',
collection: '采集',
picture: '图片',
scanning: '扫描',
interface: '接口(多个系统)',
flash_catch: '闪捕app'
},
// 全部案件库
Allcase: {
......@@ -519,7 +554,9 @@ export default {
loss_value: '损失价值(元)',
extraction_unit: '提取单位名称',
extraction_time: '提取时间',
extraction_work: '提取单位'
extraction_work: '提取单位',
numbers: '数量',
jian:'积案'
},
// 关注列表
Gzlb: {
......@@ -545,7 +582,7 @@ export default {
title: '标题',
case_file_information: '案件档案信息',
person_file_information: '人员档案信息',
case_no: '案件编号',
case_no: '案件编号',
hit: '比中',
no_query_record_yet: '暂无发查询记录',
order: '次',
......@@ -598,6 +635,7 @@ export default {
current_consumption: '本次消耗',
remaining_before_consumption: '消耗前剩余',
source_barcode: '源条码号',
origin_barcode: '原条码号',
selected_no_send_query: '已选中,不发送查询',
solve_case_no_send_query: '已破案,不发送查询',
revoke_no_send_query: '已撤销,不发送查询',
......@@ -668,9 +706,11 @@ export default {
},
// 添加到队列
Tjddl: {
queue: '队列',
select_queue: '选择队列',
please_select_queue: '请选择队列',
quality_testing: '质量检查队列',
yh: '用户',
designated_user: '指定用户',
please_select_designated_user: '请选择指定用户',
user1: '用户1',
......@@ -694,6 +734,7 @@ export default {
please_select_occurrence_date: '请选择发案日期',
case_type: '案件类别',
loss_value: '损失价值(人民币元)',
loss_value1: '损失价值',
please_input_loss_value: '请输入损失价值',
homicide: '是否命案',
name_of_extractor: '提取人姓名',
......@@ -707,5 +748,799 @@ export default {
please_select_homicide: '请选择是否命案',
please_input_extraction_unit_code: '请输入提取单位代码',
information_incomplete_please_check: '信息填写不完整,请检查'
},
// 查询与认定
QueryConfirm: {
query_id: '查询ID',
please_input_query_id: '请输入查询ID',
send_time: '发送时间',
status_selection: '状态选择',
manual_identification: '人工认定',
custom_column: '自定义列',
task_No_query_ID: '任务号/查询ID',
artificial: '人工',
not_deleted: '未删除',
deleted: '已删除',
local_query: '本地查询',
remote_query: '远程查询',
city: '城市',
national_library: '国家库',
waiting_for_comparison: '等待比对',
comparing: '正在比对',
identifying: '正在认定',
identification_completed: '认定完成',
under_review: '正在复核',
review_completed: '复核完成',
identification_error: '认定出错',
review_error: '复核出错',
mark_deletion: '标记删除',
invalid: '无效',
synchronization_feature: '同步特征',
comparison_completed: '比对完成',
comparison_error: '比对出错',
flash_catch_not_identified: '闪捕未认定',
candidates_is_zero: '候选个数为零',
wrong_data_type: '数据类型错误',
number_of_candidates: '候选个数',
identification_time: '认定时间',
median_probability: '比中概率',
highest: '最高',
high: '高',
medium: '中',
low: '低',
minimum: '最低',
three_points_refresh: '3分/刷新',
five_points_refresh: '5分/刷新'
},
// 正查
LT: {
order_number: '序号',
finger_palm_position: '指/掌位',
median_unit: '比中单位',
hit_people: '比中人',
unit_code: '单位代码',
hit_people_IDCard: '比中人身份证号',
hit_time: '比中时间',
hit_people_phone: '比中人联系电话',
phone_not_less_than_7: '联系电话不应低于7位数!',
enter_comments_here: '在此输入备注信息',
weather_confirmation_is_completed: '当前候选未全部查看,是否确认认定完成?',
confirmation_completed: '认定完成!',
incomplete_information_unable_compare: '信息不全,无法比中!',
success_competition: '比中成功!',
fail_competition: '比中失败!',
compared_cannot_be_compared_again: '已经比中过的数据无法再次比中!',
task_identification_completed: '任务认定完成',
all_identification_before_close: '当前任务下的所有查询ID数据未全部查看,是否确认认定完成?选择确认将所有数据置为认定完成并自动关闭页面。',
identification_completed_will_close: '认定完成,即将关闭页面!'
},
// 串查
LL: {
source_data: '源数据',
target_data: '目标数据',
extractor: '提取人',
identified_completed_query_ID: '显示已认定完成查询ID',
total_for_this_task: '该任务共计',
query: '查询',
enumerate: '枚数',
viewed: '已查看',
total_query_ID: '该查询ID共计',
expend: '展开',
fold: '折叠',
data_has_been_deleted: '该条数据已删除!',
please_enter_barcode_indicator: '请输入条码号/指位',
show_candidates_comparison: '显示已比中候选'
},
// 倒查
TL: {
finger_position: '指位',
},
// 查重
TT: {
identified: '已认定',
delete_time: '删除时间',
ranking: '排名',
score: '得分',
target_barcode: '目标条码号',
source: '源',
number: '数',
ju: '据',
eye: '目',
mark: '标',
image_deleted: '图像已删除',
no_pre: '没上一条了',
no_next: '没下一条了',
no_data: '没有数据',
facade: '正面',
left_side: '左侧面',
right_side: '右侧面',
ID_photo: '身份证照',
no_left_hand_roll_source: '无左手滚动源',
finger_finger_pic: '指指纹图',
no_left_hand_roll_target: '无左手滚动目标',
no_right_hand_roll_source: '无右手滚动源',
no_right_hand_roll_target: '无右手手滚动目标',
nothing: '无'
},
// 发查询条件
Fcxtj: {
send_query_criteria: '发查询条件',
close_btn: '关 闭',
},
// 人工认定弹窗
Recognition: {
source_data_type: '源数据类型',
target_data_type: '目标数据类型'
},
// 认定详情
ImageEd: {
revoke: '撤销',
recovery: '恢复',
move: '移动',
enlarge: '放大',
synchronization: '同步',
full_size_display: '原尺寸显示',
rotate: '旋转',
image_rotation: '图像旋转',
reset: '重置',
x_axis: 'X轴',
y_axis: 'Y轴',
section: '区间',
download: '下载',
screenshot: '截屏',
thumbnail: '缩略图',
guide: '辅助线',
hidden_guides: '隐藏辅助线',
straight_line: '直线',
curve: '曲线',
colour: '颜色',
default: '默认',
fine: '细',
middle: '中',
crude: '粗',
mark_point: '标记点',
hide_marked_points: '隐藏标记点',
small: '小',
big: '大',
historical_records: '历史记录',
eraser: '橡皮擦',
clear_operation_cannot_undone: '确认要清空操作吗?该操作无法撤消!',
display_features: '显示特征',
display_direction: '显示方向',
displays_location_of_feature: '只显示匹配特征的位置',
location_special_display_features: '特殊显示匹配特征的位置',
digital_marking: '数字标示',
rotate_according_features: '根据匹配特征旋正',
source_data_deleted_target_image_not_displayed: '源数据已删除,目标图像不显示',
Tan: '棕褐色',
remove_Tan: '移除棕褐色',
horseshoe_mirror: '马蹄镜',
equalization: '均衡化',
remove_equalization: '移除均衡化',
sharpening: '锐化',
remove_sharpening: '移除锐化',
relief: '浮雕',
remove_relief: '移除浮雕',
reversed_phase: '反相',
remove_reversed_phase: '移除反相',
color_filter: '滤色器',
remove_color_filter: '移除滤色器',
differentiation: '差异化',
remove_differentiation: '移除差异化',
positive_lamination: '正片叠底',
remove_positive_lamination: '移除正片叠底',
de_whitening: '去白',
remove_de_whitening: '移除去白',
brightness_contrast: '亮度/对比度',
brightness: '亮度',
contrast: '对比度',
source_finger: '源数据指纹',
target_finger: '目标数据指纹',
palmprint_picture: '掌纹图片',
fingerprint_picture: '指纹图片',
failed_download_picture: '下载图片失败!',
remove_brightness: '移除亮度',
remove_contrast: '移除对比度',
empty: '已清空!',
remove_marked_points: '移除标记点',
remove_line: '移除直线',
remove_curve: '移除曲线',
please_enlarge_image_before_dragging: '拖动前请放大图像',
hide_line: '隐藏直线',
hide_curve: '隐藏曲线',
show_line: '显示直线',
show_curve: '显示曲线',
show_marked_points: '显示标记点',
delete_marked_points: '删除标记点',
flap: '翻转'
},
// 人员指纹编辑
Ryzwbj: {
no_picture: '暂无图片',
individual: '个',
right: '右',
left: '左',
moderate: '适中',
emptying_operation: '清空操作',
characteristic_point: '特征点',
direction: '方向',
select_save_type: '选择保存类型',
current_finger_feature: '当前指位特征',
save_current_finger_feature: '保存当前指位特征',
all_finger_features: '全部指位特征',
save_all_finger_features: '保存全部指位特征',
save: '保存',
image_adjustment: '图像调整',
automatic_extraction: '自动提取',
number_feature_points_exceeds_limit: '特征点数量超出限制!',
poor_image_quality: '图像质量差,未提取出特征!',
grayscale: '灰度',
remove_grayscale: '移除灰度',
personnel_file_information: '人员档案信息',
current_address: '现地址',
please_select_collection_reason: '请选择采集原因',
please_select_ethnic_type: '请选择民族类型',
please_enter_administrative_district_registered_residence: '请输入户籍地行政区',
please_enter_current_address_Administrative: '请输入现住址行政区',
please_enter_printing_unit: '请输入捺印单位名称',
tip_open_manual_marking_tzd: '提示:已开启人工标注特征点',
tip_close_manual_marking_tzd: '提示:已关闭人工标注特征点',
},
// 案件指纹编辑
Ajzwbj: {
image_import: '图像导入',
picture_import: '图片导入',
scanning: '扫描',
add_hand_print_frame: '添加手纹框',
scale: '比例尺',
degree_scale: '刻度',
numerical_value: '数值',
recommended_serial_number: '推荐序号',
color_of_mastoid_line: '乳突线颜色',
white: '白色',
black: '黑色',
other: '其他',
left_part: '遗留部位',
body_number: '尸体编号',
save_warehousing: '保存入库',
image_editing: '图像编辑',
circle_freeform_drawing: '圆形/自由绘制',
freeform_drawing: '自由绘制',
circle_drawing: '圆形绘制',
show_important_areas: '显示重要区域',
current_characteristics: '当前特征',
save_current_sequence_number_feature: '保存当前序号特征',
all_features: '全部特征',
save_all_sequence_number_feature: '保存全部序号特征',
current_features_and_pictures: '当前特征和图片',
save_current_sequence_number_features_and_pictures: '保存当前序号特征和图片',
untreated: '未处理',
millimeter: '毫米',
centimeter: '厘米',
inch: '英寸',
processed: '已处理',
please_input_correct_picture_file: '请传入正确的图片文件!',
number_polygon_nodes_cannot_less_three: '多边形节点数不可少于三个',
current_points_same_line_drawing_invalid: '当前所有点在同一直线上,绘制失效',
storage_saved_successfully: '保存入库成功!',
storage_saved_fail: '保存入库失败!',
please_draw_line_first: '请先画线!',
duplicate_fingerprint_serial_number: '指纹序号重复!',
duplicate_palmprint_serial_number: '掌纹序号重复!',
please_draw_scale_first: '请先画比例尺!',
picture_saved_successfully: '图片保存成功!',
picture_saved_fail: '图片保存失败!',
recommended_serial_number_exceeds_limit: '推荐序号超出限制!',
please_enter_fingerprint_card_number: '请输入现场掌指纹卡编号',
please_enter_sending_date: '请输入发案日期',
please_enter_loss_value: '请输入损失价值(人民币元)',
please_enter_brief_case: '请输入简要案情',
extraction_unit_code: '提取单位代码:',
name_of_extractor: '提取人姓名:',
please_enter_extraction_time: '请输入提取时间',
please_select_homicide: '请选择命案'
},
// 比中信息管理
Bzxxgl: {
please_enter_source_barcode: '请输入源条码号',
please_enter_target_barcode: '请输入目标条码号',
please_select_comparison_unit: '请选择比中单位',
review_unit: '复核单位',
please_select_compound_unit: '请选择复合单位',
review_time: '复核时间',
review_user: '复核用户',
review_status: '复核状态',
please_select_review_status: '请选择复核状态',
be_reviewed: '待复核',
reviewed: '已复核',
valid_review: '复核有效',
invalid_review: '复核无效',
data_recent: '数据为最近',
one_day: '1天',
three_day: '3天',
five_day: '5天',
source_finger_serial_number: '源指位/序号',
target_finger_serial_number: '目标指位/序号',
reviewer: '复核人',
to_review: '复核',
cancel_review: '撤销复核',
dissolve_Belgium_China_relations: '是否要解除比中关系?',
incorrect_format: '格式不正确',
China_dissolved_successfully: '解除比中关系成功!',
only_one_item_can_selected_cancellation_review: '只能选择一项进行撤销复核!',
please_select_at_least_one_item: '请至少选择一项!',
please_enter_the_reason: '请输入原因!',
cancellation_of_review_succeeded: '撤销复核成功!',
to_examine: '审核',
revoke_approval: '撤销审核',
invalid_audit: '审核无效',
audit_valid: '审核有效',
take_into_account_outcome: '计入战果',
undo_outcome: '撤销战果',
regardless_of_the_outcome: '不计战果',
report_to_Provincial_Department: '上报省厅',
report_to_Ministry_of_public_security: '上报公安部',
reported: '已上报',
are_you_sure_to_execute: '是否确定执行',
cancelled: '已取消',
please_select_approval_status: '请选择审核状态',
fruit_state: '战果状态',
please_select_the_winning_status: '请选择战果状态',
audit_time: '审核时间',
rescinded: '已撤销',
to_be_reviewed: '待审核',
please_enter_reason_description: '请输入原因描述',
comparison_information_review: '比中信息审核',
reporting_unit: '上报单位',
reporting_time: '上报时间',
checker: '审核人',
audit_status: '审核状态',
unselected_results: '未选战果',
local_and_municipal_reporting_time: '地市上报时间',
local_and_municipal_reporting_unit: '地市上报单位',
review_status_of_Provincial_Department: '省厅复审核状态',
city_approval_status: '地市审核状态',
prefecture_and_city: '地市',
provincial_Department_reply: '省厅复',
please_fill_in_the_reason: '请填写原因!',
please_select_report_data: '请选择上报数据!',
the_data_you_selected_cannot_be_reported: '您选择的数据部分不能上报!',
info_LL: '信息-串查',
info_LT: '信息-正查',
info_TL: '信息-倒查',
info_TT: '信息-查重',
case_information: '案件信息',
happening_place: '案发地点',
number_of_on_site_fingerprints: '现场指纹枚数',
source_logic_library: '源逻辑库',
no_content: '暂无内容',
enter_comments_here: '在此输入意见',
adopt: '通过',
no_pass: '不通过',
no_adopt: '未通过',
lifting_Belgium_China_relations: '解除比中关系',
only_identify_dissolve_relationship_between_Belgium_and_China: '只有认定人才能解除比中关系',
sure_cancel_relationship_between_Belgium_and_China: '是否确认解除比中关系?',
please_fill_disapproval_opinion: '请填写不通过意见!',
opinion: '意见:',
whether: '是否',
review_failed: '复核未通过!',
review_passed: '复核通过!',
current_address_details: '现住址详情',
address_of_registered_residence: '户籍地详址',
comparison_information: '比中信息',
details: '详情'
},
// 错误信息页面
ErrorIndex: {
information_lost: '页面信息丢失,建议尝试以下方法解决问题',
back_home: '返回门户',
go_back: '后退一步'
},
// 用户管理
UserManage: {
yhz: '用户组',
dw: '单位',
js: '角色',
qx: '权限',
deactivate: '停用',
enable: '启用',
new_add_user: '新增用户',
affiliated_unit: '所属单位',
enable_status: '启用状态',
no_status: '无状态',
edit_user: '编辑用户',
user_alarm: '用户警号',
please_input_user_alarm: '请输入用户警号',
join_user_group: '加入用户组',
join_role: '加入角色',
password: '密码',
confirm_password: '确认密码',
please_confirm_password: '请确认密码',
contact_number: '联系电话',
please_input_contact_number: '请输入联系电话',
submit: '提交',
loading_desperately: '拼命加载中',
please_input_username: '请输入用户名!',
maximum_length_is_8_characters: '用户名不可为汉字字符,最长8位!',
please_enter_the_ID_number: '请输入证件号码!',
please_enter_the_correct_ID_number: '请输入正确的证件号码!',
please_input_name: '请输入姓名!',
please_enter_Chinese_characters: '请输入汉字字符!',
contact_number_is_18_digits: '联系电话为18位的数字!',
please_select_company_code: '请选择单位代码!',
please_select_company_name: '请选择单位名称!',
please_enter_the_alarm_number: '请输入警号!',
please_input_password: '请输入密码!',
password_length_should_be_within_8_digits: '密码长度需在8位数以内!',
please_enter_the_password_again: '请再次输入密码',
two_passwords_are_inconsistent: '两次输入密码不一致!',
please_select_status: '请选择状态',
please_select_user_before_operation: '请选择用户后操作',
this_action_will_permanently_delete_user: '此操作将永久删除用户,是否继续?',
no_user_group: '无用户组',
no_role: '无角色'
},
// 用户组管理
GroupManage: {
name_of_the_company_to_user_belongs: '用户所属单位名称',
group_role: '组角色',
add_user_group: '新增用户组',
role_setting: '角色设置',
group_members: '组成员',
user_setting: '用户设置',
group_jurisdiction: '组权限',
group_name: '组名称',
group_description: '组描述',
please_input_group_description: '请输入组描述',
join_group_user: '加入组用户',
join_group_role: '加入组角色',
edit_user_group: '编辑用户组',
please_input_group_name: '请输入组名称',
system_role: '系统角色',
custom_role: '自定义角色',
add_role: '可添加角色',
add_group_member: '添加组成员',
no_add_data: '暂无可添加数据',
close: '关闭',
please_input_user_group_name: '请输入用户组名称!',
please_select_join_user_group_user: '请选择加入用户组的用户!',
please_select_user_group_role: '请选择用户组的角色!',
setting_success: '设置成功',
action_permanently_delete_user_group: '此操作将永久删除用户组, 是否继续?'
},
// 角色管理
RoleManage: {
new_add_role: '新增角色',
copy_edit_jurisdiction: '复制并修改权限',
functional_authority: '功能权限',
data_authority: '数据权限',
adding_role_not_completed_please_save_first: '添加角色操作尚未完成,请先保存!',
please_save_before_copying: '请先保存后再进行复制!',
please_input_name: '请输入名称',
new_add_role_success: '新增角色成功!',
failed_get_role_information: '获取角色信息失败!',
please_select_role_operate: '请选择角色后操作',
please_delete_after_saving: '请保存后进行删除操作',
update_success: '更新成功',
failed_retrieve_current_user_information_please_reEnter_from_list: '当前用户信息调取失败,请从列表重新进入'
},
// 权限管理
PermissionManage: {
user_list: '用户列表',
user_group_list: '用户组列表',
permission_description: '权限说明',
role_permissions: '角色权限',
user_group_permissions: '用户组权限',
role_user_group: '角色+用户组',
role_user: '角色+用户',
user_group_user: '用户组+用户',
user_rights: '用户权限',
role_user_group_user: '角色+用户组+用户',
},
// 发查询权限
QueryPermission: {
less: '少',
secondary: '中',
much: '多',
total_queries_sent_by_system: '系统可发送查询总数:',
article_day: '条/天',
automatic_allocation_total_number_provincial_offices: '省厅总数自动分配',
one_key_distribution: '一键分配',
inquiries_issued_provincial_district_departments: '省/区厅发查询总数:',
high_priority: '其中高优先级:',
provincial_District_Department_user_name: '省/区厅用户名',
sent_total: '已发送/总数',
where_high_priority: '其中(高优先级)',
prefecture_city_unit: '地市单位:',
bureau_of_public_security: '公安局',
total_number_local_municipal_inquiries: '地市发查询总数:',
Lhasa: '拉萨市',
one_click_allocation_succeeded: '一键分配成功',
one_click_allocation_failed_please_check_total_number_inputs: '一键分配失败,请核查输入总数',
one_click_allocation_failed_please_try_again: '一键分配失败,请重试',
edit_success: '修改成功',
allocation_failed_please_check_the_entered_value: '分配失败,请核查输入数值',
latest_data_day_refreshed_for_you: '已为您刷新当日最新数据'
},
// 操作日志
SystemLog: {
query_unit: '查询单位:',
query_date: '查询日期:',
time: '时间',
content: '内容',
IP_address: 'IP地址'
},
// 统计报表
Tjbb: {
query_template: '查询模版:',
please_select_template: '请选择模板',
zhi: '至',
collected_information_statistics: '采集信息统计',
case_information_statistics: '案件信息统计',
detailed_review_statistics_of_urban_comparison: '城市比中明细复核统计',
visual_switching: '可视化切换',
print: '打印',
current_page: '当前页',
all_pages: '全部页',
export_current_page: '导出当前页',
export_all_pages: '导出全部页',
detailed_review_statistics_of_prefecture_city_comparison: '地市比中明细复核统计',
preparing_to_export_please_wait: '正在准备导出,请稍等',
collection_information_statistics_template: '采集信息统计模板',
case_information_statistics_template: '案件信息统计模板',
city_comparison_information_review_statistical_template: '城市比中信息复核统计模板',
acquisition_time: '采集时间:',
collection_unit: '采集单位:',
select_date: '选择日期',
collection_way: '采集方式:',
fingerprint_printing: '捺印指纹',
stamp_date: '提取日期:',
case_event_No: '案事件编号:',
inspection_No: '勘验编号:',
please_input_inspection_No: '请输入勘验编号',
start_end_time: '起止时间:',
query_type: '查询类型:',
source_barcode_No: '源条码号:',
target_barcode_No: '目标条码号:',
recognized_by: '认定单位:',
nyzzw: '捺印指掌纹',
dylj: '当月累计',
dnlj: '当年累计',
dyljq: '当月累计(起)',
dnljq: '当年累计(起)',
dyljm: '当月累计(枚)',
dnljm: '当年累计(枚)',
zwgs: '指纹个数',
fadddm: '发案地点代码',
fadd: '发案地点',
cjdwdm: '采集单位代码',
tqrq: "提取日期",
bzbs: '比中标识',
rddw: '认定单位',
cjrsfz: '采集人身份证',
cjrdh: '采集人电话',
ryh: '人员号',
sbbzt: '上报部状态',
bzyh: '比中用户',
bzzt: '比中状态',
sbblsh: '上报部流水号',
xczzwtq: '现场指掌纹提取',
},
// 系统分库管理
Xtfkgl: {
sub_database_name: '分库名称',
database_user_group_user: '数据库用户组/用户',
creation_time: '创建时间',
logical_library_description: '逻辑库说明',
workflow: '工作流',
data_management: '数据管理',
processing_queue: '处理队列',
edit_queue: '编辑队列',
check_queue: '检查队列',
query_queue: '查询队列',
audit_0: '审核0',
audit_1: '审核1',
audit_2: '审核2',
audit_3: '审核3',
audit_4: '审核4',
audit_5: '审核5',
please_select_user: '请先选择用户',
logical_sub_database_information: '逻辑分库信息',
logical_sub_library_name: '逻辑分库名称:',
Database_user: '数据库用户:',
tip_not_selected_all_users_will_be_selected_by_default: '提示:如果不选择,默认全部用户!',
data_conditions: '数据条件:',
workflow_settings: '工作流设置',
working_mode: '工作模式',
serial_mode: '串行模式',
parallel_mode: '并行模式',
queue_name: '队列名称',
work_queue: '工作队列',
description_cannot_exceed_50_words: '说明不能超过50个字!',
please_input_logical_name: '请输入逻辑库名称',
name_includes_Chinese_characters_letters_and_two_Chinese_characters: '支持中英文组合,不少于2个汉字!',
newly_added: '新增',
logical_library_already_exists: '已有该逻辑库',
unknown_exception: '未知异常!',
wrong_information: '信息填写错误!',
add_sub_database: '新增分库'
},
// 轮播图
Swiper: {
no_last_one: '没有上一条了',
no_next_one: '没有下一条了',
},
// 请求插件
RequestUtil: {
not_logged_in: '未登录',
login_timeout_please_login_again: '登录超时,请重新登录!',
login_again: '重新登录',
failed_client_error: '失败(400):客户端错误!',
failed_your_permission_is_insufficient: '失败(403):您的权限不足!',
failed_the_network_request_does_not_exist: '失败(404):网络请求不存在!',
failed_server_error: '失败(500):服务器异常!',
Failed_your_operation_is_canceled_or_submission_is_not_allowed: '失败(501):您的操作被取消或不允许提交!',
request_timed_out_please_check_the_network_connection: '请求超时,请检查网络连接!',
cancellation_request_succeeded: '取消请求成功!',
unknown_error: '未知错误:',
unknown_exception: '未知异常:'
},
// 校验规则
Rules: {
please_input_the_correct_ID_number: '请输入正确格式的身份证号!',
please_enter_the_phone_number_in_correct_format: '请输入正确格式的手机号!',
please_enter_the_correct_number: '请输入正确的数字!',
please_enter_the_correct_weight: '请输入正确的体重!',
please_enter_the_correct_case_number: '请输入正确的案件编号!',
please_enter_the_correct_license_plate_number: '请输入正确的车牌号!',
please_enter_the_correct_6digit_password: '请输入正确的正确的6位密码!',
please_enter_the_correct_lowercase_letters: '请输入正确的是小写字母!',
please_input_the_correct_capital_letters: '请输入正确的大写字母!',
please_enter_the_correct_case_letters: '请输入正确的大小写字母!',
cannot_be_empty: '不能为空',
number_cannot_be_empty: '数字不能为空',
case_number_cannot_be_empty: '案件编号不能为空',
please_enter_the_case_number_in_the_correct_format: '请输入正确格式的案件编号',
license_plate_number_cannot_be_empty: '车牌号不能为空',
please_enter_the_license_plate_number_in_the_correct_format: '请输入正确格式的车牌号码',
password_cannot_be_empty: '密码不能为空',
please_enter_6digit_password_in_the_correct_format: '请输入正确格式的6位密码',
please_enter_lower_case_letters_in_the_correct_format: '请输入正确格式的小写字母',
uppercase_cannot_be_empty: '大写不能为空',
please_enter_capital_letters_in_the_correct_format: '请输入正确格式的大写字母',
case_cannot_be_empty: '大小写不能为空',
please_enter_upper_and_lower_case_letters_in_the_correct_format: '请输入正确格式的大小写字母',
Sunday: '周日',
Monday: '周一',
Tuesday: '周二',
Wednesday: '周三',
Thursday: '周四',
Friday: '周五',
Saturday: '周六',
not_an_object: '不是一个对象!'
},
// 打印
Print: {
reportPdf: '导出PDF',
printPdf: '打印PDF',
zzhwxxk: '指掌纹信息卡',
zy: '职业',
gdny: '滚动捺印',
pmny: '平面捺印',
bnyrqm: '被捺印人签名',
nydwmc: '捺印单位名称',
nydwdm: '捺印单位代码',
nyr: '捺印人',
fhr: '复核人',
gaj: '公安局',
zhwny: '掌纹捺印',
qz:'缺指',
qzh:'缺掌'
},
// 人像采集
rxcj: {
cjsbxh: '采集设备型号',
xzry: '新增人员',
rxcj: '人像采集',
zzwcj: '指掌纹采集',
qhpf: '切换皮肤',
sz: '设置',
sxtcs: '摄像头参数',
mr: '默认',
// csLine
dbd: '对比度',
ld: '亮度',
bhd: '饱和度',
rh: '锐化',
gmz: '伽马值',
hxpy: '横向偏移',
zxpy: '纵向偏移',
// csLinePlus
bgbc: '曝光补偿',
sw: '色温',
jj: '焦距',
zd: '自动',
sxtgdtj: '摄像头高度调节',
xs: '向上',
xx: '向下',
cjyl: '采集预览',
cjylWz: '将头部置于绿色安全区域内,并保持头部稳定',
xd: '选定',
drtp: '导入图片',
qhjt: '切换镜头',
// cjylOnly
tx1: '图像1',
tx2: '图像2',
tx3: '图像3',
tx4: '图像4',
tx5: '图像5',
// cjjgOnly
zm: '正面',
zcm: '左侧面',
ycm: '右侧面',
cjwc: '下一步',
bctp: '保存图片',
tsxx: '提示信息',
tsxxWz: '在这里显示采集的提示信息内容,在这里显示采集的提示信息内容!',
// 提示tip
tip1: '请先采集照片,然后预览并选中!',
tip2: '请先采集照片,然后进行预览!',
tip3: '文件类型错误,请重新选择文件!',
// szDialog
szDialogtitle: '采集设置',
xjcssz: '相机参数设置',
// uploadProgress
scz: '人像上传中...',
sczTip: '上传期间请勿关闭此页面',
scwc: '人像上传完成',
scwcTip: '页面将在3秒后自动关闭',
scsb: '人像上传失败',
scsbTip: '网络不顺畅,稍后再试试吧',
// doubleCheckDialog
doubleQX: '取 消',
doubleQD: '确 定',
},
// 个人中心
grzx:{
grzx:'个人中心',
szyhz:'所在用户组',
ssjs:'所属角色',
yyqx:'拥有权限',
zwyhz:'暂无用户组',
zwjs:"暂无角色",
zwqx:'暂无权限',
zwlxdh:'暂无联系电话',
xxxg:'信息修改',
mmxg:'密码修改',
xgcg:'修改成功',
xgsb:'修改失败',
srysmm:'请输入原始密码',
xmm:'新密码',
srxmm:'请输入新密码',
ymm:'原密码',
srymm:'请输入原密码',
cxdl:'请重新登录'
}
}
......@@ -11,11 +11,11 @@ import HttpConfigUtil from '../../request/HttpConfigUtil.js'
const _path = {
// 获取查询与认定用户列表
userList: addrType.api + '/queryque/allUser',
userList: addrType.security + '/users',
}
export default {
// 获取查询与认定用户列表
userList(_parameter) {
return fHttp.postJson(_path.userList, _parameter)
return fHttp.get(_path.userList, _parameter)
}
}
<template>
<el-container class="manage-page" direction="vertical">
<!-- 0停用 1启用-->
<div
class="header"
:class="{
<div class="header" :class="{
down: status === '0',
up: status === '1' || status === '2',
danlu: status === '3',
}">
<div class="title" :class="{
down: status === '0',
up: status === '1' || status === '2',
danlu: status === '3',
}"
>
<div
class="title"
:class="{
down: status === '0',
up: status === '1' || status === '2',
green: status === '3',
}"
>
<div
:class="{
'title-status': true,
textRed: status == '0',
textBlue: status == '1' || status == '2',
textGreen: status == '3',
}"
>
green: status === '3',
}">
<div :class="{
'title-status': true,
textRed: status == '0',
textBlue: status == '1' || status == '2',
textGreen: status == '3',
}">
<div v-if="status === '0'" class="circle-red"></div>
<div
v-if="status === '1' || status === '2'"
class="circle-blue"
></div>
<div v-if="status === '1' || status === '2'" class="circle-blue"></div>
<div v-if="status === '3'" class="circle-green"></div>
{{ status === "0" ? "停用" : "启用" }}
</div>
......@@ -42,35 +31,19 @@
<div class="info-item" style="display: flex; align-items: center">
<div class="info-title">组角色:</div>
<div>
<div
class="info-card"
v-for="item in userData &&
userData.roleNames &&
userData.roleNames.split(',').slice(0, 3)"
v-show="item != ''"
:title="item"
:key="item"
>
<div class="info-card" v-for="item in userData &&
userData.roleNames &&
userData.roleNames.split(',').slice(0, 3)" v-show="item != ''" :title="item" :key="item">
{{ item }}
</div>
</div>
<el-tooltip
class="item"
effect="dark"
placement="right"
style="width: auto !important"
v-if="
userData.roleNames && userData.roleNames.split(',').length >= 4
"
>
<el-tooltip class="item" effect="dark" placement="right" style="width: auto !important" v-if="
userData.roleNames && userData.roleNames.split(',').length >= 4
">
<span style="margin-left: 5px">...</span>
<div slot="content" class="tooTipBtn">
<div
v-for="item in userData.roleNames &&
userData.roleNames.split(',')"
:title="item"
:key="item"
>
<div v-for="item in userData.roleNames &&
userData.roleNames.split(',')" :title="item" :key="item">
{{ item }}
</div>
</div>
......@@ -79,15 +52,12 @@
<div class="info-item">
<div class="info-title">组成员:</div>
<div class="group-item cheng">
<svg-icon
style="
<svg-icon style="
width: 1rem;
height: 1rem;
margin-bottom: -0.0625rem;
transform: translateY(1px);
"
icon-class="group-item"
/>
" icon-class="group-item" />
{{ userData.userCount }}
</div>
</div>
......@@ -110,18 +80,9 @@
<p>权限说明</p>
<span></span>
</div>
<el-checkbox v-model="checked" disabled class="huise1"
>角色权限</el-checkbox
>
<el-checkbox v-model="checked" disabled class="danhuang1"
>用户组权限</el-checkbox
>
<el-checkbox
v-model="checked"
disabled
class="lei2 huise1 danhuang2"
>角色+用户组</el-checkbox
>
<el-checkbox v-model="checked" disabled class="huise1">角色权限</el-checkbox>
<el-checkbox v-model="checked" disabled class="danhuang1">用户组权限</el-checkbox>
<el-checkbox v-model="checked" disabled class="lei2 huise1 danhuang2">角色+用户组</el-checkbox>
</div>
<div class="save">
<div @click="redact" class="editText" v-if="editBoo">
......@@ -138,273 +99,331 @@
</div>
</div>
</div>
<!-- 功能权限 -->
<el-checkbox-group v-model="checkList" :disabled="disabled">
<div class="role-info">
<!-- 角色权限菜单列-->
<div class="menus">
<div :class="{ div3: true }">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[0].id);
}
"
:class="getClass(permissionDataList[0].id).class"
:disabled="getClass(permissionDataList[0].id).disable"
v-if="permissionDataList[0]"
:label="permissionDataList[0].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[0].id);
}
" :class="getClass(permissionDataList[0].id).class"
:disabled="getClass(permissionDataList[0].id).disable" v-if="permissionDataList[0]"
:label="permissionDataList[0].id">
{{ permissionDataList[0].name }}
</el-checkbox>
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[1].id);
}
"
:class="getClass(permissionDataList[1].id).class"
:disabled="getClass(permissionDataList[1].id).disable"
v-if="permissionDataList[1]"
:label="permissionDataList[1].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[1].id);
}
" :class="getClass(permissionDataList[1].id).class"
:disabled="getClass(permissionDataList[1].id).disable" v-if="permissionDataList[1]"
:label="permissionDataList[1].id">
{{ permissionDataList[1].name }}
</el-checkbox>
</div>
<div :class="{ div3: true }">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[2].id);
}
"
:class="getClass(permissionDataList[2].id).class"
:disabled="getClass(permissionDataList[2].id).disable"
v-if="permissionDataList[2]"
:label="permissionDataList[2].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[2].id);
}
" :class="getClass(permissionDataList[2].id).class"
:disabled="getClass(permissionDataList[2].id).disable" v-if="permissionDataList[2]"
:label="permissionDataList[2].id">
{{ permissionDataList[2].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[3].id);
}
"
:class="getClass(permissionDataList[3].id).class"
:disabled="getClass(permissionDataList[3].id).disable"
v-if="permissionDataList[3]"
:label="permissionDataList[3].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[3].id);
}
" :class="getClass(permissionDataList[3].id).class"
:disabled="getClass(permissionDataList[3].id).disable" v-if="permissionDataList[3]"
:label="permissionDataList[3].id">
{{ permissionDataList[3].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[4].id);
}
"
:class="getClass(permissionDataList[4].id).class"
:disabled="getClass(permissionDataList[4].id).disable"
v-if="permissionDataList[4]"
:label="permissionDataList[4].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[4].id);
}
" :class="getClass(permissionDataList[4].id).class"
:disabled="getClass(permissionDataList[4].id).disable" v-if="permissionDataList[4]"
:label="permissionDataList[4].id">
{{ permissionDataList[4].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[5].id);
}
"
:class="getClass(permissionDataList[5].id).class"
:disabled="getClass(permissionDataList[5].id).disable"
v-if="permissionDataList[5]"
:label="permissionDataList[5].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[5].id);
}
" :class="getClass(permissionDataList[5].id).class"
:disabled="getClass(permissionDataList[5].id).disable" v-if="permissionDataList[5]"
:label="permissionDataList[5].id">
{{ permissionDataList[5].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[6].id);
}
"
:class="getClass(permissionDataList[6].id).class"
:disabled="getClass(permissionDataList[6].id).disable"
v-if="permissionDataList[6]"
:label="permissionDataList[6].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[6].id);
}
" :class="getClass(permissionDataList[6].id).class"
:disabled="getClass(permissionDataList[6].id).disable" v-if="permissionDataList[6]"
:label="permissionDataList[6].id">
{{ permissionDataList[6].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[7].id);
}
"
:class="getClass(permissionDataList[7].id).class"
:disabled="getClass(permissionDataList[7].id).disable"
v-if="permissionDataList[7]"
:label="permissionDataList[7].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[7].id);
}
" :class="getClass(permissionDataList[7].id).class"
:disabled="getClass(permissionDataList[7].id).disable" v-if="permissionDataList[7]"
:label="permissionDataList[7].id">
{{ permissionDataList[7].name }}
</el-checkbox>
</div>
</div>
<div class="content">
<div :class="{ div3: true }">
<div
class="line"
v-for="item in permissionDataList[0] &&
permissionDataList[0].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[0] &&
permissionDataList[0].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
<br />
<div
:class="{ line: true, barLine: index == 1 }"
v-for="(item, index) in permissionDataList[1] &&
permissionDataList[1].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div :class="{ line: true, barLine: index == 1 }" v-for="(item, index) in permissionDataList[1] &&
permissionDataList[1].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div :class="{ div3: true }">
<div
:class="{
line: true,
barLine: index == 4,
barInLine: index == 2,
w600: index == 8,
}"
v-for="(item, index) in permissionDataList[2] &&
permissionDataList[2].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div :class="{
line: true,
barLine: index == 4,
barInLine: index == 2,
w600: index == 8,
}" v-for="(item, index) in permissionDataList[2] &&
permissionDataList[2].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div
class="line"
v-for="item in permissionDataList[3] &&
permissionDataList[3].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[3] &&
permissionDataList[3].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div
class="line"
v-for="item in permissionDataList[4] &&
permissionDataList[4].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[4] &&
permissionDataList[4].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div
class="line"
v-for="item in permissionDataList[5] &&
permissionDataList[5].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[5] &&
permissionDataList[5].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div2">
<div
:class="{ line: true, w400: index == 3, w440: index == 4 }"
v-for="(item, index) in permissionDataList[6] &&
permissionDataList[6].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div :class="{ line: true, w400: index == 3, w440: index == 4 }" v-for="(item, index) in permissionDataList[6] &&
permissionDataList[6].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div3">
<div
class="line"
v-for="item in permissionDataList[7] &&
permissionDataList[7].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[7] &&
permissionDataList[7].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<!-- <div class="line" v-for="item in " :key="item.code"></div>-->
</div>
</div>
</el-checkbox-group>
<!-- 数据权限 -->
<el-checkbox-group v-show="dataFlag" v-model="checkList" :disabled="disabled">
<div class="role-info">
<!-- 角色权限菜单列-->
<div class="menus">
<div :class="{ div3: true }">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[0].id);
}
" :class="getClass(dataPermissionList[0].id).class"
:disabled="getClass(dataPermissionList[0].id).disable" v-if="dataPermissionList[0]"
:label="dataPermissionList[0].id">
{{ dataPermissionList[0].name }}
</el-checkbox>
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[1].id);
}
" :class="getClass(dataPermissionList[1].id).class"
:disabled="getClass(dataPermissionList[1].id).disable" v-if="dataPermissionList[1]"
:label="dataPermissionList[1].id">
{{ dataPermissionList[1].name }}
</el-checkbox>
</div>
<div :class="{ div3: true }">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[2].id);
}
" :class="getClass(dataPermissionList[2].id).class"
:disabled="getClass(dataPermissionList[2].id).disable" v-if="dataPermissionList[2]"
:label="dataPermissionList[2].id">
{{ dataPermissionList[2].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[3].id);
}
" :class="getClass(dataPermissionList[3].id).class"
:disabled="getClass(dataPermissionList[3].id).disable" v-if="dataPermissionList[3]"
:label="dataPermissionList[3].id">
{{ dataPermissionList[3].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[4].id);
}
" :class="getClass(dataPermissionList[4].id).class"
:disabled="getClass(dataPermissionList[4].id).disable" v-if="dataPermissionList[4]"
:label="dataPermissionList[4].id">
{{ dataPermissionList[4].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[5].id);
}
" :class="getClass(dataPermissionList[5].id).class"
:disabled="getClass(dataPermissionList[5].id).disable" v-if="dataPermissionList[5]"
:label="dataPermissionList[5].id">
{{ dataPermissionList[5].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[6].id);
}
" :class="getClass(dataPermissionList[6].id).class"
:disabled="getClass(dataPermissionList[6].id).disable" v-if="dataPermissionList[6]"
:label="dataPermissionList[6].id">
{{ dataPermissionList[6].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[7].id);
}
" :class="getClass(dataPermissionList[7].id).class"
:disabled="getClass(dataPermissionList[7].id).disable" v-if="dataPermissionList[7]"
:label="dataPermissionList[7].id">
{{ dataPermissionList[7].name }}
</el-checkbox>
</div>
</div>
<div class="content">
<div :class="{ div3: true }">
<div class="line" v-for="item in dataPermissionList[0] &&
dataPermissionList[0].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
<br />
<div :class="{ line: true, barLine: index == 1 }" v-for="(item, index) in dataPermissionList[1] &&
dataPermissionList[1].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div :class="{ div3: true }">
<div :class="{
line: true,
barLine: index == 4,
barInLine: index == 2,
w600: index == 8,
}" v-for="(item, index) in dataPermissionList[2] &&
dataPermissionList[2].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div1">
<div class="line" v-for="item in dataPermissionList[3] &&
dataPermissionList[3].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div1">
<div class="line" v-for="item in dataPermissionList[4] &&
dataPermissionList[4].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div1">
<div class="line" v-for="item in dataPermissionList[5] &&
dataPermissionList[5].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div2">
<div :class="{ line: true, w400: index == 3, w440: index == 4 }" v-for="(item, index) in dataPermissionList[6] &&
dataPermissionList[6].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div3">
<div class="line" v-for="item in dataPermissionList[7] &&
dataPermissionList[7].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
</div>
</div>
</el-checkbox-group>
</div>
<div
class="userDialog bjgroupYonghuDialog"
v-show="isShowUserDialog"
ref="isShowUserDialog"
>
<div class="userDialog bjgroupYonghuDialog" v-show="isShowUserDialog" ref="isShowUserDialog">
<div class="head-title">
<div class="left">
<img class="title-img" :src="src" alt="" />
......@@ -416,37 +435,16 @@
</div>
<div class="info">
<div class="user-table">
<el-table
ref="userMultipleTable"
highlight-current-row
:data="userTableDataDialog"
:key="userKey"
>
<el-table-column
prop="username"
label="用户名"
show-overflow-tooltip
>
<el-table ref="userMultipleTable" highlight-current-row :data="userTableDataDialog" :key="userKey">
<el-table-column prop="username" label="用户名" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="name" label="姓名" show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="policeNumber"
label="警号"
show-overflow-tooltip
>
<el-table-column prop="policeNumber" label="警号" show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="userGroupNames"
label="用户组"
show-overflow-tooltip
>
<el-table-column prop="userGroupNames" label="用户组" show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="unitName"
label="所属单位"
show-overflow-tooltip
>
<el-table-column prop="unitName" label="所属单位" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="status" label="启用状态" width="auto">
......@@ -454,11 +452,11 @@
<div v-if="scope.row.status === 0" class="circle-red"></div>
<div v-if="scope.row.status === 1" class="circle-blue"></div>
{{
scope.row.status === 0
? "停用"
: scope.row.status === 1
? "启用"
: "无状态"
scope.row.status === 0
? "停用"
: scope.row.status === 1
? "启用"
: "无状态"
}}
</template>
</el-table-column>
......@@ -477,7 +475,7 @@ import "@/icons/group-item.svg";
import qs from "qs";
export default {
// name: "UserPermission",
data() {
data () {
return {
id: "",
rolename: "",
......@@ -518,7 +516,7 @@ export default {
};
},
watch: {
isShowUserDialog(val) {
isShowUserDialog (val) {
this.$bus.emit("isBlur", val);
},
},
......@@ -526,21 +524,21 @@ export default {
* 这里方法大部分copy UserPermission.vue 的方法,逻辑一样
*/
methods: {
funAuth() {
funAuth () {
this.funFlag = true;
this.dataFlag = false;
//console.info("功能权限");
},
dataAuth() {
dataAuth () {
this.funFlag = false;
this.dataFlag = true;
//console.info("数据权限");
},
redact() {
redact () {
this.isSave = false;
},
// 保存
save() {
save () {
this.editBoo = true;
if (this.isSave) {
return;
......@@ -572,7 +570,7 @@ export default {
}
});
},
getUserList(row) {
getUserList (row) {
this.unitname = row.name;
this.$axios.get("/security/users/userList/" + row.id).then((res) => {
if (res.data.code == 200 && res.data.info == "success") {
......@@ -580,7 +578,7 @@ export default {
}
});
},
personInfor() {
personInfor () {
let self = this;
this.$axios.get("/security/user-groups/" + this.userID).then((res) => {
if (res.data) {
......@@ -612,10 +610,10 @@ export default {
}
});
},
canceluser() {
canceluser () {
this.isShowUserDialog = false;
},
getClass(id) {
getClass (id) {
let self = this;
let arr = self.controlCheckMap() || [];
let newArr = arr.filter((i) => i.id == id);
......@@ -649,7 +647,7 @@ export default {
newObj["class"] = obj;
return newObj;
},
handleCheckAllChange(boo, id) {
handleCheckAllChange (boo, id) {
let obj = this.permissionDataList.find((i) => i.id == id);
let sonArr = obj.children.map((i) => i.id);
if (boo) {
......@@ -683,8 +681,42 @@ export default {
this.checkList = [...(arr || []), ...(newArr || [])];
}
},
handleCheckAllChangeSj (boo, id) {
let obj = this.dataPermissionList.find((i) => i.id == id)
if (!obj.children) return
let sonArr = obj.children.map((i) => i.id)
if (boo) {
let childList = this.checkList.concat(sonArr)
if (id == 8) {
//一般管理
childList = this.getRoleIdsSj(7)
}
if (id == 9) {
//超级管理
childList = this.getRoleIdsSj(8)
}
if (id == 5) {
//综合认定
childList.push(4)
let obj = this.dataPermissionList.find((i) => i.id == 4)
let arr = obj.children.map((i) => i.id)
childList = childList.concat(arr)
}
this.checkList = Array.from(new Set(childList))
} else {
console.log(this.rolePermissions)
let arr = this.checkList.filter((x) => sonArr.indexOf(x) < 0)
let newArr = sonArr.filter((i) => {
let index = this.rolePermissions.findIndex((j) => j.id == i)
if (index >= 0) {
return i
}
})
this.checkList = [...(arr || []), ...(newArr || [])]
}
},
//获取权限id集合
getRoleIds(index) {
getRoleIds (index) {
let arr = [];
this.permissionDataList.forEach((i, x) => {
if (x < index) {
......@@ -694,7 +726,18 @@ export default {
});
return arr;
},
controlCheckMap() {
//获取权限id集合
getRoleIdsSj (index) {
let arr = []
this.dataPermissionList.forEach((i, x) => {
if (x < index) {
arr.push(i.id)
arr = arr.concat(i.children.map((i) => i.id))
}
})
return arr
},
controlCheckMap () {
let self = this;
// self.rolePermissions; //角色
// self.userGroupPermissions; //用户组
......@@ -725,7 +768,7 @@ export default {
return contArr;
},
//ES5原生去重办法
Es5duplicate(arr, type) {
Es5duplicate (arr, type) {
var newArr = [];
var tArr = [];
if (arr.length == 0) {
......@@ -752,18 +795,22 @@ export default {
},
// 获取权限列表
getPermissionDataLists() {
this.$axios.get("/security/permissions").then((res) => {
if (res.data.code == 200 && res.data.detail.length > 0) {
let result = res.data.detail;
var arr = [];
arr = this.listToTree(result);
getPermissionDataLists () {
this.$axios.get('/security/permissions').then((res) => {
if (res.data.code == 200) {
let result = res.data.detail.per
let result1 = res.data.detail.DataPer
var arr = []
var arr1 = []
arr = this.listToTree(result)
arr1 = this.listToTree(result1)
}
this.permissionDataList = arr;
});
this.permissionDataList = arr
this.dataPermissionList = arr1
})
},
// 将同级数据转化为树形结构
listToTree(dataSource) {
listToTree (dataSource) {
// datasource是平级的数据来源
return dataSource.filter((e) => {
const pid = e.parentId;
......@@ -780,10 +827,10 @@ export default {
});
},
},
destroyed() {
destroyed () {
$(".bjgroupYonghuDialog").remove();
},
mounted() {
mounted () {
setTimeout(() => {
console.log(this.permissionDataList);
}, 3000);
......@@ -791,7 +838,7 @@ export default {
document.body.appendChild(this.$refs.isShowUserDialog);
});
},
created() {
created () {
this.userID = sessionStorage.getItem("GroupPermission");
//人员详情
this.personInfor();
......@@ -800,7 +847,7 @@ export default {
//权限页面返现
this.getPermissionDataLists();
},
activated() {
activated () {
let path = this.$route.path;
let userId = sessionStorage.getItem("GroupPermission");
this.$router.push({
......@@ -819,22 +866,27 @@ export default {
color: #666666 !important;
}
}
.editText {
margin-right: 20px;
color: #006aff;
cursor: pointer;
> i {
>i {
cursor: pointer;
}
span {
cursor: pointer;
}
}
.info-item {
&:last-of-type {
border-right: none !important;
}
}
.info-card {
width: 120px;
height: 24px;
......@@ -851,6 +903,7 @@ export default {
line-height: 24px;
margin-right: 10px;
}
.userList {
color: #055fe7;
font-size: 14px;
......@@ -858,6 +911,7 @@ export default {
font-family: HarmonyOS_Sans_SC;
cursor: pointer;
}
.cheng {
font-size: 14px;
background: #ffffff;
......@@ -867,41 +921,50 @@ export default {
border-radius: 12px;
font-weight: 700;
}
.el-container {
padding-top: 10px !important;
}
.title-status {
font-weight: 200 !important;
font-family: HarmonyOS_Sans_SC !important;
}
.el-checkbox /deep/ {
.is-checked span.el-checkbox__inner {
background-color: #ffce86;
border-color: #ffce86;
}
}
.tooTipBtn {
padding: 10px;
max-height: 317px;
overflow: auto;
// 滚动条的宽度
&::-webkit-scrollbar {
width: 6px; /*高宽分别对应横竖滚动条的尺寸*/
width: 6px;
/*高宽分别对应横竖滚动条的尺寸*/
height: 1px;
}
/* 滚动槽 */
&::-webkit-scrollbar-track {
height: 65px;
-webkit-box-shadow: inset006pxrgba(0, 0, 0, 0.3);
border-radius: 10px;
}
/* 滚动条滑块 */
&::-webkit-scrollbar-thumb {
border-radius: 10px;
height: 65px;
background: #595a5a;
}
> div {
>div {
width: 100px;
text-overflow: ellipsis;
overflow: hidden;
......@@ -913,11 +976,13 @@ export default {
text-align: center;
margin-bottom: 15px;
line-height: 24px;
&:last-of-type {
margin-bottom: 0;
}
}
}
.header {
.info {
.info-item {
......@@ -927,15 +992,16 @@ export default {
}
}
}
@import "scss/userpermission.scss";
@import "scss/group";
</style>
<style scoped lang="scss">
/deep/ .el-table .el-table__body tr.current-row > td {
background-color: transparent !important;
}
/deep/ .el-table .el-table__body tr.current-row>td {
background-color: transparent !important;
}
/deep/ .el-table .el-table__body tr:hover > td {
background-color: transparent !important;
}
/deep/ .el-table .el-table__body tr:hover>td {
background-color: transparent !important;
}
</style>
<template>
<el-container class="manage-page" direction="vertical">
<div class="sider" @click="resetEdit('screen')">
<div class="btns">
<div class="add" @click.stop="add">
<i style="
<el-container class="manage-page" direction="vertical">
<div class="sider" @click="resetEdit('screen')">
<div class="btns">
<div class="add" @click.stop="add">
<i style="
width: 0.8125rem;
height: 0.8125rem;
margin-bottom: -0.0625rem;
margin-right: 0.25rem;
" class="el-icon-plus"></i>
<span class="add-role-span"> 新增角色 </span>
</div>
<div
class="img-btn"
@click="copy2"
title="复制并修改权限"
@mouseenter="copybz = true"
@mouseleave="copybz = false"
>
<img v-if="!copybz" src="../../assets/img/role/copy.png" />
<!-- copy_xuan -->
<img v-else src="../../assets/img/copy_xuan.png" />
</div>
</div>
<div class="default-role">
<div v-for="item in defaultRoleBtns" :key="item.id" class="roleItemBox">
<div
@click.stop="copy(item.id)"
@mouseenter="$set(item, 'enter', true)"
@mouseleave="$set(item, 'enter', false)">
<svg-icon
icon-class="copy"
v-show="fuzhi"
class="copy2"
v-if="item.enter"
/>
<svg-icon
icon-class="copy_xuan"
v-show="fuzhi"
class="copy2"
v-else
/>
</div>
<div
class="default-role-item"
:class="{ active: item.id === diyRoleItemIndex, fuzhi: fuzhi }"
@click="chooseDefaultRoleItem(item)"
>
{{ item.name }}
</div>
</div>
</div>
<div class="hr"></div>
<div class="diy-roles">
<span v-show="delimgBoo" class="cancleBtn" @click="cancel">取消</span>
<div class="delbtns" v-if="roleArr.includes('H-3-5')">
<div
class="delicon"
v-if="!delimgBoo && diyRoleList.length > 0"
@click="() => {
if (isGotoNextState() === false) return
delimgBoo = !delimgBoo;
}">
<img style="width: 0.85rem; height: 0.85rem; cursor: pointer"
src="../../assets/img/qbryk/del333.png" />
<span>删除</span>
</div>
<Confirmation
@onConfirm="del"
@cancel="cancel"
content="删除"
v-if="delimgBoo"
:hintBoo="true"
:disaledToolTipe="true"
>
<div slot="reference" class="delicon2">
<img
style="width: 0.85rem; height: 0.85rem; cursor: pointer"
src="../../assets/img/qbryk/delcolor.png"
/>
<span>删除</span>
</div>
</Confirmation>
</div>
<div class="autoPlay" ref="diyRoles">
<el-checkbox-group v-model="btnCheckList">
<div v-for="(item,index) in diyRoleList" :key="item.id" class="chooseItem">
<el-checkbox :label="item.id" class="checkChoose" v-if="delimgBoo">1</el-checkbox>
<div @click.stop="() => {}"
:class="{'diy-role-item': true,active: item.id === diyRoleItemIndex,delWidth: delimgBoo,}">
<div v-show="!item.edit"
class="diy-edit-title"
:title="item.value"
@click="chooseDiyRoleItem(item,index)">
{{ item.value }}
</div>
<el-input
v-if="item.edit"
size="mini"
class="diy-edit-title"
ref="edit_input"
:placeholder="item.name"
v-model="item.value" />
<div class="diy-edit-btn" v-if="isCanEditYhjs(index)">
<i class="iconfont icon-bianji"
v-if="!item.edit"
@click.stop="editDiyRoleItem(item)" />
<img class="img"
v-else
src="~@/assets/img/duigou.png"
@click.stop="editName(item)" />
</div>
</div>
</div>
</el-checkbox-group>
</div>
<span class="add-role-span"> 新增角色 </span>
</div>
<div class="img-btn" @click="copy2" title="复制并修改权限" @mouseenter="copybz = true" @mouseleave="copybz = false">
<img v-if="!copybz" src="../../assets/img/role/copy.png" />
<!-- copy_xuan -->
<img v-else src="../../assets/img/copy_xuan.png" />
</div>
</div>
<div class="default-role">
<div v-for="item in defaultRoleBtns" :key="item.id" class="roleItemBox">
<div @click.stop="copy(item.id)" @mouseenter="$set(item, 'enter', true)"
@mouseleave="$set(item, 'enter', false)">
<svg-icon icon-class="copy" v-show="fuzhi" class="copy2" v-if="item.enter" />
<svg-icon icon-class="copy_xuan" v-show="fuzhi" class="copy2" v-else />
</div>
<div class="default-role-item" :class="{ active: item.id === diyRoleItemIndex, fuzhi: fuzhi }"
@click="chooseDefaultRoleItem(item)">
{{ item.name }}
</div>
</div>
</div>
<div class="hr"></div>
<div class="diy-roles">
<span v-show="delimgBoo" class="cancleBtn" @click="cancel">取消</span>
<div class="delbtns" v-if="roleArr.includes('H-3-5')">
<div class="delicon" v-if="!delimgBoo && diyRoleList.length > 0" @click="() => {
if (isGotoNextState() === false) return
delimgBoo = !delimgBoo;
}">
<img style="width: 0.85rem; height: 0.85rem; cursor: pointer" src="../../assets/img/qbryk/del333.png" />
<span>删除</span>
</div>
<Confirmation @onConfirm="del" @cancel="cancel" content="删除" v-if="delimgBoo" :hintBoo="true"
:disaledToolTipe="true">
<div slot="reference" class="delicon2">
<img style="width: 0.85rem; height: 0.85rem; cursor: pointer" src="../../assets/img/qbryk/delcolor.png" />
<span>删除</span>
</div>
</Confirmation>
</div>
<div class="main" @click="resetEdit('screen')">
<div class="header">
<div class="btns">
<div class="btn" :class="{ active: funFlag }" @click="funAuth">
功能权限
</div>
<div class="btn" :class="{ active: dataFlag }" @click="dataAuth">
数据权限
</div>
<div class="autoPlay" ref="diyRoles">
<el-checkbox-group v-model="btnCheckList">
<div v-for="(item, index) in diyRoleList" :key="item.id" class="chooseItem">
<el-checkbox :label="item.id" class="checkChoose" v-if="delimgBoo">1</el-checkbox>
<div @click.stop="() => { }"
:class="{ 'diy-role-item': true, active: item.id === diyRoleItemIndex, delWidth: delimgBoo, }">
<div v-show="!item.edit" class="diy-edit-title" :title="item.value"
@click="chooseDiyRoleItem(item, index)">
{{ item.value }}
</div>
<div class="save">
<div class="btn" @click="save" :disabled="saveBtnState()">保存</div>
<el-input v-if="item.edit" size="mini" class="diy-edit-title" ref="edit_input" :placeholder="item.name"
v-model="item.value" />
<div class="diy-edit-btn" v-if="isCanEditYhjs(index)">
<i class="iconfont icon-bianji" v-if="!item.edit" @click.stop="editDiyRoleItem(item)" />
<img class="img" v-else src="~@/assets/img/duigou.png" @click.stop="editName(item)" />
</div>
</div>
</div>
<el-checkbox-group v-model="checkList" :disabled="menuDisableState()">
<div class="role-info">
<!-- 角色权限菜单列-->
<div class="menus">
<div class="div3">
<!-- <el-checkbox
</el-checkbox-group>
</div>
</div>
</div>
<div class="main" @click="resetEdit('screen')">
<div class="header">
<div class="btns">
<div class="btn" :class="{ active: funFlag }" @click="funAuth">
功能权限
</div>
<div class="btn" :class="{ active: dataFlag }" @click="dataAuth">
数据权限
</div>
</div>
<div class="save">
<div class="btn" @click="save" :disabled="saveBtnState()">保存</div>
</div>
</div>
<!-- 功能权限 -->
<el-checkbox-group v-model="checkList" :disabled="menuDisableState()">
<div class="role-info">
<!-- 角色权限菜单列-->
<div class="menus">
<div class="div3">
<!-- <el-checkbox
@change="
(val) => {
handleCheckAllChange(val, permissionDataList[0].id);
......@@ -148,108 +103,77 @@
>
{{ permissionDataList[0].name }}
</el-checkbox> -->
<el-checkbox
@change="
(val) => {
handleCheckAllChange(val, permissionDataList[0].id);
}
"
:label="permissionDataList[0].id"
v-if="permissionDataList[0]"
>
{{ permissionDataList[0].name }}
</el-checkbox>
<el-checkbox
@change="
(val) => {
handleCheckAllChange(val, permissionDataList[1].id);
}
"
:label="permissionDataList[1].id"
v-if="permissionDataList[1]"
>
{{ permissionDataList[1].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox
@change="
(val) => {
handleCheckAllChange(val, permissionDataList[2].id);
}
"
:label="permissionDataList[2].id"
v-if="permissionDataList[2]"
>
{{ permissionDataList[2].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox
@change="
(val) => {
handleCheckAllChange(val, permissionDataList[3].id);
}
"
:label="permissionDataList[3].id"
v-if="permissionDataList[3]"
>
{{ permissionDataList[3].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox
@change="
(val) => {
handleCheckAllChange(val, permissionDataList[4].id);
}
"
:label="permissionDataList[4].id"
v-if="permissionDataList[4]"
>
{{ permissionDataList[4].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox
@change="
(val) => {
handleCheckAllChange(val, permissionDataList[5].id);
}
"
:label="permissionDataList[5].id"
v-if="permissionDataList[5]"
>
{{ permissionDataList[5].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox
@change=" (val) => {
handleCheckAllChange(val, permissionDataList[6].id);
}"
:label="permissionDataList[6].id"
v-if="permissionDataList[6]">
{{ permissionDataList[6].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox
@change="
(val) => {
handleCheckAllChange(val, permissionDataList[7].id);
}
"
:label="permissionDataList[7].id"
v-if="permissionDataList[7]"
>
{{ permissionDataList[7].name }}
</el-checkbox>
</div>
</div>
<div class="content">
<div class="div3">
<!-- <div
<el-checkbox @change="
(val) => {
handleCheckAllChange(val, permissionDataList[0].id);
}
" :label="permissionDataList[0].id" v-if="permissionDataList[0]">
{{ permissionDataList[0].name }}
</el-checkbox>
<el-checkbox @change="
(val) => {
handleCheckAllChange(val, permissionDataList[1].id);
}
" :label="permissionDataList[1].id" v-if="permissionDataList[1]">
{{ permissionDataList[1].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox @change="
(val) => {
handleCheckAllChange(val, permissionDataList[2].id);
}
" :label="permissionDataList[2].id" v-if="permissionDataList[2]">
{{ permissionDataList[2].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox @change="
(val) => {
handleCheckAllChange(val, permissionDataList[3].id);
}
" :label="permissionDataList[3].id" v-if="permissionDataList[3]">
{{ permissionDataList[3].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox @change="
(val) => {
handleCheckAllChange(val, permissionDataList[4].id);
}
" :label="permissionDataList[4].id" v-if="permissionDataList[4]">
{{ permissionDataList[4].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox @change="
(val) => {
handleCheckAllChange(val, permissionDataList[5].id);
}
" :label="permissionDataList[5].id" v-if="permissionDataList[5]">
{{ permissionDataList[5].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox @change="(val) => {
handleCheckAllChange(val, permissionDataList[6].id);
}" :label="permissionDataList[6].id" v-if="permissionDataList[6]">
{{ permissionDataList[6].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox @change="
(val) => {
handleCheckAllChange(val, permissionDataList[7].id);
}
" :label="permissionDataList[7].id" v-if="permissionDataList[7]">
{{ permissionDataList[7].name }}
</el-checkbox>
</div>
</div>
<div class="content">
<div class="div3">
<!-- <div
class="line"
v-for="item in permissionDataList[0] &&
permissionDataList[0].children"
......@@ -258,94 +182,194 @@
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
<br /> -->
<div
class="line"
v-for="item in permissionDataList[0] &&
permissionDataList[0].children"
:key="item.id"
>
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
<br />
<div
:class="{ line: true, barLine: index == 1 }"
v-for="(item, index) in permissionDataList[1] &&
permissionDataList[1].children"
:key="item.id"
>
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div3">
<div
:class="{
line: true,
barLine: index == 4,
barInLine: index == 2,
w400: index == 8,
}"
v-for="(item, index) in permissionDataList[2] &&
permissionDataList[2].children"
:key="item.id"
>
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div2">
<div
class="line"
v-for="item in permissionDataList[3] &&
permissionDataList[3].children"
:key="item.id"
>
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div
class="line"
v-for="item in permissionDataList[4] &&
permissionDataList[4].children"
:key="item.id"
>
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div
class="line"
v-for="item in permissionDataList[5] &&
permissionDataList[5].children"
:key="item.id"
>
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div2">
<div
:class="{ line: true, w400: index == 3, w450: index == 4 }"
v-for="(item, index) in permissionDataList[6] &&
permissionDataList[6].children"
:key="item.id"
>
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div3">
<div
class="line"
v-for="item in permissionDataList[7] &&
permissionDataList[7].children"
:key="item.id"
>
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
</div>
</div>
</el-checkbox-group>
<div class="line" v-for="item in permissionDataList[0] &&
permissionDataList[0].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
<br />
<div :class="{ line: true, barLine: index == 1 }" v-for="(item, index) in permissionDataList[1] &&
permissionDataList[1].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div3">
<div :class="{
line: true,
barLine: index == 4,
barInLine: index == 2,
w400: index == 8,
}" v-for="(item, index) in permissionDataList[2] &&
permissionDataList[2].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div2">
<div class="line" v-for="item in permissionDataList[3] &&
permissionDataList[3].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div class="line" v-for="item in permissionDataList[4] &&
permissionDataList[4].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div class="line" v-for="item in permissionDataList[5] &&
permissionDataList[5].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div2">
<div :class="{ line: true, w400: index == 3, w450: index == 4 }" v-for="(item, index) in permissionDataList[6] &&
permissionDataList[6].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div3">
<div class="line" v-for="item in permissionDataList[7] &&
permissionDataList[7].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
</div>
</div>
</el-container>
</el-checkbox-group>
<!-- 数据权限 -->
<el-checkbox-group v-show="dataFlag" v-model="checkList" :disabled="menuDisableState()">
<div class="role-info">
<!-- 角色权限菜单列-->
<div class="menus">
<div class="div3">
<el-checkbox @change="
(val) => {
handleCheckAllChangeSj(val, dataPermissionList[0].id);
}
" :label="dataPermissionList[0].id" v-if="dataPermissionList[0]">
{{ dataPermissionList[0].name }}
</el-checkbox>
<el-checkbox @change="
(val) => {
handleCheckAllChangeSj(val, dataPermissionList[1].id);
}
" :label="dataPermissionList[1].id" v-if="dataPermissionList[1]">
{{ dataPermissionList[1].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox @change="
(val) => {
handleCheckAllChangeSj(val, dataPermissionList[2].id);
}
" :label="dataPermissionList[2].id" v-if="dataPermissionList[2]">
{{ dataPermissionList[2].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox @change="
(val) => {
handleCheckAllChangeSj(val, dataPermissionList[3].id);
}
" :label="dataPermissionList[3].id" v-if="dataPermissionList[3]">
{{ dataPermissionList[3].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox @change="
(val) => {
handleCheckAllChangeSj(val, dataPermissionList[4].id);
}
" :label="dataPermissionList[4].id" v-if="dataPermissionList[4]">
{{ dataPermissionList[4].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox @change="
(val) => {
handleCheckAllChangeSj(val, dataPermissionList[5].id);
}
" :label="dataPermissionList[5].id" v-if="dataPermissionList[5]">
{{ dataPermissionList[5].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox @change="(val) => {
handleCheckAllChangeSj(val, dataPermissionList[6].id);
}" :label="dataPermissionList[6].id" v-if="dataPermissionList[6]">
{{ dataPermissionList[6].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox @change="
(val) => {
handleCheckAllChangeSj(val, dataPermissionList[7].id);
}
" :label="dataPermissionList[7].id" v-if="dataPermissionList[7]">
{{ dataPermissionList[7].name }}
</el-checkbox>
</div>
</div>
<div class="content">
<div class="div3">
<div class="line" v-for="item in dataPermissionList[0] &&
dataPermissionList[0].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
<br />
<div :class="{ line: true, barLine: index == 1 }" v-for="(item, index) in dataPermissionList[1] &&
dataPermissionList[1].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div3">
<div :class="{
line: true,
barLine: index == 4,
barInLine: index == 2,
w400: index == 8,
}" v-for="(item, index) in dataPermissionList[2] &&
dataPermissionList[2].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div2">
<div class="line" v-for="item in dataPermissionList[3] &&
dataPermissionList[3].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div class="line" v-for="item in dataPermissionList[4] &&
dataPermissionList[4].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div class="line" v-for="item in dataPermissionList[5] &&
dataPermissionList[5].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div2">
<div :class="{ line: true, w400: index == 3, w450: index == 4 }" v-for="(item, index) in dataPermissionList[6] &&
dataPermissionList[6].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
<div class="div3">
<div class="line" v-for="item in dataPermissionList[7] &&
dataPermissionList[7].children" :key="item.id">
<el-checkbox :label="item.id"> {{ item.name }}</el-checkbox>
</div>
</div>
</div>
</div>
</el-checkbox-group>
</div>
</el-container>
</template>
<script>
......@@ -361,26 +385,26 @@ export default {
Confirmation,
},
watch: {
isAdding() {
isAdding () {
if (this.isAdding === true) {
this.fuzhi = false
this.delimgBoo = false
this.btnCheckList = []
}
},
fuzhi() {
fuzhi () {
if (this.fuzhi === true) {
this.delimgBoo = false
this.btnCheckList = []
}
},
delimgBoo() {
delimgBoo () {
if (this.delimgBoo === true) {
this.fuzhi = false
}
},
diyRoleItemIndex: {
handler(val, oldval) {
handler (val, oldval) {
this.oldCurrtId = oldval
let arr = [...this.diyRoleList, ...this.defaultRoleBtns]
let obj = arr.find((i) => i.id == val)
......@@ -389,12 +413,12 @@ export default {
},
btnType: {
immediate: true,
handler(val, oldval) {
handler (val, oldval) {
this.oldBtnType = oldval
},
},
},
data() {
data () {
return {
// 功能权限标志 数据权限标志
editurl: require('@/assets/img/edit.png'),
......@@ -447,7 +471,7 @@ export default {
* @author: li_hongchao
* @date: 2022/2/21 10:45
*/
menuDisableState() {
menuDisableState () {
if (this.isAdding === true) {
if (this.diyRoleList && this.diyRoleList.length > 0 && this.curDiyRoleIndex === this.diyRoleList.length - 1) {
return false
......@@ -469,7 +493,7 @@ export default {
* @author: li_hongchao
* @date: 2022/2/21 10:46
*/
saveBtnState() {
saveBtnState () {
if (this.isAdding === true) return false
if (this.btnType === 'custom') {
if (this.delimgBoo === true || this.fuzhi === true) return true
......@@ -478,7 +502,7 @@ export default {
return true
},
// 用于判断是不是新增的item
isCanEditYhjs(index) {
isCanEditYhjs (index) {
if (
(this.isAdding === true && index < this.diyRoleList.length - 1) || // 新增状态下,只有最后一个可以编辑
this.delimgBoo === true || // 删除状态下,不能编辑
......@@ -489,26 +513,29 @@ export default {
return true
},
// 检验当前状态
isGotoNextState() {
isGotoNextState () {
if (this.isAdding === true) {// 不可以进行其他操作
this.$message.warning('添加角色操作尚未完成,请先保存!')
return false
}
},
// 获取权限列表
getPermissionDataLists() {
getPermissionDataLists () {
this.$axios.get('/security/permissions').then((res) => {
if (res.data.code == 200 && res.data.detail.length > 0) {
let result = res.data.detail
if (res.data.code == 200) {
let result = res.data.detail.per
let result1 = res.data.detail.DataPer
var arr = []
var arr1 = []
arr = this.listToTree(result)
arr1 = this.listToTree(result1)
}
console.log(arr)
this.permissionDataList = arr
this.dataPermissionList = arr1
})
},
// 将同级数据转化为树形结构
listToTree(dataSource) {
listToTree (dataSource) {
// datasource是平级的数据来源
return dataSource.filter((e) => {
const pid = e.parentId
......@@ -524,17 +551,17 @@ export default {
return resultArr.length === 0
})
},
mouseenter(item) {
mouseenter (item) {
item.enter = true
//console.log(item);
},
//修改并复制权限单击出现图标,再点击后图标消失
copy2() {
copy2 () {
if (this.isGotoNextState() === false) return
this.fuzhi = !this.fuzhi
},
// 点击图标后复制操作
copy(id) {
copy (id) {
this.isAdding = true
let diyRoleItemIndex = id
//如果有没有保存的角色权限则先进行保存后复制
......@@ -581,7 +608,7 @@ export default {
//console.info(item);
},
// 保存
save() {
save () {
if (this.saveBtnState() === true) {
return
}
......@@ -661,7 +688,7 @@ export default {
}
},
//选中主的全选子的,取消主的取消全部子的
handleCheckAllChange(boo, id) {
handleCheckAllChange (boo, id) {
let obj = this.permissionDataList.find((i) => i.id == id)
let sonArr = obj.children.map((i) => i.id)
if (boo) {
......@@ -686,8 +713,46 @@ export default {
this.checkList = this.checkList.filter((x) => sonArr.indexOf(x) < 0)
}
},
//选中主的全选子的,取消主的取消全部子的
handleCheckAllChangeSj (boo, id) {
let obj = this.dataPermissionList.find((i) => i.id == id)
if (!obj.children) return
let sonArr = obj.children.map((i) => i.id)
if (boo) {
let childList = this.checkList.concat(sonArr)
if (id == 8) {
//一般管理
childList = this.getRoleIdsSj(7)
}
if (id == 9) {
//超级管理
childList = this.getRoleIdsSj(8)
}
if (id == 5) {
//综合认定
childList.push(4)
let obj = this.dataPermissionList.find((i) => i.id == 4)
let arr = obj.children.map((i) => i.id)
childList = childList.concat(arr)
}
this.checkList = Array.from(new Set(childList))
} else {
this.checkList = this.checkList.filter((x) => sonArr.indexOf(x) < 0)
}
},
//获取权限id集合
getRoleIds (index) {
let arr = []
this.permissionDataList.forEach((i, x) => {
if (x < index) {
arr.push(i.id)
arr = arr.concat(i.children.map((i) => i.id))
}
})
return arr
},
//获取权限id集合
getRoleIds(index) {
getRoleIdsSj (index) {
let arr = []
this.permissionDataList.forEach((i, x) => {
if (x < index) {
......@@ -698,9 +763,9 @@ export default {
return arr
},
// 获取角色列表 和 角色权限列表
search(ids, boo, loading) {
search (ids, boo, loading) {
this.$axios
.get('/security/roles', {loading: boo ? false : null})
.get('/security/roles', { loading: boo ? false : null })
.then((res) => {
if (loading) loading.close()
if (res.data.code == '200' && res.data.detail.length > 0) {
......@@ -748,7 +813,7 @@ export default {
})
},
// 删除
del() {
del () {
//删除前的一系列判断
if (this.btnCheckList.length <= 0) {
this.$message.error('请选择角色后操作')
......@@ -797,7 +862,7 @@ export default {
})
},
// 新增
add() {
add () {
if (this.customAddUser.length > 0) {
this.$message.warning('添加角色操作尚未完成,请先保存!')
return
......@@ -831,13 +896,13 @@ export default {
}, 20)
},
//查看用户组的信息
viewGroupItem(id) {
viewGroupItem (id) {
let arr = [...this.diyRoleList, ...this.defaultRoleBtns]
let obj = arr.find((i) => i.id == id)
return JSON.parse(JSON.stringify(obj))
},
//修改名
editName(item) {
editName (item) {
if (
this.customAddUser.length > 0 &&
item.id == this.customAddUser[0].id
......@@ -854,7 +919,7 @@ export default {
this.editUserRole(obj)
},
//修改角色权限并本地赋值
editUserRole(params) {
editUserRole (params) {
this.$axios({
method: 'put',
url: '/security/roles',
......@@ -882,23 +947,23 @@ export default {
})
},
// 编辑
edit() {
edit () {
//console.info("编辑数据");
},
// 选中默认权限
chooseDefaultRoleItem(item) {
chooseDefaultRoleItem (item) {
this.curDiyRoleIndex = -1
this.btnType = 'default'
this.viewSelect(item)
this.diyRoleItemIndex = item.id
},
// 选中的权限
viewSelect(item) {
viewSelect (item) {
this.checkList =
(item.permissions && item.permissions.map((i) => i.id)) || []
},
// 选中自定义某个权限
chooseDiyRoleItem(item, index) {
chooseDiyRoleItem (item, index) {
this.curDiyRoleIndex = index
this.btnType = 'custom'
if (item.id !== this.diyRoleItemIndex) {
......@@ -908,7 +973,7 @@ export default {
this.viewSelect(item)
},
// 编辑以后出现输入框的一系列细节
editDiyRoleItem(item) {
editDiyRoleItem (item) {
let edit = item.edit
let index = this.diyRoleList.findIndex((i) => i.id == item.id)
if (!edit && typeof edit != Boolean) edit = false
......@@ -931,7 +996,7 @@ export default {
this.$forceUpdate()
},
//重置编辑状态
resetEdit(type) {
resetEdit (type) {
if (type == 'screen') {
let length = this.diyRoleList.length
for (let index = 0; index < length; index++) {
......@@ -950,18 +1015,18 @@ export default {
*
* 下面两个暂时没什么用。可以删除
*/
funAuth() {
funAuth () {
this.funFlag = true
this.dataFlag = false
//console.info("功能权限");
},
dataAuth() {
// this.funFlag = false
// this.dataFlag = true
dataAuth () {
this.funFlag = false
this.dataFlag = true
//console.info("数据权限");
},
//取消删除后,将选择的角色全部取消选中并让选择框消失
cancel() {
cancel () {
this.delimgBoo = !this.delimgBoo
this.btnCheckList = []
},
......@@ -969,21 +1034,21 @@ export default {
* @description: 本页没有查询,阻止上一次的enter查询
* @return {*}
*/
onClickEnterKeyup () {},
onClickEnterKeyup () { },
},
created() {
created () {
this.search()
this.getPermissionDataLists()
},
activated() {
activated () {
this.$keyBoard(this, 'onClickEnterKeyup')
},
mounted() {
mounted () {
this.$keyBoard(this, 'onClickEnterKeyup')
this.funFlag = true
},
computed: {
roleArr() {
roleArr () {
return this.$store.state.layout.Menu
},
},
......@@ -991,256 +1056,257 @@ export default {
</script>
<style scoped lang="scss">
@import "scss/role";
@import "scss/role";
.manage-page /deep/ {
.sider {
.btns {
padding-top: 1px;
height: 56px;
.manage-page /deep/ {
.sider {
.btns {
padding-top: 1px;
height: 56px;
.img-btn {
margin-left: 16px;
.img-btn {
margin-left: 16px;
> img {
height: 16.04px;
width: 16.04px;
margin-left: 1.6px;
margin-top: 1.6px;
cursor: pointer;
}
}
}
.add {
&:hover {
.el-icon-plus {
color: #055fe7;
}
.add-role-span {
font-size: 14px;
font-family: HarmonyOS_Sans_SC;
color: #055fe7;
}
}
}
>img {
height: 16.04px;
width: 16.04px;
margin-left: 1.6px;
margin-top: 1.6px;
cursor: pointer;
}
}
}
.diy-roles {
.cancleBtn {
z-index: 99;
font-size: 0.625rem;
color: #055fe7;
position: absolute;
top: 14px;
left: 2px;
}
.add {
&:hover {
.el-icon-plus {
color: #055fe7;
}
.delbtns {
padding-right: 1.75rem;
.add-role-span {
font-size: 14px;
font-family: HarmonyOS_Sans_SC;
color: #055fe7;
}
}
}
.delicon {
padding-right: 1.25rem;
}
}
.diy-roles {
.cancleBtn {
z-index: 99;
font-size: 0.625rem;
color: #055fe7;
position: absolute;
top: 14px;
left: 2px;
}
.autoPlay {
.el-checkbox-group {
width: 100%;
.delbtns {
padding-right: 1.75rem;
.chooseItem {
.diy-role-item {
.el-input__inner {
border: none;
text-align: center;
}
.delicon {
padding-right: 1.25rem;
}
}
.diy-edit-btn {
box-shadow: -1px 1px 5px #aeb5c2;
.autoPlay {
.el-checkbox-group {
width: 100%;
.img {
margin-left: 8px;
}
}
}
}
}
.chooseItem {
.diy-role-item {
.el-input__inner {
border: none;
text-align: center;
}
&::-webkit-scrollbar {
width: 1px; // 横向滚动条
height: 3px; // 纵向滚动条 必写
}
.diy-edit-btn {
box-shadow: -1px 1px 5px #aeb5c2;
/* 滚动条滑块 */
&::-webkit-scrollbar-thumb {
background-color: #dadde0;
border-radius: 3px;
}
.img {
margin-left: 8px;
}
}
}
}
}
}
#confrim {
position: absolute;
cursor: pointer;
right: 15px;
top: -2px;
}
.delicon {
font-size: 10px;
display: flex !important;
align-items: center;
cursor: pointer;
position: absolute;
right: 0;
padding-right: 10px;
&::-webkit-scrollbar {
width: 1px; // 横向滚动条
height: 3px; // 纵向滚动条 必写
}
> img {
margin-right: 5px;
/* 滚动条滑块 */
&::-webkit-scrollbar-thumb {
background-color: #dadde0;
border-radius: 3px;
}
}
}
}
}
.delicon2 {
font-size: 10px;
display: flex !important;
align-items: center;
cursor: pointer;
padding-right: 5px;
color: #055fe7;
#confrim {
position: absolute;
cursor: pointer;
right: 15px;
top: -2px;
}
> img {
margin-right: 5px;
}
}
.delicon {
font-size: 10px;
display: flex !important;
align-items: center;
cursor: pointer;
position: absolute;
right: 0;
padding-right: 10px;
.delbtns {
position: absolute;
top: 4px;
left: 0;
height: 21px;
width: 100%;
text-align: right;
padding-right: 5px;
margin-top: 10px;
color: #333333 !important;
}
>img {
margin-right: 5px;
}
}
.diy-roles {
position: relative;
padding-top: 25px;
padding-left: 0 !important;
overflow: hidden !important;
display: flex !important;
justify-content: space-between;
flex-flow: column nowrap;
}
.delicon2 {
font-size: 10px;
display: flex !important;
align-items: center;
cursor: pointer;
padding-right: 5px;
color: #055fe7;
.autoPlay {
height: calc(100% - 40px);
margin-top: 10px;
padding-right: 15px;
padding-left: 20px;
overflow: auto;
background: #30fd5301;
>img {
margin-right: 5px;
}
}
&::-webkit-scrollbar {
width: 10px; /*高宽分别对应横竖滚动条的尺寸*/
height: 10px;
}
.delbtns {
position: absolute;
top: 4px;
left: 0;
height: 21px;
width: 100%;
text-align: right;
padding-right: 5px;
margin-top: 10px;
color: #333333 !important;
}
&::-webkit-scrollbar-thumb {
background: rgba(0, 0, 0, 0.2);
}
.diy-roles {
position: relative;
padding-top: 25px;
padding-left: 0 !important;
overflow: hidden !important;
display: flex !important;
justify-content: space-between;
flex-flow: column nowrap;
}
&::-webkit-scrollbar-track {
background: #f5f5f5;
}
}
.autoPlay {
height: calc(100% - 40px);
margin-top: 10px;
padding-right: 15px;
padding-left: 20px;
overflow: auto;
background: #30fd5301;
.chooseItem {
position: relative;
width: 100%;
}
&::-webkit-scrollbar {
width: 10px;
/*高宽分别对应横竖滚动条的尺寸*/
height: 10px;
}
.checkChoose {
position: absolute;
left: -20px;
top: 50%;
transform: translateY(-30%);
&::-webkit-scrollbar-thumb {
background: rgba(0, 0, 0, 0.2);
}
/deep/ .el-checkbox__label {
display: none;
}
}
&::-webkit-scrollbar-track {
background: #f5f5f5;
}
}
.delWidth {
width: 170px !important;
}
.chooseItem {
position: relative;
width: 100%;
}
.roleItemBox {
display: flex !important;
justify-content: flex-start;
align-items: center;
.checkChoose {
position: absolute;
left: -20px;
top: 50%;
transform: translateY(-30%);
.default-role-item {
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
box-sizing: border-box;
padding: 0 10px;
}
}
/deep/ .el-checkbox__label {
display: none;
}
}
.fzSelect {
width: 14px;
height: 14px;
background-color: red;
margin-right: 6px;
}
.delWidth {
width: 170px !important;
}
.fzSelect2 {
position: absolute;
left: -20px;
top: 50%;
width: 14px;
height: 14px;
transform: translateY(-30%);
background-color: red;
}
.roleItemBox {
display: flex !important;
justify-content: flex-start;
align-items: center;
.fuzhi {
width: 170px !important;
}
.default-role-item {
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
box-sizing: border-box;
padding: 0 10px;
}
}
.copy2 {
width: 16px;
height: 16px;
margin-right: 5px;
transform: translateY(5px);
cursor: pointer;
.fzSelect {
width: 14px;
height: 14px;
background-color: red;
margin-right: 6px;
}
use {
fill: red;
}
}
.fzSelect2 {
position: absolute;
left: -20px;
top: 50%;
width: 14px;
height: 14px;
transform: translateY(-30%);
background-color: red;
}
.el-checkbox /deep/ {
.is-checked {
.el-checkbox__inner {
background-color: #055fe7 !important;
border-color: #055fe7 !important;
}
}
.fuzhi {
width: 170px !important;
}
.copy2 {
width: 16px;
height: 16px;
margin-right: 5px;
transform: translateY(5px);
cursor: pointer;
use {
fill: red;
}
}
.el-checkbox /deep/ {
.is-checked {
.el-checkbox__inner {
background-color: #055fe7 !important;
border-color: #055fe7 !important;
}
}
}
</style>
<style scoped lang="scss">
/deep/ .el-table .el-table__body tr.current-row > td {
background-color: transparent !important;
}
/deep/ .el-table .el-table__body tr.current-row>td {
background-color: transparent !important;
}
/deep/ .el-table .el-table__body tr:hover > td {
background-color: transparent !important;
}
/deep/ .el-table .el-table__body tr:hover>td {
background-color: transparent !important;
}
</style>
<template>
<el-container class="manage-page" direction="vertical">
<!-- 0停用 1启用-->
<div
class="header"
:class="{
<div class="header" :class="{
down: status === '0',
up: status === '1' || status === '2',
danlu: status === '3',
}">
<div class="title" :class="{
down: status === '0',
up: status === '1' || status === '2',
danlu: status === '3',
}"
>
<div
class="title"
:class="{
down: status === '0',
up: status === '1' || status === '2',
green: status === '3',
}"
>
<div
:class="{
'title-status': true,
textRed: status == '0',
textBlue: status == '1' || status == '2',
textGreen: status == '3',
}"
>
green: status === '3',
}">
<div :class="{
'title-status': true,
textRed: status == '0',
textBlue: status == '1' || status == '2',
textGreen: status == '3',
}">
<div v-if="status === '0'" class="circle-red"></div>
<div
v-if="status === '1' || status === '2'"
class="circle-blue"
></div>
<div v-if="status === '1' || status === '2'" class="circle-blue"></div>
<div v-if="status === '3'" class="circle-green"></div>
{{ status === "0" ? "停用" : "启用" }}
</div>
......@@ -100,33 +89,13 @@
<p>权限说明</p>
<span></span>
</div>
<el-checkbox v-model="checked" disabled class="huise1"
>角色权限</el-checkbox
>
<el-checkbox v-model="checked" disabled class="danhuang1"
>用户组权限</el-checkbox
>
<el-checkbox v-model="checked" disabled class="wu1"
>用户权限</el-checkbox
>
<el-checkbox
v-model="checked"
disabled
class="lei2 huise1 danhuang2"
>角色+用户组</el-checkbox
>
<el-checkbox v-model="checked" disabled class="lei2 huise1 wu2"
>角色+用户</el-checkbox
>
<el-checkbox v-model="checked" disabled class="lei2 wu2 danhuang1"
>用户组+用户</el-checkbox
>
<el-checkbox
v-model="checked"
disabled
class="huise1 lei3 lei2 wu3 danhuang2"
>角色+用户组+用户</el-checkbox
>
<el-checkbox v-model="checked" disabled class="huise1">角色权限</el-checkbox>
<el-checkbox v-model="checked" disabled class="danhuang1">用户组权限</el-checkbox>
<el-checkbox v-model="checked" disabled class="wu1">用户权限</el-checkbox>
<el-checkbox v-model="checked" disabled class="lei2 huise1 danhuang2">角色+用户组</el-checkbox>
<el-checkbox v-model="checked" disabled class="lei2 huise1 wu2">角色+用户</el-checkbox>
<el-checkbox v-model="checked" disabled class="lei2 wu2 danhuang1">用户组+用户</el-checkbox>
<el-checkbox v-model="checked" disabled class="huise1 lei3 lei2 wu3 danhuang2">角色+用户组+用户</el-checkbox>
</div>
<div class="save">
<div @click="redact" class="editText" v-if="editBoo">
......@@ -143,266 +112,327 @@
</div>
</div>
</div>
<!-- 功能权限 -->
<el-checkbox-group v-model="checkList" :disabled="disabled">
<div class="role-info">
<!-- 角色权限菜单列-->
<div class="menus">
<div :class="{ div3: true }">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[0].id);
}
"
:class="getClass(permissionDataList[0].id).class"
:disabled="getClass(permissionDataList[0].id).disable"
v-if="permissionDataList[0]"
:label="permissionDataList[0].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[0].id);
}
" :class="getClass(permissionDataList[0].id).class"
:disabled="getClass(permissionDataList[0].id).disable" v-if="permissionDataList[0]"
:label="permissionDataList[0].id">
{{ permissionDataList[0].name }}
</el-checkbox>
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[1].id);
}
"
:class="getClass(permissionDataList[1].id).class"
:disabled="getClass(permissionDataList[1].id).disable"
v-if="permissionDataList[1]"
:label="permissionDataList[1].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[1].id);
}
" :class="getClass(permissionDataList[1].id).class"
:disabled="getClass(permissionDataList[1].id).disable" v-if="permissionDataList[1]"
:label="permissionDataList[1].id">
{{ permissionDataList[1].name }}
</el-checkbox>
</div>
<div :class="{ div3: true }">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[2].id);
}
"
:class="getClass(permissionDataList[2].id).class"
:disabled="getClass(permissionDataList[2].id).disable"
v-if="permissionDataList[2]"
:label="permissionDataList[2].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[2].id);
}
" :class="getClass(permissionDataList[2].id).class"
:disabled="getClass(permissionDataList[2].id).disable" v-if="permissionDataList[2]"
:label="permissionDataList[2].id">
{{ permissionDataList[2].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[3].id);
}
"
:class="getClass(permissionDataList[3].id).class"
:disabled="getClass(permissionDataList[3].id).disable"
v-if="permissionDataList[3]"
:label="permissionDataList[3].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[3].id);
}
" :class="getClass(permissionDataList[3].id).class"
:disabled="getClass(permissionDataList[3].id).disable" v-if="permissionDataList[3]"
:label="permissionDataList[3].id">
{{ permissionDataList[3].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[4].id);
}
"
:class="getClass(permissionDataList[4].id).class"
:disabled="getClass(permissionDataList[4].id).disable"
v-if="permissionDataList[4]"
:label="permissionDataList[4].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[4].id);
}
" :class="getClass(permissionDataList[4].id).class"
:disabled="getClass(permissionDataList[4].id).disable" v-if="permissionDataList[4]"
:label="permissionDataList[4].id">
{{ permissionDataList[4].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[5].id);
}
"
:class="getClass(permissionDataList[5].id).class"
:disabled="getClass(permissionDataList[5].id).disable"
v-if="permissionDataList[5]"
:label="permissionDataList[5].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[5].id);
}
" :class="getClass(permissionDataList[5].id).class"
:disabled="getClass(permissionDataList[5].id).disable" v-if="permissionDataList[5]"
:label="permissionDataList[5].id">
{{ permissionDataList[5].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[6].id);
}
"
:class="getClass(permissionDataList[6].id).class"
:disabled="getClass(permissionDataList[6].id).disable"
v-if="permissionDataList[6]"
:label="permissionDataList[6].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[6].id);
}
" :class="getClass(permissionDataList[6].id).class"
:disabled="getClass(permissionDataList[6].id).disable" v-if="permissionDataList[6]"
:label="permissionDataList[6].id">
{{ permissionDataList[6].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox
@change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[7].id);
}
"
:class="getClass(permissionDataList[7].id).class"
:disabled="getClass(permissionDataList[7].id).disable"
v-if="permissionDataList[7]"
:label="permissionDataList[7].id"
>
<el-checkbox @change="
(boo) => {
handleCheckAllChange(boo, permissionDataList[7].id);
}
" :class="getClass(permissionDataList[7].id).class"
:disabled="getClass(permissionDataList[7].id).disable" v-if="permissionDataList[7]"
:label="permissionDataList[7].id">
{{ permissionDataList[7].name }}
</el-checkbox>
</div>
</div>
<div class="content">
<div :class="{ div3: true }">
<div
class="line"
v-for="item in permissionDataList[0] &&
permissionDataList[0].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[0] &&
permissionDataList[0].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
<br />
<div
:class="{ line: true, barLine: index == 1 }"
v-for="(item, index) in permissionDataList[1] &&
permissionDataList[1].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div :class="{ line: true, barLine: index == 1 }" v-for="(item, index) in permissionDataList[1] &&
permissionDataList[1].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div :class="{ div3: true }">
<div
:class="{
line: true,
barLine: index == 4,
barInLine: index == 2,
w600: index == 8,
}"
v-for="(item, index) in permissionDataList[2] &&
permissionDataList[2].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div :class="{
line: true,
barLine: index == 4,
barInLine: index == 2,
w600: index == 8,
}" v-for="(item, index) in permissionDataList[2] &&
permissionDataList[2].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div
class="line"
v-for="item in permissionDataList[3] &&
permissionDataList[3].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[3] &&
permissionDataList[3].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div
class="line"
v-for="item in permissionDataList[4] &&
permissionDataList[4].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[4] &&
permissionDataList[4].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div1">
<div
class="line"
v-for="item in permissionDataList[5] &&
permissionDataList[5].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[5] &&
permissionDataList[5].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div2">
<div
:class="{ line: true, w400: index == 3, w440: index == 4 }"
v-for="(item, index) in permissionDataList[6] &&
permissionDataList[6].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div :class="{ line: true, w400: index == 3, w440: index == 4 }" v-for="(item, index) in permissionDataList[6] &&
permissionDataList[6].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<div class="div3">
<div
class="line"
v-for="item in permissionDataList[7] &&
permissionDataList[7].children"
:key="item.code"
>
<el-checkbox
:label="item.id"
:class="getClass(item.id).class"
:disabled="getClass(item.id).disable"
>
{{ item.name }}</el-checkbox
>
<div class="line" v-for="item in permissionDataList[7] &&
permissionDataList[7].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}</el-checkbox>
</div>
</div>
<!-- <div class="line" v-for="item in " :key="item.code"></div>-->
</div>
</div>
</el-checkbox-group>
<!-- 数据权限 -->
<el-checkbox-group v-show="dataFlag" v-model="checkList" :disabled="disabled">
<div class="role-info">
<!-- 角色权限菜单列-->
<div class="menus">
<div :class="{ div3: true }">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[0].id);
}
" :class="getClass(dataPermissionList[0].id).class"
:disabled="getClass(dataPermissionList[0].id).disable" v-if="dataPermissionList[0]"
:label="dataPermissionList[0].id">
{{ dataPermissionList[0].name }}
</el-checkbox>
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[1].id);
}
" :class="getClass(dataPermissionList[1].id).class"
:disabled="getClass(dataPermissionList[1].id).disable" v-if="dataPermissionList[1]"
:label="dataPermissionList[1].id">
{{ dataPermissionList[1].name }}
</el-checkbox>
</div>
<div :class="{ div3: true }">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[2].id);
}
" :class="getClass(dataPermissionList[2].id).class"
:disabled="getClass(dataPermissionList[2].id).disable" v-if="dataPermissionList[2]"
:label="dataPermissionList[2].id">
{{ dataPermissionList[2].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[3].id);
}
" :class="getClass(dataPermissionList[3].id).class"
:disabled="getClass(dataPermissionList[3].id).disable" v-if="dataPermissionList[3]"
:label="dataPermissionList[3].id">
{{ dataPermissionList[3].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[4].id);
}
" :class="getClass(dataPermissionList[4].id).class"
:disabled="getClass(dataPermissionList[4].id).disable" v-if="dataPermissionList[4]"
:label="dataPermissionList[4].id">
{{ dataPermissionList[4].name }}
</el-checkbox>
</div>
<div class="div1">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[5].id);
}
" :class="getClass(dataPermissionList[5].id).class"
:disabled="getClass(dataPermissionList[5].id).disable" v-if="dataPermissionList[5]"
:label="dataPermissionList[5].id">
{{ dataPermissionList[5].name }}
</el-checkbox>
</div>
<div class="div2">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[6].id);
}
" :class="getClass(dataPermissionList[6].id).class"
:disabled="getClass(dataPermissionList[6].id).disable" v-if="dataPermissionList[6]"
:label="dataPermissionList[6].id">
{{ dataPermissionList[6].name }}
</el-checkbox>
</div>
<div class="div3">
<el-checkbox @change="
(boo) => {
handleCheckAllChangeSj(boo, dataPermissionList[7].id);
}
" :class="getClass(dataPermissionList[7].id).class"
:disabled="getClass(dataPermissionList[7].id).disable" v-if="dataPermissionList[7]"
:label="dataPermissionList[7].id">
{{ dataPermissionList[7].name }}
</el-checkbox>
</div>
</div>
<div class="content">
<div :class="{ div3: true }">
<div class="line" v-for="item in dataPermissionList[0] &&
dataPermissionList[0].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
<br />
<div :class="{ line: true, barLine: index == 1 }" v-for="(item, index) in dataPermissionList[1] &&
dataPermissionList[1].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div :class="{ div3: true }">
<div :class="{
line: true,
barLine: index == 4,
barInLine: index == 2,
w600: index == 8,
}" v-for="(item, index) in dataPermissionList[2] &&
dataPermissionList[2].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div2">
<div class="line" v-for="item in dataPermissionList[3] &&
dataPermissionList[3].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div1">
<div class="line" v-for="item in dataPermissionList[4] &&
dataPermissionList[4].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div1">
<div class="line" v-for="item in dataPermissionList[5] &&
dataPermissionList[5].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div2">
<div :class="{ line: true, w400: index == 3, w440: index == 4 }" v-for="(item, index) in dataPermissionList[6] &&
dataPermissionList[6].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
<div class="div3">
<div class="line" v-for="item in dataPermissionList[7] &&
dataPermissionList[7].children" :key="item.code">
<el-checkbox :label="item.id" :class="getClass(item.id).class" :disabled="getClass(item.id).disable">
{{ item.name }}
</el-checkbox>
</div>
</div>
</div>
</div>
</el-checkbox-group>
</div>
</el-container>
</template>
......@@ -410,7 +440,7 @@
<script>
export default {
// name: "UserPermission",
data() {
data () {
return {
id: "",
rolename: "",
......@@ -448,21 +478,21 @@ export default {
};
},
methods: {
funAuth() {
funAuth () {
this.funFlag = true;
this.dataFlag = false;
//console.info("功能权限");
},
dataAuth() {
dataAuth () {
this.funFlag = false;
this.dataFlag = true;
//console.info("数据权限");
},
redact() {
redact () {
this.isSave = false;
},
// 保存
save() {
save () {
this.editBoo = true;
if (this.isSave) {
return;
......@@ -505,7 +535,7 @@ export default {
}
});
},
personInfor() {
personInfor () {
let self = this;
this.$axios
.get("/security/users/" + this.userID)
......@@ -549,7 +579,7 @@ export default {
});
},
//这个方法是通过通过
getClass(id) {
getClass (id) {
let self = this;
//获取自己构造的数据
let arr = self.controlCheckMap() || [];
......@@ -588,7 +618,7 @@ export default {
return newObj;
},
//点击主的次的全部勾选,三个特例已经说明清楚
handleCheckAllChange(boo, id) {
handleCheckAllChange (boo, id) {
let obj = this.permissionDataList.find((i) => i.id == id);
let sonArr = obj.children.map((i) => i.id);
if (boo) {
......@@ -613,8 +643,35 @@ export default {
this.checkList = this.checkList.filter((x) => sonArr.indexOf(x) < 0);
}
},
//点击主的次的全部勾选,三个特例已经说明清楚 数据
handleCheckAllChangeSj (boo, id) {
let obj = this.dataPermissionList.find((i) => i.id == id)
if (!obj.children) return
let sonArr = obj.children.map((i) => i.id)
if (boo) {
let childList = this.checkList.concat(sonArr)
if (id == 8) {
//一般管理
childList = this.getRoleIdsSj(7)
}
if (id == 9) {
//超级管理
childList = this.getRoleIdsSj(8)
}
if (id == 5) {
//综合认定
childList.push(4)
let obj = this.dataPermissionList.find((i) => i.id == 4)
let arr = obj.children.map((i) => i.id)
childList = childList.concat(arr)
}
this.checkList = Array.from(new Set(childList))
} else {
this.checkList = this.checkList.filter((x) => sonArr.indexOf(x) < 0)
}
},
//获取权限id集合
getRoleIds(index) {
getRoleIds (index) {
let arr = [];
this.permissionDataList.forEach((i, x) => {
if (x < index) {
......@@ -625,7 +682,7 @@ export default {
return arr;
},
//根据三种权限的分布构造数据,用户组淡黄、角色灰色、用户蓝色(wu)
controlCheckMap() {
controlCheckMap () {
let self = this;
// self.rolePermissions; //角色
// self.userGroupPermissions; //用户组
......@@ -656,7 +713,7 @@ export default {
return contArr;
},
//ES5原生去重办法
Es5duplicate(arr, type) {
Es5duplicate (arr, type) {
var newArr = [];
var tArr = [];
if (arr.length == 0) {
......@@ -683,18 +740,22 @@ export default {
},
// 获取权限列表
getPermissionDataLists() {
getPermissionDataLists () {
this.$axios.get("/security/permissions").then((res) => {
if (res.data.code == 200 && res.data.detail.length > 0) {
let result = res.data.detail;
var arr = [];
arr = this.listToTree(result);
if (res.data.code == 200) {
let result = res.data.detail.per
let result1 = res.data.detail.DataPer
var arr = []
var arr1 = []
arr = this.listToTree(result)
arr1 = this.listToTree(result1)
}
this.permissionDataList = arr;
this.permissionDataList = arr
this.dataPermissionList = arr1
});
},
// 将同级数据转化为树形结构
listToTree(dataSource) {
listToTree (dataSource) {
// datasource是平级的数据来源
return dataSource.filter((e) => {
const pid = e.parentId;
......@@ -711,7 +772,7 @@ export default {
});
},
},
mounted() {
mounted () {
// this.funFlag = true;
// this.id = this.$route.params.id;
// this.rolename = this.$route.params.rolename;
......@@ -731,7 +792,7 @@ export default {
// .catch((failResponse) => {});
// //console.info("chuancan", this.$route.params.id);
},
created() {
created () {
this.userID = sessionStorage.getItem("UserPermission");
//人员详情
this.personInfor();
......@@ -740,7 +801,7 @@ export default {
//权限页面返现
this.getPermissionDataLists();
},
activated() {
activated () {
let path = this.$route.path;
let userId = sessionStorage.getItem("UserPermission");
this.$router.push({
......@@ -760,26 +821,31 @@ export default {
color: #666666 !important;
}
}
.editText {
margin-right: 20px;
color: #006aff;
cursor: pointer;
> i {
>i {
cursor: pointer;
}
span {
cursor: pointer;
}
}
.header {
.info{
.info {
.info-item {
.info-title{
color: #333!important;
.info-title {
color: #333 !important;
}
}
}
}
@import "scss/userpermission.scss";
.manage-page .line {
......
<template>
<el-container
class="confirm-page"
direction="vertical"
>
<el-container class="confirm-page" direction="vertical">
<div class="confirm_header_search">
<div
class="width100 margin_top24_bottom24"
style="display: flex; align-items: center; position: relative"
>
<div class="width100 margin_top24_bottom24" style="display: flex; align-items: center; position: relative">
<div class="display_style">
<span class="labelFont">条码号:</span>
<el-input
maxlength="23"
show-word-limit
clearable
class="el_input tmh"
v-model="reqParam.contrastCustomSearchReq.barcode"
placeholder="请输入条码号"
></el-input>
<el-input maxlength="23" show-word-limit clearable class="el_input tmh"
v-model="reqParam.contrastCustomSearchReq.barcode" placeholder="请输入条码号"></el-input>
</div>
<div class="display_style">
<span class="labelFont">用户名:</span>
<el-select
filterable
class="el_select"
v-model="reqParam.contrastCustomSearchReq.userid"
@change="selectUserInfo"
clearable
@clear="clearUser"
>
<el-option
v-for="(item, index) in userOption"
:key="index"
:label="item.label"
:value="item.userid"
>
<el-select filterable class="el_select" v-model="reqParam.contrastCustomSearchReq.userid"
@change="selectUserInfo" clearable @clear="clearUser">
<el-option v-for="(item, index) in userOption" :key="index" :label="item.label" :value="item.userid">
</el-option>
</el-select>
</div>
<div class="display_style">
<span class="labelFont">查询ID:</span>
<el-input
class="el_input"
placeholder="请输入查询ID"
v-model="reqParam.contrastCustomSearchReq.qqid"
clearable
></el-input>
<el-input class="el_input" placeholder="请输入查询ID" v-model="reqParam.contrastCustomSearchReq.qqid" clearable>
</el-input>
</div>
<div class="display_style">
<span class="labelFont">任务号:</span>
<el-input
class="el_input"
placeholder="请输入任务号"
v-model="reqParam.contrastCustomSearchReq.qid"
clearable
></el-input>
<el-input class="el_input" placeholder="请输入任务号" v-model="reqParam.contrastCustomSearchReq.qid" clearable>
</el-input>
</div>
<div
class="display_style send_time"
style="display: flex; align-items: center"
>
<div class="display_style send_time" style="display: flex; align-items: center">
<span class="labelFont">发送时间:</span>
<el-date-picker
v-model="startEndDate"
style="display: flex; align-items: center"
class="el_data_picker"
type="daterange"
range-separator="-"
start-placeholder="开始时间"
end-placeholder="结束时间"
:picker-options="{
<el-date-picker v-model="startEndDate" style="display: flex; align-items: center" class="el_data_picker"
type="daterange" range-separator="-" start-placeholder="开始时间" end-placeholder="结束时间" :picker-options="{
disabledDate: disabledDate,
}"
>
}">
</el-date-picker>
</div>
<div class="pRight">
<div
class="clear_btn"
@click="clearParams('yes')"
>
<div class="clear_btn" @click="clearParams('yes')">
清空
</div>
<el-button
type="primary"
class="f-primary-button"
@click="search"
>筛选
<el-button type="primary" class="f-primary-button" @click="search">筛选
</el-button>
</div>
</div>
<div class="width100 margin_top24_bottom24 display_style">
<div class="display_style prevent">
<label class="btnLabel">查询类型:</label>
<div
v-for="(btn, index) in queryTypeBtns"
:key="index"
>
<div v-for="(btn, index) in queryTypeBtns" :key="index">
<!-- <div-->
<!-- class="btn"-->
<!-- @click="getQueryType(btn, 'querytypes')"-->
......@@ -108,21 +56,17 @@
<!-- : ''-->
<!-- ]"-->
<!-- >-->
<div
class="btn1"
@click="getQueryType(btn, 'querytypes')"
:class="[
btn.value === '2'
? 'btn-active-zc'
: btn.value === '3'
<div class="btn1" @click="getQueryType(btn, 'querytypes')" :class="[
btn.value === '2'
? 'btn-active-zc'
: btn.value === '3'
? 'btn-active-ca'
: btn.value === '1'
? 'btn-active-dc'
: btn.value === '0'
? 'btn-active-cc'
: '',
]"
>
? 'btn-active-dc'
: btn.value === '0'
? 'btn-active-cc'
: '',
]">
{{ btn.name }}
</div>
</div>
......@@ -130,19 +74,12 @@
<p class="shu"></p>
<div class="display_style prevent">
<label class="btnLabel">优先级:</label>
<div
v-for="(btn, index) in queryClassBtns"
:key="index"
>
<div
class="btn"
@click="getQueryType(btn, 'queryclasss')"
:class="[
reqParam.contrastCustomSearchReq.queryclasss.includes(btn.value)
? 'btn-active'
: '',
]"
>
<div v-for="(btn, index) in queryClassBtns" :key="index">
<div class="btn" @click="getQueryType(btn, 'queryclasss')" :class="[
reqParam.contrastCustomSearchReq.queryclasss.includes(btn.value)
? 'btn-active'
: '',
]">
{{ btn.name }}
</div>
</div>
......@@ -177,24 +114,14 @@
<div class="width100 margin_top24_bottom24 display_style">
<label class="width70 btnLabel">状态选择:</label>
<!-- -1:无效;0:等待比对;1:正在比对;9:比对出错;10:比对完成(等待认定);11:正在认定;19:认定出错;20:认定完成(等待复核);21:正在复核;29:复核出错;30;复合完成;99:标记删除-->
<div
class="btn"
@click="allQueryType()"
>全部
<div class="btn" @click="allQueryType()">全部
</div>
<div
v-for="(btn, index) in queryStateBtns"
:key="index"
>
<div
class="btn"
@click="getQueryType(btn, 'querystates')"
:class="[
reqParam.contrastCustomSearchReq.querystates.includes(btn.value)
? 'btn-active'
: '',
]"
>
<div v-for="(btn, index) in queryStateBtns" :key="index">
<div class="btn" @click="getQueryType(btn, 'querystates')" :class="[
reqParam.contrastCustomSearchReq.querystates.includes(btn.value)
? 'btn-active'
: '',
]">
{{ btn.name }}
</div>
</div>
......@@ -203,25 +130,19 @@
<div class="confirm_main">
<div class="confirm_main_search margin0 width100">
<div class="display_style style-one">
<el-button
type="info"
@click="batch"
>批量操作
<el-button type="info" @click="batch">批量操作
</el-button>
<div class="middle style-middle">
<div class="zkzj" v-if="roleArr.includes('C-1-10')">
<el-checkbox v-model="zkzjChecked">{{ $t('Common.zkzj') }}</el-checkbox>
</div>
<!-- <div class="font" @click="clearAll()">
<span>全部数据</span>
<i class="iconfont icon-xiala"></i>
</div> -->
<div class="el-tag-box">
<el-tag
style="margin-right: 10px"
:key="index"
v-for="(tag, index) in dynamicTags"
closable
:disable-transitions="false"
@close="handleClose(tag)"
>
<el-tag style="margin-right: 10px" :key="index" v-for="(tag, index) in dynamicTags" closable
:disable-transitions="false" @close="handleClose(tag)">
{{ tag.name }}
</el-tag>
</div>
......@@ -229,25 +150,12 @@
</div>
<div class="display_style confirm_main_button">
<div>
<el-select
v-model="refreshTime"
placeholder="请选择"
class="refresh-time"
@change="refreshChange"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
>
<el-select v-model="refreshTime" placeholder="请选择" class="refresh-time" @change="refreshChange">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</div>
<div
class="rgrd"
@click="$refs.recognitionDialog.open()"
>
<div class="rgrd" @click="$refs.recognitionDialog.open()">
<!-- <img src="@/assets/img/person1.png" alt="" /> -->
<i class="iconfont icon-rengongrending"></i>
<span>人工认定</span>
......@@ -256,19 +164,9 @@
<div class="margin0">
<el-dropdown trigger="click">
<el-button type="info">自定义列</el-button>
<el-dropdown-menu
slot="dropdown"
class="el-dropdown-content-bg"
>
<el-checkbox-group
v-model="checkedProps"
@change="changeCheckbox"
>
<el-checkbox
v-for="(item, index) in defaultTableProps"
:label="item.prop"
:key="index"
>
<el-dropdown-menu slot="dropdown" class="el-dropdown-content-bg">
<el-checkbox-group v-model="checkedProps" @change="changeCheckbox">
<el-checkbox v-for="(item, index) in defaultTableProps" :label="item.prop" :key="index">
{{ item.colume }}
</el-checkbox>
</el-checkbox-group>
......@@ -277,77 +175,35 @@
</div>
<!-- 自定义列 止 -->
<!-- 复制条码号 起 -->
<el-button
type="info"
v-if="roleArr.includes('C-1-3')"
v-clipboard:copy="barcode"
@click="getBarcode"
v-clipboard:success="onCopy"
v-clipboard:error="onError"
>
<el-button type="info" v-if="roleArr.includes('C-1-3')" v-clipboard:copy="barcode" @click="getBarcode"
v-clipboard:success="onCopy" v-clipboard:error="onError">
复制条码
</el-button>
<!-- 复制条码号 止 -->
<el-button
type="info"
@click="delMore"
v-if="roleArr.includes('C-1-4')"
>删除
<el-button type="info" @click="delMore" v-if="roleArr.includes('C-1-4')">删除
</el-button>
<!-- <el-button>发查询</el-button>-->
</div>
</div>
<el-tag
class="removeDia"
style="width: 100%; color: #666666; margin-bottom: 0.5rem"
v-show="isShowTip"
>
<i
class="iconfont icon-tanhao1"
style="color: #055fe7; font-size: 1rem; margin: 0 0.625rem"
></i>
<el-tag class="removeDia" style="width: 100%; color: #666666; margin-bottom: 0.5rem" v-show="isShowTip">
<i class="iconfont icon-tanhao1" style="color: #055fe7; font-size: 1rem; margin: 0 0.625rem"></i>
已选择
<span style="color: #055fe7">{{ selectionData.length }}</span> 项​
<span v-html="'&nbsp;&nbsp;'"></span>
<el-link
type="primary"
:underline="false"
:style="{
marginLeft: '1.25rem',
color: selectionData.length > 0 ? '#055FE7' : '#C2C4C7',
}"
@click="toggleSelection()"
>清除
<el-link type="primary" :underline="false" :style="{
marginLeft: '1.25rem',
color: selectionData.length > 0 ? '#055FE7' : '#C2C4C7',
}" @click="toggleSelection()">清除
</el-link>
</el-tag>
<div class="confirm_main_table">
<el-table
style="width: 100%"
:height="height"
:border="false"
@selection-change="handleSelectionChange"
ref="confirmTable"
tooltip-effect="dark"
:data="list"
:key="tableKey"
:class="{ delSelection: !selectBoo }"
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
row-key="queryId"
@row-click="confirm"
@expand-change="hadnlExpandChange"
>
<el-table style="width: 100%" :height="height" :border="false" @selection-change="handleSelectionChange"
ref="confirmTable" tooltip-effect="dark" :data="list" :key="tableKey" :class="{ delSelection: !selectBoo }"
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }" row-key="queryId" @row-click="confirm"
@expand-change="hadnlExpandChange">
<!-- @select-all="handleSelectAll" -->
<el-table-column
type="selection"
height
width="auto"
:selectable="checkSelectable"
></el-table-column>
<el-table-column
prop=""
label="任务号/查询ID"
:width="cxyrdWidth1"
>
<el-table-column type="selection" height width="auto" :selectable="checkSelectable"></el-table-column>
<el-table-column prop="" label="任务号/查询ID" :width="cxyrdWidth1">
<template #header>
<div class="tableHeader">
<span>任务号 </span>
......@@ -355,78 +211,48 @@
</div>
</template>
<template slot-scope="scope">
<svg-icon
style="
<svg-icon style="
width: 0.875rem;
height: 0.6875rem;
margin-bottom: 0.125rem;
margin-left: 0.3125rem;
"
v-if="scope.row.children || scope.row.children === null"
icon-class="tree_f"
>
" v-if="scope.row.children || scope.row.children === null" icon-class="tree_f">
</svg-icon>
<svg-icon
style="
<svg-icon style="
width: 0.8125rem;
height: 0.375rem;
margin: 0 0 0.1875rem 0;
"
v-else-if="!scope.row.children || scope.row.children !== null"
icon-class="tree_c"
></svg-icon>
" v-else-if="!scope.row.children || scope.row.children !== null" icon-class="tree_c"></svg-icon>
{{
scope.row.children || scope.row.children === null
? scope.row.qid
: scope.row.qqid
}}
<div
v-show="scope.row.children && scope.row.children !== null"
class="children-count"
>
scope.row.children || scope.row.children === null
? scope.row.qid
: scope.row.qqid
}}
<div v-show="scope.row.children && scope.row.children !== null" class="children-count">
{{ scope.row.children ? scope.row.children.length : 0 }}
</div>
</template>
</el-table-column>
<el-table-column
v-for="(item, index) in tableProps"
show-overflow-tooltip
:key="index"
:label="item.colume"
:prop="item.prop"
:width="item.width"
:sortable="
<el-table-column v-for="(item, index) in tableProps" show-overflow-tooltip :key="index" :label="item.colume"
:prop="item.prop" :width="item.width" :sortable="
item.prop == 'affirmtime' ||
item.prop == 'requestdatetime' ||
item.prop == 'queryclass'
item.prop == 'requestdatetime' ||
item.prop == 'queryclass'
? true
: false
"
>
">
<template slot-scope="scope">
<template v-if="item.prop === 'querytype'">
<div
v-if="scope.row.querytype === '3'"
style="color: #055fe7"
>
<div v-if="scope.row.querytype === '3'" style="color: #055fe7">
{{ scope.row.queryTypeName }}
</div>
<div
v-else-if="scope.row.querytype === '0'"
style="color: #fa9500"
>
<div v-else-if="scope.row.querytype === '0'" style="color: #fa9500">
{{ scope.row.queryTypeName }}
</div>
<div
v-else-if="scope.row.querytype === '1'"
style="color: #e60012"
>
<div v-else-if="scope.row.querytype === '1'" style="color: #e60012">
{{ scope.row.queryTypeName }}
</div>
<div
v-else-if="scope.row.querytype === '2'"
style="color: #00b47a"
>
<div v-else-if="scope.row.querytype === '2'" style="color: #00b47a">
{{ scope.row.queryTypeName }}
</div>
<div v-else>
......@@ -437,17 +263,10 @@
<div>
{{ scope.row.barcode }}
<!-- {{ scope.row.artificialAffirmFlag }} -->
<div v-if="scope.row.barcode && scope.row.artificialAffirmFlag !='1'">
<img
class="history"
:src="historyUrl"
@click.stop="getDialog(scope.row)"
/>
<div v-if="scope.row.barcode && scope.row.artificialAffirmFlag != '1'">
<img class="history" :src="historyUrl" @click.stop="getDialog(scope.row)" />
</div>
<div
v-if="scope.row.barcode && scope.row.artificialAffirmFlag=='1'"
class="rgbq"
>
<div v-if="scope.row.barcode && scope.row.artificialAffirmFlag == '1'" class="rgbq">
<p>人工</p>
</div>
</div>
......@@ -455,73 +274,54 @@
<template v-else-if="item.prop === 'queryclass'">
{{
scope.row.queryclass === "3"
? "低"
: scope.row.queryclass === "2"
? "普通"
: scope.row.queryclass === "1"
? "高"
: ""
scope.row.queryclass === "3"
? "低"
: scope.row.queryclass === "2"
? "普通"
: scope.row.queryclass === "1"
? "高"
: ""
}}
</template>
<template v-else-if="item.prop === 'removeFlag'">
{{
scope.row.removeFlag == "0"
? "未删除"
: scope.row.removeFlag == "1"
? "已删除"
: ""
scope.row.removeFlag == "0"
? "未删除"
: scope.row.removeFlag == "1"
? "已删除"
: ""
}}
</template>
<template v-else>
{{ dataFormat(scope.row, item.prop) }}</template>
</template>
</el-table-column>
<el-table-column
width="auto"
label="操作"
align="left"
>
<el-table-column width="auto" label="操作" align="left">
<template slot-scope="scope">
<Confirmation
content="复制条码"
v-if="scope.row.barcode && roleArr.includes('C-1-5')"
>
<img
style="
<Confirmation content="复制条码" v-if="scope.row.barcode && roleArr.includes('C-1-5')">
<img style="
width: 1rem;
height: 1rem;
margin-right: 1.125rem;
cursor: pointer;
"
src="@/assets/img/qbryk/fz.svg"
@click.stop="
" src="@/assets/img/qbryk/fz.svg" @click.stop="
() => {
delSelect();
edit(scope.row);
}
"
/>
" />
</Confirmation>
<div @click.stop="() => {}">
<Confirmation
:ref="getPopConfirmRef(scope.$index)"
v-if="scope.row.barcode && roleArr.includes('C-1-6')"
@onConfirm="delOne(scope.row.qqid)"
content="删除"
:hintBoo="true"
>
<div @click.stop="() => { }">
<Confirmation :ref="getPopConfirmRef(scope.$index)"
v-if="scope.row.barcode && roleArr.includes('C-1-6')" @onConfirm="delOne(scope.row.qqid)" content="删除"
:hintBoo="true">
<div slot="reference">
<img
style="width: 1rem; height: 1rem; cursor: pointer"
:src="delUrl"
@click="
() => {
clickCancle(scope.$index)
delSelect()
}
"
/>
<img style="width: 1rem; height: 1rem; cursor: pointer" :src="delUrl" @click="
() => {
clickCancle(scope.$index)
delSelect()
}
" />
</div>
</Confirmation>
</div>
......@@ -533,35 +333,19 @@
<div class="footer">
<span class="count">共{{ reqParam.page.total }} 条记录 第{{ reqParam.page.currPage }}/{{
size
}}页</span>
<el-pagination
class="paging"
background
@size-change="handleSizeChange"
@current-change="handleCurrPageChange"
:current-page="reqParam.page.currPage"
:page-sizes="[10, 20, 50, 100]"
:page-size="reqParam.page.pageSize"
layout="prev, pager, next"
:total="reqParam.page.total"
>
}}页</span>
<el-pagination class="paging" background @size-change="handleSizeChange" @current-change="handleCurrPageChange"
:current-page="reqParam.page.currPage" :page-sizes="[10, 20, 50, 100]" :page-size="reqParam.page.pageSize"
layout="prev, pager, next" :total="reqParam.page.total">
</el-pagination>
</div>
<el-dialog
:visible.sync="historyDialogVisible"
style="z-index: 1500"
>
<el-dialog :visible.sync="historyDialogVisible" style="z-index: 1500">
</el-dialog>
<recognitionDialog ref="recognitionDialog"></recognitionDialog>
<Fcxtj
:isShowFcx="isShowFcx"
:type="dialogType"
ref="fcxtj"
:dialogQid="dialogQid"
></Fcxtj>
<Fcxtj :isShowFcx="isShowFcx" :type="dialogType" ref="fcxtj" :dialogQid="dialogQid"></Fcxtj>
</el-container>
</template>
......@@ -623,6 +407,7 @@ export default {
sendTimeStart: null,
sendTimeEnd: null,
username: null,
userid: null,
querytypes: [],
querystates: [],
remoteflags: [],
......@@ -712,6 +497,9 @@ export default {
popConfirmName: 'popConfirm',
popConfirmIndex: -1,
changStyle: [],
// 只看自己
zkzjChecked: false,
}
},
created () {
......@@ -749,6 +537,12 @@ export default {
//挑选被选中的对象
this.key = this.key + 1 //为了保证table 每次都会重渲,这样做体验感更好,如果不为table设置key值的话,用户一旦选中了复选框选项,就是在原来table基础上添加删除每一列,页面就有跳动的感觉,体验感不好
},
zkzjChecked (e) {
if (e) {
this.reqParam.contrastCustomSearchReq.userid = null
}
this.searchQuery('yes')
},
},
computed: {
roleArr () {
......@@ -817,6 +611,11 @@ export default {
}
let params = JSON.parse(JSON.stringify(this.reqParam))
// 处理只看自己
if (self.zkzjChecked) {
params.contrastCustomSearchReq.userid = JSON.parse(localStorage.getItem('userInfo')).user.id
}
//处理闪捕未认定
if (params.contrastCustomSearchReq.querystates.includes('sb')) {
let index = params.contrastCustomSearchReq.querystates.indexOf('sb')
......@@ -882,6 +681,9 @@ export default {
selectUserInfo () {
// this.reqParam.page.currPage = 1
// this.search()
if (this.zkzjChecked) {
this.zkzjChecked = false
}
},
// 清空用户id
clearUser () {
......@@ -894,14 +696,13 @@ export default {
*/
getUserList () {
let self = this
NetUtil.cxyrdUser.userList().then(res => {
console.log(res)
window.NetUtil.cxyrdUser.userList().then((res) => {
// 获取用户成功
if (res.code === 0) {
res.ret.forEach(item => {
res.detail.forEach((item) => {
self.userOption.push({
label: item.userName,
userid: item.userid
label: item.username,
userid: item.id,
})
})
}
......@@ -1567,6 +1368,7 @@ const setQueryClass = [
.el-dropdown-menu {
width: 120px;
/*height: 288px;*/
.el-checkbox-group {
.el-checkbox {
......@@ -1583,6 +1385,10 @@ const setQueryClass = [
}
</style>
<style scoped>
.zkzj {
margin-right: 20px;
}
.el-popper[x-placement^='bottom-end'] {
border-style: none;
}
......@@ -1653,14 +1459,14 @@ const setQueryClass = [
color: #333333;
}
/deep/ .el-table th > .cell {
/deep/ .el-table th>.cell {
font-size: 14px;
font-family: HarmonyOS_Sans_SC_Medium;
font-weight: normal;
color: #282f3c;
}
/deep/ .el-table td > .cell {
/deep/ .el-table td>.cell {
font-size: 14px;
font-family: HarmonyOS_Sans_SC;
color: #333333;
......@@ -1722,12 +1528,12 @@ div {
transform: translateY(5px);
cursor: pointer;
> i {
>i {
margin-right: 5px;
cursor: pointer;
}
> span {
>span {
cursor: pointer;
line-height: 24px !important;
color: #055fe7 !important;
......@@ -1773,7 +1579,7 @@ b {
}
.font {
> span {
>span {
cursor: pointer;
font-size: 14px !important;
color: #666666 !important;
......@@ -1781,7 +1587,7 @@ b {
cursor: pointer;
> i {
>i {
cursor: pointer;
color: #b1b6c2;
margin: 0 !important;
......@@ -1838,7 +1644,8 @@ b {
.el-icon-arrow-down {
color: #999999;
border: #999999 1px solid;
border-radius: 50%; /*边设置为圆形*/
border-radius: 50%;
/*边设置为圆形*/
font-size: 12px;
}
......@@ -2136,7 +1943,7 @@ b {
/*background: #f5f5f7;*/
}
/deep/ .el-checkbox__input + .el-checkbox__label {
/deep/ .el-checkbox__input+.el-checkbox__label {
color: #333333;
font-size: 14px;
}
......@@ -2153,7 +1960,7 @@ b {
justify-content: space-between;
align-items: center;
> div {
>div {
&:first-of-type {
.el-button--info {
margin-left: 0;
......@@ -2169,6 +1976,7 @@ b {
}
.el-table /deep/ {
td.el-table__cell,
th.el-table__cell.is-leaf {
border-bottom: none;
......@@ -2224,7 +2032,7 @@ b {
}
// 去除table表格最底部边框
.el-table__row > td {
.el-table__row>td {
border: none;
}
......@@ -2242,11 +2050,11 @@ b {
padding: 0 !important;
}
/deep/ .el-table .el-table__body tr.current-row > td {
/deep/ .el-table .el-table__body tr.current-row>td {
background-color: #f2f7fe !important;
}
/deep/ .el-table .el-table__body tr:hover > td {
/deep/ .el-table .el-table__body tr:hover>td {
background-color: #f2f7fe !important;
}
......@@ -2260,7 +2068,7 @@ b {
}
}
/deep/ .el-table th > .cell {
/deep/ .el-table th>.cell {
font-family: HarmonyOS_Sans_SC_Medium;
}
......@@ -2418,7 +2226,7 @@ b {
}
.tableHeader {
> span {
>span {
&:last-of-type {
color: #999;
font-size: 12px;
......@@ -2485,12 +2293,7 @@ b {
}
/*没有子节点*/
.el-tree
/deep/
.el-tree-node__expand-icon.is-leaf::before
.el-table
/deep/
.el-table__placeholder::before {
.el-tree /deep/ .el-tree-node__expand-icon.is-leaf::before .el-table /deep/ .el-table__placeholder::before {
content: '';
display: block;
width: 16px;
......@@ -2566,6 +2369,7 @@ b {
background-repeat: no-repeat;
transform: rotate(180deg) !important;
}
// 修改下拉框样式
.el-select-dropdown__item {
padding-left: 20px !important;
......@@ -2573,16 +2377,17 @@ b {
</style>
<style scoped lang="scss">
$expendStyle: var(--expendStyle, 1);
/deep/ .el-table .el-table__body tr.current-row > td {
/deep/ .el-table .el-table__body tr.current-row>td {
background-color: transparent !important;
}
/deep/ .el-table .el-table__body tr:hover > td {
/deep/ .el-table .el-table__body tr:hover>td {
background-color: transparent !important;
}
// 去除子级移入时的hover背景色
/deep/ .el-table .el-table__body .el-table__row--level-1:hover > td {
/deep/ .el-table .el-table__body .el-table__row--level-1:hover>td {
background-color: #f5f6f7 !important;
}
......@@ -2591,11 +2396,13 @@ $expendStyle: var(--expendStyle, 1);
div {
opacity: 0;
}
.cell {
opacity: 0;
}
}
}
.refresh-time {
width: 120px;
border: 0.0625rem solid #aeb5c2;
......
/*
* @Author: your name
* @Date: 2022-01-14 17:54:48
* @LastEditTime: 2022-01-14 18:40:52
* @LastEditTime: 2022-04-14 23:42:10
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \founder_vue\src\views\tjbb\tjbb.js
*/
import i18n from '@/i18n/index.js'
const cjxxmb = [
{
label: "采集时间:",
type: "month",
fomat: "yyyy-MM",
id: "sj",
placeholder: "请选择",
label: i18n.tc('Tjbb.acquisition_time'),
type: 'month',
fomat: 'yyyy-MM',
id: 'sj',
placeholder: i18n.tc('Common.please_select')
},
{
label: "采集单位:",
type: "cascader",
id: "unitcode",
placeholder: "选择日期",
label: i18n.tc('Tjbb.collection_unit'),
type: 'cascader',
id: 'unitcode',
placeholder: i18n.tc('Tjbb.select_date')
},
{
label: "采集方式:",
type: "select",
id: "code",
label: i18n.tc('Tjbb.collection_way'),
type: 'select',
id: 'code',
selectList: [
{
name: "捺印指纹",
value: "1",
name: i18n.tc('Tjbb.fingerprint_printing'),
value: '1'
},
{
name: "现场指纹",
value: "2",
},
],
name: i18n.tc('Daxxk.scene_fingerprint'),
value: '2'
}
]
}
]
const ajxxmb = [
{
label: "捺印日期:",
type: "dateValue",
fomat: "yyyy-MM-dd",
id: "tqsj",
placeholder: "选择日期",
label: i18n.tc('Tjbb.stamp_date'),
type: 'dateValue',
fomat: 'yyyy-MM-dd',
id: 'tqsj',
placeholder: i18n.tc('Tjbb.select_date')
},
// {
// label: "入库时间:",
......@@ -53,10 +54,10 @@ const ajxxmb = [
// placeholder: "选择日期",
// },
{
label: "采集单位:",
type: "cascader",
id: "unitcode",
placeholder: "选择日期",
label: i18n.tc('Tjbb.collection_unit'),
type: 'cascader',
id: 'unitcode',
placeholder: i18n.tc('Tjbb.select_date')
},
// {
// label: "采集方式:",
......@@ -65,58 +66,58 @@ const ajxxmb = [
// placeholder: "请输入采集方式",
// },
{
label: "案事件编号:",
type: "input",
id: "asjbh",
placeholder: "请输入案事件编号",
label: i18n.tc('Tjbb.case_event_No'),
type: 'input',
id: 'asjbh',
placeholder: i18n.tc('FptxDr.input_case_number')
},
{
label: "勘验编号:",
type: "input",
id: "kybh",
placeholder: "请输入勘验编号",
},
label: i18n.tc('Tjbb.inspection_No'),
type: 'input',
id: 'kybh',
placeholder: i18n.tc('Tjbb.please_input_inspection_No')
}
]
const dsbzmb = [
{
label: "起止时间:",
type: "dateValue",
fomat: "yyyy-MM-dd",
id: "qzsj",
label: i18n.tc('Tjbb.start_end_time'),
type: 'dateValue',
fomat: 'yyyy-MM-dd',
id: 'qzsj'
},
{
label: "查询类型:",
type: "select",
label: i18n.tc('Tjbb.query_type'),
type: 'select',
col: '10',
selectList: [
{
name: "倒查",
value: "1",
name: i18n.tc('Common.TL'),
value: '1'
},
{
name: "正查",
value: "2",
},
name: i18n.tc('Common.LT'),
value: '2'
}
],
id: "cxlx",
id: 'cxlx'
},
{
label: "源条码号:",
type: "input",
id: "ytmh",
placeholder: "请输入源条码号",
label: i18n.tc('Tjbb.source_barcode_No'),
type: 'input',
id: 'ytmh',
placeholder: i18n.tc('Bzxxgl.please_enter_source_barcode')
},
{
label: "目标条码号:",
type: "input",
id: "mbtmh",
placeholder: "请输入目标条码号",
label: i18n.tc('Tjbb.target_barcode_No'),
type: 'input',
id: 'mbtmh',
placeholder: i18n.tc('Bzxxgl.please_enter_target_barcode')
},
{
label: "认定单位:",
type: "cascader",
id: "rddw",
},
label: i18n.tc('Tjbb.recognized_by'),
type: 'cascader',
id: 'rddw'
}
]
export {
cjxxmb,
......
<template>
<div class="tjbb">
<div class="searchHeader">
<span>查询模版:</span>
<span>{{ $t('Tjbb.query_template') }}</span>
<el-select
v-model="tpl"
placeholder="请选择模板"
:placeholder="$t('Tjbb.please_select_template')"
size="small"
@change="onChange"
>
......@@ -16,7 +16,6 @@
/>
</el-select>
</div>
<div class="head">
<el-form
:model="queryParams"
......@@ -39,8 +38,8 @@
:placeholder="item.placeholder"
@keyup.enter.native="handleQuery()"
:picker-options="{
disabledDate: disabledDate,
}"
disabledDate: disabledDate,
}"
>
</el-date-picker>
<el-date-picker
......@@ -52,8 +51,8 @@
:placeholder="item.placeholder"
@keyup.enter.native="handleQuery()"
:picker-options="{
disabledDate: disabledDate,
}"
disabledDate: disabledDate,
}"
>
</el-date-picker>
<el-date-picker
......@@ -61,14 +60,14 @@
:format="item.fomat"
:value-format="item.fomat"
v-model="queryParams[item.id]"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:range-separator="$t('Tjbb.zhi')"
:start-placeholder="$t('Common.start_time2')"
:end-placeholder="$t('Common.end_time2')"
type="daterange"
@keyup.enter.native="handleQuery()"
:picker-options="{
disabledDate: disabledDate,
}"
disabledDate: disabledDate,
}"
>
</el-date-picker>
<Cascader
......@@ -76,14 +75,15 @@
:id="item.id"
width="18.125"
v-else-if="item.type == 'cascader'"
:props='props'
></Cascader>
:props="props"
>
</Cascader>
<el-input
v-model.trim="queryParams[item.id]"
:placeholder="item.placeholder"
v-else-if="item.type == 'input'"
show-word-limit
maxlength=23
maxlength="23"
@keyup.enter.native="handleQuery()"
clearable
></el-input>
......@@ -104,219 +104,486 @@
</el-select>
</el-form-item>
</el-form>
<div class='cz'>
<div class="cz">
<el-button
v-if="tpl==1"
v-show="queryParams.sj!=null||queryParams.unitcode!=''||queryParams.code!=''"
v-if="tpl == 1"
v-show="
queryParams.sj != null ||
queryParams.unitcode != '' ||
queryParams.code != ''
"
type="text"
class='qk'
@click="onChange(1,1)"
>清空
class="qk"
@click="onChange(1, 1)"
>{{ $t('Common.clear_btn') }}
</el-button>
<el-button
v-else-if="tpl==2"
v-show="queryParams.tqsj!=null||queryParams.unitcode!=''||queryParams.asjbh!=''||queryParams.kybh!=''"
v-else-if="tpl == 2"
v-show="
queryParams.tqsj != null ||
queryParams.unitcode != '' ||
queryParams.asjbh != '' ||
queryParams.kybh != ''
"
type="text"
class='qk'
@click="onChange(2,1)"
>清空
class="qk"
@click="onChange(2, 1)"
>{{ $t('Common.clear_btn') }}
</el-button>
<el-button
v-else-if="tpl==3"
v-show="queryParams.qzsj!=null||queryParams.cxlx!=''||queryParams.ytmh!=''||queryParams.mbtmh!=''||queryParams.rddw!=''"
v-else-if="tpl == 3"
v-show="
queryParams.qzsj != null ||
queryParams.cxlx != '' ||
queryParams.ytmh != '' ||
queryParams.mbtmh != '' ||
queryParams.rddw != ''
"
type="text"
class='qk'
@click="onChange(3,1)"
>清空
<!-- qzsj: null,
cxlx: "",
ytmh: '',
mbtmh: '',
rddw: '', -->
class="qk"
@click="onChange(3, 1)"
>{{ $t('Common.clear_btn') }}
</el-button>
<el-button class="cx" type="primary" size="mini" @click="handleQuery()"
>{{ $t('LL.query') }}
</el-button>
<el-button
class="cx"
type="primary"
size="mini"
@click="handleQuery()"
>查询</el-button>
</div>
</div>
<div class="btns">
<div class="label">
<span v-if="tpl==1">采集信息统计</span>
<span v-else-if="tpl==2">案件信息统计</span>
<span v-else-if="tpl==3">城市比中明细复核统计</span>
<span v-if="tpl == 1">{{
$t('Tjbb.collected_information_statistics')
}}</span>
<span v-else-if="tpl == 2">{{
$t('Tjbb.case_information_statistics')
}}</span>
<span v-else-if="tpl == 3">{{
$t('Tjbb.detailed_review_statistics_of_urban_comparison')
}}</span>
</div>
<div class="btnBox">
<div
@click='ksh'
v-show="tpl==1"
><span class="iconfont">&#xe64d;</span>可视化切换</div>
<div>
<el-dropdown trigger='click'>
<div @click="ksh" v-show="tpl == 4">
<span class="iconfont">&#xe64d;</span
>{{ $t('Tjbb.visual_switching') }}
</div>
<div v-show="tpl == 4">
<el-dropdown trigger="click">
<el-button type="primary">
打印&nbsp;&nbsp;<i class="el-icon-arrow-down el-icon--right"></i>
{{ $t('Tjbb.print') }}&nbsp;&nbsp;<i
class="el-icon-arrow-down el-icon--right"
></i>
</el-button>
<el-dropdown-menu
slot="dropdown"
class="myDropdown1"
>
<div
calss='myDropdownItem'
@click='doFRPrint()'
>
<el-dropdown-menu slot="dropdown" class="myDropdown1">
<div calss="myDropdownItem" @click="doFRPrint(currPage)">
<el-dropdown-item>
<!-- <img
src="../../assets/img/bb/PDF.svg"
alt=""
> -->
当前页
{{ $t('Tjbb.current_page') }}
</el-dropdown-item>
</div>
<div
v-show="tpl!=1"
@click='doFRPrint(total)'
>
<div v-show="tpl != 1" @click="doFRPrint()">
<el-dropdown-item>
<!-- <img
src="../../assets/img/bb/Excel.svg"
alt=""
> -->
全部页
{{ $t('Tjbb.all_pages') }}
</el-dropdown-item>
</div>
</el-dropdown-menu>
</el-dropdown>
</div>
<!-- <div @click=" send('_g().pdfprint()')">打印</div> -->
<div>
<el-dropdown trigger='click'>
<el-dropdown trigger="click">
<el-button type="primary">
导出&nbsp;&nbsp;<i class="el-icon-arrow-down el-icon--right"></i>
{{ $t('FptxDc.export') }}&nbsp;&nbsp;<i
class="el-icon-arrow-down el-icon--right"
></i>
</el-button>
<el-dropdown-menu
slot="dropdown"
class="myDropdown2"
>
<div calss='myDropdownItem'>
<el-dropdown-item>
<el-popover
placement="left"
width="40"
trigger="hover"
class="hang"
>
<div
@click="exportReport('pdf')"
class="ejan"
>导出当前页</div>
<div
@click="exportReport('pdf',total)"
v-show="tpl!=1"
class="ejan"
>导出全部页</div>
<el-button
slot="reference"
class="yjan"
>
<img
src="../../assets/img/bb/PDF.svg"
alt=""
>
PDF
</el-button>
</el-popover>
</el-dropdown-item>
</div>
<el-dropdown-menu slot="dropdown" class="myDropdown2">
<div>
<el-dropdown-item>
<!-- Excel -->
<el-popover
placement="left"
width="40"
trigger="hover"
class="hang"
>
<div @click="exportReport('excel', currPage)" class="ejan">
{{ $t('Tjbb.export_current_page') }}
</div>
<div
@click="exportReport('excel')"
v-show="tpl != 1"
class="ejan"
>导出当前页</div>
<div
@click="exportReport('excel',total)"
v-show="tpl!=1"
class="ejan"
>导出全部页</div>
<el-button
slot="reference"
class="yjan"
>
<img
src="../../assets/img/bb/Excel.svg"
alt=""
>
{{ $t('Tjbb.export_all_pages') }}
</div>
<el-button slot="reference" class="yjan">
<img src="../../assets/img/bb/Excel.svg" alt="" />
Excel
</el-button>
</el-popover>
</el-dropdown-item>
</div>
<div>
<el-dropdown-item>
<!-- Word -->
<el-popover
placement="left"
width="40"
trigger="hover"
class="hang"
>
<div
@click="exportReport('word')"
class="ejan"
>导出当前页</div>
<div
@click="exportReport('word',total)"
v-show="tpl!=1"
class="ejan"
>导出全部页</div>
<el-button
slot="reference"
class="yjan"
>
<img
src="../../assets/img/bb/Word.svg"
alt=""
>
Word
</el-button>
</el-popover>
</el-dropdown-item>
</div>
</el-dropdown-menu>
</el-dropdown>
</div>
</div>
</div>
<div class="content">
<iframe
id="reportFrame"
width="100%"
height="100%"
frameborder="0"
scrolling="auto"
:src="fr_cpt_url"
<!-- 采集 -->
<el-table
v-show="tpl == 1"
:data="tableData"
:header-cell-style="{
'text-align': 'center',
color: '#333333',
'font-size': '14px',
'font-family': 'HarmonyOS_Sans_SC_Medium',
'font-weight': '600',
'border-color': '#bbb',
}"
:cell-style="{
'text-align': 'center',
'border-color': '#eee',
padding: '0px',
}"
style="width: 100%"
:height="height"
class="cjTable"
>
<el-table-column prop="unitName" :label="$t('Common.cjdw')" width="200">
</el-table-column>
<el-table-column :label="$t('Tjbb.nyzzw')">
<el-table-column :label="$t('Daxxk.fingerprint')">
<el-table-column
prop="personFingerMonthCount"
:label="$t('Tjbb.dylj')"
>
</el-table-column>
<el-table-column
prop="personFingerYearCount"
:label="$t('Tjbb.dnlj')"
>
</el-table-column>
</el-table-column>
<el-table-column :label="$t('Common.palm')">
<el-table-column
prop="personPalmMonthCount"
:label="$t('Tjbb.dylj')"
>
</el-table-column>
<el-table-column
prop="personPalmYearCount"
:label="$t('Tjbb.dnlj')"
>
</el-table-column>
</el-table-column>
</el-table-column>
<el-table-column :label="$t('Tjbb.xczzwtq')">
<el-table-column :label="$t('Daxxk.fingerprint')">
<el-table-column prop="caseMonthCount" :label="$t('Tjbb.dyljq')">
</el-table-column>
<el-table-column prop="caseYearCount" :label="$t('Tjbb.dnljq')">
</el-table-column>
<el-table-column
prop="caseFingerMonthCount"
:label="$t('Tjbb.dyljm')"
>
</el-table-column>
<el-table-column
prop="caseFingerYearCount"
:label="$t('Tjbb.dnljm')"
>
</el-table-column>
</el-table-column>
<el-table-column :label="$t('Common.palm')">
<el-table-column prop="casePalmMonthCount" :label="$t('Tjbb.dylj')">
</el-table-column>
<el-table-column prop="casePalmYearCount" :label="$t('Tjbb.dnlj')">
</el-table-column>
</el-table-column>
</el-table-column>
</el-table>
<!-- 案件 -->
<el-table
v-show="tpl == 2"
ref="myTable2"
id="myTable2"
:data="tableData"
:header-cell-style="{
'text-align': 'center',
color: '#333333',
'font-size': '14px',
'font-family': 'HarmonyOS_Sans_SC_Medium',
'font-weight': '600',
'border-color': '#d1d1d1',
}"
:cell-style="{
'text-align': 'center',
'border-color': '#eee',
padding: '0px',
}"
style="width: 100%"
:height="height"
>
<el-table-column
prop="ysxtAsjbh"
:label="$t('FptxDr.case_number')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="xckybh"
:label="$t('Allcase.field_survey_no')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="fingerprintCount"
:label="$t('Tjbb.zwgs')"
:width="width2"
>
</el-table-column>
<el-table-column
prop="ajlbCodeName"
:label="$t('Xzaj.case_type')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="occurdate"
:label="$t('Xzaj.occurrence_date')"
:width="width2"
:formatter="dateTimeFormat"
>
</el-table-column>
<el-table-column
prop="asjfsddCodeCode"
:label="$t('Tjbb.fadddm')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="asjfsddCodeName"
:label="$t('Tjbb.fadd')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="tqdwGajgjgdm"
:label="$t('Tjbb.cjdwdm')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="tqdwGajgmc"
:label="$t('Common.cjdw')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="tqsj"
:label="$t('Tjbb.tqrq')"
:width="width2"
:formatter="dateTimeFormat"
>
</el-table-column>
<el-table-column
prop="tqryXm"
:label="$t('Common.cjr')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="bzFlag" :label="$t('Tjbb.bzbs')" :width="width2">
</el-table-column>
<el-table-column
prop="bzdw"
:label="$t('Tjbb.rddw')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="sbdw"
:label="$t('Bzxxgl.reporting_unit')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="tqryGmsfhm"
:label="$t('Tjbb.cjrsfz')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="tqryLxdh"
:label="$t('Tjbb.cjrdh')"
:width="width1"
>
</el-table-column>
</el-table>
<!-- 地市比中 -->
<el-table
v-show="tpl == 3"
:data="tableData"
:header-cell-style="{
'text-align': 'center',
color: '#333333',
'font-size': '14px',
'font-family': 'HarmonyOS_Sans_SC_Medium',
'font-weight': '600',
'border-color': '#d1d1d1',
}"
:cell-style="{
'text-align': 'center',
'border-color': '#eee',
padding: '0px',
}"
style="width: 100%"
:height="height"
>
</iframe>
<el-table-column
prop="xczwYsxtAsjbh"
:label="$t('FptxDr.case_number')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="xckybh"
:label="$t('Allcase.field_survey_no')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="asjbh"
:label="$t('Xzaj.police_case_no')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="ajlbdmName"
:label="$t('Allcase.case_type')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="nyzwYsxtAsjxgrybh"
:label="$t('Tjbb.ryh')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="jzrybh"
:label="$t('Common.jzrybh')"
:width="width1"
>
</el-table-column>
<el-table-column prop="nyryXm" :label="$t('Common.xm')" :width="width1">
</el-table-column>
<el-table-column
prop="nyryGmsfhm"
:label="$t('Zljc.identity_card')"
:width="width1"
>
</el-table-column>
<el-table-column
prop="xczwxh"
:label="$t('LT.order_number')"
:width="width2"
>
</el-table-column>
<el-table-column
prop="nyzwZzhwdm"
:label="$t('TL.finger_position')"
:width="width2"
>
</el-table-column>
<el-table-column
prop="querytypeName"
:label="$t('FptxDr.search_type')"
:width="width2"
>
</el-table-column>
<el-table-column
prop="sbbztName"
:label="$t('Tjbb.sbbzt')"
:width="width2"
>
</el-table-column>
<el-table-column
prop="bzrXm"
:label="$t('Tjbb.bzyh')"
:width="width2"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="bzdwGajgmc"
:label="$t('LT.median_unit')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="bzsj"
:label="$t('LT.hit_time')"
:width="width2"
:formatter="dateTimeFormat"
>
</el-table-column>
<el-table-column prop="bzzt" :label="$t('Tjbb.bzzt')" :width="width2">
</el-table-column>
<el-table-column
prop="fhrXm"
:label="$t('Bzxxgl.review_user')"
:width="width2"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="fhdwGajgmc"
:label="$t('Bzxxgl.review_unit')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="fhsj"
:label="$t('Bzxxgl.review_time')"
:width="width2"
:formatter="dateTimeFormat"
>
</el-table-column>
<el-table-column
prop="reviewStatus"
:label="$t('Bzxxgl.review_status')"
:width="width2"
>
</el-table-column>
<el-table-column
prop="jyaq"
:label="$t('Gzlb.brief_case')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
<el-table-column
prop="sbblsh"
:label="$t('Tjbb.sbblsh')"
:width="width1"
show-overflow-tooltip
>
</el-table-column>
</el-table>
</div>
<div
class="block"
v-if="tpl!=1"
>
<span class="record">{{ total }}条记录 第{{ currPage }}/{{
size
}}</span>
<div class="block" v-if="tpl != 1">
<span class="record"
>{{ $t('Common.all') }}{{ total }}{{ $t('Common.item')
}}{{ $t('Common.record') }} {{ $t('Common.di') }}{{ currPage }}/{{ size
}}{{ $t('Common.page') }}</span
>
<el-pagination
class="paging"
@size-change="handleSizeChange"
......@@ -332,364 +599,500 @@
</div>
</template>
<script>
import Cascader from "@/components/Cascader.vue";
import { cjxxmb, ajxxmb, dsbzmb } from "./tjbb";
import moment from 'moment'
import Cascader from '@/components/Cascader.vue'
import { cjxxmb, ajxxmb, dsbzmb } from './tjbb'
export default {
name: "WarnModel",
name: 'WarnModel',
components: {
Cascader,
},
data () {
created() {
let w1 = 1920
let w2 = window.innerWidth
this.width1 = (this.width1 * w2) / w1
this.width2 = (this.width2 * w2) / w1
},
data() {
return {
width1: 220,
width2: 100,
tableData: [],
status: 1, // 可视化切换 1或2
props: {
value: "code",
label: "key",
children: "childCodeDwXz",
value: 'code',
label: 'key',
children: 'childCodeDwXz',
checkStrictly: true,
emitPath: false,
},
queryParams: {
sj: null,
unitcode: "",
unitcode: '',
code: '',
},
checked: false,
codeOptions: [
{
name: "采集信息统计",
value: "1",
name: this.$t('Tjbb.collected_information_statistics'),
value: '1',
},
{
name: "案件信息统计",
value: "2",
name: this.$t('Tjbb.case_information_statistics'),
value: '2',
},
{
name: "地市比中明细复核统计",
value: "3",
name: this.$t(
'Tjbb.detailed_review_statistics_of_prefecture_city_comparison'
),
value: '3',
},
],
//筛选条件模板
formTemplate: cjxxmb,
tpl: "1",
tpl: '1',
fr_cpt_url: ``,
total: 0,
currPage: 1,
size: 0
};
size: 0,
height: '37.5rem',
}
},
activated() {
this.$keyBoard(this, 'onClickEnterKeyup')
},
mounted () {
mounted() {
this.$keyBoard(this, 'onClickEnterKeyup')
this.handleQuery()
},
methods: {
onClickEnterKeyup (code) {
// 时间格式化
dateTimeFormat(row, colnum) {
let prop = colnum.property
return row[prop] ? moment(row[prop]).format('YYYY-MM-DD') : '---'
},
onClickEnterKeyup(code) {
let _that = this
//事件中keycode=13为回车事件
if (code === 13) {
_that.handleQuery()
}
},
send (msg) {
initPostFn(window, document);
window.sendMessage(msg);
function initPostFn (win, doc) {
var ifr = doc.getElementById('reportFrame').contentWindow;
// console.log(doc.getElementById('reportFrame'))
var cb = function (json) {
eval(json);
};
var sendMessage = function () {
send(msg) {
initPostFn(window, document)
window.sendMessage(msg)
function initPostFn(win, doc) {
var ifr = doc.getElementById('reportFrame').contentWindow
var cb = function(json) {
eval(json)
}
var sendMessage = function() {
if (win.postMessage) {
if (win.addEventListener) {
win.addEventListener("message", function (e) {
cb.call(win, e.data);
}, false);
win.addEventListener(
'message',
function(e) {
cb.call(win, e.data)
},
false
)
} else if (win.attachEvent) {
win.attachEvent("onmessage", function (e) {
cb.call(win, e.data);
});
win.attachEvent('onmessage', function(e) {
cb.call(win, e.data)
})
}
return function(data) {
ifr.postMessage(data, '*')
}
return function (data) {
ifr.postMessage(data, '*');
};
} else {
var hash = '';
setInterval(function () {
var hash = ''
setInterval(function() {
if (win.name !== hash) {
hash = win.name;
cb.call(win, hash);
hash = win.name
cb.call(win, hash)
}
}, 200);
return function (data) {
ifr.name = data;
};
}, 200)
return function(data) {
ifr.name = data
}
}
};
win.sendMessage = sendMessage();
}
win.sendMessage = sendMessage()
}
},
disabledDate (a) {
disabledDate(a) {
if (a.getTime() > new Date().getTime()) {
return true;
return true
} else {
return false;
return false
}
},
handleSizeChange (pageSize) {
// this.reqParam.page.pageSize = pageSize;
//console.log("每页条数", this.reqParam.page.pageSize);
},
handleCurrentChange (page) {
console.log("当前页", this.currPage);
handleCurrentChange(page) {
this.handleQuery(page)
},
doFRPrint (total = 10) { //点击打印按钮时触发
console.log(total, '全部打印 当前打印limit')
doFRPrint(currPage = '') {
//点击打印按钮时触发
console.log(currPage, '全部打印 当前打印limit')
// this.send(`printPdf(${"\'540000000000\'"},${"\'2021-01\'"},${0},${1})`)
if (this.tpl == 1) {
var now = new Date();
var year = now.getFullYear(); //得到年份
var month = now.getMonth(); //得到月份
var defaultDate = `${year}-${month + 1}`;
let unitcode = '540000000000';
let sj = String(defaultDate);
let type = 0
let status = this.status
this.queryParams.unitcode ? unitcode = `\'${this.queryParams.unitcode}\'` : unitcode = '540000000000'
this.queryParams.sj ? sj = this.queryParams.sj : sj = String(defaultDate)
console.log(sj, 'sjsjsjsjsj')
var strs = new Array(); //定义一数组
strs = sj.split("-"); //字符分割
console.log(strs, 'strs')
sj = `\'${strs[0]}\-${strs[1]}\'`
this.queryParams.code ? type = this.queryParams.code : type = 0
this.send(`printPdfCj(${unitcode},${sj},${type},${status})`)
console.log(`printPdfCj(${unitcode},${sj},${type},${status})`, '打印参数')
} else if (this.tpl == 2) {
let asjbh = `\'\'`
let xckybh = `\'\'`
let unitcode = `\'\'`
let tqkssj = `\'\'`
let tqjssj = `\'\'`
// let rkkssj = `\'\'`
// let rkjssj = `\'\'`
// let page = this.currPage
let page = total == 10 ? this.currPage : 1
let limit = total
this.queryParams.asjbh ? asjbh = `\'${this.queryParams.asjbh}\'` : asjbh = `\'\'`
this.queryParams.kybh ? xckybh = `\'${this.queryParams.kybh}\'` : xckybh = `\'\'`
this.queryParams.unitcode ? unitcode = `\'${this.queryParams.unitcode}\'` : unitcode = `\'\'`
var strs1 = new Array(); //定义一数组
var strs2 = new Array(); //定义一数组
if (this.queryParams.tqsj) {
tqkssj = this.queryParams.tqsj[0]
tqjssj = this.queryParams.tqsj[1]
strs1 = tqkssj.split("-"); //字符分割
tqkssj = `\'${strs1[0]}\-${strs1[1]}\-${strs1[2]}\'`
strs2 = tqjssj.split("-"); //字符分割
tqjssj = `\'${strs2[0]}\-${strs2[1]}\-${strs2[2]}\'`
}
// if (this.queryParams.rksj) {
// rkkssj = this.queryParams.rksj[0]
// rkjssj = this.queryParams.rksj[1]
// }
this.send(`printPdfAj(${asjbh},${xckybh},${unitcode},${tqkssj},${tqjssj},${page},${limit})`)
console.log(`printPdfAj(${asjbh},${xckybh},${unitcode},${tqkssj},${tqjssj},${page},${limit})`, '打印参数')
} else if (this.tpl == 3) {
let unitcode = `\'\'`
let srcbarcode = `\'\'`
let destbarcode = `\'\'`
let querytype = `\'\'`
let startTime = `\'\'`
let endTime = `\'\'`
// let page = this.currPage
let page = total == 10 ? this.currPage : 1
let limit = total
this.queryParams.rddw ? unitcode = `\'${this.queryParams.rddw}\'` : unitcode = `\'\'`
this.queryParams.ytmh ? srcbarcode = `\'${this.queryParams.ytmh}\'` : srcbarcode = `\'\'`
this.queryParams.mbtmh ? destbarcode = `\'${this.queryParams.mbtmh}\'` : destbarcode = `\'\'`
this.queryParams.cxlx ? querytype = this.queryParams.cxlx : querytype = `\'\'`
// this.queryParams.qzsj ? startTime = this.queryParams.qzsj[0] : startTime = `\'\'`
// this.queryParams.qzsj ? endTime = this.queryParams.qzsj[1] : endTime = `\'\'`
var strs1 = new Array(); //定义一数组
var strs2 = new Array(); //定义一数组
if (this.queryParams.qzsj) {
startTime = this.queryParams.qzsj[0]
endTime = this.queryParams.qzsj[1]
strs1 = startTime.split("-"); //字符分割
startTime = `\'${strs1[0]}\-${strs1[1]}\-${strs1[2]}\'`
strs2 = endTime.split("-"); //字符分割
endTime = `\'${strs2[0]}\-${strs2[1]}\-${strs2[2]}\'`
} else {
startTime = `\'\'`
endTime = `\'\'`
}
this.send(`printPdfLt(${unitcode},${srcbarcode},${destbarcode},${querytype},${startTime},${endTime},${page},${limit})`)
console.log(`printPdfLt(${unitcode},${srcbarcode},${destbarcode},${querytype},${startTime},${endTime},${page},${limit})`, '打印参数')
// if (this.tpl == 1) {
// var now = new Date();
// var year = now.getFullYear(); //得到年份
// var month = now.getMonth(); //得到月份
// var defaultDate = `${year}-${month + 1}`;
// let unitcode = '540000000000';
// let sj = String(defaultDate);
// let type = 0
// let status = this.status
// this.queryParams.unitcode ? unitcode = `\'${this.queryParams.unitcode}\'` : unitcode = '540000000000'
// this.queryParams.sj ? sj = this.queryParams.sj : sj = String(defaultDate)
// console.log(sj, 'sjsjsjsjsj')
// var strs = new Array(); //定义一数组
// strs = sj.split("-"); //字符分割
// console.log(strs, 'strs')
// sj = `\'${strs[0]}\-${strs[1]}\'`
// this.queryParams.code ? type = this.queryParams.code : type = 0
// this.send(`printPdfCj(${unitcode},${sj},${type},${status})`)
// console.log(`printPdfCj(${unitcode},${sj},${type},${status})`, '打印参数')
// } else if (this.tpl == 2) {
// let asjbh = `\'\'`
// let xckybh = `\'\'`
// let unitcode = `\'\'`
// let tqkssj = `\'\'`
// let tqjssj = `\'\'`
// // let rkkssj = `\'\'`
// // let rkjssj = `\'\'`
// // let page = this.currPage
// let page = total == 10 ? this.currPage : 1
// let limit = total
// this.queryParams.asjbh ? asjbh = `\'${this.queryParams.asjbh}\'` : asjbh = `\'\'`
// this.queryParams.kybh ? xckybh = `\'${this.queryParams.kybh}\'` : xckybh = `\'\'`
// this.queryParams.unitcode ? unitcode = `\'${this.queryParams.unitcode}\'` : unitcode = `\'\'`
// var strs1 = new Array(); //定义一数组
// var strs2 = new Array(); //定义一数组
// if (this.queryParams.tqsj) {
// tqkssj = this.queryParams.tqsj[0]
// tqjssj = this.queryParams.tqsj[1]
// strs1 = tqkssj.split("-"); //字符分割
// tqkssj = `\'${strs1[0]}\-${strs1[1]}\-${strs1[2]}\'`
// strs2 = tqjssj.split("-"); //字符分割
// tqjssj = `\'${strs2[0]}\-${strs2[1]}\-${strs2[2]}\'`
// }
// // if (this.queryParams.rksj) {
// // rkkssj = this.queryParams.rksj[0]
// // rkjssj = this.queryParams.rksj[1]
// // }
// this.send(`printPdfAj(${asjbh},${xckybh},${unitcode},${tqkssj},${tqjssj},${page},${limit})`)
// console.log(`printPdfAj(${asjbh},${xckybh},${unitcode},${tqkssj},${tqjssj},${page},${limit})`, '打印参数')
// } else if (this.tpl == 3) {
// let unitcode = `\'\'`
// let srcbarcode = `\'\'`
// let destbarcode = `\'\'`
// let querytype = `\'\'`
// let startTime = `\'\'`
// let endTime = `\'\'`
// // let page = this.currPage
// let page = total == 10 ? this.currPage : 1
// let limit = total
// this.queryParams.rddw ? unitcode = `\'${this.queryParams.rddw}\'` : unitcode = `\'\'`
// this.queryParams.ytmh ? srcbarcode = `\'${this.queryParams.ytmh}\'` : srcbarcode = `\'\'`
// this.queryParams.mbtmh ? destbarcode = `\'${this.queryParams.mbtmh}\'` : destbarcode = `\'\'`
// this.queryParams.cxlx ? querytype = this.queryParams.cxlx : querytype = `\'\'`
// // this.queryParams.qzsj ? startTime = this.queryParams.qzsj[0] : startTime = `\'\'`
// // this.queryParams.qzsj ? endTime = this.queryParams.qzsj[1] : endTime = `\'\'`
// var strs1 = new Array(); //定义一数组
// var strs2 = new Array(); //定义一数组
// if (this.queryParams.qzsj) {
// startTime = this.queryParams.qzsj[0]
// endTime = this.queryParams.qzsj[1]
// strs1 = startTime.split("-"); //字符分割
// startTime = `\'${strs1[0]}\-${strs1[1]}\-${strs1[2]}\'`
// strs2 = endTime.split("-"); //字符分割
// endTime = `\'${strs2[0]}\-${strs2[1]}\-${strs2[2]}\'`
// } else {
// startTime = `\'\'`
// endTime = `\'\'`
// }
// this.send(`printPdfLt(${unitcode},${srcbarcode},${destbarcode},${querytype},${startTime},${endTime},${page},${limit})`)
// console.log(`printPdfLt(${unitcode},${srcbarcode},${destbarcode},${querytype},${startTime},${endTime},${page},${limit})`, '打印参数')
// }
// this.$message.success('正在准备打印,请稍等')
},
getFileName() {
var date = new Date()
var year = date.getFullYear() //年 ,从 Date 对象以四位数字返回年份
var month = date.getMonth() + 1 //月 ,从 Date 对象返回月份 (0 ~ 11) ,date.getMonth()比实际月份少 1 个月
var day = date.getDate() //日 ,从 Date 对象返回一个月中的某一天 (1 ~ 31)
var hours = date.getHours() //小时 ,返回 Date 对象的小时 (0 ~ 23)
var minutes = date.getMinutes() //分钟 ,返回 Date 对象的分钟 (0 ~ 59)
var seconds = date.getSeconds() //秒 ,返回 Date 对象的秒数 (0 ~ 59)
//修改月份格式
if (month >= 1 && month <= 9) {
month = '0' + month
}
//修改日期格式
if (day >= 0 && day <= 9) {
day = '0' + day
}
//修改小时格式
if (hours >= 0 && hours <= 9) {
hours = '0' + hours
}
//修改分钟格式
if (minutes >= 0 && minutes <= 9) {
minutes = '0' + minutes
}
//修改秒格式
if (seconds >= 0 && seconds <= 9) {
seconds = '0' + seconds
}
this.$message.success('正在准备打印,请稍等')
//获取当前系统时间 格式(yyyy-mm-dd hh:mm:ss)
var currentFormatDate =
year + '' + month + '' + day + '' + hours + '' + minutes + '' + seconds
return currentFormatDate
},
dcbb(url, params) {
// 导出报表
this.$axios
.post(url, params, {
responseType: 'blob',
})
.then((response) => {
// if (res.data.code == 0) {
// console.log('开始')
// var elink = document.createElement('a');
// let wjmc = this.getFileName();
// elink.download = `${wjmc}.xls`;
// elink.style.display = 'none';
// var blob = new Blob([res.data.ret.body], { type: 'application/vnd.ms-excel' });
// elink.href = URL.createObjectURL(blob);
// document.body.appendChild(elink);
// elink.click();
// document.body.removeChild(elink);
// }
if (response.status === 200) {
if (response.data.code) {
this.$message.error(response.data.message)
} else {
var elink = document.createElement('a')
let wjmc = this.getFileName()
elink.download = `${wjmc}.xls`
elink.style.display = 'none'
var blob = new Blob([response.data], {
type: 'application/vnd.ms-excel',
})
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
document.body.removeChild(elink)
}
} else {
this.$message.error(response.data.message)
}
})
},
exportReport (val, total = 10) { // 导出
console.log(val, 'val')
console.log(total, '导出当前页 或 全部页')
exportReport(val, page = '') {
// 导出
if (this.tpl == 1) {
// 采集信息统计模板
let url1 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Fcj.cpt&status=${this.status}`
let params = {
collectTime: '',
collectUnit: '',
collectType: '',
}
if (this.queryParams.unitcode) {
url1 += `&unitcode=%27${this.queryParams.unitcode}%27`
params.collectUnit = this.queryParams.unitcode
} else {
url1 += `&unitcode=%27540000000000%27`
// this.queryParams.unitcode = 540000000000
params.collectUnit = '540000000000'
}
if (this.queryParams.sj) {
url1 += `&sj=%27${this.queryParams.sj}%27`
} else {
var now = new Date();
var year = now.getFullYear(); //得到年份
var month = now.getMonth(); //得到月份
var defaultDate = `${year}-${month + 1}`;
url1 += `&sj=%27${defaultDate}%27`
// this.queryParams.sj = defaultDate
params.collectTime = this.queryParams.sj
}
if (this.queryParams.code) {
url1 += `&type=${this.queryParams.code}`
} else {
url1 += `&type=0`
params.collectType = this.queryParams.code
}
// url1 += `#/report`
url1 += `&format=${val}`
this.fr_cpt_url = url1;
let URL = '/api/report/export/collectInformation'
this.dcbb(URL, params)
} else if (this.tpl == 2) {
this.hqaj()
// 案件信息统计模板
let url2 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Faj.cpt`
console.log(this.queryParams, 'this.queryParamsthis.queryParamsthis.queryParams')
if (this.queryParams.asjbh) {
url2 += `&asjbh=%27${this.queryParams.asjbh}%27`
} else {
url2 += `&asjbh=%27%27`
let params = {
collectionUnit: '',
startDate: '',
endDate: '',
asjbh: '',
kybh: '',
page: {
currPage: page,
pageSize: 10,
},
}
if (this.queryParams.tqsj) {
url2 += `&tqkssj=%27${this.queryParams.tqsj[0]}%27&tqjssj=%27${this.queryParams.tqsj[1]}%27`
if (page == '') {
delete params.page
}
// if (this.queryParams.rksj) {
// url2 += `&rkkssj=%27${this.queryParams.rksj[0]}%27&rkjssj=%27${this.queryParams.rksj[1]}%27`
// }
if (this.queryParams.unitcode) {
url2 += `&unitcode=%27${this.queryParams.unitcode}%27`
}
if (this.queryParams.kybh) {
url2 += `&xckybh=%27${this.queryParams.kybh}%27`
params.collectionUnit = this.queryParams.unitcode
if (this.queryParams.tqsj) {
params.startDate = this.queryParams.tqsj[0]
params.endDate = this.queryParams.tqsj[1]
}
let page = total == 10 ? this.currPage : 1
url2 += `&page=${page}&limit=${total}`
url2 += `&format=${val}`
this.fr_cpt_url = url2;
params.asjbh = this.queryParams.asjbh
params.kybh = this.queryParams.kybh
let URL = '/api/report/export/caseInformation'
this.dcbb(URL, params)
} else if (this.tpl == 3) {
this.hqbz()
// 城市比中明细复核统计
let url3 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Flt.cpt&`
// http://localhost:8075/webroot/decision/view/report?viewlet=lt.cpt&srcbarcode=%27%27&destbarcode=%27%27#/report&op=read
if (this.queryParams.cxlx) {
url3 += `&querytype=${this.queryParams.cxlx}`
let params = {
startTime: '',
endTime: '',
queyType: '',
srcBarcode: '',
destBarcode: '',
unitCode: '',
page: {
currPage: page,
pageSize: 10,
},
}
if (this.queryParams.rddw) {
url3 += `&unitcode=%27${this.queryParams.rddw}%27`
if (page == '') {
delete params.page
}
if (this.queryParams.qzsj) {
url3 += `&startTime=%27${this.queryParams.qzsj[0]}%27&endTime=%27${this.queryParams.qzsj[1]}%27`
}
if (this.queryParams.ytmh) {
url3 += `&srcbarcode=%27${this.queryParams.ytmh}%27`
} else {
url3 += `&srcbarcode=%27%27`
}
if (this.queryParams.mbtmh) {
url3 += `&destbarcode=%27${this.queryParams.mbtmh}%27`
} else {
url3 += `&destbarcode=%27%27`
params.startTime = this.queryParams.qzsj[0]
params.endTime = this.queryParams.qzsj[1]
}
let page = total == 10 ? this.currPage : 1
url3 += `&page=${page}&limit=${total}`
// url3 += `#/report&op=read`
url3 += `&format=${val}`
this.fr_cpt_url = url3;
params.queyType = this.queryParams.cxlx
params.srcBarcode = this.queryParams.ytmh
params.destBarcode = this.queryParams.mbtmh
params.unitCode = this.queryParams.rddw
let URL = '/api/report/export/hitResultInformation'
this.dcbb(URL, params)
}
console.log(this.fr_cpt_url, '查询 this.fr_cpt_url')
this.$message.success('正在准备导出,请稍等')
// if (this.tpl == 1) {
// // 采集信息统计模板
// let url1 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Fcj.cpt&status=${this.status}`
// if (this.queryParams.unitcode) {
// url1 += `&unitcode=%27${this.queryParams.unitcode}%27`
// } else {
// url1 += `&unitcode=%27540000000000%27`
// // this.queryParams.unitcode = 540000000000
// }
// if (this.queryParams.sj) {
// url1 += `&sj=%27${this.queryParams.sj}%27`
// } else {
// var now = new Date();
// var year = now.getFullYear(); //得到年份
// var month = now.getMonth(); //得到月份
// var defaultDate = `${year}-${month + 1}`;
// url1 += `&sj=%27${defaultDate}%27`
// // this.queryParams.sj = defaultDate
// }
// if (this.queryParams.code) {
// url1 += `&type=${this.queryParams.code}`
// } else {
// url1 += `&type=0`
// }
// // url1 += `#/report`
// url1 += `&format=${val}`
// this.fr_cpt_url = url1;
// } else if (this.tpl == 2) {
// this.hqaj()
// // 案件信息统计模板
// let url2 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Faj.cpt`
// console.log(this.queryParams, 'this.queryParamsthis.queryParamsthis.queryParams')
// if (this.queryParams.asjbh) {
// url2 += `&asjbh=%27${this.queryParams.asjbh}%27`
// } else {
// url2 += `&asjbh=%27%27`
// }
// if (this.queryParams.tqsj) {
// url2 += `&tqkssj=%27${this.queryParams.tqsj[0]}%27&tqjssj=%27${this.queryParams.tqsj[1]}%27`
// }
// // if (this.queryParams.rksj) {
// // url2 += `&rkkssj=%27${this.queryParams.rksj[0]}%27&rkjssj=%27${this.queryParams.rksj[1]}%27`
// // }
// if (this.queryParams.unitcode) {
// url2 += `&unitcode=%27${this.queryParams.unitcode}%27`
// }
// if (this.queryParams.kybh) {
// url2 += `&xckybh=%27${this.queryParams.kybh}%27`
// }
// let page = total == 10 ? this.currPage : 1
// url2 += `&page=${page}&limit=${total}`
// url2 += `&format=${val}`
// this.fr_cpt_url = url2;
// } else if (this.tpl == 3) {
// this.hqbz()
// // 城市比中明细复核统计
// let url3 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Flt.cpt&`
// // http://localhost:8075/webroot/decision/view/report?viewlet=lt.cpt&srcbarcode=%27%27&destbarcode=%27%27#/report&op=read
// if (this.queryParams.cxlx) {
// url3 += `&querytype=${this.queryParams.cxlx}`
// }
// if (this.queryParams.rddw) {
// url3 += `&unitcode=%27${this.queryParams.rddw}%27`
// }
// if (this.queryParams.qzsj) {
// url3 += `&startTime=%27${this.queryParams.qzsj[0]}%27&endTime=%27${this.queryParams.qzsj[1]}%27`
// }
// if (this.queryParams.ytmh) {
// url3 += `&srcbarcode=%27${this.queryParams.ytmh}%27`
// } else {
// url3 += `&srcbarcode=%27%27`
// }
// if (this.queryParams.mbtmh) {
// url3 += `&destbarcode=%27${this.queryParams.mbtmh}%27`
// } else {
// url3 += `&destbarcode=%27%27`
// }
// let page = total == 10 ? this.currPage : 1
// url3 += `&page=${page}&limit=${total}`
// // url3 += `#/report&op=read`
// url3 += `&format=${val}`
// this.fr_cpt_url = url3;
// }
this.$message.success(this.$t('Tjbb.preparing_to_export_please_wait'))
},
onChange (val, type = 0) {
onChange(val, type = 0) {
if (val == 1) {
this.formTemplate = cjxxmb;
this.formTemplate = cjxxmb
this.queryParams = {
sj: null,
unitcode: "",
unitcode: '',
code: '',
}
document.getElementsByTagName('body')[0].style.setProperty('--height', '37.5rem');
document
.getElementsByTagName('body')[0]
.style.setProperty('--height', '37.5rem')
this.height = '37.5rem'
} else if (val == 2) {
this.formTemplate = ajxxmb;
this.formTemplate = ajxxmb
this.queryParams = {
tqsj: null,
// rksj: null,
unitcode: '',
// cjfs: '',
asjbh: '',
kybh: '',
}
this.hqaj()
document.getElementsByTagName('body')[0].style.setProperty('--height', '33.125rem');
document
.getElementsByTagName('body')[0]
.style.setProperty('--height', '33.125rem')
this.height = '33.125rem'
} else if (val == 3) {
this.formTemplate = dsbzmb;
this.formTemplate = dsbzmb
this.queryParams = {
qzsj: null,
cxlx: '',
......@@ -698,249 +1101,335 @@ export default {
rddw: '',
}
this.hqbz()
document.getElementsByTagName('body')[0].style.setProperty('--height', '33.125rem');
document
.getElementsByTagName('body')[0]
.style.setProperty('--height', '33.125rem')
this.height = '33.125rem'
}
console.log(val);
this.$forceUpdate()
if (type = 0) {
if ((type = 0)) {
this.rz()
}
this.handleQuery()
},
handleQuery (page = 1) {
getData(url, params) {
this.$axios.post(url, params).then((res) => {
this.total = res.data.ret.total
if (this.tpl == 1) {
this.tableData = res.data.ret
this.$nextTick(() => {
// myTable是表格的ref属性值
if (this.$refs.myTable1 && this.$refs.myTable1.doLayout) {
this.$refs.myTable1.doLayout()
}
})
} else if (this.tpl == 2) {
this.tableData = res.data.ret.caseInfoBoArrayList
this.$nextTick(() => {
// myTable是表格的ref属性值
if (this.$refs.myTable2 && this.$refs.myTable2.doLayout) {
this.$refs.myTable2.doLayout()
}
})
} else if (this.tpl == 3) {
this.tableData = res.data.ret.hitResultInfoBoArrayList
this.$nextTick(() => {
// myTable是表格的ref属性值
if (this.$refs.myTable3 && this.$refs.myTable3.doLayout) {
this.$refs.myTable3.doLayout()
}
})
}
})
},
handleQuery(page = 1) {
this.currPage = page
if (this.tpl == 1) {
// 采集信息统计模板
let url1 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Fcj.cpt&status=${this.status}`
let params = {
collectTime: '',
collectUnit: '',
collectType: '',
}
if (this.queryParams.unitcode) {
url1 += `&unitcode=%27${this.queryParams.unitcode}%27`
params.collectUnit = this.queryParams.unitcode
} else {
url1 += `&unitcode=%27540000000000%27`
// this.queryParams.unitcode = 540000000000
params.collectUnit = '540000000000'
}
if (this.queryParams.sj) {
url1 += `&sj=%27${this.queryParams.sj}%27`
} else {
var now = new Date();
var year = now.getFullYear(); //得到年份
var month = now.getMonth(); //得到月份
var defaultDate = `${year}-${month + 1}`;
url1 += `&sj=%27${defaultDate}%27`
// this.queryParams.sj = defaultDate
params.collectTime = this.queryParams.sj
}
if (this.queryParams.code) {
url1 += `&type=${this.queryParams.code}`
} else {
url1 += `&type=0`
params.collectType = this.queryParams.code
}
url1 += `#/report`
this.fr_cpt_url = url1;
$('td').css('font-size', '16px')
let URL = '/api/report/collectInformation'
this.getData(URL, params)
} else if (this.tpl == 2) {
this.hqaj()
// 案件信息统计模板
let url2 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Faj.cpt`
console.log(this.queryParams, 'this.queryParamsthis.queryParamsthis.queryParams')
if (this.queryParams.asjbh) {
url2 += `&asjbh=%27${this.queryParams.asjbh}%27`
} else {
url2 += `&asjbh=%27%27`
let params = {
collectionUnit: '',
startDate: '',
endDate: '',
asjbh: '',
kybh: '',
page: {
currPage: page,
pageSize: 10,
},
}
params.collectionUnit = this.queryParams.unitcode
if (this.queryParams.tqsj) {
url2 += `&tqkssj=%27${this.queryParams.tqsj[0]}%27&tqjssj=%27${this.queryParams.tqsj[1]}%27`
params.startDate = this.queryParams.tqsj[0]
params.endDate = this.queryParams.tqsj[1]
}
params.asjbh = this.queryParams.asjbh
params.kybh = this.queryParams.kybh
// if (this.queryParams.rksj) {
// url2 += `&rkkssj=%27${this.queryParams.rksj[0]}%27&rkjssj=%27${this.queryParams.rksj[1]}%27`
// }
if (this.queryParams.unitcode) {
url2 += `&unitcode=%27${this.queryParams.unitcode}%27`
}
if (this.queryParams.kybh) {
url2 += `&xckybh=%27${this.queryParams.kybh}%27`
}
url2 += `&page=${page}&limit=10`
this.fr_cpt_url = url2;
let URL = '/api/report/caseInformation'
this.getData(URL, params)
} else if (this.tpl == 3) {
this.hqbz()
// 城市比中明细复核统计
let url3 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Flt.cpt&`
if (this.queryParams.cxlx) {
url3 += `&querytype=${this.queryParams.cxlx}`
} else {
url3 += `&querytype=${0}`
}
if (this.queryParams.rddw) {
url3 += `&unitcode=%27${this.queryParams.rddw}%27`
let params = {
startTime: '',
endTime: '',
queyType: '',
srcBarcode: '',
destBarcode: '',
unitCode: '',
page: {
currPage: page,
pageSize: 10,
},
}
if (this.queryParams.qzsj) {
url3 += `&startTime=%27${this.queryParams.qzsj[0]}%27&endTime=%27${this.queryParams.qzsj[1]}%27`
params.startTime = this.queryParams.qzsj[0]
params.endTime = this.queryParams.qzsj[1]
}
if (this.queryParams.ytmh) {
url3 += `&srcbarcode=%27${this.queryParams.ytmh}%27`
} else {
url3 += `&srcbarcode=%27%27`
}
params.queyType = this.queryParams.cxlx
params.srcBarcode = this.queryParams.ytmh
params.destBarcode = this.queryParams.mbtmh
params.unitCode = this.queryParams.rddw
if (this.queryParams.mbtmh) {
url3 += `&destbarcode=%27${this.queryParams.mbtmh}%27`
} else {
url3 += `&destbarcode=%27%27`
}
url3 += `&page=${page}&limit=10`
url3 += `#/report&op=read`
this.fr_cpt_url = url3;
let URL = '/api/report/hitResultInformation'
this.getData(URL, params)
}
console.log(this.queryParams, 'this.queryParams')
console.log(this.fr_cpt_url, ' this.fr_cpt_url')
// if (this.tpl == 1) {
// // 采集信息统计模板
// let url1 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Fcj.cpt&status=${this.status}`
// if (this.queryParams.unitcode) {
// url1 += `&unitcode=%27${this.queryParams.unitcode}%27`
// } else {
// url1 += `&unitcode=%27540000000000%27`
// // this.queryParams.unitcode = 540000000000
// }
// if (this.queryParams.sj) {
// url1 += `&sj=%27${this.queryParams.sj}%27`
// } else {
// var now = new Date();
// var year = now.getFullYear(); //得到年份
// var month = now.getMonth(); //得到月份
// var defaultDate = `${year}-${month + 1}`;
// url1 += `&sj=%27${defaultDate}%27`
// // this.queryParams.sj = defaultDate
// }
// if (this.queryParams.code) {
// url1 += `&type=${this.queryParams.code}`
// } else {
// url1 += `&type=0`
// }
// url1 += `#/report`
// this.fr_cpt_url = url1;
// $('td').css('font-size', '16px')
// } else if (this.tpl == 2) {
// this.hqaj()
// // 案件信息统计模板
// let url2 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Faj.cpt`
// console.log(this.queryParams, 'this.queryParamsthis.queryParamsthis.queryParams')
// if (this.queryParams.asjbh) {
// url2 += `&asjbh=%27${this.queryParams.asjbh}%27`
// } else {
// url2 += `&asjbh=%27%27`
// }
// if (this.queryParams.tqsj) {
// url2 += `&tqkssj=%27${this.queryParams.tqsj[0]}%27&tqjssj=%27${this.queryParams.tqsj[1]}%27`
// }
// // if (this.queryParams.rksj) {
// // url2 += `&rkkssj=%27${this.queryParams.rksj[0]}%27&rkjssj=%27${this.queryParams.rksj[1]}%27`
// // }
// if (this.queryParams.unitcode) {
// url2 += `&unitcode=%27${this.queryParams.unitcode}%27`
// }
// if (this.queryParams.kybh) {
// url2 += `&xckybh=%27${this.queryParams.kybh}%27`
// }
// url2 += `&page=${page}&limit=10`
// this.fr_cpt_url = url2;
// } else if (this.tpl == 3) {
// this.hqbz()
// // 城市比中明细复核统计
// let url3 = `${process.env.VUE_APP_BB_IP}webroot/decision/view/report?viewlet=count%252Flt.cpt&`
// if (this.queryParams.cxlx) {
// url3 += `&querytype=${this.queryParams.cxlx}`
// } else {
// url3 += `&querytype=${0}`
// }
// if (this.queryParams.rddw) {
// url3 += `&unitcode=%27${this.queryParams.rddw}%27`
// }
// if (this.queryParams.qzsj) {
// url3 += `&startTime=%27${this.queryParams.qzsj[0]}%27&endTime=%27${this.queryParams.qzsj[1]}%27`
// }
// if (this.queryParams.ytmh) {
// url3 += `&srcbarcode=%27${this.queryParams.ytmh}%27`
// } else {
// url3 += `&srcbarcode=%27%27`
// }
// if (this.queryParams.mbtmh) {
// url3 += `&destbarcode=%27${this.queryParams.mbtmh}%27`
// } else {
// url3 += `&destbarcode=%27%27`
// }
// url3 += `&page=${page}&limit=10`
// url3 += `#/report&op=read`
// this.fr_cpt_url = url3;
// }
// console.log(this.queryParams, 'this.queryParams')
// console.log(this.fr_cpt_url, ' this.fr_cpt_url')
},
ksh () {
this.status == 1 ? this.status = 2 : this.status = 1
ksh() {
this.status == 1 ? (this.status = 2) : (this.status = 1)
this.handleQuery()
},
rz () {
rz() {
let reqParams = ''
if (this.tpl == 1) {
reqParams = '采集信息统计模板'
reqParams = this.$t('Tjbb.collection_information_statistics_template')
} else if (this.tpl == 2) {
reqParams = '案件信息统计模板'
reqParams = this.$t('Tjbb.case_information_statistics_template')
} else if (this.tpl == 3) {
reqParams = '城市比中信息复核统计模板'
reqParams = this.$t(
'Tjbb.city_comparison_information_review_statistical_template'
)
}
this.$axios
.get('/api/count/count/' + reqParams)
.then(res => {
}).catch(err => {
})
this.$axios.get('/api/count/count/' + reqParams).then((res) => {})
},
// 获取案件内容条数
hqaj () {
let url = '/api/count/getCaseCount?'
if (this.queryParams.asjbh) {
url += `&asjbh=%27${this.queryParams.asjbh}%27`
} else {
url += `&asjbh=%27%27`
}
if (this.queryParams.tqsj) {
url += `&tqkssj=%27${this.queryParams.tqsj[0]}%27&tqjssj=%27${this.queryParams.tqsj[1]}%27`
}
// if (this.queryParams.rksj) {
// url += `&rkkssj=%27${this.queryParams.rksj[0]}%27&rkjssj=%27${this.queryParams.rksj[1]}%27`
hqaj() {
// let url = '/api/count/getCaseCount?'
// if (this.queryParams.asjbh) {
// url += `&asjbh=%27${this.queryParams.asjbh}%27`
// } else {
// url += `&asjbh=%27%27`
// }
if (this.queryParams.unitcode) {
url += `&unitcode=%27${this.queryParams.unitcode}%27`
}
if (this.queryParams.kybh) {
url += `&xckybh=%27${this.queryParams.kybh}%27`
}
this.$axios
.get(url)
.then(res => {
console.log(res, '案件条数')
// this.total = res.data
if (res.data.code == 0) {
this.total = res.data.ret
} else {
this.total = 0
}
}).catch(err => {
})
// if (this.queryParams.tqsj) {
// url += `&tqkssj=%27${this.queryParams.tqsj[0]}%27&tqjssj=%27${this.queryParams.tqsj[1]}%27`
// }
// // if (this.queryParams.rksj) {
// // url += `&rkkssj=%27${this.queryParams.rksj[0]}%27&rkjssj=%27${this.queryParams.rksj[1]}%27`
// // }
// if (this.queryParams.unitcode) {
// url += `&unitcode=%27${this.queryParams.unitcode}%27`
// }
// if (this.queryParams.kybh) {
// url += `&xckybh=%27${this.queryParams.kybh}%27`
// }
// this.$axios
// .get(url)
// .then(res => {
// console.log(res, '案件条数')
// // this.total = res.data
// if (res.data.code == 0) {
// this.total = res.data.ret
// } else {
// this.total = 0
// }
// }).catch(err => {
// })
},
// 获取比中内容条数
hqbz () {
let url = '/api/count/getLitCount?'
if (this.queryParams.cxlx) {
url += `&querytype=${this.queryParams.cxlx}`
}
if (this.queryParams.rddw) {
url += `&unitcode=%27${this.queryParams.rddw}%27`
}
if (this.queryParams.qzsj) {
url += `&startTime=%27${this.queryParams.qzsj[0]}%27&endTime=%27${this.queryParams.qzsj[1]}%27`
}
if (this.queryParams.ytmh) {
url += `&srcbarcode=%27${this.queryParams.ytmh}%27`
} else {
url += `&srcbarcode=%27%27`
}
if (this.queryParams.mbtmh) {
url += `&destbarcode=%27${this.queryParams.mbtmh}%27`
} else {
url += `&destbarcode=%27%27`
}
this.$axios
.get(url)
.then(res => {
console.log(res, "比中条数")
if (res.data.code == 0) {
this.total = res.data.ret
} else {
this.total = 0
}
}).catch(err => {
})
hqbz() {
// let url = '/api/count/getLitCount?'
// if (this.queryParams.cxlx) {
// url += `&querytype=${this.queryParams.cxlx}`
// }
// if (this.queryParams.rddw) {
// url += `&unitcode=%27${this.queryParams.rddw}%27`
// }
// if (this.queryParams.qzsj) {
// url += `&startTime=%27${this.queryParams.qzsj[0]}%27&endTime=%27${this.queryParams.qzsj[1]}%27`
// }
// if (this.queryParams.ytmh) {
// url += `&srcbarcode=%27${this.queryParams.ytmh}%27`
// } else {
// url += `&srcbarcode=%27%27`
// }
// if (this.queryParams.mbtmh) {
// url += `&destbarcode=%27${this.queryParams.mbtmh}%27`
// } else {
// url += `&destbarcode=%27%27`
// }
// this.$axios
// .get(url)
// .then(res => {
// console.log(res, "比中条数")
// if (res.data.code == 0) {
// this.total = res.data.ret
// } else {
// this.total = 0
// }
// }).catch(err => {
// })
},
},
watch: {
total (newTotal) {
console.log(newTotal, "11")
total(newTotal) {
this.size = Math.ceil(newTotal / 10)
}
},
},
computed: {
params () {
let obj = {};
params() {
let obj = {}
for (let key in this.queryParams) {
console.log(key);
if (key == "type") {
if (key == 'type') {
if (!this.queryParams[key] || this.queryParams[key].length == 0) {
obj[key] = "0";
obj[key] = '0'
} else if (this.queryParams[key].length == 1) {
obj[key] = this.queryParams[key][0];
obj[key] = this.queryParams[key][0]
} else if (this.queryParams[key].length == 2) {
obj[key] = "3";
obj[key] = '3'
}
} else {
obj[key] = this.queryParams[key];
obj[key] = this.queryParams[key]
}
}
return obj;
return obj
},
},
};
}
</script>
<style lang="scss" scoped>
$height: var(--height, 37.5rem);
@mixin labelStyle {
font-size: 16px;
font-family: HarmonyOS_Sans_SC_Medium;
......@@ -948,8 +1437,9 @@ $height: var(--height, 37.5rem);
padding-left: 10px;
position: relative;
margin-left: 10px;
&::before {
content: "";
content: '';
display: inline-block;
position: absolute;
left: 0;
......@@ -965,12 +1455,14 @@ $height: var(--height, 37.5rem);
.hang {
width: 100%;
height: 100%;
.yjan {
width: 96px;
height: 32px;
border: none;
}
}
.ejan {
width: 120px;
text-align: center;
......@@ -979,6 +1471,7 @@ $height: var(--height, 37.5rem);
font-family: HarmonyOS_Sans_SC;
color: #333;
font-size: 14px;
&:hover {
color: #377fec;
}
......@@ -988,26 +1481,31 @@ $height: var(--height, 37.5rem);
width: 100%;
height: 100%;
padding: 24px;
.head {
background: #f6f8fa;
box-shadow: inset 0px 0px 3px 0px rgba(5, 95, 231, 0.2);
box-shadow: inset 0 0 3px 0 rgba(5, 95, 231, 0.2);
border-radius: 10px;
padding: 24px;
box-sizing: border-box;
display: flex;
align-items: center;
justify-content: space-between;
.el-form {
width: 1300px;
}
.cz {
align-self: flex-end;
}
.qk {
width: 72px;
height: 32px;
align-self: flex-end;
}
.cx {
width: 72px;
height: 32px;
......@@ -1017,21 +1515,46 @@ $height: var(--height, 37.5rem);
align-self: flex-end;
}
}
.content {
width: 100%;
// height: 530px;
height: $height;
}
}
.el-table .el-table__cell.gutter {
width: 0.9375rem;
border-right-width: 0;
border-bottom-width: 0;
padding: 0;
}
/deep/ .el-table {
.cell:empty::before {
content: '---';
color: gray;
}
.is-leaf {
.cell:empty::before {
content: '---';
color: gray;
}
}
}
.widthAuto /deep/ .el-form-item__content {
width: auto !important;
}
.right {
float: right;
.el-button {
/deep/ span {
cursor: pointer;
}
background: #055fe7;
border-radius: 4px;
font-family: HarmonyOS_Sans_SC;
......@@ -1042,25 +1565,31 @@ $height: var(--height, 37.5rem);
border: none;
}
}
.btns {
height: 73px;
display: flex;
justify-content: space-between;
align-items: center;
.label {
@include labelStyle();
}
.btnBox {
display: flex;
justify-content: flex-start;
align-items: center;
> div {
cursor: pointer;
box-sizing: border-box;
&:first-of-type {
font-size: 14px;
font-family: HarmonyOS_Sans_SC;
color: #055fe7;
&:hover {
color: #377fec;
}
......@@ -1074,6 +1603,7 @@ $height: var(--height, 37.5rem);
margin-right: 8px;
}
}
&:nth-of-type(2) {
width: 72px;
height: 32px;
......@@ -1085,18 +1615,21 @@ $height: var(--height, 37.5rem);
text-align: center;
line-height: 32px;
margin: 0 16px 0 24px;
&:hover {
border-color: #377fec;
color: #377fec;
}
&:active {
border-color: #044cb9;
color: #044cb9;
}
/deep/.el-dropdown {
/deep/ .el-dropdown {
width: 100%;
height: 100%;
button {
width: 100%;
height: 100%;
......@@ -1107,6 +1640,7 @@ $height: var(--height, 37.5rem);
text-align: center;
line-height: 32px;
font-family: HarmonyOS_Sans_SC;
&:hover {
border-color: #377fec;
color: #377fec;
......@@ -1119,15 +1653,17 @@ $height: var(--height, 37.5rem);
}
}
}
&:last-of-type {
box-sizing: border-box;
border-radius: 4px;
width: 96px;
height: 32px;
/deep/.el-dropdown {
/deep/ .el-dropdown {
width: 100%;
height: 100%;
button {
width: 100%;
height: 100%;
......@@ -1138,6 +1674,7 @@ $height: var(--height, 37.5rem);
text-align: center;
line-height: 32px;
font-family: HarmonyOS_Sans_SC;
&:hover {
border-color: #377fec;
color: #377fec;
......@@ -1153,43 +1690,37 @@ $height: var(--height, 37.5rem);
}
}
}
.myDropdown1 {
margin-top: 6px;
margin-left: 0px;
margin-left: 0;
width: 72px;
/*height: 100px;*/
display: block;
padding: 0px 0px;
padding: 0 0;
z-index: 499;
background: #ffffff;
border-radius: 6px;
border: 1px solid #e6e6e8;
position: absolute;
box-shadow: 0px 6px 10px 2px rgba(0, 21, 51, 0.06);
box-shadow: 0 6px 10px 2px rgba(0, 21, 51, 0.06);
}
.myDropdown2 {
margin-top: 6px;
margin-left: 0px;
margin-left: 0;
width: 96px;
/*height: 100px;*/
display: block;
padding: 0px 0px;
padding: 0 0;
z-index: 499;
background: #ffffff;
border-radius: 6px;
border: 1px solid #e6e6e8;
position: absolute;
box-shadow: 0px 6px 10px 2px rgba(0, 21, 51, 0.06);
box-shadow: 0 6px 10px 2px rgba(0, 21, 51, 0.06);
}
.myDropdown1 /deep/.el-dropdown-menu__item {
.myDropdown1 /deep/ .el-dropdown-menu__item {
width: 72px;
// height: 40px;
// display: inline-block;
// position: relative;
// z-index: 500;
// /*background: red;*/
// margin-left: 0px;
// padding-left: 10px;
display: flex;
align-items: center;
justify-content: left;
......@@ -1208,15 +1739,9 @@ $height: var(--height, 37.5rem);
background-color: #f2f7fe;
}
}
.myDropdown2 /deep/.el-dropdown-menu__item {
.myDropdown2 /deep/ .el-dropdown-menu__item {
width: 96px;
// height: 40px;
// display: inline-block;
// position: relative;
// z-index: 500;
// /*background: red;*/
// margin-left: 0px;
// padding-left: 16px;
display: flex;
align-items: center;
justify-content: left;
......@@ -1236,142 +1761,182 @@ $height: var(--height, 37.5rem);
background-color: #f2f7fe;
}
}
/deep/.el-dropdown-menu__item:focus,
/deep/ .el-dropdown-menu__item:focus,
.el-dropdown-menu__item:not(.is-disabled):hover {
color: #055fe7;
}
.el-select-dropdown__item.selected {
color: #055fe7;
}
.searchHeader {
margin-bottom: 20px;
.el-select {
width: 290px !important;
/deep/ .el-input__inner {
&::-webkit-input-placeholder {
color: #055fe7;
}
border: 1px solid #055fe7;
color: #055fe7;
}
/deep/ .el-select__caret {
color: #055fe7;
}
}
> span {
@include labelStyle();
}
}
/deep/ {
.col10 {
margin-right: 290px !important;
}
.el-form-item {
height: 32px;
margin: 5px 0;
}
.el-form-item__label {
color: #333333;
height: 32px;
line-height: 32px;
}
.el-input__icon {
line-height: 32px;
}
.el-form-item__content {
width: 290px !important;
height: 32px;
line-height: 32px;
align-items: center;
.el-select {
width: 100% !important;
.el-input__inner {
height: 32px;
}
.el-input__suffix {
line-height: 32px;
}
}
.el-input {
width: 100% !important;
.el-input__inner {
height: 32px;
}
}
.el-tooltip {
height: 32px;
}
.el-cascader {
height: 32px;
line-height: 32px;
.el-input {
height: 32px;
}
.el-input__inner {
height: 32px;
}
}
.el-range__close-icon {
height: 32px;
}
.el-range-editor {
.el-range-input {
width: calc(44% - 25px);
}
}
.el-date-editor {
height: 32px;
width: 100% !important;
.el-range-separator {
width: 30px;
}
.el-range-input {
height: 32px;
}
.el-input__inner {
box-sizing: border-box;
height: 32px;
padding-right: 60px;
}
.el-input__prefix {
left: unset;
right: 10px;
}
.el-input__suffix {
right: 30px;
}
}
.el-checkbox {
.el-checkbox__input.is-checked .el-checkbox__inner,
.el-checkbox__input.is-indeterminate .el-checkbox__inner {
background-color: #055fe7;
border-color: #055fe7;
}
.el-checkbox__label {
color: #333333;
}
}
.el-checkbox-group {
display: flex;
align-items: center;
height: 40px;
.el-checkbox.is-bordered.is-checked {
border-color: #055fe7;
background-color: #fff;
}
.el-checkbox__input.is-checked + .el-checkbox__label {
color: #055fe7;
}
.el-checkbox {
background: rgba(5, 95, 231, 0.08);
color: #666666;
.el-checkbox__label {
cursor: pointer;
}
border-radius: 20px;
.el-checkbox__input {
display: none;
}
.el-checkbox__label {
padding-left: 5px;
}
......@@ -1379,31 +1944,34 @@ $height: var(--height, 37.5rem);
}
}
}
.block {
position: absolute;
bottom: 27px;
// width: calc(100vw - 367px);
width: 1592px;
// justify-content: space-between;
// align-items: center;
.record {
font-size: 14px;
font-family: HarmonyOS_Sans_SC;
color: #666666;
}
.paging {
float: right;
}
}
// 滚动条的宽度
/deep/.content-container::-webkit-scrollbar {
/deep/ .content-container::-webkit-scrollbar {
width: 6px; // 横向滚动条
height: 6px; // 纵向滚动条 必写
}
// 滚动条的滑块
/deep/.content-container::-webkit-scrollbar-thumb {
/deep/ .content-container::-webkit-scrollbar-thumb {
background-color: #dadde0;
border-radius: 3px;
}
@import "@/assets/css/globalBase.scss";
@import '@/assets/css/globalBase.scss';
</style>
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