@yjzf/mcp-server-yjzf 0.2.9 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/tools/contract/investment_contract.d.ts +10 -2
- package/dist/tools/contract/investment_contract.d.ts.map +1 -1
- package/dist/tools/contract/investment_contract.js +32 -86
- package/dist/tools/contract/investment_contract.js.map +1 -1
- package/dist/tools/contract/new_house_commission_export.js +8 -8
- package/dist/tools/contract/new_house_commission_export.js.map +1 -1
- package/dist/tools/contract/new_house_developer_repayment_export.d.ts +6 -4
- package/dist/tools/contract/new_house_developer_repayment_export.d.ts.map +1 -1
- package/dist/tools/contract/new_house_developer_repayment_export.js +32 -10
- package/dist/tools/contract/new_house_developer_repayment_export.js.map +1 -1
- package/dist/tools/data/count_all_statement.d.ts +7 -15
- package/dist/tools/data/count_all_statement.d.ts.map +1 -1
- package/dist/tools/data/count_all_statement.js +130 -271
- package/dist/tools/data/count_all_statement.js.map +1 -1
- package/dist/tools/data/investment_follow_up_export.d.ts +30 -0
- package/dist/tools/data/investment_follow_up_export.d.ts.map +1 -0
- package/dist/tools/data/investment_follow_up_export.js +131 -0
- package/dist/tools/data/investment_follow_up_export.js.map +1 -0
- package/dist/tools/data/investment_opportunities_export.d.ts +22 -0
- package/dist/tools/data/investment_opportunities_export.d.ts.map +1 -0
- package/dist/tools/data/investment_opportunities_export.js +105 -0
- package/dist/tools/data/investment_opportunities_export.js.map +1 -0
- package/dist/tools/data/statement_query.d.ts +2 -1
- package/dist/tools/data/statement_query.d.ts.map +1 -1
- package/dist/tools/data/statement_query.js +40 -2
- package/dist/tools/data/statement_query.js.map +1 -1
- package/dist/tools/data/switch_store_management_export.d.ts +24 -0
- package/dist/tools/data/switch_store_management_export.d.ts.map +1 -0
- package/dist/tools/data/switch_store_management_export.js +102 -0
- package/dist/tools/data/switch_store_management_export.js.map +1 -0
- package/dist/tools/house/umai_good_house_export.d.ts +22 -0
- package/dist/tools/house/umai_good_house_export.d.ts.map +1 -0
- package/dist/tools/house/umai_good_house_export.js +147 -0
- package/dist/tools/house/umai_good_house_export.js.map +1 -0
- package/dist/utils/excel.d.ts +14 -0
- package/dist/utils/excel.d.ts.map +1 -1
- package/dist/utils/excel.js +35 -0
- package/dist/utils/excel.js.map +1 -1
- package/package.json +1 -1
- package/dist/tools/count_all_statement.d.ts +0 -46
- package/dist/tools/count_all_statement.d.ts.map +0 -1
- package/dist/tools/count_all_statement.js +0 -334
- package/dist/tools/count_all_statement.js.map +0 -1
- package/dist/tools/date_to_timestamp.d.ts +0 -19
- package/dist/tools/date_to_timestamp.d.ts.map +0 -1
- package/dist/tools/date_to_timestamp.js +0 -45
- package/dist/tools/date_to_timestamp.js.map +0 -1
- package/dist/tools/get_current_time.d.ts +0 -13
- package/dist/tools/get_current_time.d.ts.map +0 -1
- package/dist/tools/get_current_time.js +0 -23
- package/dist/tools/get_current_time.js.map +0 -1
- package/dist/tools/hello_world.d.ts +0 -20
- package/dist/tools/hello_world.d.ts.map +0 -1
- package/dist/tools/hello_world.js +0 -47
- package/dist/tools/hello_world.js.map +0 -1
- package/dist/tools/investment_contract.d.ts +0 -8
- package/dist/tools/investment_contract.d.ts.map +0 -1
- package/dist/tools/investment_contract.js +0 -106
- package/dist/tools/investment_contract.js.map +0 -1
- package/dist/tools/new_house_contract_export.d.ts +0 -14
- package/dist/tools/new_house_contract_export.d.ts.map +0 -1
- package/dist/tools/new_house_contract_export.js +0 -242
- package/dist/tools/new_house_contract_export.js.map +0 -1
- package/dist/tools/overview_by_c.d.ts +0 -26
- package/dist/tools/overview_by_c.d.ts.map +0 -1
- package/dist/tools/overview_by_c.js +0 -204
- package/dist/tools/overview_by_c.js.map +0 -1
- package/dist/tools/statement_query.d.ts +0 -43
- package/dist/tools/statement_query.d.ts.map +0 -1
- package/dist/tools/statement_query.js +0 -430
- package/dist/tools/statement_query.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"count_all_statement.js","sourceRoot":"","sources":["../../src/tools/count_all_statement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAwE1C,iCAAiC;AACjC,MAAM,kBAAkB,GAAkB;IACxC,CAAC,MAAM,EAAE,oBAAoB,CAAC;IAC9B,CAAC,MAAM,EAAE,aAAa,CAAC;IACvB,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAC1B,CAAC,OAAO,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF,MAAM,iBAAiB,GAAkB;IACvC,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,MAAM,EAAE,aAAa,CAAC;IACvB,CAAC,IAAI,EAAE,aAAa,CAAC;IACrB,CAAC,KAAK,EAAE,OAAO,CAAC;IAChB,CAAC,QAAQ,EAAE,aAAa,CAAC;IACzB,CAAC,MAAM,EAAE,kBAAkB,CAAC;CAC7B,CAAC;AAEF,6BAA6B;AAC7B,MAAM,sBAAsB,GAAkB;IAC5C,CAAC,KAAK,EAAE,cAAc,CAAC;IACvB,CAAC,MAAM,EAAE,oBAAoB,CAAC;CAC/B,CAAC;AAEF,MAAM,0BAA0B,GAAkB;IAChD,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACzB,CAAC,KAAK,EAAE,cAAc,CAAC;IACvB,CAAC,MAAM,EAAE,oBAAoB,CAAC;CAC/B,CAAC;AAEF,MAAM,oBAAoB,GAAkB;IAC1C,CAAC,IAAI,EAAE,YAAY,CAAC;IACpB,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACzB,CAAC,KAAK,EAAE,cAAc,CAAC;IACvB,CAAC,MAAM,EAAE,oBAAoB,CAAC;CAC/B,CAAC;AAEF,oCAAoC;AACpC,MAAM,mBAAmB,GAAkB;IACzC,CAAC,OAAO,EAAE,WAAW,CAAC;IACtB,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,IAAI,EAAE,aAAa,CAAC;IACrB,CAAC,KAAK,EAAE,YAAY,CAAC;IACrB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,IAAI,EAAE,WAAW,CAAC;IACnB,CAAC,MAAM,EAAE,YAAY,CAAC;IACtB,CAAC,MAAM,EAAE,kBAAkB,CAAC;CAC7B,CAAC;AAEF,oCAAoC;AACpC,MAAM,wBAAwB,GAAkB;IAC9C,CAAC,OAAO,EAAE,eAAe,CAAC;IAC1B,CAAC,OAAO,EAAE,aAAa,CAAC;IACxB,CAAC,OAAO,EAAE,aAAa,CAAC;IACxB,CAAC,OAAO,EAAE,cAAc,CAAC;IACzB,CAAC,MAAM,EAAE,kBAAkB,CAAC;CAC7B,CAAC;AAEF,SAAS,iBAAiB,CAAC,eAAiC;IAC1D,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,gBAAgB,CAAC,eAAiC;IACzD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CACrB,IAA+B,EAC/B,YAA2B;IAE3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEjC,MAAM,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,YAAY,GAAG,iBAAiB,CACnC,IAAI,CAAC,CAAC,CAA2C,CAAC,eAAe,CACnE,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,GAAG,YAAY,EAAE,GAAG,YAAY,CAAC,CAAC;IAEnD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC7B,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,gBAAgB,CACjC,IAA8C,CAAC,eAAe,CAChE,CAAC;QACF,OAAO,CAAC,GAAG,WAAW,EAAE,GAAG,WAAW,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,qBAAqB,CAAC;AAE1C,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE;;;;;;;;;;;;;mDAaoC;IACjD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,SAAS;QACT,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;aACnC,QAAQ,CAAC,yEAAyE,CAAC;QACtF,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aACtC,QAAQ,CAAC,2HAA2H,CAAC;QACxI,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aACvC,QAAQ,CAAC,2FAA2F,CAAC;QACxG,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aAC5C,QAAQ,CAAC,0FAA0F,CAAC;QACvG,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aAC1C,QAAQ,CAAC,8GAA8G,CAAC;QAC3H,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aAC3C,QAAQ,CAAC,gIAAgI,CAAC;QAC7I,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aACzC,QAAQ,CAAC,4GAA4G,CAAC;QACzH,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aAC7C,QAAQ,CAAC;;;sFAGsE,CAAC;QAEnF,OAAO;QACP,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;QAC1E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;QAC7E,KAAK;QACL,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QACpE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;KAC1E,CAAC;CACH,CAAC;AAEF,MAAM,eAAe,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,iBAAiB;AAEjE,SAAS,mBAAmB;IAC1B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAClG,OAAO;QACL,SAAS,EAAE,UAAU,CAAC,OAAO,EAAE;QAC/B,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE;KAC7B,CAAC;AACJ,CAAC;AA6BD,MAAM,mBAAmB,GAAkC;IACzD,aAAa;IACb,CAAC,EAAE,kBAAkB;IACrB,CAAC,EAAE,iBAAiB;IACpB,0BAA0B;IAC1B,EAAE,EAAE,sBAAsB;IAC1B,EAAE,EAAE,0BAA0B;IAC9B,EAAE,EAAE,oBAAoB;IACxB,wBAAwB;IACxB,CAAC,EAAE,mBAAmB;IACtB,EAAE,EAAE,wBAAwB;CAC7B,CAAC;AAEF,MAAM,qBAAqB,GAAkB;IAC3C,CAAC,IAAI,EAAE,oBAAoB,CAAC;CAC7B,CAAC;AAEF,SAAS,iBAAiB,CAAC,KAAa;IACtC,MAAM,MAAM,GAA2B;QACrC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK;QAChC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK;KACxC,CAAC;IACF,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;AACvC,CAAC;AAED,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAa7B;IACC,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC;IACvD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC;IAEjD,oCAAoC;IACpC,IAAI,IAAI,CAAC,eAAe,KAAK,EAAE,IAAI,OAAO,GAAG,SAAS,GAAG,eAAe,EAAE,CAAC;QACzE,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;YACpE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,IAAI,CAAC;QACH,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;YACjC,OAAO,MAAM,kBAAkB,CAAC,IAAmB,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACpF,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,iBAAiB,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,cAAc,YAAY,EAAE,EAAE,CAAC;YACxE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,OAAO;AACP,8EAA8E;AAE9E,KAAK,UAAU,kBAAkB,CAC/B,IAAiB,EACjB,SAAiB,EACjB,OAAe,EACf,OAA+B;IAE/B,MAAM,OAAO,GAA4B;QACvC,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC;IACF,2CAA2C;IAC3C,IAAI,IAAI,CAAC,eAAe,KAAK,EAAE,EAAE,CAAC;QAChC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QAC9B,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;IAExC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,iBAAiB,EAAE,sBAAsB,EAAE;QACrE,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;KAC9B,CAAC,CAAC;IAEH,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,8BAA8B,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YAC1G,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAA2B,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAC9D,KAAK,CAAC,wBAAwB,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;IAExF,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACzB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,WAAW,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC;YACxE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,WAAW;IACX,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IACvC,MAAM,YAAY,GAAG,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,qBAAqB,CAAC;IACxF,MAAM,SAAS,GAAG,cAAc,CAC9B,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAA4C,EAC5E,YAAY,CACb,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC/D,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;IAE9D,MAAM,QAAQ,GAAG,qBAAqB,CAAC,UAAU,cAAc,EAAE,EAAE,MAAM,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAEnC,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC9D,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,OAAO,cAAc,YAAY,SAAS,gBAAgB,QAAQ,EAAE;aAC3E,CAAC;KACH,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,MAAM;AACN,8EAA8E;AAE9E,KAAK,UAAU,iBAAiB,CAC9B,SAAiB,EACjB,OAAe,EACf,OAA+B;IAE/B,gDAAgD;IAChD,MAAM,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3D,KAAK,CAAC,qCAAqC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QACxE,KAAK,CAAC,2CAA2C,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;KAC/E,CAAC,CAAC;IAEH,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;QACxB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,sBAAsB,eAAe,CAAC,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,EAAE,CAAC;YACxH,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;QACxB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,4BAA4B,eAAe,CAAC,MAAM,IAAI,eAAe,CAAC,UAAU,EAAE,EAAE,CAAC;YAC9H,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAkB,MAAM,eAAe,CAAC,IAAI,EAAE,CAAC;IAC5D,KAAK,CAAC,0BAA0B,EAAE,OAAO,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAkB,MAAM,eAAe,CAAC,IAAI,EAAE,CAAC;IAC5D,KAAK,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;IAEjD,sCAAsC;IACtC,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;IAEzD,MAAM,iBAAiB,GAAG,MAAM,KAAK,CAAC,GAAG,iBAAiB,EAAE,sBAAsB,EAAE;QAClF,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;KAC9B,CAAC,CAAC;IAEH,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;QAC1B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,8BAA8B,iBAAiB,CAAC,MAAM,IAAI,iBAAiB,CAAC,UAAU,EAAE,EAAE,CAAC;YACpI,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,iDAAiD;IACjD,MAAM,WAAW,GAAoB,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAAC;IACpE,KAAK,CAAC,8BAA8B,EAAE,WAAW,CAAC,CAAC;IAEnD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACzB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,WAAW,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC;YACxE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAEvC,MAAM,aAAa,GAAG,cAAc,CAClC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAA4C,EAC3E,kBAAkB,CACnB,CAAC;IACF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAE5D,MAAM,YAAY,GAAG,cAAc,CACjC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAA4C,EAChF,iBAAiB,CAClB,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IACvD,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE5D,yBAAyB;IACzB,MAAM,QAAQ,GAAG,qBAAqB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAEnC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,wBAAwB,QAAQ,EAAE,EAAE,CAAC;KAC/E,CAAC;AACJ,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import * as z from "zod/v4";
|
|
2
|
-
export declare const name = "date_to_timestamp";
|
|
3
|
-
export declare const schema: {
|
|
4
|
-
description: string;
|
|
5
|
-
inputSchema: z.ZodObject<{
|
|
6
|
-
date: z.ZodString;
|
|
7
|
-
endOfDay: z.ZodOptional<z.ZodBoolean>;
|
|
8
|
-
}, z.core.$strip>;
|
|
9
|
-
};
|
|
10
|
-
export declare function handler(args: {
|
|
11
|
-
date: string;
|
|
12
|
-
endOfDay?: boolean;
|
|
13
|
-
}): Promise<{
|
|
14
|
-
content: {
|
|
15
|
-
type: "text";
|
|
16
|
-
text: string;
|
|
17
|
-
}[];
|
|
18
|
-
}>;
|
|
19
|
-
//# sourceMappingURL=date_to_timestamp.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date_to_timestamp.d.ts","sourceRoot":"","sources":["../../src/tools/date_to_timestamp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,eAAO,MAAM,IAAI,sBAAsB,CAAC;AAExC,eAAO,MAAM,MAAM;;;;;;CAUlB,CAAC;AAEF,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE;;;;;GAgCvE"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import * as z from "zod/v4";
|
|
2
|
-
export const name = "date_to_timestamp";
|
|
3
|
-
export const schema = {
|
|
4
|
-
description: "将 yyyymmdd 格式的日期转换为毫秒时间戳(北京时间)。默认返回当天 00:00:00 的时间戳,传 endOfDay=true 返回当天 23:59:59.999 的时间戳。用于 startTime 时不传 endOfDay,用于 endTime 时传 endOfDay=true",
|
|
5
|
-
inputSchema: z.object({
|
|
6
|
-
date: z.string()
|
|
7
|
-
.length(8, "日期必须是 8 位数字格式")
|
|
8
|
-
.regex(/^\d{8}$/, "日期必须是 yyyymmdd 格式,如 20250416")
|
|
9
|
-
.describe("yyyymmdd 格式的日期字符串,例如 20250416"),
|
|
10
|
-
endOfDay: z.boolean().optional()
|
|
11
|
-
.describe("是否返回当天结束时间(23:59:59.999)。用于 endTime 时传 true,用于 startTime 时不传或传 false"),
|
|
12
|
-
}),
|
|
13
|
-
};
|
|
14
|
-
export async function handler(args) {
|
|
15
|
-
const { date, endOfDay } = args;
|
|
16
|
-
// 解析 yyyymmdd 格式
|
|
17
|
-
const year = parseInt(date.substring(0, 4), 10);
|
|
18
|
-
const month = parseInt(date.substring(4, 6), 10) - 1; // 月份从 0 开始
|
|
19
|
-
const day = parseInt(date.substring(6, 8), 10);
|
|
20
|
-
// 创建北京时间(UTC+8)的日期对象
|
|
21
|
-
// 使用 Date.UTC 创建 UTC 时间,然后减去 8 小时偏移量来得到北京时间的起始点
|
|
22
|
-
let beijingTimestamp;
|
|
23
|
-
if (endOfDay) {
|
|
24
|
-
// 当天 23:59:59.999 北京时间
|
|
25
|
-
beijingTimestamp = Date.UTC(year, month, day, -8 + 23, 59, 59, 999);
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
// 当天 00:00:00.000 北京时间
|
|
29
|
-
beijingTimestamp = Date.UTC(year, month, day, -8, 0, 0, 0);
|
|
30
|
-
}
|
|
31
|
-
return {
|
|
32
|
-
content: [
|
|
33
|
-
{
|
|
34
|
-
type: "text",
|
|
35
|
-
text: JSON.stringify({
|
|
36
|
-
date: date,
|
|
37
|
-
endOfDay: !!endOfDay,
|
|
38
|
-
timestamp: beijingTimestamp,
|
|
39
|
-
formattedTime: new Date(beijingTimestamp).toISOString(),
|
|
40
|
-
}, null, 2),
|
|
41
|
-
},
|
|
42
|
-
],
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
//# sourceMappingURL=date_to_timestamp.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date_to_timestamp.js","sourceRoot":"","sources":["../../src/tools/date_to_timestamp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,IAAI,GAAG,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE,kJAAkJ;IAC/J,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;aACb,MAAM,CAAC,CAAC,EAAE,eAAe,CAAC;aAC1B,KAAK,CAAC,SAAS,EAAE,8BAA8B,CAAC;aAChD,QAAQ,CAAC,+BAA+B,CAAC;QAC5C,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;aAC7B,QAAQ,CAAC,sEAAsE,CAAC;KACpF,CAAC;CACH,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAA0C;IACtE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAEhC,iBAAiB;IACjB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW;IACjE,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAE/C,qBAAqB;IACrB,gDAAgD;IAChD,IAAI,gBAAwB,CAAC;IAC7B,IAAI,QAAQ,EAAE,CAAC;QACb,uBAAuB;QACvB,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IACtE,CAAC;SAAM,CAAC;QACN,uBAAuB;QACvB,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,IAAI,EAAE,IAAI;oBACV,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,SAAS,EAAE,gBAAgB;oBAC3B,aAAa,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE;iBACxD,EAAE,IAAI,EAAE,CAAC,CAAC;aACZ;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import * as z from "zod/v4";
|
|
2
|
-
export declare const name = "get_current_time";
|
|
3
|
-
export declare const schema: {
|
|
4
|
-
description: string;
|
|
5
|
-
inputSchema: z.ZodObject<{}, z.core.$strip>;
|
|
6
|
-
};
|
|
7
|
-
export declare function handler(): Promise<{
|
|
8
|
-
content: {
|
|
9
|
-
type: "text";
|
|
10
|
-
text: string;
|
|
11
|
-
}[];
|
|
12
|
-
}>;
|
|
13
|
-
//# sourceMappingURL=get_current_time.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get_current_time.d.ts","sourceRoot":"","sources":["../../src/tools/get_current_time.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,eAAO,MAAM,IAAI,qBAAqB,CAAC;AAEvC,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AAEF,wBAAsB,OAAO;;;;;GAgB5B"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import * as z from "zod/v4";
|
|
2
|
-
export const name = "get_current_time";
|
|
3
|
-
export const schema = {
|
|
4
|
-
description: "获取当前时间的毫秒时间戳和格式化时间 当需要知晓当前日期时间时必须先调用此工具",
|
|
5
|
-
inputSchema: z.object({}),
|
|
6
|
-
};
|
|
7
|
-
export async function handler() {
|
|
8
|
-
const now = new Date();
|
|
9
|
-
const timestamp = now.getTime();
|
|
10
|
-
const formattedTime = now.toISOString();
|
|
11
|
-
return {
|
|
12
|
-
content: [
|
|
13
|
-
{
|
|
14
|
-
type: "text",
|
|
15
|
-
text: JSON.stringify({
|
|
16
|
-
timestamp: timestamp,
|
|
17
|
-
formattedTime: formattedTime,
|
|
18
|
-
}, null, 2),
|
|
19
|
-
},
|
|
20
|
-
],
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=get_current_time.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get_current_time.js","sourceRoot":"","sources":["../../src/tools/get_current_time.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,IAAI,GAAG,kBAAkB,CAAC;AAEvC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE,yCAAyC;IACtD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;IAChC,MAAM,aAAa,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAExC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,SAAS,EAAE,SAAS;oBACpB,aAAa,EAAE,aAAa;iBAC7B,EAAE,IAAI,EAAE,CAAC,CAAC;aACZ;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import * as z from "zod/v4";
|
|
2
|
-
export declare const name = "hello_world";
|
|
3
|
-
export declare const schema: {
|
|
4
|
-
description: string;
|
|
5
|
-
inputSchema: z.ZodObject<{}, z.core.$strip>;
|
|
6
|
-
};
|
|
7
|
-
export declare function handler(): Promise<{
|
|
8
|
-
content: {
|
|
9
|
-
type: "text";
|
|
10
|
-
text: string;
|
|
11
|
-
}[];
|
|
12
|
-
isError: boolean;
|
|
13
|
-
} | {
|
|
14
|
-
content: {
|
|
15
|
-
type: "text";
|
|
16
|
-
text: string;
|
|
17
|
-
}[];
|
|
18
|
-
isError?: undefined;
|
|
19
|
-
}>;
|
|
20
|
-
//# sourceMappingURL=hello_world.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hello_world.d.ts","sourceRoot":"","sources":["../../src/tools/hello_world.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAI5B,eAAO,MAAM,IAAI,gBAAgB,CAAC;AAElC,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AAEF,wBAAsB,OAAO;;;;;;;;;;;;GAyC5B"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import * as fs from "node:fs";
|
|
2
|
-
import * as path from "node:path";
|
|
3
|
-
import * as z from "zod/v4";
|
|
4
|
-
import { getDataDir, getGatewayBaseUrl } from "../utils/env.js";
|
|
5
|
-
import { buildGatewayHeaders } from "../utils/http.js";
|
|
6
|
-
export const name = "hello_world";
|
|
7
|
-
export const schema = {
|
|
8
|
-
description: "Say hello world to YJZF",
|
|
9
|
-
inputSchema: z.object({}),
|
|
10
|
-
};
|
|
11
|
-
export async function handler() {
|
|
12
|
-
const headers = buildGatewayHeaders();
|
|
13
|
-
// HTTP GET request
|
|
14
|
-
const response = await fetch(`${getGatewayBaseUrl()}/hello_world`, {
|
|
15
|
-
method: "GET",
|
|
16
|
-
headers,
|
|
17
|
-
});
|
|
18
|
-
if (!response.ok) {
|
|
19
|
-
return {
|
|
20
|
-
content: [
|
|
21
|
-
{
|
|
22
|
-
type: "text",
|
|
23
|
-
text: `Request failed with status ${response.status}: ${response.statusText}`,
|
|
24
|
-
},
|
|
25
|
-
],
|
|
26
|
-
isError: true,
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
const body = await response.text();
|
|
30
|
-
// Ensure data directory exists
|
|
31
|
-
const dataDir = getDataDir();
|
|
32
|
-
fs.mkdirSync(dataDir, { recursive: true });
|
|
33
|
-
// Write response to file with datetime prefix
|
|
34
|
-
const now = new Date();
|
|
35
|
-
const datetimePrefix = now.toISOString().replace(/[:.]/g, "-").slice(0, 19);
|
|
36
|
-
const filePath = path.join(dataDir, `${datetimePrefix}-hello_world-response.txt`);
|
|
37
|
-
fs.writeFileSync(filePath, body, "utf-8");
|
|
38
|
-
return {
|
|
39
|
-
content: [
|
|
40
|
-
{
|
|
41
|
-
type: "text",
|
|
42
|
-
text: `Response saved to ${filePath}\n\n${body}`,
|
|
43
|
-
},
|
|
44
|
-
],
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=hello_world.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hello_world.js","sourceRoot":"","sources":["../../src/tools/hello_world.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,CAAC,MAAM,IAAI,GAAG,aAAa,CAAC;AAElC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,WAAW,EAAE,yBAAyB;IACtC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,mBAAmB;IACnB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,iBAAiB,EAAE,cAAc,EAAE;QACjE,MAAM,EAAE,KAAK;QACb,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,8BAA8B,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE;iBAC9E;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEnC,+BAA+B;IAC/B,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE3C,8CAA8C;IAC9C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,cAAc,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,cAAc,2BAA2B,CAAC,CAAC;IAClF,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAE1C,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,qBAAqB,QAAQ,OAAO,IAAI,EAAE;aACjD;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import * as z from "zod/v4";
|
|
2
|
-
export declare const name = "investment_contract";
|
|
3
|
-
export declare const schema: {
|
|
4
|
-
description: string;
|
|
5
|
-
inputSchema: z.ZodObject<{}, z.core.$strip>;
|
|
6
|
-
};
|
|
7
|
-
export declare function handler(): Promise<import("../utils/http.js").ToolResult>;
|
|
8
|
-
//# sourceMappingURL=investment_contract.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"investment_contract.d.ts","sourceRoot":"","sources":["../../src/tools/investment_contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAqF5B,eAAO,MAAM,IAAI,wBAAwB,CAAC;AAE1C,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AAEF,wBAAsB,OAAO,mDAuE5B"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import * as z from "zod/v4";
|
|
2
|
-
import { buildGatewayHeaders, createErrorResult, createSuccessResult } from "../utils/http.js";
|
|
3
|
-
import { saveWorkbook, formatTimestamp } from "../utils/excel.js";
|
|
4
|
-
import { generateDatedFileName, getGatewayBaseUrl } from "../utils/env.js";
|
|
5
|
-
import { debug } from "../utils/debug.js";
|
|
6
|
-
// ---------------------------------------------------------------------------
|
|
7
|
-
// 枚举映射
|
|
8
|
-
// ---------------------------------------------------------------------------
|
|
9
|
-
const LOCKING_STATE_MAP = {
|
|
10
|
-
1: "是",
|
|
11
|
-
0: "否",
|
|
12
|
-
};
|
|
13
|
-
const CONTRACT_STATE_MAP = {
|
|
14
|
-
1: "审核通过",
|
|
15
|
-
2: "审核否决",
|
|
16
|
-
3: "待审核",
|
|
17
|
-
4: "草稿",
|
|
18
|
-
5: "已撤回",
|
|
19
|
-
6: "已回收",
|
|
20
|
-
8: "已签署",
|
|
21
|
-
};
|
|
22
|
-
const SIGN_METHOD_MAP = {
|
|
23
|
-
1: "线上",
|
|
24
|
-
2: "线下",
|
|
25
|
-
};
|
|
26
|
-
const ORDER_STATUS_MAP = {
|
|
27
|
-
0: "已关闭",
|
|
28
|
-
1: "跟进中",
|
|
29
|
-
2: "已完成",
|
|
30
|
-
};
|
|
31
|
-
const COLUMNS = [
|
|
32
|
-
["城市", "cityName"],
|
|
33
|
-
["锁定状态", "lockingState", (v) => LOCKING_STATE_MAP[Number(v)] ?? ""],
|
|
34
|
-
["合同名称", "title"],
|
|
35
|
-
["合同编号", "econtractNo"],
|
|
36
|
-
["合同状态", "state", (v) => CONTRACT_STATE_MAP[Number(v)] ?? String(v)],
|
|
37
|
-
["甲方", "companyA"],
|
|
38
|
-
["乙方", "companyB"],
|
|
39
|
-
["签署方式", "isOutside", (v) => SIGN_METHOD_MAP[Number(v)] ?? String(v)],
|
|
40
|
-
["剩余打印次数", "plusPrintNumber"],
|
|
41
|
-
["关联订单编号", "linkOrderNo"],
|
|
42
|
-
["对应订单状态", "orderStatus", (v) => ORDER_STATUS_MAP[Number(v)] ?? String(v)],
|
|
43
|
-
["添加人", "createdBy"],
|
|
44
|
-
["添加时间", "createTm", (v) => formatTimestamp(Number(v))],
|
|
45
|
-
];
|
|
46
|
-
// ---------------------------------------------------------------------------
|
|
47
|
-
// 工具导出
|
|
48
|
-
// ---------------------------------------------------------------------------
|
|
49
|
-
export const name = "investment_contract";
|
|
50
|
-
export const schema = {
|
|
51
|
-
description: "从 ERP 系统查询直营城市招商加盟合同列表数据,生成 Excel 文件",
|
|
52
|
-
inputSchema: z.object({}),
|
|
53
|
-
};
|
|
54
|
-
export async function handler() {
|
|
55
|
-
const headers = buildGatewayHeaders();
|
|
56
|
-
try {
|
|
57
|
-
// Step 1: 获取城市列表
|
|
58
|
-
const citiesResponse = await fetch("https://mcp.yjzf.com/zy_cities.json", {
|
|
59
|
-
method: "GET",
|
|
60
|
-
headers,
|
|
61
|
-
});
|
|
62
|
-
if (!citiesResponse.ok) {
|
|
63
|
-
return createErrorResult(`获取 zy_cities 数据失败: ${citiesResponse.status} ${citiesResponse.statusText}`);
|
|
64
|
-
}
|
|
65
|
-
const cities = await citiesResponse.json();
|
|
66
|
-
debug("zy_cities.json", cities);
|
|
67
|
-
// Step 2: 调用 Gateway 获取合同数据
|
|
68
|
-
const response = await fetch(`${getGatewayBaseUrl()}/investment_contract`, {
|
|
69
|
-
method: "POST",
|
|
70
|
-
headers,
|
|
71
|
-
body: JSON.stringify({ cities }),
|
|
72
|
-
});
|
|
73
|
-
if (!response.ok) {
|
|
74
|
-
return createErrorResult(`请求 investment_contract 失败: ${response.status} ${response.statusText}`);
|
|
75
|
-
}
|
|
76
|
-
const apiResponse = await response.json();
|
|
77
|
-
debug("investment_contract response", apiResponse);
|
|
78
|
-
if (!apiResponse.succeed) {
|
|
79
|
-
return createErrorResult(`网关返回错误: ${apiResponse.msg}`);
|
|
80
|
-
}
|
|
81
|
-
const { list } = apiResponse.data;
|
|
82
|
-
if (list.length === 0) {
|
|
83
|
-
return createSuccessResult("未查询到任何合同数据");
|
|
84
|
-
}
|
|
85
|
-
// Step 3: 构建 Excel 数据
|
|
86
|
-
const headerRow = COLUMNS.map(([label]) => label);
|
|
87
|
-
const dataRows = list.map((item) => COLUMNS.map(([, field, transform]) => {
|
|
88
|
-
const val = item[field];
|
|
89
|
-
if (transform) {
|
|
90
|
-
return transform(val);
|
|
91
|
-
}
|
|
92
|
-
return val != null ? String(val) : "";
|
|
93
|
-
}));
|
|
94
|
-
const sheetData = [headerRow, ...dataRows];
|
|
95
|
-
// Step 4: 保存 Excel 文件
|
|
96
|
-
const fileName = generateDatedFileName("招商加盟合同列表导出", "xlsx", false);
|
|
97
|
-
const sheets = [{ name: "合同数据", data: sheetData }];
|
|
98
|
-
const filePath = saveWorkbook(sheets, fileName);
|
|
99
|
-
return createSuccessResult(`成功导出招商加盟合同数据!\n共 ${list.length} 条记录\n文件路径: ${filePath}`);
|
|
100
|
-
}
|
|
101
|
-
catch (error) {
|
|
102
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
103
|
-
return createErrorResult(`执行过程中发生错误: ${errorMessage}`);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=investment_contract.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"investment_contract.js","sourceRoot":"","sources":["../../src/tools/investment_contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import * as z from "zod/v4";
|
|
2
|
-
export declare const name = "new_house_contract_export";
|
|
3
|
-
export declare const schema: {
|
|
4
|
-
description: string;
|
|
5
|
-
inputSchema: z.ZodObject<{
|
|
6
|
-
startTime: z.ZodOptional<z.ZodNumber>;
|
|
7
|
-
endTime: z.ZodOptional<z.ZodNumber>;
|
|
8
|
-
}, z.core.$strip>;
|
|
9
|
-
};
|
|
10
|
-
export declare function handler(args: {
|
|
11
|
-
startTime?: number;
|
|
12
|
-
endTime?: number;
|
|
13
|
-
}): Promise<import("../utils/http.js").ToolResult>;
|
|
14
|
-
//# sourceMappingURL=new_house_contract_export.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"new_house_contract_export.d.ts","sourceRoot":"","sources":["../../src/tools/new_house_contract_export.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AA2K5B,eAAO,MAAM,IAAI,8BAA8B,CAAC;AAEhD,eAAO,MAAM,MAAM;;;;;;CAalB,CAAC;AAEF,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,kDA8HA"}
|
|
@@ -1,242 +0,0 @@
|
|
|
1
|
-
import * as fs from "node:fs";
|
|
2
|
-
import * as path from "node:path";
|
|
3
|
-
import * as z from "zod/v4";
|
|
4
|
-
import { buildGatewayHeaders, createErrorResult, createSuccessResult } from "../utils/http.js";
|
|
5
|
-
import { getDataDir, getGatewayBaseUrl } from "../utils/env.js";
|
|
6
|
-
import { debug } from "../utils/debug.js";
|
|
7
|
-
// ---------------------------------------------------------------------------
|
|
8
|
-
// 常量
|
|
9
|
-
// ---------------------------------------------------------------------------
|
|
10
|
-
const BRAND_ID = "593347894961426496";
|
|
11
|
-
const CITY_CODE = "450100";
|
|
12
|
-
const ORGAN_ID = "625864877560328320";
|
|
13
|
-
// const BRAND_ID = "565998180494215232";
|
|
14
|
-
// const CITY_CODE = "450100";
|
|
15
|
-
// const ORGAN_ID = "552692373611008128";
|
|
16
|
-
// ---------------------------------------------------------------------------
|
|
17
|
-
// 工具函数
|
|
18
|
-
// ---------------------------------------------------------------------------
|
|
19
|
-
/**
|
|
20
|
-
* 生成文件名:认购合同_20260423_1000.xlsx
|
|
21
|
-
*/
|
|
22
|
-
function buildFileName(label) {
|
|
23
|
-
const now = new Date();
|
|
24
|
-
const Y = now.getFullYear();
|
|
25
|
-
const M = String(now.getMonth() + 1).padStart(2, "0");
|
|
26
|
-
const D = String(now.getDate()).padStart(2, "0");
|
|
27
|
-
const h = String(now.getHours()).padStart(2, "0");
|
|
28
|
-
const m = String(now.getMinutes()).padStart(2, "0");
|
|
29
|
-
return `${label}_${Y}${M}${D}_${h}${m}.xlsx`;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* 获取默认时间范围:当月第一天 00:00:00 ~ 今天 23:59:59.999(本地时间)。
|
|
33
|
-
*/
|
|
34
|
-
function getDefaultTimeRange() {
|
|
35
|
-
const now = new Date();
|
|
36
|
-
const monthStart = new Date(now.getFullYear(), now.getMonth(), 1);
|
|
37
|
-
const todayEnd = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 23, 59, 59, 999);
|
|
38
|
-
return {
|
|
39
|
-
startTime: monthStart.getTime(),
|
|
40
|
-
endTime: todayEnd.getTime(),
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* 将 base64 编码的 Excel 数据保存为文件,返回文件绝对路径。
|
|
45
|
-
*/
|
|
46
|
-
function saveBase64ToFile(base64Data, fileName) {
|
|
47
|
-
const dataDir = getDataDir();
|
|
48
|
-
fs.mkdirSync(dataDir, { recursive: true });
|
|
49
|
-
const filePath = path.join(dataDir, fileName);
|
|
50
|
-
const buffer = Buffer.from(base64Data, "base64");
|
|
51
|
-
fs.writeFileSync(filePath, buffer);
|
|
52
|
-
return filePath;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* 判断时间范围是否超过3个月(基于日历月)。
|
|
56
|
-
*/
|
|
57
|
-
function isRangeExceedsThreeMonths(startTime, endTime) {
|
|
58
|
-
const start = new Date(startTime);
|
|
59
|
-
const threeMonthsLater = new Date(start);
|
|
60
|
-
threeMonthsLater.setMonth(threeMonthsLater.getMonth() + 3);
|
|
61
|
-
return endTime > threeMonthsLater.getTime();
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* 生成唯一的 bookName,用于在异步导出列表中精确匹配。
|
|
65
|
-
*/
|
|
66
|
-
function generateUniqueBookName(label) {
|
|
67
|
-
const ts = Date.now();
|
|
68
|
-
const rand = Math.random().toString(36).slice(2, 6);
|
|
69
|
-
return `MCP_${label}_${ts}_${rand}`;
|
|
70
|
-
}
|
|
71
|
-
function sleep(ms) {
|
|
72
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* 轮询异步导出状态,返回完成后的 fileUrl。
|
|
76
|
-
* 递增间隔轮询,最多等待10分钟。
|
|
77
|
-
*/
|
|
78
|
-
async function pollAsyncExportStatus(bookName, headers, gatewayBaseUrl) {
|
|
79
|
-
const intervals = [5000, 5000, 10000, 10000, 15000, 15000, 20000, 20000, 30000];
|
|
80
|
-
const maxWait = 600_000; // 10分钟
|
|
81
|
-
let totalWaited = 0;
|
|
82
|
-
let consecutiveErrors = 0;
|
|
83
|
-
for (let i = 0; totalWaited < maxWait; i++) {
|
|
84
|
-
const interval = intervals[Math.min(i, intervals.length - 1)];
|
|
85
|
-
await sleep(interval);
|
|
86
|
-
totalWaited += interval;
|
|
87
|
-
try {
|
|
88
|
-
const resp = await fetch(`${gatewayBaseUrl}/new_house_contract_async_export_status`, {
|
|
89
|
-
method: "POST",
|
|
90
|
-
headers,
|
|
91
|
-
body: JSON.stringify({ city_code: CITY_CODE, organ_id: ORGAN_ID, brand_id: BRAND_ID }),
|
|
92
|
-
});
|
|
93
|
-
const json = await resp.json();
|
|
94
|
-
consecutiveErrors = 0;
|
|
95
|
-
const match = json.data?.list?.find((item) => item.fileName === bookName);
|
|
96
|
-
if (match?.status === 1)
|
|
97
|
-
return match.fileUrl;
|
|
98
|
-
if (match?.status === 0)
|
|
99
|
-
throw new Error(`ERP 异步导出失败: ${bookName}`);
|
|
100
|
-
console.error(`[轮询] ${bookName} 尚未完成,已等待 ${totalWaited / 1000}s`);
|
|
101
|
-
}
|
|
102
|
-
catch (e) {
|
|
103
|
-
if (e.message?.includes("异步导出失败"))
|
|
104
|
-
throw e;
|
|
105
|
-
consecutiveErrors++;
|
|
106
|
-
if (consecutiveErrors >= 3)
|
|
107
|
-
throw new Error(`轮询连续失败3次: ${e.message}`);
|
|
108
|
-
console.error(`[轮询] 请求异常(${consecutiveErrors}/3): ${e.message}`);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
throw new Error(`异步导出超时(${maxWait / 1000}s): ${bookName}`);
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* 从 CDN fileUrl 下载文件保存到 DATA_DIR,返回文件绝对路径。
|
|
115
|
-
*/
|
|
116
|
-
async function downloadFileFromUrl(fileUrl, fileName) {
|
|
117
|
-
const resp = await fetch(fileUrl);
|
|
118
|
-
if (!resp.ok)
|
|
119
|
-
throw new Error(`下载文件失败: ${resp.status} ${resp.statusText}`);
|
|
120
|
-
const buffer = Buffer.from(await resp.arrayBuffer());
|
|
121
|
-
const dataDir = getDataDir();
|
|
122
|
-
fs.mkdirSync(dataDir, { recursive: true });
|
|
123
|
-
const filePath = path.join(dataDir, fileName);
|
|
124
|
-
fs.writeFileSync(filePath, buffer);
|
|
125
|
-
return filePath;
|
|
126
|
-
}
|
|
127
|
-
// ---------------------------------------------------------------------------
|
|
128
|
-
// 工具导出
|
|
129
|
-
// ---------------------------------------------------------------------------
|
|
130
|
-
export const name = "new_house_contract_export";
|
|
131
|
-
export const schema = {
|
|
132
|
-
description: "从 ERP 系统导出新房合同数据(认购合同、签约合同、解约合同),生成三个独立的 Excel 文件。不传时间时默认查询当月第一天到今天。时间范围超过3个月时自动使用异步导出。",
|
|
133
|
-
inputSchema: z.object({
|
|
134
|
-
startTime: z
|
|
135
|
-
.number()
|
|
136
|
-
.optional()
|
|
137
|
-
.describe("开始时间,毫秒时间戳,可选,不传则默认当月第一天"),
|
|
138
|
-
endTime: z
|
|
139
|
-
.number()
|
|
140
|
-
.optional()
|
|
141
|
-
.describe("结束时间,毫秒时间戳,可选,不传则默认今天"),
|
|
142
|
-
}),
|
|
143
|
-
};
|
|
144
|
-
export async function handler(args) {
|
|
145
|
-
const headers = buildGatewayHeaders();
|
|
146
|
-
const defaults = getDefaultTimeRange();
|
|
147
|
-
const startTime = args.startTime ?? defaults.startTime;
|
|
148
|
-
const endTime = args.endTime ?? defaults.endTime;
|
|
149
|
-
debug("date range", { startTime, endTime });
|
|
150
|
-
// 校验时间范围
|
|
151
|
-
if (startTime > endTime) {
|
|
152
|
-
return createErrorResult("开始时间不能晚于结束时间");
|
|
153
|
-
}
|
|
154
|
-
const useAsync = isRangeExceedsThreeMonths(startTime, endTime);
|
|
155
|
-
if (useAsync) {
|
|
156
|
-
console.error(`[new_house_contract_export] 时间范围>3个月,使用异步导出模式`);
|
|
157
|
-
}
|
|
158
|
-
try {
|
|
159
|
-
// 分别导出认购合同、签约合同和解约合同
|
|
160
|
-
const contractTypes = [
|
|
161
|
-
{ type: "subscription", label: "认购合同" },
|
|
162
|
-
{ type: "signed", label: "签约合同" },
|
|
163
|
-
{ type: "cancelled", label: "解约合同" },
|
|
164
|
-
];
|
|
165
|
-
const results = [];
|
|
166
|
-
for (const ct of contractTypes) {
|
|
167
|
-
console.error(`[new_house_contract_export] 正在导出${ct.label}...`);
|
|
168
|
-
if (useAsync) {
|
|
169
|
-
// 异步导出路径
|
|
170
|
-
const bookName = generateUniqueBookName(ct.label);
|
|
171
|
-
console.error(`[async] bookName=${bookName}`);
|
|
172
|
-
// 1. 提交异步导出任务
|
|
173
|
-
const submitResp = await fetch(`${getGatewayBaseUrl()}/new_house_contract_async_export`, {
|
|
174
|
-
method: "POST",
|
|
175
|
-
headers,
|
|
176
|
-
body: JSON.stringify({
|
|
177
|
-
city_code: CITY_CODE,
|
|
178
|
-
organ_id: ORGAN_ID,
|
|
179
|
-
brand_id: BRAND_ID,
|
|
180
|
-
startTime,
|
|
181
|
-
endTime,
|
|
182
|
-
contractType: ct.type,
|
|
183
|
-
bookName,
|
|
184
|
-
}),
|
|
185
|
-
});
|
|
186
|
-
if (!submitResp.ok) {
|
|
187
|
-
return createErrorResult(`提交${ct.label}异步导出失败: ${submitResp.status} ${submitResp.statusText}`);
|
|
188
|
-
}
|
|
189
|
-
const submitResult = await submitResp.json();
|
|
190
|
-
if (!submitResult.succeed) {
|
|
191
|
-
return createErrorResult(`提交${ct.label}异步导出失败: ${submitResult.msg}`);
|
|
192
|
-
}
|
|
193
|
-
console.error(`[async] ${ct.label} 任务已提交,开始轮询...`);
|
|
194
|
-
// 2. 轮询等待完成
|
|
195
|
-
const fileUrl = await pollAsyncExportStatus(bookName, headers, getGatewayBaseUrl());
|
|
196
|
-
// 3. 下载文件到本地
|
|
197
|
-
const fileName = buildFileName(ct.label);
|
|
198
|
-
const filePath = await downloadFileFromUrl(fileUrl, fileName);
|
|
199
|
-
results.push(`${ct.label}\n文件路径: ${filePath}`);
|
|
200
|
-
}
|
|
201
|
-
else {
|
|
202
|
-
// 同步导出路径
|
|
203
|
-
const response = await fetch(`${getGatewayBaseUrl()}/new_house_contract_export`, {
|
|
204
|
-
method: "POST",
|
|
205
|
-
headers,
|
|
206
|
-
body: JSON.stringify({
|
|
207
|
-
city_code: CITY_CODE,
|
|
208
|
-
organ_id: ORGAN_ID,
|
|
209
|
-
brand_id: BRAND_ID,
|
|
210
|
-
startTime,
|
|
211
|
-
endTime,
|
|
212
|
-
contractType: ct.type,
|
|
213
|
-
}),
|
|
214
|
-
});
|
|
215
|
-
if (!response.ok) {
|
|
216
|
-
return createErrorResult(`请求 ${ct.label} 导出失败: ${response.status} ${response.statusText}`);
|
|
217
|
-
}
|
|
218
|
-
const apiResponse = await response.json();
|
|
219
|
-
debug(`${ct.label} response`, {
|
|
220
|
-
succeed: apiResponse.succeed,
|
|
221
|
-
msg: apiResponse.msg,
|
|
222
|
-
});
|
|
223
|
-
if (!apiResponse.succeed) {
|
|
224
|
-
return createErrorResult(`${ct.label} 网关返回错误: ${apiResponse.msg}`);
|
|
225
|
-
}
|
|
226
|
-
if (!apiResponse.data?.base64) {
|
|
227
|
-
return createErrorResult(`${ct.label} 返回数据中缺少 base64 字段`);
|
|
228
|
-
}
|
|
229
|
-
// 直接保存原始 Excel 文件
|
|
230
|
-
const fileName = buildFileName(ct.label);
|
|
231
|
-
const filePath = saveBase64ToFile(apiResponse.data.base64, fileName);
|
|
232
|
-
results.push(`${ct.label}\n文件路径: ${filePath}`);
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
return createSuccessResult(`成功导出新房合同数据!\n\n${results.join("\n\n")}`);
|
|
236
|
-
}
|
|
237
|
-
catch (error) {
|
|
238
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
239
|
-
return createErrorResult(`执行过程中发生错误: ${errorMessage}`);
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
//# sourceMappingURL=new_house_contract_export.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"new_house_contract_export.js","sourceRoot":"","sources":["../../src/tools/new_house_contract_export.ts"],"names":[],"mappings":"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"}
|