Skip to content

Commit 7ee0b6b

Browse files
committed
.
1 parent 005ba2f commit 7ee0b6b

File tree

6 files changed

+152
-138
lines changed

6 files changed

+152
-138
lines changed

src/assets/constant.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,6 @@ export const WU_XING_COLOR = {
3636
'水': '#427bd5',
3737
}
3838

39-
/*
40-
奇门部分
41-
*/
42-
4339
/*
4440
四柱部分
4541
*/
@@ -99,6 +95,10 @@ export const NA_JIA = {
9995
'兑': ['丁巳火', '丁卯木', '丁丑土', '丁亥水', '丁酉金', '丁未土'],
10096
}
10197

98+
/*
99+
奇门部分
100+
*/
101+
102102
/*
103103
六十甲子
104104
*/

src/components/BaZi.vue

Lines changed: 82 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,85 @@
1+
<template>
2+
<el-row justify="center">
3+
<el-col :xs="24" :sm="24" :lg="16" :xl="8">
4+
<!-- 干支 -->
5+
<el-row style="color:#cccccc">
6+
<el-col :span="6">
7+
<p class="nml" :style="getColor(nianGan)" @dblclick="clearAll()">{{nianGanShen||'年'}}</p>
8+
<p class="big" :style="getColor(nianGan)" @click="clickGanZhi('nianGan')">{{nianGan||'干'}}</p>
9+
<p class="big" :style="getColor(nianZhi)" @click="clickGanZhi('nianZhi')">{{nianZhi||'支'}}</p>
10+
<p class="sml" :style="getColor(i[0])" v-for="i in nianZhiShenList">{{i}}</p>
11+
</el-col>
12+
<el-col :span="6">
13+
<p class="nml" :style="getColor(yueGan)">{{yueGanShen||'月'}}</p>
14+
<p class="big" :style="getColor(yueGan)" @click="clickGanZhi('yueGan')">{{yueGan||'干'}}</p>
15+
<p class="big" :style="getColor(yueZhi)" @click="clickGanZhi('yueZhi')">{{yueZhi||'支'}}</p>
16+
<p class="sml" :style="getColor(i[0])" v-for="i in yueZhiShenList">{{i}}</p>
17+
</el-col>
18+
<el-col :span="6">
19+
<p class="nml" :style="riGan&&'color:black'" @click="sex=(sex+1)%3">{{sex?(sex===1?'乾造':'坤造'):'日主'}}</p>
20+
<p class="big" :style="getColor(riGan)" @click="clickGanZhi('riGan')">{{riGan||'干'}}</p>
21+
<p class="big" :style="getColor(riZhi)" @click="clickGanZhi('riZhi')">{{riZhi||'支'}}</p>
22+
<p class="sml" :style="getColor(i[0])" v-for="i in riZhiShenList">{{i}}</p>
23+
</el-col>
24+
<el-col :span="6">
25+
<p class="nml" :style="getColor(shiGan)">{{shiGanShen||'时'}}</p>
26+
<p class="big" :style="getColor(shiGan)" @click="clickGanZhi('shiGan')">{{shiGan||'干'}}</p>
27+
<p class="big" :style="getColor(shiZhi)" @click="clickGanZhi('shiZhi')">{{shiZhi||'支'}}</p>
28+
<p class="sml" :style="getColor(i[0])" v-for="i in shiZhiShenList">{{i}}</p>
29+
</el-col>
30+
</el-row>
31+
<!-- 干支选择面板 -->
32+
<el-dialog v-model="showSelectDialog" width="80%" align-center>
33+
<el-row justify="center">
34+
<el-col :span="12" v-for="i in [...selectList, '']">
35+
<p class="nml" :style="getColor(i)" @click="changingMap[changing]=i;showSelectDialog=false">
36+
{{i||'空'}}
37+
</p>
38+
</el-col>
39+
</el-row>
40+
</el-dialog>
41+
<!-- 备注 -->
42+
<el-row>
43+
<input v-model="note" style="border:none;width:100%" />
44+
</el-row>
45+
<!-- 大运 -->
46+
<el-row v-if="daYunList.length>0">
47+
<el-col :span="4" v-for="(i,n) in ['一','二','三','四','五','六','七','八','九','十'].slice(0,daYunList.length)">
48+
<p class="sml" style="margin-left:0;margin-right:0" @dblclick="changeQiYunAge(n)">
49+
{{qiYunAge>-1?qiYunAge+n*10+'岁':i+'运'}}
50+
</p>
51+
</el-col>
52+
<el-col :span="4" v-for="i in daYunList" :style="getColor(i[0])">
53+
<p class="nml" style="margin:0">
54+
{{i[0]}}<sub v-if="riGan" style="font-size:18px">{{SHI_SHEN[riGan][i[0]]}}</sub>
55+
</p>
56+
</el-col>
57+
<el-col :span="4" v-for="i in daYunList" :style="getColor(i[1])">
58+
<p class="nml" style="margin:0">
59+
{{i[1]}}<sub v-if="riGan" style="font-size:18px">{{SHI_SHEN[riGan][CANG_GAN[i[1]][0]]}}</sub>
60+
</p>
61+
</el-col>
62+
</el-row>
63+
<!-- 流年 -->
64+
<el-row v-if="daYunList.length>0&&liuNianList.length>0">
65+
<br />
66+
<el-scrollbar>
67+
<div style="display:flex">
68+
<p class="sml"><br />流<br />年</p>
69+
<p class="sml" v-for="(i,n) in liuNianList">
70+
<small>{{n+1}}</small>
71+
<br />
72+
<span :style="getColor(i[0])">{{i[0]}}</span>
73+
<br/>
74+
<span :style="getColor(i[1])">{{i[1]}}</span>
75+
</p>
76+
</div>
77+
</el-scrollbar>
78+
</el-row>
79+
</el-col>
80+
</el-row>
81+
</template>
82+
183
<script setup>
284
import { computed, ref, watch } from 'vue'
385
import {
@@ -101,88 +183,6 @@ function isSameYinYang(gan, zhi) {
101183
}
102184
</script>
103185

104-
<template>
105-
<el-row justify="center">
106-
<el-col :xs="24" :sm="24" :lg="16" :xl="8">
107-
<!-- 干支 -->
108-
<el-row style="color:#cccccc">
109-
<el-col :span="6">
110-
<p class="nml" :style="getColor(nianGan)" @dblclick="clearAll()">{{nianGanShen||'年'}}</p>
111-
<p class="big" :style="getColor(nianGan)" @click="clickGanZhi('nianGan')">{{nianGan||'干'}}</p>
112-
<p class="big" :style="getColor(nianZhi)" @click="clickGanZhi('nianZhi')">{{nianZhi||'支'}}</p>
113-
<p class="sml" :style="getColor(i[0])" v-for="i in nianZhiShenList">{{i}}</p>
114-
</el-col>
115-
<el-col :span="6">
116-
<p class="nml" :style="getColor(yueGan)">{{yueGanShen||'月'}}</p>
117-
<p class="big" :style="getColor(yueGan)" @click="clickGanZhi('yueGan')">{{yueGan||'干'}}</p>
118-
<p class="big" :style="getColor(yueZhi)" @click="clickGanZhi('yueZhi')">{{yueZhi||'支'}}</p>
119-
<p class="sml" :style="getColor(i[0])" v-for="i in yueZhiShenList">{{i}}</p>
120-
</el-col>
121-
<el-col :span="6">
122-
<p class="nml" :style="riGan&&'color:black'" @click="sex=(sex+1)%3">{{sex?(sex===1?'乾造':'坤造'):'日主'}}</p>
123-
<p class="big" :style="getColor(riGan)" @click="clickGanZhi('riGan')">{{riGan||'干'}}</p>
124-
<p class="big" :style="getColor(riZhi)" @click="clickGanZhi('riZhi')">{{riZhi||'支'}}</p>
125-
<p class="sml" :style="getColor(i[0])" v-for="i in riZhiShenList">{{i}}</p>
126-
</el-col>
127-
<el-col :span="6">
128-
<p class="nml" :style="getColor(shiGan)">{{shiGanShen||'时'}}</p>
129-
<p class="big" :style="getColor(shiGan)" @click="clickGanZhi('shiGan')">{{shiGan||'干'}}</p>
130-
<p class="big" :style="getColor(shiZhi)" @click="clickGanZhi('shiZhi')">{{shiZhi||'支'}}</p>
131-
<p class="sml" :style="getColor(i[0])" v-for="i in shiZhiShenList">{{i}}</p>
132-
</el-col>
133-
</el-row>
134-
<!-- 干支选择面板 -->
135-
<el-dialog v-model="showSelectDialog" width="80%" align-center>
136-
<el-row justify="center">
137-
<el-col :span="12" v-for="i in [...selectList, '']">
138-
<p class="nml" :style="getColor(i)" @click="changingMap[changing]=i;showSelectDialog=false">
139-
{{i||'空'}}
140-
</p>
141-
</el-col>
142-
</el-row>
143-
</el-dialog>
144-
<!-- 备注 -->
145-
<el-row>
146-
<input v-model="note" style="border:none;width:100%" />
147-
</el-row>
148-
<!-- 大运 -->
149-
<el-row v-if="daYunList.length>0">
150-
<el-col :span="4" v-for="(i,n) in ['一','二','三','四','五','六','七','八','九','十'].slice(0,daYunList.length)">
151-
<p class="sml" style="margin-left:0;margin-right:0" @dblclick="changeQiYunAge(n)">
152-
{{qiYunAge>-1?qiYunAge+n*10+'岁':i+'运'}}
153-
</p>
154-
</el-col>
155-
<el-col :span="4" v-for="i in daYunList" :style="getColor(i[0])">
156-
<p class="nml" style="margin:0">
157-
{{i[0]}}<sub v-if="riGan" style="font-size:18px">{{SHI_SHEN[riGan][i[0]]}}</sub>
158-
</p>
159-
</el-col>
160-
<el-col :span="4" v-for="i in daYunList" :style="getColor(i[1])">
161-
<p class="nml" style="margin:0">
162-
{{i[1]}}<sub v-if="riGan" style="font-size:18px">{{SHI_SHEN[riGan][CANG_GAN[i[1]][0]]}}</sub>
163-
</p>
164-
</el-col>
165-
</el-row>
166-
<!-- 流年 -->
167-
<el-row v-if="daYunList.length>0&&liuNianList.length>0">
168-
<br />
169-
<el-scrollbar>
170-
<div style="display:flex">
171-
<p class="sml"><br />流<br />年</p>
172-
<p class="sml" v-for="(i,n) in liuNianList">
173-
<small>{{n+1}}</small>
174-
<br />
175-
<span :style="getColor(i[0])">{{i[0]}}</span>
176-
<br/>
177-
<span :style="getColor(i[1])">{{i[1]}}</span>
178-
</p>
179-
</div>
180-
</el-scrollbar>
181-
</el-row>
182-
</el-col>
183-
</el-row>
184-
</template>
185-
186186
<style scoped>
187187
p, input {
188188
margin: 5px;

src/components/Home.vue

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,23 @@
1+
<template>
2+
<div style="display:flex;justify-content:center;align-items:center;height:80vh">
3+
<div class="search">
4+
<el-autocomplete v-model="searchInput" :fetch-suggestions="getSuggest" @keyup.enter="runSearch()"
5+
style="width:90%;max-width:600px" size="large" placement="top">
6+
</el-autocomplete>
7+
<br />
8+
<el-button class="btn" size="large" round v-for="i in searchEngineConfig" @click="runSearch(i.search)">
9+
<img :src="i.favicon" alt="" width="20px" />
10+
&nbsp;{{i.nameCN}}
11+
</el-button>
12+
<br /><br />
13+
<el-button class="btn" size="large" @click="router.push('/fireworks')">看烟花</el-button>
14+
<el-button class="btn" size="large" @click="router.push('/bazi')">四柱排盘</el-button>
15+
<el-button class="btn" size="large" @click="router.push('/liuyao')">六爻装卦</el-button>
16+
<el-button class="btn" size="large" @click="router.push('/qimen')">奇门排盘</el-button>
17+
</div>
18+
</div>
19+
</template>
20+
121
<script setup>
222
import { ref } from 'vue'
323
import { useRouter } from 'vue-router'
@@ -66,25 +86,6 @@ function runSearch(searchEngineUrl) {
6686
}
6787
</script>
6888

69-
<template>
70-
<div style="display:flex;justify-content:center;align-items:center;height:80vh">
71-
<div class="search">
72-
<el-autocomplete v-model="searchInput" :fetch-suggestions="getSuggest" @keyup.enter="runSearch()"
73-
style="width:90%;max-width:600px" size="large" placement="top">
74-
</el-autocomplete>
75-
<br />
76-
<el-button class="btn" size="large" round v-for="i in searchEngineConfig" @click="runSearch(i.search)">
77-
<img :src="i.favicon" alt="" width="20px" />
78-
&nbsp;{{i.nameCN}}
79-
</el-button>
80-
<br /><br />
81-
<el-button class="btn" size="large" @click="router.push('/fireworks')">看烟花</el-button>
82-
<el-button class="btn" size="large" @click="router.push('/bazi')">八字排盘</el-button>
83-
<el-button class="btn" size="large" @click="router.push('/liuyao')">六爻装卦</el-button>
84-
</div>
85-
</div>
86-
</template>
87-
8889
<style scoped>
8990
.btn {
9091
margin-top: 20px;

src/components/LiuYao.vue

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,36 @@
1+
<template>
2+
<el-row justify="center" v-show="yao[0]<0">
3+
<el-col>
4+
<p class="pFont" @click="dialogMark=5; dialogVisible=true" >第一次{{yao[5]<0 ? '' : ''+yao[5]+''}}</p>
5+
<p class="pFont" @click="dialogMark=4; yao[5]<0||(dialogVisible=true)">第二次{{yao[4]<0 ? '' : ''+yao[4]+''}}</p>
6+
<p class="pFont" @click="dialogMark=3; yao[4]<0||(dialogVisible=true)">第三次{{yao[3]<0 ? '' : ''+yao[3]+''}}</p>
7+
<p class="pFont" @click="dialogMark=2; yao[3]<0||(dialogVisible=true)">第四次{{yao[2]<0 ? '' : ''+yao[2]+''}}</p>
8+
<p class="pFont" @click="dialogMark=1; yao[2]<0||(dialogVisible=true)">第五次{{yao[1]<0 ? '' : ''+yao[1]+''}}</p>
9+
<p class="pFont" @click="dialogMark=0; yao[1]<0||(dialogVisible=true)">第六次{{yao[0]<0 ? '' : ''+yao[0]+''}}</p>
10+
</el-col>
11+
</el-row>
12+
<el-dialog v-model="dialogVisible" width="80%" align-center>
13+
<el-row justify="center">
14+
<el-col>
15+
<p class="pFont" @click="yao[dialogMark]=0; dialogVisible=false; dialogMark===0&&main()">0 字</p>
16+
<p class="pFont" @click="yao[dialogMark]=1; dialogVisible=false; dialogMark===0&&main()">1 字</p>
17+
<p class="pFont" @click="yao[dialogMark]=2; dialogVisible=false; dialogMark===0&&main()">2 字</p>
18+
<p class="pFont" @click="yao[dialogMark]=3; dialogVisible=false; dialogMark===0&&main()">3 字</p>
19+
</el-col>
20+
</el-row>
21+
</el-dialog>
22+
<el-row justify="center" v-show="yao[0]>=0">
23+
<el-col>
24+
<p class="pFont">{{benGuaName.slice(3)}}</p>
25+
<p class="pFont" v-for="(j, i) in 6">{{ benGuaLiuQin[i] + '&emsp;' + (shiYing[i]||'&emsp;') + '&emsp;' + (benGua[i]?'▅▅▅▅▅':'▅▅&emsp;▅▅') + (false?'&emsp;'+benGuaNaJia[i]:'') + '&emsp;' + (yao[i]===0?'〇':(yao[i]===3?'✖':'&emsp;')) }}</p>
26+
</el-col>
27+
<el-col v-show="false">
28+
<p class="pFont">{{bianGuaName.slice(3)}}&emsp;&emsp;</p>
29+
<p class="pFont" v-for="(j, i) in 6">{{ (yao[i]===0||yao[i]===3)?bianGuaLiuQin[i]:'&emsp;&emsp;' + '&emsp;' + (bianGua[i]?'▅▅▅▅▅':'▅▅&emsp;▅▅') + '&emsp;' + bianGuaNaJia[i] }}</p>
30+
</el-col>
31+
</el-row>
32+
</template>
33+
134
<script setup>
235
import { ref } from 'vue'
336
import { LIU_QIN, NA_JIA, WU_XING } from '../assets/constant.js'
@@ -61,39 +94,6 @@ function main() {
6194
}
6295
</script>
6396

64-
<template>
65-
<el-row justify="center" v-show="yao[0]<0">
66-
<el-col>
67-
<p class="pFont" @click="dialogMark=5; dialogVisible=true" >第一次{{yao[5]<0 ? '' : ''+yao[5]+''}}</p>
68-
<p class="pFont" @click="dialogMark=4; yao[5]<0||(dialogVisible=true)">第二次{{yao[4]<0 ? '' : ''+yao[4]+''}}</p>
69-
<p class="pFont" @click="dialogMark=3; yao[4]<0||(dialogVisible=true)">第三次{{yao[3]<0 ? '' : ''+yao[3]+''}}</p>
70-
<p class="pFont" @click="dialogMark=2; yao[3]<0||(dialogVisible=true)">第四次{{yao[2]<0 ? '' : ''+yao[2]+''}}</p>
71-
<p class="pFont" @click="dialogMark=1; yao[2]<0||(dialogVisible=true)">第五次{{yao[1]<0 ? '' : ''+yao[1]+''}}</p>
72-
<p class="pFont" @click="dialogMark=0; yao[1]<0||(dialogVisible=true)">第六次{{yao[0]<0 ? '' : ''+yao[0]+''}}</p>
73-
</el-col>
74-
</el-row>
75-
<el-dialog v-model="dialogVisible" width="80%" align-center>
76-
<el-row justify="center">
77-
<el-col>
78-
<p class="pFont" @click="yao[dialogMark]=0; dialogVisible=false; dialogMark===0&&main()">0 字</p>
79-
<p class="pFont" @click="yao[dialogMark]=1; dialogVisible=false; dialogMark===0&&main()">1 字</p>
80-
<p class="pFont" @click="yao[dialogMark]=2; dialogVisible=false; dialogMark===0&&main()">2 字</p>
81-
<p class="pFont" @click="yao[dialogMark]=3; dialogVisible=false; dialogMark===0&&main()">3 字</p>
82-
</el-col>
83-
</el-row>
84-
</el-dialog>
85-
<el-row justify="center" v-show="yao[0]>=0">
86-
<el-col>
87-
<p class="pFont">{{benGuaName.slice(3)}}</p>
88-
<p class="pFont" v-for="(j, i) in 6">{{ benGuaLiuQin[i] + '&emsp;' + (shiYing[i]||'&emsp;') + '&emsp;' + (benGua[i]?'▅▅▅▅▅':'▅▅&emsp;▅▅') + (false?'&emsp;'+benGuaNaJia[i]:'') + '&emsp;' + (yao[i]===0?'〇':(yao[i]===3?'✖':'&emsp;')) }}</p>
89-
</el-col>
90-
<el-col v-show="false">
91-
<p class="pFont">{{bianGuaName.slice(3)}}&emsp;&emsp;</p>
92-
<p class="pFont" v-for="(j, i) in 6">{{ (yao[i]===0||yao[i]===3)?bianGuaLiuQin[i]:'&emsp;&emsp;' + '&emsp;' + (bianGua[i]?'▅▅▅▅▅':'▅▅&emsp;▅▅') + '&emsp;' + bianGuaNaJia[i] }}</p>
93-
</el-col>
94-
</el-row>
95-
</template>
96-
9797
<style scoped>
9898
p.pFont {
9999
color: black;

src/components/QiMen.vue

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<template>
2+
</template>
3+
4+
<script setup>
5+
</script>
6+
7+
<style scoped>
8+
</style>

src/main.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import BaZi from './components/BaZi.vue'
99
import Fireworks from './components/Fireworks.vue'
1010
import Home from './components/Home.vue'
1111
import LiuYao from './components/LiuYao.vue'
12+
import QiMen from "./components/QiMen.vue";
1213

1314
const routes = [
1415
{
@@ -27,6 +28,10 @@ const routes = [
2728
path: '/liuyao',
2829
component: LiuYao,
2930
},
31+
{
32+
path: '/qimen',
33+
component: QiMen,
34+
},
3035
]
3136

3237
const router = createRouter({

0 commit comments

Comments
 (0)