JXDS18FUJT преди 1 година
родител
ревизия
9df3ee6548

+ 9 - 3
js-calendar-converter.d.ts

@@ -1,4 +1,10 @@
-declare module 'calendar'{
-    
-    
+declare module 'js-calendar-converter' {
+    export default {
+        lunar2solar: function (year: string, month: string, day: string): { cYear: string, cMonth: string, cDay: string } {
+           
+        }
+
+
+    }
+
 } 

+ 114 - 12
package-lock.json

@@ -2171,6 +2171,17 @@
             "postcss-modules-values": "^2.0.0",
             "postcss-value-parser": "^3.3.0",
             "schema-utils": "^1.0.0"
+          },
+          "dependencies": {
+            "postcss": {
+              "version": "7.0.39",
+              "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+              "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+              "requires": {
+                "picocolors": "^0.2.1",
+                "source-map": "^0.6.1"
+              }
+            }
           }
         },
         "cssesc": {
@@ -2184,6 +2195,17 @@
           "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==",
           "requires": {
             "postcss": "^7.0.14"
+          },
+          "dependencies": {
+            "postcss": {
+              "version": "7.0.39",
+              "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+              "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+              "requires": {
+                "picocolors": "^0.2.1",
+                "source-map": "^0.6.1"
+              }
+            }
           }
         },
         "mini-css-extract-plugin": {
@@ -2196,12 +2218,28 @@
             "webpack-sources": "^1.1.0"
           }
         },
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA=="
+        },
         "postcss-modules-extract-imports": {
           "version": "2.0.0",
           "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz",
           "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==",
           "requires": {
             "postcss": "^7.0.5"
+          },
+          "dependencies": {
+            "postcss": {
+              "version": "7.0.39",
+              "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+              "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+              "requires": {
+                "picocolors": "^0.2.1",
+                "source-map": "^0.6.1"
+              }
+            }
           }
         },
         "postcss-modules-local-by-default": {
@@ -2212,6 +2250,17 @@
             "postcss": "^7.0.6",
             "postcss-selector-parser": "^6.0.0",
             "postcss-value-parser": "^3.3.1"
+          },
+          "dependencies": {
+            "postcss": {
+              "version": "7.0.39",
+              "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+              "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+              "requires": {
+                "picocolors": "^0.2.1",
+                "source-map": "^0.6.1"
+              }
+            }
           }
         },
         "postcss-modules-scope": {
@@ -2221,6 +2270,17 @@
           "requires": {
             "postcss": "^7.0.6",
             "postcss-selector-parser": "^6.0.0"
+          },
+          "dependencies": {
+            "postcss": {
+              "version": "7.0.39",
+              "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+              "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+              "requires": {
+                "picocolors": "^0.2.1",
+                "source-map": "^0.6.1"
+              }
+            }
           }
         },
         "postcss-modules-values": {
@@ -2230,6 +2290,17 @@
           "requires": {
             "icss-replace-symbols": "^1.1.0",
             "postcss": "^7.0.6"
+          },
+          "dependencies": {
+            "postcss": {
+              "version": "7.0.39",
+              "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+              "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+              "requires": {
+                "picocolors": "^0.2.1",
+                "source-map": "^0.6.1"
+              }
+            }
           }
         },
         "postcss-selector-parser": {
@@ -4427,6 +4498,20 @@
           "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
           "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg=="
         },
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA=="
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        },
         "postcss-selector-parser": {
           "version": "6.0.13",
           "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz",
@@ -12300,8 +12385,7 @@
     "nanoid": {
       "version": "3.3.7",
       "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
-      "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
-      "dev": true
+      "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g=="
     },
     "nanomatch": {
       "version": "1.2.13",
@@ -13068,9 +13152,9 @@
       "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow=="
     },
     "picocolors": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
-      "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA=="
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
+      "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
     },
     "picomatch": {
       "version": "2.3.1",
@@ -13128,12 +13212,13 @@
       "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg=="
     },
     "postcss": {
-      "version": "7.0.39",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
-      "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+      "version": "8.4.33",
+      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz",
+      "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==",
       "requires": {
-        "picocolors": "^0.2.1",
-        "source-map": "^0.6.1"
+        "nanoid": "^3.3.7",
+        "picocolors": "^1.0.0",
+        "source-map-js": "^1.0.2"
       }
     },
     "postcss-calc": {
@@ -13273,6 +13358,24 @@
         "postcss-value-parser": "^3.2.3",
         "read-cache": "^1.0.0",
         "resolve": "^1.1.7"
+      },
+      "dependencies": {
+        "picocolors": {
+          "version": "0.2.1",
+          "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
+          "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
+          "dev": true
+        },
+        "postcss": {
+          "version": "7.0.39",
+          "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
+          "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+          "dev": true,
+          "requires": {
+            "picocolors": "^0.2.1",
+            "source-map": "^0.6.1"
+          }
+        }
       }
     },
     "postcss-loader": {
@@ -15231,8 +15334,7 @@
     "source-map-js": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
-      "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
-      "dev": true
+      "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
     },
     "source-map-resolve": {
       "version": "0.5.3",

+ 1 - 0
package.json

@@ -78,6 +78,7 @@
     "less": "^4.2.0",
     "less-loader": "^7.3.0",
     "miniprogram-api-typings": "^3.12.1",
+    "postcss": "^8.4.33",
     "postcss-loader": "^7.3.3",
     "vue": ">= 2.6.14 < 2.7",
     "vue-class-component": "^6.3.2",

+ 3 - 1
src/api/index.ts

@@ -1,6 +1,8 @@
 import login from "./login";
 import openApi from "./openApi";
+import user from "./user";
 export default{
     login,
-    openApi
+    openApi,
+    user
 }

+ 1 - 1
src/api/openApi/index.ts

@@ -16,7 +16,7 @@ export default {
         })
     },
     openApiGanZhiGet8ziByDate(params: {
-        birthDay: string,
+        birthday: string,
         isSave: number,
         sex: number,
         username: string

+ 14 - 2
src/api/openApi/type.d.ts

@@ -6,13 +6,24 @@ interface commonRes {
 export declare namespace openApiRes {
     interface openApiGanZhiGet8ziByDate extends commonRes {
         data: {
+
+            piQi: string
+            guiren: string
+            industry: string
+            xiFangWei: string
+            chenGuMap: {
+                称骨评语: string,
+                称骨重量: string
+            }
+            birthday: string
+            qingGan: string
             username: string
             sex: 0 | 1
             birthDay: string
             nongDay: string
             score: number
             riYuan: string
-            reportMap: { 潮湿平衡: string; 缺失五行评语: string; 缺失十神评语: string;财运:string }
+            reportMap: { 潮湿平衡: string; 缺失五行评语: string; 缺失十神评语: string; 财运: string }
             guoGuanMap: { "1": string, "2": string, "3": string }
             ganZhiRowVoList: {
                 enColor: string
@@ -25,9 +36,10 @@ export declare namespace openApiRes {
                 shiShen1: string
                 shiShen2: string
                 shiShen3: string
-                hexColor?: string
+                hexColor: string
 
             }[]
+          
             ganZhiNaYinVoList: {
                 naYin: string
                 zhu: string

+ 18 - 0
src/api/user/index.ts

@@ -0,0 +1,18 @@
+import { Axios, AxiosPromise } from "axios";
+import request from "../request";
+
+export default {
+    userInfoGetWxacodeunLimit(params?: {
+        color?: string
+        five?: string
+        name: string
+
+    }): AxiosPromise<any> {
+        return request({
+            params,
+            method: 'GET',
+            url: "/user/info/getWxacodeunLimit",
+
+        })
+    },
+}

+ 6 - 0
src/pages.json

@@ -29,6 +29,12 @@
 			"style": {
 				"navigationBarTitleText": "专业术语"
 			}
+		},
+		{
+			"path": "pages/knowledge/index",
+			"style": {
+				"navigationBarTitleText": "基础知识"
+			}
 		}
 	],
 	"globalStyle": {

+ 11 - 8
src/pages/forecast/index.vue

@@ -1,6 +1,6 @@
 <template>
     <view :data-theme="theme" class="bg">
-        <view class="categorys">
+        <!-- <view class="categorys">
             <view style="width:100%">
                 <view class="categorys-item" v-for="item in categorys">
                     <view :data-theme="theme" @click="() => {
@@ -15,7 +15,7 @@
                 <view class=""></view>
             </view>
 
-        </view>
+        </view> -->
         <scroll-view :scroll-into-view="currentPoint" :scroll-with-animation="false" :scroll-y="true" class="content">
             <view id="bzmp" class="user">
                 <view style="width:50%">
@@ -28,7 +28,7 @@
                 </view>
                 <view style="width:100%">
                     <text>【公 历】</text>
-                    <text>{{ userData.birthDay }}</text>
+                    <text>{{ userData.birthday }}</text>
                 </view>
                 <view style="width:100%">
                     <text>【农 历】</text>
@@ -508,7 +508,7 @@ export default Vue.extend({
             { text: '推荐行业', point: 'tjhy' }],
 
             form: {
-                birthDay: '2000-01-01 23:00:00',
+                birthday: '2000-01-01 23:00:00',
                 isSave: 0,
                 sex: 1,
                 username: '默认用户'
@@ -524,7 +524,7 @@ export default Vue.extend({
                     称骨重量: "",
                 },
                 sex: 1,
-                birthDay: '',
+                birthday: '',
                 nongDay: '',
                 qingGan: '',
                 reportMap: {
@@ -765,13 +765,16 @@ export default Vue.extend({
         console.log('query', query)
         this.form.username = decodeURIComponent(query.username || this.form.username)
         this.form.sex = Number(query.sex) || this.form.sex
-        this.form.birthDay = decodeURIComponent(query.birthDay || this.form.birthDay)
-
+        this.form.birthday = decodeURIComponent(query.birthday || this.form.birthday)
+        uni.showLoading()
 
         api.openApi.openApiGanZhiGet8ziByDate(this.form).then(res => {
             this.userData = responseDecorator.get8ziByDateDecorator(res.data.data)
             this.theme = this.userData.ganZhiProRowVoList[2][0].enColor
             console.log(this.userData)
+            uni.hideLoading()
+        }).catch(err=>{
+            uni.hideLoading()
         })
 
     },
@@ -1107,7 +1110,7 @@ export default Vue.extend({
         position: relative;
         align-items: flex-start;
         align-content: flex-start;
-
+        display: none;
 
 
         [data-theme=red].result-content {

+ 9 - 9
src/pages/future/index.vue

@@ -96,7 +96,6 @@
 						<!-- <navigator url="/pages/forecast/index"> -->
 							<view @click="submitForm" class="content-button-submit">开始排盘</view>
 						<!-- </navigator> -->
-
 					</view>
 				</view>
 
@@ -114,7 +113,8 @@
 <script lang="ts">
 import Vue from 'vue';
 import api from '@/api/index';
-import calendar from 'js-calendar-converter'
+
+import calendar from 'js-calendar-converter'  // @ts-nocheck
 export default Vue.extend({
 	data() {
 		return {
@@ -137,7 +137,7 @@ export default Vue.extend({
 			],
 			form: {
 				isPay:0,
-				birthDay: '2023-11-01',
+				birthDay: '1995-01-01',
 				birthHour: '23:00',
 				birthChinaHour: '子时',
 				isSave: 0, //是否保存 0:不保存 1保存
@@ -151,13 +151,13 @@ export default Vue.extend({
 		uni.login({
 			success: res => {
 				console.log(res)
-				// api.login.loginJscode({
-				// 	jscode: res.code
-				// }).then(result => {
-				// 	uni.setStorageSync("token", result.data.data.token)
+				api.login.loginJscode({
+					jscode: res.code
+				}).then(result => {
+					uni.setStorageSync("token", result.data.data.token)
 
 
-				// })
+				})
 
 			}
 
@@ -175,7 +175,7 @@ export default Vue.extend({
 			// 	isPay:this.form.isPay
 			// })
 			uni.navigateTo({
-				url:`/pages/forecast/index?birthDay=${that.form.birthDay+' '+this.form.birthHour+':00'}&sex=${that.form.sex}&username=${that.form.username}`
+				url:`/pages/forecast/index?birthday=${that.form.birthDay+' '+this.form.birthHour+':00'}&sex=${that.form.sex}&username=${that.form.username}`
 			})
 
 

+ 24 - 8
src/pages/home/index.vue

@@ -2,42 +2,58 @@
     <div class="page">
         <div class="head">
             <img mode="widthFix" class="w-full" src="https://ndata.zzxcx.net/xpgx-xcx/home/head1@2x.png">
+            <img show-menu-by-longpress mode="widthFix" class="w-full" :src="codeImg">
         </div>
         <div class="content">
             <div class="item">
-                <navigator url="/pages/terminology/index"> <img class="w-full" mode="widthFix" src="https://ndata.zzxcx.net/xpgx-xcx/home/item1@2x.png"></navigator> 
+                <navigator url="/pages/knowledge/index"> <img class="w-full" mode="widthFix"
+                        src="https://ndata.zzxcx.net/xpgx-xcx/home/item1@2x.png"></navigator>
+            </div>
+
+            <div class="item">
+                <navigator url="/pages/terminology/index"><img mode="widthFix" class="w-full"
+                        src="https://ndata.zzxcx.net/xpgx-xcx/home/item2@2x.png"></navigator>
+            </div>
+            <div class="item">
+                <navigator url="/pages/future/index"><img mode="widthFix" class="w-full"
+                        src="https://ndata.zzxcx.net/xpgx-xcx/home/item3@2x.png"></navigator>
             </div>
-        
-            <div class="item"><img mode="widthFix" class="w-full" src="https://ndata.zzxcx.net/xpgx-xcx/home/item2@2x.png"></div>
-            <div class="item"><img mode="widthFix" class="w-full" src="https://ndata.zzxcx.net/xpgx-xcx/home/item3@2x.png"></div>
         </div>
     </div>
 </template>
 
 <script>
+import api from '@/api/index'
 export default {
     data() {
         return {
-
+            codeImg:''
         }
     },
+    onLoad(){
+        api.user.userInfoGetWxacodeunLimit().then(res=>{
+          this.codeImg= "data:image/png;base64,"+res.data.data
+        })
+    }
 
 }
 </script>
 
 <style lang="less" scoped>
-.w-full{
+.w-full {
     width: 100%;
 }
+
 .page {
     width: 100vw;
-   
+
     background-color: #F6ECDB;
 }
 
 .head {
     width: 750rpx;
-    height: 336rpx;
+    // height: 336rpx;
+    // overflow-y: scroll;
 }
 
 .content {

+ 65 - 0
src/pages/knowledge/index.vue

@@ -0,0 +1,65 @@
+<template>
+    <div class="">
+        <div>
+            <image style="width: 100%;" mode="widthFix" src="https://ndata.zzxcx.net/xpgx-xcx/knowledge/head@2x.png">
+            </image>
+        </div>
+        <div class="content">
+            <div class="border">
+                <div class="" style="margin-bottom: 20rpx;" v-for="(item, index) in list">
+                    <text v-if="item.type == 'text'">{{ item.text }}</text>
+                    <image style="width: 100%;" mode="widthFix" v-if="item.type == 'image'" :src="item.src"></image>
+                 
+                </div>
+            </div>
+
+        </div>
+    </div>
+</template>
+
+<script>
+export default {
+    data() {
+        return {
+            list: [{
+                type: 'text',
+                text: '十神是八字干支所代表的阴阳五行之间生克比合关系的一种表现形式,是古代八字算命术的特有概念。八字算命就是借助这些概念以推断人的贵*寿夭吉凶福祸的。既然十神是表示阴阳五行之间的生克关系的特有概念,其本身就没有吉凶的特别含意,如伤官并不一定表示不能为官,正官亦不一定就走仕途道路。所以不因伤官而恶之,亦不因食神而好之;不因七煞而惧之,亦不因正官而美之,仅是一种名称而已。但十神一旦融入具体的八字中,其吉凶意义便会立刻显示出来。比如伤官,它是克制官星的,也是伤官的本来意义。若八字中比劫多有财星,就最喜伤官泄比生财,岁运遇伤官,则主吉祥。当一个人处于求学阶段时,"鲤鱼跳龙门",考学必中。当在政府部门工作时必被提拔中用,官升一级。遇到伤官反为官,伤官不为害反为美。假若日主好,官星多,无印化之,再遇伤官,伤官的劣性就暴露出来了。经商者必破材,为官者受官害,常人亦受病疼之苦。'
+            }, {
+                type: 'image',
+                src: 'https://ndata.zzxcx.net/xpgx-xcx/knowledge/relation@2x.png'
+            },{
+                type: 'text',
+                text: '十神的含义具有宽泛性,即它代表了诸多层面的意义。比如正印,生我者为印,代表母亲是基本意义。此外还代表权力、职务、管辖范围、名誉地位、印把子、学业、学历、文件、书信、著作、科技成果、福寿等。当然,不同的八字中,其吉凶意义绝不相同。若八字中官杀重重有印星,这个印就表示了吉祥意义,岁运逢之,求学者必中,为官者飞黄,经商者拓展事业,疾病者不药而愈。反过来一个日旺比重印绶多的八字,必为孤寒刑克之命。再逢印绶,生我之物反化为戡害毒枭,为祸甚劣。除了十神的"意"之外,更重要的在于象。所谓"象",就是由"意"而引神入化出来的图象、形象、事物的变化发展过程等。命理师的高低之别,全在于对十神意和象的领悟和把握。从意到象,仅*逻辑性思维是不够的,还需要类比思维、形象思维、发散思维,即拓展思维空间,如根据正印的善恶旺衰五行性质等,可以勾画出幼年住宅之象,即房屋的间数、新旧、庭院树木等;论理六亲之象,即家庭人口的大体状况,甚至于母亲的形象和乳汁的多少等。从意到象,是预则师的质的飞跃和升华,"要与人间开聋聩,从意到象须理会"。对意与象的理解愈深,其功力则愈高。'
+            },
+            {
+                type: 'text',
+                text: '十神的含义具有宽泛性,即它代表了诸多层面的意义。比如正印,生我者为印,代表母亲是基本意义。此外还代表权力、职务、管辖范围、名誉地位、印把子、学业、学历、文件、书信、著作、科技成果、福寿等。当然,不同的八字中,其吉凶意义绝不相同。若八字中官杀重重有印星,这个印就表示了吉祥意义,岁运逢之,求学者必中,为官者飞黄,经商者拓展事业,疾病者不药而愈。反过来一个日旺比重印绶多的八字,必为孤寒刑克之命。再逢印绶,生我之物反化为戡害毒枭,为祸甚劣。除了十神的"意"之外,更重要的在于象。所谓"象",就是由"意"而引神入化出来的图象、形象、事物的变化发展过程等。命理师的高低之别,全在于对十神意和象的领悟和把握。从意到象,仅*逻辑性思维是不够的,还需要类比思维、形象思维、发散思维,即拓展思维空间,如根据正印的善恶旺衰五行性质等,可以勾画出幼年住宅之象,即房屋的间数、新旧、庭院树木等;论理六亲之象,即家庭人口的大体状况,甚至于母亲的形象和乳汁的多少等。从意到象,是预则师的质的飞跃和升华,"要与人间开聋聩,从意到象须理会"。对意与象的理解愈深,其功力则愈高。'
+            }]
+        }
+    },
+
+}
+</script>
+
+<style lang="less" scoped>
+.content {
+    width: 640rpx;
+    height: auto;
+    background: #F9F4ED;
+    border-radius: 20rpx 20rpx 20rpx 20rpx;
+    opacity: 1;
+    margin: 0 auto;
+    padding-bottom: 30rpx;
+
+    .border {
+        width: 100%;
+        padding: 32rpx 16rpx;
+        border: 2rpx solid #DFB46A;
+        font-size: 30rpx;
+        color: #333333;
+        border-radius: 16rpx 16rpx 16rpx 16rpx;
+        font-weight: 600;
+
+    }
+}
+</style>

+ 46 - 9
src/pages/terminology/index.vue

@@ -1,24 +1,48 @@
 <template>
     <div class="">
-        <div class="">
-            <div class="" v-for="(item, index) in list">
-                <text>{{ item.text }}</text>
-            </div>
+        <div>
+            <image style="width: 100%;" mode="widthFix" src="https://ndata.zzxcx.net/xpgx-xcx/knowledge/head@2x.png">
+            </image>
         </div>
+        <div class="content">
+            <div class="border">
+                <div class="" style="margin-bottom: 20rpx;display: flex;justify-content: center;" v-for="(item, index) in list">
+                    <text style="text-align: left;" v-if="item.type == 'text'">{{ item.text }}</text>
+                    <image style="width: 100%;" mode="widthFix" v-if="item.type == 'image'" :src="item.src"></image>
+                    <view style="margin: 0 auto;padding: 10rpx 50rpx;background-color: #A12320;color: #fff;
+border-radius: 30rpx;display: inline-block;" v-if="item.type == 'title'">{{ item.title }}</view>
+                </div>
+            </div>
 
+        </div>
     </div>
 </template>
 
 <script>
 export default {
     data() {
+    
         return {
             list: [{
+                type: 'title',
+                title: '一 正官'
+            }, {
+                type: 'text',
+                text: `官者,管也。八字中正官一般表示吉祥之意。官虽为克我之物,但这种克制是阴阳关系,克之有情。命书认为官有"约身引善之能"。一棵树没有约束地疯长,必不成器。一个人受到善意的克伐培养,方可成才。反过来,官或许成为害我之物。
+官有多种层面的寓义。它代表官位、职务、职称、选举、地位、考试、学位、名誉、声望;夫妇之间它代表丈夫,还代表正直、光明正大、认真负责、奉公守法等性情。由官的寓义结合八字可以构画出多种官方面的图象,使八字算命更具有形象性、可感性、灵通性。
+那么,应从哪几个方面观察和分析正官呢?`
+            },{
+                type:'text',
+                text:`1、配合:正官与其它十神的配合,是推断的基本。如,一位官星,无伤官害官星,无七杀混官星,官星有根,最为贵格,必在七品以上。官星过多就变成杀星,不但不能居官,反家计不丰,生活清俭,运程多阻厄。运程再遇官杀,必出祸端。官星过弱,无财生扶,亦不为贵。《滴天髓》云:"何知其人贵,官星有理会。何知其人*,官星还不现",比较详细地论述了贵*评价办法及其差异,值得细读(请参看卷四正官格)。`
+
+            },{
                 type:'text',
-                text:''
+                text:`2、位置:正官在八字中的不同位置,所表示的意义有较大差异。年柱表示祖上,若为喜用神,则受祖上福阴大,出身于较好或为官宦之家,或为富裕名望之家等。年柱又表示16岁以前的限运,则易于少年得志,学业成绩佳。再配以较好运程,往往上小学、中学阶段当班级或学校干部。月柱为父母宫,又为兄弟宫,又为性格宫。官为喜用神,则表示倍受父母疼爱,一生少劳苦。官在月柱,又叫正气官星,官的正面意义,表现的很充分。且月柱为青年时期的限运,则学业、事业易于成功。 日支为配偶宫,又与日主最为关切。官为喜用居于日支,既说明本人有组织领导和应变能力,又说明其妻端庄贤慧,多助其夫。 时柱为子女宫,又是老年限运。若官为喜用,则子女敦厚正直,有出息。自己年老有孝子奉养,晚享清福。 订阅号:九龙道长官方号`
+
             },{
-                type:'image',
-                src:""
+                type:'text',
+                text:`3、坐基:所谓坐基,是指地支对于官星的影响力。坐基可以从几个不同的方面加以考察。`
+
             }]
         }
     },
@@ -28,10 +52,23 @@ export default {
 
 <style lang="less" scoped>
 .content {
-    width: 640px;
+    width: 640rpx;
     height: auto;
     background: #F9F4ED;
-    border-radius: 20px 20px 20px 20px;
+    border-radius: 20rpx 20rpx 20rpx 20rpx;
     opacity: 1;
+    margin: 0 auto;
+    padding-bottom: 30rpx;
+
+    .border {
+        width: 100%;
+        padding: 32rpx 16rpx;
+        border: 2rpx solid #DFB46A;
+        font-size: 30rpx;
+        color: #333333;
+        border-radius: 16rpx 16rpx 16rpx 16rpx;
+        font-weight: 600;
+
+    }
 }
 </style>

+ 2 - 2
src/utils/responseDecorator.ts

@@ -22,7 +22,7 @@ const switchTextToHexColor = (text: string) => {
         case '蓝':
             color = '#006494'
             break;
-        case '':
+        case '':
             color = '#D19C03'
             break;
         default:
@@ -45,7 +45,7 @@ const switchTextToEnColor = (text: string) => {
         case '蓝':
             color = 'blue'
             break;
-        case '':
+        case '':
             color = 'yellow'
             break;
         default: