付煜
2022-04-07 0092ca1d84e5065ec0e00c900fcb093cd70baedf
force-app/main/default/aura/RetrospectiveWeeklyReport/RetrospectiveWeeklyReportHelper.js
@@ -1,5 +1,6 @@
({
    doinit: function (component, event, helper) {
        debugger
        this.report_date_list(component, event, helper, 5);
        component.set('v.login', true);
        var action = component.get('c.getalldata');
@@ -11,6 +12,12 @@
                component.set('v.fieldsmap', res.fieldsMap);
                component.set('v.allselectlist', res.allselectlist);
                component.set('v.doclist', res.doclist);
                //fy
                debugger
                var xx=res.UserProType;
                component.set('v.UserProType', res.UserProType);
                var gg=component.get('v.UserProType');
                //fy
                component.find('select_agency_person').set('v.options', this.conv_selected(res.allselectlist.AgencyPerson__c));
                component.find('select_DealerPersonnel').set('v.options', this.conv_selected(res.allselectlist.DealerPersonnel__c));
                component.find('select_purpose_type').set('v.options', this.conv_selected(res.allselectlist.WorkRecord__c));
@@ -19,6 +26,8 @@
                component.set('v.selected_agency_person', res.allselectlist.AgencyPerson__c[0].label);
                component.set('v.dialog_type', '新建');
                this.get_reports(component, event, helper, component.find('select_date').get('v.value'), component.find('select_agency_person').get('v.value'));
                component.set('v.PIConfig', res.PIConfig);// 20220222 PI改造 by Bright
                component.set('v.login', false);
            }
            else {
@@ -77,10 +86,46 @@
                }
                if (res.reports.length > 0) {
                    component.set('v.list_message', '');
                    // PI 改造 By Bright 20220328
                    if(true){
                        let doctor_awsids = res.reports.map(function(d){return d.doctor2__r.AWS_Data_Id__c;});
                        let PIConfig = component.get('v.PIConfig');
                        let staticResourceAgencyContact = JSON.parse(PIConfig.staticResourceAgencyContact);
                        if(doctor_awsids.length > 0){
                            AWSService.search(staticResourceAgencyContact.searchUrl,{
                                dataIds:doctor_awsids
                            }, function(data){
                                if(data && data.object && data.object.length){
                                    let m = {};
                                    for(let di in data.object){
                                        if(data.object[di] && data.object[di].dataId){
                                            m[data.object[di].dataId] = data.object[di];
                                        }
                                    }
                                    for(let ri in res.reports){
                                        if(res.reports[ri] && res.reports[ri].doctor2__r && res.reports[ri].doctor2__r.AWS_Data_Id__c && m.hasOwnProperty(res.reports[ri].doctor2__r.AWS_Data_Id__c)){
                                            res.reports[ri].doctor2__r.awsdata = m[res.reports[ri].doctor2__r.AWS_Data_Id__c];
                                        }
                                    }
                                    component.set('v.reports', res.reports);
                               component.set('v.report_count', res.reports.length);
                                }
                                component.set('v.login', false);
                            }, staticResourceAgencyContact.token);
                        }else{
                            component.set('v.login', false);
                        }
                    }
                } else {
                    component.set('v.list_message', 'no_data');
                        component.set('v.login', false);
                }
                component.set('v.login', false);
            }
            else {
                component.set('v.errorMessage', 'get_reports failed.');
@@ -165,7 +210,7 @@
                //使用产品2
                var UseProduct2Text = '';
                var UseProduct2Id = '';
                if (select_data['UseProduct2__c'] != '') {
                if (select_data['UseProduct2__c'] != ''&&select_data['UseProduct2__c'] != undefined) {
                    for (var i = 0; i < reports.length; i++) {
                        if (reports[i]['UseProduct2__c'] == select_data['UseProduct2__c']) {
                            UseProduct2Text = reports[i]['UseProduct2__r']['Name'];
@@ -178,7 +223,7 @@
                //使用产品3
                var UseProduct3Text = '';
                var UseProduct3Id = '';
                if (select_data['UseProduct3__c'] != '') {
                if (select_data['UseProduct3__c'] != ''&&select_data['UseProduct3__c'] != undefined) {
                    for (var i = 0; i < reports.length; i++) {
                        if (reports[i]['UseProduct3__c'] == select_data['UseProduct3__c']) {
                            UseProduct3Text = reports[i]['UseProduct3__r']['Name'];
@@ -453,6 +498,7 @@
    //编辑按钮
    edit_button: function (component, event, helper) {
        this.allclear(component);
        debugger
        component.set('v.loadOpp', true);
        var index = event.getSource().get('v.value');
        component.set('v.select_report_data', component.get('v.reports')[index]);
@@ -488,6 +534,7 @@
            // 担当 Person_In_Charge2__c
            Person_In_Charge2__c = component.find('select_agency_person').get('v.value');
        }
        debugger
        // Agency_Report_Header__c
        var Agency_Report_Header__c = component.get('v.agency_report_header_id');
        // 医院 
@@ -510,6 +557,7 @@
        var WorkRecord__c = component.find('select_purpose_type').get('v.value');
         // 效果/进度    EffectProgress__c
        var EffectProgress__c = component.find('select_EffectProgress').get('v.value');
        // alert(EffectProgress__c);
         // 科室同来耗材月使用量   ConsumptionOfConsumables__c      
        var ConsumptionOfConsumables__c = component.find('select_ConsumptionOfConsumables').get('v.value');
         // 术士分类   WarlockClassification__c  
@@ -554,18 +602,22 @@
        if (!Agency_Report_Header__c) { this.error("Report Header Id 不存在"); }
        if (!Agency_Hospital__c) { error.push("医院 不存在"); }  
        if (!UseProduct1__c) { error.push("使用产品1(产品型号) 不存在"); } 
        if (!UseProduct2__c) { error.push("使用产品2 不存在"); }
        if (!UseProduct3__c) { error.push("使用产品3 不存在"); }
        // if (!UseProduct2__c) { error.push("使用产品2 不存在"); }
        // if (!UseProduct3__c) { error.push("使用产品3 不存在"); }
        if (!Department_Cateogy__c) { error.push("科室 不存在"); }
        if (!DealerPersonnel__c) { error.push("经销商人员 不存在"); }
        if (!doctor2__c) { error.push("医院人员 不存在"); }
        if (!WorkRecord__c) { error.push("工作记录 不存在"); }
        if (!EffectProgress__c) { error.push("效果/进度 不存在"); } 
        // if (!OtherBrandConsumables__c) { error.push("术士分类 不存在"); }
        if (!ProductCcategory__c) { error.push("已采用其他品牌  不存在"); }
        if (ProductCcategory__c==''||ProductCcategory__c==""||ProductCcategory__c==undefined) { error.push("已采用其他品牌  不存在"); }
        // if (!productCategories__c) { error.push("其他品牌产品类别 不存在"); }
        if (!ConsumptionOfConsumables__c) { error.push("科室同类耗材月使用量 不能为空"); }
        if (!warlocksNumber__c) { error.push("产品用量 不能为空"); }
        //fy start
        if(WorkRecord__c != 'SIS'){
            if (!warlocksNumber__c) { error.push("产品用量 不能为空"); }
        }
        //fy end
        for (var i = 0; i < error.length; i++) {
            component.set('v.errorMessage', error[i]);
            this.showErrorToast(component);
@@ -1126,6 +1178,7 @@
                    var default_doctor = component.get('v.default_select_doctor_id');
                    if (default_doctor != '' && res.length > 0) {
                        var doctor_title = '';
                        let awsids = [];
                        for (var i = 0; i < res.length; i++) {
                            if (res[i].value == default_doctor) {
                                res[i].selected = true;
@@ -1133,9 +1186,38 @@
                            } else {
                                res[i].selected = false;
                            }
                            if(res[i].AWS_Data_Id__c){
                                awsids.push(res[i].AWS_Data_Id__c);
                            }
                        }
                        component.find('select_doctor').set('v.options', res);
                        component.set('v.doctor_title', doctor_title);
                        if(awsids.length > 0){
                            let PIConfig = component.get('v.PIConfig');
                            let staticResourceAgencyContact = JSON.parse(PIConfig.staticResourceAgencyContact);
                            AWSService.search(staticResourceAgencyContact.searchUrl,{
                                dataIds:awsids
                            }, function(data){
                                if(data && data.object && data.object.length){
                                    let m = {};
                                    for(let di in data.object){
                                        if(data.object[di] && data.object[di].dataId){
                                            m[data.object[di].dataId] = data.object[di];
                                        }
                                    }
                                    for(let ri in res){
                                        if(res[ri] && res[ri].AWS_Data_Id__c && m.hasOwnProperty(res[ri].AWS_Data_Id__c)){
                                            res[ri].label = m[res[ri].AWS_Data_Id__c].name;
                                        }
                                    }
                                    component.find('select_doctor').set('v.options', res);
                                }
                                component.set('v.login', false);
                            }, staticResourceAgencyContact.token);
                        }
                    } else {
                        component.find('select_doctor').set('v.options', res);
                        if (res.length > 0) {
@@ -1224,6 +1306,7 @@
    },
    //弹出 成功提示
    showSuccessToast: function (component) {
        debugger
        $A.util.removeClass(component.find('successDiv'), 'slds-hide');
        window.setTimeout($A.getCallback(function () {
            $A.util.addClass(component.find('successDiv'), 'slds-hide');
@@ -1233,6 +1316,7 @@
    },
    //弹出 成功提示
    showSuccessToast01: function (component) {
        debugger
        $A.util.removeClass(component.find('successDiv01'), 'slds-hide');
        window.setTimeout($A.getCallback(function () {
            $A.util.addClass(component.find('successDiv01'), 'slds-hide');
@@ -1242,6 +1326,7 @@
    },
    //弹出 错误提示
    showErrorToast: function (component) {
        debugger
        $A.util.removeClass(component.find('errorDiv'), 'slds-hide');
        window.setTimeout($A.getCallback(function () {
            $A.util.addClass(component.find('errorDiv'), 'slds-hide');
@@ -1472,14 +1557,6 @@
                    csvStringResult +=  objectRecords[i].UseProduct2__r.Name;
                } else if (skey == 'UseProduct3__c') {
                    csvStringResult +=  objectRecords[i].UseProduct3__r.Name;
                } else if (skey == 'EffectProgress__c'){
                    csvStringResult +=  objectRecords[i].EffectProgress__r.EffectProgress__c;
                }else if (skey == 'WarlockClassification__c'){
                    csvStringResult +=  objectRecords[i].WarlockClassification__r.WarlockClassification__c;
                }else if(skey == 'ProductCcategory__c'){
                    csvStringResult +=  objectRecords[i].ProductCcategory__r.ProductCcategory__c;
                }else if(skey == 'productCategories__c'){
                    csvStringResult +=  objectRecords[i].productCategories__r.productCategories__c;
                }else{
                    csvStringResult +=  objectRecords[i][skey] ;
                }
@@ -1526,14 +1603,6 @@
                    content += '<td>' + objectRecords[i].UseProduct2__r.Name + '</td>';
                } else if (skey == 'UseProduct3__c') {
                    content += '<td>' + objectRecords[i].UseProduct3__r.Name + '</td>';
                } else if (skey == 'EffectProgress__c'){
                    content += '<td>' + objectRecords[i].EffectProgress__r.EffectProgress__c + '</td>';
                }else if (skey == 'WarlockClassification__c'){
                    content += '<td>' + objectRecords[i].WarlockClassification__r.WarlockClassification__c + '</td>';
                }else if (skey == 'ProductCcategory__c'){
                    content += '<td>' + objectRecords[i].ProductCcategory__r.ProductCcategory__c + '</td>';
                }else if (skey == 'productCategories__c'){
                    content += '<td>' + objectRecords[i].productCategories__r.productCategories__c + '</td>';
                }else{
                    content += '<td>' + objectRecords[i][skey] + '</td>';
                }
@@ -1564,7 +1633,45 @@
                var res = response.getReturnValue();
                console.log('输入的开始日期3' + res);
                component.set('v.login', false);
                this.showExportDate(component, res);
                // PI 改造 By Bright 20220328
                if(true){
                    let awsids = [];
                    for (let ri in res) {
                        if(res[ri] && res[ri].doctor2__r && res[ri].doctor2__r.AWS_Data_Id__c){
                            awsids.push(res[ri].doctor2__r.AWS_Data_Id__c);
                        }
                    }
                    if(awsids.length > 0){
                        let PIConfig = component.get('v.PIConfig');
                        let staticResourceAgencyContact = JSON.parse(PIConfig.staticResourceAgencyContact);
                        AWSService.search(staticResourceAgencyContact.searchUrl,{
                            dataIds:awsids
                        }, function(data){
                            if(data && data.object && data.object.length){
                                let m = {};
                                for(let di in data.object){
                                    if(data.object[di] && data.object[di].dataId){
                                        m[data.object[di].dataId] = data.object[di];
                                    }
                                }
                                for(let ri in res){
                                    if(res[ri] && res[ri].doctor2__r && res[ri].doctor2__r.AWS_Data_Id__c && m.hasOwnProperty(res[ri].doctor2__r.AWS_Data_Id__c)){
                                        res[ri].doctor2__r.Name = m[res[ri].doctor2__r.AWS_Data_Id__c].name;
                                    }
                                }
                            }
                            helper.showExportDate(component, res);
                            component.set('v.login', false);
                        }, staticResourceAgencyContact.token);
                    }else{
                        helper.showExportDate(component, res);
                    }
                }
                component.set('v.reports_date', res);
            } else {
                alert('导出失败,请检查活动日');
@@ -1703,7 +1810,7 @@
    //工作会记录
    selectPurposeType: function (component,event,helper) {
        var doctor_value = component.find('select_purpose_type').get('v.value');
        alert(doctor_value);
        // alert(doctor_value);
        if(doctor_value != ''){
        var action = component.get('c.selectPurposeTypes');
        action.setParams({
@@ -1746,7 +1853,14 @@
        var select_ProductCcategory = component.find('select_ProductCcategory').get('v.value');
        if(select_ProductCcategory != ''){
            var result = component.find('result');
            var UserProType = component.get('v.UserProType');
        //fy
        $A.util.removeClass(result, 'disp_none');
        if(UserProType=='ENG'){
            $A.util.removeClass(result, 'disp_none');
        }else{
            $A.util.addClass(result, 'disp_none');
        }
        var action = component.get('c.selectProductCcategory01');
        action.setParams({
            "select_ProductCcategory": select_ProductCcategory
@@ -1767,14 +1881,20 @@
    },
    selectpurposetype : function(component,event,helper){
        var select_ProductCcategory = component.find('select_ProductCcategory').get('v.value');
        if (select_ProductCcategory == null && select_ProductCcategory == undefined) {
        if (select_ProductCcategory == null && select_ProductCcategory == undefined  && select_ProductCcategory == '') {
            var result = component.find('result');
        $A.util.removeClass(result, 'disp_none');
            // $A.util.removeClass(result, 'disp_none');
            if(UserProType=='ENG'){
                $A.util.removeClass(result, 'disp_none');
            }else{
                $A.util.addClass(result, 'disp_none');
            }
        } else {
            debugger
            component.find('select_productCategories').set('v.value', '');
            var result = component.find('result');
        $A.util.addClass(result, 'disp_none');
        this.select_ProductCcategory(component);
            $A.util.addClass(result, 'disp_none');
            this.select_ProductCcategory(component);
        }
    },
})