259 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Vue
		
	
	
	
			
		
		
	
	
			259 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Vue
		
	
	
	
<template>
 | 
						|
    <view>
 | 
						|
        <view class="mb20">
 | 
						|
            <!-- 团队业绩 -->
 | 
						|
            <team
 | 
						|
                :data="form.goalsClassifyVOList[0]"
 | 
						|
                :monthList="monthList"
 | 
						|
                :monthIndex="monthIndex"
 | 
						|
                @change-month="changeMonth"
 | 
						|
                @close-fold="closeFold"
 | 
						|
                ref="teamRef"
 | 
						|
            />
 | 
						|
        </view>
 | 
						|
        <view class="mb20">
 | 
						|
            <!-- 安置业绩 -->
 | 
						|
            <settle 
 | 
						|
                :data="form.goalsClassifyVOList[1]"
 | 
						|
                :monthList="monthList"
 | 
						|
                :monthIndex="monthIndex"
 | 
						|
                @change-month="changeMonth"
 | 
						|
                ref="settleRef"
 | 
						|
            />
 | 
						|
        </view>
 | 
						|
        <view class="mb20">
 | 
						|
            <!-- 推荐业绩 -->
 | 
						|
            <recommen 
 | 
						|
                :data="form.goalsClassifyVOList[2]"
 | 
						|
                :monthList="monthList"
 | 
						|
                :monthIndex="monthIndex"
 | 
						|
                @change-month="changeMonth"
 | 
						|
                ref="recommenRef"
 | 
						|
            />
 | 
						|
        </view>
 | 
						|
        <view class="mb20">
 | 
						|
            <!-- 推荐人数 -->
 | 
						|
            <people 
 | 
						|
                :data="form.goalsClassifyVOList[3]"
 | 
						|
                :monthList="monthList"
 | 
						|
                :monthIndex="monthIndex"
 | 
						|
                @change-month="changeMonth"
 | 
						|
                ref="peopleRef"
 | 
						|
            />
 | 
						|
        </view>
 | 
						|
        <view class="mb20">
 | 
						|
             <!-- 会议场次 -->
 | 
						|
            <session 
 | 
						|
                :data="form.goalsClassifyVOList[4]"
 | 
						|
                :monthList="monthList"
 | 
						|
                :monthIndex="monthIndex"
 | 
						|
                @change-month="changeMonth"
 | 
						|
                ref="sessionRef"
 | 
						|
                @chang-conference-num="changConferenceNum"
 | 
						|
                @chang-file-data="changeFileData"
 | 
						|
            />
 | 
						|
        </view>
 | 
						|
        <view class="mb20">
 | 
						|
             <!-- 会议报备 -->
 | 
						|
            <file
 | 
						|
                :data="form.goalsClassifyVOList[5]"
 | 
						|
                :monthList="monthList"
 | 
						|
                :monthIndex="monthIndex"
 | 
						|
                @change-month="changeMonth"
 | 
						|
                ref="fileRef"
 | 
						|
            />
 | 
						|
        </view>
 | 
						|
        <view class="mb20">
 | 
						|
            <!-- 创客空间 -->
 | 
						|
            <maker
 | 
						|
                :data="form.goalsClassifyVOList[6]"
 | 
						|
                :monthList="monthList"
 | 
						|
                :monthIndex="monthIndex"
 | 
						|
                @change-month="changeMonth"
 | 
						|
                ref="makerRef"
 | 
						|
            />
 | 
						|
        </view>
 | 
						|
 | 
						|
        <view class="mb20">
 | 
						|
            <!-- 超级工作室 -->
 | 
						|
            <studio
 | 
						|
                :data="form.goalsClassifyVOList[7]"
 | 
						|
                :monthList="monthList"
 | 
						|
                :monthIndex="monthIndex"
 | 
						|
                @change-month="changeMonth"
 | 
						|
                ref="studioRef"
 | 
						|
            />
 | 
						|
        </view>
 | 
						|
        <view class="normal-sub-btn mt20" @click="submit">{{$t('ENU_P_TYPE4')}}</view>
 | 
						|
    </view>
 | 
						|
</template>
 | 
						|
 | 
						|
<script>
 | 
						|
import utils from '@/common/utils.js';
 | 
						|
import team from './team.vue';
 | 
						|
import settle from './settle.vue';
 | 
						|
import recommen from './recommen.vue';
 | 
						|
import people from './people.vue';
 | 
						|
import session from './session.vue';
 | 
						|
import file from './file.vue';
 | 
						|
import maker from './maker.vue';
 | 
						|
import studio from './studio.vue';
 | 
						|
 | 
						|
