关于页面实现一键审批的功能思路
第一步:在dorado页面中,添加一个按钮,设置caption为“一键审批”
第二步:给按钮绑定点击事件,一个弹出框
弹出框模仿编辑栏写,弹出框的数据dataType绑定和新增页面的预加载dataType一致,这样,页面新增的时候加载就是一键审批修改过的默认值,也就是说实现了一键审批,当审批页面选中或填写过并保存的,新增界面再打开,默认就是填好的;不止第一个字段节点新增填好,其他页面也填好了,可以满足需求;
第三步:后台服务,弹出框的保存按钮添加action触发事件,当点即保存的时候,Axjsonaction向后台服务AutoSPService#saveDefaut交互,这样saveDefaut方法再接受到,传过来的数据,调用ibatis,映射对应的mapper文件,运行update语句,实现后台的默认值更新;
第四步:结果如果实现了的话,还要测试,当用户多次点击“一键审批”按钮并保存的时候,后台数据库中对应的默认值字段会有重复更新添加的内容,会不会出现异常现象:例如,复选框出现相同的等;
备注:
服务中的saveProductParams方法需要传入一个dataType对象,Collection<JjChanpincanshu> 回来的该参数中有一个参数为state,当state为NEW时 执行add添加操作,当state为MODIFIED时执行update操作,当state为DELETED时 执行delete操作,当state为NONE时执行save操作;
先捋下编辑的操作思路:
点击编辑按钮,调用onClick方法
var dialog = view.get("#productDialog"); dialog.set("cation","修改产品").show();
这个时候ID为productDialog的弹出框弹出,并且名称为"修改产品"
productDialog的onShow方法触发
var data = view.get("#dsProductParams.data:#current"); var bankCode = data.get("bankCode"); if(bankCode == "6586"){ var value = data.get("autoApprovalFlag"); var isReadOnly =!value || value == "0"; view.get("^zyAutoApproval").set("readOnly",isReadOnly); var autoApprovalCategory = data.get("autoApprovalCategory"); var cont=view.get("allowAutoApprovalCategory"); var checkboxes = cont.get("children"); checkboxes.each(function(box){ var category = box.get("onValue"); box.set("checked",autoApprovalCategory && autoApprovalCategory.indexOf(category)>-1); box.set("readOnly",isReadOnly); } }
从dsProductParams.data:#current获取数据 调用的服务为 ParameterSettingsPR类的pageBankProduct 列表查询获取数据
上面的JS主要是为了,当时中原银行的时候,允许自动审批为勾选状态,也就zyAuroApproval中的控件允许修改;不再是只读;
然后开始就是productDialog中的Children的产品信息,,,等,dataSet为dsProductParams,就是刚才查出来的pageBankProduct方法返回的值dtProductParameters类型的Collection;
zyOtherAutoForm默认的hideMode时display dataSet类型为dsProductParams
再zyOtherAuroForm中有个一个dsCategoryList的DataSet指向的方法为udf.commonPR的makeDict方法 入参parameter为APQUE dataType类型为[$dtDIctMember]
然后就是productDialog的确定按钮的onClick事件
先获取data = view.get("#dsProductParams.data:#current")
然后根据Data获取银行号,看是否为6586银行
如果是的话分别获取auroApprovalFlag\autoApprovalMinLimit\autoApprovalMaxLimit\autoApprovalStartDate\autoApprovalEndDate进行校验
自动审批最大额度不能为空、自动审批最小额度泵大于自动审批最大额度、自动审批开始事件不能为空、自动审批开始时间只能大于当前时间、自动审批结束时间只能大于当前时间、自动审批结束时间必须大于自动审批开始时间

浙公网安备 33010602011771号