TEST-com.etotem.cfc.controller.ProductControllerTest.xml 278 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <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.ProductControllerTest" time="39.685" tests="16" errors="3" skipped="0" failures="0">
  3. <properties>
  4. <property name="sun.desktop" value="windows"/>
  5. <property name="awt.toolkit" value="sun.awt.windows.WToolkit"/>
  6. <property name="file.encoding.pkg" value="sun.io"/>
  7. <property name="java.specification.version" value="1.8"/>
  8. <property name="sun.cpu.isalist" value="amd64"/>
  9. <property name="sun.jnu.encoding" value="GBK"/>
  10. <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;"/>
  11. <property name="java.vm.vendor" value="Oracle Corporation"/>
  12. <property name="sun.arch.data.model" value="64"/>
  13. <property name="user.variant" value=""/>
  14. <property name="java.vendor.url" value="http://java.oracle.com/"/>
  15. <property name="user.timezone" value="Asia/Shanghai"/>
  16. <property name="java.vm.specification.version" value="1.8"/>
  17. <property name="os.name" value="Windows 8.1"/>
  18. <property name="user.country" value="CN"/>
  19. <property name="sun.java.launcher" value="SUN_STANDARD"/>
  20. <property name="sun.boot.library.path" value="D:\jdk1.8.0_25\jre\bin"/>
  21. <property name="sun.java.command" value="C:\Users\iwt\AppData\Local\Temp\surefire9137460716703824592\surefirebooter3810628401139540510.jar C:\Users\iwt\AppData\Local\Temp\surefire9137460716703824592 2026-11-06T01-59-28_819-jvmRun1 surefire807294219647491431tmp surefire_07810640473017728092tmp"/>
  22. <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;"/>
  23. <property name="sun.cpu.endian" value="little"/>
  24. <property name="user.home" value="C:\Users\iwt"/>
  25. <property name="user.language" value="zh"/>
  26. <property name="java.specification.vendor" value="Oracle Corporation"/>
  27. <property name="java.home" value="D:\jdk1.8.0_25\jre"/>
  28. <property name="basedir" value="D:\cfc\cfc-backend"/>
  29. <property name="file.separator" value="\"/>
  30. <property name="line.separator" value="&#10;"/>
  31. <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
  32. <property name="java.specification.name" value="Java Platform API Specification"/>
  33. <property name="java.awt.graphicsenv" value="sun.awt.Win32GraphicsEnvironment"/>
  34. <property name="surefire.real.class.path" value="C:\Users\iwt\AppData\Local\Temp\surefire9137460716703824592\surefirebooter3810628401139540510.jar"/>
  35. <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"/>
  36. <property name="user.script" value=""/>
  37. <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
  38. <property name="java.runtime.version" value="1.8.0_25-b18"/>
  39. <property name="user.name" value="iwt"/>
  40. <property name="path.separator" value=";"/>
  41. <property name="os.version" value="6.3"/>
  42. <property name="java.endorsed.dirs" value="D:\jdk1.8.0_25\jre\lib\endorsed"/>
  43. <property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
  44. <property name="file.encoding" value="GBK"/>
  45. <property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
  46. <property name="skipTests" value="false"/>
  47. <property name="localRepository" value="C:\Users\iwt\.m2\repository"/>
  48. <property name="java.vendor.url.bug" value="http://bugreport.sun.com/bugreport/"/>
  49. <property name="java.io.tmpdir" value="C:\Users\iwt\AppData\Local\Temp\"/>
  50. <property name="java.version" value="1.8.0_25"/>
  51. <property name="user.dir" value="D:\cfc\cfc-backend"/>
  52. <property name="os.arch" value="amd64"/>
  53. <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
  54. <property name="java.awt.printerjob" value="sun.awt.windows.WPrinterJob"/>
  55. <property name="sun.os.patch.level" value=""/>
  56. <property name="java.library.path" value="D:\jdk1.8.0_25\jre\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\tools\apache-maven-3.9.9\bin;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;."/>
  57. <property name="java.vm.info" value="mixed mode"/>
  58. <property name="java.vendor" value="Oracle Corporation"/>
  59. <property name="java.vm.version" value="25.25-b02"/>
  60. <property name="java.ext.dirs" value="D:\jdk1.8.0_25\jre\lib\ext;C:\WINDOWS\Sun\Java\lib\ext"/>
  61. <property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
  62. <property name="java.class.version" value="52.0"/>
  63. <property name="maven.test.failure.ignore" value="true"/>
  64. </properties>
  65. <testcase name="shelve_PublishSuccess" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.034">
  66. <error message="&#10;Invalid use of argument matchers!&#10;3 matchers expected, 1 recorded:&#10;-&gt; at com.etotem.cfc.controller.ProductControllerTest.shelve_PublishSuccess(ProductControllerTest.java:289)&#10;&#10;This exception may occur if matchers are combined with raw values:&#10; //incorrect:&#10; someMethod(any(), &quot;raw String&quot;);&#10;When using matchers, all arguments have to be provided by matchers.&#10;For example:&#10; //correct:&#10; someMethod(any(), eq(&quot;String by matcher&quot;));&#10;&#10;For more info see javadoc for Matchers class.&#10;" type="org.mockito.exceptions.misusing.InvalidUseOfMatchersException">org.mockito.exceptions.misusing.InvalidUseOfMatchersException:
  67. Invalid use of argument matchers!
  68. 3 matchers expected, 1 recorded:
  69. -> at com.etotem.cfc.controller.ProductControllerTest.shelve_PublishSuccess(ProductControllerTest.java:289)
  70. This exception may occur if matchers are combined with raw values:
  71. //incorrect:
  72. someMethod(any(), "raw String");
  73. When using matchers, all arguments have to be provided by matchers.
  74. For example:
  75. //correct:
  76. someMethod(any(), eq("String by matcher"));
  77. For more info see javadoc for Matchers class.
  78. at com.etotem.cfc.controller.ProductControllerTest.shelve_PublishSuccess(ProductControllerTest.java:289)
  79. </error>
  80. <system-out><![CDATA[2026-11-06 02:19:11.710 INFO 17028 --- [ main] .b.t.c.SpringBootTestContextBootstrapper : Neither @ContextConfiguration nor @ContextHierarchy found for test class [com.etotem.cfc.controller.ProductControllerTest], using SpringBootContextLoader
  81. 2026-11-06 02:19:11.712 INFO 17028 --- [ main] o.s.t.c.support.AbstractContextLoader : Could not detect default resource locations for test class [com.etotem.cfc.controller.ProductControllerTest]: no resource found for suffixes {-context.xml, Context.groovy}.
  82. 2026-11-06 02:19:11.712 INFO 17028 --- [ main] t.c.s.AnnotationConfigContextLoaderUtils : Could not detect default configuration classes for test class [com.etotem.cfc.controller.ProductControllerTest]: ProductControllerTest does not declare any static, non-private, non-final, nested classes annotated with @Configuration.
  83. 2026-11-06 02:19:11.719 INFO 17028 --- [ main] .b.t.c.SpringBootTestContextBootstrapper : Found @SpringBootConfiguration com.etotem.cfc.CfcApplication for test class com.etotem.cfc.controller.ProductControllerTest
  84. 2026-11-06 02:19:11.721 INFO 17028 --- [ 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]
  85. 2026-11-06 02:19:11.722 INFO 17028 --- [ main] .b.t.c.SpringBootTestContextBootstrapper : Using TestExecutionListeners: [org.springframework.test.context.web.ServletTestExecutionListener@115a3d01, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@16acf573, org.springframework.test.context.event.ApplicationEventsTestExecutionListener@64fa7117, org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener@62fd0187, org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener@228f8aec, org.springframework.test.context.support.DirtiesContextTestExecutionListener@5379f4a3, org.springframework.test.context.transaction.TransactionalTestExecutionListener@643c4512, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener@6e47812b, org.springframework.test.context.event.EventPublishingTestExecutionListener@3041aee5, org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener@2c0198a2, org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener@2a934ce5, org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener@780fde45, org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrintOnlyOnFailureTestExecutionListener@45047127, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener@656025ad, org.springframework.boot.test.autoconfigure.webservices.client.MockWebServiceServerTestExecutionListener@5524b980]
  86. . ____ _ __ _ _
  87. /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
  88. ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
  89. \\/ ___)| |_)| | | | | || (_| | ) ) ) )
  90. ' |____| .__|_| |_|_| |_\__, | / / / /
  91. =========|_|==============|___/=/_/_/_/
  92. :: Spring Boot :: (v2.7.18)
  93. 2026-11-06 02:19:11.809 INFO 17028 --- [ main] c.e.c.controller.ProductControllerTest : Starting ProductControllerTest using Java 1.8.0_25 on desktop204 with PID 17028 (started by iwt in D:\cfc\cfc-backend)
  94. 2026-11-06 02:19:11.809 DEBUG 17028 --- [ main] c.e.c.controller.ProductControllerTest : Running with Spring Boot v2.7.18, Spring v5.3.31
  95. 2026-11-06 02:19:11.810 INFO 17028 --- [ main] c.e.c.controller.ProductControllerTest : No active profile set, falling back to 1 default profile: "default"
  96. 2026-11-06 02:19:12.582 INFO 17028 --- [eduler_Worker-9] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  97. 2026-11-06 02:19:12.584 DEBUG 17028 --- [eduler_Worker-9] 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
  98. 2026-11-06 02:19:12.584 DEBUG 17028 --- [eduler_Worker-9] c.e.c.m.T.selectList : ==> Parameters: running(String)
  99. 2026-11-06 02:19:12.585 DEBUG 17028 --- [eduler_Worker-9] c.e.c.m.T.selectList : <== Total: 0
  100. 2026-11-06 02:19:12.585 INFO 17028 --- [eduler_Worker-9] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  101. 2026-11-06 02:19:13.796 INFO 17028 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
  102. 2026-11-06 02:19:13.796 INFO 17028 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode.
  103. 2026-11-06 02:19:14.070 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  104. 2026-11-06 02:19:14.071 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:14.068(Timestamp), 2026-11-06 02:19:14.068(Timestamp), 20(Integer)
  105. 2026-11-06 02:19:14.073 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.H.listPendingRetry : <== Total: 0
  106. 2026-11-06 02:19:14.074 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  107. 2026-11-06 02:19:14.075 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:14.068(Timestamp)
  108. 2026-11-06 02:19:14.075 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  109. 2026-11-06 02:19:14.075 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:14.073(Timestamp)
  110. 2026-11-06 02:19:14.076 INFO 17028 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 275 ms. Found 0 Redis repository interfaces.
  111. 2026-11-06 02:19:14.076 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.A.selectList : <== Total: 0
  112. 2026-11-06 02:19:14.077 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  113. 2026-11-06 02:19:14.077 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:14.068(Timestamp)
  114. 2026-11-06 02:19:14.138 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  115. 2026-11-06 02:19:14.138 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  116. 2026-11-06 02:19:14.139 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  117. 2026-11-06 02:19:14.139 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:14.068(Timestamp)
  118. 2026-11-06 02:19:14.140 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.M.selectList : <== Total: 0
  119. 2026-11-06 02:19:14.140 INFO 17028 --- [cfc-scheduler-1] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  120. 2026-11-06 02:19:14.815 INFO 17028 --- [ main] com.zaxxer.hikari.HikariDataSource : CfcHikariPool - Starting...
  121. 2026-11-06 02:19:14.823 INFO 17028 --- [ main] com.zaxxer.hikari.HikariDataSource : CfcHikariPool - Start completed.
  122. 2026-11-06 02:19:14.874 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  123. 2026-11-06 02:19:14.875 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:14.874(Timestamp), 2026-11-06 02:19:14.874(Timestamp), 20(Integer)
  124. 2026-11-06 02:19:14.877 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : <== Total: 0
  125. 2026-11-06 02:19:14.906 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  126. 2026-11-06 02:19:14.906 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:14.905(Timestamp), 2026-11-06 02:19:14.905(Timestamp), 20(Integer)
  127. 2026-11-06 02:19:14.908 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.H.listPendingRetry : <== Total: 0
  128. _ _ |_ _ _|_. ___ _ | _
  129. | | |\/|_)(_| | |_\ |_)||_|_\
  130. / |
  131. 3.5.3.1
  132. 2026-11-06 02:19:15.635 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  133. 2026-11-06 02:19:15.635 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:15.633(Timestamp)
  134. 2026-11-06 02:19:15.635 DEBUG 17028 --- [cfc-scheduler-4] 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 < ?)
  135. 2026-11-06 02:19:15.635 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:15.635(Timestamp)
  136. 2026-11-06 02:19:15.637 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.A.selectList : <== Total: 0
  137. 2026-11-06 02:19:15.637 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  138. 2026-11-06 02:19:15.638 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  139. 2026-11-06 02:19:15.638 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:15.633(Timestamp)
  140. 2026-11-06 02:19:15.639 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  141. 2026-11-06 02:19:15.640 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  142. 2026-11-06 02:19:15.640 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:15.633(Timestamp)
  143. 2026-11-06 02:19:15.641 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.M.selectList : <== Total: 0
  144. 2026-11-06 02:19:15.641 INFO 17028 --- [cfc-scheduler-3] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  145. 2026-11-06 02:19:15.668 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  146. 2026-11-06 02:19:15.669 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:15.668(Timestamp), 2026-11-06 02:19:15.668(Timestamp), 20(Integer)
  147. 2026-11-06 02:19:15.670 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : <== Total: 0
  148. 2026-11-06 02:19:16.169 INFO 17028 --- [eduler_Worker-6] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  149. 2026-11-06 02:19:16.170 DEBUG 17028 --- [eduler_Worker-6] 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
  150. 2026-11-06 02:19:16.170 DEBUG 17028 --- [eduler_Worker-6] c.e.c.m.T.selectList : ==> Parameters: running(String)
  151. 2026-11-06 02:19:16.171 DEBUG 17028 --- [eduler_Worker-6] c.e.c.m.T.selectList : <== Total: 0
  152. 2026-11-06 02:19:16.172 INFO 17028 --- [eduler_Worker-6] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  153. 2026-11-06 02:19:16.277 WARN 17028 --- [ main] com.etotem.cfc.service.WechatService : wechat.test-mode=true in non-production profile (dev)
  154. 2026-11-06 02:19:17.624 INFO 17028 --- [eduler_Worker-8] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  155. 2026-11-06 02:19:17.626 DEBUG 17028 --- [eduler_Worker-8] 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
  156. 2026-11-06 02:19:17.626 DEBUG 17028 --- [eduler_Worker-8] c.e.c.m.T.selectList : ==> Parameters: running(String)
  157. 2026-11-06 02:19:17.627 DEBUG 17028 --- [eduler_Worker-8] c.e.c.m.T.selectList : <== Total: 0
  158. 2026-11-06 02:19:17.627 INFO 17028 --- [eduler_Worker-8] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  159. 2026-11-06 02:19:18.609 INFO 17028 --- [ main] com.etotem.cfc.service.PaymentService : 微信支付使用测试模式,跳过私钥加载
  160. 2026-11-06 02:19:19.226 INFO 17028 --- [eduler_Worker-7] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  161. 2026-11-06 02:19:19.227 DEBUG 17028 --- [eduler_Worker-7] 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
  162. 2026-11-06 02:19:19.227 DEBUG 17028 --- [eduler_Worker-7] c.e.c.m.T.selectList : ==> Parameters: running(String)
  163. 2026-11-06 02:19:19.228 DEBUG 17028 --- [eduler_Worker-7] c.e.c.m.T.selectList : <== Total: 0
  164. 2026-11-06 02:19:19.228 INFO 17028 --- [eduler_Worker-7] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  165. 2026-11-06 02:19:19.434 INFO 17028 --- [ main] com.etotem.cfc.service.AiGateway : AiGateway 已启用: baseUrl=https://ai.etotem.com.cn, connectTimeout=15000ms, readTimeout=300000ms
  166. 2026-11-06 02:19:20.482 INFO 17028 --- [eduler_Worker-9] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  167. 2026-11-06 02:19:20.483 DEBUG 17028 --- [eduler_Worker-9] 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
  168. 2026-11-06 02:19:20.483 DEBUG 17028 --- [eduler_Worker-9] c.e.c.m.T.selectList : ==> Parameters: running(String)
  169. 2026-11-06 02:19:20.484 DEBUG 17028 --- [eduler_Worker-9] c.e.c.m.T.selectList : <== Total: 0
  170. 2026-11-06 02:19:20.484 INFO 17028 --- [eduler_Worker-9] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  171. 2026-11-06 02:19:20.593 INFO 17028 --- [eduler_Worker-2] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  172. 2026-11-06 02:19:20.594 DEBUG 17028 --- [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
  173. 2026-11-06 02:19:20.595 DEBUG 17028 --- [eduler_Worker-2] c.e.c.m.T.selectList : ==> Parameters: running(String)
  174. 2026-11-06 02:19:20.596 DEBUG 17028 --- [eduler_Worker-2] c.e.c.m.T.selectList : <== Total: 0
  175. 2026-11-06 02:19:20.596 INFO 17028 --- [eduler_Worker-2] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  176. 2026-11-06 02:19:20.845 INFO 17028 --- [eduler_Worker-1] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  177. 2026-11-06 02:19:20.847 DEBUG 17028 --- [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
  178. 2026-11-06 02:19:20.847 DEBUG 17028 --- [eduler_Worker-1] c.e.c.m.T.selectList : ==> Parameters: running(String)
  179. 2026-11-06 02:19:20.848 DEBUG 17028 --- [eduler_Worker-1] c.e.c.m.T.selectList : <== Total: 0
  180. 2026-11-06 02:19:20.848 INFO 17028 --- [eduler_Worker-1] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  181. 2026-11-06 02:19:21.777 INFO 17028 --- [eduler_Worker-4] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  182. 2026-11-06 02:19:21.778 DEBUG 17028 --- [eduler_Worker-4] 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
  183. 2026-11-06 02:19:21.778 DEBUG 17028 --- [eduler_Worker-4] c.e.c.m.T.selectList : ==> Parameters: running(String)
  184. 2026-11-06 02:19:21.779 DEBUG 17028 --- [eduler_Worker-4] c.e.c.m.T.selectList : <== Total: 0
  185. 2026-11-06 02:19:21.780 INFO 17028 --- [eduler_Worker-4] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  186. 2026-11-06 02:19:22.144 INFO 17028 --- [ main] c.e.c.s.impl.JdCloudStorageService : JdCloudStorageService init: endpoint=s3.cn-north-1.jdcloud-oss.com, bucket=cfc, region=cn-north-1
  187. 2026-11-06 02:19:22.149 INFO 17028 --- [ main] c.etotem.cfc.service.FileStorageService : FileStorageService init: allowedTypes=[image/jpeg, image/png, image/gif, image/webp, application/pdf, audio/mpeg, audio/wav]
  188. 2026-11-06 02:19:22.919 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  189. 2026-11-06 02:19:22.919 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:22.917(Timestamp)
  190. 2026-11-06 02:19:22.919 DEBUG 17028 --- [cfc-scheduler-4] 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 < ?)
  191. 2026-11-06 02:19:22.920 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:22.918(Timestamp)
  192. 2026-11-06 02:19:22.920 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.A.selectList : <== Total: 0
  193. 2026-11-06 02:19:22.921 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  194. 2026-11-06 02:19:22.921 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  195. 2026-11-06 02:19:22.922 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:22.917(Timestamp)
  196. 2026-11-06 02:19:22.923 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  197. 2026-11-06 02:19:22.924 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  198. 2026-11-06 02:19:22.924 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:22.917(Timestamp)
  199. 2026-11-06 02:19:22.925 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.M.selectList : <== Total: 0
  200. 2026-11-06 02:19:22.925 INFO 17028 --- [cfc-scheduler-3] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  201. 2026-11-06 02:19:23.725 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  202. 2026-11-06 02:19:23.725 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:23.723(Timestamp)
  203. 2026-11-06 02:19:23.726 DEBUG 17028 --- [cfc-scheduler-2] 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 < ?)
  204. 2026-11-06 02:19:23.726 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:23.725(Timestamp)
  205. 2026-11-06 02:19:23.726 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.A.selectList : <== Total: 0
  206. 2026-11-06 02:19:23.727 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  207. 2026-11-06 02:19:23.727 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:23.723(Timestamp)
  208. 2026-11-06 02:19:23.728 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  209. 2026-11-06 02:19:23.728 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  210. 2026-11-06 02:19:23.729 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  211. 2026-11-06 02:19:23.729 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:23.723(Timestamp)
  212. 2026-11-06 02:19:23.731 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.M.selectList : <== Total: 0
  213. 2026-11-06 02:19:23.731 INFO 17028 --- [cfc-scheduler-1] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  214. 2026-11-06 02:19:23.800 INFO 17028 --- [ main] c.e.cfc.service.KnowledgeBaseV3Service : KB v3 loaded: 28 kbRoot keys, 87 bacteria, 24 indicators, 224 foods
  215. 2026-11-06 02:19:23.847 DEBUG 17028 --- [ main] c.e.c.m.K.selectList : ==> Preparing: SELECT id,module_key,module_name,content,version,created_at,updated_at FROM knowledge_base_section
  216. 2026-11-06 02:19:23.847 DEBUG 17028 --- [ main] c.e.c.m.K.selectList : ==> Parameters:
  217. 2026-11-06 02:19:23.852 DEBUG 17028 --- [ main] c.e.c.m.K.selectList : <== Total: 12
  218. 2026-11-06 02:19:23.857 INFO 17028 --- [ main] c.e.c.s.UnifiedKnowledgeBaseService : 统一知识库加载完成: 12 模块, 版本=2.0, 食物226 菌属87 指标139 营养素30 疾病14
  219. 2026-11-06 02:19:23.885 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  220. 2026-11-06 02:19:23.885 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:23.884(Timestamp), 2026-11-06 02:19:23.884(Timestamp), 20(Integer)
  221. 2026-11-06 02:19:23.887 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.H.listPendingRetry : <== Total: 0
  222. 2026-11-06 02:19:25.053 DEBUG 17028 --- [cfc-scheduler-2] 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 < ?)
  223. 2026-11-06 02:19:25.053 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:25.051(Timestamp)
  224. 2026-11-06 02:19:25.053 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  225. 2026-11-06 02:19:25.053 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:25.052(Timestamp)
  226. 2026-11-06 02:19:25.055 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  227. 2026-11-06 02:19:25.055 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.A.selectList : <== Total: 0
  228. 2026-11-06 02:19:25.056 DEBUG 17028 --- [cfc-scheduler-2] 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 < ?)
  229. 2026-11-06 02:19:25.056 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:25.051(Timestamp)
  230. 2026-11-06 02:19:25.057 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  231. 2026-11-06 02:19:25.058 DEBUG 17028 --- [cfc-scheduler-2] 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 < ?)
  232. 2026-11-06 02:19:25.058 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:25.051(Timestamp)
  233. 2026-11-06 02:19:25.059 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.M.selectList : <== Total: 0
  234. 2026-11-06 02:19:25.059 INFO 17028 --- [cfc-scheduler-2] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  235. 2026-11-06 02:19:25.169 DEBUG 17028 --- [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 < ?)
  236. 2026-11-06 02:19:25.169 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:25.167(Timestamp)
  237. 2026-11-06 02:19:25.170 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.A.selectList : <== Total: 0
  238. 2026-11-06 02:19:25.170 DEBUG 17028 --- [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 < ?)
  239. 2026-11-06 02:19:25.170 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:25.169(Timestamp)
  240. 2026-11-06 02:19:25.171 DEBUG 17028 --- [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 < ?)
  241. 2026-11-06 02:19:25.171 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:25.167(Timestamp)
  242. 2026-11-06 02:19:25.172 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  243. 2026-11-06 02:19:25.172 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  244. 2026-11-06 02:19:25.173 DEBUG 17028 --- [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 < ?)
  245. 2026-11-06 02:19:25.173 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:25.167(Timestamp)
  246. 2026-11-06 02:19:25.174 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.M.selectList : <== Total: 0
  247. 2026-11-06 02:19:25.174 INFO 17028 --- [cfc-scheduler-4] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  248. 2026-11-06 02:19:25.885 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  249. 2026-11-06 02:19:25.885 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:25.884(Timestamp), 2026-11-06 02:19:25.884(Timestamp), 20(Integer)
  250. 2026-11-06 02:19:25.888 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.H.listPendingRetry : <== Total: 0
  251. 2026-11-06 02:19:25.901 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  252. 2026-11-06 02:19:25.901 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:25.9(Timestamp), 2026-11-06 02:19:25.9(Timestamp), 20(Integer)
  253. 2026-11-06 02:19:25.902 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : <== Total: 0
  254. 2026-11-06 02:19:27.373 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  255. 2026-11-06 02:19:27.373 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:27.372(Timestamp), 2026-11-06 02:19:27.372(Timestamp), 20(Integer)
  256. 2026-11-06 02:19:27.375 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.H.listPendingRetry : <== Total: 0
  257. 2026-11-06 02:19:28.717 INFO 17028 --- [eduler_Worker-5] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  258. 2026-11-06 02:19:28.719 DEBUG 17028 --- [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
  259. 2026-11-06 02:19:28.719 DEBUG 17028 --- [eduler_Worker-5] c.e.c.m.T.selectList : ==> Parameters: running(String)
  260. 2026-11-06 02:19:28.720 DEBUG 17028 --- [eduler_Worker-5] c.e.c.m.T.selectList : <== Total: 0
  261. 2026-11-06 02:19:28.720 INFO 17028 --- [eduler_Worker-5] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  262. 2026-11-06 02:19:28.872 INFO 17028 --- [ main] c.e.c.s.CognitiveTrainingConfigService : 已加载 cognitive-recommendations.yml,共 6 个维度配置
  263. 2026-11-06 02:19:29.036 INFO 17028 --- [ main] com.etotem.cfc.kb.BacteriaFoodMapping : 已加载菌属-食材映射表: 22 种菌属, 2份北京菌群检测报告(移植前/后) + 公开科学文献 数据来源
  264. 2026-11-06 02:19:29.736 INFO 17028 --- [eduler_Worker-7] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  265. 2026-11-06 02:19:29.737 DEBUG 17028 --- [eduler_Worker-7] 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
  266. 2026-11-06 02:19:29.737 DEBUG 17028 --- [eduler_Worker-7] c.e.c.m.T.selectList : ==> Parameters: running(String)
  267. 2026-11-06 02:19:29.738 DEBUG 17028 --- [eduler_Worker-7] c.e.c.m.T.selectList : <== Total: 0
  268. 2026-11-06 02:19:29.739 INFO 17028 --- [eduler_Worker-7] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  269. 2026-11-06 02:19:31.129 DEBUG 17028 --- [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 < ?)
  270. 2026-11-06 02:19:31.129 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:31.128(Timestamp)
  271. 2026-11-06 02:19:31.130 DEBUG 17028 --- [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 < ?)
  272. 2026-11-06 02:19:31.130 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:31.129(Timestamp)
  273. 2026-11-06 02:19:31.131 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.A.selectList : <== Total: 0
  274. 2026-11-06 02:19:31.132 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  275. 2026-11-06 02:19:31.132 DEBUG 17028 --- [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 < ?)
  276. 2026-11-06 02:19:31.132 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:31.128(Timestamp)
  277. 2026-11-06 02:19:31.133 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  278. 2026-11-06 02:19:31.134 DEBUG 17028 --- [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 < ?)
  279. 2026-11-06 02:19:31.134 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:31.128(Timestamp)
  280. 2026-11-06 02:19:31.135 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.M.selectList : <== Total: 0
  281. 2026-11-06 02:19:31.135 INFO 17028 --- [cfc-scheduler-4] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  282. 2026-11-06 02:19:31.159 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  283. 2026-11-06 02:19:31.159 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:31.158(Timestamp), 2026-11-06 02:19:31.158(Timestamp), 20(Integer)
  284. 2026-11-06 02:19:31.161 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.H.listPendingRetry : <== Total: 0
  285. 2026-11-06 02:19:31.219 INFO 17028 --- [ main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor
  286. 2026-11-06 02:19:31.222 INFO 17028 --- [ main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
  287. 2026-11-06 02:19:31.222 INFO 17028 --- [ main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created.
  288. 2026-11-06 02:19:31.222 INFO 17028 --- [ main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized.
  289. 2026-11-06 02:19:31.222 INFO 17028 --- [ main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED'
  290. Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
  291. NOT STARTED.
  292. Currently in standby mode.
  293. Number of jobs executed: 0
  294. Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads.
  295. Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
  296. 2026-11-06 02:19:31.222 INFO 17028 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance.
  297. 2026-11-06 02:19:31.223 INFO 17028 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2
  298. 2026-11-06 02:19:31.223 INFO 17028 --- [ main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@5847abe8
  299. 2026-11-06 02:19:31.387 WARN 17028 --- [ main] .s.s.UserDetailsServiceAutoConfiguration :
  300. Using generated security password: bf35f4f7-257c-40c1-a4c2-5192b36e03ac
  301. This generated password is for development use only. Your security configuration must be updated before running your application in production.
  302. 2026-11-06 02:19:31.559 INFO 17028 --- [ main] o.s.s.web.DefaultSecurityFilterChain : Will secure any request with [org.springframework.security.web.session.DisableEncodeUrlFilter@2b8ab763, org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@36796121, org.springframework.security.web.context.SecurityContextPersistenceFilter@1eba132a, org.springframework.security.web.header.HeaderWriterFilter@4b1efc43, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@6cb11ae7, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@50f10fd6, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@5df7d601, org.springframework.security.web.session.SessionManagementFilter@2e93e70d, org.springframework.security.web.access.ExceptionTranslationFilter@63a23b69, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@13d32532]
  303. 2026-11-06 02:19:32.524 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  304. 2026-11-06 02:19:32.525 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:32.523(Timestamp)
  305. 2026-11-06 02:19:32.526 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.A.selectList : <== Total: 0
  306. 2026-11-06 02:19:32.526 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  307. 2026-11-06 02:19:32.527 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:32.525(Timestamp)
  308. 2026-11-06 02:19:32.527 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  309. 2026-11-06 02:19:32.528 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:32.523(Timestamp)
  310. 2026-11-06 02:19:32.528 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  311. 2026-11-06 02:19:32.529 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  312. 2026-11-06 02:19:32.530 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  313. 2026-11-06 02:19:32.530 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:32.523(Timestamp)
  314. 2026-11-06 02:19:32.530 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  315. 2026-11-06 02:19:32.530 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:32.529(Timestamp), 2026-11-06 02:19:32.529(Timestamp), 20(Integer)
  316. 2026-11-06 02:19:32.531 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.M.selectList : <== Total: 0
  317. 2026-11-06 02:19:32.531 INFO 17028 --- [cfc-scheduler-1] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  318. 2026-11-06 02:19:32.532 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.H.listPendingRetry : <== Total: 0
  319. 2026-11-06 02:19:34.019 INFO 17028 --- [ main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now
  320. 2026-11-06 02:19:34.019 INFO 17028 --- [ main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started.
  321. 2026-11-06 02:19:34.037 INFO 17028 --- [eduler_Worker-1] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  322. 2026-11-06 02:19:34.043 DEBUG 17028 --- [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
  323. 2026-11-06 02:19:34.044 DEBUG 17028 --- [eduler_Worker-1] c.e.c.m.T.selectList : ==> Parameters: running(String)
  324. 2026-11-06 02:19:34.046 DEBUG 17028 --- [eduler_Worker-1] c.e.c.m.T.selectList : <== Total: 0
  325. 2026-11-06 02:19:34.046 INFO 17028 --- [eduler_Worker-1] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  326. 2026-11-06 02:19:34.051 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  327. 2026-11-06 02:19:34.051 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:34.049(Timestamp)
  328. 2026-11-06 02:19:34.054 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.A.selectList : <== Total: 0
  329. 2026-11-06 02:19:34.056 INFO 17028 --- [ main] c.e.c.controller.ProductControllerTest : Started ProductControllerTest in 22.328 seconds (JVM running for 1201.07)
  330. 2026-11-06 02:19:34.057 DEBUG 17028 --- [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 < ?)
  331. 2026-11-06 02:19:34.057 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:34.056(Timestamp)
  332. 2026-11-06 02:19:34.057 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  333. 2026-11-06 02:19:34.058 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:34.049(Timestamp)
  334. 2026-11-06 02:19:34.059 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  335. 2026-11-06 02:19:34.059 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  336. 2026-11-06 02:19:34.060 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 开始初始化数据库...
  337. 2026-11-06 02:19:34.060 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  338. 2026-11-06 02:19:34.061 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:34.049(Timestamp)
  339. 2026-11-06 02:19:34.062 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据库检查完成
  340. 2026-11-06 02:19:34.063 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.M.selectList : <== Total: 0
  341. 2026-11-06 02:19:34.063 INFO 17028 --- [cfc-scheduler-3] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  342. 2026-11-06 02:19:34.085 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 从 schema.sql 加载了 379 个建表语句
  343. 2026-11-06 02:19:34.110 WARN 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 创建表失败: StatementCallback; bad SQL grammar [CREATE TABLE IF NOT EXISTS growth_records (
  344. id BIGINT AUTO_INCREMENT PRIMARY KEY,
  345. child_id BIGINT NOT NULL COMMENT '孩子ID',
  346. family_member_id BIGINT COMMENT '家庭成员ID',
  347. family_member_age INT COMMENT '家庭成员年龄(月)',
  348. parent_id BIGINT NOT NULL COMMENT '家长用户ID',
  349. family_member_id BIGINT COMMENT '关联家庭成员ID',
  350. family_member_age INT COMMENT '成员年龄快照',
  351. assessment_id BIGINT COMMENT '关联的测评结果ID',
  352. record_title VARCHAR(200) COMMENT '档案标题',
  353. child_age INT COMMENT '孩子当时年龄(月)',
  354. height VARCHAR(20) COMMENT '身高',
  355. weight VARCHAR(20) COMMENT '体重',
  356. school VARCHAR(100) COMMENT '学校名称',
  357. grade INT COMMENT '年级(数字)',
  358. academicPerformance VARCHAR(200) COMMENT '成绩/学业表现',
  359. schoolProvince VARCHAR(50) COMMENT '学校所在省',
  360. schoolCity VARCHAR(50) COMMENT '学校所在市',
  361. schoolDistrict VARCHAR(50) COMMENT '学校所在区',
  362. schoolStreet VARCHAR(100) COMMENT '学校所在街道',
  363. assessment_summary TEXT COMMENT '测评摘要',
  364. overall_score INT COMMENT '综合得分',
  365. growth_suggestions TEXT COMMENT '成长建议',
  366. task_recommendations TEXT COMMENT '任务推荐(JSON)',
  367. status VARCHAR(20) DEFAULT 'pending' COMMENT '状态: pending/completed',
  368. external_sync TINYINT DEFAULT 0 COMMENT '是否来自外部系统同步',
  369. external_source VARCHAR(100) COMMENT '外部系统来源',
  370. source_type VARCHAR(20) DEFAULT 'manual' COMMENT '来源类型: manual/platform_purchase/self_upload/supplement',
  371. source_file_url VARCHAR(500) COMMENT '原始报告文件URL',
  372. order_id BIGINT COMMENT '关联订单ID',
  373. report_date DATETIME COMMENT '测评/报告日期',
  374. parent_record_id BIGINT COMMENT '关联的原始档案ID(补充档案专用)',
  375. is_latest TINYINT(1) DEFAULT 1 COMMENT '是否同组最新记录',
  376. dedup_hash VARCHAR(64) COMMENT '去重哈希值(SHA256)',
  377. parsed_data TEXT COMMENT '上传报告的解析结果(JSON)',
  378. created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
  379. updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  380. INDEX idx_child_id (child_id),
  381. INDEX idx_parent_id (parent_id),
  382. INDEX idx_status (status),
  383. UNIQUE INDEX uk_growth_dedup_hash (dedup_hash)
  384. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;]; nested exception is java.sql.SQLSyntaxErrorException: Duplicate column name 'family_member_id'
  385. 2026-11-06 02:19:34.385 WARN 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 创建表失败: StatementCallback; bad SQL grammar [CREATE TABLE IF NOT EXISTS nutrition_age_dosage (
  386. id BIGINT AUTO_INCREMENT PRIMARY KEY,
  387. age_min_months INT NOT NULL COMMENT '产品适用的最小月龄',
  388. age_max_months INT NOT NULL COMMENT '产品适用的最大月龄',
  389. ingredient_name VARCHAR(100) NOT NULL COMMENT '成分名称',
  390. strain VARCHAR(100) DEFAULT NULL COMMENT '菌株号',
  391. amount_per_serving DECIMAL(10,2) DEFAULT NULL COMMENT '每份含量',
  392. unit VARCHAR(20) DEFAULT NULL COMMENT '单位',
  393. daily_value VARCHAR(50) DEFAULT NULL COMMENT '每日参考值%',
  394. purpose VARCHAR(200) DEFAULT NULL COMMENT '功效说明',
  395. create_time DATETIME DEFAULT CURRENT_TIMESTAMP,
  396. INDEX idx_product (product_id)
  397. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='营养产品按年龄分组的剂量建议';]; nested exception is java.sql.SQLSyntaxErrorException: Key column 'product_id' doesn't exist in table
  398. 2026-11-06 02:19:34.484 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据表检查完成
  399. 2026-11-06 02:19:34.570 INFO 17028 --- [duler_Worker-10] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  400. 2026-11-06 02:19:34.572 DEBUG 17028 --- [duler_Worker-10] 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
  401. 2026-11-06 02:19:34.572 DEBUG 17028 --- [duler_Worker-10] c.e.c.m.T.selectList : ==> Parameters: running(String)
  402. 2026-11-06 02:19:34.573 DEBUG 17028 --- [duler_Worker-10] c.e.c.m.T.selectList : <== Total: 0
  403. 2026-11-06 02:19:34.573 INFO 17028 --- [duler_Worker-10] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  404. 2026-11-06 02:19:35.612 INFO 17028 --- [eduler_Worker-6] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  405. 2026-11-06 02:19:35.614 DEBUG 17028 --- [eduler_Worker-6] 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
  406. 2026-11-06 02:19:35.614 DEBUG 17028 --- [eduler_Worker-6] c.e.c.m.T.selectList : ==> Parameters: running(String)
  407. 2026-11-06 02:19:35.616 DEBUG 17028 --- [eduler_Worker-6] c.e.c.m.T.selectList : <== Total: 0
  408. 2026-11-06 02:19:35.616 INFO 17028 --- [eduler_Worker-6] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  409. 2026-11-06 02:19:36.111 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修正管理员角色为admin
  410. 2026-11-06 02:19:36.111 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建streets表
  411. 2026-11-06 02:19:36.130 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建teacher_messages表
  412. 2026-11-06 02:19:36.171 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改rewards.child_id字段允许NULL
  413. 2026-11-06 02:19:36.205 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改admins.status字段类型
  414. 2026-11-06 02:19:36.206 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_operation_logs表
  415. 2026-11-06 02:19:36.260 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改tasks.child_id允许NULL
  416. 2026-11-06 02:19:36.302 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改tasks.deadline允许NULL
  417. 2026-11-06 02:19:36.317 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建trial_memberships表
  418. 2026-11-06 02:19:36.329 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建guide_application_records表
  419. 2026-11-06 02:19:36.331 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : category列已存在,跳过
  420. 2026-11-06 02:19:36.332 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建invite_card表
  421. 2026-11-06 02:19:36.334 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建wishes表
  422. 2026-11-06 02:19:36.335 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 个人信息补充字段已存在,跳过
  423. 2026-11-06 02:19:36.337 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 浠艾福俱乐部服务商字段已存在,跳过
  424. 2026-11-06 02:19:36.340 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_skus表
  425. 2026-11-06 02:19:36.371 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : SysConfig 种子数据已加载
  426. 2026-11-06 02:19:36.375 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : Product 种子数据已加载
  427. 2026-11-06 02:19:36.377 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : Activity 种子数据已加载
  428. 2026-11-06 02:19:36.383 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 方案规则种子数据已加载: 模板包 focus=38, keep=39
  429. 2026-11-06 02:19:36.384 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 报告类型 gut_flora 已存在,跳过
  430. 2026-11-06 02:19:36.386 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : Article 种子数据已加载
  431. 2026-11-06 02:19:36.387 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 补充 Product 种子数据已加载
  432. 2026-11-06 02:19:36.388 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : content_sections 表已创建
  433. 2026-11-06 02:19:36.394 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : ContentSection 种子数据已加载
  434. 2026-11-06 02:19:36.396 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 佣金字段已存在,跳过
  435. 2026-11-06 02:19:36.398 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : profit_rate列已存在,跳过
  436. 2026-11-06 02:19:36.399 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建commission_records表
  437. 2026-11-06 02:19:36.401 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建withdrawal_requests表
  438. 2026-11-06 02:19:36.402 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 会员字段已存在,跳过
  439. 2026-11-06 02:19:36.403 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : commission_records扩展字段已存在,跳过
  440. 2026-11-06 02:19:36.404 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建member_upgrade_records表
  441. 2026-11-06 02:19:36.405 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建article_categories表
  442. 2026-11-06 02:19:36.406 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建articles表
  443. 2026-11-06 02:19:36.407 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表字段已完整,跳过迁移
  444. 2026-11-06 02:19:36.409 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表知识中心字段已完整,跳过迁移
  445. 2026-11-06 02:19:36.410 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建article_tags表
  446. 2026-11-06 02:19:36.411 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_dimension表
  447. 2026-11-06 02:19:36.412 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_source_config表
  448. 2026-11-06 02:19:36.413 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建cart_items表
  449. 2026-11-06 02:19:36.414 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建shop_categories表
  450. 2026-11-06 02:19:36.416 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建distribution_systems表
  451. 2026-11-06 02:19:36.417 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建distribution_relations表
  452. 2026-11-06 02:19:36.418 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建after_sales_requests表
  453. 2026-11-06 02:19:36.419 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建shop_discount_rules表
  454. 2026-11-06 02:19:36.428 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_log表
  455. 2026-11-06 02:19:36.429 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_balance表
  456. 2026-11-06 02:19:36.432 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 health_report_survey 表
  457. 2026-11-06 02:19:36.433 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 health_gut_flora 表
  458. 2026-11-06 02:19:36.434 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 health_disease_risk 表
  459. 2026-11-06 02:19:36.462 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : dan_assessment_results 认知维度字段已存在,跳过
  460. 2026-11-06 02:19:36.463 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : dan_assessment_results EMI 维度字段已存在,跳过
  461. 2026-11-06 02:19:36.465 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : dan_assessment_results EMI 心理子维度字段已存在,跳过
  462. 2026-11-06 02:19:36.467 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : dan_assessment_results 大五人格维度字段已存在,跳过
  463. 2026-11-06 02:19:36.469 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_member_attributes 表已为 v1.2 结构,跳过
  464. 2026-11-06 02:19:36.470 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : users 表 show_to_family 列已存在,跳过
  465. 2026-11-06 02:19:36.471 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : tasks 表 family_member_id 列已存在,跳过
  466. 2026-11-06 02:19:36.473 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 表 role_override 列已存在,跳过
  467. 2026-11-06 02:19:36.474 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : family_members 表 id_card 列已存在,跳过
  468. 2026-11-06 02:19:36.486 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.role_override 已存在,跳过
  469. 2026-11-06 02:19:36.488 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.require_registration 已存在,跳过
  470. 2026-11-06 02:19:36.489 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.require_checkin_review 已存在,跳过
  471. 2026-11-06 02:19:36.490 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.energy_penalty_unregistered 已存在,跳过
  472. 2026-11-06 02:19:36.491 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.require_review 已存在,跳过
  473. 2026-11-06 02:19:36.492 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.approved_count 已存在,跳过
  474. 2026-11-06 02:19:36.493 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.signed_count 已存在,跳过
  475. 2026-11-06 02:19:36.546 WARN 17028 --- [ 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'
  476. 2026-11-06 02:19:36.547 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.trust_score 已存在,跳过
  477. 2026-11-06 02:19:36.548 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.intimacy_score 已存在,跳过
  478. 2026-11-06 02:19:36.550 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.communication_score 已存在,跳过
  479. 2026-11-06 02:19:36.551 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.last_interaction_at 已存在,跳过
  480. 2026-11-06 02:19:36.552 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 cart 表
  481. 2026-11-06 02:19:36.553 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : activities表visible_scope列已存在,跳过
  482. 2026-11-06 02:19:36.555 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表article_type列已存在,跳过
  483. 2026-11-06 02:19:36.556 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表word_count列已存在,跳过
  484. 2026-11-06 02:19:36.557 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : article_reading_records表task_id列已存在,跳过
  485. 2026-11-06 02:19:36.558 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : tasks表source_type列已存在,跳过
  486. 2026-11-06 02:19:36.559 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : tasks表source_id列已存在,跳过
  487. 2026-11-06 02:19:36.561 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : activities表checkin_points列已存在,跳过
  488. 2026-11-06 02:19:36.561 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_invitations表
  489. 2026-11-06 02:19:36.563 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 nutrition_indicator_mapping 表
  490. 2026-11-06 02:19:36.564 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 nutrition_deficiency_record 表
  491. 2026-11-06 02:19:36.565 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : nutrition_indicator_mapping 种子数据已存在 (15条), 跳过
  492. 2026-11-06 02:19:36.566 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 emotion_checkin 情绪打卡表
  493. 2026-11-06 02:19:36.590 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 bazi_reading_template 表
  494. 2026-11-06 02:19:36.591 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 numsoul_config 表
  495. 2026-11-06 02:19:36.593 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 user_address 表
  496. 2026-11-06 02:19:36.595 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : member_price列已存在,跳过
  497. 2026-11-06 02:19:36.596 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建member_discount_configs表
  498. 2026-11-06 02:19:36.598 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建/确认 food_recommend_idx 表
  499. 2026-11-06 02:19:36.599 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建/确认 food_recommend_idx_log 表
  500. 2026-11-06 02:19:36.605 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.target_mode 已存在,跳过
  501. 2026-11-06 02:19:36.606 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.target_value 已存在,跳过
  502. 2026-11-06 02:19:36.607 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.respond_deadline 已存在,跳过
  503. 2026-11-06 02:19:36.608 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_report_edit_logs表
  504. 2026-11-06 02:19:36.610 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.plan_json 已存在,跳过
  505. 2026-11-06 02:19:36.611 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.status 已存在,跳过
  506. 2026-11-06 02:19:36.612 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.reviewed_by 已存在,跳过
  507. 2026-11-06 02:19:36.613 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.reviewed_at 已存在,跳过
  508. 2026-11-06 02:19:36.614 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.review_comment 已存在,跳过
  509. 2026-11-06 02:19:36.615 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.teacher_id 已存在,跳过
  510. 2026-11-06 02:19:36.616 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.updated_at 已存在,跳过
  511. 2026-11-06 02:19:36.668 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改finance_checkins.child_id字段允许NULL
  512. 2026-11-06 02:19:36.669 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 finance_checkins.type 已存在,跳过
  513. 2026-11-06 02:19:36.670 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建energy_daily_limit表
  514. 2026-11-06 02:19:36.726 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入energy_daily_limit默认数据
  515. 2026-11-06 02:19:36.727 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 diet_preferences.must_eat 已存在,跳过
  516. 2026-11-06 02:19:36.729 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 file_record.file_type 已存在,跳过
  517. 2026-11-06 02:19:36.730 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 file_record.description 已存在,跳过
  518. 2026-11-06 02:19:36.730 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据库迁移完成
  519. 2026-11-06 02:19:37.580 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移252: indicator_definitions 种子数据已加载 (27条)
  520. 2026-11-06 02:19:37.581 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据库迁移完成
  521. 2026-11-06 02:19:37.582 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : health_norm_reference 常模数据已存在 (98条), 跳过
  522. 2026-11-06 02:19:37.583 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : articles表审核字段已存在,跳过
  523. 2026-11-06 02:19:37.632 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改activities.description为TEXT类型
  524. 2026-11-06 02:19:37.673 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改tasks.description为TEXT类型
  525. 2026-11-06 02:19:37.718 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改wishes.description为TEXT类型
  526. 2026-11-06 02:19:37.759 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改wishes.reject_reason为TEXT类型
  527. 2026-11-06 02:19:37.813 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改wishes.cancel_reason为TEXT类型
  528. 2026-11-06 02:19:37.863 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改reward_wishlists.description为TEXT类型
  529. 2026-11-06 02:19:37.897 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改products.description为TEXT类型
  530. 2026-11-06 02:19:37.932 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改products.reject_reason为TEXT类型
  531. 2026-11-06 02:19:37.974 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改product_orders.remark为TEXT类型
  532. 2026-11-06 02:19:37.998 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改articles.summary为TEXT类型
  533. 2026-11-06 02:19:38.027 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改activities.audit_reason为TEXT类型
  534. 2026-11-06 02:19:38.060 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_applications.reject_reason为TEXT类型
  535. 2026-11-06 02:19:38.110 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_application_records.remark为TEXT类型
  536. 2026-11-06 02:19:38.144 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改follow_up.description为TEXT类型
  537. 2026-11-06 02:19:38.209 INFO 17028 --- [eduler_Worker-3] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  538. 2026-11-06 02:19:38.211 DEBUG 17028 --- [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
  539. 2026-11-06 02:19:38.211 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改follow_up.teacher_review为TEXT类型
  540. 2026-11-06 02:19:38.211 DEBUG 17028 --- [eduler_Worker-3] c.e.c.m.T.selectList : ==> Parameters: running(String)
  541. 2026-11-06 02:19:38.212 DEBUG 17028 --- [eduler_Worker-3] c.e.c.m.T.selectList : <== Total: 0
  542. 2026-11-06 02:19:38.212 INFO 17028 --- [eduler_Worker-3] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  543. 2026-11-06 02:19:38.259 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改energy_log.description为TEXT类型
  544. 2026-11-06 02:19:39.187 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改sys_config.description为TEXT类型
  545. 2026-11-06 02:19:39.240 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改points_log.description为TEXT类型
  546. 2026-11-06 02:19:39.282 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改insurance_policies.remark为TEXT类型
  547. 2026-11-06 02:19:39.333 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改health_reports.remark为TEXT类型
  548. 2026-11-06 02:19:39.432 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_service_logs.notes为TEXT类型
  549. 2026-11-06 02:19:39.481 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_packages.description为TEXT类型
  550. 2026-11-06 02:19:39.531 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改guide_package_templates.description为TEXT类型
  551. 2026-11-06 02:19:39.564 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改service_types.description为TEXT类型
  552. 2026-11-06 02:19:39.595 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改commission_records.remark为TEXT类型
  553. 2026-11-06 02:19:39.645 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改zodiac_pairing.description为TEXT类型
  554. 2026-11-06 02:19:39.686 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改zodiac_pairing.advice为TEXT类型
  555. 2026-11-06 02:19:39.720 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改blood_type_pairing.description为TEXT类型
  556. 2026-11-06 02:19:39.753 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改blood_type_pairing.advice为TEXT类型
  557. 2026-11-06 02:19:39.803 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改life_number_relationship.description为TEXT类型
  558. 2026-11-06 02:19:40.050 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改life_number_relationship.advice为TEXT类型
  559. 2026-11-06 02:19:40.475 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改finance_checkins.note为TEXT类型
  560. 2026-11-06 02:19:40.625 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改assessment_appointments.remark为TEXT类型
  561. 2026-11-06 02:19:40.704 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改withdrawal_requests.remark为TEXT类型
  562. 2026-11-06 02:19:40.706 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 content_sections.description 已存在,跳过
  563. 2026-11-06 02:19:40.806 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改education_systems.description为TEXT类型
  564. 2026-11-06 02:19:40.867 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改product_dimension_config.remark为TEXT类型
  565. 2026-11-06 02:19:40.931 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改indicator_values.remark为TEXT类型
  566. 2026-11-06 02:19:40.975 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改tongue_records.overall_assessment为TEXT类型
  567. 2026-11-06 02:19:40.995 DEBUG 17028 --- [cfc-scheduler-2] 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 < ?)
  568. 2026-11-06 02:19:40.995 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:40.994(Timestamp)
  569. 2026-11-06 02:19:40.996 DEBUG 17028 --- [cfc-scheduler-4] 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 < ?)
  570. 2026-11-06 02:19:40.996 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:40.995(Timestamp)
  571. 2026-11-06 02:19:40.997 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.A.selectList : <== Total: 0
  572. 2026-11-06 02:19:40.997 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  573. 2026-11-06 02:19:40.998 DEBUG 17028 --- [cfc-scheduler-2] 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 < ?)
  574. 2026-11-06 02:19:40.999 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:40.994(Timestamp)
  575. 2026-11-06 02:19:41.000 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  576. 2026-11-06 02:19:41.001 DEBUG 17028 --- [cfc-scheduler-2] 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 < ?)
  577. 2026-11-06 02:19:41.001 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:40.994(Timestamp)
  578. 2026-11-06 02:19:41.002 DEBUG 17028 --- [cfc-scheduler-2] c.e.c.m.M.selectList : <== Total: 0
  579. 2026-11-06 02:19:41.002 INFO 17028 --- [cfc-scheduler-2] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  580. 2026-11-06 02:19:41.040 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改system_config.description为TEXT类型
  581. 2026-11-06 02:19:41.075 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改system_config.config_value为TEXT类型
  582. 2026-11-06 02:19:41.111 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改supply_system.description为TEXT类型
  583. 2026-11-06 02:19:41.161 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改supply_settlement.remark为TEXT类型
  584. 2026-11-06 02:19:41.194 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改growth_task.description为TEXT类型
  585. 2026-11-06 02:19:41.223 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改distribution_systems.description为TEXT类型
  586. 2026-11-06 02:19:41.273 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改mini_games.description为TEXT类型
  587. 2026-11-06 02:19:41.295 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改blood_type_config.description为TEXT类型
  588. 2026-11-06 02:19:41.296 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_disease_risk.related_bacteria 已存在,跳过
  589. 2026-11-06 02:19:41.298 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.gut_status_level 已存在,跳过
  590. 2026-11-06 02:19:41.299 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.prerequisite_task_id 已存在,跳过
  591. 2026-11-06 02:19:41.301 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.action_type 已存在,跳过
  592. 2026-11-06 02:19:41.302 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.action_config 已存在,跳过
  593. 2026-11-06 02:19:41.304 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.require_input 已存在,跳过
  594. 2026-11-06 02:19:41.305 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.start_required 已存在,跳过
  595. 2026-11-06 02:19:41.307 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.start_count 已存在,跳过
  596. 2026-11-06 02:19:41.308 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.min_duration_seconds 已存在,跳过
  597. 2026-11-06 02:19:41.309 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建task_executions表
  598. 2026-11-06 02:19:41.311 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 focus_sessions.task_id 已存在,跳过
  599. 2026-11-06 02:19:41.312 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : mind/action/wealth 常模数据已存在 (80条), 跳过
  600. 2026-11-06 02:19:41.313 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建member_subscription表
  601. 2026-11-06 02:19:41.315 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建member_subscription_order表
  602. 2026-11-06 02:19:41.317 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建subscription_benefit_log表
  603. 2026-11-06 02:19:41.318 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建promotion_tier表
  604. 2026-11-06 02:19:41.320 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建promotion_tier_change_log表
  605. 2026-11-06 02:19:41.321 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建referral_tree表
  606. 2026-11-06 02:19:41.322 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_ppoint表
  607. 2026-11-06 02:19:41.324 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建assessment_products表
  608. 2026-11-06 02:19:41.324 INFO 17028 --- [eduler_Worker-5] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  609. 2026-11-06 02:19:41.325 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建assessment_quotas表
  610. 2026-11-06 02:19:41.326 DEBUG 17028 --- [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
  611. 2026-11-06 02:19:41.326 DEBUG 17028 --- [eduler_Worker-5] c.e.c.m.T.selectList : ==> Parameters: running(String)
  612. 2026-11-06 02:19:41.327 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建assessment_executions表
  613. 2026-11-06 02:19:41.327 DEBUG 17028 --- [eduler_Worker-5] c.e.c.m.T.selectList : <== Total: 0
  614. 2026-11-06 02:19:41.327 INFO 17028 --- [eduler_Worker-5] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  615. 2026-11-06 02:19:41.329 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.source 已存在,跳过
  616. 2026-11-06 02:19:41.331 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建growth_guidances表
  617. 2026-11-06 02:19:41.333 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建assessment_plan_rules表
  618. 2026-11-06 02:19:41.335 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.source 已存在,跳过
  619. 2026-11-06 02:19:41.336 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.source_result_id 已存在,跳过
  620. 2026-11-06 02:19:41.338 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.remark 已存在,跳过
  621. 2026-11-06 02:19:41.339 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.reviewed_by 已存在,跳过
  622. 2026-11-06 02:19:41.340 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.reviewed_at 已存在,跳过
  623. 2026-11-06 02:19:41.341 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.review_comment 已存在,跳过
  624. 2026-11-06 02:19:41.342 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.confirmed_by 已存在,跳过
  625. 2026-11-06 02:19:41.343 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.confirmed_at 已存在,跳过
  626. 2026-11-06 02:19:41.344 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.activated_at 已存在,跳过
  627. 2026-11-06 02:19:41.345 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_access_logs表
  628. 2026-11-06 02:19:41.347 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建five_dimension_scores表
  629. 2026-11-06 02:19:41.348 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建promotion_tier_config表
  630. 2026-11-06 02:19:41.351 WARN 17028 --- [ 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'
  631. 2026-11-06 02:19:41.352 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_invitations.max_use_count 已存在,跳过
  632. 2026-11-06 02:19:41.354 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_invitations.used_count 已存在,跳过
  633. 2026-11-06 02:19:41.355 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建teacher_family_binding_requests表
  634. 2026-11-06 02:19:41.356 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建chat_conversations表
  635. 2026-11-06 02:19:41.358 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建chat_messages表
  636. 2026-11-06 02:19:41.359 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建schema_versions表
  637. 2026-11-06 02:19:41.361 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.structured_analysis 已存在,跳过
  638. 2026-11-06 02:19:41.362 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建pending_refund表
  639. 2026-11-06 02:19:41.364 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.consignee_id 已存在,跳过
  640. 2026-11-06 02:19:41.365 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 pending_refund.order_type 已存在,跳过
  641. 2026-11-06 02:19:41.367 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 pending_refund.order_no 已存在,跳过
  642. 2026-11-06 02:19:41.370 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.dimension 已存在,跳过
  643. 2026-11-06 02:19:41.372 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.report_file_id 已存在,跳过
  644. 2026-11-06 02:19:41.373 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.draft_status 已存在,跳过
  645. 2026-11-06 02:19:41.375 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.dimension_weights 已存在,跳过
  646. 2026-11-06 02:19:41.376 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.dimension_weights 已存在,跳过
  647. 2026-11-06 02:19:41.378 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.dimension_weights 已存在,跳过
  648. 2026-11-06 02:19:41.382 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建dimension_weights表
  649. 2026-11-06 02:19:41.383 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 cart.sku_id 已存在,跳过
  650. 2026-11-06 02:19:41.385 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 cart.spec_option_ids 已存在,跳过
  651. 2026-11-06 02:19:41.386 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.purchase_info 已存在,跳过
  652. 2026-11-06 02:19:41.388 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.content_type 已存在,跳过
  653. 2026-11-06 02:19:41.389 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.difficulty_level 已存在,跳过
  654. 2026-11-06 02:19:41.391 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.dimension_ids 已存在,跳过
  655. 2026-11-06 02:19:41.393 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.dimension_weights 已存在,跳过
  656. 2026-11-06 02:19:41.394 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.dimension_weights 已存在,跳过
  657. 2026-11-06 02:19:41.396 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.dimension_weights 已存在,跳过
  658. 2026-11-06 02:19:41.397 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle表
  659. 2026-11-06 02:19:41.399 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle_member表
  660. 2026-11-06 02:19:41.400 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建review_orders表
  661. 2026-11-06 02:19:41.437 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展growth_task.type为支持AI_GENERATED
  662. 2026-11-06 02:19:41.439 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_task.dimension 已存在,跳过
  663. 2026-11-06 02:19:41.440 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_task.source_conversation_id 已存在,跳过
  664. 2026-11-06 02:19:41.440 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移97: growth_task 表扩展完成
  665. 2026-11-06 02:19:41.479 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展health_gut_flora.level字段长度
  666. 2026-11-06 02:19:41.479 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移 98: health_gut_flora 表扩展完成
  667. 2026-11-06 02:19:41.520 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展 health_gut_flora.population_level 字段长度至 VARCHAR(100)
  668. 2026-11-06 02:19:41.653 INFO 17028 --- [eduler_Worker-4] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  669. 2026-11-06 02:19:41.655 DEBUG 17028 --- [eduler_Worker-4] 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
  670. 2026-11-06 02:19:41.655 DEBUG 17028 --- [eduler_Worker-4] c.e.c.m.T.selectList : ==> Parameters: running(String)
  671. 2026-11-06 02:19:41.656 DEBUG 17028 --- [eduler_Worker-4] c.e.c.m.T.selectList : <== Total: 0
  672. 2026-11-06 02:19:41.656 INFO 17028 --- [eduler_Worker-4] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  673. 2026-11-06 02:19:42.458 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展 health_gut_flora.detection_rate 字段长度至 VARCHAR(100)
  674. 2026-11-06 02:19:42.458 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移 100: health_gut_flora 表扩展完成
  675. 2026-11-06 02:19:42.493 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改users.role为VARCHAR(20)
  676. 2026-11-06 02:19:42.494 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 assessment_appointments.assessor_id 已存在,跳过
  677. 2026-11-06 02:19:42.495 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_executions.appointment_id 已存在,跳过
  678. 2026-11-06 02:19:42.496 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移100: 已添加assessor_id和appointment_id字段
  679. 2026-11-06 02:19:42.497 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建micro_actions表
  680. 2026-11-06 02:19:42.525 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已初始化12个微行动
  681. 2026-11-06 02:19:42.527 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建micro_action_records表
  682. 2026-11-06 02:19:42.528 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建daily_feedback表
  683. 2026-11-06 02:19:42.530 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_alerts表
  684. 2026-11-06 02:19:42.531 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_level表
  685. 2026-11-06 02:19:42.532 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_timeline_event表
  686. 2026-11-06 02:19:42.533 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_challenge表
  687. 2026-11-06 02:19:42.535 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_challenge_progress表
  688. 2026-11-06 02:19:42.536 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_interaction表
  689. 2026-11-06 02:19:42.537 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_circle表
  690. 2026-11-06 02:19:42.538 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_circle_member表
  691. 2026-11-06 02:19:42.539 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建circle_challenge表
  692. 2026-11-06 02:19:42.541 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_commission表
  693. 2026-11-06 02:19:42.542 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建promotion_binding表
  694. 2026-11-06 02:19:42.543 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建activity_feedback表
  695. 2026-11-06 02:19:42.545 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.feedback_dimensions 已存在,跳过
  696. 2026-11-06 02:19:42.546 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.family_member_id 已存在,跳过
  697. 2026-11-06 02:19:42.548 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.family_member_age 已存在,跳过
  698. 2026-11-06 02:19:42.549 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建emotion_checkin表
  699. 2026-11-06 02:19:42.550 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建emotion_alert表
  700. 2026-11-06 02:19:42.551 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建membership_levels表
  701. 2026-11-06 02:19:42.575 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入membership_levels种子数据
  702. 2026-11-06 02:19:42.577 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_memberships表
  703. 2026-11-06 02:19:42.578 INFO 17028 --- [duler_Worker-10] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  704. 2026-11-06 02:19:42.579 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建share_events表
  705. 2026-11-06 02:19:42.580 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建share_reads表
  706. 2026-11-06 02:19:42.582 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建food_recommend_idx表
  707. 2026-11-06 02:19:42.583 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建points_exchange_products表
  708. 2026-11-06 02:19:42.584 DEBUG 17028 --- [duler_Worker-10] 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
  709. 2026-11-06 02:19:42.584 DEBUG 17028 --- [duler_Worker-10] c.e.c.m.T.selectList : ==> Parameters: running(String)
  710. 2026-11-06 02:19:42.585 DEBUG 17028 --- [duler_Worker-10] c.e.c.m.T.selectList : <== Total: 0
  711. 2026-11-06 02:19:42.585 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建points_exchange_records表
  712. 2026-11-06 02:19:42.585 INFO 17028 --- [duler_Worker-10] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  713. 2026-11-06 02:19:42.586 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.mood_weather 已存在,跳过
  714. 2026-11-06 02:19:42.588 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.emotion_tags 已存在,跳过
  715. 2026-11-06 02:19:42.589 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.energy_awarded 已存在,跳过
  716. 2026-11-06 02:19:42.590 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.mood_score 已存在,跳过
  717. 2026-11-06 02:19:42.592 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.stress_level 已存在,跳过
  718. 2026-11-06 02:19:42.593 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.arousal_level 已存在,跳过
  719. 2026-11-06 02:19:42.594 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.sleep_hours 已存在,跳过
  720. 2026-11-06 02:19:42.596 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 emotion_checkin.sleep_quality 已存在,跳过
  721. 2026-11-06 02:19:42.634 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改emotion_checkin.user_id为可空
  722. 2026-11-06 02:19:42.668 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改emotion_checkin.emotion_type为VARCHAR
  723. 2026-11-06 02:19:42.669 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.fortune_level_text 已存在,跳过
  724. 2026-11-06 02:19:42.671 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.fortune_description 已存在,跳过
  725. 2026-11-06 02:19:42.672 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.mood_emoji 已存在,跳过
  726. 2026-11-06 02:19:42.673 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.mood_text 已存在,跳过
  727. 2026-11-06 02:19:42.674 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_fortune.weekly_tip 已存在,跳过
  728. 2026-11-06 02:19:42.675 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.price_quarterly 已存在,跳过
  729. 2026-11-06 02:19:42.676 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.target_type 已存在,跳过
  730. 2026-11-06 02:19:42.678 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.share_channel 已存在,跳过
  731. 2026-11-06 02:19:42.679 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.share_title 已存在,跳过
  732. 2026-11-06 02:19:42.680 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.share_url 已存在,跳过
  733. 2026-11-06 02:19:42.681 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.read_count 已存在,跳过
  734. 2026-11-06 02:19:42.683 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.reward_points 已存在,跳过
  735. 2026-11-06 02:19:42.684 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.status 已存在,跳过
  736. 2026-11-06 02:19:42.685 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.expires_at 已存在,跳过
  737. 2026-11-06 02:19:42.686 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_events.updated_at 已存在,跳过
  738. 2026-11-06 02:19:42.688 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_reads.read_duration 已存在,跳过
  739. 2026-11-06 02:19:42.689 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 share_reads.read_at 已存在,跳过
  740. 2026-11-06 02:19:42.689 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  741. 2026-11-06 02:19:42.689 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:42.688(Timestamp), 2026-11-06 02:19:42.688(Timestamp), 20(Integer)
  742. 2026-11-06 02:19:42.690 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 points_exchange_records.family_member_id 已存在,跳过
  743. 2026-11-06 02:19:42.691 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : <== Total: 0
  744. 2026-11-06 02:19:42.693 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.sort_order 已存在,跳过
  745. 2026-11-06 02:19:42.694 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.recommendation_tags 已存在,跳过
  746. 2026-11-06 02:19:42.695 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.is_recommended 已存在,跳过
  747. 2026-11-06 02:19:42.697 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.repurchase_interval_days 已存在,跳过
  748. 2026-11-06 02:19:42.698 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建category_ppoint表
  749. 2026-11-06 02:19:42.700 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建commission_dist_log表
  750. 2026-11-06 02:19:42.701 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 payment_orders.period 已存在,跳过
  751. 2026-11-06 02:19:42.743 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改payment_orders.payment_type列长度为VARCHAR(20)
  752. 2026-11-06 02:19:42.744 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.dimension_code 已存在,跳过
  753. 2026-11-06 02:19:42.746 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.dimension_weights 已存在,跳过
  754. 2026-11-06 02:19:42.747 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.family_scope 已存在,跳过
  755. 2026-11-06 02:19:42.749 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.family_scope 已存在,跳过
  756. 2026-11-06 02:19:42.753 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.registration_deadline 已存在,跳过
  757. 2026-11-06 02:19:42.754 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.child_fee 已存在,跳过
  758. 2026-11-06 02:19:42.755 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.child_member_fee 已存在,跳过
  759. 2026-11-06 02:19:42.757 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.parent_fee 已存在,跳过
  760. 2026-11-06 02:19:42.758 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.parent_member_fee 已存在,跳过
  761. 2026-11-06 02:19:42.759 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.creator_id 已存在,跳过
  762. 2026-11-06 02:19:42.760 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建activity_orders表
  763. 2026-11-06 02:19:42.762 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建activity_materials表
  764. 2026-11-06 02:19:42.763 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_gut_flora.population_level 已存在,跳过
  765. 2026-11-06 02:19:42.765 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_gut_flora.detection_rate 已存在,跳过
  766. 2026-11-06 02:19:42.766 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_dimension_scores表
  767. 2026-11-06 02:19:42.767 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_data_sources表
  768. 2026-11-06 02:19:42.769 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_indicators.collection_date 已存在,跳过
  769. 2026-11-06 02:19:43.208 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加列 promotion_tier.team_size_1st
  770. 2026-11-06 02:19:43.634 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加列 promotion_tier.team_size_2nd
  771. 2026-11-06 02:19:44.009 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加列 promotion_tier.team_size_3rd
  772. 2026-11-06 02:19:44.015 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 report_summary 表
  773. 2026-11-06 02:19:44.017 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.dimension_code 已存在,跳过
  774. 2026-11-06 02:19:44.018 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.dimension_weights 已存在,跳过
  775. 2026-11-06 02:19:44.019 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成tasks表维度字段添加
  776. 2026-11-06 02:19:44.020 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 energy_behavior_config 表
  777. 2026-11-06 02:19:44.022 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 finance_checkins.type 已存在,跳过
  778. 2026-11-06 02:19:44.022 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成finance_checkins.type字段添加
  779. 2026-11-06 02:19:44.024 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 article_comments 表
  780. 2026-11-06 02:19:44.025 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建service_role_applications表
  781. 2026-11-06 02:19:44.025 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移112: 开始添加article_admin_status列到users表
  782. 2026-11-06 02:19:44.027 WARN 17028 --- [ 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'
  783. 2026-11-06 02:19:44.029 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 periodic_services 表
  784. 2026-11-06 02:19:44.030 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 recommendation_logs 表
  785. 2026-11-06 02:19:44.032 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.family_scope 已存在,跳过
  786. 2026-11-06 02:19:44.032 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成products.family_scope字段添加
  787. 2026-11-06 02:19:44.033 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.family_scope 已存在,跳过
  788. 2026-11-06 02:19:44.033 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activities.family_scope字段添加
  789. 2026-11-06 02:19:44.035 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_registrations.registrant_name 已存在,跳过
  790. 2026-11-06 02:19:44.035 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activity_registrations.registrant_name字段添加
  791. 2026-11-06 02:19:44.036 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_registrations.registrant_phone 已存在,跳过
  792. 2026-11-06 02:19:44.036 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activity_registrations.registrant_phone字段添加
  793. 2026-11-06 02:19:44.069 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activity_registrations.child_id改为可空
  794. 2026-11-06 02:19:44.070 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.contact_name 已存在,跳过
  795. 2026-11-06 02:19:44.072 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.contact_phone 已存在,跳过
  796. 2026-11-06 02:19:44.073 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.contact_address 已存在,跳过
  797. 2026-11-06 02:19:44.073 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成package_orders表联系人字段添加
  798. 2026-11-06 02:19:44.075 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.registration_deadline 已存在,跳过
  799. 2026-11-06 02:19:44.075 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成activities.registration_deadline字段添加
  800. 2026-11-06 02:19:44.076 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建virtual_goods_config表
  801. 2026-11-06 02:19:44.078 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 users.session_key 已存在,跳过
  802. 2026-11-06 02:19:44.078 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已完成users.session_key字段添加
  803. 2026-11-06 02:19:44.079 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_fortune_report表
  804. 2026-11-06 02:19:44.080 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建five_dimension_self_checks表
  805. 2026-11-06 02:19:44.109 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入会员年卡道具映射: member1314
  806. 2026-11-06 02:19:44.111 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已清理 membership_levels 重复行: 删除0条
  807. 2026-11-06 02:19:44.111 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : uk_level_code 唯一索引已存在,跳过添加
  808. 2026-11-06 02:19:44.113 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 payment_orders.user_coupon_id 已存在,跳过
  809. 2026-11-06 02:19:44.113 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已确保payment_orders.user_coupon_id列存在
  810. 2026-11-06 02:19:44.114 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.member_price 已存在,跳过
  811. 2026-11-06 02:19:44.115 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已确保activities.member_price列存在
  812. 2026-11-06 02:19:44.116 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.school 已存在,跳过
  813. 2026-11-06 02:19:44.117 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.grade 已存在,跳过
  814. 2026-11-06 02:19:44.118 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.academicPerformance 已存在,跳过
  815. 2026-11-06 02:19:44.119 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.schoolProvince 已存在,跳过
  816. 2026-11-06 02:19:44.120 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.schoolCity 已存在,跳过
  817. 2026-11-06 02:19:44.121 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.schoolDistrict 已存在,跳过
  818. 2026-11-06 02:19:44.122 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 growth_records.schoolStreet 已存在,跳过
  819. 2026-11-06 02:19:44.122 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已确保growth_records学校/年级相关列存在
  820. 2026-11-06 02:19:44.124 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 创建product_gift_rules表成功
  821. 2026-11-06 02:19:44.125 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建growth_archive_products表
  822. 2026-11-06 02:19:44.151 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入PREMIUM等级种子数据
  823. 2026-11-06 02:19:44.153 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建interaction_logs表
  824. 2026-11-06 02:19:44.154 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建relationship_questionnaire_snapshots表
  825. 2026-11-06 02:19:44.194 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改users.family_id允许NULL
  826. 2026-11-06 02:19:44.195 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建relationship_questionnaire_responses表
  827. 2026-11-06 02:19:44.197 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.creator_id 已存在,跳过
  828. 2026-11-06 02:19:44.198 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已清理guide_orders重复order_no
  829. 2026-11-06 02:19:44.200 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已清理payment_orders重复order_no
  830. 2026-11-06 02:19:44.202 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建daily_checkin表
  831. 2026-11-06 02:19:44.203 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建exercise_record表
  832. 2026-11-06 02:19:44.204 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_challenge.creator_id 已存在,跳过
  833. 2026-11-06 02:19:44.205 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.discount_rate 已存在,跳过
  834. 2026-11-06 02:19:44.206 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.product_id 已存在,跳过
  835. 2026-11-06 02:19:44.207 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.points_price 已存在,跳过
  836. 2026-11-06 02:19:44.208 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.grant_type 已存在,跳过
  837. 2026-11-06 02:19:44.209 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.grant_level_code 已存在,跳过
  838. 2026-11-06 02:19:44.210 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.grant_period 已存在,跳过
  839. 2026-11-06 02:19:44.211 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.grant_quantity 已存在,跳过
  840. 2026-11-06 02:19:44.211 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已为coupon表添加会员券字段
  841. 2026-11-06 02:19:44.213 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建coupon_grant_log表
  842. 2026-11-06 02:19:44.214 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 virtual_goods_config.goods_price 已存在,跳过
  843. 2026-11-06 02:19:44.215 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 payment_orders.group_no 已存在,跳过
  844. 2026-11-06 02:19:44.217 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 payment_orders.period_no 已存在,跳过
  845. 2026-11-06 02:19:44.233 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已回填families.creator_id(优先家庭管理员)
  846. 2026-11-06 02:19:44.241 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已回填families.creator_id(任一成员)
  847. 2026-11-06 02:19:44.242 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修复articles表中status为null的记录为draft
  848. 2026-11-06 02:19:44.243 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已清理废弃的relationship_types表
  849. 2026-11-06 02:19:44.245 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_join_requests表
  850. 2026-11-06 02:19:44.246 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建knowledge_base_section表
  851. 2026-11-06 02:19:44.247 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.pickup_location_id 已存在,跳过
  852. 2026-11-06 02:19:44.249 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.pickup_location_snapshot 已存在,跳过
  853. 2026-11-06 02:19:44.250 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.time_slot_id 已存在,跳过
  854. 2026-11-06 02:19:44.251 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.time_slot_snapshot 已存在,跳过
  855. 2026-11-06 02:19:44.253 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.service_person_id 已存在,跳过
  856. 2026-11-06 02:19:44.254 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.service_person_snapshot 已存在,跳过
  857. 2026-11-06 02:19:44.255 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.fulfill_status 已存在,跳过
  858. 2026-11-06 02:19:44.256 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.fulfill_confirmed_at 已存在,跳过
  859. 2026-11-06 02:19:44.257 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.received_at 已存在,跳过
  860. 2026-11-06 02:19:44.259 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_pickup_locations表
  861. 2026-11-06 02:19:44.260 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_pickup_time_slots表
  862. 2026-11-06 02:19:44.261 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_service_persons表
  863. 2026-11-06 02:19:44.262 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_service_person_slots表
  864. 2026-11-06 02:19:44.263 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_online_slots表
  865. 2026-11-06 02:19:44.264 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建membership_benefits表
  866. 2026-11-06 02:19:44.318 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入membership_benefits种子数据
  867. 2026-11-06 02:19:44.319 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_consent_records表
  868. 2026-11-06 02:19:44.320 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_data_permissions表
  869. 2026-11-06 02:19:44.321 WARN 17028 --- [ 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'
  870. 2026-11-06 02:19:44.322 WARN 17028 --- [ 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'
  871. 2026-11-06 02:19:44.323 WARN 17028 --- [ 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'
  872. 2026-11-06 02:19:44.324 WARN 17028 --- [ 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'
  873. 2026-11-06 02:19:44.325 WARN 17028 --- [ 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'
  874. 2026-11-06 02:19:44.326 WARN 17028 --- [ 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'
  875. 2026-11-06 02:19:44.327 WARN 17028 --- [ 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'
  876. 2026-11-06 02:19:44.327 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建diet_preferences表
  877. 2026-11-06 02:19:44.328 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建meal_configs表
  878. 2026-11-06 02:19:44.329 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建diet_recommendations表
  879. 2026-11-06 02:19:44.330 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建diet_records表
  880. 2026-11-06 02:19:44.331 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建diet_record_items表
  881. 2026-11-06 02:19:44.332 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.proxy_uploader_id 已存在,跳过
  882. 2026-11-06 02:19:44.333 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.proxy_upload_note 已存在,跳过
  883. 2026-11-06 02:19:44.334 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.ai_analysis 已存在,跳过
  884. 2026-11-06 02:19:44.335 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.report_format 已存在,跳过
  885. 2026-11-06 02:19:44.336 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.remark 已存在,跳过
  886. 2026-11-06 02:19:44.337 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_challenge_participant表
  887. 2026-11-06 02:19:44.338 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_relationship_scores表
  888. 2026-11-06 02:19:44.376 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_challenge_score_config表并写入默认配置
  889. 2026-11-06 02:19:44.378 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已为存量挑战补全participant行
  890. 2026-11-06 02:19:44.379 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_type_registry表
  891. 2026-11-06 02:19:44.380 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_fingerprint表
  892. 2026-11-06 02:19:44.381 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_unknown_cluster表
  893. 2026-11-06 02:19:44.382 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_unknown_upload表
  894. 2026-11-06 02:19:44.384 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_parser_import表
  895. 2026-11-06 02:19:44.385 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.report_id 已存在,跳过
  896. 2026-11-06 02:19:44.386 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.score 已存在,跳过
  897. 2026-11-06 02:19:44.386 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.energy_kj 已存在,跳过
  898. 2026-11-06 02:19:44.387 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.starch 已存在,跳过
  899. 2026-11-06 02:19:44.388 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.cholesterol 已存在,跳过
  900. 2026-11-06 02:19:44.389 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 foods.diet_type 已存在,跳过
  901. 2026-11-06 02:19:44.418 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已为verification_codes.type添加默认值
  902. 2026-11-06 02:19:44.419 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_relationships.trust_score 已存在,跳过
  903. 2026-11-06 02:19:44.420 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_relationships.intimacy_score 已存在,跳过
  904. 2026-11-06 02:19:44.421 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_relationships.communication_score 已存在,跳过
  905. 2026-11-06 02:19:44.422 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_join_requests.family_role 已存在,跳过
  906. 2026-11-06 02:19:44.423 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.accept_deadline 已存在,跳过
  907. 2026-11-06 02:19:44.953 WARN 17028 --- [ 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
  908. 2026-11-06 02:19:44.956 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_platform_balance表
  909. 2026-11-06 02:19:44.957 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建platform_balance_log表
  910. 2026-11-06 02:19:44.959 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已迁移settled佣金为可用CF值
  911. 2026-11-06 02:19:44.960 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已迁移pending佣金为冻结CF值
  912. 2026-11-06 02:19:44.961 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.platform_points 已存在,跳过
  913. 2026-11-06 02:19:44.963 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 withdrawal_requests.type 已存在,跳过
  914. 2026-11-06 02:19:44.965 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.original_price_monthly 已存在,跳过
  915. 2026-11-06 02:19:44.967 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.original_price_quarterly 已存在,跳过
  916. 2026-11-06 02:19:44.968 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.original_price_yearly 已存在,跳过
  917. 2026-11-06 02:19:44.970 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已同步会员价格/原价至membership_levels
  918. 2026-11-06 02:19:45.018 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入LIFETIME等级种子数据
  919. 2026-11-06 02:19:45.019 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建notices表
  920. 2026-11-06 02:19:45.021 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 member_upgrade_records.approve_remark 已存在,跳过
  921. 2026-11-06 02:19:45.022 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 member_upgrade_records.approve_status 已存在,跳过
  922. 2026-11-06 02:19:45.022 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 member_upgrade_records.approve_user_id 已存在,跳过
  923. 2026-11-06 02:19:45.023 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 member_upgrade_records.approve_time 已存在,跳过
  924. 2026-11-06 02:19:45.024 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_plans表
  925. 2026-11-06 02:19:45.094 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : health_gut_flora.detection_rate 已扩容为 VARCHAR(255)
  926. 2026-11-06 02:19:45.095 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.growth_category 已存在,跳过
  927. 2026-11-06 02:19:45.096 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 supply_system.contact_name 已存在,跳过
  928. 2026-11-06 02:19:45.098 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 supply_system.contact_phone 已存在,跳过
  929. 2026-11-06 02:19:45.099 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 supply_system.remark 已存在,跳过
  930. 2026-11-06 02:19:45.099 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移209: supply_system 已添加 contact_name/contact_phone/remark 列
  931. 2026-11-06 02:19:45.101 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移209: ecom_supplier 存量数据已迁移至 supply_system
  932. 2026-11-06 02:19:45.102 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_platform_balance表
  933. 2026-11-06 02:19:45.103 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_platform_balance_log表
  934. 2026-11-06 02:19:45.104 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.points_multiplier 已存在,跳过
  935. 2026-11-06 02:19:45.104 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加products.points_multiplier列
  936. 2026-11-06 02:19:45.106 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建family_platform_exchange_record表
  937. 2026-11-06 02:19:45.107 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 nutrition_product.ingredients 已存在,跳过
  938. 2026-11-06 02:19:45.156 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已将nutrition_product.suitable_for升级为TEXT类型
  939. 2026-11-06 02:19:45.157 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建file_tag表
  940. 2026-11-06 02:19:45.410 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已预置文件标签
  941. 2026-11-06 02:19:45.411 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建file_tag_rel表
  942. 2026-11-06 02:19:45.443 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入GROWTH_COACH权益种子数据
  943. 2026-11-06 02:19:45.444 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 recommendation_logs.recommend_type 已存在,跳过
  944. 2026-11-06 02:19:45.444 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加recommendation_logs.recommend_type列
  945. 2026-11-06 02:19:45.445 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移233: 维度权重已同步过,跳过
  946. 2026-11-06 02:19:45.447 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建problem_domains表
  947. 2026-11-06 02:19:45.448 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_intents表
  948. 2026-11-06 02:19:45.450 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建user_notifications表
  949. 2026-11-06 02:19:45.451 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.member_only 已存在,跳过
  950. 2026-11-06 02:19:45.452 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.logistics_status 已存在,跳过
  951. 2026-11-06 02:19:45.453 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 package_orders.tracking_no 已存在,跳过
  952. 2026-11-06 02:19:45.453 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加package_orders物流字段
  953. 2026-11-06 02:19:45.454 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建health_status表
  954. 2026-11-06 02:19:45.455 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建system_prompts表
  955. 2026-11-06 02:19:45.493 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已插入默认系统提示词
  956. 2026-11-06 02:19:45.494 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建sys_menu表
  957. 2026-11-06 02:19:45.496 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建sys_role_menu表
  958. 2026-11-06 02:19:45.497 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : sys_menu 已有 105 条数据,跳过种子插入
  959. 2026-11-06 02:19:45.499 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建notification_templates表
  960. 2026-11-06 02:19:45.499 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : notification_templates 已有 5 条数据,跳过种子插入
  961. 2026-11-06 02:19:45.500 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移246: product_skus 价格已迁移过,跳过
  962. 2026-11-06 02:19:45.501 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_skus.linked_product_id 已存在,跳过
  963. 2026-11-06 02:19:45.502 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_skus.label 已存在,跳过
  964. 2026-11-06 02:19:45.503 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 families.butler_id 已存在,跳过
  965. 2026-11-06 02:19:45.613 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建profile_snapshot表
  966. 2026-11-06 02:19:45.615 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建profile_history表
  967. 2026-11-06 02:19:45.616 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建report_template表
  968. 2026-11-06 02:19:45.617 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 report_unknown_upload.annotation 已存在,跳过
  969. 2026-11-06 02:19:45.619 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.description 已存在,跳过
  970. 2026-11-06 02:19:45.620 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.cover_image 已存在,跳过
  971. 2026-11-06 02:19:45.621 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.join_condition 已存在,跳过
  972. 2026-11-06 02:19:45.622 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.review_required 已存在,跳过
  973. 2026-11-06 02:19:45.623 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle.is_public 已存在,跳过
  974. 2026-11-06 02:19:45.624 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle_member.status 已存在,跳过
  975. 2026-11-06 02:19:45.625 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 social_circle_member.role 已存在,跳过
  976. 2026-11-06 02:19:45.626 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle_post表
  977. 2026-11-06 02:19:45.628 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle_like表
  978. 2026-11-06 02:19:45.629 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建social_circle_comment表
  979. 2026-11-06 02:19:45.630 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 butler_profiles.accepting 已存在,跳过
  980. 2026-11-06 02:19:45.632 WARN 17028 --- [ 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'
  981. 2026-11-06 02:19:45.633 WARN 17028 --- [ 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'
  982. 2026-11-06 02:19:45.803 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修复方案分解任务的 family_member_id 与 deadline 边界
  983. 2026-11-06 02:19:45.890 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已开启方案分解任务的审核模式
  984. 2026-11-06 02:19:45.919 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已扩展 tasks.status 枚举,支持 pending_review/locked
  985. 2026-11-06 02:19:45.921 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 five_dimension_self_checks.question_ids_json 已存在,跳过
  986. 2026-11-06 02:19:45.923 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 self_check_ignores 表
  987. 2026-11-06 02:19:45.924 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 users.family_inviter_id 已存在,跳过
  988. 2026-11-06 02:19:45.972 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已修改 sleep_record 时间为 TIME 类型
  989. 2026-11-06 02:19:45.974 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移270: innate_portrait_config 表创建完成
  990. 2026-11-06 02:19:45.975 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移271: innate_portrait_report 表创建完成
  991. 2026-11-06 02:19:45.977 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移272: numsoul_detail_config 表创建完成
  992. 2026-11-06 02:19:46.027 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移273: 已加宽 dan_report_uploads.file_id 为 VARCHAR(500)
  993. 2026-11-06 02:19:46.078 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移274: 已加宽 dan_assessment_results.report_file_id 为 VARCHAR(500)
  994. 2026-11-06 02:19:46.079 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.dan_level 已存在,跳过
  995. 2026-11-06 02:19:46.119 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移275: 已将 dan_assessment_results.dan_level 改为可空并带默认
  996. 2026-11-06 02:19:46.121 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 family_coupon 表
  997. 2026-11-06 02:19:46.122 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建 family_coupon_grant_log 表
  998. 2026-11-06 02:19:46.123 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建cf_rate_tier表
  999. 2026-11-06 02:19:46.125 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建cf_transfer_record表
  1000. 2026-11-06 02:19:46.178 INFO 17028 --- [eduler_Worker-7] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  1001. 2026-11-06 02:19:46.180 DEBUG 17028 --- [eduler_Worker-7] 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
  1002. 2026-11-06 02:19:46.180 DEBUG 17028 --- [eduler_Worker-7] c.e.c.m.T.selectList : ==> Parameters: running(String)
  1003. 2026-11-06 02:19:46.181 DEBUG 17028 --- [eduler_Worker-7] c.e.c.m.T.selectList : <== Total: 0
  1004. 2026-11-06 02:19:46.182 INFO 17028 --- [eduler_Worker-7] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  1005. 2026-11-06 02:19:46.673 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : promotion_tier 已删除三层团队列
  1006. 2026-11-06 02:19:46.675 WARN 17028 --- [ 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'
  1007. 2026-11-06 02:19:46.676 WARN 17028 --- [ 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'
  1008. 2026-11-06 02:19:46.677 WARN 17028 --- [ 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
  1009. 2026-11-06 02:19:46.678 WARN 17028 --- [ 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'
  1010. 2026-11-06 02:19:46.679 WARN 17028 --- [ 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'
  1011. 2026-11-06 02:19:46.680 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_gift_configs表
  1012. 2026-11-06 02:19:46.682 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_gift_items表
  1013. 2026-11-06 02:19:46.683 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建product_order_gifts表
  1014. 2026-11-06 02:19:46.684 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.parse_status 已存在,跳过
  1015. 2026-11-06 02:19:46.685 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.parse_method 已存在,跳过
  1016. 2026-11-06 02:19:46.686 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.parse_error 已存在,跳过
  1017. 2026-11-06 02:19:46.686 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加 health_report_drafts 异步采集状态列 (parse_status/parse_method/parse_error)
  1018. 2026-11-06 02:19:46.687 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.report_format 已存在,跳过
  1019. 2026-11-06 02:19:46.688 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.visibility 已存在,跳过
  1020. 2026-11-06 02:19:46.689 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.visible_to 已存在,跳过
  1021. 2026-11-06 02:19:46.691 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_knowledge_base.file_url 已存在,跳过
  1022. 2026-11-06 02:19:46.692 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_knowledge_base.file_name 已存在,跳过
  1023. 2026-11-06 02:19:46.693 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_knowledge_base.source_url 已存在,跳过
  1024. 2026-11-06 02:19:46.694 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_knowledge_base.source_type 已存在,跳过
  1025. 2026-11-06 02:19:46.695 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 distribution_relations.invite_code 已存在,跳过
  1026. 2026-11-06 02:19:46.696 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.birth_hour 已存在,跳过
  1027. 2026-11-06 02:19:46.697 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.birth_weight 已存在,跳过
  1028. 2026-11-06 02:19:46.698 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.birth_place 已存在,跳过
  1029. 2026-11-06 02:19:46.700 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.is_cesarean 已存在,跳过
  1030. 2026-11-06 02:19:46.701 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_indicators.symptoms 已存在,跳过
  1031. 2026-11-06 02:19:46.702 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.tracking_number 已存在,跳过
  1032. 2026-11-06 02:19:46.703 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.express_company 已存在,跳过
  1033. 2026-11-06 02:19:46.704 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.delivery_method 已存在,跳过
  1034. 2026-11-06 02:19:46.705 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.pickup_code 已存在,跳过
  1035. 2026-11-06 02:19:46.707 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.confirm_time 已存在,跳过
  1036. 2026-11-06 02:19:46.708 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.refund_status 已存在,跳过
  1037. 2026-11-06 02:19:46.709 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.refund_reason 已存在,跳过
  1038. 2026-11-06 02:19:46.710 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.refund_amount 已存在,跳过
  1039. 2026-11-06 02:19:46.723 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.refund_time 已存在,跳过
  1040. 2026-11-06 02:19:46.723 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已补齐真实缺列 (迁移290, 6表21列)
  1041. 2026-11-06 02:19:46.726 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_status.member_id 已存在,跳过
  1042. 2026-11-06 02:19:46.728 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.is_admin 已存在,跳过
  1043. 2026-11-06 02:19:46.745 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移293: 已回填家庭创建者为管理员
  1044. 2026-11-06 02:19:46.748 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.sort_order 已存在,跳过
  1045. 2026-11-06 02:19:46.748 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加 articles.sort_order 列(迁移294)
  1046. 2026-11-06 02:19:46.750 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.audio_url 已存在,跳过
  1047. 2026-11-06 02:19:46.751 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 articles.audio_text 已存在,跳过
  1048. 2026-11-06 02:19:46.752 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已添加 articles.audio_url/audio_text 列(迁移294b)
  1049. 2026-11-06 02:19:46.753 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.source 已存在,跳过
  1050. 2026-11-06 02:19:46.755 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.source_result_id 已存在,跳过
  1051. 2026-11-06 02:19:46.756 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.remark 已存在,跳过
  1052. 2026-11-06 02:19:46.757 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.reviewed_by 已存在,跳过
  1053. 2026-11-06 02:19:46.758 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.reviewed_at 已存在,跳过
  1054. 2026-11-06 02:19:46.759 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.review_comment 已存在,跳过
  1055. 2026-11-06 02:19:46.761 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.confirmed_by 已存在,跳过
  1056. 2026-11-06 02:19:46.762 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.confirmed_at 已存在,跳过
  1057. 2026-11-06 02:19:46.765 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_plan_instances.activated_at 已存在,跳过
  1058. 2026-11-06 02:19:46.765 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移295: 已补齐 task_plan_instances 审核/确认/激活列
  1059. 2026-11-06 02:19:46.877 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移296: 已修正0条健康方案任务 source_type -> health_plan
  1060. 2026-11-06 02:19:46.972 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移297: 已补设0条认知训练方案任务 source_type -> training_plan
  1061. 2026-11-06 02:19:46.998 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移298: 已迁移0条有 openid 的 child 账号 role → parent
  1062. 2026-11-06 02:19:47.003 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移298: 已为无 openid 的 child 账号补齐 family_members 记录
  1063. 2026-11-06 02:19:47.004 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移322: children 表不存在,跳过(已废弃)
  1064. 2026-11-06 02:19:47.005 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 promotion_tier.rate_percent 已存在,跳过
  1065. 2026-11-06 02:19:47.006 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_members.status 已存在,跳过
  1066. 2026-11-06 02:19:47.007 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.is_daily_progress 已存在,跳过
  1067. 2026-11-06 02:19:47.008 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.target_value 已存在,跳过
  1068. 2026-11-06 02:19:47.066 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已更新tasks.source_type注释
  1069. 2026-11-06 02:19:47.071 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移301: platform_balance_log 历史重复流水已清理
  1070. 2026-11-06 02:19:47.073 WARN 17028 --- [ 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'
  1071. 2026-11-06 02:19:47.074 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建contact_help_logs表
  1072. 2026-11-06 02:19:47.076 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建resource_items表
  1073. 2026-11-06 02:19:47.104 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移304: health_gut_flora.bacteria_name 已改为可空
  1074. 2026-11-06 02:19:47.149 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移305: health_indicators.status 已放宽到 VARCHAR(100)
  1075. 2026-11-06 02:19:47.152 WARN 17028 --- [ 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'
  1076. 2026-11-06 02:19:47.153 WARN 17028 --- [ 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'
  1077. 2026-11-06 02:19:47.154 WARN 17028 --- [ 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'
  1078. 2026-11-06 02:19:47.155 WARN 17028 --- [ 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'
  1079. 2026-11-06 02:19:47.156 WARN 17028 --- [ 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'
  1080. 2026-11-06 02:19:47.157 WARN 17028 --- [ 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'
  1081. 2026-11-06 02:19:47.157 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移307: resource_items 社会连接字段添加完成
  1082. 2026-11-06 02:19:47.159 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移308: 已创建 pearl_interaction_log 表
  1083. 2026-11-06 02:19:47.160 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移309: 已创建 pearl_interaction_reminder 表
  1084. 2026-11-06 02:19:47.161 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建octopus_effect_record表
  1085. 2026-11-06 02:19:47.162 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建octopus_key_person表
  1086. 2026-11-06 02:19:47.163 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建octopus_effect_key_person表
  1087. 2026-11-06 02:19:47.164 WARN 17028 --- [ 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'
  1088. 2026-11-06 02:19:47.165 WARN 17028 --- [ 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'
  1089. 2026-11-06 02:19:47.166 WARN 17028 --- [ 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'
  1090. 2026-11-06 02:19:47.167 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_reports.file_hash 已存在,跳过
  1091. 2026-11-06 02:19:47.168 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.file_hash 已存在,跳过
  1092. 2026-11-06 02:19:47.168 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移310: 已补齐 health_reports/health_report_drafts.file_hash
  1093. 2026-11-06 02:19:47.169 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 report_type_registry.script_status 已存在,跳过
  1094. 2026-11-06 02:19:47.169 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移311: 已补齐 report_type_registry.script_status
  1095. 2026-11-06 02:19:47.170 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移312: gut_flora 指纹规则已存在,跳过
  1096. 2026-11-06 02:19:47.171 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移316: 已创建recommendation_rules表
  1097. 2026-11-06 02:19:47.174 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移329: 已创建task_orchestration_flows表
  1098. 2026-11-06 02:19:47.175 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移329: 已创建task_orchestration_edges表
  1099. 2026-11-06 02:19:47.176 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移329: 已创建task_orchestration_executions表
  1100. 2026-11-06 02:19:47.177 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移329: 已创建task_orchestration_node_instances表
  1101. 2026-11-06 02:19:47.202 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已预置onboarding_guide_config默认配置
  1102. 2026-11-06 02:19:47.204 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_meal_record.photo_urls 已存在,跳过
  1103. 2026-11-06 02:19:47.205 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_meal_record.voice_url 已存在,跳过
  1104. 2026-11-06 02:19:47.206 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_meal_record.voice_text 已存在,跳过
  1105. 2026-11-06 02:19:47.207 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 exercise_record.photo_urls 已存在,跳过
  1106. 2026-11-06 02:19:47.207 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 exercise_record.voice_url 已存在,跳过
  1107. 2026-11-06 02:19:47.208 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 exercise_record.voice_text 已存在,跳过
  1108. 2026-11-06 02:19:47.208 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移328: 已为health_meal_record/exercise_record补充照片语音字段
  1109. 2026-11-06 02:19:47.210 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移333: 已创建 guide_popup 表
  1110. 2026-11-06 02:19:47.211 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移334: 已创建 guide_popup_step 表
  1111. 2026-11-06 02:19:47.212 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移335: 已创建 guide_popup_trigger 表
  1112. 2026-11-06 02:19:47.213 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移336: 已创建 guide_popup_log 表
  1113. 2026-11-06 02:19:47.214 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移323: 报告类型 dan_a2 已存在,跳过
  1114. 2026-11-06 02:19:47.214 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移323: dan_a2 指纹规则已存在,跳过
  1115. 2026-11-06 02:19:47.215 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移326: 限时折扣管理菜单已存在,跳过
  1116. 2026-11-06 02:19:47.216 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移327: 已创建 user_shortcut_config 表
  1117. 2026-11-06 02:19:47.217 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移327: 已创建 user_app_usage 表
  1118. 2026-11-06 02:19:47.218 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移333: parent_first_login 种子弹窗已存在,跳过
  1119. 2026-11-06 02:19:47.219 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.gift_amount 已存在,跳过
  1120. 2026-11-06 02:19:47.220 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移338: 已创建 gift_membership_progress 表
  1121. 2026-11-06 02:19:47.221 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.is_flow_task 已存在,跳过
  1122. 2026-11-06 02:19:47.222 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 tasks.successor_task_ids 已存在,跳过
  1123. 2026-11-06 02:19:47.223 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 insurance_policies.policy_terms 已存在,跳过
  1124. 2026-11-06 02:19:47.224 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移340: 已创建 home_banners 表
  1125. 2026-11-06 02:19:47.225 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.member_id 已存在,跳过
  1126. 2026-11-06 02:19:47.225 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移343: health_report_drafts.member_id 已确保存在
  1127. 2026-11-06 02:19:47.226 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.total_days 已存在,跳过
  1128. 2026-11-06 02:19:47.226 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移345: health_plans.total_days 已确保存在
  1129. 2026-11-06 02:19:47.400 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移349: 已创建 report_transfer_requests 表
  1130. 2026-11-06 02:19:47.401 DEBUG 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移350: products.min_discount_level 列已存在,跳过
  1131. 2026-11-06 02:19:47.436 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移360: 已恢复 BASIC 体验会员等级
  1132. 2026-11-06 02:19:47.469 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移360: 已恢复 BASIC 会员权益
  1133. 2026-11-06 02:19:47.469 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移351: 已回填 membership_levels.level_order(8 行):FREE=1 BASIC=2 FAMILY=3 PREMIUM=4 LIFETIME=5; PROVIDER=1(非会员)
  1134. 2026-11-06 02:19:47.470 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移381: 已修正 membership_levels.level_order(6 行):FREE=1 BASIC=2 FAMILY=3 PREMIUM=4 LIFETIME=5 PROVIDER=1(非会员)
  1135. 2026-11-06 02:19:47.471 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移352: 已清理遗留权益记录(0 行)
  1136. 2026-11-06 02:19:47.472 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移352: 已清理 REPORT_UPLOAD 配额记录(0 行)
  1137. 2026-11-06 02:19:47.473 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移405: 已更新 BASIC 等级口径(features/max_tasks_per_day/level_desc)
  1138. 2026-11-06 02:19:47.552 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移405: 已更新 BASIC 权益列表(AI对话更名/去测评预约/增识别与会员价)
  1139. 2026-11-06 02:19:47.553 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移405: 已清理旧口径配额记录(0 行)
  1140. 2026-11-06 02:19:47.554 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移345: 已创建 product_dimension_mapping 表
  1141. 2026-11-06 02:19:47.555 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移346: 已创建 product_recommendation_log 表
  1142. 2026-11-06 02:19:47.556 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移347a: 已创建 repurchase_reminder_record 表
  1143. 2026-11-06 02:19:47.557 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移347b: 已创建 repurchase_reminder_config 表
  1144. 2026-11-06 02:19:47.558 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移348: 已创建 recommendation_product_associations 表
  1145. 2026-11-06 02:19:47.560 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.ab_test_group 已存在,跳过
  1146. 2026-11-06 02:19:47.561 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.recommendation_type 已存在,跳过
  1147. 2026-11-06 02:19:47.562 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移349: product_recommendation_log 已添加 ab_test_group / recommendation_type 列
  1148. 2026-11-06 02:19:47.563 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移353: 已创建 task_reminder_config 表
  1149. 2026-11-06 02:19:47.564 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_reminder_config.completion_praise_enabled 已存在,跳过
  1150. 2026-11-06 02:19:47.566 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 task_reminder_config.completion_praise_channels 已存在,跳过
  1151. 2026-11-06 02:19:47.567 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.family_id 已存在,跳过
  1152. 2026-11-06 02:19:47.568 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.was_clicked 已存在,跳过
  1153. 2026-11-06 02:19:47.569 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.was_purchased 已存在,跳过
  1154. 2026-11-06 02:19:47.571 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.clicked_at 已存在,跳过
  1155. 2026-11-06 02:19:47.572 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.purchased_at 已存在,跳过
  1156. 2026-11-06 02:19:47.573 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_recommendation_log.updated_at 已存在,跳过
  1157. 2026-11-06 02:19:47.573 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移355: product_recommendation_log 已补齐缺失列
  1158. 2026-11-06 02:19:47.574 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移359: 已创建 diet_family_selected_ingredients 表
  1159. 2026-11-06 02:19:47.575 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移359: 已创建 sso_ticket 表
  1160. 2026-11-06 02:19:47.577 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移327: 已创建 report_feedback 表
  1161. 2026-11-06 02:19:47.578 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移313: 已修复 meal_configs 双编码 participant_member_ids
  1162. 2026-11-06 02:19:47.579 WARN 17028 --- [ 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'
  1163. 2026-11-06 02:19:47.580 WARN 17028 --- [ 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'
  1164. 2026-11-06 02:19:47.611 INFO 17028 --- [eduler_Worker-9] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  1165. 2026-11-06 02:19:47.612 DEBUG 17028 --- [eduler_Worker-9] 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
  1166. 2026-11-06 02:19:47.612 DEBUG 17028 --- [eduler_Worker-9] c.e.c.m.T.selectList : ==> Parameters: running(String)
  1167. 2026-11-06 02:19:47.614 DEBUG 17028 --- [eduler_Worker-9] c.e.c.m.T.selectList : <== Total: 0
  1168. 2026-11-06 02:19:47.614 INFO 17028 --- [eduler_Worker-9] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  1169. 2026-11-06 02:19:47.694 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移314: meal_configs 已删除旧 UNIQUE KEY uk_config
  1170. 2026-11-06 02:19:47.836 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移314: meal_configs 已添加新 UNIQUE KEY uk_config(支持当天临时配置)
  1171. 2026-11-06 02:19:47.837 WARN 17028 --- [ 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'
  1172. 2026-11-06 02:19:47.839 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已创建 doa_stage 表
  1173. 2026-11-06 02:19:47.840 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已创建 doa_goal 表
  1174. 2026-11-06 02:19:47.841 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已创建 doa_week 表
  1175. 2026-11-06 02:19:47.869 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 已授权 admin 角色
  1176. 2026-11-06 02:19:47.869 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移318: 系统提示词菜单挂载完成 id=106
  1177. 2026-11-06 02:19:47.870 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移319: health_plan 提示词已存在,跳过
  1178. 2026-11-06 02:19:47.872 WARN 17028 --- [ 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'
  1179. 2026-11-06 02:19:47.873 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.level_order 已存在,跳过
  1180. 2026-11-06 02:19:47.874 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移321: 已回填 membership_levels.level_order
  1181. 2026-11-06 02:19:47.875 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.min_visible_level 已存在,跳过
  1182. 2026-11-06 02:19:47.877 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 shop_categories.min_visible_level 已存在,跳过
  1183. 2026-11-06 02:19:47.877 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移321: 已完成商品/分类按会员级别可见性改造
  1184. 2026-11-06 02:19:47.878 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建article_quiz_records表
  1185. 2026-11-06 02:19:47.880 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 profile_snapshot.quiz_summary 已存在,跳过
  1186. 2026-11-06 02:19:47.881 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 dan_assessment_results.language_score 已存在,跳过
  1187. 2026-11-06 02:19:47.882 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移323: 已确保 language_score 列存在于 dan_assessment_results
  1188. 2026-11-06 02:19:47.883 WARN 17028 --- [ 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'
  1189. 2026-11-06 02:19:47.884 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移325: 已回填 article_reading_records.article_id 0 条记录
  1190. 2026-11-06 02:19:47.886 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 article_reading_records.reading_completed 已存在,跳过
  1191. 2026-11-06 02:19:47.887 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 octopus_key_person.first_meet_time 已存在,跳过
  1192. 2026-11-06 02:19:47.887 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移342: octopus_key_person.first_meet_time 列已添加
  1193. 2026-11-06 02:19:47.888 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 octopus_key_person.referrer_id 已存在,跳过
  1194. 2026-11-06 02:19:47.888 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移342: octopus_key_person.referrer_id 列已添加
  1195. 2026-11-06 02:19:47.890 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 octopus_key_person.system_user_id 已存在,跳过
  1196. 2026-11-06 02:19:47.890 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移342: octopus_key_person.system_user_id 列已添加
  1197. 2026-11-06 02:19:47.892 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 report_type_registry.expected_indicators 已存在,跳过
  1198. 2026-11-06 02:19:47.893 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_report_drafts.collect_validation 已存在,跳过
  1199. 2026-11-06 02:19:47.899 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_a1 已有指标项定义,跳过种子
  1200. 2026-11-06 02:19:47.900 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_a2 已有指标项定义,跳过种子
  1201. 2026-11-06 02:19:47.901 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b2 已有指标项定义,跳过种子
  1202. 2026-11-06 02:19:47.901 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b3 已有指标项定义,跳过种子
  1203. 2026-11-06 02:19:47.902 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b4 已有指标项定义,跳过种子
  1204. 2026-11-06 02:19:47.903 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b5 已有指标项定义,跳过种子
  1205. 2026-11-06 02:19:47.903 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_b6 已有指标项定义,跳过种子
  1206. 2026-11-06 02:19:47.904 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 dan_c1 已有指标项定义,跳过种子
  1207. 2026-11-06 02:19:47.904 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 gut_flora 已有指标项定义,跳过种子
  1208. 2026-11-06 02:19:47.905 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移354: 类型 gut_flora_beijing 已有指标项定义,跳过种子
  1209. 2026-11-06 02:19:47.906 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移355: 已创建fat_weight_record表
  1210. 2026-11-06 02:19:47.907 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移356: 已创建fat_diet_record表
  1211. 2026-11-06 02:19:47.908 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移357: 已创建fat_exercise_record表
  1212. 2026-11-06 02:19:47.909 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移358: 已创建fat_goal表
  1213. 2026-11-06 02:19:47.910 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.vendor_visible 已存在,跳过
  1214. 2026-11-06 02:19:47.911 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.contraindicated_diseases 已存在,跳过
  1215. 2026-11-06 02:19:47.912 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.allergen_tags 已存在,跳过
  1216. 2026-11-06 02:19:47.914 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.drug_interaction_flags 已存在,跳过
  1217. 2026-11-06 02:19:47.915 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移368: 已创建drug_interactions表
  1218. 2026-11-06 02:19:47.916 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移369: 已创建disease_intake_limits表
  1219. 2026-11-06 02:19:47.927 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移370: drug_interactions种子数据初始化完成
  1220. 2026-11-06 02:19:47.933 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移371: disease_intake_limits种子数据初始化完成
  1221. 2026-11-06 02:19:47.935 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.source_kind 已存在,跳过
  1222. 2026-11-06 02:19:47.936 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.report_type_scope 已存在,跳过
  1223. 2026-11-06 02:19:47.937 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.value_type 已存在,跳过
  1224. 2026-11-06 02:19:47.938 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.good_direction 已存在,跳过
  1225. 2026-11-06 02:19:47.939 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.dimension_code 已存在,跳过
  1226. 2026-11-06 02:19:47.939 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移356: indicator_definitions 已补齐统一指标层 5 列
  1227. 2026-11-06 02:19:47.941 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.subject_id 已存在,跳过
  1228. 2026-11-06 02:19:47.942 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.family_id 已存在,跳过
  1229. 2026-11-06 02:19:47.943 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.report_id 已存在,跳过
  1230. 2026-11-06 02:19:47.944 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.report_date 已存在,跳过
  1231. 2026-11-06 02:19:47.945 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.unit 已存在,跳过
  1232. 2026-11-06 02:19:47.946 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.status 已存在,跳过
  1233. 2026-11-06 02:19:47.946 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移357: indicator_values 已补齐统一观测时序 6 列
  1234. 2026-11-06 02:19:47.949 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移358: 已清理 indicator_values 重复行(如有)
  1235. 2026-11-06 02:19:47.951 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移358: uk_source_definition 已存在,跳过
  1236. 2026-11-06 02:19:47.952 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移358: idx_subject_def_date 已存在,跳过
  1237. 2026-11-06 02:19:47.953 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移359: 已创建 indicator_mapping_rules 表
  1238. 2026-11-06 02:19:47.954 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移360: 已创建 indicator_correlations 表
  1239. 2026-11-06 02:19:47.955 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_indicators.collection_date 已存在,跳过
  1240. 2026-11-06 02:19:47.955 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移361: health_indicators.collection_date 已确认存在
  1241. 2026-11-06 02:19:47.958 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 已创建procurement_tasks表
  1242. 2026-11-06 02:19:47.965 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 diet_preferences.no_preference 已存在,跳过
  1243. 2026-11-06 02:19:47.990 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移366: 9.9 元/月健康会员统一使用 BASIC 体验会员,已移除重复的 LITE 等级(0 行)
  1244. 2026-11-06 02:19:47.993 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.tags 已存在,跳过
  1245. 2026-11-06 02:19:47.993 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移373: products.tags 已确认存在
  1246. 2026-11-06 02:19:47.994 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移374: 已创建/确认 user_content_weights 表
  1247. 2026-11-06 02:19:48.001 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移375: article_quiz_records 表结构修复完成
  1248. 2026-11-06 02:19:48.002 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_status.lifestyle 已存在,跳过
  1249. 2026-11-06 02:19:48.003 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 diet_preferences.diet_structure 已存在,跳过
  1250. 2026-11-06 02:19:48.003 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移378: member_indicator_current 表就绪
  1251. 2026-11-06 02:19:48.005 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移379: report_member_permissions 表就绪
  1252. 2026-11-06 02:19:48.006 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移381: 已创建/确认 activity_poster_templates 表
  1253. 2026-11-06 02:19:48.044 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移381: 默认海报模板种子数据已确认
  1254. 2026-11-06 02:19:48.079 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移386: 已清理规划师占位数据 0 行,teacher_status 默认值改为 NULL
  1255. 2026-11-06 02:19:48.082 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移387: 服务角色申请菜单已下线(菜单 1 行,授权 0 行)
  1256. 2026-11-06 02:19:48.083 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.intro 已存在,跳过
  1257. 2026-11-06 02:19:48.084 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.tags 已存在,跳过
  1258. 2026-11-06 02:19:48.086 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_status.signature 已存在,跳过
  1259. 2026-11-06 02:19:48.087 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_status.signed_at 已存在,跳过
  1260. 2026-11-06 02:19:48.088 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 water_record.task_id 已存在,跳过
  1261. 2026-11-06 02:19:48.089 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 family_platform_exchange_record.family_coupon_id 已存在,跳过
  1262. 2026-11-06 02:19:48.090 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.poster_template_id 已存在,跳过
  1263. 2026-11-06 02:19:48.091 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移389: 已创建 special_price_deals 表
  1264. 2026-11-06 02:19:48.092 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_orders.special_deal_id 已存在,跳过
  1265. 2026-11-06 02:19:48.093 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_registrations.cancelled_at 已存在,跳过
  1266. 2026-11-06 02:19:48.094 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_registrations.cancel_reason 已存在,跳过
  1267. 2026-11-06 02:19:48.095 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activity_feedback.updated_at 已存在,跳过
  1268. 2026-11-06 02:19:48.096 WARN 17028 --- [ 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'
  1269. 2026-11-06 02:19:48.097 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移393: 已创建 organizations 表
  1270. 2026-11-06 02:19:48.098 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移393b: 已创建 org_members 表
  1271. 2026-11-06 02:19:48.099 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移394: 已创建/确认 planner_cert_categories 表
  1272. 2026-11-06 02:19:48.144 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移394: 首批学习种类种子数据已确认
  1273. 2026-11-06 02:19:48.145 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移395: 已创建/确认 planner_courses 表
  1274. 2026-11-06 02:19:48.147 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移396: 已创建/确认 planner_course_progress 表
  1275. 2026-11-06 02:19:48.148 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移397: 已创建/确认 planner_offline_course_map 表
  1276. 2026-11-06 02:19:48.150 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移398: 已创建/确认 activity_checkins 表
  1277. 2026-11-06 02:19:48.151 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移399: 已创建/确认 planner_certifications 表
  1278. 2026-11-06 02:19:48.154 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移400: 已创建/确认考核三表(试卷/题库/作答记录)
  1279. 2026-11-06 02:19:48.155 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移401: 存量规划师基础类别认证补登 0 行
  1280. 2026-11-06 02:19:48.195 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移402: products.delivery_method COMMENT 已增加 6=同城配送
  1281. 2026-11-06 02:19:48.228 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移402: product_orders.delivery_method COMMENT 已增加 6=同城配送
  1282. 2026-11-06 02:19:48.261 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移404: articles.audio_url 已改为 MEDIUMTEXT
  1283. 2026-11-06 02:19:48.263 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移407: 已创建 cf_balance 表
  1284. 2026-11-06 02:19:48.265 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移407: 已创建 cf_balance_log 表
  1285. 2026-11-06 02:19:48.266 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移408: 已创建 cf_earn_rule 表
  1286. 2026-11-06 02:19:48.267 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移408: 已创建 cf_earn_rule_history 表
  1287. 2026-11-06 02:19:48.281 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移409: 已创建 cf_direct_sales_tier 表
  1288. 2026-11-06 02:19:48.283 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移409: 已创建 cf_indirect_sales_tier 表
  1289. 2026-11-06 02:19:48.284 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移410: 已创建 cf_earn_daily_limit 表
  1290. 2026-11-06 02:19:48.297 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 coupon.family_id 已存在,跳过
  1291. 2026-11-06 02:19:48.299 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_coupon.family_id 已存在,跳过
  1292. 2026-11-06 02:19:48.302 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移412: 已创建 service_config 表
  1293. 2026-11-06 02:19:48.315 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移413: service_config.product_key 已存在,跳过加列
  1294. 2026-11-06 02:19:48.317 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移413: product_config 表不存在(本基线无该表),跳过数据并入(幂等空跑)
  1295. 2026-11-06 02:19:48.318 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移414: audit_log 表已就绪
  1296. 2026-11-06 02:19:48.320 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移415: family_food_overview 表已就绪
  1297. 2026-11-06 02:19:48.322 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 cf_balance_log.operator_user_id 已存在,跳过
  1298. 2026-11-06 02:19:48.332 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1055 refId=0,跳过
  1299. 2026-11-06 02:19:48.333 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1107 refId=0,跳过
  1300. 2026-11-06 02:19:48.334 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1113 refId=0,跳过
  1301. 2026-11-06 02:19:48.335 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1121 refId=0,跳过
  1302. 2026-11-06 02:19:48.335 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1127 refId=0,跳过
  1303. 2026-11-06 02:19:48.336 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1133 refId=0,跳过
  1304. 2026-11-06 02:19:48.336 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1140 refId=0,跳过
  1305. 2026-11-06 02:19:48.337 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1146 refId=0,跳过
  1306. 2026-11-06 02:19:48.338 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1152 refId=0,跳过
  1307. 2026-11-06 02:19:48.338 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1159 refId=0,跳过
  1308. 2026-11-06 02:19:48.339 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1165 refId=0,跳过
  1309. 2026-11-06 02:19:48.339 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1177 refId=0,跳过
  1310. 2026-11-06 02:19:48.340 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1183 refId=0,跳过
  1311. 2026-11-06 02:19:48.340 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1189 refId=0,跳过
  1312. 2026-11-06 02:19:48.341 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1195 refId=0,跳过
  1313. 2026-11-06 02:19:48.342 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1201 refId=0,跳过
  1314. 2026-11-06 02:19:48.342 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1207 refId=0,跳过
  1315. 2026-11-06 02:19:48.343 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1213 refId=0,跳过
  1316. 2026-11-06 02:19:48.343 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1222 refId=0,跳过
  1317. 2026-11-06 02:19:48.344 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1228 refId=0,跳过
  1318. 2026-11-06 02:19:48.344 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1234 refId=0,跳过
  1319. 2026-11-06 02:19:48.345 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1240 refId=0,跳过
  1320. 2026-11-06 02:19:48.345 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1253 refId=0,跳过
  1321. 2026-11-06 02:19:48.346 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1265 refId=0,跳过
  1322. 2026-11-06 02:19:48.347 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1277 refId=0,跳过
  1323. 2026-11-06 02:19:48.348 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1289 refId=0,跳过
  1324. 2026-11-06 02:19:48.349 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1301 refId=0,跳过
  1325. 2026-11-06 02:19:48.349 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1307 refId=0,跳过
  1326. 2026-11-06 02:19:48.350 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1319 refId=0,跳过
  1327. 2026-11-06 02:19:48.351 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1331 refId=0,跳过
  1328. 2026-11-06 02:19:48.352 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1343 refId=0,跳过
  1329. 2026-11-06 02:19:48.352 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1355 refId=0,跳过
  1330. 2026-11-06 02:19:48.353 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1361 refId=0,跳过
  1331. 2026-11-06 02:19:48.354 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1379 refId=0,跳过
  1332. 2026-11-06 02:19:48.354 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1385 refId=0,跳过
  1333. 2026-11-06 02:19:48.355 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1397 refId=0,跳过
  1334. 2026-11-06 02:19:48.356 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1409 refId=0,跳过
  1335. 2026-11-06 02:19:48.356 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1421 refId=0,跳过
  1336. 2026-11-06 02:19:48.357 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1433 refId=0,跳过
  1337. 2026-11-06 02:19:48.358 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1451 refId=0,跳过
  1338. 2026-11-06 02:19:48.358 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=1515 refId=0,跳过
  1339. 2026-11-06 02:19:48.359 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_family_pool 已存在迁移流水 memberId=2017 refId=0,跳过
  1340. 2026-11-06 02:19:48.906 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1017 refId=1,跳过
  1341. 2026-11-06 02:19:48.907 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1055 refId=2,跳过
  1342. 2026-11-06 02:19:48.907 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1107 refId=3,跳过
  1343. 2026-11-06 02:19:48.908 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1113 refId=4,跳过
  1344. 2026-11-06 02:19:48.909 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1121 refId=5,跳过
  1345. 2026-11-06 02:19:48.910 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1127 refId=6,跳过
  1346. 2026-11-06 02:19:48.910 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1133 refId=7,跳过
  1347. 2026-11-06 02:19:48.911 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1140 refId=8,跳过
  1348. 2026-11-06 02:19:48.912 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1146 refId=9,跳过
  1349. 2026-11-06 02:19:48.912 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1152 refId=10,跳过
  1350. 2026-11-06 02:19:48.913 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1159 refId=11,跳过
  1351. 2026-11-06 02:19:48.914 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1165 refId=12,跳过
  1352. 2026-11-06 02:19:48.915 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1177 refId=13,跳过
  1353. 2026-11-06 02:19:48.916 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1183 refId=14,跳过
  1354. 2026-11-06 02:19:48.917 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1189 refId=15,跳过
  1355. 2026-11-06 02:19:48.918 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1195 refId=16,跳过
  1356. 2026-11-06 02:19:48.919 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1201 refId=17,跳过
  1357. 2026-11-06 02:19:48.919 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1207 refId=18,跳过
  1358. 2026-11-06 02:19:48.920 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1213 refId=19,跳过
  1359. 2026-11-06 02:19:48.921 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1222 refId=20,跳过
  1360. 2026-11-06 02:19:48.922 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1228 refId=21,跳过
  1361. 2026-11-06 02:19:48.923 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1234 refId=22,跳过
  1362. 2026-11-06 02:19:48.923 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1240 refId=23,跳过
  1363. 2026-11-06 02:19:48.924 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1253 refId=24,跳过
  1364. 2026-11-06 02:19:48.925 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1265 refId=25,跳过
  1365. 2026-11-06 02:19:48.925 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1277 refId=26,跳过
  1366. 2026-11-06 02:19:48.926 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1289 refId=27,跳过
  1367. 2026-11-06 02:19:48.927 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1301 refId=28,跳过
  1368. 2026-11-06 02:19:48.928 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1307 refId=29,跳过
  1369. 2026-11-06 02:19:48.929 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1319 refId=30,跳过
  1370. 2026-11-06 02:19:48.929 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1331 refId=31,跳过
  1371. 2026-11-06 02:19:48.930 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1343 refId=32,跳过
  1372. 2026-11-06 02:19:48.931 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1355 refId=33,跳过
  1373. 2026-11-06 02:19:48.932 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1361 refId=34,跳过
  1374. 2026-11-06 02:19:48.933 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1379 refId=35,跳过
  1375. 2026-11-06 02:19:48.934 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1385 refId=36,跳过
  1376. 2026-11-06 02:19:48.935 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1397 refId=37,跳过
  1377. 2026-11-06 02:19:48.935 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1409 refId=38,跳过
  1378. 2026-11-06 02:19:48.936 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1421 refId=39,跳过
  1379. 2026-11-06 02:19:48.937 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1433 refId=40,跳过
  1380. 2026-11-06 02:19:48.938 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1451 refId=41,跳过
  1381. 2026-11-06 02:19:48.938 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=1515 refId=42,跳过
  1382. 2026-11-06 02:19:48.939 DEBUG 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: migration_user_wallet 已存在迁移流水 memberId=2017 refId=43,跳过
  1383. 2026-11-06 02:19:48.939 INFO 17028 --- [ main] c.e.c.s.CfLegacyLedgerMigrationService : 迁移417: 三套旧 CF 账本迁移完成,本次迁入 0 笔
  1384. 2026-11-06 02:19:48.940 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移417: 旧账本存量迁移完成,本次新增 0 笔
  1385. 2026-11-06 02:19:48.953 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 membership_levels.max_daily_analyze 已存在,跳过
  1386. 2026-11-06 02:19:48.954 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移420: 已创建 ppoint_consumption_log 表
  1387. 2026-11-06 02:19:48.956 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : activities表audience_scope列已存在,跳过
  1388. 2026-11-06 02:19:48.958 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : activities表audience_type列已存在,跳过
  1389. 2026-11-06 02:19:48.959 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移422: health_indicators.collection_date 已存在,放开实体映射的前置条件满足
  1390. 2026-11-06 02:19:48.960 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.date_source 已存在,跳过
  1391. 2026-11-06 02:19:48.961 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_values.ref_range_snapshot 已存在,跳过
  1392. 2026-11-06 02:19:48.962 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移422: indicator_values 已补齐日期来源与参考范围快照 2 列
  1393. 2026-11-06 02:19:48.965 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移423: 已创建 body_fat_scale_records 表
  1394. 2026-11-06 02:19:48.967 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 health_plans.plan_type 已存在,跳过
  1395. 2026-11-06 02:19:48.969 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移425: 已创建 attribution_norm_values 表
  1396. 2026-11-06 02:19:48.970 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移425: 常模种子为占位模板(placeholder=true),0 行导入,等待业务侧填充真实常模
  1397. 2026-11-06 02:19:49.009 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移425-种子: 家庭归因问卷模板已存在(title=家庭归因分析问卷(第八章16条)),幂等启用(enabled=1)
  1398. 2026-11-06 02:19:49.010 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移426: 已创建 attribution_reports 表
  1399. 2026-11-06 02:19:49.011 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移427: 已创建 content_dimension_threshold 表
  1400. 2026-11-06 02:19:49.012 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移428: 已创建 coupon_gift_transfer 表
  1401. 2026-11-06 02:19:49.014 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移428: family_coupon.is_gift 列已存在,跳过
  1402. 2026-11-06 02:19:49.015 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移429: 已创建 indicator_favorite 表
  1403. 2026-11-06 02:19:49.017 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移430跳过:products.purchase_price 已是 int 类型
  1404. 2026-11-06 02:19:49.021 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移431完成:销售奖档位门槛×100(分),档位名新秀/小成/中富/大成/至富
  1405. 2026-11-06 02:19:49.038 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移[家庭名回填XX家庭] 影响行数=0
  1406. 2026-11-06 02:19:49.054 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移[家庭名回填XX家庭] 影响行数=0
  1407. 2026-11-06 02:19:49.056 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 report_type_registry.linked_product_id 已存在,跳过
  1408. 2026-11-06 02:19:49.057 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已创建 family_metric_agg_config 表
  1409. 2026-11-06 02:19:49.089 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.body
  1410. 2026-11-06 02:19:49.122 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.mind
  1411. 2026-11-06 02:19:49.155 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.wisdom
  1412. 2026-11-06 02:19:49.192 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.action
  1413. 2026-11-06 02:19:49.217 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.wealth
  1414. 2026-11-06 02:19:49.219 INFO 17028 --- [eduler_Worker-8] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  1415. 2026-11-06 02:19:49.221 DEBUG 17028 --- [eduler_Worker-8] 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
  1416. 2026-11-06 02:19:49.221 DEBUG 17028 --- [eduler_Worker-8] c.e.c.m.T.selectList : ==> Parameters: running(String)
  1417. 2026-11-06 02:19:49.222 DEBUG 17028 --- [eduler_Worker-8] c.e.c.m.T.selectList : <== Total: 0
  1418. 2026-11-06 02:19:49.222 INFO 17028 --- [eduler_Worker-8] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  1419. 2026-11-06 02:19:49.242 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 energy.overall
  1420. 2026-11-06 02:19:49.267 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 pearl.resources
  1421. 2026-11-06 02:19:49.292 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移433: 已更新预置配置 octopus.effects
  1422. 2026-11-06 02:19:49.560 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移434: 已创建 product_sku_combo_items 表
  1423. 2026-11-06 02:19:49.562 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移434: product_orders.sku_id 列已存在,跳过
  1424. 2026-11-06 02:19:49.565 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.calories_kcal 已存在,跳过
  1425. 2026-11-06 02:19:49.566 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.protein_g 已存在,跳过
  1426. 2026-11-06 02:19:49.568 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.fat_g 已存在,跳过
  1427. 2026-11-06 02:19:49.569 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.carb_g 已存在,跳过
  1428. 2026-11-06 02:19:49.570 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.fiber_g 已存在,跳过
  1429. 2026-11-06 02:19:49.571 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 products.nutrition_tags 已存在,跳过
  1430. 2026-11-06 02:19:49.571 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移436: products 表营养数据字段已就绪
  1431. 2026-11-06 02:19:49.572 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 activities.team_id 已存在,跳过
  1432. 2026-11-06 02:19:49.572 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移437: activities.team_id 列已就绪
  1433. 2026-11-06 02:19:49.573 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移437: 已创建 activity_team 表
  1434. 2026-11-06 02:19:49.574 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移437: 已创建 activity_team_member 表
  1435. 2026-11-06 02:19:49.575 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移437: 已创建 service_assignment 表
  1436. 2026-11-06 02:19:49.577 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移440: 已创建 product_combo_items 表
  1437. 2026-11-06 02:19:49.719 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移441: 已删除 product_sku_combo_items 表
  1438. 2026-11-06 02:19:49.720 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移442: 已删除 product_bundle_items 表
  1439. 2026-11-06 02:19:49.722 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 users.is_child 已存在,跳过
  1440. 2026-11-06 02:19:49.723 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 supply_system_member.invite_code 已存在,跳过
  1441. 2026-11-06 02:19:49.725 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移444: supply_system_member.invite_code 唯一索引已存在,跳过
  1442. 2026-11-06 02:19:49.726 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_dimension_config.legacy_alias 已存在,跳过
  1443. 2026-11-06 02:19:49.727 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_dimension_config.source_system 已存在,跳过
  1444. 2026-11-06 02:19:49.728 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_dimension_config.wuxing_rule_ref 已存在,跳过
  1445. 2026-11-06 02:19:49.729 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 product_dimension_config.node_kind 已存在,跳过
  1446. 2026-11-06 02:19:49.729 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移445: product_dimension_config 注册中心 4 列就绪
  1447. 2026-11-06 02:19:49.731 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.parent_id 已存在,跳过
  1448. 2026-11-06 02:19:49.732 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 indicator_definitions.legacy_alias 已存在,跳过
  1449. 2026-11-06 02:19:49.732 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移446: indicator_definitions 混排 2 列就绪
  1450. 2026-11-06 02:19:49.745 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  1451. 2026-11-06 02:19:49.745 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:49.743(Timestamp)
  1452. 2026-11-06 02:19:49.745 DEBUG 17028 --- [cfc-scheduler-4] 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 < ?)
  1453. 2026-11-06 02:19:49.746 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:49.745(Timestamp)
  1454. 2026-11-06 02:19:49.746 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.A.selectList : <== Total: 0
  1455. 2026-11-06 02:19:49.747 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  1456. 2026-11-06 02:19:49.748 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:49.743(Timestamp)
  1457. 2026-11-06 02:19:49.749 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  1458. 2026-11-06 02:19:49.749 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  1459. 2026-11-06 02:19:49.750 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  1460. 2026-11-06 02:19:49.750 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:49.743(Timestamp)
  1461. 2026-11-06 02:19:49.751 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.M.selectList : <== Total: 0
  1462. 2026-11-06 02:19:49.752 INFO 17028 --- [cfc-scheduler-3] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  1463. 2026-11-06 02:19:49.791 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  1464. 2026-11-06 02:19:49.792 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:49.791(Timestamp), 2026-11-06 02:19:49.791(Timestamp), 20(Integer)
  1465. 2026-11-06 02:19:49.793 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.H.listPendingRetry : <== Total: 0
  1466. 2026-11-06 02:19:50.152 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移447: 统一维度注册中心 5 根 + 7 body 子维度 seed 完成
  1467. 2026-11-06 02:19:50.492 INFO 17028 --- [duler_Worker-10] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  1468. 2026-11-06 02:19:50.493 DEBUG 17028 --- [duler_Worker-10] 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
  1469. 2026-11-06 02:19:50.493 DEBUG 17028 --- [duler_Worker-10] c.e.c.m.T.selectList : ==> Parameters: running(String)
  1470. 2026-11-06 02:19:50.494 DEBUG 17028 --- [duler_Worker-10] c.e.c.m.T.selectList : <== Total: 0
  1471. 2026-11-06 02:19:50.494 INFO 17028 --- [duler_Worker-10] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  1472. 2026-11-06 02:19:50.603 INFO 17028 --- [eduler_Worker-3] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  1473. 2026-11-06 02:19:50.604 DEBUG 17028 --- [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
  1474. 2026-11-06 02:19:50.604 DEBUG 17028 --- [eduler_Worker-3] c.e.c.m.T.selectList : ==> Parameters: running(String)
  1475. 2026-11-06 02:19:50.605 DEBUG 17028 --- [eduler_Worker-3] c.e.c.m.T.selectList : <== Total: 0
  1476. 2026-11-06 02:19:50.606 INFO 17028 --- [eduler_Worker-3] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  1477. 2026-11-06 02:19:50.714 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  1478. 2026-11-06 02:19:50.714 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.A.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:50.712(Timestamp)
  1479. 2026-11-06 02:19:50.714 DEBUG 17028 --- [cfc-scheduler-3] 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 < ?)
  1480. 2026-11-06 02:19:50.715 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.ProductOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:50.714(Timestamp)
  1481. 2026-11-06 02:19:50.716 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.A.selectList : <== Total: 0
  1482. 2026-11-06 02:19:50.716 DEBUG 17028 --- [cfc-scheduler-3] c.e.c.m.ProductOrderMapper.selectList : <== Total: 0
  1483. 2026-11-06 02:19:50.717 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  1484. 2026-11-06 02:19:50.717 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.PaymentOrderMapper.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:50.712(Timestamp)
  1485. 2026-11-06 02:19:50.718 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.PaymentOrderMapper.selectList : <== Total: 0
  1486. 2026-11-06 02:19:50.718 DEBUG 17028 --- [cfc-scheduler-1] 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 < ?)
  1487. 2026-11-06 02:19:50.718 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.M.selectList : ==> Parameters: pending(String), 2026-11-06 01:49:50.712(Timestamp)
  1488. 2026-11-06 02:19:50.719 DEBUG 17028 --- [cfc-scheduler-1] c.e.c.m.M.selectList : <== Total: 0
  1489. 2026-11-06 02:19:50.719 INFO 17028 --- [cfc-scheduler-1] c.etotem.cfc.task.VirtualPayTimeoutTask : 虚拟支付超时兜底扫描完成: 测评=0/0, 会员=0/0, 订阅=0/0
  1490. 2026-11-06 02:19:50.760 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.H.listPendingRetry : ==> Preparing: SELECT * FROM health_report_drafts WHERE status = 'pending' AND parse_status = 'collecting' AND ((next_retry_at IS NOT NULL AND next_retry_at <= ?) OR (next_retry_at IS NULL AND (parse_started_at IS NULL OR parse_started_at < DATE_SUB(?, INTERVAL 30 MINUTE)))) ORDER BY updated_at ASC LIMIT ?
  1491. 2026-11-06 02:19:50.760 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.H.listPendingRetry : ==> Parameters: 2026-11-06 02:19:50.759(Timestamp), 2026-11-06 02:19:50.759(Timestamp), 20(Integer)
  1492. 2026-11-06 02:19:50.762 DEBUG 17028 --- [cfc-scheduler-4] c.e.c.m.H.listPendingRetry : <== Total: 0
  1493. 2026-11-06 02:19:50.844 INFO 17028 --- [eduler_Worker-2] c.e.cfc.task.OrchestrationPollingJob : 编排轮询开始...
  1494. 2026-11-06 02:19:50.845 DEBUG 17028 --- [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
  1495. 2026-11-06 02:19:50.846 DEBUG 17028 --- [eduler_Worker-2] c.e.c.m.T.selectList : ==> Parameters: running(String)
  1496. 2026-11-06 02:19:50.847 DEBUG 17028 --- [eduler_Worker-2] c.e.c.m.T.selectList : <== Total: 0
  1497. 2026-11-06 02:19:50.847 INFO 17028 --- [eduler_Worker-2] c.e.cfc.task.OrchestrationPollingJob : 编排轮询结束
  1498. 2026-11-06 02:19:51.112 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移448: 5 根五行归属 wuxing_rule_ref 已按 energy_dimension.element 补齐
  1499. 2026-11-06 02:19:51.113 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移448: 统一维度注册中心增量 seed 完成(mind10/wisdom7/action5/wealth4 共33子维)
  1500. 2026-11-06 02:19:51.145 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 迁移449: indicator_definitions.dimension_code 已扩宽至 VARCHAR(64)
  1501. 2026-11-06 02:19:51.146 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 开始初始化食品相关表...
  1502. 2026-11-06 02:19:51.158 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.budget_monthly 已存在,跳过
  1503. 2026-11-06 02:19:51.158 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.family_taste_preferences 已存在,跳过
  1504. 2026-11-06 02:19:51.159 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.cuisine_style 已存在,跳过
  1505. 2026-11-06 02:19:51.160 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.meal_count 已存在,跳过
  1506. 2026-11-06 02:19:51.161 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 列 user_nutrition_profile.cooking_ability 已存在,跳过
  1507. 2026-11-06 02:19:51.161 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 食品相关表初始化完成
  1508. 2026-11-06 02:19:51.161 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : init-test-data=false,跳过测试/种子数据初始化(生产模式)
  1509. 2026-11-06 02:19:51.161 INFO 17028 --- [ main] c.etotem.cfc.config.DatabaseInitializer : 数据库初始化完成!
  1510. ]]></system-out>
  1511. </testcase>
  1512. <testcase name="update_Success" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.013"/>
  1513. <testcase name="create_Success" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.01"/>
  1514. <testcase name="list_Success" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.009"/>
  1515. <testcase name="create_WithVendorId" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.009"/>
  1516. <testcase name="shelve_NotOwner" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.01">
  1517. <error message="&#10;Invalid use of argument matchers!&#10;3 matchers expected, 1 recorded:&#10;-&gt; at com.etotem.cfc.controller.ProductControllerTest.shelve_NotOwner(ProductControllerTest.java:319)&#10;&#10;This exception may occur if matchers are combined with raw values:&#10; //incorrect:&#10; someMethod(any(), &quot;raw String&quot;);&#10;When using matchers, all arguments have to be provided by matchers.&#10;For example:&#10; //correct:&#10; someMethod(any(), eq(&quot;String by matcher&quot;));&#10;&#10;For more info see javadoc for Matchers class.&#10;" type="org.mockito.exceptions.misusing.InvalidUseOfMatchersException">org.mockito.exceptions.misusing.InvalidUseOfMatchersException:
  1518. Invalid use of argument matchers!
  1519. 3 matchers expected, 1 recorded:
  1520. -> at com.etotem.cfc.controller.ProductControllerTest.shelve_NotOwner(ProductControllerTest.java:319)
  1521. This exception may occur if matchers are combined with raw values:
  1522. //incorrect:
  1523. someMethod(any(), "raw String");
  1524. When using matchers, all arguments have to be provided by matchers.
  1525. For example:
  1526. //correct:
  1527. someMethod(any(), eq("String by matcher"));
  1528. For more info see javadoc for Matchers class.
  1529. at com.etotem.cfc.controller.ProductControllerTest.shelve_NotOwner(ProductControllerTest.java:319)
  1530. </error>
  1531. </testcase>
  1532. <testcase name="detail_ProductNotFound" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.014"/>
  1533. <testcase name="detail_DraftProduct" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.021"/>
  1534. <testcase name="list_WithCategoryFilter" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.01"/>
  1535. <testcase name="list_EmptyResult" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.009"/>
  1536. <testcase name="shelve_UnshelveSuccess" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.012">
  1537. <error message="&#10;Invalid use of argument matchers!&#10;3 matchers expected, 1 recorded:&#10;-&gt; at com.etotem.cfc.controller.ProductControllerTest.shelve_UnshelveSuccess(ProductControllerTest.java:304)&#10;&#10;This exception may occur if matchers are combined with raw values:&#10; //incorrect:&#10; someMethod(any(), &quot;raw String&quot;);&#10;When using matchers, all arguments have to be provided by matchers.&#10;For example:&#10; //correct:&#10; someMethod(any(), eq(&quot;String by matcher&quot;));&#10;&#10;For more info see javadoc for Matchers class.&#10;" type="org.mockito.exceptions.misusing.InvalidUseOfMatchersException">org.mockito.exceptions.misusing.InvalidUseOfMatchersException:
  1538. Invalid use of argument matchers!
  1539. 3 matchers expected, 1 recorded:
  1540. -> at com.etotem.cfc.controller.ProductControllerTest.shelve_UnshelveSuccess(ProductControllerTest.java:304)
  1541. This exception may occur if matchers are combined with raw values:
  1542. //incorrect:
  1543. someMethod(any(), "raw String");
  1544. When using matchers, all arguments have to be provided by matchers.
  1545. For example:
  1546. //correct:
  1547. someMethod(any(), eq("String by matcher"));
  1548. For more info see javadoc for Matchers class.
  1549. at com.etotem.cfc.controller.ProductControllerTest.shelve_UnshelveSuccess(ProductControllerTest.java:304)
  1550. </error>
  1551. </testcase>
  1552. <testcase name="list_WithKeywordSearch" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.014"/>
  1553. <testcase name="update_NotFound" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.008"/>
  1554. <testcase name="myProducts_Empty" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.014"/>
  1555. <testcase name="myProducts_Success" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.011"/>
  1556. <testcase name="detail_Success" classname="com.etotem.cfc.controller.ProductControllerTest" time="0.013"/>
  1557. </testsuite>