入會申請審覈

目錄

  • 問題描述
  • 問題分析
  • 修改思路
  • 具體實現
  • 其他經驗

  1. 問題描述
    增加一個修改的功能。要求,1.修改完之後 預覽可以看見 可以直接審覈通過 2.看到的是申請者的信息 不是登陸者的信息 3.可以反覆修改
    這裏寫圖片描述

  2. 問題分析
    可以參照編輯會員信息那一模塊進行修改,但是有幾個不同的問題需要處理
    2.1參數,以及參數的傳遞方式 account 和 apply_id
    2.1.1 參數不同:account 和 apply_id
    2.1.2 傳參方式:

直接通過函數參數傳值(jsp\js)
 var url = "!gh/tradeManage/~/pages/userTradeInfo.jsp?option=viewAdd&apply_id=" + apply_id;
通過表單傳值(js)
 $("#apply_type").val(0)
    rdcp.form.submit("trade_form", {
            url: "!gh/tradeManage/~query/Q_AUDIT_APPLY_2" ,

2.2 操作表,以及操作表的方式
2.2.1操作表:bi_trade_info和bi_trade_apply
2.2.2操作方式:
update:會員信息申請要求,修改後對預覽立即可見
insert:編輯會員信息修改過後,必須審覈通過,才能再次修改,審覈通過才能查看詳細信息。

這裏寫圖片描述
3. 修改思路
小旗部分是我修改過的文件
這裏寫圖片描述
4. 具體實現
auditApplyToTrade.js
增加修改按鈕

var del = '<a class="btn_view" href="javascript:void(0);"  onclick="view(\'' + row.APPLY_ID + '\');">預覽</a>'
                        +'<a class="btn_edit" href="javascript:void(0);"  onclick="examine(\'' + row.APPLY_ID + '\');">審覈</a>'
                    +'<a class="btn_edit" href="javascript:void(0);"  onclick="edit(\'' + row.APPLY_ID + '\');">修改</a>';

...

function edit(apply_id) {

    var tabId = "editTradeInfo";
    var title = "修改入會申請";
    var url = "!gh/tradeManage/~/pages/applyToTrade2.jsp?option=edit&apply_id=" + apply_id;
    OpenTab(tabId, title, url);

}

applyToTrade2.jsp
點擊修改之後的界面,主要爲了銜接相應的js代碼

    <script type="text/javascript" src="!gh/tradeManage/~/scripts/applyToTrade2.js"></script>

applyToTrade2.js
提交之前加載相應的信息+提交之後對信息的更新

        rdcp.form.load("trade_form", "!gh/tradeManage/~query/Q_LOAD_USER_APPLY_INFO", {"apply_id":apply_id}, function (data) {//方案1



function submit(){
    var total = 0;

    if(total>0) return;
    var flag = $("#is_agree").attr("checked");
    if(flag!="checked"){
        $.messager.alert("提示","請勾選同意《中華全總工會入會申請書》!",'info');
        return;
    }
    if(option=="add"){
        $("#apply_type").val(0);
        rdcp.form.submit("trade_form", {
            url: "!gh/tradeManage/~query/Q_ADD_TRADE_APPLY" ,
            success: function (data) {
                $.messager.alert('提示', '入會申請提交成功,請等待審覈結果!', 'info',function () {
                    cancel();
                });
            }
        }, {"mask": true});
    }else if(option=="edit"){
        $("#apply_type").val(0)
        $("#apply_id").val(apply_id)
        alert(apply_id)
        rdcp.form.submit("trade_form", {
            url: "!gh/tradeManage/~query/Q_AUDIT_APPLY_2" ,
            success: function (data) {
                $.messager.alert('提示', '修改入會申請信息提交成功,請等待審覈結果!', 'info',function () {
                    cancel();
                });
            }
        }, {"mask": true});
    }
}

Q_AUDIT_APPLY_2.xml
用於更新相應的操作表

<?xml version='1.0' encoding='UTF-8'?>

<query-config>
    <!-- 修改用戶信息-->
    <query id="Q_AUDIT_APPLY_2" type="batch" result="easyui">
        <stmt>
            <![CDATA[
            update bi_trade_apply set account=[account],name=[name],sex=[sex],birthday=to_date([birthday],'yyyy-mm-dd'),political_status=[political_status],nation=[nation],
  email=[email],card_type=[card_type],card_no=[card_no],qualifications=[qualifications],degree=[degree],post=[post],duties=[duties],memo=[memo],dept_id=[dept_id],tele_phone=[tele_phone],
  apply_time=sysdate,apply_user=${_CurrUser.id},apply_status=1,apply_type=[apply_type]
  where apply_id=[apply_id];
        ]]>
        </stmt>



    </query>
</query-config>

5.其他經驗
5.1關於whgh中bug定位的正確姿勢:

定位jsp:通過後臺
定位js:通過alt+鼠標左鍵 、 jsp首頁的include、
定位xml:通過後臺和find in path

5.2調試的正確姿勢:

Jsp:用idea或者chrome
Js :chrome

5.3刷新代碼:

Jsp:ctrl+shift+delete 清理緩存
js:一般只需要update class即可
xml:一般只需要update class即可

5.4關於傳參:
Jsp:此外要注意一點的是 String類型只能初始化一次

<%
  String option = request.getParameter("option");
  String apply_id = request.getParameter("apply_id");
   String account;
   SysPUser user = (SysPUser) session.getAttribute(LoginUserSession.UserSession_Key);
account=request.getParameter("account")==null?user.getAccount():request.getParameter("account");
%>

Js:百分號

  var option = "<%=option%>";

jsp與js之間 : 表格、函數

5.6傳參問題
具體原理請參考我的另一篇筆記:
https://blog.csdn.net/qq_26769591/article/details/80625341
補充一個很重要的點:表單傳值=url傳值=jsp param 傳值
這裏寫圖片描述
5.7Debug
5.7.1運行中動態修改參數:據sjx說,在idea中可以在檢測的變量表中,右鍵變量,然後set_value
有的時候成功有的時候不能成功。
這裏寫圖片描述
5.7.2單步調試的快捷鍵
這裏寫圖片描述
5.7.3查看變量的值:
只能通過watch ,而且watch 的變量是js中的變量
在console中 只是重新創建了局部變量,而且是js代碼
對於html元素的定位 目前只能通過idea中進行 find in path 這種方式 沒有其他的方法
這裏寫圖片描述
5.8定位問題
這裏寫圖片描述
5.9語法問題
具體原理請參考我的另一篇筆記:
https://blog.csdn.net/qq_26769591/article/details/80625341
這裏寫圖片描述
5.10尚未解決的問題
這裏寫圖片描述

這裏寫圖片描述

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章