export default {
 | 
						|
    components: {
 | 
						|
        team,
 | 
						|
        settle,
 | 
						|
        recommen,
 | 
						|
        people,
 | 
						|
        session,
 | 
						|
        file,
 | 
						|
        maker,
 | 
						|
        studio,
 | 
						|
    },
 | 
						|
    props:['goalType'],
 | 
						|
    data() {
 | 
						|
        return {
 | 
						|
            loading: true,
 | 
						|
            now: 0,
 | 
						|
            monthList: [],
 | 
						|
            monthIndex: 0,
 | 
						|
            form: {
 | 
						|
                // pkMember: 100000,
 | 
						|
                goalType: 2,
 | 
						|
                month: "",
 | 
						|
                goalsClassifyVOList: [
 | 
						|
                    {
 | 
						|
                        goalClassify: 1,
 | 
						|
                        totalAchieve: "",
 | 
						|
                        rightAchieve: "",
 | 
						|
                        goalsDetailVOList: []
 | 
						|
                    },
 | 
						|
                    {
 | 
						|
                        goalClassify: 2,
 | 
						|
                        totalAchieve: "",
 | 
						|
                        rightAchieve: "",
 | 
						|
                        goalsDetailVOList: []
 | 
						|
                    },
 | 
						|
                    {
 | 
						|
                        goalClassify: 3,
 | 
						|
                        totalAchieve: "",
 | 
						|
                        rightAchieve: "",
 | 
						|
                        goalsDetailVOList: []
 | 
						|
                    },
 | 
						|
                    {
 | 
						|
                        goalClassify: 4,
 | 
						|
                        totalAchieve: "",
 | 
						|
                        rightAchieve: "",
 | 
						|
                        goalsDetailVOList: []
 | 
						|
                    },
 | 
						|
                    {
 | 
						|
                        goalClassify: 5,
 | 
						|
                        totalAchieve: "",
 | 
						|
                        rightAchieve: "",
 | 
						|
                        goalsDetailVOList: []
 | 
						|
                    },
 | 
						|
                    {
 | 
						|
                        goalClassify: 6,
 | 
						|
                        totalAchieve: "",
 | 
						|
                        rightAchieve: "",
 | 
						|
                        goalsDetailVOList: []
 | 
						|
                    },
 | 
						|
                    {
 | 
						|
                        goalClassify: 7,
 | 
						|
                        totalAchieve: "",
 | 
						|
                        rightAchieve: "",
 | 
						|
                        goalsDetailVOList: []
 | 
						|
                    },
 | 
						|
                    {
 | 
						|
                        goalClassify: 8,
 | 
						|
                        totalAchieve: "",
 | 
						|
                        rightAchieve: "",
 | 
						|
                        goalsDetailVOList: []
 | 
						|
                    },
 | 
						|
                ],
 | 
						|
            },
 | 
						|
        };
 | 
						|
    },
 | 
						|
    onShow() {},
 | 
						|
    mounted() {
 | 
						|
        this.form.goalType = this.$props.goalType;
 | 
						|
        this.initDate();
 | 
						|
    },
 | 
						|
    methods: {
 | 
						|
        changeFileData(list){
 | 
						|
            if(this.$refs.fileRef){
 | 
						|
                this.$refs.fileRef.getPreData(list);
 | 
						|
            }
 | 
						|
            // this.form.goalsClassifyVOList[5].goalsDetailVOList = list;
 | 
						|
        },
 | 
						|
        async initDate() {
 | 
						|
            let date = new Date();
 | 
						|
            let self = this;
 | 
						|
            let year = date.getFullYear();
 | 
						|
            self.now = date.getFullYear();
 | 
						|
            for (var i = self.now; i < self.now + 2; i++) {
 | 
						|
                self.monthList.push(i);
 | 
						|
            }
 | 
						|
            this.form.month = `${year}`
 | 
						|
            
 | 
						|
        },
 | 
						|
        changeMonth(e) {
 | 
						|
            this.monthIndex = e.detail.value;
 | 
						|
            // let year = new Date().getFullYear();
 | 
						|
            let year = utils.fillZ0(this.monthList[this.monthIndex])
 | 
						|
            this.form.month = `${year}`
 | 
						|
            
 | 
						|
        },
 | 
						|
        changConferenceNum(e){
 | 
						|
            this.$refs.fileRef.resetData(e);
 | 
						|
        },
 | 
						|
        submit() {
 | 
						|
            let team = this.$refs.teamRef.submit();
 | 
						|
            if(!team){
 | 
						|
                return
 | 
						|
            }
 | 
						|
            let settle = this.$refs.settleRef.submit();
 | 
						|
            if(!settle){
 | 
						|
                return
 | 
						|
            }
 | 
						|
            let recommen = this.$refs.recommenRef.submit();
 | 
						|
            if(!recommen){
 | 
						|
                return
 | 
						|
            }
 | 
						|
            let people = this.$refs.peopleRef.submit();
 | 
						|
            if(!people){
 | 
						|
                return
 | 
						|
            }
 | 
						|
            let session = this.$refs.sessionRef.submit();
 | 
						|
            if(!session){
 | 
						|
                return
 | 
						|
            }
 | 
						|
            let file = this.$refs.fileRef.submit();
 | 
						|
            if(!file){
 | 
						|
                return
 | 
						|
            }
 | 
						|
            let maker = this.$refs.makerRef.submit();
 | 
						|
            if(!maker){
 | 
						|
                return
 | 
						|
            }
 | 
						|
            let studio = this.$refs.studioRef.submit();
 | 
						|
            if(!studio){
 | 
						|
                return
 | 
						|
            }
 | 
						|
            let self = this;
 | 
						|
            self._post('member/api/goals/save-goals', JSON.stringify(self.form), res => {
 | 
						|
                uni.showModal({
 | 
						|
                    content: res.msg,
 | 
						|
                    showCancel: false,
 | 
						|
                    success() {
 | 
						|
                        console.log("点击了确定")
 | 
						|
                        self.$emit("get-data")
 | 
						|
                    }
 | 
						|
                });
 | 
						|
            });
 | 
						|
        }
 | 
						|
    }
 | 
						|
};
 | 
						|
</script>
 | 
						|
 | 
						|
<style lang="scss" scoped></style> |