136 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Vue
		
	
	
	
		
		
			
		
	
	
			136 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Vue
		
	
	
	
| 
								 | 
							
								<template>
							 | 
						|||
| 
								 | 
							
								    <view class="bg-white br12 p-0-20">
							 | 
						|||
| 
								 | 
							
								        <view class="d-b-c p-30-0 border-b">
							 | 
						|||
| 
								 | 
							
								            <view class="f28 fb">{{ $t('ENU_G_C_3') }}</view> 
							 | 
						|||
| 
								 | 
							
								            <view @click="clickFold">
							 | 
						|||
| 
								 | 
							
								                <u-icon name="arrow-down" size="28rpx" color="#999999" v-if="fold"></u-icon>
							 | 
						|||
| 
								 | 
							
								                <u-icon name="arrow-right" size="28rpx" color="#999999" v-else></u-icon>
							 | 
						|||
| 
								 | 
							
								            </view>
							 | 
						|||
| 
								 | 
							
								        </view>
							 | 
						|||
| 
								 | 
							
								        <view class="collspaceContent" :class="{ 'closed': !fold }">
							 | 
						|||
| 
								 | 
							
								            <view class="d-b-c p-20-0 border-b">
							 | 
						|||
| 
								 | 
							
								                <view class="f28 gray3">{{ $t('S_C_7') }}:{{ $t('S_C_58') }}</view>
							 | 
						|||
| 
								 | 
							
								                <picker :range="monthList" @change="changeMonth">
							 | 
						|||
| 
								 | 
							
								                    <view class="common picker">
							 | 
						|||
| 
								 | 
							
								                        <text>{{ monthList[monthIndex] }}{{ $t('S_C_62') }}</text>
							 | 
						|||
| 
								 | 
							
								                        <u-icon name="arrow-down" size="28rpx" color="#333"></u-icon>
							 | 
						|||
| 
								 | 
							
								                    </view>
							 | 
						|||
| 
								 | 
							
								                </picker>
							 | 
						|||
| 
								 | 
							
								            </view>
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            <view class="prefecture form-group">
							 | 
						|||
| 
								 | 
							
								                <view class="form-item">
							 | 
						|||
| 
								 | 
							
								                    <view class="form-label">
							 | 
						|||
| 
								 | 
							
								                        <text class="domation mr10">*</text>
							 | 
						|||
| 
								 | 
							
								                        {{ $t('S_C_8') }}({{ performanceCurrency() }})
							 | 
						|||
| 
								 | 
							
								                    </view>
							 | 
						|||
| 
								 | 
							
								                    <input class="form-input" type="text" value="" v-model="totalAchieve" :placeholder="$t('S_C_70')" />
							 | 
						|||
| 
								 | 
							
								                </view>
							 | 
						|||
| 
								 | 
							
								                <view class="form-item">
							 | 
						|||
| 
								 | 
							
								                    <view class="form-label">
							 | 
						|||
| 
								 | 
							
								                        {{ $t('S_C_9') }}
							 | 
						|||
| 
								 | 
							
								                    </view>
							 | 
						|||
| 
								 | 
							
								                    <view class="flex-1">
							 | 
						|||
| 
								 | 
							
								                        <text class="domation mr10">*</text>
							 | 
						|||
| 
								 | 
							
								                        <text class="f28">{{ $t('S_C_10') }}</text>
							 | 
						|||
| 
								 | 
							
								                    </view>
							 | 
						|||
| 
								 | 
							
								                </view>
							 | 
						|||
| 
								 | 
							
								                <view class="form-item" v-for="(v, idx) in goalsDetailVOList" :key="idx">
							 | 
						|||
| 
								 | 
							
								                    <view class="form-label">
							 | 
						|||
| 
								 | 
							
								                        {{ $t(transformZh(idx + 1)) }}
							 | 
						|||
| 
								 | 
							
								                    </view>
							 | 
						|||
| 
								 | 
							
								                    <input class="form-input" type="text" v-model="v.cycleValue" :placeholder="$t('S_C_70')" />
							 | 
						|||
| 
								 | 
							
								                </view>
							 | 
						|||
| 
								 | 
							
								            </view>
							 | 
						|||
| 
								 | 
							
								        </view>
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    </view>
							 | 
						|||
| 
								 | 
							
								</template>
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								<script>
							 | 
						|||
| 
								 | 
							
								import utils from '@/common/utils.js';
							 | 
						|||
