2025-07-22 16:39:17 +08:00
|
|
|
|
DEFAULT_BASE_INFO = { #项目基本信息
|
|
|
|
|
"turbine_id" : None,
|
|
|
|
|
}
|
2025-07-29 18:01:15 +08:00
|
|
|
|
|
2025-07-03 17:50:42 +08:00
|
|
|
|
DEFAULT_BAOGAO_INFO = {
|
|
|
|
|
#目录
|
|
|
|
|
'shengcheng_dir': "", #报告生成的路径
|
2025-07-07 18:05:03 +08:00
|
|
|
|
|
|
|
|
|
"dianxing_enum" : "TYPICAL",
|
|
|
|
|
"quexian_enum" : "DEFECT",
|
2025-07-09 17:19:59 +08:00
|
|
|
|
"other_enum" : "OTHER",
|
2025-07-07 18:05:03 +08:00
|
|
|
|
"waibu_enum" : "out_work",
|
|
|
|
|
"neibu_enum" : "in_work",
|
|
|
|
|
"fanglei_enum" : "lightning-protection-work",
|
|
|
|
|
"if_waibu" : True,
|
|
|
|
|
"if_neibu" : True,
|
|
|
|
|
"if_fanglei" : True,
|
2025-07-08 18:17:02 +08:00
|
|
|
|
"userName" : "admin",
|
|
|
|
|
"baogaoCheck" : "未审核",
|
2025-07-03 17:50:42 +08:00
|
|
|
|
'key_words': '缺,损,裂,脱,污', #关键字,用于汇总图的名字包含缺陷时标红,匹配逻辑为正则匹配单个字则为红 后续可优化
|
2025-07-07 18:05:03 +08:00
|
|
|
|
|
2025-07-22 16:39:17 +08:00
|
|
|
|
"shigong_fangan" : None,
|
2025-07-03 17:50:42 +08:00
|
|
|
|
'jiancha_renyuan': '张三',
|
2025-07-22 16:39:17 +08:00
|
|
|
|
"check_date" : None,
|
2025-07-03 17:50:42 +08:00
|
|
|
|
}
|
2025-07-08 18:17:02 +08:00
|
|
|
|
|
|
|
|
|
class SHIGONG_FANGAN_ENUM :
|
|
|
|
|
class WAIBU:
|
|
|
|
|
GONGZUO_NEIRONG = "无人机叶片外观巡检"
|
|
|
|
|
RENYUAN_PEIZHI = "1人;主检飞手1人"
|
|
|
|
|
SHEBEI_PEIZHI = "1、大疆无人机1台(M350rtk,M300rtk,M30T,M30,精灵4PRO)2、大疆精灵4PRO+索尼A7R2机身+索尼200-600mm镜头/适马150-600mm镜头"
|
|
|
|
|
SHIGONG_FANGAN = ""
|
|
|
|
|
class NEIBU:
|
|
|
|
|
GONGZUO_NEIRONG = "叶片内部检查"
|
|
|
|
|
RENYUAN_PEIZHI = "2人;轮毂作业检查2人"
|
|
|
|
|
SHEBEI_PEIZHI = "1、人工检查:照明设备2套,视频记录手机2台,含氧量监测仪1台,电动扳手2套,卷尺1个。2、爬壁机器人检查:无人作业校车+视频图传1套,照明设备2套,含氧量监测仪1台,电动扳手2套,卷尺1个。"
|
|
|
|
|
SHIGONG_FANGAN = ""
|
|
|
|
|
class FANGLEI:
|
|
|
|
|
class YEPIAN:
|
|
|
|
|
GONGZUO_NEIRONG = "无人机叶片防雷导通测试"
|
|
|
|
|
RENYUAN_PEIZHI = "2人;主检飞手1人,副检抄表1人"
|
|
|
|
|
SHEBEI_PEIZHI = "1四轴电阻无人机1套,电子微欧计1台,视频记录手机1台"
|
|
|
|
|
SHIGONG_FANGAN = ""
|
|
|
|
|
class DIAOLAN:
|
|
|
|
|
GONGZUO_NEIRONG = "无人吊篮叶片导通测试(含机舱设备、)"
|
|
|
|
|
RENYUAN_PEIZHI = "3人,轮毂机舱作业1人,揽风绳作业1人,无人设备操作员及抄表1人"
|
|
|
|
|
SHEBEI_PEIZHI = "无人吊篮系统1套(爬绳器+接触平台)、电子微欧计1套,视频记录手机1台,对讲机2台"
|
|
|
|
|
SHIGONG_FANGAN = ""
|
|
|
|
|
class SHESHI:
|
|
|
|
|
GONGZUO_NEIRONG = "风机基础、办公楼、变电站防雷接地检测及浪涌保护器测试"
|
|
|
|
|
RENYUAN_PEIZHI = "1人;抄表人员1人,检测人员1人,监护1人。"
|
|
|
|
|
SHEBEI_PEIZHI = "接地电阻测试仪1套、SPD测试仪1套、对讲机2个、"
|
|
|
|
|
SHIGONG_FANGAN = ""
|
|
|
|
|
FEISHOURENYUAN_PEIZHI = "1人;主检飞手1人"
|
|
|
|
|
LUNGUZUOYERENYUAN_PEIZHI = "2人;轮毂作业检查2人"
|
2025-07-29 18:01:15 +08:00
|
|
|
|
|
|
|
|
|
from docx.oxml.ns import qn
|
|
|
|
|
from docx.shared import Pt
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class TEMPLATE_HEADER:
|
|
|
|
|
|
|
|
|
|
class JINFENG_HEADER:
|
|
|
|
|
ENUM = 'JF'
|
|
|
|
|
PIC_DIR = './muban/jf_header.png'
|
|
|
|
|
PARA =' Q/GW 3LC-FJFW21-2022-BY14'
|
|
|
|
|
QN = qn('w:eastAsia')
|
|
|
|
|
FONT = 'Arial'
|
|
|
|
|
PT = Pt(9)
|
2025-07-31 18:10:56 +08:00
|
|
|
|
class FANGLEI:
|
|
|
|
|
TYPICAL_LIST = [
|
|
|
|
|
"防雷导通测试\n叶尖至塔基测试阻值({Resistance} mΩ)",
|
|
|
|
|
"防雷导通测试\n叶尖与无人吊篮平台接触良好",
|
|
|
|
|
"防雷导通测试\n叶尖至塔基检测导线线组值"
|
|
|
|
|
]
|
|
|
|
|
class WAIBU:
|
|
|
|
|
TYPICAL_LIST = [
|
|
|
|
|
"外观检查(迎、背风面是否有漆面脱落、裂纹等)",
|
|
|
|
|
"外观检查(前、后缘;如前缘漆面脱落、合模缝开裂等)",
|
|
|
|
|
"叶片防雨环检查",
|
|
|
|
|
"叶尖接闪器、排水孔检查,如接闪器损伤、雷击熔融;流水孔堵塞",
|
|
|
|
|
]
|
|
|
|
|
class NEIBU:
|
|
|
|
|
TYPICAL_LIST = [
|
|
|
|
|
"叶片铭牌",
|
|
|
|
|
"根部检查(挡板、盖板检查是否损坏、金属件是否丢失等)",
|
|
|
|
|
"避雷系统检查(避雷线是否断裂、雷电记录卡是否缺失等)",
|
|
|
|
|
"前后缘检查(前缘粘接及补强是否有开裂、裂纹)",
|
|
|
|
|
"上下蒙皮检查(蒙皮是否有褶皱、发白、折痕、分层、裂纹等)",
|
|
|
|
|
"腹板检查(腹板是否变形、偏移,腹板粘接是否开裂、裂纹等)",
|
|
|
|
|
]
|
2025-07-29 18:01:15 +08:00
|
|
|
|
|
|
|
|
|
class DT_HEADER:
|
|
|
|
|
ENUM = 'DT'
|
|
|
|
|
PIC_DIR = './muban/dt_header.png'
|
|
|
|
|
PARA = ''
|
|
|
|
|
QN = qn('w:eastAsia')
|
|
|
|
|
FONT = '宋体(中文正文)'
|
|
|
|
|
PT = Pt(9)
|
|
|
|
|
|
|
|
|
|
MUBAN_DIR = 'muban'
|
|
|
|
|
|
|
|
|
|
JF_HEIGHT = 297
|
|
|
|
|
JF_WIDTH = 210
|
|
|
|
|
JF_L_MARGIN = 20
|
|
|
|
|
JF_R_MARGIN = 20
|
|
|
|
|
JF_T_MARGIN = 10
|
|
|
|
|
JF_B_MARGIN = 10
|
|
|
|
|
|
|
|
|
|
JINFENG_COMPANY = "金风科技股份有限公司"
|
|
|
|
|
|
|
|
|
|
#json表格样式宏定义
|
|
|
|
|
STYLE_CONFIG = {
|
|
|
|
|
"alignment": "center",
|
|
|
|
|
"font": {
|
|
|
|
|
"name": "宋体",
|
2025-07-31 18:10:56 +08:00
|
|
|
|
"size": 8,
|
2025-07-29 18:01:15 +08:00
|
|
|
|
"bold": False,
|
2025-07-03 17:50:42 +08:00
|
|
|
|
},
|
2025-07-29 18:01:15 +08:00
|
|
|
|
"border": {
|
|
|
|
|
"top": {"style": "single", "size": "4", "color": "000000"},
|
|
|
|
|
"bottom": {"style": "single", "size": "4", "color": "000000"},
|
|
|
|
|
"left": {"style": "single", "size": "4", "color": "000000"},
|
|
|
|
|
"right": {"style": "single", "size": "4", "color": "000000"}
|
2025-07-03 17:50:42 +08:00
|
|
|
|
},
|
2025-07-29 18:01:15 +08:00
|
|
|
|
"shading": {
|
|
|
|
|
"color": "FFFFFF"
|
2025-07-03 17:50:42 +08:00
|
|
|
|
}
|
2025-07-30 17:31:18 +08:00
|
|
|
|
}
|
|
|
|
|
TITLE_STYLE_CONFIG = {
|
|
|
|
|
"alignment": "center",
|
|
|
|
|
"font": {
|
|
|
|
|
"name": "宋体",
|
2025-07-31 18:10:56 +08:00
|
|
|
|
"size": 9,
|
2025-07-30 17:31:18 +08:00
|
|
|
|
"bold": False,
|
|
|
|
|
},
|
|
|
|
|
"border": {
|
|
|
|
|
"top": {"style": "single", "size": "4", "color": "000000"},
|
|
|
|
|
"bottom": {"style": "single", "size": "4", "color": "000000"},
|
|
|
|
|
"left": {"style": "single", "size": "4", "color": "000000"},
|
|
|
|
|
"right": {"style": "single", "size": "4", "color": "000000"}
|
|
|
|
|
},
|
|
|
|
|
"shading": {
|
|
|
|
|
"color": "FFFFFF"
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-07-31 18:10:56 +08:00
|
|
|
|
|
|
|
|
|
|
2025-07-30 17:31:18 +08:00
|
|
|
|
DEFECT_TABLE_TITLE = '叶片故障信息表'
|
|
|
|
|
DEFECT_TABLE = ['机组号', '叶片编号', '损伤名称', '损坏描述', '面积/S', '备注']
|
|
|
|
|
|
|
|
|
|
USE_TOOL_TABLE_TITLE = '使用工器具记录'
|
|
|
|
|
USE_TOOL_TABLE = ['序号', '工器具名称', '型号规格', '数量', '用途', '备注']
|
|
|
|
|
class USE_TOOL_ENUM:
|
|
|
|
|
class OUT:
|
|
|
|
|
LIST = [
|
|
|
|
|
["无人机", "大疆 M30", "1", "叶片外观检查观测"]
|
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
class LIGHT:
|
|
|
|
|
LIST = [
|
|
|
|
|
["智能无人悬吊系统", "DT01", "1", "叶片导通测试"],
|
|
|
|
|
["检测导线", "/", "3", "叶片导通测试"],
|
|
|
|
|
["电阻仪", "S1950", "1", "叶片导通测试"]
|
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
class IN:
|
|
|
|
|
LIST = [
|
|
|
|
|
["头灯", "/", "2", "轮毂叶片内照明"],
|
|
|
|
|
["含氧量检测仪", "/", "1", "叶片内部环境检测"],
|
|
|
|
|
["活动扳手", "17-19", "2", "拆卸·禁锢盖板螺栓"],
|
|
|
|
|
["手机", "/", "2", "拍照记录"],
|
|
|
|
|
["叶片内部爬壁机器人", "DT02", "1", "拍照记录"]
|
2025-07-31 18:10:56 +08:00
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
from enum import Enum
|
|
|
|
|
from docx.shared import RGBColor
|
|
|
|
|
class DocxColors(Enum):
|
|
|
|
|
"""常用颜色枚举"""
|
|
|
|
|
BLACK = RGBColor(0, 0, 0)
|
|
|
|
|
WHITE = RGBColor(255, 255, 255)
|
|
|
|
|
RED = RGBColor(255, 0, 0)
|
|
|
|
|
GREEN = RGBColor(0, 255, 0)
|
|
|
|
|
BLUE = RGBColor(0, 0, 255)
|
|
|
|
|
YELLOW = RGBColor(255, 255, 0)
|
|
|
|
|
PURPLE = RGBColor(128, 0, 128)
|
|
|
|
|
ORANGE = RGBColor(255, 165, 0)
|
|
|
|
|
GRAY = RGBColor(128, 128, 128)
|
|
|
|
|
DARK_RED = RGBColor(139, 0, 0)
|
|
|
|
|
DARK_GREEN = RGBColor(0, 100, 0)
|
|
|
|
|
DARK_BLUE = RGBColor(0, 0, 139)
|
|
|
|
|
LIGHT_BLUE = RGBColor(173, 216, 230)
|
|
|
|
|
PINK = RGBColor(255, 192, 203)
|
|
|
|
|
BROWN = RGBColor(165, 42, 42)
|
|
|
|
|
|
|
|
|
|
# 微软Office常用颜色
|
|
|
|
|
MS_BLUE = RGBColor(46, 116, 181)
|
|
|
|
|
MS_ORANGE = RGBColor(247, 150, 70)
|
|
|
|
|
MS_GREEN = RGBColor(80, 175, 74)
|
|
|
|
|
MS_RED = RGBColor(217, 83, 79)
|
|
|
|
|
MS_GRAY = RGBColor(166, 166, 166)
|
|
|
|
|
|
|
|
|
|
# 获取颜色值
|
|
|
|
|
@property
|
|
|
|
|
def rgb(self):
|
|
|
|
|
return self.value
|
|
|
|
|
|
|
|
|
|
HEADING_1_CONFIG = {
|
|
|
|
|
"alignment": "left",
|
|
|
|
|
"font" : {
|
|
|
|
|
"name" : "宋体",
|
|
|
|
|
"size" : Pt(11),
|
|
|
|
|
"bold" : True,
|
|
|
|
|
"color" : DocxColors.BLACK.rgb
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
HEADING_2_CONFIG = {
|
|
|
|
|
"alignment": "left",
|
|
|
|
|
"font" : {
|
|
|
|
|
"name" : "宋体",
|
|
|
|
|
"size" : Pt(10),
|
|
|
|
|
"bold" : True,
|
|
|
|
|
"color" : DocxColors.BLACK.rgb
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
HEADING_3_CONFIG = {
|
|
|
|
|
"alignment": "left",
|
|
|
|
|
"font" : {
|
|
|
|
|
"name" : "宋体",
|
|
|
|
|
"size" : Pt(9),
|
|
|
|
|
"bold" : True,
|
|
|
|
|
"color" : DocxColors.BLACK.rgb
|
|
|
|
|
},
|
|
|
|
|
}
|