<?xml version="1.0" encoding="UTF-8"?> <!-- $Author: qm $Date: 2014-4-21 上午10:14:25 $Revision: 1.0 $Purpose: --> <a:screen xmlns:a="http://www.leaf-framework.org/application"> <a:init-procedure/> <a:view> <a:link id="insurance_attachment_uploadFile_id" url="${/request/@context_path}/modules/ast/AST503/uploadFile.lview"/> <a:link id="insurance_attachment_downloadFile_id" url="${/request/@context_path}/modules/ast/AST503/downloadFile.lview"/> <a:link id="insurance_attachment_uploadFileIns_id" url="${/request/@context_path}/modules/ast/AST503/uploadFileIns.lview"/> <a:link id="insurance_attachment_downloadFileIns_id" url="${/request/@context_path}/modules/ast/AST503/downloadFileIns.lview"/> <a:link id="insurance_endorse_link_id" url="${/request/@context_path}/modules/cont/CON762/con_insurance_endorse_change.lview"/> <a:link id="ast_con_insurance_window_link" url="${/request/@context_path}/modules/ast/AST503/ast_con_insurance_detail.lview"/> <a:link id="con_contract_get_layout_code_link_id" model="cont.CON500.con_contract_get_layout_code" modelaction="update"/> <script type="text/javascript"><![CDATA[ function insuranceUpdateHandler(ds, rec, name, val, oldVal) { if (name == 'insurance_date_from') { rec.set('insurance_year', val.getFullYear()); } else if (name == 'insurance_date_to' && val != null) { if (val < rec.get('insurance_date_from')) { Leaf.showMessage('提示', '终止日期不能小于于开始日期'); rec.set('insurance_date_to', null); } } else if (name == 'compulsory_rebate_rate') { // 计算返利 var val1 = rec.get('compulsory_insurance_amount'); rec.set('compulsory_rebate', val1 * val / 100); } else if (name == 'combustion_rebate_rate') { var val2 = rec.get('commercial_insurance_amount'); rec.set('combustion_rebate', val2 * val / 100); } else if (name == 'commercial_insurance_amount') { if (val == null || val == '') { rec.getField('combustion_rebate_rate').setReadOnly(true); } else { rec.getField('combustion_rebate_rate').setReadOnly(false); } } else if (name == 'compulsory_insurance_amount') { if (val == null || val == '') { rec.getField('compulsory_rebate_rate').setReadOnly(true); } else { rec.getField('compulsory_rebate_rate').setReadOnly(false); } } else if (name == 'insurance_type') { if (val == '20') { rec.set('compulsory_insurance_amount', ''); } else if (val == '10') { rec.set('compulsory_insurance_amount', ''); rec.set('damage_insurance_amount', ''); rec.set('third_party_insurance_amount', ''); rec.set('basic_non_deductible_amount', ''); rec.set('pilfer_insurance_amount', ''); rec.set('commercial_insurance_amount', ''); rec.set('glass_insurance_amount', ''); rec.set('seat_insurance_amount', ''); rec.set('combustion_insurance_amount', ''); } } else if (name == 'vci_insurance_date_from') { var date = new Date(val); date.setFullYear(date.getFullYear() + 1); rec.set('vci_insurance_date_to', date); } else if (name == 'tci_insurance_date_from') { var date = new Date(val); date.setFullYear(date.getFullYear() + 1); rec.set('tci_insurance_date_to', date); } } function submitsuccess() { $('ast_car_insurance_result_ds').query(); } function insuranceSelectHandler(ds, rec) { if ( !! rec.get('ast_con_car_insurance_id')) { $('ast_car_insurance_records_ds').setQueryParameter('ast_con_car_insurance_id', rec.get('ast_con_car_insurance_id')); $('ast_car_insurance_records_ds').query(); } } function receipt_attachment_upload(val, rec, name) { //return '<a href=javascript:open_upload_window(' + rec.get('ast_con_car_insurance_id') + ')>附件上传</a>'; return '<a href=javascript:open_upload_window(' + rec.id + ')>附件上传</a>'; } function open_upload_window(record_id) { var record = $('ast_car_insurance_result_ds').findById(record_id); var ast_con_car_insurance_id = record.get('ast_con_car_insurance_id'); if (Leaf.isEmpty(ast_con_car_insurance_id)) { Leaf.showMessage('提示', '请先保存再上传附件!'); return; } // var record = $('ast_car_insurance_result_ds').getCurrentRecord(); // var document_status = record.get('document_status'); var document_status = record.get('document_status'); var url; if (document_status == 'NEW' || document_status == 'CANCEL' || document_status == 'REJECTED') { url = $('insurance_attachment_uploadFile_id').getUrl() + '?table_name=AST_CON_INSURANCE&header_id=' + ast_con_car_insurance_id; } else { url = $('insurance_attachment_downloadFile_id').getUrl() + '?table_name=AST_CON_INSURANCE&header_id=' + ast_con_car_insurance_id; } var win = new Leaf.Window({ url: url, title: '${l:HLS.SUPPORTING_DOCUMENT}', id: 'insurance_uploadFile_id', width: 850, height: 400 }); win.on('close', function() {}); } function attachment_upload(val, rec, name) { //return '<a href=javascript:detail_upload_window(' + rec.get('ast_car_insurance_records_id') + ')>附件上传</a>'; return '<a href=javascript:detail_upload_window(' + rec.id + ')>附件上传</a>'; } function detail_upload_window(record_id) { var record = $('ast_car_insurance_records_ds').findById(record_id); var record_id = record.get('ast_car_insurance_records_id'); if (Leaf.isEmpty(record_id)) { Leaf.showMessage('提示', '请先保存再上传附件!'); return; } // var records = $('ast_car_insurance_records_ds').getCurrentRecord(); // var document_status = records.get('document_status'); var document_status = record.get('document_status'); var url; if (document_status == 'NEW' || document_status == 'REJECTED' || document_status == 'CANCEL') { url = $('insurance_attachment_uploadFileIns_id').getUrl() + '?table_name=AST_CAR_INSURANCE_RECORDS&header_id=' + record_id; } else { url = $('insurance_attachment_downloadFileIns_id').getUrl() + '?table_name=AST_CAR_INSURANCE_RECORDS&header_id=' + record_id; } var win = new Leaf.Window({ url: url, title: '${l:HLS.SUPPORTING_DOCUMENT}', id: 'insurance_records_uploadFile_id', width: 850, height: 400 }); win.on('close', function() {}); } function commercial_renderer(val, rec, name) { if (rec.get('commercial_insurance_amount') == null || rec.get('commercial_insurance_amount') == '') { rec.getField('combustion_rebate_rate').setReadOnly(true); } else { rec.getField('combustion_rebate_rate').setReadOnly(false); } return Leaf.formatMoney(val); } function compulsory_renderer(val, rec, name) { if (rec.get('compulsory_insurance_amount') == null || rec.get('compulsory_insurance_amount') == '') { rec.getField('compulsory_rebate_rate').setReadOnly(true); } else { rec.getField('compulsory_rebate_rate').setReadOnly(false); } return Leaf.formatMoney(val); } /*function remove() { ds = $('ast_car_insurance_grid_id'); ds.remove(); }*/ function check_insurance_type(record, name) { insurance_type = record.get('insurance_type'); if ((name == 'compulsory_insurance_amount' || name == 'travel_tax') && insurance_type == '10') { return 'ast_car_insurance_nf'; } if (insurance_type == '20' && (name == 'damage_insurance_amount' || name == 'third_party_insurance_amount' || name == 'basic_non_deductible_amount' || name == 'pilfer_insurance_amount' || name == 'commercial_insurance_amount' || name == 'glass_insurance_amount' || name == 'seat_insurance_amount' || name == 'combustion_insurance_amount' || name == 'others_insurance_amount')) { return 'ast_car_insurance_nf'; } return ''; } //批单更改 function insurance_endorse(val, rec, name) { return '<a href=javascript:open_insurance_endorse_window(' + rec.get('ast_car_insurance_id') + ')>批单更改</a>'; } function open_insurance_endorse_window(record_id) { var url = $('insurance_endorse_link_id').getUrl(); var win = new Leaf.Window({ id: 'con_insurance_endorse_win', url: url, params: { ast_car_insurance_id: record_id, winId: 'con_insurance_endorse_win' }, width: 720, height: 400 }); } function on_ast_con_detail_renderer(value, record, name) { var ast_con_car_insurance_id = record.get('ast_con_car_insurance_id'); if (ast_con_car_insurance_id) { return '<a href=javascript:open_ast_con_insurance_window(' + ast_con_car_insurance_id + ')>明细</a>'; } } function open_ast_con_insurance_window(ast_con_car_insurance_id) { var record = $('ast_car_insurance_result_ds').getCurrentRecord(); var document_status = record.get('document_status'); if (record.dirty) { Leaf.showMessage('${l:PROMPT}', '数据存在更新,请先保存'); } else { var param = {}; param['ast_con_car_insurance_id'] = ast_con_car_insurance_id; if (document_status == 'NEW' || document_status == 'CANCEL' || document_status == 'REJECTED') { param['function_code'] = 'AST503D'; } else { param['function_code'] = 'AST503Q'; } param['function_usage'] = 'MODIFY'; param['maintain_type'] = 'UPDATE'; param['url_title'] = '保险明细'; param['winid'] = 'ast_con_insurance_window_link_winid'; hls_doc_get_layout_code('con_contract_get_layout_code_link_id', param, 'ast_con_insurance_window_link', 'ast_car_insurance_result_ds'); } } function ast_car_insurance_load(ds) { var records = ds.getAll(); for (var i = 0;i < records.length;i++) { var document_status = records[i].get('document_status'); if (document_status == 'APPROVED' || document_status == 'APPROVING' || document_status == 'CANCEL' || Ext.isEmpty(document_status)) { records[i].getField('vci_insurance_company_desc').setReadOnly(true); records[i].getField('commercial_insurance_amount').setReadOnly(true); records[i].getField('vci_insurance_number').setReadOnly(true); records[i].getField('vci_insurance_date_from').setReadOnly(true); records[i].getField('vci_place_n').setReadOnly(true); records[i].getField('tci_insurance_company_desc').setReadOnly(true); records[i].getField('compulsory_insurance_amount').setReadOnly(true); records[i].getField('tci_insurance_number').setReadOnly(true); records[i].getField('tci_insurance_date_from').setReadOnly(true); records[i].getField('tci_place_n').setReadOnly(true); records[i].getField('travel_tax').setReadOnly(true); records[i].getField('pilfer_insurance_amount').setReadOnly(true); records[i].getField('ast_con_detail').setReadOnly(true); records[i].getField('damage_insurance_amount').setReadOnly(true); records[i].getField('third_party_insurance_amount').setReadOnly(true); records[i].getField('damage_nopay_insurance_flag').setReadOnly(true); records[i].getField('ref_v02').setReadOnly(true); } } } function ast_car_insurance_records_load(ds) { var records = ds.getAll(); for (var i = 0;i < records.length;i++) { var document_status = records[i].get('document_status'); if (document_status == 'APPROVED' || document_status == 'APPROVING' || Ext.isEmpty(document_status)) { records[i].getField('record_date').setReadOnly(true); records[i].getField('insurance_number').setReadOnly(true); records[i].getField('insurance_company_n').setReadOnly(true); records[i].getField('report_number').setReadOnly(true); records[i].getField('record_description').setReadOnly(true); records[i].getField('settle_claim_amount').setReadOnly(true); records[i].getField('store_person').setReadOnly(true); records[i].getField('store_person_tel').setReadOnly(true); records[i].getField('ins_person').setReadOnly(true); records[i].getField('ins_person_tel').setReadOnly(true); records[i].getField('material_option_n').setReadOnly(true); records[i].getField('mailmax').setReadOnly(true); records[i].getField('mailling_address').setReadOnly(true); } } } function ast_car_insurance_delete() { var records = $('ast_car_insurance_result_ds').getCurrentRecord(); var document_status = records.get('document_status'); if (document_status == 'NEW' || document_status == 'REJECTED' || document_status == 'document_status') { $('ast_car_insurance_result_ds').remove(records); } else { Leaf.showMessage('提示', '文件已审批或在审批中不能删除!'); } } function ast_car_insurance_records_delete() { var records = $('ast_car_insurance_records_ds').getCurrentRecord(); var document_status = records.get('document_status'); if (document_status == 'NEW' || document_status == 'REJECTED' || document_status == 'document_status') { $('ast_car_insurance_records_ds').remove(records); } else { Leaf.showMessage('提示', '文件已审批或在审批中不能删除!'); } } ]]></script> <a:dataSets> <a:screen-include screen="modules/cont/CON500/con_contract_get_layout_code.lview"/> <a:dataSet id="fnd_province_ds" autoQuery="true" fetchAll="true" model="ast.AST503.fnd_province"/> <a:dataSet id="insurance_company_ds" lookupCode="INSURANCE_COMPANY"/> <a:dataSet id="material_option_ds" lookupCode="MATERIAL_OPTION"/> <a:dataSet id="ast_car_insurance_result_ds" model="ast.AST503.ast_con_insurance" selectable="true" selectionModel="single" submitUrl="${/request/@context_path}/modules/ast/AST503/ast_car_insurance_save.lsc"> <a:fields> <a:field name="ast_con_car_insurance_id"/> <a:field name="contract_id"/> <a:field name="bp_id"/> <a:field name="vci_insurance_company"/> <a:field name="vci_insurance_company_desc" displayField="code_value_name" options="insurance_company_ds" returnField="vci_insurance_company" valueField="code_value"/> <a:field name="commercial_insurance_amount"/> <a:field name="vci_insurance_number"/> <a:field name="vci_insurance_date_from" datatype="java.sql.date"/> <a:field name="vci_insurance_date_to" datatype="java.sql.date" readOnly="true"/> <a:field name="vci_place"/> <a:field name="vci_place_n" displayField="description" options="fnd_province_ds" returnField="vci_place" valueField="province_id"/> <a:field name="tci_insurance_company"/> <a:field name="tci_insurance_company_desc" displayField="code_value_name" options="insurance_company_ds" returnField="tci_insurance_company" valueField="code_value"/> <a:field name="compulsory_insurance_amount"/> <a:field name="tci_insurance_number"/> <a:field name="tci_insurance_date_from" datatype="java.sql.date"/> <a:field name="tci_insurance_date_to" datatype="java.sql.date" readOnly="true"/> <a:field name="tci_place"/> <a:field name="tci_place_n" displayField="description" options="fnd_province_ds" returnField="tci_place" valueField="province_id"/> <a:field name="travel_tax"/> <a:field name="pilfer_insurance_amount"/> <a:field name="document_status" defaultValue="NEW"/> <a:field name="document_type" defaultValue="INS_RENEW"/> <a:field name="document_category" defaultValue="CONTRACT"/> <a:field name="damage_insurance_amount"/> <a:field name="third_party_insurance_amount"/> <a:field name="damage_nopay_insurance_flag" checkedValue="Y" defaultValue="N" uncheckedValue="N"/> <a:field name="ref_v02" checkedValue="Y" defaultValue="N" uncheckedValue="N"/> </a:fields> <a:events> <a:event name="update" handler="insuranceUpdateHandler"/> <a:event name="select" handler="insuranceSelectHandler"/> <a:event name="submitsuccess" handler="submitsuccess"/> <a:event name="load" handler="ast_car_insurance_load"/> </a:events> </a:dataSet> <!-- queryUrl="${/request/@context_path}/autocrud/ast.AST501.ast_car_insurance_records" --> <a:dataSet id="ast_car_insurance_records_ds" bindName="records_info" bindTarget="ast_car_insurance_result_ds" model="ast.AST503.ast_car_insurance_records" selectable="true" selectionModel="single"> <a:fields> <a:field name="damage_serious_flag" checkedValue="Y" defaultValue="N" uncheckedValue="N"/> <a:field name="payment_finish_flag" readOnly="true"/> <a:field name="document_status" defaultValue="NEW"/> <a:field name="document_type" defaultValue="INS_CLAIM"/> <a:field name="document_category" defaultValue="CONTRACT"/> <a:field name="insurance_company"/> <a:field name="insurance_company_n" displayField="code_value_name" options="insurance_company_ds" required="true" returnField="insurance_company" valueField="code_value"/> <a:field name="material_option_n" displayField="code_value_name" options="material_option_ds" returnField="material_option" valueField="code_value"/> <a:field name="material_option"/> </a:fields> <a:events> <a:event name="load" handler="ast_car_insurance_records_load"/> </a:events> </a:dataSet> </a:dataSets> <a:hBox height="5"/> <a:grid id="ast_car_insurance_grid_id" bindTarget="ast_car_insurance_result_ds" height="165" marginWidth="50" navBar="true"> <a:toolBar> <a:button text="保险续保"/> <a:button type="add"/> <a:button click="ast_car_insurance_delete" icon="${/request/@context_path}/images/remove.gif" iconAlign="left" text="删除" width="50"/> <!-- <a:button type="delete" /> --> </a:toolBar> <a:columns> <a:column name="vci_insurance_company_desc" editor="ast_car_insurance_combox" prompt="商业险保险公司" width="100"/> <a:column name="commercial_insurance_amount" align="right" editor="ast_car_insurance_nf" prompt="商业险金额" renderer="Leaf.formatMoney" width="100"/> <a:column name="vci_insurance_number" align="right" editor="ast_car_insurance_tf" prompt="保单号" width="100"/> <a:column name="vci_insurance_date_from" editor="ast_car_insurance_dp" prompt="生效日" renderer="Leaf.formatDate" width="100"/> <a:column name="vci_insurance_date_to" editor="ast_car_insurance_dp" prompt="失效日" renderer="Leaf.formatDate" width="100"/> <a:column name="vci_place_n" editor="ast_car_insurance_combox" prompt="出单地" width="100"/> <a:column name="pilfer_insurance_amount" align="right" editor="ast_car_insurance_nf" prompt="盗抢险" renderer="Leaf.formatMoney" width="100"/> <a:column name="damage_insurance_amount" align="right" editor="ast_car_insurance_nf" prompt="车辆损失险金额" renderer="Leaf.formatMoney" width="100"/> <a:column name="third_party_insurance_amount" align="right" editor="ast_car_insurance_nf" prompt="第三者责任险金额" renderer="Leaf.formatMoney" width="100"/> <a:column name="damage_nopay_insurance_flag" editor="ast_car_insurance_cb" prompt="不计免赔"/> <a:column name="ref_v02" editor="ast_car_insurance_cb" prompt="特别约定"/> <a:column name="document_status_n" prompt="状态" width="100"/> <a:column name="tci_insurance_company_desc" editor="ast_car_insurance_combox" prompt="交强险保险公司" width="100"/> <a:column name="compulsory_insurance_amount" align="right" editor="ast_car_insurance_nf" prompt="交强险金额" renderer="Leaf.formatMoney" width="100"/> <a:column name="tci_insurance_number" align="right" editor="ast_car_insurance_tf" prompt="保单号" width="100"/> <a:column name="tci_insurance_date_from" editor="ast_car_insurance_dp" prompt="生效日" renderer="Leaf.formatDate" width="100"/> <a:column name="tci_insurance_date_to" editor="ast_car_insurance_dp" prompt="失效日" renderer="Leaf.formatDate" width="100"/> <a:column name="tci_place_n" editor="ast_car_insurance_combox" prompt="出单地" width="100"/> <a:column name="travel_tax" align="right" editor="ast_car_insurance_nf" prompt="车船税金额" renderer="Leaf.formatMoney" width="100"/> <a:column name="ast_con_detail" align="center" prompt="明细" renderer="on_ast_con_detail_renderer"/> <a:column align="center" prompt="附件上传" renderer="receipt_attachment_upload" width="80"/> </a:columns> <a:editors> <a:lov id="ast_car_insurance_lov"/> <a:datePicker id="ast_car_insurance_dp"/> <a:numberField id="ast_car_insurance_nf"/> <a:textField id="ast_car_insurance_tf"/> <a:checkBox id="ast_car_insurance_cb"/> <a:comboBox id="ast_car_insurance_combox"/> </a:editors> </a:grid> <a:hBox height="10"/> <a:grid id="ast_car_insurance_record_id" bindTarget="ast_car_insurance_records_ds" height="165" marginWidth="50" navBar="true"> <a:toolBar> <a:button text="保险理赔"/> <a:button id="btn_ref_add" type="add"/> <!-- <a:button id="btn_ref_del" type="delete"/> --> <a:button click="ast_car_insurance_records_delete" icon="${/request/@context_path}/images/remove.gif" iconAlign="left" text="删除" width="50"/> </a:toolBar> <a:columns> <a:column name="record_date" editor="edit_dp" prompt="出险时间" renderer="Leaf.formatDate" width="120"/> <a:column name="insurance_number" editor="edit_tf" prompt="保单号"/> <a:column name="insurance_company_n" editor="edit_comb" prompt="保险公司"/> <a:column name="report_number" editor="edit_tf" prompt="报案号" width="120"/> <a:column name="document_status_n" align="center" prompt="单据状态" width="100"/> <!-- <a:column name="payment_finish_flag" editor="edit_cb" prompt="是否完成支付" width="100"/> --> <!-- <a:column name="insurance_type" editor="edit_tf" prompt="险种" width="200"/> --> <a:column name="record_description" editor="edit_tf" prompt="车损描述" width="350"/> <a:column name="settle_claim_amount" align="right" editor="edit_nf" prompt="预赔金额" renderer="Leaf.formatMoney" width="120"/> <a:column name="store_person" editor="edit_tf" prompt="店面接待人" width="120"/> <a:column name="store_person_tel" editor="edit_tf" prompt="联系方式" width="120"/> <a:column name="ins_person" editor="edit_tf" prompt="保险公司联系人" width="120"/> <a:column name="ins_person_tel" editor="edit_tf" prompt="联系方式" width="120"/> <a:column name="material_option_n" editor="edit_comb" prompt="邮寄资料选择"/> <a:column name="mailmax" editor="edit_tf" prompt="邮箱" width="120"/> <a:column name="mailling_address" editor="edit_tf" prompt="邮寄地址" width="200"/> <!-- <a:column name="damage_serious_flag" editor="edit_cb" prompt="是否报废" width="120"/> --> <a:column align="center" prompt="附件上传" renderer="attachment_upload" width="80"/> </a:columns> <a:editors> <a:textField id="edit_tf"/> <a:datePicker id="edit_dp"/> <a:numberField id="edit_nf"/> <a:checkBox id="edit_cb"/> <a:comboBox id="edit_comb"/> </a:editors> </a:grid> </a:view> </a:screen>