| 
								 | 
							
								export default {
							 | 
						|||
| 
								 | 
							
								    components: {},
							 | 
						|||
| 
								 | 
							
								    props: ['data', 'monthList', 'monthIndex'],
							 | 
						|||
| 
								 | 
							
								    data() {
							 | 
						|||
| 
								 | 
							
								        return {
							 | 
						|||
| 
								 | 
							
								            fold: false,
							 | 
						|||
| 
								 | 
							
								            totalAchieve: "",
							 | 
						|||
| 
								 | 
							
								            goalsDetailVOList: [
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    cycleKey: "m1",
							 | 
						|||
| 
								 | 
							
								                    cycleValue: "",
							 | 
						|||
| 
								 | 
							
								                },
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    cycleKey: "m2",
							 | 
						|||
| 
								 | 
							
								                    cycleValue: "",
							 | 
						|||
| 
								 | 
							
								                },
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    cycleKey: "m3",
							 | 
						|||
| 
								 | 
							
								                    cycleValue: "",
							 | 
						|||
| 
								 | 
							
								                },
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    cycleKey: "m4",
							 | 
						|||
| 
								 | 
							
								                    cycleValue: "",
							 | 
						|||
| 
								 | 
							
								                },
							 | 
						|||
| 
								 | 
							
								            ]
							 | 
						|||
| 
								 | 
							
								        };
							 | 
						|||
| 
								 | 
							
								    },
							 | 
						|||
| 
								 | 
							
								    methods: {
							 | 
						|||
| 
								 | 
							
								        clickFold() {
							 | 
						|||
| 
								 | 
							
								            this.fold = !this.fold;
							 | 
						|||
| 
								 | 
							
								        },
							 | 
						|||
| 
								 | 
							
								        changeMonth(e) {
							 | 
						|||
| 
								 | 
							
								            this.$emit('change-month', e)
							 | 
						|||
| 
								 | 
							
								        },
							 | 
						|||
| 
								 | 
							
								        transformZh(index) {
							 | 
						|||
| 
								 | 
							
								            return utils.numberToChinese(index,'quarter')
							 | 
						|||
| 
								 | 
							
								        },
							 | 
						|||
| 
								 | 
							
								        submit() {
							 | 
						|||
| 
								 | 
							
								            if (!this.totalAchieve) {
							 | 
						|||
| 
								 | 
							
								                uni.showToast({
							 | 
						|||
| 
								 | 
							
								                    title: `${this.$t('S_C_70')}${this.$t('S_C_8')}`,
							 | 
						|||
| 
								 | 
							
								                    duration: 1000,
							 | 
						|||
| 
								 | 
							
								                    icon: 'none'
							 | 
						|||
| 
								 | 
							
								                });
							 | 
						|||
| 
								 | 
							
								                return
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            if (this.goalsDetailVOList.length < 1) {
							 | 
						|||
| 
								 | 
							
								                uni.showToast({
							 | 
						|||
| 
								 | 
							
								                    title: `${this.$t('S_C_70')}${this.$t('S_C_10')}`,
							 | 
						|||
| 
								 | 
							
								                    duration: 1000,
							 | 
						|||
| 
								 | 
							
								                    icon: 'none'
							 | 
						|||
| 
								 | 
							
								                });
							 | 
						|||
| 
								 | 
							
								                return
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            let flag = this.goalsDetailVOList.every((item) => {
							 | 
						|||
| 
								 | 
							
								                return item.cycleValue
							 | 
						|||
| 
								 | 
							
								            })
							 | 
						|||
| 
								 | 
							
								            if (!flag) {
							 | 
						|||
| 
								 | 
							
								                uni.showToast({
							 | 
						|||
| 
								 | 
							
								                    title: `${this.$t('S_C_70')}${this.$t('S_C_10')}`,
							 | 
						|||
| 
								 | 
							
								                    duration: 1000,
							 | 
						|||
| 
								 | 
							
								                    icon: 'none'
							 | 
						|||
| 
								 | 
							
								                });
							 | 
						|||
| 
								 | 
							
								                return
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            this.$props.data.totalAchieve = this.totalAchieve;
							 | 
						|||
| 
								 | 
							
								            this.$props.data.goalsDetailVOList = JSON.parse(JSON.stringify(this.goalsDetailVOList));
							 | 
						|||
| 
								 | 
							
								            return true
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								};
							 | 
						|||
| 
								 | 
							
								</script>
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								<style lang="scss" scoped>
							 | 
						|||
| 
								 | 
							
								.collspaceContent {
							 | 
						|||
| 
								 | 
							
								    max-height: 5000rpx;
							 | 
						|||
| 
								 | 
							
								    overflow: hidden;
							 | 
						|||
| 
								 | 
							
								    transition: all ease 0.8s;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								    &.closed {
							 | 
						|||
| 
								 | 
							
								        max-height: 0;
							 | 
						|||
| 
								 | 
							
								        transition: all ease 0.6s;
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								</style>
							 |