填报时控制某区域无指标不允许提交【V8.6.1.2】
【适用版本】
s-HR Cloud V8.6.1.2
【应用场景】
员工自己填报指标时,对区域如何设置必填(存在多个区域,“区域”路径:员工考核规则模板 - 编辑评估表单),存在多个区域时,员工部分区域没有填报指标就提交了。整个区域都没有一条指标时,如何限制员工提交
【详细说明/示例/操作步骤】
二开指导方案:
1、找到\eas\server\deploy\easweb.ear\shr_web.war\addon\perfweb\web\js\shr\perfweb\base\evalrule目录下的perfEvalFormHtml.js文件,搜索class="note-wrap",定位到html元素部分,如图位置,新增参数控制代码html部分,例如:
添加后效果如图:
2、找到\eas\server\deploy\easweb.ear\shr_web.war\addon\perfweb\web\js\shr\perfweb\base\evalrule目录下的perfEvalForm.js文件,搜索var model = {,保存时组装字段位置如图:
后台接口名称saveEvaFormBatch,保存上这个字段
3、填报页面,接口compositeEvaObjectData,取到这个值,层级如图:
4、填报页面的html文件:\eas\server\deploy\easweb.ear\shr_web.war\addon\perfweb\web\js\shr\perfweb\portal\htmlTemplate目录下的perfgoalsfill.html,搜索indicatorwrap,定位到ul标签,可将新增的参数作为属性绑到ul标签上,例如新增属性字段名称为newAttr0的话:
5、提交时校验:
找到\eas\server\deploy\easweb.ear\shr_web.war\addon\perfweb\web\js\shr\perfweb\portal\目录下的perfGoalsFillNew.js文件,搜索submitAction,定位到提交函数,增加校验代码,位置如图:
校验思路:找到指标所在的ul元素,判断是否需要校验“至少包含一个指标”即newAttr0的值,需要校验的话判断ul内的li元素的数量,等于0则不允许提交并给出提示。
【注意事项/常见错误】(可省略)
以上为简化代码举例,需自行完善
填报时控制某区域无指标不允许提交【V8.6.1.2】
本文2024-09-22 22:04:38发表“s-hr cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-shr-124227.html