소스 검색

add logger with AOP aspect
update destination page

fengchang 1 년 전
부모
커밋
2b967dcf00
17개의 변경된 파일181개의 추가작업 그리고 101개의 파일을 삭제
  1. 89 101
      hichina-admin-backend/src/main/resources/db/changelog/liquibase-changeLog.xml
  2. 16 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/config/EnableHichinaAutoLog.java
  3. 32 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/config/HichinaAutoLogAspect.java
  4. 7 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/BlogController.java
  5. 2 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/DestinationController.java
  6. 2 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/ImageController.java
  7. 2 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/OrderController.java
  8. 4 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PageContentAdminController.java
  9. 3 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicBlogController.java
  10. 5 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicDestinationController.java
  11. 2 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicGuidebookController.java
  12. 3 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicPayController.java
  13. 3 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicProductSkuController.java
  14. 3 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicRegisterController.java
  15. 2 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicServiceController.java
  16. 4 0
      hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/UserController.java
  17. 2 0
      hichina-main-front/src/views/destination/index.vue

+ 89 - 101
hichina-admin-backend/src/main/resources/db/changelog/liquibase-changeLog.xml

@@ -1,6 +1,16 @@
 <?xml version="1.1" encoding="UTF-8" standalone="no"?>
 <databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd">
-    <changeSet author="xiefengchang (generated)" id="1682222028657-1">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-1">
+        <createTable tableName="admin_user">
+            <column name="username" type="VARCHAR(100)">
+                <constraints nullable="false"/>
+            </column>
+            <column name="password" type="VARCHAR(100)">
+                <constraints nullable="false"/>
+            </column>
+        </createTable>
+    </changeSet>
+    <changeSet author="xiefengchang (generated)" id="1683210780495-2">
         <createTable tableName="blog">
             <column name="blog_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -15,11 +25,11 @@
             </column>
             <column name="head_image_url" type="VARCHAR(500)"/>
             <column name="language" type="VARCHAR(50)"/>
-            <column name="content" type="TEXT"/>
+            <column name="content" type="LONGTEXT"/>
             <column defaultValueBoolean="false" name="draft" type="BIT(1)"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-2">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-3">
         <createTable tableName="comment">
             <column name="comment_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -35,7 +45,7 @@
             <column name="comment_content" type="TEXT"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-3">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-4">
         <createTable tableName="destination">
             <column name="destination_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -50,7 +60,7 @@
             <column name="destination_profile_image" type="VARCHAR(500)"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-4">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-5">
         <createTable tableName="guidebook">
             <column name="guide_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -64,7 +74,7 @@
             <column name="created_date" type="TIMESTAMP"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-5">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-6">
         <createTable tableName="hichina_line">
             <column autoIncrement="true" name="id" type="BIGINT">
                 <constraints primaryKey="true"/>
@@ -82,7 +92,7 @@
             <column name="description" type="TEXT"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-6">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-7">
         <createTable tableName="hichina_product">
             <column name="sku_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -100,7 +110,7 @@
             <column name="created_time" type="TIMESTAMP"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-7">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-8">
         <createTable tableName="hichina_product_type">
             <column name="product_type_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -111,7 +121,7 @@
             <column name="product_type_description" type="VARCHAR(100)"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-8">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-9">
         <createTable tableName="order">
             <column name="order_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -133,7 +143,7 @@
             <column name="remark" type="VARCHAR(500)"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-9">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-10">
         <createTable tableName="product_attribute">
             <column name="attribute_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -146,7 +156,7 @@
             </column>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-10">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-11">
         <createTable tableName="product_sku_group">
             <column name="sku_group_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -161,7 +171,7 @@
             <column defaultValueBoolean="false" name="enabled" type="BIT(1)"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-11">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-12">
         <createTable tableName="product_sku_int_attribute_mapping">
             <column name="sku_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -173,7 +183,7 @@
             </column>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-12">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-13">
         <createTable tableName="product_sku_timestamp_attribute_mapping">
             <column name="sku_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -185,19 +195,19 @@
             </column>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-13">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-14">
         <createTable tableName="product_sku_varchar_attribute_mapping">
             <column name="sku_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
             </column>
             <column name="data_type" type="VARCHAR(20)"/>
