天天看點

RapidJavaEE 項目 開發流程說明

開發流程簡述:

進入pages/Gridmetainfo/ 子產品進行表生成中繼資料定義後,生成代碼到項目下,然後進行以下步驟

1.修改自定義combo的選單,如為系統字典,無須修改

2.修改表格中的自定義字典的渲染器,如為系統字典,無須修改

3.tbar中增加功能按鈕

4.根據主資料記錄的值,顯示或失效相應的按鈕

5.表單中加隐藏傳值表單,添加動作時設隐藏值

6.在修改時将表單combo變為隻讀,從主表傳值給某表單

7.根據需要修改業務表格為單選或多選

8.背景action不變, 業務manager類中重載save方法,進行多事務的邏輯處理

以下為拿耳目子產品舉例說明修改過程

    1).修改自定義combo的下拉選單與值

    2).業務表格中的非資訊代碼字典,但為自定義字典字段,加上renderer,

        renderer:function(v){if(v=='1'){return '安全耳目';}else if(v=='2'){return '獄偵耳目';}else{return v;}}

    3).在tbar把添加按鈕改為設定,并添加一個撤消按鈕

    4).根據主資料記錄的值,顯示或失效相應的按鈕,在refreshLowerGrid方法添加

        if(record.get('emlx')=='1'||record.get('emlx')=='2'){

            Ext.getCmp('addJlsEmdjID').setDisabled(true);

            Ext.getCmp('revokeJlsEmdjID').setDisabled(false);

        }else{

            Ext.getCmp('addJlsEmdjID').setDisabled(false);

            Ext.getCmp('revokeJlsEmdjID').setDisabled(true);

        }

    5).在設定的表單窗體裡,如果要增加一個隐藏表單值

        在表單窗體中添加,{xtype:'hidden',fieldLabel:'辦理類型',name:'bllx',width:288}

        在打開窗體時設值:this.dtlFormPanel.form.findField("bllx").setValue(1);

    6)在撤消的表單窗體裡.将combo變為隻讀

        1.this.dtlFormPanel.form.findField("emlx").disabled = "disabled";

        2.表單中的combo選項應該為人員的耳目類型,如何把主表中的值傳給表單:

            1.在打開表單視窗時,refreshLowerGrid方法中把主表的record中某值,傳給表單的store的參數

                this.getStore().baseParams['q_emlx'] = record.get('emlx');

            2.在撤消時将傳來的參數賦給表單中的emlx的combo

                this.dtlFormPanel.form.findField("emlx").setValue(this.getStore().baseParams['q_emlx']);

    7).如果修改業務表格的選框類型

        Ext.ux.grid.RadioSelectionModel()  單選  Ext.grid.CheckboxSelectionModel() 多選

    8).修改背景

        1).action不建議修改

        2.JlsEmdjManager中重載save方法

           //因為涉及多表操作,是以需要注解申明事務   

            @Transactional(propagation=Propagation.REQUIRED)

            public void save(JlsEmdj jlsEmdj) {

                this.jlsEmdjDao.save(jlsEmdj);   //事務一

            //更新人員基本資訊的耳目标記邏輯

            Object[] arr = null;

            if(jlsEmdj.getBllx().equals("0")) {

                arr = new Object[]{"3",jlsEmdj.getRybh()};

            }else {

                arr = new Object[]{jlsEmdj.getEmlx(),jlsEmdj.getRybh()};

            }

            //建議使用參數化HQL來進行更新

            this.jlsEmdjDao.executeHQL("update JlsJbxx set emlx = ? where rybh = ? ",arr);

繼續閱讀