立项原因: 装备生产测试版本的发布前需要开发人员做自验证, 测试人员做白盒测试, 集成测试组做集成测试. 这个过程中对于一个装备版本对应的多个产品型号, 每一个产品型号都需要做mes数据维护, 需要花费大量时间. 遂开发一个快速维护多平台mes的客户端给同事间使用.
点击空白处退出提示
立项原因: 装备生产测试版本的发布前需要开发人员做自验证, 测试人员做白盒测试, 集成测试组做集成测试. 这个过程中对于一个装备版本对应的多个产品型号, 每一个产品型号都需要做mes数据维护, 需要花费大量时间. 遂开发一个快速维护多平台mes的客户端给同事间使用.
项目有6个功能模块: 图形界面模块、登陆huawei/yinwang域账号模块、 mes数据(soap)生成模块、数据导入导出模块、mes/hemup/yinwang-mes数据平台交互模块、多线程日志模块
图形界面模块: 使用win32接口的消息函数和vstudio的资源文件写的, 包含 文本输入、列表输入、树输入、和一些对话框
登陆模块: 使用libcurl+json.c做的, 主要是一个抓包模拟的, 步骤上就是, 访问内网的登陆服务器, 获取随机数和公钥证书等, 免密登陆就是找spes验证, 密码登陆就是模拟带浏览器指纹的报文.
mes数据(soap)生成模块: 就是对于需要维护的5个服务端, 分别生成对应的数据对. 都是soap的, 就是按照装备的生产测试脚本的需要去分别对各个网站做数据生成.
导入导出模块: 就是一些csv/文本类的, 数据落盘. 逻辑上就是把界面上的数据生成个副本给导入导出线程.
mes/hemup/yinwang-mes数据平台交互模块: 就是把数据生成模块的数据, 做下xml的二层字符切换, http1.1包封装, http2.0的交互, http2的头加解压, cookies包装进登陆信息这些交互上的. 逻辑上是, 生成个新线程, 去统一做登陆(登陆有时效),数据生成, 数据上传, 用户界面进度同步的话就和日志模块很像只不过数据是给一个小窗口.
多线程日志模块: 一个生产者消费者的和消息处理线程后面生成的第一个子线程. 导入/导出/数据上云 这些子线程的日子都是通过一个全局锁结构体(包含一个mutex锁和两个读写锁)、一个全局句柄、一块环形缓冲区来做通信同步的.
办公自动话的工具, 全部是自己一个人搞得. 代码是公司的. 在内网黄区办公电脑上. 没有什么可以证明的...所以图例是假的,从个人电脑上随便截取的




评论