-            <column name="attribute_value" type="VARCHAR(200)"/>
+            <column name="attribute_value" type="TEXT"/>
             <column name="attribute_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
             </column>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-14">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-15">
         <createTable tableName="product_type_attribute_mapping">
             <column name="product_type_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -210,7 +220,7 @@
             </column>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-15">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-16">
         <createTable tableName="user">
             <column name="user_id" type="VARCHAR(50)">
                 <constraints nullable="false"/>
@@ -243,227 +253,205 @@
             <column name="pwd_code" type="INT"/>
         </createTable>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-16">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-17">
         <addPrimaryKey columnNames="blog_id" constraintName="PRIMARY" tableName="blog"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-17">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-18">
         <addPrimaryKey columnNames="comment_id" constraintName="PRIMARY" tableName="comment"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-18">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-19">
         <addPrimaryKey columnNames="destination_id" constraintName="PRIMARY" tableName="destination"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-19">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-20">
         <addPrimaryKey columnNames="guide_id" constraintName="PRIMARY" tableName="guidebook"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-20">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-21">
         <addPrimaryKey columnNames="sku_id" constraintName="PRIMARY" tableName="hichina_product"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-21">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-22">
         <addPrimaryKey columnNames="product_type_id" constraintName="PRIMARY" tableName="hichina_product_type"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-22">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-23">
         <addPrimaryKey columnNames="order_id" constraintName="PRIMARY" tableName="order"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-23">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-24">
         <addPrimaryKey columnNames="attribute_id" constraintName="PRIMARY" tableName="product_attribute"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-24">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-25">
         <addPrimaryKey columnNames="sku_group_id" constraintName="PRIMARY" tableName="product_sku_group"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-25">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-26">
         <addPrimaryKey columnNames="user_id" constraintName="PRIMARY" tableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-26">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-27">
         <addUniqueConstraint columnNames="guide_id, destination_id" constraintName="guidebookanddestinationoneonemapping" tableName="guidebook"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-27">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-28">
         <addUniqueConstraint columnNames="product_type_id, attribute_id" constraintName="product_type_attribute_binding_unique" tableName="product_type_attribute_mapping"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-28">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-29">
         <addUniqueConstraint columnNames="sku_id, attribute_id" constraintName="sku_id_single_attribute_int_value" tableName="product_sku_int_attribute_mapping"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-29">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-30">
         <addUniqueConstraint columnNames="sku_id, attribute_id" constraintName="sku_id_single_attribute_timestamp_value" tableName="product_sku_timestamp_attribute_mapping"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-30">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-31">
         <addUniqueConstraint columnNames="sku_id, attribute_id" constraintName="sku_id_single_attribute_varchar_value" tableName="product_sku_varchar_attribute_mapping"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-31">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-32">
         <addUniqueConstraint columnNames="attribute_name" constraintName="uniq_attribute_name" tableName="product_attribute"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-32">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-33">
         <addUniqueConstraint columnNames="product_type_name" constraintName="uniq_product_type_name" tableName="hichina_product_type"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-33">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-34">
         <addUniqueConstraint columnNames="sku_group_name, product_type_id" constraintName="unique_sku_group_name_within_same_product_type" tableName="product_sku_group"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-34">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-35">
         <addUniqueConstraint columnNames="email" constraintName="uniqueemailinusertable" tableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-35">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-36">
         <addUniqueConstraint columnNames="facebook_id" constraintName="uniquefacebookidinusertable" tableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-36">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-37">
         <addUniqueConstraint columnNames="google_id" constraintName="uniquegoogleidinusertable" tableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-37">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-38">
         <addUniqueConstraint columnNames="phone" constraintName="uniquephoneinusertable" tableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-38">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-39">
         <addUniqueConstraint columnNames="username" constraintName="uniqueusernameinusertable" tableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-39">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-40">
         <addUniqueConstraint columnNames="wx_id" constraintName="uniquewxidinusertable" tableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-40">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-41">
