con_contract_query.lsc 5.44 KB
Newer Older
congzhao's avatar
congzhao committed
1 2 3 4 5 6
<?xml version="1.0" encoding="UTF-8"?>
<a:service xmlns:ns1="leaf.application.action" xmlns:p="uncertain.proc" xmlns:a="http://www.leaf-framework.org/application" xmlns:s="leaf.plugin.script" trace="true">
    <a:init-procedure>
        <s:server-script import="app/app_login_check.js"><![CDATA[
            function con_contract_query() {
                var contract_list_details;
7
                var all_status = 'Y';
congzhao's avatar
congzhao committed
8 9 10 11 12 13 14
                try {
                    var contract_list_bm = $bm('wx.WX100.con_contract_query');
                    var contract_list_map;
                    var inputData = $ctx.parameter.inputData;
                    if (inputData == null){
                        contract_list_map = contract_list_bm.queryAsMap({
                            id_no:$ctx.parameter.idNo,
15
                            id_type:$ctx.parameter.IdType,
16 17
                            account_type: $ctx.parameter.accountType,
                            organization_id:$ctx.parameter.organizationId
congzhao's avatar
congzhao committed
18 19 20 21 22
                        });
                    }else{
                        contract_list_map = contract_list_bm.queryAsMap({
                            id_no:$ctx.parameter.idNo,
                            id_type:$ctx.parameter.IdType,
23
                            account_type: $ctx.parameter.accountType,
24 25
                            organization_id:$ctx.parameter.organizationId,
                            contract_number:inputData,
congzhao's avatar
congzhao committed
26 27 28
                        });
                    }
                    contract_list_details = contract_list_map.getChildren();
29 30
                    var unSignContracts = [];
                    if (contract_list_details) {
congzhao's avatar
congzhao committed
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
                        for (var i = 0;i < contract_list_details.length;i++) {
                            var contract_list_detail = contract_list_details[i];
                            var contract_id = contract_list_detail.contract_id;
                            var ec_sign_type = contract_list_detail.ec_sign_type;
                            if(ec_sign_type == 'NEW'||ec_sign_type == 'INITIATE' ||ec_sign_type == 'SIGNING') {
                                var signFiles = [];
                                //未完成签署附件信息表查询
                                var file_list_bm = $bm('wx.WX100.con_file_list_query');
                                var file_list_map = file_list_bm.queryAsMap({
                                    contract_id: contract_id,
                                    id_no: $ctx.parameter.idNo,
                                    id_type: $ctx.parameter.IdType
                                });
                                var file_list_details = file_list_map.getChildren();
                                for (var j = 0; j < file_list_details.length; j++) {
                                    signFiles.push({
47
                                        fileName: file_list_details[j].file_name
congzhao's avatar
congzhao committed
48 49 50 51 52 53 54 55 56 57 58 59
                                    });
                                }
                                unSignContracts.push({
                                    "contractNumber": contract_list_detail.contract_number,
                                    "telentName": contract_list_detail.bp_id_tenant_n,
                                    "agentName": contract_list_detail.bp_id_agent_level1_n,
                                    "serialNo": contract_list_detail.machine_number,
                                    "contractStatus": contract_list_detail.contract_status_n,
                                    "esignStatus": contract_list_detail.ec_sign_type_n,
                                    "brand": contract_list_detail.brand_id_n,
                                    "modelNo": contract_list_detail.modelcd,
                                    "totalTimes": contract_list_detail.lease_times,
60
                                    "leaseStartDate":contract_list_detail.lease_start_date,
congzhao's avatar
congzhao committed
61 62
                                    "signAmt": contract_list_detail.total_sign,
                                    "signUrl":contract_list_detail.sign_url,
63
                                    "userSignStatus":contract_list_detail.userSignStatus,
congzhao's avatar
congzhao committed
64 65
                                    "signFiles": signFiles
                                });
66 67 68 69
                                var contract_list_detail = contract_list_details[i];
                                if (contract_list_detail.userSignStatus == 'N'){
                                    all_status = 'N';
                                }
congzhao's avatar
congzhao committed
70 71
                            }
                        }
72 73 74 75 76 77 78
                    }
                    $ctx.parameter.return_status = '0';
                    $ctx.parameter.return_message = '执行成功';
                } catch (e) {
                    $ctx.success = "true";
                    $ctx.parameter.return_status = '1';
                    $ctx.parameter.return_message = String(e);
congzhao's avatar
congzhao committed
79
                }
80 81 82 83 84 85 86 87

                //返回结果
                var result = {
                    code: $ctx.parameter.return_status,
                    message: $ctx.parameter.return_message,
                    allConSignStatus:all_status,
                    unSignContracts: unSignContracts
                };
congzhao's avatar
congzhao committed
88 89 90 91 92 93 94 95 96
                $ctx.parameter.json = JSON.stringify(result);
            }
            if ($ctx.parameter.return_status != 'E' && $ctx.parameter.return_status != 'TIMEOUT') {
                con_contract_query();
            }
        ]]></s:server-script>
    </a:init-procedure>
    <a:service-output output="/parameter/@json"/>
</a:service>