<?xml version="1.0" encoding="UTF-8"?>
<a:screen xmlns:a="http://www.leaf-framework.org/application" dynamiccreateenabled="true" trace="true">
    <a:view>
        <a:link id="${/parameter/@layout_code}_con_contract_get_layout_code_link_id"
                model="cont.CON500.con_contract_get_layout_code" modelaction="update"/>
        <a:link id="prj500_cdd_uploadFile_id" url="${/request/@context_path}/uploadFile.lview"/>
        <a:link id="prj500_cdd_downloadFile_id" url="${/request/@context_path}/downloadFile.lview"/>
        <a:link id="hls303_sap_eai_create_customer_link" url="${/request/@context_path}/modules/interface/INTERFACE_EAI/hls_sap_eai_CrCustomer.lsc"/>
        <a:link id="hls303_sap_eai_create_vender_link" url="${/request/@context_path}/modules/interface/INTERFACE_EAI/hls_sap_eai_CrVender.lsc"/>
        <script src="${/request/@context_path}/modules/prj/PRJ500N/javascripts/input_validator.js" type="text/javascript"/>
        <script type="text/javascript"><![CDATA[
        var flag = 0;
        function CheckSocialCreditCode(Code) {
            var patrn = /^[0-9A-Z]+$/;
            //18位校验及大写校验
            if ((Code.length != 18) || (patrn.test(Code) == false)) {
                return false;
            } else {
                var Ancode;//统一社会信用代码的每一个值
                var Ancodevalue;//统一社会信用代码每一个值的权重
                var total = 0;
                var weightedfactors = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28];//加权因子
                var str = '0123456789ABCDEFGHJKLMNPQRTUWXY';
                //不用I、O、S、V、Z
                for (var i = 0; i < Code.length - 1; i++) {
                    Ancode = Code.substring(i, i + 1);
                    Ancodevalue = str.indexOf(Ancode);
                    total = total + Ancodevalue * weightedfactors[i];
                    //权重与加权因子相乘之和
                }
                var logiccheckcode = 31 - total % 31;

                if (logiccheckcode == 31) {
                    logiccheckcode = 0;
                }
                var Str = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,J,K,L,M,N,P,Q,R,T,U,W,X,Y";
                var Array_Str = Str.split(',');
                logiccheckcode = Array_Str[logiccheckcode];

                var checkcode = Code.substring(17, 18);
                if (logiccheckcode != checkcode) {
                    return false;
                } else {
                    return true;
                }
            }
        }

        //锁屏
        window['${/parameter/@bp_seq}${/parameter/@layout_code}_lock_layout_dynamic_window'] = function () {
            var detail_mask;
            if ('${/parameter/@winid}') {
                if (parent.$L.CmpManager.get('${/parameter/@winid}')) {
                    detail_mask = parent.$('${/parameter/@winid}').wrap;
                    parent.Leaf.Masker.mask(detail_mask, '${l:HLS.EXECUTING}');
                } else {
                    detail_mask = $('${/parameter/@winid}').wrap;
                    Leaf.Masker.mask(detail_mask, '${l:HLS.EXECUTING}');
                }
            } else {
                detail_mask = Ext.getBody();
                Leaf.Masker.mask(detail_mask, '${l:HLS.EXECUTING}');
            }
        };
        //解屏
        window['${/parameter/@bp_seq}${/parameter/@layout_code}_unlock_layout_dynamic_window'] = function () {
            var detail_mask;
            if ('${/parameter/@winid}') {
                if (parent.$L.CmpManager.get('${/parameter/@winid}')) {
                    detail_mask = parent.$('${/parameter/@winid}').wrap;
                    parent.Leaf.Masker.unmask(detail_mask);
                } else {
                    detail_mask = $('${/parameter/@winid}').wrap;
                    Leaf.Masker.unmask(detail_mask);
                }
            } else {
                detail_mask = Ext.getBody();
                Leaf.Masker.unmask(detail_mask);
            }
            if (Ext.get(document.documentElement)) {
                $L.Masker.unmask(Ext.get(document.documentElement));
            }
        };

        // window['${/parameter/@bp_seq}${/parameter/@layout_code}_on_layout_dynamic_update'] = function (ds, record, name, value, old_value, bp_seq) {
        //
        //     if ((ds.id).indexOf('hls_bp_agent_renew') != -1 && (ds.id).indexOf('G_AGENT_RENEW') != -1) {
        //         if (name == 'valid_date_from') {
        //             var date_to = record.get('valid_date_to');
        //             if (value >= date_to) {
        //                 flag = flag + 1;
        //                 Leaf.showMessage('提示', '续约有效期时间从不能大于续约有效时间到!');
        //             }else{
        //                 flag = 0;
        //             }
        //         } else if (name == 'valid_date_to') {
        //
        //             var date_from = record.get('valid_date_from');
        //             if (value <= date_from) {
        //                 flag = flag + 1;
        //                 Leaf.showMessage('提示', '续约有效期时间从不能大于续约有效时间到!');
        //
        //             }else{
        //                 flag = 0;
        //             }
        //         }
        //
        //     }
        //
        // }
        //更新时调用
        window['${/parameter/@bp_seq}${/parameter/@layout_code}_on_layout_dynamic_update'] = function(ds, record, name, value, old_value, bp_seq) {
            var ds_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_master');
            // if (ds_id == ds.id) {
            //     if (record.get('taxpayer_type') == 'Y') {
            //         record.getField('tax_registry_num').setRequired(true);
            //         record.getField('invoice_bp_address').setRequired(true);
            //         record.getField('invoice_title').setRequired(true);
            //         record.getField('invoice_bp_phone_num').setRequired(true);
            //         record.getField('invoice_bp_bank').setRequired(true);
            //         record.getField('invoice_bp_bank_account_id').setRequired(true);
            //     } else {
            //         record.getField('tax_registry_num').setRequired(false);
            //         record.getField('invoice_bp_address').setRequired(false);
            //         record.getField('invoice_title').setRequired(false);
            //         record.getField('invoice_bp_phone_num').setRequired(false);
            //         record.getField('invoice_bp_bank').setRequired(false);
            //         record.getField('invoice_bp_bank_account_id').setRequired(false);
            //     }
            // }

            var role_ds = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_master_role');
            if (role_ds == ds.id) {
                var primary_flag = record.get('primary_flag');
                if (primary_flag == 'Y') {
                    // bm_record.set('bp_type', record.get('bp_type'));
                    // bm_record.set('bp_type_n', record.get('bp_type_n'));
                    // bm_record.set('bp_category', record.get('bp_category'));
                    // bm_record.set('bp_category_n', record.get('bp_category_n'));
                    record.getField('bp_type').setReadOnly(true);
                    record.getField('bp_type_n').setReadOnly(true);
                }

            }

        };
        //保存前调用
        window['${/parameter/@bp_seq}${/parameter/@layout_code}_on_layout_dynamic_before_submit'] = function(ds, record) {
            window['${/parameter/@layout_code}_lock_layout_dynamic_window']();
            var agent_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_master_agent_division');
            var ds_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_master');
            var  record_agent =$(agent_id).getAll();
            var bank_ds_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_master_bank_account');
            var bank_record = $(bank_ds_id).getAll();
            if(bank_record.length>0){
                var flag = true;
                for(var i=0;i<bank_record.length;i++){
                    var full_name=bank_record[i].get('bank_full_name');
                    var branch_name=bank_record[i].get('bank_branch_name');
                    if (!Leaf.isEmpty(bank_record[i].get('bank_full_name'))&&
                        !Leaf.isEmpty(bank_record[i].get('bank_branch_name'))){
                        if(branch_name.indexOf(full_name)==-1){
                            flag = false;
                        }
                    }

                    if(flag == false){
                        Leaf.showErrorMessage('${l:PROMPT}', '请填写支行全称(例如:上海浦东发展银行外高桥保税区支行)');
                        return false;
                    }
                }
            }
            //增加三位字母大写的校验
            var head_record = $(ds_id).getCurrentRecord();
            var english_name= head_record.get('english_name');
            var patrn = /^[A-Z]{3}$/;
            //对统一社会信用代码和身份生进行校验

            if(patrn.test(english_name)==false){

                $L.showErrorMessage('错误','代理店代码为三位大写字母!',null,null);
                window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
                return false;
            }
            if(record_agent.length == 0){
                Leaf.showMessage('${l:PROMPT}', '必须维护租赁物信息且每种租赁物只能维护一次!');
                window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
                return  false;
            }else{
                window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
            }
            var social_code=head_record.get('social_code');
            var id_card_no_leg=head_record.get('id_card_no_leg');
            if(id_card_no_leg){
                if(!checkCard(id_card_no_leg)){
                    $L.showErrorMessage("错误",'请输入合法的身份证号!',null,null);
                    window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
                    return false;
                }}
            if(social_code){
                // if(!CheckSocialCreditCode(social_code)){
                //     $L.showErrorMessage("错误",'请输入正确的社会信用代码!',null,null);
                //     window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
                //     return false;
                // }
                }
        };
        window['${/parameter/@layout_code}_user_button1_layout_dynamic_click'] = function () {
            window['${/parameter/@layout_code}_lock_layout_dynamic_window']();
            var agent_renew_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_agent_renew');
            var lineDs = $(agent_renew_id);
            if (lineDs.getAll().length != 0) {
                lineDs.submit();
                window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
            } else {
                window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
            }
        };

        function hls303_record_field_validator(record, name, value) {

            if (!Ext.isEmpty(value)) {
                if (name == 'agent_bs_area_level') {
                    if (value > 100 || value < 0) {
                        flag = flag + 1;
                        return '值不能大于100小于0';
                    }
                }
                if (name == 'validity_period_from') {
                    var date_to = record.get('validity_period_to');
                    if (value >= date_to) {
                        flag = flag + 1;
                        return '开始应用日期不能晚于开始结束日期!';
                    }
                }
                if (name == 'validity_period_to') {
                    var date_from = record.get('validity_period_from');
                    if (value <= date_from) {
                        flag = flag + 1;
                        return '开始应用日期不能晚于开始结束日期!';
                    }
                }
                return true;
            }
            return true;

        }

        function hls303d_record_field_validator(record, name, value) {

            if (!Ext.isEmpty(value)) {

                if (name == 'valid_date_from') {
                    var date_to = record.get('valid_date_to');
                    if (value >= date_to) {
                        flag = flag + 1;
                        return '续约有效期从不能晚于续约有效期到!';
                    }
                }
                if (name == 'valid_date_to') {
                    var date_from = record.get('valid_date_from');
                    if (value <= date_from) {
                        flag = flag + 1;
                        return '续约有效期从不能晚于续约有效期到!';
                    }
                }
                return true;
            }
            return true;

        }


        //保存submitsuccess调用
        window['${/parameter/@layout_code}_on_layout_dynamic_submitsuccess'] = function (ds, record, res) {
            window['${/parameter/@layout_code}_lock_layout_dynamic_window']();
            var ds_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_master');
            var bp_record = $(ds_id).getCurrentRecord();

            var bp_id = bp_record.get('bp_id');

            // Leaf.request({
            //     url: $('hls303_sap_eai_create_customer_link').getUrl(),
            //     para: {
            //         bp_id: bp_id
            //     },
            //     scope: this,
            //     success: function () {
            //         Leaf.request({
            //             url: $('hls303_sap_eai_create_vender_link').getUrl(),
            //             para: {
            //                 bp_id: bp_id
            //             },
            //             scope: this,
            //             success: function () {
            //
            //                 $(ds_id).query();
            //
            //                 window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
            //             },
            //             failure: function () {
            //                 window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
            //             },
            //             error: function () {
            //                 window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
            //             },
            //             sync: true
            //         });
            //     },
            //     failure: function () {
            //         window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
            //     },
            //     error: function () {
            //         window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();
            //     },
            //     sync: true
            // });

            window['${/parameter/@layout_code}_unlock_layout_dynamic_window']();

        };

        //新增和加载时调用(form)
        window['${/parameter/@bp_seq}${/parameter/@layout_code}_on_layout_dynamic_form_add_and_load'] = function (ds, record, config_records, bp_seq) {
            var ds_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_master');
            var ds_renew_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_agent_renew');
            if (ds.id == ds_id) {
                var record = $(ds_id).getCurrentRecord();
                record.getField('agent_bs_area_level').setPropertity('validator', 'hls303_record_field_validator');
                record.getField('validity_period_from').setPropertity('validator', 'hls303_record_field_validator');
                record.getField('validity_period_to').setPropertity('validator', 'hls303_record_field_validator');
                if(record.get('extra_nam')=='茂甲'||record.get('extra_nam')=='铁甲'){
                    record.getField('agent_phone').setRequired(true);
                }
            }
            if (ds_renew_id == ds.id) {
                ds.getField('valid_date_to').setPropertity('validator', 'hls303d_record_field_validator');
                ds.getField('valid_date_from').setPropertity('validator', 'hls303d_record_field_validator');
            }
        };
        //加载时调用(grid,table,gridBox)
        window['${/parameter/@bp_seq}${/parameter/@layout_code}_on_layout_dynamic_grid_load'] = function (ds, record, config_records, bp_seq) {
            var ds_renew_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_agent_renew');
            if (ds_renew_id) {
                if (ds_renew_id == ds.id) {
                    ds.getField('valid_date_to').setPropertity('validator', 'hls303d_record_field_validator');
                    ds.getField('valid_date_from').setPropertity('validator', 'hls303d_record_field_validator');
                }
            }
        };


        //add by zhuxianfei 20180913
        //新增
        window['${/parameter/@layout_code}_user_button2_layout_dynamic_click'] = function () {
            var ds_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_agent_renew');
            var grid_id = ds_id.replace('ds', 'layout_grid_id');

            $(grid_id).showEditorByRecord($(ds_id).create());
        };


        //删除
        window['${/parameter/@layout_code}_user_button3_layout_dynamic_click'] = function () {
            var ds_id = get_dsid_by_basetable(window['${/parameter/@layout_code}_layoutDataSetList'], 'hls_bp_agent_renew');
            $(ds_id).remove();
        };


        //超链接渲染
        window['${/parameter/@bp_seq}${/parameter/@layout_code}_dynamic_link_renderer'] = function (value, record, name, config_record, bp_seq) {
            var link_function = '';
            var agent_id = record.get('agent_id');
            window['${/parameter/@bp_seq}${/parameter/@layout_code}_hls_link_render_record'][record.id + '---' + name] = record;
            if (name == 'attachment') {
                return '<a href="javascript:hls_attachment_window_open(\'' + agent_id + '\',\'' + record.id + '\',\'' + record.ds.id + '\');">' + '附件上传' + '</a>';
            } else if (name == 'atm_attachment') {
                link_function = 'upload_file';
                return '<a href="javascript:window[\'' + link_function + '\'](\'' + record.id + '\',\'' + name + '\',\'' + config_record.get('query_only') + '\');">' + config_record.get('prompt') + '</a>';
            } else if (name == 'attach_file_name') {
                if (value != null) {
                    var link = '${/request/@context_path}/atm_download.lsc?attachment_id=';
                    var str = value.split(';;');
                    var url = '';
                    for (var i = 0; i < str.length; i++) {
                        //
                        var temp = str[i].split('--');
                        if (!Leaf.isEmpty(temp[0])) {
                            var file_name = temp[0].toUpperCase();
                            var file_suffix = temp[0].substr(temp[0].lastIndexOf('.') + 1).toUpperCase();
                            if (file_name.indexOf('.PDF') >= 0) {
                                url = url + '<a href=javascript:view_pdf(\'' + temp[1] + '\')>' + temp[0] + '</a>' + ',';
                            } else if (file_suffix == 'BMP' || file_suffix == 'JPG' || file_suffix == 'JPEG' || file_suffix == 'PNG' || file_suffix == 'GIF') {
                                url = url + '<a href=' + link + temp[1] + ' ref="img">' + temp[0] + '</a>' + ',';
                            } else {
                                url = url + '<a href=' + link + temp[1] + '>' + temp[0] + '</a>' + ',';
                            }
                        }
                    }
                    return url;

                }
            }
        };

        function upload_file(id, name, query_only) {
            var record = window['${/parameter/@layout_code}_hls_link_render_record'][id + '---' + name];
            if (record.get('check_id')) {
                var url;
                if (query_only == 'Y') {
                    url = $('prj500_cdd_downloadFile_id').getUrl() + '?table_name=PRJ_CDD_ITEM_CHECK&header_id=' + record.get('check_id');
                } else {
                    url = $('prj500_cdd_uploadFile_id').getUrl() + '?table_name=PRJ_CDD_ITEM_CHECK&header_id=' + record.get('check_id');
                }

                var win = new Leaf.Window({
                    url: url,
                    title: '${l:HLS.SUPPORTING_DOCUMENT}',
                    id: 'prj500_cdd_uploadFile_screen_id',
                    width: 850,
                    height: 400
                });

                win.on('close', function () {
                    record.ds.query();
                });
            } else {
                Leaf.showMessage('${l:HLS.PROMPT}', '请先保存!');

            }
        }

        function hls_attachment_window_open(agent_id, record_id, ds_id) {
            if (!agent_id || agent_id == 'undefined') {
                Leaf.showMessage('提示', '请输入必须信息保存后再上传附件!');
                return;
            }

            url = $('prj500_cdd_uploadFile_id').getUrl() + '?table_name=HLS_BP_AGENT_RENEW&header_id=' + agent_id;
            wd = new Leaf.Window({
                id: 'open_attachment_window',
                url: url,
                title: '附件上传',
                height: 350,
                width: 850
            });
            wd.on('close', function () {
                $('AGENT_RENEW_G_AGENT_RENEW_hls_bp_agent_renew_ds').query();
            });

        }

        // end  add by zhuxianfei 20180913


        ]]></script>
        <a:screen-include screen="modules/cont/CON500/con_contract_get_layout_code.lview"/>
    </a:view>
</a:screen>