+        <addUniqueConstraint columnNames="username" constraintName="uniqusernameforadminuser" tableName="admin_user"/>
+    </changeSet>
+    <changeSet author="xiefengchang (generated)" id="1683210780495-42">
         <createIndex indexName="fk_blog_to_user_id" tableName="blog">
             <column name="user_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-41">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-43">
         <createIndex indexName="fk_comment_to_blog_id" tableName="comment">
             <column name="blog_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-42">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-44">
         <createIndex indexName="fk_comment_to_comment_id" tableName="comment">
             <column name="respond_to"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-43">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-45">
         <createIndex indexName="fk_comment_to_user_id" tableName="comment">
             <column name="user_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-44">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-46">
         <createIndex indexName="fk_destination_to_destination_id" tableName="destination">
             <column name="parent_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-45">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-47">
         <createIndex indexName="fk_guidebook_to_destination_id" tableName="guidebook">
             <column name="destination_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-46">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-48">
         <createIndex indexName="fk_order_to_product_sku_id" tableName="order">
             <column name="product_sku_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-47">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-49">
         <createIndex indexName="fk_order_to_user_id" tableName="order">
             <column name="user_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-48">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-50">
         <createIndex indexName="fk_prd_att_mapping_to_attr_id" tableName="product_type_attribute_mapping">
             <column name="attribute_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-49">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-51">
         <createIndex indexName="fk_prd_att_mapping_to_product_type_id" tableName="product_type_attribute_mapping">
             <column name="product_type_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-50">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-52">
         <createIndex indexName="fk_product_to_sku_group_group_id" tableName="hichina_product">
             <column name="sku_group_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-51">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-53">
         <createIndex indexName="fk_product_to_type_type_id" tableName="hichina_product">
             <column name="product_type_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-52">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-54">
         <createIndex indexName="fk_sku_group_to_product_type_id" tableName="product_sku_group">
             <column name="product_type_id"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-53">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-55">
         <createIndex indexName="index_publicid" tableName="hichina_line">
             <column name="public_id"/>
             <column name="name"/>
         </createIndex>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-54">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-56">
+        <createIndex indexName="indexblogcreatetime" tableName="blog">
+            <column name="created_time"/>
+        </createIndex>
+    </changeSet>
+    <changeSet author="xiefengchang (generated)" id="1683210780495-57">
         <addForeignKeyConstraint baseColumnNames="user_id" baseTableName="blog" constraintName="fk_blog_to_user_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="user_id" referencedTableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-55">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-58">
         <addForeignKeyConstraint baseColumnNames="blog_id" baseTableName="comment" constraintName="fk_comment_to_blog_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="blog_id" referencedTableName="blog"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-56">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-59">
         <addForeignKeyConstraint baseColumnNames="respond_to" baseTableName="comment" constraintName="fk_comment_to_comment_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="comment_id" referencedTableName="comment"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-57">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-60">
         <addForeignKeyConstraint baseColumnNames="user_id" baseTableName="comment" constraintName="fk_comment_to_user_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="user_id" referencedTableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-58">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-61">
         <addForeignKeyConstraint baseColumnNames="parent_id" baseTableName="destination" constraintName="fk_destination_to_destination_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="destination_id" referencedTableName="destination"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-59">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-62">
         <addForeignKeyConstraint baseColumnNames="destination_id" baseTableName="guidebook" constraintName="fk_guidebook_to_destination_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="destination_id" referencedTableName="destination"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-60">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-63">
         <addForeignKeyConstraint baseColumnNames="product_sku_id" baseTableName="order" constraintName="fk_order_to_product_sku_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="sku_id" referencedTableName="hichina_product"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-61">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-64">
         <addForeignKeyConstraint baseColumnNames="user_id" baseTableName="order" constraintName="fk_order_to_user_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="user_id" referencedTableName="user"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-62">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-65">
         <addForeignKeyConstraint baseColumnNames="attribute_id" baseTableName="product_type_attribute_mapping" constraintName="fk_prd_att_mapping_to_attr_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="attribute_id" referencedTableName="product_attribute"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-63">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-66">
         <addForeignKeyConstraint baseColumnNames="product_type_id" baseTableName="product_type_attribute_mapping" constraintName="fk_prd_att_mapping_to_product_type_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="product_type_id" referencedTableName="hichina_product_type"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-64">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-67">
         <addForeignKeyConstraint baseColumnNames="sku_group_id" baseTableName="hichina_product" constraintName="fk_product_to_sku_group_group_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="sku_group_id" referencedTableName="product_sku_group"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-65">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-68">
         <addForeignKeyConstraint baseColumnNames="product_type_id" baseTableName="hichina_product" constraintName="fk_product_to_type_type_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="product_type_id" referencedTableName="hichina_product_type"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-66">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-69">
         <addForeignKeyConstraint baseColumnNames="product_type_id" baseTableName="product_sku_group" constraintName="fk_sku_group_to_product_type_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="product_type_id" referencedTableName="hichina_product_type"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-67">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-70">
         <addForeignKeyConstraint baseColumnNames="sku_id" baseTableName="product_sku_int_attribute_mapping" constraintName="fk_skuintattrmapping_to_product_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="sku_id" referencedTableName="hichina_product"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-68">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-71">
         <addForeignKeyConstraint baseColumnNames="sku_id" baseTableName="product_sku_timestamp_attribute_mapping" constraintName="fk_skutimestampattrmapping_to_product_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="sku_id" referencedTableName="hichina_product"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="1682222028657-69">
