| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316 |
- <?xml version="1.0" encoding="UTF-8"?>
- <testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="com.etotem.cfc.controller.ArticleControllerTest" time="38.694" tests="11" errors="5" skipped="0" failures="4">
- <properties>
- <property name="sun.desktop" value="windows"/>
- <property name="awt.toolkit" value="sun.awt.windows.WToolkit"/>
- <property name="file.encoding.pkg" value="sun.io"/>
- <property name="java.specification.version" value="1.8"/>
- <property name="sun.cpu.isalist" value="amd64"/>
- <property name="sun.jnu.encoding" value="GBK"/>
- <property name="java.class.path" value="D:\cfc\cfc-backend\target\test-classes;D:\cfc\cfc-backend\target\classes;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-web\2.7.18\spring-boot-starter-web-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter\2.7.18\spring-boot-starter-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot\2.7.18\spring-boot-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-logging\2.7.18\spring-boot-starter-logging-2.7.18.jar;C:\Users\iwt\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.2\log4j-to-slf4j-2.17.2.jar;C:\Users\iwt\.m2\repository\org\apache\logging\log4j\log4j-api\2.17.2\log4j-api-2.17.2.jar;C:\Users\iwt\.m2\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\iwt\.m2\repository\org\yaml\snakeyaml\1.30\snakeyaml-1.30.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-json\2.7.18\spring-boot-starter-json-2.7.18.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.13.5\jackson-datatype-jdk8-2.13.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.13.5\jackson-datatype-jsr310-2.13.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.13.5\jackson-module-parameter-names-2.13.5.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\2.7.18\spring-boot-starter-tomcat-2.7.18.jar;C:\Users\iwt\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\9.0.83\tomcat-embed-core-9.0.83.jar;C:\Users\iwt\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\9.0.83\tomcat-embed-websocket-9.0.83.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-web\5.3.31\spring-web-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-beans\5.3.31\spring-beans-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-webmvc\5.3.31\spring-webmvc-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-context\5.3.31\spring-context-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-expression\5.3.31\spring-expression-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-aop\2.7.18\spring-boot-starter-aop-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-aop\5.3.31\spring-aop-5.3.31.jar;C:\Users\iwt\.m2\repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus-boot-starter\3.5.3.1\mybatis-plus-boot-starter-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus\3.5.3.1\mybatis-plus-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus-extension\3.5.3.1\mybatis-plus-extension-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus-core\3.5.3.1\mybatis-plus-core-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus-annotation\3.5.3.1\mybatis-plus-annotation-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\github\jsqlparser\jsqlparser\4.4\jsqlparser-4.4.jar;C:\Users\iwt\.m2\repository\org\mybatis\mybatis\3.5.10\mybatis-3.5.10.jar;C:\Users\iwt\.m2\repository\org\mybatis\mybatis-spring\2.0.7\mybatis-spring-2.0.7.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\2.7.18\spring-boot-autoconfigure-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\2.7.18\spring-boot-starter-jdbc-2.7.18.jar;C:\Users\iwt\.m2\repository\com\zaxxer\HikariCP\4.0.3\HikariCP-4.0.3.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-jdbc\5.3.31\spring-jdbc-5.3.31.jar;C:\Users\iwt\.m2\repository\com\mysql\mysql-connector-j\8.0.33\mysql-connector-j-8.0.33.jar;C:\Users\iwt\.m2\repository\io\jsonwebtoken\jjwt-api\0.11.5\jjwt-api-0.11.5.jar;C:\Users\iwt\.m2\repository\io\jsonwebtoken\jjwt-impl\0.11.5\jjwt-impl-0.11.5.jar;C:\Users\iwt\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.11.5\jjwt-jackson-0.11.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.13.5\jackson-databind-2.13.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.13.5\jackson-annotations-2.13.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.13.5\jackson-core-2.13.5.jar;C:\Users\iwt\.m2\repository\org\projectlombok\lombok\1.18.30\lombok-1.18.30.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-validation\2.7.18\spring-boot-starter-validation-2.7.18.jar;C:\Users\iwt\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\9.0.83\tomcat-embed-el-9.0.83.jar;C:\Users\iwt\.m2\repository\org\hibernate\validator\hibernate-validator\6.2.5.Final\hibernate-validator-6.2.5.Final.jar;C:\Users\iwt\.m2\repository\jakarta\validation\jakarta.validation-api\2.0.2\jakarta.validation-api-2.0.2.jar;C:\Users\iwt\.m2\repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;C:\Users\iwt\.m2\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-data-redis\2.7.18\spring-boot-starter-data-redis-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\data\spring-data-redis\2.7.18\spring-data-redis-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\data\spring-data-keyvalue\2.7.18\spring-data-keyvalue-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\data\spring-data-commons\2.7.18\spring-data-commons-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-oxm\5.3.31\spring-oxm-5.3.31.jar;C:\Users\iwt\.m2\repository\io\lettuce\lettuce-core\6.1.10.RELEASE\lettuce-core-6.1.10.RELEASE.jar;C:\Users\iwt\.m2\repository\io\netty\netty-common\4.1.101.Final\netty-common-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-handler\4.1.101.Final\netty-handler-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-resolver\4.1.101.Final\netty-resolver-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-buffer\4.1.101.Final\netty-buffer-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-transport-native-unix-common\4.1.101.Final\netty-transport-native-unix-common-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-codec\4.1.101.Final\netty-codec-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-transport\4.1.101.Final\netty-transport-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\projectreactor\reactor-core\3.4.34\reactor-core-3.4.34.jar;C:\Users\iwt\.m2\repository\org\reactivestreams\reactive-streams\1.0.4\reactive-streams-1.0.4.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-cache\2.7.18\spring-boot-starter-cache-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-context-support\5.3.31\spring-context-support-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\security\spring-security-crypto\5.7.11\spring-security-crypto-5.7.11.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-security\2.7.18\spring-boot-starter-security-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\security\spring-security-config\5.7.11\spring-security-config-5.7.11.jar;C:\Users\iwt\.m2\repository\org\springframework\security\spring-security-core\5.7.11\spring-security-core-5.7.11.jar;C:\Users\iwt\.m2\repository\org\springframework\security\spring-security-web\5.7.11\spring-security-web-5.7.11.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-quartz\2.7.18\spring-boot-starter-quartz-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-tx\5.3.31\spring-tx-5.3.31.jar;C:\Users\iwt\.m2\repository\org\quartz-scheduler\quartz\2.3.2\quartz-2.3.2.jar;C:\Users\iwt\.m2\repository\com\mchange\mchange-commons-java\0.2.15\mchange-commons-java-0.2.15.jar;C:\Users\iwt\.m2\repository\ch\qos\logback\logback-classic\1.2.12\logback-classic-1.2.12.jar;C:\Users\iwt\.m2\repository\ch\qos\logback\logback-core\1.2.12\logback-core-1.2.12.jar;C:\Users\iwt\.m2\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;C:\Users\iwt\.m2\repository\org\apache\commons\commons-lang3\3.12.0\commons-lang3-3.12.0.jar;C:\Users\iwt\.m2\repository\com\squareup\okhttp3\okhttp\3.14.9\okhttp-3.14.9.jar;C:\Users\iwt\.m2\repository\com\squareup\okio\okio\1.17.2\okio-1.17.2.jar;C:\Users\iwt\.m2\repository\com\alibaba\fastjson\2.0.40\fastjson-2.0.40.jar;C:\Users\iwt\.m2\repository\com\alibaba\fastjson2\fastjson2-extension\2.0.40\fastjson2-extension-2.0.40.jar;C:\Users\iwt\.m2\repository\com\alibaba\fastjson2\fastjson2\2.0.40\fastjson2-2.0.40.jar;C:\Users\iwt\.m2\repository\com\google\zxing\core\3.5.3\core-3.5.3.jar;C:\Users\iwt\.m2\repository\com\google\zxing\javase\3.5.3\javase-3.5.3.jar;C:\Users\iwt\.m2\repository\com\beust\jcommander\1.82\jcommander-1.82.jar;C:\Users\iwt\.m2\repository\com\github\jai-imageio\jai-imageio-core\1.4.0\jai-imageio-core-1.4.0.jar;C:\Users\iwt\.m2\repository\org\apache\pdfbox\pdfbox\2.0.31\pdfbox-2.0.31.jar;C:\Users\iwt\.m2\repository\org\apache\pdfbox\fontbox\2.0.31\fontbox-2.0.31.jar;C:\Users\iwt\.m2\repository\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;C:\Users\iwt\.m2\repository\org\springdoc\springdoc-openapi-ui\1.8.0\springdoc-openapi-ui-1.8.0.jar;C:\Users\iwt\.m2\repository\org\springdoc\springdoc-openapi-webmvc-core\1.8.0\springdoc-openapi-webmvc-core-1.8.0.jar;C:\Users\iwt\.m2\repository\org\springdoc\springdoc-openapi-common\1.8.0\springdoc-openapi-common-1.8.0.jar;C:\Users\iwt\.m2\repository\io\swagger\core\v3\swagger-core\2.2.20\swagger-core-2.2.20.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-yaml\2.13.5\jackson-dataformat-yaml-2.13.5.jar;C:\Users\iwt\.m2\repository\io\swagger\core\v3\swagger-annotations\2.2.20\swagger-annotations-2.2.20.jar;C:\Users\iwt\.m2\repository\io\swagger\core\v3\swagger-models\2.2.20\swagger-models-2.2.20.jar;C:\Users\iwt\.m2\repository\org\webjars\swagger-ui\5.11.8\swagger-ui-5.11.8.jar;C:\Users\iwt\.m2\repository\com\amazonaws\aws-java-sdk-s3\1.11.136\aws-java-sdk-s3-1.11.136.jar;C:\Users\iwt\.m2\repository\com\amazonaws\aws-java-sdk-kms\1.11.136\aws-java-sdk-kms-1.11.136.jar;C:\Users\iwt\.m2\repository\com\amazonaws\aws-java-sdk-core\1.11.136\aws-java-sdk-core-1.11.136.jar;C:\Users\iwt\.m2\repository\org\apache\httpcomponents\httpclient\4.5.14\httpclient-4.5.14.jar;C:\Users\iwt\.m2\repository\org\apache\httpcomponents\httpcore\4.4.16\httpcore-4.4.16.jar;C:\Users\iwt\.m2\repository\commons-codec\commons-codec\1.15\commons-codec-1.15.jar;C:\Users\iwt\.m2\repository\software\amazon\ion\ion-java\1.0.2\ion-java-1.0.2.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-cbor\2.13.5\jackson-dataformat-cbor-2.13.5.jar;C:\Users\iwt\.m2\repository\joda-time\joda-time\2.8.1\joda-time-2.8.1.jar;C:\Users\iwt\.m2\repository\com\amazonaws\jmespath-java\1.11.136\jmespath-java-1.11.136.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-test\2.7.18\spring-boot-starter-test-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-test\2.7.18\spring-boot-test-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-test-autoconfigure\2.7.18\spring-boot-test-autoconfigure-2.7.18.jar;C:\Users\iwt\.m2\repository\com\jayway\jsonpath\json-path\2.7.0\json-path-2.7.0.jar;C:\Users\iwt\.m2\repository\net\minidev\json-smart\2.4.11\json-smart-2.4.11.jar;C:\Users\iwt\.m2\repository\net\minidev\accessors-smart\2.4.11\accessors-smart-2.4.11.jar;C:\Users\iwt\.m2\repository\org\ow2\asm\asm\9.3\asm-9.3.jar;C:\Users\iwt\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.3\jakarta.xml.bind-api-2.3.3.jar;C:\Users\iwt\.m2\repository\jakarta\activation\jakarta.activation-api\1.2.2\jakarta.activation-api-1.2.2.jar;C:\Users\iwt\.m2\repository\org\assertj\assertj-core\3.22.0\assertj-core-3.22.0.jar;C:\Users\iwt\.m2\repository\org\hamcrest\hamcrest\2.2\hamcrest-2.2.jar;C:\Users\iwt\.m2\repository\org\junit\jupiter\junit-jupiter\5.8.2\junit-jupiter-5.8.2.jar;C:\Users\iwt\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.8.2\junit-jupiter-api-5.8.2.jar;C:\Users\iwt\.m2\repository\org\opentest4j\opentest4j\1.2.0\opentest4j-1.2.0.jar;C:\Users\iwt\.m2\repository\org\junit\platform\junit-platform-commons\1.8.2\junit-platform-commons-1.8.2.jar;C:\Users\iwt\.m2\repository\org\apiguardian\apiguardian-api\1.1.2\apiguardian-api-1.1.2.jar;C:\Users\iwt\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.8.2\junit-jupiter-params-5.8.2.jar;C:\Users\iwt\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.8.2\junit-jupiter-engine-5.8.2.jar;C:\Users\iwt\.m2\repository\org\junit\platform\junit-platform-engine\1.8.2\junit-platform-engine-1.8.2.jar;C:\Users\iwt\.m2\repository\org\mockito\mockito-core\4.5.1\mockito-core-4.5.1.jar;C:\Users\iwt\.m2\repository\net\bytebuddy\byte-buddy\1.12.23\byte-buddy-1.12.23.jar;C:\Users\iwt\.m2\repository\net\bytebuddy\byte-buddy-agent\1.12.23\byte-buddy-agent-1.12.23.jar;C:\Users\iwt\.m2\repository\org\objenesis\objenesis\3.2\objenesis-3.2.jar;C:\Users\iwt\.m2\repository\org\mockito\mockito-junit-jupiter\4.5.1\mockito-junit-jupiter-4.5.1.jar;C:\Users\iwt\.m2\repository\org\skyscreamer\jsonassert\1.5.1\jsonassert-1.5.1.jar;C:\Users\iwt\.m2\repository\com\vaadin\external\google\android-json\0.0.20131108.vaadin1\android-json-0.0.20131108.vaadin1.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-core\5.3.31\spring-core-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-jcl\5.3.31\spring-jcl-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-test\5.3.31\spring-test-5.3.31.jar;C:\Users\iwt\.m2\repository\org\xmlunit\xmlunit-core\2.9.1\xmlunit-core-2.9.1.jar;"/>
- <property name="java.vm.vendor" value="Oracle Corporation"/>
- <property name="sun.arch.data.model" value="64"/>
- <property name="user.variant" value=""/>
- <property name="java.vendor.url" value="http://java.oracle.com/"/>
- <property name="user.timezone" value="Asia/Shanghai"/>
- <property name="java.vm.specification.version" value="1.8"/>
- <property name="os.name" value="Windows 8.1"/>
- <property name="user.country" value="CN"/>
- <property name="sun.java.launcher" value="SUN_STANDARD"/>
- <property name="sun.boot.library.path" value="D:\jdk1.8.0_25\jre\bin"/>
- <property name="sun.java.command" value="C:\Users\iwt\AppData\Local\Temp\surefire42081373921223093\surefirebooter2243037841406936077.jar C:\Users\iwt\AppData\Local\Temp\surefire42081373921223093 2026-11-05T17-54-25_890-jvmRun1 surefire8890249001415360429tmp surefire_01475680422290975095tmp"/>
- <property name="surefire.test.class.path" value="D:\cfc\cfc-backend\target\test-classes;D:\cfc\cfc-backend\target\classes;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-web\2.7.18\spring-boot-starter-web-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter\2.7.18\spring-boot-starter-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot\2.7.18\spring-boot-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-logging\2.7.18\spring-boot-starter-logging-2.7.18.jar;C:\Users\iwt\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.2\log4j-to-slf4j-2.17.2.jar;C:\Users\iwt\.m2\repository\org\apache\logging\log4j\log4j-api\2.17.2\log4j-api-2.17.2.jar;C:\Users\iwt\.m2\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\iwt\.m2\repository\org\yaml\snakeyaml\1.30\snakeyaml-1.30.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-json\2.7.18\spring-boot-starter-json-2.7.18.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.13.5\jackson-datatype-jdk8-2.13.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.13.5\jackson-datatype-jsr310-2.13.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.13.5\jackson-module-parameter-names-2.13.5.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\2.7.18\spring-boot-starter-tomcat-2.7.18.jar;C:\Users\iwt\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\9.0.83\tomcat-embed-core-9.0.83.jar;C:\Users\iwt\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\9.0.83\tomcat-embed-websocket-9.0.83.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-web\5.3.31\spring-web-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-beans\5.3.31\spring-beans-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-webmvc\5.3.31\spring-webmvc-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-context\5.3.31\spring-context-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-expression\5.3.31\spring-expression-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-aop\2.7.18\spring-boot-starter-aop-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-aop\5.3.31\spring-aop-5.3.31.jar;C:\Users\iwt\.m2\repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus-boot-starter\3.5.3.1\mybatis-plus-boot-starter-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus\3.5.3.1\mybatis-plus-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus-extension\3.5.3.1\mybatis-plus-extension-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus-core\3.5.3.1\mybatis-plus-core-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\baomidou\mybatis-plus-annotation\3.5.3.1\mybatis-plus-annotation-3.5.3.1.jar;C:\Users\iwt\.m2\repository\com\github\jsqlparser\jsqlparser\4.4\jsqlparser-4.4.jar;C:\Users\iwt\.m2\repository\org\mybatis\mybatis\3.5.10\mybatis-3.5.10.jar;C:\Users\iwt\.m2\repository\org\mybatis\mybatis-spring\2.0.7\mybatis-spring-2.0.7.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\2.7.18\spring-boot-autoconfigure-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\2.7.18\spring-boot-starter-jdbc-2.7.18.jar;C:\Users\iwt\.m2\repository\com\zaxxer\HikariCP\4.0.3\HikariCP-4.0.3.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-jdbc\5.3.31\spring-jdbc-5.3.31.jar;C:\Users\iwt\.m2\repository\com\mysql\mysql-connector-j\8.0.33\mysql-connector-j-8.0.33.jar;C:\Users\iwt\.m2\repository\io\jsonwebtoken\jjwt-api\0.11.5\jjwt-api-0.11.5.jar;C:\Users\iwt\.m2\repository\io\jsonwebtoken\jjwt-impl\0.11.5\jjwt-impl-0.11.5.jar;C:\Users\iwt\.m2\repository\io\jsonwebtoken\jjwt-jackson\0.11.5\jjwt-jackson-0.11.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.13.5\jackson-databind-2.13.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.13.5\jackson-annotations-2.13.5.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.13.5\jackson-core-2.13.5.jar;C:\Users\iwt\.m2\repository\org\projectlombok\lombok\1.18.30\lombok-1.18.30.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-validation\2.7.18\spring-boot-starter-validation-2.7.18.jar;C:\Users\iwt\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\9.0.83\tomcat-embed-el-9.0.83.jar;C:\Users\iwt\.m2\repository\org\hibernate\validator\hibernate-validator\6.2.5.Final\hibernate-validator-6.2.5.Final.jar;C:\Users\iwt\.m2\repository\jakarta\validation\jakarta.validation-api\2.0.2\jakarta.validation-api-2.0.2.jar;C:\Users\iwt\.m2\repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;C:\Users\iwt\.m2\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-data-redis\2.7.18\spring-boot-starter-data-redis-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\data\spring-data-redis\2.7.18\spring-data-redis-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\data\spring-data-keyvalue\2.7.18\spring-data-keyvalue-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\data\spring-data-commons\2.7.18\spring-data-commons-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-oxm\5.3.31\spring-oxm-5.3.31.jar;C:\Users\iwt\.m2\repository\io\lettuce\lettuce-core\6.1.10.RELEASE\lettuce-core-6.1.10.RELEASE.jar;C:\Users\iwt\.m2\repository\io\netty\netty-common\4.1.101.Final\netty-common-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-handler\4.1.101.Final\netty-handler-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-resolver\4.1.101.Final\netty-resolver-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-buffer\4.1.101.Final\netty-buffer-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-transport-native-unix-common\4.1.101.Final\netty-transport-native-unix-common-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-codec\4.1.101.Final\netty-codec-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\netty\netty-transport\4.1.101.Final\netty-transport-4.1.101.Final.jar;C:\Users\iwt\.m2\repository\io\projectreactor\reactor-core\3.4.34\reactor-core-3.4.34.jar;C:\Users\iwt\.m2\repository\org\reactivestreams\reactive-streams\1.0.4\reactive-streams-1.0.4.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-cache\2.7.18\spring-boot-starter-cache-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-context-support\5.3.31\spring-context-support-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\security\spring-security-crypto\5.7.11\spring-security-crypto-5.7.11.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-security\2.7.18\spring-boot-starter-security-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\security\spring-security-config\5.7.11\spring-security-config-5.7.11.jar;C:\Users\iwt\.m2\repository\org\springframework\security\spring-security-core\5.7.11\spring-security-core-5.7.11.jar;C:\Users\iwt\.m2\repository\org\springframework\security\spring-security-web\5.7.11\spring-security-web-5.7.11.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-quartz\2.7.18\spring-boot-starter-quartz-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-tx\5.3.31\spring-tx-5.3.31.jar;C:\Users\iwt\.m2\repository\org\quartz-scheduler\quartz\2.3.2\quartz-2.3.2.jar;C:\Users\iwt\.m2\repository\com\mchange\mchange-commons-java\0.2.15\mchange-commons-java-0.2.15.jar;C:\Users\iwt\.m2\repository\ch\qos\logback\logback-classic\1.2.12\logback-classic-1.2.12.jar;C:\Users\iwt\.m2\repository\ch\qos\logback\logback-core\1.2.12\logback-core-1.2.12.jar;C:\Users\iwt\.m2\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;C:\Users\iwt\.m2\repository\org\apache\commons\commons-lang3\3.12.0\commons-lang3-3.12.0.jar;C:\Users\iwt\.m2\repository\com\squareup\okhttp3\okhttp\3.14.9\okhttp-3.14.9.jar;C:\Users\iwt\.m2\repository\com\squareup\okio\okio\1.17.2\okio-1.17.2.jar;C:\Users\iwt\.m2\repository\com\alibaba\fastjson\2.0.40\fastjson-2.0.40.jar;C:\Users\iwt\.m2\repository\com\alibaba\fastjson2\fastjson2-extension\2.0.40\fastjson2-extension-2.0.40.jar;C:\Users\iwt\.m2\repository\com\alibaba\fastjson2\fastjson2\2.0.40\fastjson2-2.0.40.jar;C:\Users\iwt\.m2\repository\com\google\zxing\core\3.5.3\core-3.5.3.jar;C:\Users\iwt\.m2\repository\com\google\zxing\javase\3.5.3\javase-3.5.3.jar;C:\Users\iwt\.m2\repository\com\beust\jcommander\1.82\jcommander-1.82.jar;C:\Users\iwt\.m2\repository\com\github\jai-imageio\jai-imageio-core\1.4.0\jai-imageio-core-1.4.0.jar;C:\Users\iwt\.m2\repository\org\apache\pdfbox\pdfbox\2.0.31\pdfbox-2.0.31.jar;C:\Users\iwt\.m2\repository\org\apache\pdfbox\fontbox\2.0.31\fontbox-2.0.31.jar;C:\Users\iwt\.m2\repository\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;C:\Users\iwt\.m2\repository\org\springdoc\springdoc-openapi-ui\1.8.0\springdoc-openapi-ui-1.8.0.jar;C:\Users\iwt\.m2\repository\org\springdoc\springdoc-openapi-webmvc-core\1.8.0\springdoc-openapi-webmvc-core-1.8.0.jar;C:\Users\iwt\.m2\repository\org\springdoc\springdoc-openapi-common\1.8.0\springdoc-openapi-common-1.8.0.jar;C:\Users\iwt\.m2\repository\io\swagger\core\v3\swagger-core\2.2.20\swagger-core-2.2.20.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-yaml\2.13.5\jackson-dataformat-yaml-2.13.5.jar;C:\Users\iwt\.m2\repository\io\swagger\core\v3\swagger-annotations\2.2.20\swagger-annotations-2.2.20.jar;C:\Users\iwt\.m2\repository\io\swagger\core\v3\swagger-models\2.2.20\swagger-models-2.2.20.jar;C:\Users\iwt\.m2\repository\org\webjars\swagger-ui\5.11.8\swagger-ui-5.11.8.jar;C:\Users\iwt\.m2\repository\com\amazonaws\aws-java-sdk-s3\1.11.136\aws-java-sdk-s3-1.11.136.jar;C:\Users\iwt\.m2\repository\com\amazonaws\aws-java-sdk-kms\1.11.136\aws-java-sdk-kms-1.11.136.jar;C:\Users\iwt\.m2\repository\com\amazonaws\aws-java-sdk-core\1.11.136\aws-java-sdk-core-1.11.136.jar;C:\Users\iwt\.m2\repository\org\apache\httpcomponents\httpclient\4.5.14\httpclient-4.5.14.jar;C:\Users\iwt\.m2\repository\org\apache\httpcomponents\httpcore\4.4.16\httpcore-4.4.16.jar;C:\Users\iwt\.m2\repository\commons-codec\commons-codec\1.15\commons-codec-1.15.jar;C:\Users\iwt\.m2\repository\software\amazon\ion\ion-java\1.0.2\ion-java-1.0.2.jar;C:\Users\iwt\.m2\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-cbor\2.13.5\jackson-dataformat-cbor-2.13.5.jar;C:\Users\iwt\.m2\repository\joda-time\joda-time\2.8.1\joda-time-2.8.1.jar;C:\Users\iwt\.m2\repository\com\amazonaws\jmespath-java\1.11.136\jmespath-java-1.11.136.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-starter-test\2.7.18\spring-boot-starter-test-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-test\2.7.18\spring-boot-test-2.7.18.jar;C:\Users\iwt\.m2\repository\org\springframework\boot\spring-boot-test-autoconfigure\2.7.18\spring-boot-test-autoconfigure-2.7.18.jar;C:\Users\iwt\.m2\repository\com\jayway\jsonpath\json-path\2.7.0\json-path-2.7.0.jar;C:\Users\iwt\.m2\repository\net\minidev\json-smart\2.4.11\json-smart-2.4.11.jar;C:\Users\iwt\.m2\repository\net\minidev\accessors-smart\2.4.11\accessors-smart-2.4.11.jar;C:\Users\iwt\.m2\repository\org\ow2\asm\asm\9.3\asm-9.3.jar;C:\Users\iwt\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.3\jakarta.xml.bind-api-2.3.3.jar;C:\Users\iwt\.m2\repository\jakarta\activation\jakarta.activation-api\1.2.2\jakarta.activation-api-1.2.2.jar;C:\Users\iwt\.m2\repository\org\assertj\assertj-core\3.22.0\assertj-core-3.22.0.jar;C:\Users\iwt\.m2\repository\org\hamcrest\hamcrest\2.2\hamcrest-2.2.jar;C:\Users\iwt\.m2\repository\org\junit\jupiter\junit-jupiter\5.8.2\junit-jupiter-5.8.2.jar;C:\Users\iwt\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.8.2\junit-jupiter-api-5.8.2.jar;C:\Users\iwt\.m2\repository\org\opentest4j\opentest4j\1.2.0\opentest4j-1.2.0.jar;C:\Users\iwt\.m2\repository\org\junit\platform\junit-platform-commons\1.8.2\junit-platform-commons-1.8.2.jar;C:\Users\iwt\.m2\repository\org\apiguardian\apiguardian-api\1.1.2\apiguardian-api-1.1.2.jar;C:\Users\iwt\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.8.2\junit-jupiter-params-5.8.2.jar;C:\Users\iwt\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.8.2\junit-jupiter-engine-5.8.2.jar;C:\Users\iwt\.m2\repository\org\junit\platform\junit-platform-engine\1.8.2\junit-platform-engine-1.8.2.jar;C:\Users\iwt\.m2\repository\org\mockito\mockito-core\4.5.1\mockito-core-4.5.1.jar;C:\Users\iwt\.m2\repository\net\bytebuddy\byte-buddy\1.12.23\byte-buddy-1.12.23.jar;C:\Users\iwt\.m2\repository\net\bytebuddy\byte-buddy-agent\1.12.23\byte-buddy-agent-1.12.23.jar;C:\Users\iwt\.m2\repository\org\objenesis\objenesis\3.2\objenesis-3.2.jar;C:\Users\iwt\.m2\repository\org\mockito\mockito-junit-jupiter\4.5.1\mockito-junit-jupiter-4.5.1.jar;C:\Users\iwt\.m2\repository\org\skyscreamer\jsonassert\1.5.1\jsonassert-1.5.1.jar;C:\Users\iwt\.m2\repository\com\vaadin\external\google\android-json\0.0.20131108.vaadin1\android-json-0.0.20131108.vaadin1.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-core\5.3.31\spring-core-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-jcl\5.3.31\spring-jcl-5.3.31.jar;C:\Users\iwt\.m2\repository\org\springframework\spring-test\5.3.31\spring-test-5.3.31.jar;C:\Users\iwt\.m2\repository\org\xmlunit\xmlunit-core\2.9.1\xmlunit-core-2.9.1.jar;"/>
- <property name="sun.cpu.endian" value="little"/>
- <property name="user.home" value="C:\Users\iwt"/>
- <property name="user.language" value="zh"/>
- <property name="java.specification.vendor" value="Oracle Corporation"/>
- <property name="java.home" value="D:\jdk1.8.0_25\jre"/>
- <property name="basedir" value="D:\cfc\cfc-backend"/>
- <property name="file.separator" value="\"/>
- <property name="line.separator" value=" "/>
- <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
- <property name="java.specification.name" value="Java Platform API Specification"/>
- <property name="java.awt.graphicsenv" value="sun.awt.Win32GraphicsEnvironment"/>
- <property name="surefire.real.class.path" value="C:\Users\iwt\AppData\Local\Temp\surefire42081373921223093\surefirebooter2243037841406936077.jar"/>
- <property name="sun.boot.class.path" value="D:\jdk1.8.0_25\jre\lib\resources.jar;D:\jdk1.8.0_25\jre\lib\rt.jar;D:\jdk1.8.0_25\jre\lib\sunrsasign.jar;D:\jdk1.8.0_25\jre\lib\jsse.jar;D:\jdk1.8.0_25\jre\lib\jce.jar;D:\jdk1.8.0_25\jre\lib\charsets.jar;D:\jdk1.8.0_25\jre\lib\jfr.jar;D:\jdk1.8.0_25\jre\classes"/>
- <property name="user.script" value=""/>
- <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
- <property name="java.runtime.version" value="1.8.0_25-b18"/>
- <property name="user.name" value="iwt"/>
- <property name="path.separator" value=";"/>
- <property name="os.version" value="6.3"/>
- <property name="java.endorsed.dirs" value="D:\jdk1.8.0_25\jre\lib\endorsed"/>
- <property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
- <property name="file.encoding" value="GBK"/>
- <property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
- <property name="skipTests" value="false"/>
- <property name="localRepository" value="C:\Users\iwt\.m2\repository"/>
- <property name="java.vendor.url.bug" value="http://bugreport.sun.com/bugreport/"/>
- <property name="java.io.tmpdir" value="C:\Users\iwt\AppData\Local\Temp\"/>
- <property name="java.version" value="1.8.0_25"/>
- <property name="user.dir" value="D:\cfc\cfc-backend"/>
- <property name="os.arch" value="amd64"/>
- <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
- <property name="java.awt.printerjob" value="sun.awt.windows.WPrinterJob"/>
- <property name="sun.os.patch.level" value=""/>
- <property name="java.library.path" value="D:\jdk1.8.0_25\jre\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D;D:\workbuddy\resources\app.asar.unpacked\cli\vendor\shim\safe-bin;C:\Users\iwt\.workbuddy\binaries\node\versions\22.22.2-6;C:\Users\iwt\.workbuddy\binaries\node\versions\.locks;C:\Users\iwt\.workbuddy\binaries\python\versions\3.13.12;C:\Users\iwt\.workbuddy\binaries\node\cli-connector-packages;C:\Users\iwt\.workbuddy\external-packages\pdf-cli;D;D:\workbuddy\resources\app.asar.unpacked\cli\vendor\shim\safe-bin;D:\workbuddy\resources\vendor\PortableGit\usr\bin;D:\workbuddy\resources\vendor\PortableGit\usr\local\bin;D:\workbuddy\resources\vendor\PortableGit\usr\bin;D:\workbuddy\resources\vendor\PortableGit\usr\bin;D:\workbuddy\resources\vendor\PortableGit\mingw64\bin;D:\workbuddy\resources\vendor\PortableGit\usr\bin;C:\Users\iwt\bin;C:\Users\iwt\.workbuddy\binaries\node\versions\22.22.2-6;C:\Users\iwt\.workbuddy\binaries\node\versions\.locks;C:\Program Files (x86)\ShadowBot;D:\jdk1.8.0_25\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;D:\mysql-5.6.27\bin;C:\WINDOWS\System32\OpenSSH;C:\Program Files\nodejs;C:\Program Files\Git\cmd;C:\Users\iwt\.opencode\bin;C:\Users\iwt\.local\bin;C:\Python312\Scripts;C:\Python312;C:\Users\iwt\AppData\Local\Programs\Python\Launcher;C:\Program Files (x86)\ShadowBot;C:\Users\iwt\AppData\Local\Microsoft\WindowsApps;C:\Program Files\JetBrains\IntelliJ IDEA 2025.2.5\bin;C:\Users\iwt\AppData\Roaming\npm;C:\Users\iwt\nodejs;."/>
- <property name="java.vm.info" value="mixed mode"/>
- <property name="java.vendor" value="Oracle Corporation"/>
- <property name="java.vm.version" value="25.25-b02"/>
- <property name="java.ext.dirs" value="D:\jdk1.8.0_25\jre\lib\ext;C:\WINDOWS\Sun\Java\lib\ext"/>
- <property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
- <property name="java.class.version" value="52.0"/>
- <property name="maven.test.failure.ignore" value="true"/>
- </properties>
- <testcase name="list_ByCategory" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.058">
- <error type="java.lang.NullPointerException">java.lang.NullPointerException
- at com.etotem.cfc.controller.ArticleControllerTest.list_ByCategory(ArticleControllerTest.java:90)
- </error>
- <system-out><![CDATA[2026-11-05 17:58:38.684 INFO 13416 --- [ main] .b.t.c.SpringBootTestContextBootstrapper : Neither @ContextConfiguration nor @ContextHierarchy found for test class [com.etotem.cfc.controller.ArticleControllerTest], using SpringBootContextLoader
- 2026-11-05 17:58:38.685 INFO 13416 --- [ main] o.s.t.c.support.AbstractContextLoader : Could not detect default resource locations for test class [com.etotem.cfc.controller.ArticleControllerTest]: no resource found for suffixes {-context.xml, Context.groovy}.
- 2026-11-05 17:58:38.685 INFO 13416 --- [ main] t.c.s.AnnotationConfigContextLoaderUtils : Could not detect default configuration classes for test class [com.etotem.cfc.controller.ArticleControllerTest]: ArticleControllerTest does not declare any static, non-private, non-final, nested classes annotated with @Configuration.
- 2026-11-05 17:58:38.690 INFO 13416 --- [ main] .b.t.c.SpringBootTestContextBootstrapper : Found @SpringBootConfiguration com.etotem.cfc.CfcApplication for test class com.etotem.cfc.controller.ArticleControllerTest
- 2026-11-05 17:58:38.695 INFO 13416 --- [ main] .b.t.c.SpringBootTestContextBootstrapper : Loaded default TestExecutionListener class names from location [META-INF/spring.factories]: [org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener, org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener, org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener, org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrintOnlyOnFailureTestExecutionListener, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener, org.springframework.boot.test.autoconfigure.webservices.client.MockWebServiceServerTestExecutionListener, org.springframework.test.context.web.ServletTestExecutionListener, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener, org.springframework.test.context.event.ApplicationEventsTestExecutionListener, org.springframework.test.context.support.DependencyInjectionTestExecutionListener, org.springframework.test.context.support.DirtiesContextTestExecutionListener, org.springframework.test.context.transaction.TransactionalTestExecutionListener, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener, org.springframework.test.context.event.EventPublishingTestExecutionListener]
- 2026-11-05 17:58:38.696 INFO 13416 --- [ main] .b.t.c.SpringBootTestContextBootstrapper : Using TestExecutionListeners: [org.springframework.test.context.web.ServletTestExecutionListener@235632a6, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@e373511, org.springframework.test.context.event.ApplicationEventsTestExecutionListener@59527c30, org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener@794bf212, org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener@6b1a2c9f, org.springframework.test.context.support.DirtiesContextTestExecutionListener@5cb20350, org.springframework.test.context.transaction.TransactionalTestExecutionListener@16cb470a, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener@30b6eca3, org.springframework.test.context.event.EventPublishingTestExecutionListener@a7240fe, org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener@46167a63, org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener@a2996bc, org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener@d7da0ae, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrintOnlyOnFailureTestExecutionListener@1510644f, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener@6020c1ec, org.springframework.boot.test.autoconfigure.webservices.client.MockWebServiceServerTestExecutionListener@267a3722]
- . ____ _ __ _ _
- /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
- ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
- \\/ ___)| |_)| | | | | || (_| | ) ) ) )
- ' |____| .__|_| |_|_| |_\__, | / / / /
- =========|_|==============|___/=/_/_/_/
- :: Spring Boot :: (v2.7.18)
- 2026-11-05 17:58:38.809 INFO 13416 --- [ main] c.e.c.controller.ArticleControllerTest : Starting ArticleControllerTest using Java 1.8.0_25 on desktop204 with PID 13416 (started by iwt in D:\cfc\cfc-backend)
- 2026-11-05 17:58:38.809 DEBUG 13416 --- [ main] c.e.c.controller.ArticleControllerTest : Running with Spring Boot v2.7.18, Spring v5.3.31
- 2026-11-05 17:58:38.812 INFO 13416 --- [ main] c.e.c.controller.ArticleControllerTest : No active profile set, falling back to 1 default profile: "default"
- 2026-11-05 17:58:40.872 INFO 13416 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
- 2026-11-05 17:58:40.872 INFO 13416 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
- 2026-11-05 17:58:41.127 INFO 13416 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 254 ms. Found 0 Redis repository interfaces.
- 2026-11-05 17:58:42.255 INFO 13416 --- [ main] com.zaxxer.hikari.HikariDataSource : CfcHikariPool - Starting...
- 2026-11-05 17:58:42.263 INFO 13416 --- [ main] com.zaxxer.hikari.HikariDataSource : CfcHikariPool - Start completed.
- _ _ |_ _ _|_. ___ _ | _
- | | |\/|_)(_| | |_\ |_)||_|_\
- / |
- 3.5.3.1
- 2026-11-05 17:58:43.548 WARN 13416 --- [ main] com.etotem.cfc.service.WechatService : wechat.test-mode=true in non-production profile (dev)
- 2026-11-05 17:58:45.322 INFO 13416 --- [eduler_Worker-2] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
- 2026-11-05 17:58:45.325 DEBUG 13416 --- [eduler_Worker-2] c.e.c.m.T.selectList : ==> Preparing: SELECT id,flow_id,flow_version,family_id,family_member_id,trigger_source,status,started_at,finished_at,error_reason,created_at,updated_at FROM task_orchestration_executions WHERE (status = ?) LIMIT 20
- 2026-11-05 17:58:45.325 DEBUG 13416 --- [eduler_Worker-2] c.e.c.m.T.selectList : ==> Parameters: running(String)
- 2026-11-05 17:58:45.326 DEBUG 13416 --- [eduler_Worker-2] c.e.c.m.T.selectList : <== Total: 0
- 2026-11-05 17:58:45.326 INFO 13416 --- [eduler_Worker-2] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
- 2026-11-05 17:58:46.205 INFO 13416 --- [ main] com.etotem.cfc.service.PaymentService : 微信支付使用测试模式,跳过私钥加载
- 2026-11-05 17:58:46.968 INFO 13416 --- [ main] com.etotem.cfc.service.AiGateway : AiGateway 已启用: baseUrl=https://ai.etotem.com.cn, connectTimeout=15000ms, readTimeout=300000ms
- 2026-11-05 17:58:49.746 INFO 13416 --- [ main] c.e.c.s.impl.JdCloudStorageService : JdCloudStorageService init: endpoint=s3.cn-north-1.jdcloud-oss.com, bucket=cfc, region=cn-north-1
- 2026-11-05 17:58:49.748 INFO 13416 --- [ main] c.etotem.cfc.service.FileStorageService : FileStorageService init: allowedTypes=[image/jpeg, image/png, image/gif, image/webp, application/pdf, audio/mpeg, audio/wav]
- 2026-11-05 17:58:50.097 INFO 13416 --- [eduler_Worker-5] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
- 2026-11-05 17:58:50.099 DEBUG 13416 --- [eduler_Worker-5] c.e.c.m.T.selectList : ==> Preparing: SELECT id,flow_id,flow_version,family_id,family_member_id,trigger_source,status,started_at,finished_at,error_reason,created_at,updated_at FROM task_orchestration_executions WHERE (status = ?) LIMIT 20
- 2026-11-05 17:58:50.100 DEBUG 13416 --- [eduler_Worker-5] c.e.c.m.T.selectList : ==> Parameters: running(String)
- 2026-11-05 17:58:50.101 DEBUG 13416 --- [eduler_Worker-5] c.e.c.m.T.selectList : <== Total: 0
- 2026-11-05 17:58:50.101 INFO 13416 --- [eduler_Worker-5] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
- 2026-11-05 17:58:50.941 INFO 13416 --- [ main] c.e.cfc.service.KnowledgeBaseV3Service : KB v3 loaded: 28 kbRoot keys, 87 bacteria, 24 indicators, 224 foods
- 2026-11-05 17:58:50.963 DEBUG 13416 --- [ main] c.e.c.m.K.selectList : ==> Preparing: SELECT id,module_key,module_name,content,version,created_at,updated_at FROM knowledge_base_section
- 2026-11-05 17:58:50.963 DEBUG 13416 --- [ main] c.e.c.m.K.selectList : ==> Parameters:
- 2026-11-05 17:58:50.970 DEBUG 13416 --- [ main] c.e.c.m.K.selectList : <== Total: 12
- 2026-11-05 17:58:50.976 INFO 13416 --- [ main] c.e.c.s.UnifiedKnowledgeBaseService : 统一知识库加载完成: 12 模块, 版本=2.0, 食物226 菌属87 指标139 营养素30 疾病14
- 2026-11-05 17:58:55.459 INFO 13416 --- [ main] c.e.c.s.CognitiveTrainingConfigService : 已加载 cognitive-recommendations.yml,共 6 个维度配置
- 2026-11-05 17:58:55.717 INFO 13416 --- [ main] com.etotem.cfc.kb.BacteriaFoodMapping : 已加载菌属-食材映射表: 22 种菌属, 2份北京菌群检测报告(移植前/后) + 公开科学文献 数据来源
- 2026-11-05 17:58:57.505 INFO 13416 --- [ main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor
- 2026-11-05 17:58:57.507 INFO 13416 --- [ main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
- 2026-11-05 17:58:57.507 INFO 13416 --- [ main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created.
- 2026-11-05 17:58:57.507 INFO 13416 --- [ main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized.
- 2026-11-05 17:58:57.507 INFO 13416 --- [ main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED'
- Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
- NOT STARTED.
- Currently in standby mode.
- Number of jobs executed: 0
- Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads.
- Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
- 2026-11-05 17:58:57.507 INFO 13416 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance.
- 2026-11-05 17:58:57.507 INFO 13416 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2
- 2026-11-05 17:58:57.507 INFO 13416 --- [ main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@3f962128
- 2026-11-05 17:58:57.630 WARN 13416 --- [ main] .s.s.UserDetailsServiceAutoConfiguration :
- Using generated security password: 339ced1b-f56d-4711-b87f-109b3018f038
- This generated password is for development use only. Your security configuration must be updated before running your application in production.
- 2026-11-05 17:58:57.791 INFO 13416 --- [ main] o.s.s.web.DefaultSecurityFilterChain : Will secure any request with [org.springframework.security.web.session.DisableEncodeUrlFilter@2c9a4791, org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@34e79514, org.springframework.security.web.context.SecurityContextPersistenceFilter@1e2d085c, org.springframework.security.web.header.HeaderWriterFilter@628be4f6, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@21ae26b0, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@1cbfca27, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@258cb16c, org.springframework.security.web.session.SessionManagementFilter@1b89b1ac, org.springframework.security.web.access.ExceptionTranslationFilter@31b1c1a8, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@eb3b9fe]
- 2026-11-05 17:59:00.019 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.T.selectList : ==> Preparing: SELECT id,user_id,channels,timing_mode,offset_minutes,enabled,created_at,completion_praise_enabled,completion_praise_channels,updated_at FROM task_reminder_config
- 2026-11-05 17:59:00.019 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.T.selectList : ==> Parameters:
- 2026-11-05 17:59:00.020 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.T.selectList : <== Total: 0
- 2026-11-05 17:59:00.023 DEBUG 13416 --- [cfc-scheduler-4] c.e.cfc.mapper.TaskMapper.selectList : ==> Preparing: SELECT id,family_id,family_member_id,creator_id,executor_type,executor_id,child_id AS memberId,title,description,points,deadline,repeat_type,category,need_review,review_by_category,review_type,status,completed_at,bonus_rule,points_expire_days,template_id,is_template,task_type,frequency,max_frequency,complete_types,duration,earliest_start,latest_end,accept_deadline,minigame_code,source_type,source_id,is_daily_progress,target_value,member_only,prerequisite_task_id,is_flow_task,successor_task_ids,action_type,action_config,require_input,start_required,start_count,min_duration_seconds,dimension_code,parent_task_id,dimension_weights,created_at,updated_at FROM tasks WHERE (is_template = ? AND executor_type = ? AND status = ? AND deadline >= ? AND deadline < ?) ORDER BY deadline ASC LIMIT 200
- 2026-11-05 17:59:00.023 DEBUG 13416 --- [cfc-scheduler-4] c.e.cfc.mapper.TaskMapper.selectList : ==> Parameters: 0(Integer), parent(String), pending(String), 2026-11-05 00:00:00.0(Timestamp), 2026-11-06 00:00:00.0(Timestamp)
- 2026-11-05 17:59:00.026 DEBUG 13416 --- [cfc-scheduler-4] c.e.cfc.mapper.TaskMapper.selectList : <== Total: 0
- 2026-11-05 17:59:00.053 DEBUG 13416 --- [cfc-scheduler-1] c.e.c.m.T.selectList : ==> Preparing: SELECT id,user_id,channels,timing_mode,offset_minutes,enabled,created_at,completion_praise_enabled,completion_praise_channels,updated_at FROM task_reminder_config
- 2026-11-05 17:59:00.054 DEBUG 13416 --- [cfc-scheduler-1] c.e.c.m.T.selectList : ==> Parameters:
- 2026-11-05 17:59:00.055 DEBUG 13416 --- [cfc-scheduler-1] c.e.c.m.T.selectList : <== Total: 0
- 2026-11-05 17:59:00.057 DEBUG 13416 --- [cfc-scheduler-1] c.e.cfc.mapper.TaskMapper.selectList : ==> Preparing: SELECT id,family_id,family_member_id,creator_id,executor_type,executor_id,child_id AS memberId,title,description,points,deadline,repeat_type,category,need_review,review_by_category,review_type,status,completed_at,bonus_rule,points_expire_days,template_id,is_template,task_type,frequency,max_frequency,complete_types,duration,earliest_start,latest_end,accept_deadline,minigame_code,source_type,source_id,is_daily_progress,target_value,member_only,prerequisite_task_id,is_flow_task,successor_task_ids,action_type,action_config,require_input,start_required,start_count,min_duration_seconds,dimension_code,parent_task_id,dimension_weights,created_at,updated_at FROM tasks WHERE (is_template = ? AND executor_type = ? AND status = ? AND deadline >= ? AND deadline < ?) ORDER BY deadline ASC LIMIT 200
- 2026-11-05 17:59:00.058 DEBUG 13416 --- [cfc-scheduler-1] c.e.cfc.mapper.TaskMapper.selectList : ==> Parameters: 0(Integer), parent(String), pending(String), 2026-11-05 00:00:00.0(Timestamp), 2026-11-06 00:00:00.0(Timestamp)
- 2026-11-05 17:59:00.059 DEBUG 13416 --- [cfc-scheduler-2] c.e.c.m.T.selectList : ==> Preparing: SELECT id,user_id,channels,timing_mode,offset_minutes,enabled,created_at,completion_praise_enabled,completion_praise_channels,updated_at FROM task_reminder_config
- 2026-11-05 17:59:00.060 DEBUG 13416 --- [cfc-scheduler-2] c.e.c.m.T.selectList : ==> Parameters:
- 2026-11-05 17:59:00.061 DEBUG 13416 --- [cfc-scheduler-1] c.e.cfc.mapper.TaskMapper.selectList : <== Total: 0
- 2026-11-05 17:59:00.061 DEBUG 13416 --- [cfc-scheduler-2] c.e.c.m.T.selectList : <== Total: 0
- 2026-11-05 17:59:00.067 DEBUG 13416 --- [cfc-scheduler-2] c.e.cfc.mapper.TaskMapper.selectList : ==> Preparing: SELECT id,family_id,family_member_id,creator_id,executor_type,executor_id,child_id AS memberId,title,description,points,deadline,repeat_type,category,need_review,review_by_category,review_type,status,completed_at,bonus_rule,points_expire_days,template_id,is_template,task_type,frequency,max_frequency,complete_types,duration,earliest_start,latest_end,accept_deadline,minigame_code,source_type,source_id,is_daily_progress,target_value,member_only,prerequisite_task_id,is_flow_task,successor_task_ids,action_type,action_config,require_input,start_required,start_count,min_duration_seconds,dimension_code,parent_task_id,dimension_weights,created_at,updated_at FROM tasks WHERE (is_template = ? AND executor_type = ? AND status = ? AND deadline >= ? AND deadline < ?) ORDER BY deadline ASC LIMIT 200
- 2026-11-05 17:59:00.068 DEBUG 13416 --- [cfc-scheduler-2] c.e.cfc.mapper.TaskMapper.selectList : ==> Parameters: 0(Integer), parent(String), pending(String), 2026-11-05 00:00:00.0(Timestamp), 2026-11-06 00:00:00.0(Timestamp)
- 2026-11-05 17:59:00.079 DEBUG 13416 --- [cfc-scheduler-2] c.e.cfc.mapper.TaskMapper.selectList : <== Total: 0
- 2026-11-05 17:59:00.564 INFO 13416 --- [ main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now
- 2026-11-05 17:59:00.565 INFO 13416 --- [ main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started.
- 2026-11-05 17:59:00.580 INFO 13416 --- [eduler_Worker-1] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
- 2026-11-05 17:59:00.588 DEBUG 13416 --- [eduler_Worker-1] c.e.c.m.T.selectList : ==> Preparing: SELECT id,flow_id,flow_version,family_id,family_member_id,trigger_source,status,started_at,finished_at,error_reason,created_at,updated_at FROM task_orchestration_executions WHERE (status = ?) LIMIT 20
- 2026-11-05 17:59:00.588 DEBUG 13416 --- [eduler_Worker-1] c.e.c.m.T.selectList : ==> Parameters: running(String)
- 2026-11-05 17:59:00.590 DEBUG 13416 --- [eduler_Worker-1] c.e.c.m.T.selectList : <== Total: 0
- 2026-11-05 17:59:00.590 INFO 13416 --- [eduler_Worker-1] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
- 2026-11-05 17:59:00.596 INFO 13416 --- [ main] c.e.c.controller.ArticleControllerTest : Started ArticleControllerTest in 21.895 seconds (JVM running for 273.247)
- 2026-11-05 17:59:00.599 DEBUG 13416 --- [cfc-scheduler-1] c.e.c.m.ProductOrderMapper.selectList : ==> Preparing: SELECT id,order_no,product_id,product_name,product_type,sku_id,buyer_id,family_id,quantity,unit_price,total_amount,status,payment_method,remark,discount_amount,coupon_id,cancel_at,transaction_id,cover_image,address_snapshot,logistics_no,logistics_company,tracking_number,express_company,delivery_method,pickup_code,confirm_time,paid_at,refund_status,refund_reason,refund_amount,refund_time,supply_system_id,supplier_id,supply_commission,points_used,points_cost,money_amount,consignee_id,purchase_info,activity_id,provision_status,auditor_id,audited_at,audit_reason,shipping_cost,gift_amount,pickup_location_id,pickup_location_snapshot,time_slot_id,time_slot_snapshot,service_person_id,service_person_snapshot,fulfill_status,fulfill_confirmed_at,received_at,created_at,updated_at,special_deal_id FROM product_orders WHERE (status = ? AND created_at < ?)
- 2026-11-05 17:59:00.600 DEBUG 13416 --- [cfc-scheduler-1] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-05 17:29:00.597(Timestamp)
- 2026-11-05 17:59:00.602 DEBUG 13416 --- [cfc-scheduler-1] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
- 2026-11-05 17:59:00.604 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.A.selectList : ==> Preparing: SELECT id,order_no,family_id,user_id,child_id AS memberId,guide_id,package_id,guide_name,package_name,total_price,discount_amount,actual_price,appointment_id,status,pay_time,pay_type,transaction_id,created_at,updated_at FROM assessment_orders WHERE (status = ? AND created_at < ?)
- 2026-11-05 17:59:00.604 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-05 17:29:00.601(Timestamp)
- 2026-11-05 17:59:00.605 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 开始初始化数据库...
- 2026-11-05 17:59:00.608 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.A.selectList : <== Total: 0
- 2026-11-05 17:59:00.609 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据库检查完成
- 2026-11-05 17:59:00.612 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.PaymentOrderMapper.selectList : ==> Preparing: SELECT id,order_no,family_id,level_code,payment_type,period,amount,user_coupon_id,status,group_no,period_no,pay_method,transaction_id,paid_at,created_at,updated_at FROM payment_orders WHERE (status = ? AND created_at < ?)
- 2026-11-05 17:59:00.612 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-05 17:29:00.601(Timestamp)
- 2026-11-05 17:59:00.614 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
- 2026-11-05 17:59:00.616 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.M.selectList : ==> Preparing: SELECT id,family_id,level,amount,status,payment_type,transaction_id,order_no,created_at,paid_at FROM member_subscription_order WHERE (status = ? AND created_at < ?)
- 2026-11-05 17:59:00.616 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-05 17:29:00.601(Timestamp)
- 2026-11-05 17:59:00.617 DEBUG 13416 --- [cfc-scheduler-4] c.e.c.m.M.selectList : <== Total: 0
- 2026-11-05 17:59:00.617 INFO 13416 --- [cfc-scheduler-4] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
- 2026-11-05 17:59:00.625 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 从 schema.sql 加载了 379 个建表语句
- 2026-11-05 17:59:00.659 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 创建表失败: StatementCallback; bad SQL grammar [CREATE TABLE IF NOT EXISTS growth_records (
- id BIGINT AUTO_INCREMENT PRIMARY KEY,
- child_id BIGINT NOT NULL COMMENT '孩子ID',
- family_member_id BIGINT COMMENT '家庭成员ID',
- family_member_age INT COMMENT '家庭成员年龄(月)',
- parent_id BIGINT NOT NULL COMMENT '家长用户ID',
- family_member_id BIGINT COMMENT '关联家庭成员ID',
- family_member_age INT COMMENT '成员年龄快照',
- assessment_id BIGINT COMMENT '关联的测评结果ID',
- record_title VARCHAR(200) COMMENT '档案标题',
- child_age INT COMMENT '孩子当时年龄(月)',
- height VARCHAR(20) COMMENT '身高',
- weight VARCHAR(20) COMMENT '体重',
- school VARCHAR(100) COMMENT '学校名称',
- grade INT COMMENT '年级(数字)',
- academicPerformance VARCHAR(200) COMMENT '成绩/学业表现',
- schoolProvince VARCHAR(50) COMMENT '学校所在省',
- schoolCity VARCHAR(50) COMMENT '学校所在市',
- schoolDistrict VARCHAR(50) COMMENT '学校所在区',
- schoolStreet VARCHAR(100) COMMENT '学校所在街道',
- assessment_summary TEXT COMMENT '测评摘要',
- overall_score INT COMMENT '综合得分',
- growth_suggestions TEXT COMMENT '成长建议',
- task_recommendations TEXT COMMENT '任务推荐(JSON)',
- status VARCHAR(20) DEFAULT 'pending' COMMENT '状态: pending/completed',
- external_sync TINYINT DEFAULT 0 COMMENT '是否来自外部系统同步',
- external_source VARCHAR(100) COMMENT '外部系统来源',
- source_type VARCHAR(20) DEFAULT 'manual' COMMENT '来源类型: manual/platform_purchase/self_upload/supplement',
- source_file_url VARCHAR(500) COMMENT '原始报告文件URL',
- order_id BIGINT COMMENT '关联订单ID',
- report_date DATETIME COMMENT '测评/报告日期',
- parent_record_id BIGINT COMMENT '关联的原始档案ID(补充档案专用)',
- is_latest TINYINT(1) DEFAULT 1 COMMENT '是否同组最新记录',
- dedup_hash VARCHAR(64) COMMENT '去重哈希值(SHA256)',
- parsed_data TEXT COMMENT '上传报告的解析结果(JSON)',
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
- updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- INDEX idx_child_id (child_id),
- INDEX idx_parent_id (parent_id),
- INDEX idx_status (status),
- UNIQUE INDEX uk_growth_dedup_hash (dedup_hash)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'family_member_id'
- 2026-11-05 17:59:00.976 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 创建表失败: StatementCallback; bad SQL grammar [CREATE TABLE IF NOT EXISTS nutrition_age_dosage (
- id BIGINT AUTO_INCREMENT PRIMARY KEY,
- age_min_months INT NOT NULL COMMENT '产品适用的最小月龄',
- age_max_months INT NOT NULL COMMENT '产品适用的最大月龄',
- ingredient_name VARCHAR(100) NOT NULL COMMENT '成分名称',
- strain VARCHAR(100) DEFAULT NULL COMMENT '菌株号',
- amount_per_serving DECIMAL(10,2) DEFAULT NULL COMMENT '每份含量',
- unit VARCHAR(20) DEFAULT NULL COMMENT '单位',
- daily_value VARCHAR(50) DEFAULT NULL COMMENT '每日参考值%',
- purpose VARCHAR(200) DEFAULT NULL COMMENT '功效说明',
- create_time DATETIME DEFAULT CURRENT_TIMESTAMP,
- INDEX idx_product (product_id)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='营养产品按年龄分组的剂量建议';]; nested exception is java.sql.SQLSyntaxErrorException: Key column 'product_id' doesn't exist in table
- 2026-11-05 17:59:01.029 INFO 13416 --- [eduler_Worker-3] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
- 2026-11-05 17:59:01.032 DEBUG 13416 --- [eduler_Worker-3] c.e.c.m.T.selectList : ==> Preparing: SELECT id,flow_id,flow_version,family_id,family_member_id,trigger_source,status,started_at,finished_at,error_reason,created_at,updated_at FROM task_orchestration_executions WHERE (status = ?) LIMIT 20
- 2026-11-05 17:59:01.032 DEBUG 13416 --- [eduler_Worker-3] c.e.c.m.T.selectList : ==> Parameters: running(String)
- 2026-11-05 17:59:01.033 DEBUG 13416 --- [eduler_Worker-3] c.e.c.m.T.selectList : <== Total: 0
- 2026-11-05 17:59:01.033 INFO 13416 --- [eduler_Worker-3] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
- 2026-11-05 17:59:01.084 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据表检查完成
- 2026-11-05 17:59:02.825 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修正管理员角色为admin
- 2026-11-05 17:59:02.827 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建streets表
- 2026-11-05 17:59:02.845 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建teacher_messages表
- 2026-11-05 17:59:02.899 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改rewards.child_id字段允许NULL
- 2026-11-05 17:59:02.933 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改admins.status字段类型
- 2026-11-05 17:59:02.935 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_operation_logs表
- 2026-11-05 17:59:02.992 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改tasks.child_id允许NULL
- 2026-11-05 17:59:03.097 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改tasks.deadline允许NULL
- 2026-11-05 17:59:03.108 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建trial_memberships表
- 2026-11-05 17:59:03.119 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建guide_application_records表
- 2026-11-05 17:59:03.121 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : category列已存在,跳过
- 2026-11-05 17:59:03.122 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建invite_card表
- 2026-11-05 17:59:03.123 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建wishes表
- 2026-11-05 17:59:03.125 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 个人信息补充字段已存在,跳过
- 2026-11-05 17:59:03.127 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 浠艾福俱乐部服务商字段已存在,跳过
- 2026-11-05 17:59:03.130 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_skus表
- 2026-11-05 17:59:03.159 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : SysConfig 种子数据已加载
- 2026-11-05 17:59:03.163 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : Product 种子数据已加载
- 2026-11-05 17:59:03.165 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : Activity 种子数据已加载
- 2026-11-05 17:59:03.171 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 方案规则种子数据已加载: 模板包 focus=38, keep=39
- 2026-11-05 17:59:03.172 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 报告类型 gut_flora 已存在,跳过
- 2026-11-05 17:59:03.174 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : Article 种子数据已加载
- 2026-11-05 17:59:03.175 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 补充 Product 种子数据已加载
- 2026-11-05 17:59:03.177 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : content_sections 表已创建
- 2026-11-05 17:59:03.185 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : ContentSection 种子数据已加载
- 2026-11-05 17:59:03.188 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 佣金字段已存在,跳过
- 2026-11-05 17:59:03.190 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : profit_rate列已存在,跳过
- 2026-11-05 17:59:03.192 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建commission_records表
- 2026-11-05 17:59:03.193 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建withdrawal_requests表
- 2026-11-05 17:59:03.195 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 会员字段已存在,跳过
- 2026-11-05 17:59:03.197 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : commission_records扩展字段已存在,跳过
- 2026-11-05 17:59:03.198 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建member_upgrade_records表
- 2026-11-05 17:59:03.199 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建article_categories表
- 2026-11-05 17:59:03.200 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建articles表
- 2026-11-05 17:59:03.202 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表字段已完整,跳过迁移
- 2026-11-05 17:59:03.204 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表知识中心字段已完整,跳过迁移
- 2026-11-05 17:59:03.206 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建article_tags表
- 2026-11-05 17:59:03.207 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_dimension表
- 2026-11-05 17:59:03.209 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_source_config表
- 2026-11-05 17:59:03.210 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建cart_items表
- 2026-11-05 17:59:03.211 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建shop_categories表
- 2026-11-05 17:59:03.214 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建distribution_systems表
- 2026-11-05 17:59:03.215 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建distribution_relations表
- 2026-11-05 17:59:03.217 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建after_sales_requests表
- 2026-11-05 17:59:03.218 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建shop_discount_rules表
- 2026-11-05 17:59:03.230 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_log表
- 2026-11-05 17:59:03.232 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_balance表
- 2026-11-05 17:59:03.235 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 health_report_survey 表
- 2026-11-05 17:59:03.237 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 health_gut_flora 表
- 2026-11-05 17:59:03.238 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 health_disease_risk 表
- 2026-11-05 17:59:03.269 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : dan_assessment_results 认知维度字段已存在,跳过
- 2026-11-05 17:59:03.271 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : dan_assessment_results EMI 维度字段已存在,跳过
- 2026-11-05 17:59:03.273 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : dan_assessment_results EMI 心理子维度字段已存在,跳过
- 2026-11-05 17:59:03.275 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : dan_assessment_results 大五人格维度字段已存在,跳过
- 2026-11-05 17:59:03.278 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_member_attributes 表已为 v1.2 结构,跳过
- 2026-11-05 17:59:03.280 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : users 表 show_to_family 列已存在,跳过
- 2026-11-05 17:59:03.282 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : tasks 表 family_member_id 列已存在,跳过
- 2026-11-05 17:59:03.283 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 表 role_override 列已存在,跳过
- 2026-11-05 17:59:03.285 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 表 id_card 列已存在,跳过
- 2026-11-05 17:59:03.299 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.role_override 已存在,跳过
- 2026-11-05 17:59:03.302 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.require_registration 已存在,跳过
- 2026-11-05 17:59:03.303 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.require_checkin_review 已存在,跳过
- 2026-11-05 17:59:03.304 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.energy_penalty_unregistered 已存在,跳过
- 2026-11-05 17:59:03.305 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.require_review 已存在,跳过
- 2026-11-05 17:59:03.306 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.approved_count 已存在,跳过
- 2026-11-05 17:59:03.308 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.signed_count 已存在,跳过
- 2026-11-05 17:59:03.358 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 修正 activities 报名/签到审核字段失败: StatementCallback; bad SQL grammar [UPDATE activities a SET a.approved_count = (SELECT cnt FROM (SELECT COUNT(*) AS cnt FROM activity_registrations r WHERE r.activity_id = a.id AND r.status = 'approved') t)]; nested exception is java.sql.SQLSyntaxErrorException: Unknown column 'a.id' in 'where clause'
- 2026-11-05 17:59:03.359 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.trust_score 已存在,跳过
- 2026-11-05 17:59:03.361 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.intimacy_score 已存在,跳过
- 2026-11-05 17:59:03.363 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.communication_score 已存在,跳过
- 2026-11-05 17:59:03.364 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.last_interaction_at 已存在,跳过
- 2026-11-05 17:59:03.366 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 cart 表
- 2026-11-05 17:59:03.368 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : activities表visible_scope列已存在,跳过
- 2026-11-05 17:59:03.369 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表article_type列已存在,跳过
- 2026-11-05 17:59:03.371 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表word_count列已存在,跳过
- 2026-11-05 17:59:03.372 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : article_reading_records表task_id列已存在,跳过
- 2026-11-05 17:59:03.373 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : tasks表source_type列已存在,跳过
- 2026-11-05 17:59:03.375 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : tasks表source_id列已存在,跳过
- 2026-11-05 17:59:03.377 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : activities表checkin_points列已存在,跳过
- 2026-11-05 17:59:03.379 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_invitations表
- 2026-11-05 17:59:03.381 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 nutrition_indicator_mapping 表
- 2026-11-05 17:59:03.382 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 nutrition_deficiency_record 表
- 2026-11-05 17:59:03.383 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : nutrition_indicator_mapping 种子数据已存在 (15条), 跳过
- 2026-11-05 17:59:03.385 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 emotion_checkin 情绪打卡表
- 2026-11-05 17:59:03.414 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 bazi_reading_template 表
- 2026-11-05 17:59:03.415 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 numsoul_config 表
- 2026-11-05 17:59:03.418 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 user_address 表
- 2026-11-05 17:59:03.419 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : member_price列已存在,跳过
- 2026-11-05 17:59:03.421 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建member_discount_configs表
- 2026-11-05 17:59:03.422 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建/确认 food_recommend_idx 表
- 2026-11-05 17:59:03.423 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建/确认 food_recommend_idx_log 表
- 2026-11-05 17:59:03.429 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.target_mode 已存在,跳过
- 2026-11-05 17:59:03.430 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.target_value 已存在,跳过
- 2026-11-05 17:59:03.432 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.respond_deadline 已存在,跳过
- 2026-11-05 17:59:03.433 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_report_edit_logs表
- 2026-11-05 17:59:03.434 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.plan_json 已存在,跳过
- 2026-11-05 17:59:03.436 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.status 已存在,跳过
- 2026-11-05 17:59:03.437 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.reviewed_by 已存在,跳过
- 2026-11-05 17:59:03.438 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.reviewed_at 已存在,跳过
- 2026-11-05 17:59:03.439 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.review_comment 已存在,跳过
- 2026-11-05 17:59:03.440 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.teacher_id 已存在,跳过
- 2026-11-05 17:59:03.441 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.updated_at 已存在,跳过
- 2026-11-05 17:59:03.530 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改finance_checkins.child_id字段允许NULL
- 2026-11-05 17:59:03.532 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 finance_checkins.type 已存在,跳过
- 2026-11-05 17:59:03.533 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_daily_limit表
- 2026-11-05 17:59:03.581 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入energy_daily_limit默认数据
- 2026-11-05 17:59:03.582 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 diet_preferences.must_eat 已存在,跳过
- 2026-11-05 17:59:03.584 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 file_record.file_type 已存在,跳过
- 2026-11-05 17:59:03.584 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 file_record.description 已存在,跳过
- 2026-11-05 17:59:03.585 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据库迁移完成
- 2026-11-05 17:59:04.365 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移252: indicator_definitions 种子数据已加载 (27条)
- 2026-11-05 17:59:04.365 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据库迁移完成
- 2026-11-05 17:59:04.367 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : health_norm_reference 常模数据已存在 (98条), 跳过
- 2026-11-05 17:59:04.368 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表审核字段已存在,跳过
- 2026-11-05 17:59:04.406 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改activities.description为TEXT类型
- 2026-11-05 17:59:04.433 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改tasks.description为TEXT类型
- 2026-11-05 17:59:04.475 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改wishes.description为TEXT类型
- 2026-11-05 17:59:04.506 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改wishes.reject_reason为TEXT类型
- 2026-11-05 17:59:04.531 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改wishes.cancel_reason为TEXT类型
- 2026-11-05 17:59:04.574 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改reward_wishlists.description为TEXT类型
- 2026-11-05 17:59:04.617 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改products.description为TEXT类型
- 2026-11-05 17:59:04.665 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改products.reject_reason为TEXT类型
- 2026-11-05 17:59:04.730 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改product_orders.remark为TEXT类型
- 2026-11-05 17:59:04.773 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改articles.summary为TEXT类型
- 2026-11-05 17:59:04.809 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改activities.audit_reason为TEXT类型
- 2026-11-05 17:59:04.847 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_applications.reject_reason为TEXT类型
- 2026-11-05 17:59:04.883 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_application_records.remark为TEXT类型
- 2026-11-05 17:59:04.925 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改follow_up.description为TEXT类型
- 2026-11-05 17:59:04.992 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改follow_up.teacher_review为TEXT类型
- 2026-11-05 17:59:05.034 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改energy_log.description为TEXT类型
- 2026-11-05 17:59:05.064 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改sys_config.description为TEXT类型
- 2026-11-05 17:59:05.105 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改points_log.description为TEXT类型
- 2026-11-05 17:59:05.156 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改insurance_policies.remark为TEXT类型
- 2026-11-05 17:59:05.214 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改health_reports.remark为TEXT类型
- 2026-11-05 17:59:05.257 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_service_logs.notes为TEXT类型
- 2026-11-05 17:59:05.292 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_packages.description为TEXT类型
- 2026-11-05 17:59:05.342 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_package_templates.description为TEXT类型
- 2026-11-05 17:59:05.383 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改service_types.description为TEXT类型
- 2026-11-05 17:59:05.415 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改commission_records.remark为TEXT类型
- 2026-11-05 17:59:05.459 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改zodiac_pairing.description为TEXT类型
- 2026-11-05 17:59:05.526 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改zodiac_pairing.advice为TEXT类型
- 2026-11-05 17:59:05.598 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改blood_type_pairing.description为TEXT类型
- 2026-11-05 17:59:05.651 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改blood_type_pairing.advice为TEXT类型
- 2026-11-05 17:59:06.732 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改life_number_relationship.description为TEXT类型
- 2026-11-05 17:59:06.791 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改life_number_relationship.advice为TEXT类型
- 2026-11-05 17:59:06.823 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改finance_checkins.note为TEXT类型
- 2026-11-05 17:59:06.866 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改assessment_appointments.remark为TEXT类型
- 2026-11-05 17:59:06.899 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改withdrawal_requests.remark为TEXT类型
- 2026-11-05 17:59:06.902 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 content_sections.description 已存在,跳过
- 2026-11-05 17:59:06.931 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改education_systems.description为TEXT类型
- 2026-11-05 17:59:06.964 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改product_dimension_config.remark为TEXT类型
- 2026-11-05 17:59:07.007 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改indicator_values.remark为TEXT类型
- 2026-11-05 17:59:07.059 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改tongue_records.overall_assessment为TEXT类型
- 2026-11-05 17:59:07.092 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改system_config.description为TEXT类型
- 2026-11-05 17:59:07.115 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改system_config.config_value为TEXT类型
- 2026-11-05 17:59:07.159 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改supply_system.description为TEXT类型
- 2026-11-05 17:59:07.193 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改supply_settlement.remark为TEXT类型
- 2026-11-05 17:59:07.215 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改growth_task.description为TEXT类型
- 2026-11-05 17:59:07.252 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改distribution_systems.description为TEXT类型
- 2026-11-05 17:59:07.286 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改mini_games.description为TEXT类型
- 2026-11-05 17:59:07.348 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改blood_type_config.description为TEXT类型
- 2026-11-05 17:59:07.350 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_disease_risk.related_bacteria 已存在,跳过
- 2026-11-05 17:59:07.351 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.gut_status_level 已存在,跳过
- 2026-11-05 17:59:07.352 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.prerequisite_task_id 已存在,跳过
- 2026-11-05 17:59:07.353 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.action_type 已存在,跳过
- 2026-11-05 17:59:07.354 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.action_config 已存在,跳过
- 2026-11-05 17:59:07.355 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.require_input 已存在,跳过
- 2026-11-05 17:59:07.356 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.start_required 已存在,跳过
- 2026-11-05 17:59:07.358 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.start_count 已存在,跳过
- 2026-11-05 17:59:07.359 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.min_duration_seconds 已存在,跳过
- 2026-11-05 17:59:07.361 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建task_executions表
- 2026-11-05 17:59:07.362 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 focus_sessions.task_id 已存在,跳过
- 2026-11-05 17:59:07.364 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : mind/action/wealth 常模数据已存在 (80条), 跳过
- 2026-11-05 17:59:07.365 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建member_subscription表
- 2026-11-05 17:59:07.366 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建member_subscription_order表
- 2026-11-05 17:59:07.367 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建subscription_benefit_log表
- 2026-11-05 17:59:07.369 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建promotion_tier表
- 2026-11-05 17:59:07.370 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建promotion_tier_change_log表
- 2026-11-05 17:59:07.371 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建referral_tree表
- 2026-11-05 17:59:07.372 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_ppoint表
- 2026-11-05 17:59:07.373 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建assessment_products表
- 2026-11-05 17:59:07.374 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建assessment_quotas表
- 2026-11-05 17:59:07.376 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建assessment_executions表
- 2026-11-05 17:59:07.377 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.source 已存在,跳过
- 2026-11-05 17:59:07.378 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建growth_guidances表
- 2026-11-05 17:59:07.380 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建assessment_plan_rules表
- 2026-11-05 17:59:07.381 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.source 已存在,跳过
- 2026-11-05 17:59:07.382 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.source_result_id 已存在,跳过
- 2026-11-05 17:59:07.383 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.remark 已存在,跳过
- 2026-11-05 17:59:07.384 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.reviewed_by 已存在,跳过
- 2026-11-05 17:59:07.385 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.reviewed_at 已存在,跳过
- 2026-11-05 17:59:07.386 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.review_comment 已存在,跳过
- 2026-11-05 17:59:07.387 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.confirmed_by 已存在,跳过
- 2026-11-05 17:59:07.388 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.confirmed_at 已存在,跳过
- 2026-11-05 17:59:07.389 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.activated_at 已存在,跳过
- 2026-11-05 17:59:07.390 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_access_logs表
- 2026-11-05 17:59:07.391 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建five_dimension_scores表
- 2026-11-05 17:59:07.392 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建promotion_tier_config表
- 2026-11-05 17:59:07.394 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 添加user_coupon_id列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE package_orders ADD COLUMN user_coupon_id BIGINT COMMENT '使用的用户优惠券ID']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'user_coupon_id'
- 2026-11-05 17:59:07.395 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_invitations.max_use_count 已存在,跳过
- 2026-11-05 17:59:07.396 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_invitations.used_count 已存在,跳过
- 2026-11-05 17:59:07.398 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建teacher_family_binding_requests表
- 2026-11-05 17:59:07.399 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建chat_conversations表
- 2026-11-05 17:59:07.400 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建chat_messages表
- 2026-11-05 17:59:07.401 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建schema_versions表
- 2026-11-05 17:59:07.402 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.structured_analysis 已存在,跳过
- 2026-11-05 17:59:07.403 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建pending_refund表
- 2026-11-05 17:59:07.405 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.consignee_id 已存在,跳过
- 2026-11-05 17:59:07.406 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 pending_refund.order_type 已存在,跳过
- 2026-11-05 17:59:07.407 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 pending_refund.order_no 已存在,跳过
- 2026-11-05 17:59:07.411 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.dimension 已存在,跳过
- 2026-11-05 17:59:07.412 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.report_file_id 已存在,跳过
- 2026-11-05 17:59:07.413 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.draft_status 已存在,跳过
- 2026-11-05 17:59:07.415 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.dimension_weights 已存在,跳过
- 2026-11-05 17:59:07.416 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.dimension_weights 已存在,跳过
- 2026-11-05 17:59:07.417 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.dimension_weights 已存在,跳过
- 2026-11-05 17:59:07.420 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建dimension_weights表
- 2026-11-05 17:59:07.421 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 cart.sku_id 已存在,跳过
- 2026-11-05 17:59:07.422 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 cart.spec_option_ids 已存在,跳过
- 2026-11-05 17:59:07.424 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.purchase_info 已存在,跳过
- 2026-11-05 17:59:07.425 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.content_type 已存在,跳过
- 2026-11-05 17:59:07.426 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.difficulty_level 已存在,跳过
- 2026-11-05 17:59:07.427 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.dimension_ids 已存在,跳过
- 2026-11-05 17:59:07.428 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.dimension_weights 已存在,跳过
- 2026-11-05 17:59:07.430 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.dimension_weights 已存在,跳过
- 2026-11-05 17:59:07.431 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.dimension_weights 已存在,跳过
- 2026-11-05 17:59:07.432 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle表
- 2026-11-05 17:59:07.434 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle_member表
- 2026-11-05 17:59:07.435 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建review_orders表
- 2026-11-05 17:59:07.476 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展growth_task.type为支持AI_GENERATED
- 2026-11-05 17:59:07.478 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_task.dimension 已存在,跳过
- 2026-11-05 17:59:07.479 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_task.source_conversation_id 已存在,跳过
- 2026-11-05 17:59:07.479 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移97: growth_task 表扩展完成
- 2026-11-05 17:59:07.548 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展health_gut_flora.level字段长度
- 2026-11-05 17:59:07.548 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移 98: health_gut_flora 表扩展完成
- 2026-11-05 17:59:07.607 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展 health_gut_flora.population_level 字段长度至 VARCHAR(100)
- 2026-11-05 17:59:08.810 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展 health_gut_flora.detection_rate 字段长度至 VARCHAR(100)
- 2026-11-05 17:59:08.810 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移 100: health_gut_flora 表扩展完成
- 2026-11-05 17:59:08.853 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改users.role为VARCHAR(20)
- 2026-11-05 17:59:08.854 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 assessment_appointments.assessor_id 已存在,跳过
- 2026-11-05 17:59:08.856 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_executions.appointment_id 已存在,跳过
- 2026-11-05 17:59:08.856 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移100: 已添加assessor_id和appointment_id字段
- 2026-11-05 17:59:08.857 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建micro_actions表
- 2026-11-05 17:59:08.885 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已初始化12个微行动
- 2026-11-05 17:59:08.886 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建micro_action_records表
- 2026-11-05 17:59:08.888 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建daily_feedback表
- 2026-11-05 17:59:08.889 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_alerts表
- 2026-11-05 17:59:08.890 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_level表
- 2026-11-05 17:59:08.891 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_timeline_event表
- 2026-11-05 17:59:08.892 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_challenge表
- 2026-11-05 17:59:08.894 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_challenge_progress表
- 2026-11-05 17:59:08.895 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_interaction表
- 2026-11-05 17:59:08.897 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_circle表
- 2026-11-05 17:59:08.898 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_circle_member表
- 2026-11-05 17:59:08.899 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建circle_challenge表
- 2026-11-05 17:59:08.902 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_commission表
- 2026-11-05 17:59:08.903 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建promotion_binding表
- 2026-11-05 17:59:08.904 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建activity_feedback表
- 2026-11-05 17:59:08.906 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.feedback_dimensions 已存在,跳过
- 2026-11-05 17:59:08.907 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.family_member_id 已存在,跳过
- 2026-11-05 17:59:08.909 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.family_member_age 已存在,跳过
- 2026-11-05 17:59:08.910 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建emotion_checkin表
- 2026-11-05 17:59:08.912 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建emotion_alert表
- 2026-11-05 17:59:08.914 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建membership_levels表
- 2026-11-05 17:59:08.943 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入membership_levels种子数据
- 2026-11-05 17:59:08.945 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_memberships表
- 2026-11-05 17:59:08.947 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建share_events表
- 2026-11-05 17:59:08.948 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建share_reads表
- 2026-11-05 17:59:08.949 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建food_recommend_idx表
- 2026-11-05 17:59:08.950 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建points_exchange_products表
- 2026-11-05 17:59:08.951 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建points_exchange_records表
- 2026-11-05 17:59:08.952 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.mood_weather 已存在,跳过
- 2026-11-05 17:59:08.953 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.emotion_tags 已存在,跳过
- 2026-11-05 17:59:08.954 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.energy_awarded 已存在,跳过
- 2026-11-05 17:59:08.955 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.mood_score 已存在,跳过
- 2026-11-05 17:59:08.956 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.stress_level 已存在,跳过
- 2026-11-05 17:59:08.957 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.arousal_level 已存在,跳过
- 2026-11-05 17:59:08.959 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.sleep_hours 已存在,跳过
- 2026-11-05 17:59:08.960 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.sleep_quality 已存在,跳过
- 2026-11-05 17:59:08.991 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改emotion_checkin.user_id为可空
- 2026-11-05 17:59:09.042 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改emotion_checkin.emotion_type为VARCHAR
- 2026-11-05 17:59:09.044 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.fortune_level_text 已存在,跳过
- 2026-11-05 17:59:09.045 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.fortune_description 已存在,跳过
- 2026-11-05 17:59:09.047 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.mood_emoji 已存在,跳过
- 2026-11-05 17:59:09.048 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.mood_text 已存在,跳过
- 2026-11-05 17:59:09.049 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.weekly_tip 已存在,跳过
- 2026-11-05 17:59:09.050 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.price_quarterly 已存在,跳过
- 2026-11-05 17:59:09.051 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.target_type 已存在,跳过
- 2026-11-05 17:59:09.052 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.share_channel 已存在,跳过
- 2026-11-05 17:59:09.053 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.share_title 已存在,跳过
- 2026-11-05 17:59:09.055 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.share_url 已存在,跳过
- 2026-11-05 17:59:09.056 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.read_count 已存在,跳过
- 2026-11-05 17:59:09.057 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.reward_points 已存在,跳过
- 2026-11-05 17:59:09.058 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.status 已存在,跳过
- 2026-11-05 17:59:09.059 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.expires_at 已存在,跳过
- 2026-11-05 17:59:09.060 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.updated_at 已存在,跳过
- 2026-11-05 17:59:09.061 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_reads.read_duration 已存在,跳过
- 2026-11-05 17:59:09.063 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_reads.read_at 已存在,跳过
- 2026-11-05 17:59:09.064 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 points_exchange_records.family_member_id 已存在,跳过
- 2026-11-05 17:59:09.068 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.sort_order 已存在,跳过
- 2026-11-05 17:59:09.069 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.recommendation_tags 已存在,跳过
- 2026-11-05 17:59:09.070 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.is_recommended 已存在,跳过
- 2026-11-05 17:59:09.071 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.repurchase_interval_days 已存在,跳过
- 2026-11-05 17:59:09.073 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建category_ppoint表
- 2026-11-05 17:59:09.074 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建commission_dist_log表
- 2026-11-05 17:59:09.075 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 payment_orders.period 已存在,跳过
- 2026-11-05 17:59:09.125 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改payment_orders.payment_type列长度为VARCHAR(20)
- 2026-11-05 17:59:09.127 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.dimension_code 已存在,跳过
- 2026-11-05 17:59:09.128 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.dimension_weights 已存在,跳过
- 2026-11-05 17:59:09.130 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.family_scope 已存在,跳过
- 2026-11-05 17:59:09.131 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.family_scope 已存在,跳过
- 2026-11-05 17:59:09.135 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.registration_deadline 已存在,跳过
- 2026-11-05 17:59:09.136 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.child_fee 已存在,跳过
- 2026-11-05 17:59:09.137 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.child_member_fee 已存在,跳过
- 2026-11-05 17:59:09.139 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.parent_fee 已存在,跳过
- 2026-11-05 17:59:09.139 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.parent_member_fee 已存在,跳过
- 2026-11-05 17:59:09.140 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.creator_id 已存在,跳过
- 2026-11-05 17:59:09.142 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建activity_orders表
- 2026-11-05 17:59:09.143 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建activity_materials表
- 2026-11-05 17:59:09.144 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_gut_flora.population_level 已存在,跳过
- 2026-11-05 17:59:09.146 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_gut_flora.detection_rate 已存在,跳过
- 2026-11-05 17:59:09.147 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_dimension_scores表
- 2026-11-05 17:59:09.148 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_data_sources表
- 2026-11-05 17:59:09.150 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_indicators.collection_date 已存在,跳过
- 2026-11-05 17:59:09.603 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加列 promotion_tier.team_size_1st
- 2026-11-05 17:59:10.102 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加列 promotion_tier.team_size_2nd
- 2026-11-05 17:59:10.533 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加列 promotion_tier.team_size_3rd
- 2026-11-05 17:59:10.538 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 report_summary 表
- 2026-11-05 17:59:10.539 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.dimension_code 已存在,跳过
- 2026-11-05 17:59:10.540 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.dimension_weights 已存在,跳过
- 2026-11-05 17:59:10.540 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成tasks表维度字段添加
- 2026-11-05 17:59:10.542 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 energy_behavior_config 表
- 2026-11-05 17:59:10.544 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 finance_checkins.type 已存在,跳过
- 2026-11-05 17:59:10.544 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成finance_checkins.type字段添加
- 2026-11-05 17:59:10.546 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 article_comments 表
- 2026-11-05 17:59:10.547 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建service_role_applications表
- 2026-11-05 17:59:10.548 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移112: 开始添加article_admin_status列到users表
- 2026-11-05 17:59:10.549 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移112: 添加article_admin_status列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE users ADD COLUMN article_admin_status VARCHAR(20) DEFAULT NULL COMMENT '文章管理员状态: pending/approved/rejected']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'article_admin_status'
- 2026-11-05 17:59:10.551 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 periodic_services 表
- 2026-11-05 17:59:10.553 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 recommendation_logs 表
- 2026-11-05 17:59:10.554 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.family_scope 已存在,跳过
- 2026-11-05 17:59:10.554 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成products.family_scope字段添加
- 2026-11-05 17:59:10.555 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.family_scope 已存在,跳过
- 2026-11-05 17:59:10.555 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activities.family_scope字段添加
- 2026-11-05 17:59:10.556 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_registrations.registrant_name 已存在,跳过
- 2026-11-05 17:59:10.556 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activity_registrations.registrant_name字段添加
- 2026-11-05 17:59:10.557 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_registrations.registrant_phone 已存在,跳过
- 2026-11-05 17:59:10.557 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activity_registrations.registrant_phone字段添加
- 2026-11-05 17:59:10.601 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activity_registrations.child_id改为可空
- 2026-11-05 17:59:10.602 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.contact_name 已存在,跳过
- 2026-11-05 17:59:10.603 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.contact_phone 已存在,跳过
- 2026-11-05 17:59:10.604 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.contact_address 已存在,跳过
- 2026-11-05 17:59:10.604 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成package_orders表联系人字段添加
- 2026-11-05 17:59:10.605 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.registration_deadline 已存在,跳过
- 2026-11-05 17:59:10.605 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activities.registration_deadline字段添加
- 2026-11-05 17:59:10.606 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建virtual_goods_config表
- 2026-11-05 17:59:10.607 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 users.session_key 已存在,跳过
- 2026-11-05 17:59:10.607 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成users.session_key字段添加
- 2026-11-05 17:59:10.608 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_fortune_report表
- 2026-11-05 17:59:10.610 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建five_dimension_self_checks表
- 2026-11-05 17:59:10.641 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入会员年卡道具映射: member1314
- 2026-11-05 17:59:10.642 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已清理 membership_levels 重复行: 删除0条
- 2026-11-05 17:59:10.643 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : uk_level_code 唯一索引已存在,跳过添加
- 2026-11-05 17:59:10.645 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 payment_orders.user_coupon_id 已存在,跳过
- 2026-11-05 17:59:10.645 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已确保payment_orders.user_coupon_id列存在
- 2026-11-05 17:59:10.646 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.member_price 已存在,跳过
- 2026-11-05 17:59:10.646 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已确保activities.member_price列存在
- 2026-11-05 17:59:10.648 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.school 已存在,跳过
- 2026-11-05 17:59:10.649 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.grade 已存在,跳过
- 2026-11-05 17:59:10.650 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.academicPerformance 已存在,跳过
- 2026-11-05 17:59:10.651 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.schoolProvince 已存在,跳过
- 2026-11-05 17:59:10.652 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.schoolCity 已存在,跳过
- 2026-11-05 17:59:10.653 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.schoolDistrict 已存在,跳过
- 2026-11-05 17:59:10.653 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.schoolStreet 已存在,跳过
- 2026-11-05 17:59:10.654 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已确保growth_records学校/年级相关列存在
- 2026-11-05 17:59:10.655 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 创建product_gift_rules表成功
- 2026-11-05 17:59:10.656 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建growth_archive_products表
- 2026-11-05 17:59:10.684 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入PREMIUM等级种子数据
- 2026-11-05 17:59:10.685 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建interaction_logs表
- 2026-11-05 17:59:10.686 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建relationship_questionnaire_snapshots表
- 2026-11-05 17:59:10.743 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改users.family_id允许NULL
- 2026-11-05 17:59:10.744 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建relationship_questionnaire_responses表
- 2026-11-05 17:59:10.745 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.creator_id 已存在,跳过
- 2026-11-05 17:59:10.747 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已清理guide_orders重复order_no
- 2026-11-05 17:59:10.749 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已清理payment_orders重复order_no
- 2026-11-05 17:59:10.751 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建daily_checkin表
- 2026-11-05 17:59:10.752 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建exercise_record表
- 2026-11-05 17:59:10.753 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.creator_id 已存在,跳过
- 2026-11-05 17:59:10.754 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.discount_rate 已存在,跳过
- 2026-11-05 17:59:10.755 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.product_id 已存在,跳过
- 2026-11-05 17:59:10.757 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.points_price 已存在,跳过
- 2026-11-05 17:59:10.758 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.grant_type 已存在,跳过
- 2026-11-05 17:59:10.759 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.grant_level_code 已存在,跳过
- 2026-11-05 17:59:10.760 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.grant_period 已存在,跳过
- 2026-11-05 17:59:10.761 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.grant_quantity 已存在,跳过
- 2026-11-05 17:59:10.761 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已为coupon表添加会员券字段
- 2026-11-05 17:59:10.763 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建coupon_grant_log表
- 2026-11-05 17:59:10.764 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 virtual_goods_config.goods_price 已存在,跳过
- 2026-11-05 17:59:10.765 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 payment_orders.group_no 已存在,跳过
- 2026-11-05 17:59:10.766 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 payment_orders.period_no 已存在,跳过
- 2026-11-05 17:59:10.785 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已回填families.creator_id(优先家庭管理员)
- 2026-11-05 17:59:10.793 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已回填families.creator_id(任一成员)
- 2026-11-05 17:59:10.795 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修复articles表中status为null的记录为draft
- 2026-11-05 17:59:10.796 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已清理废弃的relationship_types表
- 2026-11-05 17:59:10.797 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_join_requests表
- 2026-11-05 17:59:10.798 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建knowledge_base_section表
- 2026-11-05 17:59:10.799 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.pickup_location_id 已存在,跳过
- 2026-11-05 17:59:10.801 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.pickup_location_snapshot 已存在,跳过
- 2026-11-05 17:59:10.802 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.time_slot_id 已存在,跳过
- 2026-11-05 17:59:10.803 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.time_slot_snapshot 已存在,跳过
- 2026-11-05 17:59:10.805 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.service_person_id 已存在,跳过
- 2026-11-05 17:59:10.806 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.service_person_snapshot 已存在,跳过
- 2026-11-05 17:59:10.807 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.fulfill_status 已存在,跳过
- 2026-11-05 17:59:10.808 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.fulfill_confirmed_at 已存在,跳过
- 2026-11-05 17:59:10.811 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.received_at 已存在,跳过
- 2026-11-05 17:59:10.812 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_pickup_locations表
- 2026-11-05 17:59:10.814 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_pickup_time_slots表
- 2026-11-05 17:59:10.815 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_service_persons表
- 2026-11-05 17:59:10.816 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_service_person_slots表
- 2026-11-05 17:59:10.818 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_online_slots表
- 2026-11-05 17:59:10.819 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建membership_benefits表
- 2026-11-05 17:59:10.849 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入membership_benefits种子数据
- 2026-11-05 17:59:10.851 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_consent_records表
- 2026-11-05 17:59:10.853 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_data_permissions表
- 2026-11-05 17:59:10.854 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 添加 is_living_together 列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE family_members ADD COLUMN is_living_together TINYINT(1) DEFAULT 1 COMMENT '是否同住(0=不同住,不出现在食谱推荐中)']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'is_living_together'
- 2026-11-05 17:59:10.855 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 添加 meal_with_breakfast_weekday 列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE family_members ADD COLUMN meal_with_breakfast_weekday TINYINT(1) DEFAULT 0 COMMENT '工作日早餐同餐']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'meal_with_breakfast_weekday'
- 2026-11-05 17:59:10.856 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 添加 meal_with_lunch_weekday 列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE family_members ADD COLUMN meal_with_lunch_weekday TINYINT(1) DEFAULT 0 COMMENT '工作日午餐同餐']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'meal_with_lunch_weekday'
- 2026-11-05 17:59:10.858 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 添加 meal_with_dinner_weekday 列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE family_members ADD COLUMN meal_with_dinner_weekday TINYINT(1) DEFAULT 0 COMMENT '工作日晚餐同餐']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'meal_with_dinner_weekday'
- 2026-11-05 17:59:10.859 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 添加 meal_with_breakfast_weekend 列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE family_members ADD COLUMN meal_with_breakfast_weekend TINYINT(1) DEFAULT 0 COMMENT '周末早餐同餐']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'meal_with_breakfast_weekend'
- 2026-11-05 17:59:10.861 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 添加 meal_with_lunch_weekend 列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE family_members ADD COLUMN meal_with_lunch_weekend TINYINT(1) DEFAULT 0 COMMENT '周末午餐同餐']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'meal_with_lunch_weekend'
- 2026-11-05 17:59:10.862 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 添加 meal_with_dinner_weekend 列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE family_members ADD COLUMN meal_with_dinner_weekend TINYINT(1) DEFAULT 0 COMMENT '周末晚餐同餐']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'meal_with_dinner_weekend'
- 2026-11-05 17:59:10.864 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建diet_preferences表
- 2026-11-05 17:59:10.865 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建meal_configs表
- 2026-11-05 17:59:10.866 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建diet_recommendations表
- 2026-11-05 17:59:10.868 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建diet_records表
- 2026-11-05 17:59:10.869 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建diet_record_items表
- 2026-11-05 17:59:10.870 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.proxy_uploader_id 已存在,跳过
- 2026-11-05 17:59:10.873 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.proxy_upload_note 已存在,跳过
- 2026-11-05 17:59:10.874 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.ai_analysis 已存在,跳过
- 2026-11-05 17:59:10.876 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.report_format 已存在,跳过
- 2026-11-05 17:59:10.878 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.remark 已存在,跳过
- 2026-11-05 17:59:10.879 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_challenge_participant表
- 2026-11-05 17:59:10.881 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_relationship_scores表
- 2026-11-05 17:59:10.918 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_challenge_score_config表并写入默认配置
- 2026-11-05 17:59:10.919 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已为存量挑战补全participant行
- 2026-11-05 17:59:10.920 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_type_registry表
- 2026-11-05 17:59:10.922 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_fingerprint表
- 2026-11-05 17:59:10.923 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_unknown_cluster表
- 2026-11-05 17:59:10.924 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_unknown_upload表
- 2026-11-05 17:59:10.926 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_parser_import表
- 2026-11-05 17:59:10.927 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.report_id 已存在,跳过
- 2026-11-05 17:59:10.929 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.score 已存在,跳过
- 2026-11-05 17:59:10.931 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.energy_kj 已存在,跳过
- 2026-11-05 17:59:10.932 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.starch 已存在,跳过
- 2026-11-05 17:59:10.934 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.cholesterol 已存在,跳过
- 2026-11-05 17:59:10.935 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.diet_type 已存在,跳过
- 2026-11-05 17:59:10.960 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已为verification_codes.type添加默认值
- 2026-11-05 17:59:10.962 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_relationships.trust_score 已存在,跳过
- 2026-11-05 17:59:10.964 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_relationships.intimacy_score 已存在,跳过
- 2026-11-05 17:59:10.966 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_relationships.communication_score 已存在,跳过
- 2026-11-05 17:59:10.967 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_join_requests.family_role 已存在,跳过
- 2026-11-05 17:59:10.968 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.accept_deadline 已存在,跳过
- 2026-11-05 17:59:11.550 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : tasks.status枚举修改失败(可能已修改): StatementCallback; SQL [ALTER TABLE tasks MODIFY COLUMN `status` ENUM('pending','assigned','in_progress','completed','rejected','overdue','cancelled') DEFAULT 'pending' COMMENT '状态: pending=待审核 assigned=待接受 in_progress=进行中 completed=已完成 rejected=已拒绝 overdue=已过期 cancelled=已取消']; Data truncated for column 'status' at row 9; nested exception is java.sql.SQLException: Data truncated for column 'status' at row 9
- 2026-11-05 17:59:11.552 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_platform_balance表
- 2026-11-05 17:59:11.553 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建platform_balance_log表
- 2026-11-05 17:59:11.555 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已迁移settled佣金为可用CF值
- 2026-11-05 17:59:11.556 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已迁移pending佣金为冻结CF值
- 2026-11-05 17:59:11.557 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.platform_points 已存在,跳过
- 2026-11-05 17:59:11.561 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 withdrawal_requests.type 已存在,跳过
- 2026-11-05 17:59:11.562 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.original_price_monthly 已存在,跳过
- 2026-11-05 17:59:11.563 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.original_price_quarterly 已存在,跳过
- 2026-11-05 17:59:11.565 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.original_price_yearly 已存在,跳过
- 2026-11-05 17:59:11.567 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已同步会员价格/原价至membership_levels
- 2026-11-05 17:59:11.593 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入LIFETIME等级种子数据
- 2026-11-05 17:59:11.595 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建notices表
- 2026-11-05 17:59:11.597 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 member_upgrade_records.approve_remark 已存在,跳过
- 2026-11-05 17:59:11.598 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 member_upgrade_records.approve_status 已存在,跳过
- 2026-11-05 17:59:11.599 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 member_upgrade_records.approve_user_id 已存在,跳过
- 2026-11-05 17:59:11.599 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 member_upgrade_records.approve_time 已存在,跳过
- 2026-11-05 17:59:11.600 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_plans表
- 2026-11-05 17:59:11.676 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : health_gut_flora.detection_rate 已扩容为 VARCHAR(255)
- 2026-11-05 17:59:11.678 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.growth_category 已存在,跳过
- 2026-11-05 17:59:11.680 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 supply_system.contact_name 已存在,跳过
- 2026-11-05 17:59:11.681 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 supply_system.contact_phone 已存在,跳过
- 2026-11-05 17:59:11.682 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 supply_system.remark 已存在,跳过
- 2026-11-05 17:59:11.682 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移209: supply_system 已添加 contact_name/contact_phone/remark 列
- 2026-11-05 17:59:11.684 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移209: ecom_supplier 存量数据已迁移至 supply_system
- 2026-11-05 17:59:11.685 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_platform_balance表
- 2026-11-05 17:59:11.686 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_platform_balance_log表
- 2026-11-05 17:59:11.688 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.points_multiplier 已存在,跳过
- 2026-11-05 17:59:11.688 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加products.points_multiplier列
- 2026-11-05 17:59:11.689 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_platform_exchange_record表
- 2026-11-05 17:59:11.690 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 nutrition_product.ingredients 已存在,跳过
- 2026-11-05 17:59:11.729 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已将nutrition_product.suitable_for升级为TEXT类型
- 2026-11-05 17:59:11.731 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建file_tag表
- 2026-11-05 17:59:12.359 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已预置文件标签
- 2026-11-05 17:59:12.361 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建file_tag_rel表
- 2026-11-05 17:59:12.392 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入GROWTH_COACH权益种子数据
- 2026-11-05 17:59:12.394 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 recommendation_logs.recommend_type 已存在,跳过
- 2026-11-05 17:59:12.394 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加recommendation_logs.recommend_type列
- 2026-11-05 17:59:12.395 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移233: 维度权重已同步过,跳过
- 2026-11-05 17:59:12.397 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建problem_domains表
- 2026-11-05 17:59:12.399 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_intents表
- 2026-11-05 17:59:12.400 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_notifications表
- 2026-11-05 17:59:12.403 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.member_only 已存在,跳过
- 2026-11-05 17:59:12.404 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.logistics_status 已存在,跳过
- 2026-11-05 17:59:12.406 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.tracking_no 已存在,跳过
- 2026-11-05 17:59:12.406 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加package_orders物流字段
- 2026-11-05 17:59:12.407 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_status表
- 2026-11-05 17:59:12.408 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建system_prompts表
- 2026-11-05 17:59:12.433 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入默认系统提示词
- 2026-11-05 17:59:12.435 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建sys_menu表
- 2026-11-05 17:59:12.436 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建sys_role_menu表
- 2026-11-05 17:59:12.437 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : sys_menu 已有 105 条数据,跳过种子插入
- 2026-11-05 17:59:12.438 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建notification_templates表
- 2026-11-05 17:59:12.439 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : notification_templates 已有 5 条数据,跳过种子插入
- 2026-11-05 17:59:12.440 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移246: product_skus 价格已迁移过,跳过
- 2026-11-05 17:59:12.441 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_skus.linked_product_id 已存在,跳过
- 2026-11-05 17:59:12.443 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_skus.label 已存在,跳过
- 2026-11-05 17:59:12.444 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 families.butler_id 已存在,跳过
- 2026-11-05 17:59:12.563 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建profile_snapshot表
- 2026-11-05 17:59:12.565 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建profile_history表
- 2026-11-05 17:59:12.566 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_template表
- 2026-11-05 17:59:12.568 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 report_unknown_upload.annotation 已存在,跳过
- 2026-11-05 17:59:12.569 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.description 已存在,跳过
- 2026-11-05 17:59:12.570 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.cover_image 已存在,跳过
- 2026-11-05 17:59:12.572 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.join_condition 已存在,跳过
- 2026-11-05 17:59:12.573 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.review_required 已存在,跳过
- 2026-11-05 17:59:12.574 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.is_public 已存在,跳过
- 2026-11-05 17:59:12.575 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle_member.status 已存在,跳过
- 2026-11-05 17:59:12.576 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle_member.role 已存在,跳过
- 2026-11-05 17:59:12.578 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle_post表
- 2026-11-05 17:59:12.579 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle_like表
- 2026-11-05 17:59:12.581 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle_comment表
- 2026-11-05 17:59:12.583 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 butler_profiles.accepting 已存在,跳过
- 2026-11-05 17:59:12.584 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_join_requests.inviter_user_id可能已存在: StatementCallback; bad SQL grammar [ALTER TABLE family_join_requests ADD COLUMN inviter_user_id BIGINT NULL COMMENT '邀请人用户ID(分享邀请令牌的人)' AFTER invite_ref]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'inviter_user_id'
- 2026-11-05 17:59:12.585 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : users.portrait_prompt可能已存在: StatementCallback; bad SQL grammar [ALTER TABLE users ADD COLUMN portrait_prompt TEXT COMMENT '用户自定义画像 prompt' AFTER mascot]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'portrait_prompt'
- 2026-11-05 17:59:12.787 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修复方案分解任务的 family_member_id 与 deadline 边界
- 2026-11-05 17:59:12.874 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已开启方案分解任务的审核模式
- 2026-11-05 17:59:12.902 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展 tasks.status 枚举,支持 pending_review/locked
- 2026-11-05 17:59:12.905 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 five_dimension_self_checks.question_ids_json 已存在,跳过
- 2026-11-05 17:59:12.906 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 self_check_ignores 表
- 2026-11-05 17:59:12.908 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 users.family_inviter_id 已存在,跳过
- 2026-11-05 17:59:12.935 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改 sleep_record 时间为 TIME 类型
- 2026-11-05 17:59:12.938 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移270: innate_portrait_config 表创建完成
- 2026-11-05 17:59:12.938 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移271: innate_portrait_report 表创建完成
- 2026-11-05 17:59:12.941 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移272: numsoul_detail_config 表创建完成
- 2026-11-05 17:59:12.980 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移273: 已加宽 dan_report_uploads.file_id 为 VARCHAR(500)
- 2026-11-05 17:59:13.035 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移274: 已加宽 dan_assessment_results.report_file_id 为 VARCHAR(500)
- 2026-11-05 17:59:13.037 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.dan_level 已存在,跳过
- 2026-11-05 17:59:13.080 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移275: 已将 dan_assessment_results.dan_level 改为可空并带默认
- 2026-11-05 17:59:13.081 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 family_coupon 表
- 2026-11-05 17:59:13.082 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 family_coupon_grant_log 表
- 2026-11-05 17:59:13.084 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建cf_rate_tier表
- 2026-11-05 17:59:13.086 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建cf_transfer_record表
- 2026-11-05 17:59:13.501 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : promotion_tier 已删除三层团队列
- 2026-11-05 17:59:13.503 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : promotion_tier.rate_percent 已存在: StatementCallback; bad SQL grammar [ALTER TABLE promotion_tier ADD COLUMN rate_percent INT DEFAULT 0 COMMENT '当前返佣比例(%)']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'rate_percent'
- 2026-11-05 17:59:13.504 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : coupon.family_id 已存在: StatementCallback; bad SQL grammar [ALTER TABLE coupon ADD COLUMN family_id BIGINT DEFAULT NULL COMMENT '绑定家庭ID(NULL=不绑定)']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'family_id'
- 2026-11-05 17:59:13.506 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : referral_tree.uk_child_id 删除失败(可能不存在): StatementCallback; bad SQL grammar [ALTER TABLE referral_tree DROP INDEX uk_child_id]; nested exception is java.sql.SQLSyntaxErrorException: Can't DROP 'uk_child_id'; check that column/key exists
- 2026-11-05 17:59:13.507 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : referral_tree.uk_parent_child 已存在: StatementCallback; bad SQL grammar [ALTER TABLE referral_tree ADD UNIQUE KEY uk_parent_child (parent_id, child_id)]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate key name 'uk_parent_child'
- 2026-11-05 17:59:13.509 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : cf_transfer_record.uk_ref_type_id 已存在: StatementCallback; bad SQL grammar [ALTER TABLE cf_transfer_record ADD UNIQUE KEY uk_ref_type_id (ref_type, ref_id)]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate key name 'uk_ref_type_id'
- 2026-11-05 17:59:13.510 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_gift_configs表
- 2026-11-05 17:59:13.512 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_gift_items表
- 2026-11-05 17:59:13.513 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_order_gifts表
- 2026-11-05 17:59:13.515 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.parse_status 已存在,跳过
- 2026-11-05 17:59:13.516 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.parse_method 已存在,跳过
- 2026-11-05 17:59:13.518 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.parse_error 已存在,跳过
- 2026-11-05 17:59:13.518 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加 health_report_drafts 异步采集状态列 (parse_status/parse_method/parse_error)
- 2026-11-05 17:59:13.519 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.report_format 已存在,跳过
- 2026-11-05 17:59:13.520 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.visibility 已存在,跳过
- 2026-11-05 17:59:13.522 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.visible_to 已存在,跳过
- 2026-11-05 17:59:13.523 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_knowledge_base.file_url 已存在,跳过
- 2026-11-05 17:59:13.524 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_knowledge_base.file_name 已存在,跳过
- 2026-11-05 17:59:13.526 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_knowledge_base.source_url 已存在,跳过
- 2026-11-05 17:59:13.527 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_knowledge_base.source_type 已存在,跳过
- 2026-11-05 17:59:13.529 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 distribution_relations.invite_code 已存在,跳过
- 2026-11-05 17:59:13.530 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.birth_hour 已存在,跳过
- 2026-11-05 17:59:13.531 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.birth_weight 已存在,跳过
- 2026-11-05 17:59:13.533 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.birth_place 已存在,跳过
- 2026-11-05 17:59:13.534 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.is_cesarean 已存在,跳过
- 2026-11-05 17:59:13.535 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_indicators.symptoms 已存在,跳过
- 2026-11-05 17:59:13.536 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.tracking_number 已存在,跳过
- 2026-11-05 17:59:13.537 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.express_company 已存在,跳过
- 2026-11-05 17:59:13.539 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.delivery_method 已存在,跳过
- 2026-11-05 17:59:13.540 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.pickup_code 已存在,跳过
- 2026-11-05 17:59:13.541 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.confirm_time 已存在,跳过
- 2026-11-05 17:59:13.543 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.refund_status 已存在,跳过
- 2026-11-05 17:59:13.544 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.refund_reason 已存在,跳过
- 2026-11-05 17:59:13.546 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.refund_amount 已存在,跳过
- 2026-11-05 17:59:13.547 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.refund_time 已存在,跳过
- 2026-11-05 17:59:13.547 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已补齐真实缺列 (迁移290, 6表21列)
- 2026-11-05 17:59:13.550 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_status.member_id 已存在,跳过
- 2026-11-05 17:59:13.553 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.is_admin 已存在,跳过
- 2026-11-05 17:59:13.569 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移293: 已回填家庭创建者为管理员
- 2026-11-05 17:59:13.571 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.sort_order 已存在,跳过
- 2026-11-05 17:59:13.571 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加 articles.sort_order 列(迁移294)
- 2026-11-05 17:59:13.572 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.audio_url 已存在,跳过
- 2026-11-05 17:59:13.573 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.audio_text 已存在,跳过
- 2026-11-05 17:59:13.573 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加 articles.audio_url/audio_text 列(迁移294b)
- 2026-11-05 17:59:13.575 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.source 已存在,跳过
- 2026-11-05 17:59:13.576 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.source_result_id 已存在,跳过
- 2026-11-05 17:59:13.577 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.remark 已存在,跳过
- 2026-11-05 17:59:13.579 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.reviewed_by 已存在,跳过
- 2026-11-05 17:59:13.580 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.reviewed_at 已存在,跳过
- 2026-11-05 17:59:13.582 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.review_comment 已存在,跳过
- 2026-11-05 17:59:13.583 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.confirmed_by 已存在,跳过
- 2026-11-05 17:59:13.584 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.confirmed_at 已存在,跳过
- 2026-11-05 17:59:13.586 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.activated_at 已存在,跳过
- 2026-11-05 17:59:13.586 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移295: 已补齐 task_plan_instances 审核/确认/激活列
- 2026-11-05 17:59:13.769 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移296: 已修正0条健康方案任务 source_type -> health_plan
- 2026-11-05 17:59:13.860 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移297: 已补设0条认知训练方案任务 source_type -> training_plan
- 2026-11-05 17:59:13.885 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移298: 已迁移0条有 openid 的 child 账号 role → parent
- 2026-11-05 17:59:13.890 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移298: 已为无 openid 的 child 账号补齐 family_members 记录
- 2026-11-05 17:59:13.891 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移322: children 表不存在,跳过(已废弃)
- 2026-11-05 17:59:13.893 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 promotion_tier.rate_percent 已存在,跳过
- 2026-11-05 17:59:13.894 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.status 已存在,跳过
- 2026-11-05 17:59:13.896 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.is_daily_progress 已存在,跳过
- 2026-11-05 17:59:13.897 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.target_value 已存在,跳过
- 2026-11-05 17:59:13.938 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已更新tasks.source_type注释
- 2026-11-05 17:59:13.943 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移301: platform_balance_log 历史重复流水已清理
- 2026-11-05 17:59:13.945 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移301: platform_balance_log 唯一索引处理失败: StatementCallback; bad SQL grammar [ALTER TABLE platform_balance_log ADD UNIQUE KEY uk_user_ref (user_id, ref_type, ref_id)]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate key name 'uk_user_ref'
- 2026-11-05 17:59:13.946 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建contact_help_logs表
- 2026-11-05 17:59:13.948 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建resource_items表
- 2026-11-05 17:59:13.989 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移304: health_gut_flora.bacteria_name 已改为可空
- 2026-11-05 17:59:14.027 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移305: health_indicators.status 已放宽到 VARCHAR(100)
- 2026-11-05 17:59:14.030 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移307: resource_items.connection_type 已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE resource_items ADD COLUMN connection_type VARCHAR(50) NOT NULL DEFAULT '' COMMENT '连接类型枚举名(ConnectionType)']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'connection_type'
- 2026-11-05 17:59:14.032 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移307: resource_items.priority 已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE resource_items ADD COLUMN priority TINYINT DEFAULT 2 COMMENT '优先级: 1=高 2=中 3=低(手动覆盖)']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'priority'
- 2026-11-05 17:59:14.033 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移307: resource_items.value_score 已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE resource_items ADD COLUMN value_score INT DEFAULT 0 COMMENT '价值分 0-100(自动计算,可手动覆盖)']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'value_score'
- 2026-11-05 17:59:14.034 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移307: resource_items.last_interaction_at 已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE resource_items ADD COLUMN last_interaction_at DATETIME DEFAULT NULL COMMENT '最近互动时间']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'last_interaction_at'
- 2026-11-05 17:59:14.035 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移307: resource_items.interaction_count 已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE resource_items ADD COLUMN interaction_count INT DEFAULT 0 COMMENT '互动总次数']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'interaction_count'
- 2026-11-05 17:59:14.036 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移307: resource_items.connection_type 索引已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE resource_items ADD INDEX idx_ri_connection_type (connection_type)]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate key name 'idx_ri_connection_type'
- 2026-11-05 17:59:14.036 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移307: resource_items 社会连接字段添加完成
- 2026-11-05 17:59:14.037 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移308: 已创建 pearl_interaction_log 表
- 2026-11-05 17:59:14.038 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移309: 已创建 pearl_interaction_reminder 表
- 2026-11-05 17:59:14.039 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建octopus_effect_record表
- 2026-11-05 17:59:14.040 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建octopus_key_person表
- 2026-11-05 17:59:14.041 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建octopus_effect_key_person表
- 2026-11-05 17:59:14.043 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移310: health_meal_record.record_date 已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE health_meal_record ADD COLUMN record_date DATE NULL COMMENT '用餐日期(补打时为实际用餐日,默认等于创建日)']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'record_date'
- 2026-11-05 17:59:14.044 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移310: health_meal_record.is_backfill 已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE health_meal_record ADD COLUMN is_backfill TINYINT DEFAULT 0 COMMENT '是否补打: 1=补打(无能量值), 0=当日打卡']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'is_backfill'
- 2026-11-05 17:59:14.046 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移310: health_meal_record 索引已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE health_meal_record ADD INDEX idx_meal_record_date (member_id, record_date)]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate key name 'idx_meal_record_date'
- 2026-11-05 17:59:14.047 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.file_hash 已存在,跳过
- 2026-11-05 17:59:14.048 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.file_hash 已存在,跳过
- 2026-11-05 17:59:14.048 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移310: 已补齐 health_reports/health_report_drafts.file_hash
- 2026-11-05 17:59:14.049 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 report_type_registry.script_status 已存在,跳过
- 2026-11-05 17:59:14.050 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移311: 已补齐 report_type_registry.script_status
- 2026-11-05 17:59:14.050 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移312: gut_flora 指纹规则已存在,跳过
- 2026-11-05 17:59:14.052 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移316: 已创建recommendation_rules表
- 2026-11-05 17:59:14.056 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移329: 已创建task_orchestration_flows表
- 2026-11-05 17:59:14.057 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移329: 已创建task_orchestration_edges表
- 2026-11-05 17:59:14.058 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移329: 已创建task_orchestration_executions表
- 2026-11-05 17:59:14.060 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移329: 已创建task_orchestration_node_instances表
- 2026-11-05 17:59:14.093 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已预置onboarding_guide_config默认配置
- 2026-11-05 17:59:14.096 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_meal_record.photo_urls 已存在,跳过
- 2026-11-05 17:59:14.098 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_meal_record.voice_url 已存在,跳过
- 2026-11-05 17:59:14.100 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_meal_record.voice_text 已存在,跳过
- 2026-11-05 17:59:14.101 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 exercise_record.photo_urls 已存在,跳过
- 2026-11-05 17:59:14.102 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 exercise_record.voice_url 已存在,跳过
- 2026-11-05 17:59:14.104 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 exercise_record.voice_text 已存在,跳过
- 2026-11-05 17:59:14.104 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移328: 已为health_meal_record/exercise_record补充照片语音字段
- 2026-11-05 17:59:14.105 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移333: 已创建 guide_popup 表
- 2026-11-05 17:59:14.107 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移334: 已创建 guide_popup_step 表
- 2026-11-05 17:59:14.108 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移335: 已创建 guide_popup_trigger 表
- 2026-11-05 17:59:14.110 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移336: 已创建 guide_popup_log 表
- 2026-11-05 17:59:14.111 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移323: 报告类型 dan_a2 已存在,跳过
- 2026-11-05 17:59:14.112 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移323: dan_a2 指纹规则已存在,跳过
- 2026-11-05 17:59:14.113 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移326: 限时折扣管理菜单已存在,跳过
- 2026-11-05 17:59:14.115 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移327: 已创建 user_shortcut_config 表
- 2026-11-05 17:59:14.116 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移327: 已创建 user_app_usage 表
- 2026-11-05 17:59:14.117 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移333: parent_first_login 种子弹窗已存在,跳过
- 2026-11-05 17:59:14.118 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.gift_amount 已存在,跳过
- 2026-11-05 17:59:14.120 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移338: 已创建 gift_membership_progress 表
- 2026-11-05 17:59:14.121 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.is_flow_task 已存在,跳过
- 2026-11-05 17:59:14.122 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.successor_task_ids 已存在,跳过
- 2026-11-05 17:59:14.123 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 insurance_policies.policy_terms 已存在,跳过
- 2026-11-05 17:59:14.125 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移340: 已创建 home_banners 表
- 2026-11-05 17:59:14.126 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.member_id 已存在,跳过
- 2026-11-05 17:59:14.126 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移343: health_report_drafts.member_id 已确保存在
- 2026-11-05 17:59:14.127 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.total_days 已存在,跳过
- 2026-11-05 17:59:14.128 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移345: health_plans.total_days 已确保存在
- 2026-11-05 17:59:14.306 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移349: 已创建 report_transfer_requests 表
- 2026-11-05 17:59:14.307 DEBUG 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移350: products.min_discount_level 列已存在,跳过
- 2026-11-05 17:59:14.351 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移360: 已恢复 BASIC 体验会员等级
- 2026-11-05 17:59:14.387 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移360: 已恢复 BASIC 会员权益
- 2026-11-05 17:59:14.388 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移351: 已回填 membership_levels.level_order(8 行):FREE=1 BASIC=2 FAMILY=3 PREMIUM=4 LIFETIME=5; PROVIDER=1(非会员)
- 2026-11-05 17:59:14.389 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移381: 已修正 membership_levels.level_order(6 行):FREE=1 BASIC=2 FAMILY=3 PREMIUM=4 LIFETIME=5 PROVIDER=1(非会员)
- 2026-11-05 17:59:14.390 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移352: 已清理遗留权益记录(0 行)
- 2026-11-05 17:59:14.390 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移352: 已清理 REPORT_UPLOAD 配额记录(0 行)
- 2026-11-05 17:59:14.391 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移405: 已更新 BASIC 等级口径(features/max_tasks_per_day/level_desc)
- 2026-11-05 17:59:14.451 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移405: 已更新 BASIC 权益列表(AI对话更名/去测评预约/增识别与会员价)
- 2026-11-05 17:59:14.452 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移405: 已清理旧口径配额记录(0 行)
- 2026-11-05 17:59:14.453 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移345: 已创建 product_dimension_mapping 表
- 2026-11-05 17:59:14.455 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移346: 已创建 product_recommendation_log 表
- 2026-11-05 17:59:14.456 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移347a: 已创建 repurchase_reminder_record 表
- 2026-11-05 17:59:14.457 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移347b: 已创建 repurchase_reminder_config 表
- 2026-11-05 17:59:14.458 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移348: 已创建 recommendation_product_associations 表
- 2026-11-05 17:59:14.460 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.ab_test_group 已存在,跳过
- 2026-11-05 17:59:14.462 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.recommendation_type 已存在,跳过
- 2026-11-05 17:59:14.462 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移349: product_recommendation_log 已添加 ab_test_group / recommendation_type 列
- 2026-11-05 17:59:14.463 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移353: 已创建 task_reminder_config 表
- 2026-11-05 17:59:14.465 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_reminder_config.completion_praise_enabled 已存在,跳过
- 2026-11-05 17:59:14.466 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_reminder_config.completion_praise_channels 已存在,跳过
- 2026-11-05 17:59:14.467 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.family_id 已存在,跳过
- 2026-11-05 17:59:14.468 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.was_clicked 已存在,跳过
- 2026-11-05 17:59:14.470 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.was_purchased 已存在,跳过
- 2026-11-05 17:59:14.471 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.clicked_at 已存在,跳过
- 2026-11-05 17:59:14.472 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.purchased_at 已存在,跳过
- 2026-11-05 17:59:14.473 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.updated_at 已存在,跳过
- 2026-11-05 17:59:14.473 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移355: product_recommendation_log 已补齐缺失列
- 2026-11-05 17:59:14.474 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移359: 已创建 diet_family_selected_ingredients 表
- 2026-11-05 17:59:14.476 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移359: 已创建 sso_ticket 表
- 2026-11-05 17:59:14.477 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移327: 已创建 report_feedback 表
- 2026-11-05 17:59:14.478 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移313: 已修复 meal_configs 双编码 participant_member_ids
- 2026-11-05 17:59:14.480 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移314: meal_configs 添加 config_date 列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE meal_configs ADD COLUMN config_date DATE DEFAULT NULL COMMENT '当天临时配置日期(NULL=默认工作日/周末配置)']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'config_date'
- 2026-11-05 17:59:14.481 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移314: meal_configs 添加 config_date_eff 生成列失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE meal_configs ADD COLUMN config_date_eff DATE GENERATED ALWAYS AS (COALESCE(config_date, '9999-12-31')) STORED COMMENT '生效日期(NULL映射为9999-12-31,用于唯一约束)']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'config_date_eff'
- 2026-11-05 17:59:14.594 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移314: meal_configs 已删除旧 UNIQUE KEY uk_config
- 2026-11-05 17:59:14.836 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移314: meal_configs 已添加新 UNIQUE KEY uk_config(支持当天临时配置)
- 2026-11-05 17:59:14.838 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移314: meal_configs 添加索引 idx_config_date 失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE meal_configs ADD INDEX idx_config_date (config_date)]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate key name 'idx_config_date'
- 2026-11-05 17:59:14.839 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已创建 doa_stage 表
- 2026-11-05 17:59:14.840 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已创建 doa_goal 表
- 2026-11-05 17:59:14.842 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已创建 doa_week 表
- 2026-11-05 17:59:14.894 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已授权 admin 角色
- 2026-11-05 17:59:14.894 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 系统提示词菜单挂载完成 id=106
- 2026-11-05 17:59:14.895 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移319: health_plan 提示词已存在,跳过
- 2026-11-05 17:59:14.897 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移320: exercise_record.step_count 列已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE exercise_record ADD COLUMN step_count INT COMMENT '微信运动步数']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'step_count'
- 2026-11-05 17:59:14.898 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.level_order 已存在,跳过
- 2026-11-05 17:59:14.899 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移321: 已回填 membership_levels.level_order
- 2026-11-05 17:59:14.900 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.min_visible_level 已存在,跳过
- 2026-11-05 17:59:14.902 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 shop_categories.min_visible_level 已存在,跳过
- 2026-11-05 17:59:14.902 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移321: 已完成商品/分类按会员级别可见性改造
- 2026-11-05 17:59:14.904 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建article_quiz_records表
- 2026-11-05 17:59:14.905 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 profile_snapshot.quiz_summary 已存在,跳过
- 2026-11-05 17:59:14.906 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.language_score 已存在,跳过
- 2026-11-05 17:59:14.906 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移323: 已确保 language_score 列存在于 dan_assessment_results
- 2026-11-05 17:59:14.908 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移324: octopus_effect_record.happened_at 列已存在或添加失败: StatementCallback; bad SQL grammar [ALTER TABLE octopus_effect_record ADD COLUMN happened_at DATETIME COMMENT '成效发生时间']; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'happened_at'
- 2026-11-05 17:59:14.909 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移325: 已回填 article_reading_records.article_id 0 条记录
- 2026-11-05 17:59:14.910 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 article_reading_records.reading_completed 已存在,跳过
- 2026-11-05 17:59:14.912 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 octopus_key_person.first_meet_time 已存在,跳过
- 2026-11-05 17:59:14.912 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移342: octopus_key_person.first_meet_time 列已添加
- 2026-11-05 17:59:14.913 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 octopus_key_person.referrer_id 已存在,跳过
- 2026-11-05 17:59:14.913 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移342: octopus_key_person.referrer_id 列已添加
- 2026-11-05 17:59:14.914 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 octopus_key_person.system_user_id 已存在,跳过
- 2026-11-05 17:59:14.914 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移342: octopus_key_person.system_user_id 列已添加
- 2026-11-05 17:59:14.916 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 report_type_registry.expected_indicators 已存在,跳过
- 2026-11-05 17:59:14.917 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.collect_validation 已存在,跳过
- 2026-11-05 17:59:14.923 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_a1 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.924 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_a2 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.925 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b2 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.926 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b3 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.927 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b4 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.928 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b5 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.929 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b6 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.930 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_c1 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.931 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 gut_flora 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.932 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 gut_flora_beijing 已有指标项定义,跳过种子
- 2026-11-05 17:59:14.933 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移355: 已创建fat_weight_record表
- 2026-11-05 17:59:14.934 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移356: 已创建fat_diet_record表
- 2026-11-05 17:59:14.935 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移357: 已创建fat_exercise_record表
- 2026-11-05 17:59:14.936 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移358: 已创建fat_goal表
- 2026-11-05 17:59:14.938 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.vendor_visible 已存在,跳过
- 2026-11-05 17:59:14.939 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.contraindicated_diseases 已存在,跳过
- 2026-11-05 17:59:14.940 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.allergen_tags 已存在,跳过
- 2026-11-05 17:59:14.941 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.drug_interaction_flags 已存在,跳过
- 2026-11-05 17:59:14.942 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移368: 已创建drug_interactions表
- 2026-11-05 17:59:14.944 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移369: 已创建disease_intake_limits表
- 2026-11-05 17:59:14.959 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移370: drug_interactions种子数据初始化完成
- 2026-11-05 17:59:14.966 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移371: disease_intake_limits种子数据初始化完成
- 2026-11-05 17:59:14.968 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.source_kind 已存在,跳过
- 2026-11-05 17:59:14.969 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.report_type_scope 已存在,跳过
- 2026-11-05 17:59:14.970 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.value_type 已存在,跳过
- 2026-11-05 17:59:14.972 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.good_direction 已存在,跳过
- 2026-11-05 17:59:14.973 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.dimension_code 已存在,跳过
- 2026-11-05 17:59:14.973 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移356: indicator_definitions 已补齐统一指标层 5 列
- 2026-11-05 17:59:14.974 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.subject_id 已存在,跳过
- 2026-11-05 17:59:14.976 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.family_id 已存在,跳过
- 2026-11-05 17:59:14.977 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.report_id 已存在,跳过
- 2026-11-05 17:59:14.979 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.report_date 已存在,跳过
- 2026-11-05 17:59:14.980 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.unit 已存在,跳过
- 2026-11-05 17:59:14.982 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.status 已存在,跳过
- 2026-11-05 17:59:14.982 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移357: indicator_values 已补齐统一观测时序 6 列
- 2026-11-05 17:59:14.984 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移358: 已清理 indicator_values 重复行(如有)
- 2026-11-05 17:59:14.985 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移358: uk_source_definition 已存在,跳过
- 2026-11-05 17:59:14.987 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移358: idx_subject_def_date 已存在,跳过
- 2026-11-05 17:59:14.988 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移359: 已创建 indicator_mapping_rules 表
- 2026-11-05 17:59:14.990 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移360: 已创建 indicator_correlations 表
- 2026-11-05 17:59:14.991 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_indicators.collection_date 已存在,跳过
- 2026-11-05 17:59:14.991 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移361: health_indicators.collection_date 已确认存在
- 2026-11-05 17:59:14.996 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建procurement_tasks表
- 2026-11-05 17:59:15.004 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 diet_preferences.no_preference 已存在,跳过
- 2026-11-05 17:59:15.030 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移366: 9.9 元/月健康会员统一使用 BASIC 体验会员,已移除重复的 LITE 等级(0 行)
- 2026-11-05 17:59:15.033 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.tags 已存在,跳过
- 2026-11-05 17:59:15.033 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移373: products.tags 已确认存在
- 2026-11-05 17:59:15.034 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移374: 已创建/确认 user_content_weights 表
- 2026-11-05 17:59:15.044 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移375: article_quiz_records 表结构修复完成
- 2026-11-05 17:59:15.046 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_status.lifestyle 已存在,跳过
- 2026-11-05 17:59:15.047 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 diet_preferences.diet_structure 已存在,跳过
- 2026-11-05 17:59:15.049 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移378: member_indicator_current 表就绪
- 2026-11-05 17:59:15.050 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移379: report_member_permissions 表就绪
- 2026-11-05 17:59:15.052 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移381: 已创建/确认 activity_poster_templates 表
- 2026-11-05 17:59:15.085 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移381: 默认海报模板种子数据已确认
- 2026-11-05 17:59:15.119 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移386: 已清理规划师占位数据 0 行,teacher_status 默认值改为 NULL
- 2026-11-05 17:59:15.121 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移387: 服务角色申请菜单已下线(菜单 1 行,授权 0 行)
- 2026-11-05 17:59:15.123 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.intro 已存在,跳过
- 2026-11-05 17:59:15.124 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.tags 已存在,跳过
- 2026-11-05 17:59:15.125 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_status.signature 已存在,跳过
- 2026-11-05 17:59:15.127 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_status.signed_at 已存在,跳过
- 2026-11-05 17:59:15.128 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 water_record.task_id 已存在,跳过
- 2026-11-05 17:59:15.130 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_platform_exchange_record.family_coupon_id 已存在,跳过
- 2026-11-05 17:59:15.131 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.poster_template_id 已存在,跳过
- 2026-11-05 17:59:15.132 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移389: 已创建 special_price_deals 表
- 2026-11-05 17:59:15.134 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.special_deal_id 已存在,跳过
- 2026-11-05 17:59:15.135 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_registrations.cancelled_at 已存在,跳过
- 2026-11-05 17:59:15.136 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_registrations.cancel_reason 已存在,跳过
- 2026-11-05 17:59:15.137 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_feedback.updated_at 已存在,跳过
- 2026-11-05 17:59:15.138 WARN 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移392: 添加 activity_feedback.updated_at / uk_activity_child 失败(可能已存在): StatementCallback; bad SQL grammar [ALTER TABLE activity_feedback ADD UNIQUE KEY uk_activity_child (activity_id, child_id)]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate key name 'uk_activity_child'
- 2026-11-05 17:59:15.140 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移393: 已创建 organizations 表
- 2026-11-05 17:59:15.141 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移393b: 已创建 org_members 表
- 2026-11-05 17:59:15.142 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移394: 已创建/确认 planner_cert_categories 表
- 2026-11-05 17:59:15.162 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移394: 首批学习种类种子数据已确认
- 2026-11-05 17:59:15.164 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移395: 已创建/确认 planner_courses 表
- 2026-11-05 17:59:15.165 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移396: 已创建/确认 planner_course_progress 表
- 2026-11-05 17:59:15.166 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移397: 已创建/确认 planner_offline_course_map 表
- 2026-11-05 17:59:15.167 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移398: 已创建/确认 activity_checkins 表
- 2026-11-05 17:59:15.168 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移399: 已创建/确认 planner_certifications 表
- 2026-11-05 17:59:15.171 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移400: 已创建/确认考核三表(试卷/题库/作答记录)
- 2026-11-05 17:59:15.172 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移401: 存量规划师基础类别认证补登 0 行
- 2026-11-05 17:59:15.205 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移402: products.delivery_method COMMENT 已增加 6=同城配送
- 2026-11-05 17:59:15.247 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移402: product_orders.delivery_method COMMENT 已增加 6=同城配送
- 2026-11-05 17:59:15.263 INFO 13416 --- [eduler_Worker-3] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
- 2026-11-05 17:59:15.265 DEBUG 13416 --- [eduler_Worker-3] c.e.c.m.T.selectList : ==> Preparing: SELECT id,flow_id,flow_version,family_id,family_member_id,trigger_source,status,started_at,finished_at,error_reason,created_at,updated_at FROM task_orchestration_executions WHERE (status = ?) LIMIT 20
- 2026-11-05 17:59:15.265 DEBUG 13416 --- [eduler_Worker-3] c.e.c.m.T.selectList : ==> Parameters: running(String)
- 2026-11-05 17:59:15.267 DEBUG 13416 --- [eduler_Worker-3] c.e.c.m.T.selectList : <== Total: 0
- 2026-11-05 17:59:15.267 INFO 13416 --- [eduler_Worker-3] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
- 2026-11-05 17:59:15.297 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移404: articles.audio_url 已改为 MEDIUMTEXT
- 2026-11-05 17:59:15.300 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移407: 已创建 cf_balance 表
- 2026-11-05 17:59:15.301 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移407: 已创建 cf_balance_log 表
- 2026-11-05 17:59:15.302 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移408: 已创建 cf_earn_rule 表
- 2026-11-05 17:59:15.303 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移408: 已创建 cf_earn_rule_history 表
- 2026-11-05 17:59:15.317 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移409: 已创建 cf_direct_sales_tier 表
- 2026-11-05 17:59:15.318 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移409: 已创建 cf_indirect_sales_tier 表
- 2026-11-05 17:59:15.319 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移410: 已创建 cf_earn_daily_limit 表
- 2026-11-05 17:59:15.334 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.family_id 已存在,跳过
- 2026-11-05 17:59:15.336 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_coupon.family_id 已存在,跳过
- 2026-11-05 17:59:15.338 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移412: 已创建 service_config 表
- 2026-11-05 17:59:15.353 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移413: service_config.product_key 已存在,跳过加列
- 2026-11-05 17:59:15.354 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移413: product_config 表不存在(本基线无该表),跳过数据并入(幂等空跑)
- 2026-11-05 17:59:15.355 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移414: audit_log 表已就绪
- 2026-11-05 17:59:15.357 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移415: family_food_overview 表已就绪
- 2026-11-05 17:59:15.360 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 cf_balance_log.operator_user_id 已存在,跳过
- 2026-11-05 17:59:15.372 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1055 refId=0,跳过
- 2026-11-05 17:59:15.372 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1107 refId=0,跳过
- 2026-11-05 17:59:15.373 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1113 refId=0,跳过
- 2026-11-05 17:59:15.374 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1121 refId=0,跳过
- 2026-11-05 17:59:15.375 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1127 refId=0,跳过
- 2026-11-05 17:59:15.376 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1133 refId=0,跳过
- 2026-11-05 17:59:15.377 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1140 refId=0,跳过
- 2026-11-05 17:59:15.378 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1146 refId=0,跳过
- 2026-11-05 17:59:15.379 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1152 refId=0,跳过
- 2026-11-05 17:59:15.380 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1159 refId=0,跳过
- 2026-11-05 17:59:15.380 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1165 refId=0,跳过
- 2026-11-05 17:59:15.381 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1177 refId=0,跳过
- 2026-11-05 17:59:15.382 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1183 refId=0,跳过
- 2026-11-05 17:59:15.383 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1189 refId=0,跳过
- 2026-11-05 17:59:15.383 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1195 refId=0,跳过
- 2026-11-05 17:59:15.384 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1201 refId=0,跳过
- 2026-11-05 17:59:15.385 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1207 refId=0,跳过
- 2026-11-05 17:59:15.385 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1213 refId=0,跳过
- 2026-11-05 17:59:15.386 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1222 refId=0,跳过
- 2026-11-05 17:59:15.386 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1228 refId=0,跳过
- 2026-11-05 17:59:15.388 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1234 refId=0,跳过
- 2026-11-05 17:59:15.388 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1240 refId=0,跳过
- 2026-11-05 17:59:15.389 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1253 refId=0,跳过
- 2026-11-05 17:59:15.389 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1265 refId=0,跳过
- 2026-11-05 17:59:15.390 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1277 refId=0,跳过
- 2026-11-05 17:59:15.391 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1289 refId=0,跳过
- 2026-11-05 17:59:15.392 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1301 refId=0,跳过
- 2026-11-05 17:59:15.392 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1307 refId=0,跳过
- 2026-11-05 17:59:15.393 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1319 refId=0,跳过
- 2026-11-05 17:59:15.394 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1331 refId=0,跳过
- 2026-11-05 17:59:15.395 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1343 refId=0,跳过
- 2026-11-05 17:59:15.396 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1355 refId=0,跳过
- 2026-11-05 17:59:15.397 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1361 refId=0,跳过
- 2026-11-05 17:59:15.398 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1379 refId=0,跳过
- 2026-11-05 17:59:15.399 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1385 refId=0,跳过
- 2026-11-05 17:59:15.399 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1397 refId=0,跳过
- 2026-11-05 17:59:15.400 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1409 refId=0,跳过
- 2026-11-05 17:59:15.401 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1421 refId=0,跳过
- 2026-11-05 17:59:15.402 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1433 refId=0,跳过
- 2026-11-05 17:59:15.403 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1451 refId=0,跳过
- 2026-11-05 17:59:15.403 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1515 refId=0,跳过
- 2026-11-05 17:59:15.404 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=2017 refId=0,跳过
- 2026-11-05 17:59:15.917 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1017 refId=1,跳过
- 2026-11-05 17:59:15.918 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1055 refId=2,跳过
- 2026-11-05 17:59:15.919 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1107 refId=3,跳过
- 2026-11-05 17:59:15.919 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1113 refId=4,跳过
- 2026-11-05 17:59:15.920 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1121 refId=5,跳过
- 2026-11-05 17:59:15.921 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1127 refId=6,跳过
- 2026-11-05 17:59:15.921 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1133 refId=7,跳过
- 2026-11-05 17:59:15.922 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1140 refId=8,跳过
- 2026-11-05 17:59:15.923 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1146 refId=9,跳过
- 2026-11-05 17:59:15.923 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1152 refId=10,跳过
- 2026-11-05 17:59:15.924 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1159 refId=11,跳过
- 2026-11-05 17:59:15.925 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1165 refId=12,跳过
- 2026-11-05 17:59:15.925 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1177 refId=13,跳过
- 2026-11-05 17:59:15.926 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1183 refId=14,跳过
- 2026-11-05 17:59:15.927 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1189 refId=15,跳过
- 2026-11-05 17:59:15.928 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1195 refId=16,跳过
- 2026-11-05 17:59:15.929 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1201 refId=17,跳过
- 2026-11-05 17:59:15.930 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1207 refId=18,跳过
- 2026-11-05 17:59:15.931 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1213 refId=19,跳过
- 2026-11-05 17:59:15.931 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1222 refId=20,跳过
- 2026-11-05 17:59:15.932 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1228 refId=21,跳过
- 2026-11-05 17:59:15.933 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1234 refId=22,跳过
- 2026-11-05 17:59:15.933 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1240 refId=23,跳过
- 2026-11-05 17:59:15.934 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1253 refId=24,跳过
- 2026-11-05 17:59:15.935 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1265 refId=25,跳过
- 2026-11-05 17:59:15.935 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1277 refId=26,跳过
- 2026-11-05 17:59:15.936 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1289 refId=27,跳过
- 2026-11-05 17:59:15.937 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1301 refId=28,跳过
- 2026-11-05 17:59:15.937 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1307 refId=29,跳过
- 2026-11-05 17:59:15.938 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1319 refId=30,跳过
- 2026-11-05 17:59:15.939 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1331 refId=31,跳过
- 2026-11-05 17:59:15.939 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1343 refId=32,跳过
- 2026-11-05 17:59:15.940 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1355 refId=33,跳过
- 2026-11-05 17:59:15.941 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1361 refId=34,跳过
- 2026-11-05 17:59:15.942 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1379 refId=35,跳过
- 2026-11-05 17:59:15.942 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1385 refId=36,跳过
- 2026-11-05 17:59:15.943 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1397 refId=37,跳过
- 2026-11-05 17:59:15.944 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1409 refId=38,跳过
- 2026-11-05 17:59:15.945 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1421 refId=39,跳过
- 2026-11-05 17:59:15.946 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1433 refId=40,跳过
- 2026-11-05 17:59:15.947 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1451 refId=41,跳过
- 2026-11-05 17:59:15.947 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1515 refId=42,跳过
- 2026-11-05 17:59:15.948 DEBUG 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=2017 refId=43,跳过
- 2026-11-05 17:59:15.948 INFO 13416 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: 三套旧 CF 账本迁移完成,本次迁入 0 笔
- 2026-11-05 17:59:15.949 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移417: 旧账本存量迁移完成,本次新增 0 笔
- 2026-11-05 17:59:15.959 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.max_daily_analyze 已存在,跳过
- 2026-11-05 17:59:15.960 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移420: 已创建 ppoint_consumption_log 表
- 2026-11-05 17:59:15.963 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : activities表audience_scope列已存在,跳过
- 2026-11-05 17:59:15.964 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : activities表audience_type列已存在,跳过
- 2026-11-05 17:59:15.966 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移422: health_indicators.collection_date 已存在,放开实体映射的前置条件满足
- 2026-11-05 17:59:15.967 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.date_source 已存在,跳过
- 2026-11-05 17:59:15.968 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.ref_range_snapshot 已存在,跳过
- 2026-11-05 17:59:15.968 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移422: indicator_values 已补齐日期来源与参考范围快照 2 列
- 2026-11-05 17:59:15.969 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移423: 已创建 body_fat_scale_records 表
- 2026-11-05 17:59:15.970 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.plan_type 已存在,跳过
- 2026-11-05 17:59:15.972 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移425: 已创建 attribution_norm_values 表
- 2026-11-05 17:59:15.973 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移425: 常模种子为占位模板(placeholder=true),0 行导入,等待业务侧填充真实常模
- 2026-11-05 17:59:16.061 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移425-种子: 家庭归因问卷模板已存在(title=家庭归因分析问卷(第八章16条)),幂等启用(enabled=1)
- 2026-11-05 17:59:16.062 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移426: 已创建 attribution_reports 表
- 2026-11-05 17:59:16.064 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移427: 已创建 content_dimension_threshold 表
- 2026-11-05 17:59:16.065 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移428: 已创建 coupon_gift_transfer 表
- 2026-11-05 17:59:16.066 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移428: family_coupon.is_gift 列已存在,跳过
- 2026-11-05 17:59:16.067 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移429: 已创建 indicator_favorite 表
- 2026-11-05 17:59:16.068 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移430跳过:products.purchase_price 已是 int 类型
- 2026-11-05 17:59:16.072 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移431完成:销售奖档位门槛×100(分),档位名新秀/小成/中富/大成/至富
- 2026-11-05 17:59:16.083 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移[家庭名回填XX家庭] 影响行数=0
- 2026-11-05 17:59:16.093 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移[家庭名回填XX家庭] 影响行数=0
- 2026-11-05 17:59:16.094 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 report_type_registry.linked_product_id 已存在,跳过
- 2026-11-05 17:59:16.096 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已创建 family_metric_agg_config 表
- 2026-11-05 17:59:16.122 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.body
- 2026-11-05 17:59:16.154 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.mind
- 2026-11-05 17:59:16.179 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.wisdom
- 2026-11-05 17:59:16.204 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.action
- 2026-11-05 17:59:16.229 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.wealth
- 2026-11-05 17:59:16.254 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.overall
- 2026-11-05 17:59:16.279 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 pearl.resources
- 2026-11-05 17:59:16.313 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 octopus.effects
- 2026-11-05 17:59:16.597 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移434: 已创建 product_sku_combo_items 表
- 2026-11-05 17:59:16.599 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移434: product_orders.sku_id 列已存在,跳过
- 2026-11-05 17:59:16.601 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.calories_kcal 已存在,跳过
- 2026-11-05 17:59:16.602 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.protein_g 已存在,跳过
- 2026-11-05 17:59:16.603 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.fat_g 已存在,跳过
- 2026-11-05 17:59:16.604 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.carb_g 已存在,跳过
- 2026-11-05 17:59:16.605 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.fiber_g 已存在,跳过
- 2026-11-05 17:59:16.606 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.nutrition_tags 已存在,跳过
- 2026-11-05 17:59:16.606 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移436: products 表营养数据字段已就绪
- 2026-11-05 17:59:16.607 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.team_id 已存在,跳过
- 2026-11-05 17:59:16.607 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移437: activities.team_id 列已就绪
- 2026-11-05 17:59:16.608 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移437: 已创建 activity_team 表
- 2026-11-05 17:59:16.609 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移437: 已创建 activity_team_member 表
- 2026-11-05 17:59:16.611 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移437: 已创建 service_assignment 表
- 2026-11-05 17:59:16.612 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移440: 已创建 product_combo_items 表
- 2026-11-05 17:59:16.722 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移441: 已删除 product_sku_combo_items 表
- 2026-11-05 17:59:16.723 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移442: 已删除 product_bundle_items 表
- 2026-11-05 17:59:16.724 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 users.is_child 已存在,跳过
- 2026-11-05 17:59:16.727 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 supply_system_member.invite_code 已存在,跳过
- 2026-11-05 17:59:16.728 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移444: supply_system_member.invite_code 唯一索引已存在,跳过
- 2026-11-05 17:59:16.730 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_dimension_config.legacy_alias 已存在,跳过
- 2026-11-05 17:59:16.731 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_dimension_config.source_system 已存在,跳过
- 2026-11-05 17:59:16.732 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_dimension_config.wuxing_rule_ref 已存在,跳过
- 2026-11-05 17:59:16.733 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_dimension_config.node_kind 已存在,跳过
- 2026-11-05 17:59:16.734 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移445: product_dimension_config 注册中心 4 列就绪
- 2026-11-05 17:59:16.735 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.parent_id 已存在,跳过
- 2026-11-05 17:59:16.736 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.legacy_alias 已存在,跳过
- 2026-11-05 17:59:16.736 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移446: indicator_definitions 混排 2 列就绪
- 2026-11-05 17:59:17.111 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移447: 统一维度注册中心 5 根 + 7 body 子维度 seed 完成
- 2026-11-05 17:59:17.111 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 开始初始化食品相关表...
- 2026-11-05 17:59:17.124 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.budget_monthly 已存在,跳过
- 2026-11-05 17:59:17.125 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.family_taste_preferences 已存在,跳过
- 2026-11-05 17:59:17.126 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.cuisine_style 已存在,跳过
- 2026-11-05 17:59:17.128 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.meal_count 已存在,跳过
- 2026-11-05 17:59:17.129 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.cooking_ability 已存在,跳过
- 2026-11-05 17:59:17.129 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 食品相关表初始化完成
- 2026-11-05 17:59:17.129 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : init-test-data=false,跳过测试/种子数据初始化(生产模式)
- 2026-11-05 17:59:17.129 INFO 13416 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据库初始化完成!
- ]]></system-out>
- </testcase>
- <testcase name="recordRead_NoDuration" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.04">
- <error message=" Only void methods can doNothing()! Example of correct use of doNothing(): doNothing(). doThrow(new RuntimeException()) .when(mock).someVoidMethod(); Above means: someVoidMethod() does nothing the 1st time but throws an exception the 2nd time is called" type="org.mockito.exceptions.base.MockitoException">org.mockito.exceptions.base.MockitoException:
- Only void methods can doNothing()!
- Example of correct use of doNothing():
- doNothing().
- doThrow(new RuntimeException())
- .when(mock).someVoidMethod();
- Above means:
- someVoidMethod() does nothing the 1st time but throws an exception the 2nd time is called
- at com.etotem.cfc.controller.ArticleControllerTest.recordRead_NoDuration(ArticleControllerTest.java:226)
- </error>
- </testcase>
- <testcase name="featured_Success" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.019">
- <failure message="expected: <2> but was: <0>" type="org.opentest4j.AssertionFailedError"><![CDATA[org.opentest4j.AssertionFailedError: expected: <2> but was: <0>
- at com.etotem.cfc.controller.ArticleControllerTest.featured_Success(ArticleControllerTest.java:177)
- ]]></failure>
- </testcase>
- <testcase name="list_LoggedInUser" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.012">
- <failure message="expected: not <null>" type="org.opentest4j.AssertionFailedError"><![CDATA[org.opentest4j.AssertionFailedError: expected: not <null>
- at com.etotem.cfc.controller.ArticleControllerTest.list_LoggedInUser(ArticleControllerTest.java:132)
- ]]></failure>
- </testcase>
- <testcase name="detail_Forbidden" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.008"/>
- <testcase name="list_Success" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.012">
- <failure message="expected: not <null>" type="org.opentest4j.AssertionFailedError"><![CDATA[org.opentest4j.AssertionFailedError: expected: not <null>
- at com.etotem.cfc.controller.ArticleControllerTest.list_Success(ArticleControllerTest.java:70)
- ]]></failure>
- </testcase>
- <testcase name="recordRead_WithMemberId" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.014">
- <error message=" Only void methods can doNothing()! Example of correct use of doNothing(): doNothing(). doThrow(new RuntimeException()) .when(mock).someVoidMethod(); Above means: someVoidMethod() does nothing the 1st time but throws an exception the 2nd time is called" type="org.mockito.exceptions.base.MockitoException">org.mockito.exceptions.base.MockitoException:
- Only void methods can doNothing()!
- Example of correct use of doNothing():
- doNothing().
- doThrow(new RuntimeException())
- .when(mock).someVoidMethod();
- Above means:
- someVoidMethod() does nothing the 1st time but throws an exception the 2nd time is called
- at com.etotem.cfc.controller.ArticleControllerTest.recordRead_WithMemberId(ArticleControllerTest.java:215)
- </error>
- </testcase>
- <testcase name="featured_DefaultSize" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.013">
- <failure message="expected: <1> but was: <0>" type="org.opentest4j.AssertionFailedError"><![CDATA[org.opentest4j.AssertionFailedError: expected: <1> but was: <0>
- at com.etotem.cfc.controller.ArticleControllerTest.featured_DefaultSize(ArticleControllerTest.java:190)
- ]]></failure>
- </testcase>
- <testcase name="list_ByKeyword" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.014">
- <error type="java.lang.NullPointerException">java.lang.NullPointerException
- at com.etotem.cfc.controller.ArticleControllerTest.list_ByKeyword(ArticleControllerTest.java:109)
- </error>
- </testcase>
- <testcase name="detail_Success" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.017"/>
- <testcase name="recordRead_Success" classname="com.etotem.cfc.controller.ArticleControllerTest" time="0.017">
- <error message=" Only void methods can doNothing()! Example of correct use of doNothing(): doNothing(). doThrow(new RuntimeException()) .when(mock).someVoidMethod(); Above means: someVoidMethod() does nothing the 1st time but throws an exception the 2nd time is called" type="org.mockito.exceptions.base.MockitoException">org.mockito.exceptions.base.MockitoException:
- Only void methods can doNothing()!
- Example of correct use of doNothing():
- doNothing().
- doThrow(new RuntimeException())
- .when(mock).someVoidMethod();
- Above means:
- someVoidMethod() does nothing the 1st time but throws an exception the 2nd time is called
- at com.etotem.cfc.controller.ArticleControllerTest.recordRead_Success(ArticleControllerTest.java:201)
- </error>
- </testcase>
- </testsuite>
|