Browse Source

优化2.0,需求1

zhangyong/feature-20260211100322-日常优化2.0
ZhangYong 3 weeks ago
parent
commit
778754bfe4
  1. 92
      src/components/MoneyManage/ProductSelect.vue
  2. 22
      src/components/locales/lang/en.js
  3. 22
      src/components/locales/lang/zh-CN.js
  4. 29
      src/views/moneyManage/receiveDetail/receiveService.vue

92
src/components/MoneyManage/ProductSelect.vue

@ -28,7 +28,7 @@
<div class="product"> <div class="product">
<div class="coinselect" @click="producthandelMenu" :class="{ 'active': productisOpen }"> <div class="coinselect" @click="producthandelMenu" :class="{ 'active': productisOpen }">
<div class="cointxt"> <div class="cointxt">
{{ t('cash.softwareProduct') }}
{{ t('cash.softwareProduct') }}
</div> </div>
<span class="coin-arrow"> <span class="coin-arrow">
<el-icon> <el-icon>
@ -82,9 +82,15 @@
<div class="checktxt">{{ t('cash.other') }}</div> <div class="checktxt">{{ t('cash.other') }}</div>
<hr class="line"> <hr class="line">
<el-radio-group v-model="selectedValue"> <el-radio-group v-model="selectedValue">
<el-radio v-for="ai in InfoFee" :key="ai" :label="ai" :value="ai">
{{ ai }}
</el-radio>
<div v-for="ai in InfoFee" :key="ai" class="radio-wrapper">
<el-radio class="radio" :value="ai" @click="handleClick(ai)">
{{ ai }}
</el-radio>
<div v-if="showPanel&&ai==t('cash.HC')" class="cascader-panel" @click.stop>
<el-cascader-panel :options="cascaderOptions" :value="cascaderValue"
@change="handlePanelChange" />
</div>
</div>
</el-radio-group> </el-radio-group>
</div> </div>
</div> </div>
@ -134,6 +140,7 @@ const selectedValue = ref('')
watch(selectedValue, (newVal) => { watch(selectedValue, (newVal) => {
emit('update:modelValue', newVal ? newVal : ''); emit('update:modelValue', newVal ? newVal : '');
console.log('更新父组件', newVal);
selectedItem.value = newVal || ''; selectedItem.value = newVal || '';
}); });
@ -158,6 +165,56 @@ const InfoFee = [
t('cash.BGmember'), t('cash.BGmember'),
t('cash.HC') t('cash.HC')
] ]
const showPanel = ref(false)
const handleClick = (ai) => {
if (ai == t('cash.HC')) {
showPanel.value = true
}
}
const cascaderValue = ref([])
const handlePanelChange = (val) => {
selectedValue.value = val[val.length - 1]
showPanel.value = false //
console.log('selectedValue.value', selectedValue.value);
}
//
const cascaderOptions = [
{
value: 'realTime',
label: t('cash.aiService.realTime'),
children: [
{ value: t('cash.aiService.HCInfoFeeRealTimeUS'), label: t('cash.softwareMenu.usStock') },
{ value: t('cash.aiService.HCInfoFeeRealTimeHK'), label: t('cash.softwareMenu.hkStock') },
{ value: t('cash.aiService.HCInfoFeeRealTimeAStock'), label: t('cash.softwareMenu.aStock') },
{ value: t('cash.aiService.HCInfoFeeRealTimeSingaporeStock'), label: t('cash.softwareMenu.singaporeStock') },
{ value: t('cash.aiService.HCInfoFeeRealTimeJapanStock'), label: t('cash.softwareMenu.japanStock') },
{ value: t('cash.aiService.HCInfoFeeRealTimeThailandStock'), label: t('cash.softwareMenu.thailandStock') },
{ value: t('cash.aiService.HCInfoFeeRealTimeVietnamStock'), label: t('cash.softwareMenu.vietnamStock') },
{ value: t('cash.aiService.HCInfoFeeRealTimeIndonesiaStock'), label: t('cash.softwareMenu.indonesiaStock') },
{ value: t('cash.aiService.HCInfoFeeRealTimeKoreaStock'), label: t('cash.softwareMenu.koreaStock') },
{ value: t('cash.aiService.HCInfoFeeRealTimeTaiwanStock'), label: t('cash.softwareMenu.taiwanStock') }
]
},
{
value: 'delayed',
label: t('cash.aiService.delayed'),
children: [
{ value: t('cash.aiService.HCInfoFeeDelayUS'), label: t('cash.softwareMenu.usStock') },
{ value: t('cash.aiService.HCInfoFeeDelayHK'), label: t('cash.softwareMenu.hkStock') },
{ value: t('cash.aiService.HCInfoFeeDelayAStock'), label: t('cash.softwareMenu.aStock') },
{ value: t('cash.aiService.HCInfoFeeDelaySingaporeStock'), label: t('cash.softwareMenu.singaporeStock') },
{ value: t('cash.aiService.HCInfoFeeDelayJapanStock'), label: t('cash.softwareMenu.japanStock') },
{ value: t('cash.aiService.HCInfoFeeDelayThailandStock'), label: t('cash.softwareMenu.thailandStock') },
{ value: t('cash.aiService.HCInfoFeeDelayVietnamStock'), label: t('cash.softwareMenu.vietnamStock') },
{ value: t('cash.aiService.HCInfoFeeDelayIndonesiaStock'), label: t('cash.softwareMenu.indonesiaStock') },
{ value: t('cash.aiService.HCInfoFeeDelayKoreaStock'), label: t('cash.softwareMenu.koreaStock') },
{ value: t('cash.aiService.HCInfoFeeDelayTaiwanStock'), label: t('cash.softwareMenu.taiwanStock') }
]
}
]
// 使menuData // 使menuData
const menuData = [ const menuData = [
{ {
@ -320,7 +377,7 @@ const resetSelect = () => {
watch(() => props.modelValue, (newVal) => { watch(() => props.modelValue, (newVal) => {
selectedItem.value = newVal; selectedItem.value = newVal;
selectedValue.value = newVal;
selectedValue.value = newVal;
}, { immediate: true }); }, { immediate: true });
onMounted(async () => { onMounted(async () => {
console.log('打开组件', props.modelValue); console.log('打开组件', props.modelValue);
@ -375,9 +432,8 @@ defineExpose({ resetSelect });
position: absolute; position: absolute;
top: 100%; top: 100%;
left: 0; left: 0;
width: 160%;
width: 200%;
max-height: 700px; max-height: 700px;
overflow-y: auto;
min-height: 200px; min-height: 200px;
display: flex; display: flex;
padding: 10px; padding: 10px;
@ -457,6 +513,28 @@ defineExpose({ resetSelect });
.ai { .ai {
width: 100%; width: 100%;
.radio-wrapper {
position: relative;
display: inline-block;
margin-right: 32px;
.radio {
margin-right: 0;
}
.cascader-panel {
position: absolute;
top: -36px;
left: 100px;
z-index: 1000;
border: 1px solid #e6e6e6;
border-radius: 4px;
background: #E4F0FC;
margin-bottom: 10px;
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
}
}
} }
.marketprodut { .marketprodut {

22
src/components/locales/lang/en.js

@ -1128,6 +1128,28 @@ export default {
superCompass: "Super Compass", superCompass: "Super Compass",
aiDetectionTool: "AI Detector", aiDetectionTool: "AI Detector",
superDetectionTool: "Super Detector", superDetectionTool: "Super Detector",
realTime: "Real Time",
delayed: "Delay",
HCInfoFeeRealTimeUS: "HC Info Fee - Real Time - US Stock",
HCInfoFeeRealTimeHK: "HC Info Fee - Real Time - HK Stock",
HCInfoFeeRealTimeAStock: "HC Info Fee - Real Time - A Stock",
HCInfoFeeRealTimeSingaporeStock: "HC Info Fee - Real Time - Singapore Stock",
HCInfoFeeRealTimeJapanStock: "HC Info Fee - Real Time - Japan Stock",
HCInfoFeeRealTimeThailandStock: "HC Info Fee - Real Time - Thailand Stock",
HCInfoFeeRealTimeVietnamStock: "HC Info Fee - Real Time - Vietnam Stock",
HCInfoFeeRealTimeIndonesiaStock: "HC Info Fee - Real Time - Indonesia Stock",
HCInfoFeeRealTimeKoreaStock: "HC Info Fee - Real Time - Korea Stock",
HCInfoFeeRealTimeTaiwanStock: "HC Info Fee - Real Time - Taiwan Stock",
HCInfoFeeDelayUS: "HC Info Fee - Delay - US Stock",
HCInfoFeeDelayHK: "HC Info Fee - Delay - HK Stock",
HCInfoFeeDelayAStock: "HC Info Fee - Delay - A Stock",
HCInfoFeeDelaySingaporeStock: "HC Info Fee - Delay - Singapore Stock",
HCInfoFeeDelayJapanStock: "HC Info Fee - Delay - Japan Stock",
HCInfoFeeDelayThailandStock: "HC Info Fee - Delay - Thailand Stock",
HCInfoFeeDelayVietnamStock: "HC Info Fee - Delay - Vietnam Stock",
HCInfoFeeDelayIndonesiaStock: "HC Info Fee - Delay - Indonesia Stock",
HCInfoFeeDelayKoreaStock: "HC Info Fee - Delay - Korea Stock",
HCInfoFeeDelayTaiwanStock: "HC Info Fee - Delay - Taiwan Stock",
}, },
markets: { markets: {
HongKong: "Hong Kong", HongKong: "Hong Kong",

22
src/components/locales/lang/zh-CN.js

@ -1141,6 +1141,28 @@ export default {
superCompass: "超级机构罗盘", superCompass: "超级机构罗盘",
aiDetectionTool: "AI机构探测神器", aiDetectionTool: "AI机构探测神器",
superDetectionTool: "超级机构探测神器", superDetectionTool: "超级机构探测神器",
realTime: "实时",
delayed: "延时",
HCInfoFeeRealTimeUS: "HC信息费-实时-美股",
HCInfoFeeRealTimeHK: "HC信息费-实时-港股",
HCInfoFeeRealTimeAStock: "HC信息费-实时-A股",
HCInfoFeeRealTimeSingaporeStock: "HC信息费-实时-新加坡股",
HCInfoFeeRealTimeJapanStock: "HC信息费-实时-日本股",
HCInfoFeeRealTimeThailandStock: "HC信息费-实时-泰国股",
HCInfoFeeRealTimeVietnamStock: "HC信息费-实时-越南股",
HCInfoFeeRealTimeIndonesiaStock: "HC信息费-实时-印尼股",
HCInfoFeeRealTimeKoreaStock: "HC信息费-实时-韩国股",
HCInfoFeeRealTimeTaiwanStock: "HC信息费-实时-台湾股",
HCInfoFeeDelayUS: "HC信息费-延时-美股",
HCInfoFeeDelayHK: "HC信息费-延时-港股",
HCInfoFeeDelayAStock: "HC信息费-延时-A股",
HCInfoFeeDelaySingaporeStock: "HC信息费-延时-新加坡股",
HCInfoFeeDelayJapanStock: "HC信息费-延时-日本股",
HCInfoFeeDelayThailandStock: "HC信息费-延时-泰国股",
HCInfoFeeDelayVietnamStock: "HC信息费-延时-越南股",
HCInfoFeeDelayIndonesiaStock: "HC信息费-延时-印尼股",
HCInfoFeeDelayKoreaStock: "HC信息费-延时-韩国股",
HCInfoFeeDelayTaiwanStock: "HC信息费-延时-台湾股",
}, },
// 市场 // 市场
markets: { markets: {

29
src/views/moneyManage/receiveDetail/receiveService.vue

@ -218,7 +218,7 @@
:value="item.id" /> :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="t('common_add.productName')" required @change="ifGold" prop="goodsName">
<el-form-item :label="t('common_add.productName')" required prop="goodsName">
<ProductSelect ref="productSelectRef" v-model="addFormData.goodsName"></ProductSelect> <ProductSelect ref="productSelectRef" v-model="addFormData.goodsName"></ProductSelect>
</el-form-item> </el-form-item>
<el-form-item v-show="!isGold" :label="t('common_add.productNum')" required> <el-form-item v-show="!isGold" :label="t('common_add.productNum')" required>
@ -615,6 +615,7 @@ const ifGold = () => {
addFormData.value.goodNum = 0 addFormData.value.goodNum = 0
} else { } else {
isGold.value = false isGold.value = false
console.log('12312312',addFormData.value.goodsName);
numUnitList.value = [t('cash.unit'), t('cash.year'), t('cash.month')] numUnitList.value = [t('cash.unit'), t('cash.year'), t('cash.month')]
const selectItems = ref([ const selectItems = ref([
t('cash.aiService.aiTracking'), t('cash.aiService.aiTracking'),
@ -627,7 +628,27 @@ const ifGold = () => {
t('cash.aiService.superPulse'), t('cash.aiService.superPulse'),
t('cash.aiService.superCompass'), t('cash.aiService.superCompass'),
t('cash.aiService.aiDetectionTool'), t('cash.aiService.aiDetectionTool'),
t('cash.aiService.superDetectionTool')
t('cash.aiService.superDetectionTool'),
t('cash.aiService.HCInfoFeeDelayUS'),
t('cash.aiService.HCInfoFeeDelayHK'),
t('cash.aiService.HCInfoFeeDelayAStock'),
t('cash.aiService.HCInfoFeeDelaySingaporeStock'),
t('cash.aiService.HCInfoFeeDelayJapanStock'),
t('cash.aiService.HCInfoFeeDelayThailandStock'),
t('cash.aiService.HCInfoFeeDelayIndonesiaStock'),
t('cash.aiService.HCInfoFeeDelayVietnamStock'),
t('cash.aiService.HCInfoFeeDelayKoreaStock'),
t('cash.aiService.HCInfoFeeDelayTaiwanStock'),
t('cash.aiService.HCInfoFeeRealTimeUS'),
t('cash.aiService.HCInfoFeeRealTimeHK'),
t('cash.aiService.HCInfoFeeRealTimeAStock'),
t('cash.aiService.HCInfoFeeRealTimeSingaporeStock'),
t('cash.aiService.HCInfoFeeRealTimeJapanStock'),
t('cash.aiService.HCInfoFeeRealTimeThailandStock'),
t('cash.aiService.HCInfoFeeRealTimeIndonesiaStock'),
t('cash.aiService.HCInfoFeeRealTimeVietnamStock'),
t('cash.aiService.HCInfoFeeRealTimeKoreaStock'),
t('cash.aiService.HCInfoFeeRealTimeTaiwanStock'),
]) ])
if (selectItems.value.includes(addFormData.value.goodsName)) { if (selectItems.value.includes(addFormData.value.goodsName)) {
if (addOrEdit.value == 1) { if (addOrEdit.value == 1) {
@ -644,6 +665,10 @@ const ifGold = () => {
} }
} }
watch(() => addFormData.value.goodsName, () => {
ifGold()
})
// //
const isGroup = ref(false) const isGroup = ref(false)
const ifGroup = () => { const ifGroup = () => {

Loading…
Cancel
Save