+    <changeSet author="xiefengchang (generated)" id="1683210780495-72">
         <addForeignKeyConstraint baseColumnNames="sku_id" baseTableName="product_sku_varchar_attribute_mapping" constraintName="fk_skuvarcharattrmapping_to_product_id" deferrable="false" initiallyDeferred="false" onDelete="RESTRICT" onUpdate="RESTRICT" referencedColumnNames="sku_id" referencedTableName="hichina_product"/>
     </changeSet>
-    <changeSet author="xiefengchang (generated)" id="16s82x22x2xx028657-10">
-        <createTable tableName="admin_user">
-            <column name="username" type="VARCHAR(100)">
-                <constraints nullable="false"/>
-            </column>
-            <column name="password" type="VARCHAR(100)">
-                <constraints nullable="false"/>
-            </column>
-        </createTable>
-    </changeSet>
-    <changeSet author="xiefengchang (generated)" id="16x8x22x22x02x8657-26">
-        <addUniqueConstraint columnNames="username" constraintName="uniqusernameforadminuser" tableName="admin_user"/>
-    </changeSet>
-    <changeSet author="xiefengchang (generated)" id="16822sx2202g8657-40">
-        <createIndex indexName="indexblogcreatetime" tableName="blog">
-            <column name="created_time"/>
-        </createIndex>
-    </changeSet>
-    <changeSet  author="liquibase-docs"  id="modifyDataType-blogcontenttolongtext">
-        <modifyDataType
-                         columnName="content"
-                         newDataType="LONGTEXT"
-                         tableName="blog"/>
-    </changeSet>
-    <changeSet  author="liquibase-docs"  id="modifyDataType-varcharattributetotextinskuattrtable">
-        <modifyDataType
-                columnName="attribute_value"
-                newDataType="TEXT"
-                tableName="product_sku_varchar_attribute_mapping"/>
-    </changeSet>
     <changeSet author="liquibase-docs" id="add-createdtime-adminuser">
         <addColumn tableName="admin_user">
             <column name="created_time"

+ 16 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/config/EnableHichinaAutoLog.java

@@ -0,0 +1,16 @@
+package com.hichina.main.back.hichinamainback.config;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * @author xiefengchang
+ * this annotation requires that if parameter has HttpServletRequest, it must be the first argument
+ */
+@Target(ElementType.METHOD)
+@Retention(RetentionPolicy.RUNTIME)
+public @interface EnableHichinaAutoLog {
+    String description();
+}

+ 32 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/config/HichinaAutoLogAspect.java

@@ -0,0 +1,32 @@
+package com.hichina.main.back.hichinamainback.config;
+
+import com.hichina.main.back.hichinamainback.controller.UserController;
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.Around;
+import org.aspectj.lang.annotation.Aspect;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author xiefengchang
+ */
+@Aspect
+@Component
+public class HichinaAutoLogAspect {
+    private static final Logger LOG = LoggerFactory.getLogger(HichinaAutoLogAspect.class);
+
+    @Around(value = "execution(* com.hichina.main.back.hichinamainback.controller.*.*(..)) && @annotation(enableHichinaAutoLog)")
+    public Object enableHichinaAutoLog(ProceedingJoinPoint joinPoint, EnableHichinaAutoLog enableHichinaAutoLog ) throws Throwable {
+        String whoami = UserController.currentUser();
+        final long start = System.currentTimeMillis();
+        LOG.info("==="+whoami+"Entering "+joinPoint.getSignature().getName()+" method of "+joinPoint.getSignature().getDeclaringTypeName());
+        final Object proceed = joinPoint.proceed();
+        // TODO: 2023/5/19 log into future log system like elasticsearch etc.
+
+        final long executionTime = System.currentTimeMillis() - start;
+        LOG.info("===" + joinPoint.getSignature() + " executed in " + executionTime + "ms");
+        LOG.info("==="+whoami+" returning "+joinPoint.getSignature().getName()+" method of "+joinPoint.getSignature().getDeclaringTypeName());
+        return proceed;
+    }
+}

