- 博客(321)
- 收藏
- 关注
原创 界面规范3-输入界面
输入界面核心是<el-form> <el-form-item>,但是其原始版本没有表格线。代码如下:<el-form :class="inputTable">outline: none;/* 去掉聚焦时的边框或阴影*/box-shadow: none;/* 去掉聚焦时的阴影*/border: none;/* 去掉边框 */1、整个表格外边采用粗线。3、录入控件去掉边框。
2025-07-31 05:10:22
101
原创 开发指南125-HTML DOM事件
在按键被按下并释放时触发(通常用于字符输入)在页面或某个元素加载完成后或离开后触发事件。用于在元素的值发生变化时触发事件。1、onload和onunload。在键盘按键被按下时触发,在键盘按键被释放时触发,
2025-07-28 22:49:53
352
原创 org.hibernate.hql.internal.ast.QuerySyntaxException: Invalid path
很不幸遇到了这样的提示。搜索后都说是执行的hsql语法错。这个不用搜素都知道,关键要的是哪里错了。之前这里没有问题,今天新增了c1.level2条件后报的错,删除就没错,加上就报错。仔细对比 cl.level1='026303'发现了端倪,开发人员看错了。还有容易错的是0和O。
2025-07-28 20:39:27
189
原创 界面规范3-列表下
表格占满界面空间,内容多时,内部出滚动条,只局部滚动内容。一般字体使用color: #323232。重要内容采用红字字体,如状态。有链接的采用蓝色字体。
2025-07-26 15:00:43
212
原创 界面规范2-列表上
内部:border-right: 1px solid #d0e0e0。外边:border: 2px solid #d0e0e0。鼠标滑过行:background-color: #D9E1E6。偶数行:background-color: #f2f2f2。/* 修改表格内部竖线颜色 *//* 修改表格内行线颜色 *//* 修改表格边框颜色 */
2025-07-26 14:54:08
409
原创 清理linux下Oracle日志
注意,请使用rman工具,不建议手动处理。以上操作清理的空间有限,真正的大头不在这里,在归档日志!注意保险起见可以先备份alert_orcl.log。1、使用oracle用户登录系统(linux)4、删除指定时间前的归档日志,这里用90天。2、登录到 RMAN。3、校验归档日志状态。
2025-07-24 12:15:28
334
原创 界面规范1-综述
先阶段,不可能所有应用都迁移到平台上了,必然有很多异构系统。在不改变程序逻辑的前提下,通过修改其css来尽可能接近平台统一界面规范。1、常用变量定义在src\styles\qlm-uivariables.scss,如。3、平台使用的elmentui的样式统一进行定义,如引用其他组件需要自行控制。平台内的所有系统应该有相同的界面规范,包含样式,交互模式,操作习惯等等。2、平台级别的统一在src\styles\qlmStyle.scss中。平台内的软件可以通过统一的css进行控制。平台可以使用如下两套图标。
2025-07-24 00:05:43
106
原创 无效的标记: --release 1.8
****版本过高会自动带上--release编译限制,要降级到合适版本(即去掉了release校验,又保障和现有项目的兼容)我的目标是降级到1.8,你让我升级是不是很恶心。我要问的是如何去掉这个校验。这个有点靠谱,但是不是真正的原因。1、要求升级到JAVA9以上,因为release是JAVA9引入的。3、pom.xml错误指定了release属性。本项目确实勾选了,去掉了,结果还是不行。这个原因比较隐含,包含5年以上功力。这个是明面上原因,一定要去掉。以下不是来源于搜索,来源于经验。
2025-07-20 09:48:00
121
原创 搜索不到main class
打开工程顺利,配置springboot启动配置出问题了,死活找不到主类。1、先看JDK设置。看JDK是否正确设置了,和原工程要求的版本是否一致。接手一套老代码,要移植到新平台上去。需要先把老代码跑起来。4、注意主类的位置。这个一般是新项目会犯错。老项目的问题不在这。2、全编译一下,看是否有编译错误。3、检查依赖是i否有冲突。
2025-07-20 06:42:42
140
原创 open打开的页面里居中问题
但是window.open后发现table根本没有居中,而是偏向右侧。应该是现代浏览器可能不太支持了,具体原因不详。老系统大量使用showModalDialog,现代浏览器很多已经不支持,需要改为window.open。之前的老系统大量采用table来布局,首元素就是。-------随之改造进程,持续更新中---showModalDialog可以用参数。升级改造一个老系统,遇到很多问题。这种情况只好外面再套一层div了。center参数问题。
2025-07-17 10:36:06
225
原创 开发指南124-角色用户同步
用户同步问题:从门户跳转外部应用时,会带入参数token,应用通过该token访问平台的微服务换成用户信息,然后根据对应关系变换成自己的用户信息即可。但是跳转之前就有个控制问题:窗口里显示的图标是有权限的,无关的不显示。承接上篇,如果应用都是平台上应用,角色、用户都是统一的,控制体系也一样。实质上,组织内部的很多应用都是单体应用,技术体系比较老旧,加上当前的国产化替代浪潮,很多应用本身。如果采用外部窗口模式,因为窗口内的信息是应用本身提供的,所以问题相对简单,而且也不需要角色同步。
2025-07-05 16:30:28
230
原创 开发指南123-外部应用窗口
上面的窗口类型选择外部应用类型,链接到外部应用的一个地址,这样窗口内显示的界面是由外部应用开发的功能,跳转功能也由外部应用实现。平台门户的样子如上(不同客户的风格会有所不同),基本元素就是一个窗口对应一个应用,点击其中的图标直接跳转到对应应用(使用单点登录技术)。但是现实中,组织内部的很多应用是已有的系统,都不是平台上的应用,短期内也不可能全部替换。因为所有平台应用的功能树都是在核心库定义的,角色/用户信息也都是在核心库定义的,上面的实现对应平台上的应用是适合的。这样就可以把外部应用映射为内部应用。
2025-07-05 14:32:38
111
原创 平台组成-报表平台
2、业务微服务通过表ID访问Redis获取表信息,检查本地是否已经有表样文件。3、业务微服务组装业务数据,然后调用qlm-utils-report包中的对应函数生成对应报表。5、报表有html、pdf、word、excel等多种格式,具体需要什么格式由业务接口自行确定。1、前端通过业务接口访问业务对应的微服务,访问参数中需包含表ID参数。4、报表如果需永久保存,例如开证明,则存入minio,把地址返回前端。6、前端接收报表文件,进行预览、打印等进一步操作。如无需保存,则直接返回流数据。
2025-06-28 11:27:53
198
原创 开发语言漫谈-R语言
R语言是一种用于统计计算和图形生成的语言,它由Ross Ihaka和Robert Gentleman在新西兰奥克兰大学开发。R语言是数据科学家、研究人员以及学术界广泛使用的用于数据分析的专门语言。R语言是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的。R语言及RStudio都是开源的,有广泛的社区支持。R语言和其他语言语法大不同,例如赋值有三种,分别是左箭头<-,等号=,右箭头->。R语言有其他语言没有的类型:向量,这是它的特色和独门武器。
2025-06-27 00:07:32
290
原创 开发指南122-对外数据推送
客户关系管理系统当数据变化时将客户对象对应的dto发送到消息队列(注意在平台内,前端和后台交互也是用的这个dto对象,这也就是为什么把dto层单独打包的原因。财务系统对接服务(一个财务系统做一个,例如金蝶对接服务,极端情况下可以同时运行金蝶对接服务、用友对接服务,这样数据会同时发送给两个系统)从消息队列中获取同步消息,转化为对金蝶系统的访问数据格式,也就是转换在对接服务中完成。目前企业实际运行的大量系统,一下统一平台然后构建所有系统不现实,需要一步一步替换。例如金蝶系统一个,用友系统一个。
2025-06-18 11:13:11
223
原创 平台介绍-行政机构成本机构
企业内部行政机构体系往往和成本机构不一致。行政机构体系来源于人力资源系统,成本机构体系来源于财务系统。人力资源系统、财务系统往往两套体系同时在用。在人力资源系统中,如果用到人力成本核算,就需要用到成本机构。财务系统中除了核算成本,往往也需要知道行政机构。在大集中模式下,人力资源系统推送行政机构给平台,财务系统推送成本机构给平台。两者再从平台获取成本机构或行政机构。一个人的工资分摊、保险分摊可能由不同成本机构承担。在单一产品里,人力资源系统、财务系统只能同时维护两套体系了。工资关系所在成本机构。
2025-06-15 17:28:01
189
原创 PKIX path building failed
使用httpclient对接多个第三方应用,云服务形式的接口都没有问题,唯独一家私有部署的系统,死活握不了手。3、执行keytool -import -alias mycert -file ./server.cer -keystore ./cacerts -storepass changeit。其实核心原因很简单,就是java的自身证书库里没有他们家的。其中changeit是java证书文件默认访问密码,如果改过就需要搜索自己的脑子了。奇怪的是同一个程序访问其他家的https接口就没有。
2025-06-15 11:24:55
374
原创 开发指南121-微服务的弹性伸缩
这样的好处是升级时,只复制一次jar包即可。平台的服务程序的项目工程其实就是个架子,其中的pom.xml定义了本服务打包那些control,从而实现服务包的合并和分割。平台的后台服务表现形式就是各种各样的微服务。微服务可以部署在不同的机器上。部署在同一机器上,可以复制为多个不同目录,其中jar包,启动文件是完全一样的。就是把各自的访问集中到QLM-System-Service。涉及到服务的合并和分割。上面这个方式不推荐,推荐前面说的多目录方式。核心原理就是通过路由路径分配到具体的服务。
2025-06-13 16:26:39
421
原创 生态圈发展2-思路
除了上述需要盈利的公司,体系还需要构建不以盈利为目的的机构:培训学校。完完全全的免费培训,但是教的是如果基于平台开发,如何做产品、项目服务,如何做项目管理。业务是复杂的,企图让一个公司做所有业务是愚蠢的。行业业务自己开发,通用业务集成体系内产品公司的产品。第二层是平台公司,专注平台本身开发,放弃和应用公司挣利。现在市面上做平台的公司无论宣传多厉害,都不能自证:既然平台这么强,为什么不能基于平台做个厉害的产品?做产品的公司也逃不掉另一个问题:你的产品如何和其他产品交互。除了技术公司,还会相应建立咨询公司。
2025-06-11 08:07:47
173
原创 开发指南120-表格(el-table)斑马纹
el-table :data="tableData" stripe>连官网上的例子都是这样。这么写,怎么折腾都没有效果。也是折腾了很多写法,网上给的大部分不起作用,也不知道写的人自己试过没有。很多文章都是“扛锄”来的。el-table实现斑马纹简单否,看起来很简单,网上给的例子都是加stripe,例如。我不知道写的是否是官方写法,是否放之四海而皆准。反正在我的环境里确实有效。也是折腾了很多写法。
2025-06-01 08:24:50
487
原创 开发指南119-常用伪选择器
an+b,模式 li:nth-child(4n+1) 位置满足 4n+1 模式的 <li>如p:nth-child(2):选择父元素的第二个 <p> 子元素。如 body:lang(en) body:lang(zh) 根据中英文选择。::selection:匹配用户选中的元素部分(通常用于改变选中文本的样式)。::first-letter:选择元素的第一个字母或文本。::first-line:选择元素的第一行文本。用于选取属于父元素的特定子元素。选择当前活动的目标元素。可用状态或不可用状态。
2025-06-01 07:36:53
177
原创 CSS的padding属性设置探讨
可以设置4个值:如padding: 10px 20px 30px 40px;表示元素的上部内边距是10像素,右侧内边距是20像素,下部内边距是30像素,左侧内边距是40像素。可以设置2个值:如padding: 10px 20px;这表示元素的上部和下部内边距是10像素,左侧和右侧内边距是20像素。可以设置1个值: 如padding: 5px;表示元素的上、右、下、左四个方向的内边距都是5像素。程序员只能选择padding: 10px 20px 30px 40px;padding属性有很多中设置方法。
2025-05-19 16:12:30
484
原创 开发指南115-CSS中选择器关系
可以用选择器1 选择器2(中间用空格分隔)来表达,也可以在大括号里通过包含关系来表达。注意css本身并不支持嵌套的写法,是scss等提供的扩展能力。举例:input[type="text"]举例::not(button)选择器1 > 选择器2(中间用>分隔)举例 .a > .b。举例 .a + .b。
2025-05-18 14:51:50
278
原创 开发指南114-使用el-avatar显示照片
原以为设置el-avatar的fit属性就能搞定,根本就不起作用。4、垂直方向,调整img相对el-avatar(是个span)顶部对齐。5、水平方向,调整img相对el-avatar(是个span)居中对齐。关键点:/deep/ .el-avatar img 用这个定位img。2、按照片比例,设el-avatar内部img大小,如50*65。6、调整el-avatar的背景色和照片背景色一致。1、设置el-avatar大小,例如55*55。1、el-avatar默认是个方形的。3、fit属性用fill!
2025-05-17 11:12:21
291
原创 开发指南113-BLOB等字段的处理
访问数据库有很多中框架,千里马平台访问数据库选择了JPA(Java Persistence API)搭配Hibernate。这个框架下,如何处理BLOB这种类型的字段呢?(Character Large Object)类型,对应JAVA类的属性为byte[]和String。仅仅多个@Lob注解,和其他字段处理模式完全相同,简直爽歪歪。(Binary Large Object)或。(Large Object)注解。
2025-05-17 09:00:48
273
原创 开发指南112-样式的优先级别
当多个class属性中的样式规则发生冲突时,将根据选择器的权重和样式规则在CSS文件中的定义顺序来决定应用的样式。权重相同的情况下,后定义的规则将覆盖先前的规则。important声明的样式规则都会覆盖其他相同选择器的样式规则。3、类选择器、属性选择器、伪类选择器:这些选择器定义的样式优先级较低。4、元素选择器、通配符选择器:这些选择器定义的样式具有最低的优先级。2、ID选择器:通过ID选择器指定的样式,其优先级仅次于内联样式。1、内联样式:style属性中定义的样式,具有最高的优先级。
2025-05-14 23:17:56
501
原创 mysql的一个缺点
sql[0]报的错。在oracle sqlserver里都没有错。核心问题是mysql不允许在update的where语句里出现要更新的表。针对这种情况只能先把值取出来,然后在执行。
2025-05-14 21:16:02
581
原创 window server 2012安装sql server2008 r2
打开服务器管理器->添加角色和功能->选择Web 服务(IIS)->添加.NET Framework3.5。执行sql server2008 r2安装目录下的setup。只能先搞这个了,F*微软,自家软件不让正常安装。装个软件,搞不懂为啥绕这么多弯。选择运行程序而不获取帮助。
2025-05-12 22:14:13
322
原创 平台介绍-开放API接口-IO说明
这也就是为什么平台强调要把dto层单独拿出来做单独工程,封装成独立jar的原因。这样dto可以共享到很多对方。if (SUCCESS == this.getStatus()) {// 通讯成功。最核心的技术是从SDKHttpResponse解析出真正需要的DTO结构。IO遵循平台内部API规范,接口入参出参和内部用是完全一样的。@Operation(summary = "获取人员信息")} else { // 通讯失败。SDK和服务端通讯引用的是。
2025-05-04 12:20:27
475
原创 平台介绍-开放API接口-鉴权
基本方式是客户端对body进行HmacSHA256 加密处理,然后将结果存入Content-MD5头中,服务器端收到请求后,做同样处理,然后验证是否一致。但是现实情况是,组织内部已经建立了很多系统,是不能一次性替代的,只能先搭起平台,然后逐步开始替换。其中的核心问题是鉴权。服务器端校验原理,从请求头里获取应用ID,查询后台登记信息,找到对应的AppSecret,对信息进行同样的处理,最后验证签名是否一样。签名计算是鉴权的核心,它可以确保是由AppID对应的客户端发起的,且发起内容在传输过程中没有被篡改。
2025-05-02 09:00:41
462
原创 final关键字带来的问题
/ 这里输出了测试数据。去掉final再编译EsignConfig、TemplateService才是希望的效果。EsignConfig编译了两套,一套测试,一套正式。但是正式系统始终访问的是测试的参数。private static String eSignHost=“****”直接给出了具体值!// 这里输出的正式数据。
2025-04-18 20:00:52
326
原创 开发指南111-关闭所有打开的子窗口
门户系统是通过window.open通过单点登录的模式打开子系统的,这就要求门户系统退出时,关闭所有打开的子系统。// 检查窗口是否已关闭,避免在已关闭的窗口上调用close方法导致错误。allChildWindows:[], //所有子窗口。
2025-04-06 19:45:54
174
原创 开发语言漫谈-groovy
groovy是一门脚本语言,在前期的脚本语言中简单介绍了下。现在再深入介绍下,因为它是本平台上选用的脚本语言。我们知道平台后台的业务开发语言是Java,开发人员都熟悉Java。那么使用groovy就是自然而然的事情,因为groovy最大特点就是和Java兼容。这两者就是绝配,完美解决了paas平台的核心问题。那些之前花了大成本自定义一门语言,自己开发webide引擎的厂商哭晕在厕所。比如你还在吭哧吭哧自己编码,别人早已使用AI编程,效率高了不知多少倍。你在努力跑步的同时,别人早已做上了汽车。
2025-03-22 13:12:24
617
原创 开发指南110-平台脚本语言
平台的业务功能总的来说由微服务提供的接口来支撑,接口的开发语言业务类的使用Java,大数据库、AI等 用python,这些我们称之为重开发。平台及其应用提供了标准的接口供平台至少的业务 模块。如果用户需要定制业务,可以更改标准接口,也可以新增新接口。除了上述途径,平台还提供我们称之为轻开发的能力,就是使用平台脚本。和他们不同,我们自己不造新轮子,而是选用成熟的方案。由于和Java的高度融合,平台脚本语言我们采用groovy。当然,平台后台也提供了切片编程来进行扩展,但是推荐的方式还是居于平台脚本来实现。
2025-03-20 06:57:33
218
原创 开发指南109-工作流节点功能
定义一个流程时,节点上的功能可以用固定功能实现也可以用流程驱动功能实现,一般看业务的复杂度。例如审批功能多半使用流程驱动功能,因为只是简单的点同意或退回,填写审批意见即可。(当然使用流程驱动功能也可以实现,只是需要在关联动作中编写复杂的业务逻辑,预期这样不如使用固定功能)固定功能是开发人员开发的,在sys_functions定义的功能,简单说就是菜单上显示的功能。流程驱动功能是实施人员配置出的,没有在sys_functions定义,也不出现在菜单上。总之固定功能由开发人员实现,流程驱动功能由实施人员实现。
2025-03-16 15:57:17
192
原创 开发指南108-工作流
是多个功能的流转关系,每个节点都可以完成对应工作,而不是简单的给出审批意见。入职流程例如先人事专员办理登记,然后到行政办理办公用品领取,到保险岗位办理保险增员,最后信息部门开通账号等等。但是也有相同的部分,例如配置流程节点完毕后的动作。业务流没有统一的表单,表单在对应的功能里定义,是具体功能的一部分,不在流程定义里完成。相关的概念有工作流、审批流、业务流等等,市面上每个系统都有不同的解释。的特点是同一个审批单的流转,审批节点没有修改功能,只是给出审批意见。工作流包含审批流和业务流,是个统称。
2025-03-14 16:39:49
176
原创 用AI检查代码
我们平台将走上这样路线:人工提需求->AI自动产生代码->人工复核->热上线。集成一个AI学习平台的开发知识,利用平台的技术来开发新应用。最近程序员遇到一个古怪问题,一个div的滚动条死活出不来,怎么看都没有问题。AI可能对所谓的低代码平台产生冲击:AI很难学会所谓的拖拽编程,但是可以轻松的生成真正的代码。像这样的问题,人工确实很难发现。AI确实已经非常强大。
2025-03-11 06:45:14
227
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人