+ 7 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/BlogController.java

@@ -2,6 +2,7 @@ package com.hichina.main.back.hichinamainback.controller;
 
 import com.github.pagehelper.PageHelper;
 import com.google.common.base.Optional;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.mapper.BlogMapper;
 import com.hichina.main.back.hichinamainback.mapper.UserMapper;
 import com.hichina.main.back.hichinamainback.model.Blog;
@@ -54,6 +55,7 @@ public class BlogController {
     }
 
     @GetMapping("/{blogId}")
+    @EnableHichinaAutoLog(description = "Get blog detail by id")
     public HichinaResponse getBlogDetailById(@PathVariable("blogId")String blogId){
         HichinaResponse ret = new HichinaResponse();
         List<Blog> blogs = blogMapper.findRawBlogById(blogId);
@@ -69,6 +71,7 @@ public class BlogController {
     }
 
     @GetMapping("/mybloglist")
+    @EnableHichinaAutoLog(description = "Get my blog list")
     public HichinaResponse getMyBlogs(@RequestParam(value = "page", required = true) Integer page,
                                       @RequestParam(value = "pageSize", required = true) Integer size,
                                       @RequestParam(value = "query") String query){
@@ -103,6 +106,7 @@ public class BlogController {
     }
 
     @PostMapping
+    @EnableHichinaAutoLog(description = "create blog")
     public HichinaResponse createBlog(@RequestBody BlogCreationDTO request){
         HichinaResponse ret = new HichinaResponse();
 
@@ -131,6 +135,7 @@ public class BlogController {
     }
 
     @DeleteMapping("/{blogId}")
+    @EnableHichinaAutoLog(description = "delete blog")
     public HichinaResponse deleteBlog(@PathVariable("blogId")String blogId){
         HichinaResponse ret = new HichinaResponse();
         blogMapper.delete(blogId);
@@ -141,6 +146,7 @@ public class BlogController {
     }
 
     @PutMapping("/edit-basic/{blogId}")
+    @EnableHichinaAutoLog(description = "edit blog basic")
     public HichinaResponse editBasic(@PathVariable("blogId")String blogId, @RequestBody BlogEditDTO request){
         HichinaResponse ret = new HichinaResponse();
         List<Blog> blogs = blogMapper.findRawBlogById(blogId);
@@ -164,6 +170,7 @@ public class BlogController {
     }
 
     @PutMapping("/publish/{blogId}")
+    @EnableHichinaAutoLog(description = "publish blog")
     public HichinaResponse publishBlog(@PathVariable("blogId")String blogId){
         HichinaResponse ret = new HichinaResponse();
         List<Blog> blogs = blogMapper.findRawBlogById(blogId);

+ 2 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/DestinationController.java

@@ -1,5 +1,6 @@
 package com.hichina.main.back.hichinamainback.controller;
 
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.mapper.DestinationMapper;
 import com.hichina.main.back.hichinamainback.model.DTO.DestinationProfileDTO;
 import com.hichina.main.back.hichinamainback.model.DTO.HichinaResponse;
@@ -17,6 +18,7 @@ public class DestinationController {
     private DestinationMapper destinationMapper;
 
     @GetMapping("/rand6")
+    @EnableHichinaAutoLog(description = "get random 6 blogs for home page")
     public HichinaResponse getRand6Destinations(){
         HichinaResponse ret = new HichinaResponse();
         List<DestinationProfileDTO> rand6Destinations =  destinationMapper.findRandomDestinationsByCount(6);

+ 2 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/ImageController.java

@@ -1,6 +1,7 @@
 package com.hichina.main.back.hichinamainback.controller;
 
 import com.aliyun.oss.OSSClient;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.model.DTO.HichinaResponse;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -24,6 +25,7 @@ public class ImageController {
     private Environment env;
 
     @RequestMapping(value = "/upload", method = RequestMethod.POST)
+    @EnableHichinaAutoLog(description = "upload image")
     public HichinaResponse uploadProfile(@RequestParam("imageFile") MultipartFile uploadFile, @RequestParam("expectedType") String expectedType) {
         HichinaResponse ret = new HichinaResponse();
         try {

+ 2 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/OrderController.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.github.pagehelper.PageHelper;
 import com.google.gson.Gson;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.mapper.OrderMapper;
 import com.hichina.main.back.hichinamainback.mapper.UserMapper;
 import com.hichina.main.back.hichinamainback.model.DTO.*;
@@ -161,6 +162,7 @@ public class OrderController {
     }
 
     @GetMapping("/myorders")
+    @EnableHichinaAutoLog(description = "my orders")
     public HichinaResponse getMyOrders(@RequestParam(value = "page", required = true) Integer page,
                                        @RequestParam(value = "pageSize", required = true) Integer size,
                                        @RequestParam(value = "query") String query){

+ 4 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PageContentAdminController.java

@@ -1,6 +1,7 @@
 package com.hichina.main.back.hichinamainback.controller;
 
 
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.model.DTO.HichinaResponse;
 import com.hichina.main.back.hichinamainback.model.mongo.BlogSlideImage;
 import com.hichina.main.back.hichinamainback.model.mongo.GuidebookIntroSlideImage;
@@ -26,6 +27,7 @@ public class PageContentAdminController {
     private BlogSlideImageRepository blogSlideImageRepository;
 
     @GetMapping("/homesliders")
+    @EnableHichinaAutoLog(description = "Get home slider")
     public HichinaResponse getAllHomeSliders(){
         HichinaResponse ret = new HichinaResponse();
         List<HomeSlideImage> sliders = homeSlideImageRepository.findAll();
@@ -36,6 +38,7 @@ public class PageContentAdminController {
     }
 
     @GetMapping("/guidebookintrosliders")
+    @EnableHichinaAutoLog(description = "Get guidebook intro sliders")
     public HichinaResponse getAllGuidebookIntroSliders(){
         HichinaResponse ret = new HichinaResponse();
         List<GuidebookIntroSlideImage> sliders = guidebookIntroSlideImageRepository.findAll();
@@ -46,6 +49,7 @@ public class PageContentAdminController {
     }
 
     @GetMapping("/bloghomesliders")
+    @EnableHichinaAutoLog(description = "blog home sliders")
     public HichinaResponse getAllBloghomeSliders(){
         HichinaResponse ret = new HichinaResponse();
         List<BlogSlideImage> sliders = blogSlideImageRepository.findAll();

+ 3 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicBlogController.java

@@ -2,6 +2,7 @@ package com.hichina.main.back.hichinamainback.controller;
 
 import com.aliyuncs.utils.StringUtils;
 import com.github.pagehelper.PageHelper;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.mapper.BlogMapper;
 import com.hichina.main.back.hichinamainback.mapper.UserMapper;
 import com.hichina.main.back.hichinamainback.model.DTO.BlogDetailDTO;
@@ -25,6 +26,7 @@ public class PublicBlogController {
     private UserMapper userMapper;
 
     @GetMapping("/{blogId}")
+    @EnableHichinaAutoLog(description = "Get blog detail by id")
     public HichinaResponse getBlogDetailById(@PathVariable("blogId") String blogId){
         List<BlogDetailDTO> blogs = blogMapper.findBlogById(blogId);
         HichinaResponse ret = new HichinaResponse();
@@ -41,6 +43,7 @@ public class PublicBlogController {
     }
 
     @GetMapping("/list")
+    @EnableHichinaAutoLog(description = "Get blog list by page")
     public HichinaResponse getBloglist(@RequestParam(value = "page", required = true) Integer page,
                                        @RequestParam(value = "pageSize", required = true) Integer size,
                                        @RequestParam(value = "query") String query){

+ 5 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicDestinationController.java

@@ -2,6 +2,7 @@ package com.hichina.main.back.hichinamainback.controller;
 
 import com.aliyuncs.utils.StringUtils;
 import com.github.pagehelper.PageHelper;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.mapper.DestinationMapper;
 import com.hichina.main.back.hichinamainback.model.DTO.DestinationProfileDTO;
 import com.hichina.main.back.hichinamainback.model.DTO.DestinationWithGuidebook;
@@ -22,6 +23,7 @@ public class PublicDestinationController {
     private DestinationMapper destinationMapper;
 
     @GetMapping("/{destinationId}")
+    @EnableHichinaAutoLog(description = "Get destination with guidebook by id")
     public HichinaResponse getByDestinationWithGuidebookById(@PathVariable("destinationId") String destinationId){
         HichinaResponse ret = new HichinaResponse();
 
@@ -34,6 +36,7 @@ public class PublicDestinationController {
             return ret;
         }
 
+        // do not support multiple guidebook for a destination, if there are multiple, pick the first
         ret.setData(destinations.get(0));
         ret.setOk(true);
         ret.setMessage(String.format("成功获取id为%s的destination with guidebook", destinationId));
@@ -42,6 +45,7 @@ public class PublicDestinationController {
     }
 
     @GetMapping("/children/{destinationId}")
+    @EnableHichinaAutoLog(description = "Get child destinations")
     public HichinaResponse getChildDestinations(@PathVariable("destinationId") String destinationId){
         HichinaResponse ret = new HichinaResponse();
         List<Destination> destinations = destinationMapper.findDirectChildById(destinationId);
@@ -52,6 +56,7 @@ public class PublicDestinationController {
     }
 
     @GetMapping("/list")
+    @EnableHichinaAutoLog(description = "Get destination list api")
     public HichinaResponse getDestinationList(@RequestParam(value = "page", required = true) Integer page,
                                               @RequestParam(value = "pageSize", required = true) Integer size,
                                               @RequestParam(value = "query") String query){

+ 2 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicGuidebookController.java

@@ -2,6 +2,7 @@ package com.hichina.main.back.hichinamainback.controller;
 
 import com.aliyuncs.utils.StringUtils;
 import com.github.pagehelper.PageHelper;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.mapper.GuidebookMapper;
 import com.hichina.main.back.hichinamainback.model.DTO.GuidebookListDTO;
 import com.hichina.main.back.hichinamainback.model.DTO.HichinaResponse;
@@ -21,6 +22,7 @@ public class PublicGuidebookController {
     private GuidebookMapper guidebookMapper;
 
     @GetMapping
+    @EnableHichinaAutoLog(description = "Get guidebooks")
     public HichinaResponse getGuidebooks(@RequestParam(value = "page", required = true) Integer page,
                                          @RequestParam(value = "pageSize", required = true) Integer size,
                                          @RequestParam(value = "query") String query){

+ 3 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicPayController.java

@@ -2,6 +2,7 @@ package com.hichina.main.back.hichinamainback.controller;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.mapper.OrderMapper;
 import com.hichina.main.back.hichinamainback.model.Order;
 import com.hichina.main.back.hichinamainback.service.AliPayService;
@@ -32,6 +33,7 @@ public class PublicPayController {
 
     private static final Logger LOG = LoggerFactory.getLogger(PublicPayController.class);
     @PostMapping("/wechatpaycallback")
+    @EnableHichinaAutoLog(description = "wechat pay callback")
     public String postProcessWechatpay(@RequestHeader Map<String, String> headers, @RequestBody JSONObject params) throws IOException {
 //        LOG.info("=====wechat callback notify");
 //        for(String k: headers.keySet()){
@@ -80,6 +82,7 @@ public class PublicPayController {
     }
 
     @PostMapping("/alipaycallback")
+    @EnableHichinaAutoLog(description = "alipay callback")
     public String postProcessAlipay(@RequestParam Map<String, String> params){
         String verifyResult = aliPayService.verifySign(params);
         if("success".equals(verifyResult)){

+ 3 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicProductSkuController.java

@@ -1,6 +1,7 @@
 package com.hichina.main.back.hichinamainback.controller;
 
 import com.github.pagehelper.PageHelper;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.model.DTO.*;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -96,6 +97,7 @@ public class PublicProductSkuController {
     }
 
     @GetMapping("/productskugrouplist")
+    @EnableHichinaAutoLog(description = "Get product sku group list by page")
     public HichinaResponse getProductSkuGroupList(@RequestParam(value = "page", required = true) Integer page,
                                                   @RequestParam(value = "pageSize", required = true) Integer size,
                                                   @RequestParam(value = "query") String query,
@@ -141,6 +143,7 @@ public class PublicProductSkuController {
     }
 
     @GetMapping("/bygroupidwithpropertybag")
+    @EnableHichinaAutoLog(description = "Get product skus by group id")
     public HichinaResponse getProductSkusByGroupId(@RequestParam(value="skuGroupId",required = true) String skuGroupId){
         HichinaResponse ret = new HichinaResponse();
 

+ 3 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicRegisterController.java

@@ -2,6 +2,7 @@ package com.hichina.main.back.hichinamainback.controller;
 
 
 import com.hichina.main.back.hichinamainback.config.CustomAuthenticationProvider;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.mapper.UserMapper;
 import com.hichina.main.back.hichinamainback.model.DTO.HichinaResponse;
 import com.hichina.main.back.hichinamainback.model.DTO.RegisterDTO;
@@ -37,6 +38,7 @@ public class PublicRegisterController {
     private MailUtil mailUtil;
 
     @PostMapping
+    @EnableHichinaAutoLog(description = "register api")
     public HichinaResponse register(@RequestBody RegisterDTO request){
         HichinaResponse ret = new HichinaResponse();
 
@@ -67,6 +69,7 @@ public class PublicRegisterController {
     }
 
     @PostMapping("/pushintodb/{regKey}")
+    @EnableHichinaAutoLog(description = "push redis cacheIntodb")
     public HichinaResponse pushRedisCacheIntoDb(@PathVariable("regKey") String regKey){
         HichinaResponse ret = new HichinaResponse();
         Object toPushObj = redisUtil.get(regKey);

+ 2 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/PublicServiceController.java

@@ -1,5 +1,6 @@
 package com.hichina.main.back.hichinamainback.controller;
 
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.env.Environment;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -17,6 +18,7 @@ public class PublicServiceController {
     }
 
     @GetMapping("/backend-service")
+    @EnableHichinaAutoLog(description = "Get backend service url")
     public String getBackendUrl(){
         return env.getProperty("backend.servicebase.url");
     }

+ 4 - 0
hichina-main-back/src/main/java/com/hichina/main/back/hichinamainback/controller/UserController.java

@@ -1,6 +1,7 @@
 package com.hichina.main.back.hichinamainback.controller;
 
 import com.hichina.main.back.hichinamainback.config.CustomAuthenticationProvider;
+import com.hichina.main.back.hichinamainback.config.EnableHichinaAutoLog;
 import com.hichina.main.back.hichinamainback.mapper.UserMapper;
 import com.hichina.main.back.hichinamainback.model.DTO.GeneralSingleStringDTO;
 import com.hichina.main.back.hichinamainback.model.DTO.HichinaResponse;
@@ -24,6 +25,7 @@ public class UserController {
     private UserMapper userMapper;
 
     @PutMapping("/basicInfo")
+    @EnableHichinaAutoLog(description = "update my profile")
     public HichinaResponse updateBasicInfo(@RequestBody UserUpdateRequestDTO request){
         HichinaResponse ret = new HichinaResponse();
 
@@ -42,6 +44,7 @@ public class UserController {
         return ret;
     }
     @PutMapping("/updatePass")
+    @EnableHichinaAutoLog(description = "update user pass")
     public HichinaResponse updatePass(@RequestBody UpdatePasswordDTO request) throws NoSuchAlgorithmException, InvalidKeySpecException {
         HichinaResponse ret = new HichinaResponse();
         User user = UserUtil.getUserByCurrentPrincipal(userMapper, UserController.currentUser());
@@ -64,6 +67,7 @@ public class UserController {
     }
 
     @GetMapping(value="/whoami")
+    @EnableHichinaAutoLog(description = "find who am i")
     public String whoami(){
         return currentUser();
     }

+ 2 - 0
hichina-main-front/src/views/destination/index.vue

@@ -244,6 +244,8 @@ function debounce(cb, delay) {
 }
 
 const search = debounce((value) => {
+  globalDestinationCards.value = []
+  currentPage.value = 1;
   loadDestinations();
 }, 500);