Lewis_yan
47e128f9ca
feat(channel): switch CHANNEL_LAYERS from InMemory to Redis
...
Enable Redis-backed channel layer for production use with
channels_redis, using environment-configured Redis credentials.
2026-04-09 20:42:16 +08:00
Lewis_yan
d422227964
feat(quick-260409-celery-websocket): add Celery beat tasks for inquiry publish and quote completion notifications
...
- Add check_inquiry_published_notifications() task scanning status 3/4 inquiries every 1 min
- Add check_quote_completed_notifications() task scanning status 5 inquiries every 1 min
- Both respect 24h EmailNotice cooldown and follow existing check_quote_deadline_expired pattern
- Return dict with checked/sent/skipped/errors counts
2026-04-09 17:59:12 +08:00
Lewis_yan
8d36d3e1ed
feat(quick-260409-celery-websocket): add WebSocket+email notification functions for inquiry publish and quote completion
...
- Add _should_send_inquiry_notification() cooldown helper for 24h deduplication
- Add notify_suppliers_inquiry_published() for status 3/4 inquiries -> supplier WS push + email
- Add notify_purchasers_quote_completed() for status 5 inquiries -> purchaser WS push + email
- Both use EmailNotice.biz_type cooldown (inquiry_published / inquiry_quote_ended)
2026-04-09 17:59:07 +08:00
Lewis_yan
95d28a6365
chore: update pnpm-lock.yaml to match package.json
2026-04-09 13:47:32 +08:00
lewis yan
9c703478d9
Merge branch 'develop' into 'develop'
...
refactor(eip_sync):对齐杂采料号抛转接口url
See merge request pisteams/pis!3
2026-04-09 04:01:56 +00:00
Lewis_yan
3c3f63bddf
feat(i18n): adapt all system pages to use i18n keys and replace django-vue3-admin references
...
- Replace all django-vue-admin/django-vue3-admin references with "Procurement Inquiry System"
- Add i18n support for system config, dept, dictionary, fileList, menu, messageCenter, role, whiteList pages
- Add i18n files for fileSelector module
- Backend: add SystemConfig model i18n fields (title_en, title_zh_tw) and migrations
2026-04-09 12:01:34 +08:00
Lewis_yan
b1a019c826
fix(i18n): add isAwarded search field placeholder i18n support
...
Add missing placeholder i18n key for the isAwarded (award status)
search dropdown in the quotation page.
2026-04-09 11:59:24 +08:00
Lewis_yan
0f8e4f88ac
fix(i18n): quotation page date range and currency placeholder i18n
...
- Add quoteDeadlineStart/End/Separator keys to pissupplier i18n
- Replace hardcoded Chinese date placeholders with i18n calls
- Replace hardcoded '币别' placeholder with i18n key
2026-04-09 11:51:50 +08:00
Lewis_yan
ff687fb220
fix(i18n): commonCrudConfig add i18n support for datetime placeholders
...
- Accept optional t param in commonCrudConfig
- Replace hardcoded Chinese placeholders with i18n calls
- Add system/common i18n files for en, zh-cn, zh-tw
- Update loginLog/crud.tsx to pass t to commonCrudConfig
2026-04-09 11:47:36 +08:00
Lewis_yan
f672941900
feat(i18n): adapt rfs_operation_logs page to use i18n keys
...
- Add rfs_operation_logs i18n files for en, zh-cn, zh-tw
- Replace hardcoded Chinese labels with t() calls in crud.tsx
- Column titles, placeholders, and formatters now use i18n
2026-04-09 11:42:41 +08:00
nebula chen
ada5decee6
Merge branch 'develop' into 'develop'
...
# Conflicts:
# web/src/views/pisadmin/dashboard/BuyerDashboard.vue
2026-04-09 03:39:49 +00:00
nebula_chen
328781ed5f
feat(pisadmin):新增策采料号信息表,实现原料料号抛转接口业务映射逻辑
2026-04-09 11:37:12 +08:00
Lewis_yan
26fde667e2
feat(i18n): adapt buyer/supplier dashboards to use i18n keys
...
- Add buyerDashboard and supplierDashboard i18n keys to home module
(zh-cn / en / zh-tw)
- Replace all hardcoded Chinese text in BuyerDashboard.vue and
SupplierDashboard.vue with $t() calls
- Update index.vue role switcher buttons to use i18n
- quickNav items, chart legend, KPI labels all now support i18n
2026-04-09 11:23:41 +08:00
nebula_chen
e95610f73f
feat(pisadmin):加入采购端登录页账号权限登录卡关
2026-04-09 11:16:45 +08:00
nebula_chen
cfff3569bc
refactor(dashboard):调整采购仪表盘前端效果
2026-04-09 10:28:38 +08:00
Lewis_yan
9a56c73758
fix(i18n): remove export from createCrudOptions to fix build error
...
The export keyword inside <script setup> caused a conflict with
vite-plugin-vue-setup-extend plugin. Removed export since
createCrudOptions is only used locally by useFs().
2026-04-09 10:01:20 +08:00
Lewis_yan
763a312ed5
feat(i18n): adapt config tab cards and nested components to use i18n
...
Apply PR 157 i18n pattern to formContent, associationTable, and crudTable:
- formContent: useI18n, $t() in template, themeConfig.globalI18n in API,
title_i18n fallback for display
- associationTable: $t() for labels and placeholders
- crudTable: useI18n for FastCRUD column titles and validation
2026-04-09 09:42:26 +08:00
Lewis_yan
d7b383077f
feat(i18n): adapt config module to use i18n keys
...
Replace hardcoded Chinese strings with t('message.pages.config.*') calls
in index.vue, addTabs.vue, and addContent.vue to support multilingual.
2026-04-09 09:37:44 +08:00
nebula_chen
b822472605
refactor(eip_sync):对齐杂采料号抛转接口url
2026-04-09 09:27:11 +08:00
Lewis_yan
e6cb89f029
feat(i18n): add useI18n to role CRUD
2026-04-09 09:10:34 +08:00
Lewis_yan
fc27b583e2
feat(i18n): add useI18n to user/index.vue for tree deptList
2026-04-09 09:09:32 +08:00
Lewis_yan
1ad8aa3813
feat(i18n): adapt user CRUD to use message.pages.user.* i18n keys
...
- Add useI18n to user/crud.tsx
- Replace all hardcoded Chinese strings with t() calls
- Add useI18n to user/index.vue for dept placeholder
2026-04-09 09:08:51 +08:00
Lewis_yan
efa7a4c4fa
fix(i18n): make time-based greeting i18n compatible
...
- Modify formatAxis to return i18n keys instead of hardcoded strings
- Update account.vue and changePwd.vue to translate the greeting
- Add useI18n to personal/index.vue and translate the greeting
2026-04-09 08:59:59 +08:00
Lewis_yan
e93eabb073
fix(i18n): correct login i18n structure with proper message.pages.login nesting
...
The login i18n files were exporting flat structures that didn't match
the expected key paths like message.pages.login.loginTitle.
Wrapped content in message.pages.login.* structure like other i18n modules.
2026-04-09 08:56:49 +08:00
Lewis_yan
7e2fa635bb
fix(i18n): complete login page i18n adaptation for all portals
...
- Fix supplier.vue to use correct i18n key paths
- Fix mobile.vue: message.mobile.* -> message.pages.login.mobile.*
- Fix scan.vue: message.scan.* -> message.pages.login.scan.*
- Add supplierTitle key for supplier portal login page
2026-04-09 08:48:28 +08:00
Lewis_yan
025ddceb82
feat(i18n): restore framework menu i18n and fix login page i18n keys
...
- Restore init_menu.json with name_en/name_zh_tw for menu buttons (104 entries)
- Add data migration 0003 to populate menu item name_en/name_zh_tw
- Fix login page i18n key paths (message.account.* -> message.pages.login.account.*)
- Add missing login i18n keys: loginTitle, firstLoginTip, welcomeLogin, copyright
- Fix hardcoded Chinese strings in login page to use i18n
2026-04-08 23:22:42 +08:00
lewis yan
1da3a13cca
Merge branch 'develop' into 'develop'
...
同步分支
See merge request pisteams/pis!2
2026-04-08 15:08:02 +00:00
Lewis_yan
3913ac722e
feat(i18n): complete i18n adaptation across backend and frontend
...
Backend:
- Improve menu title language detection (query param, user lang, Accept-Language)
- Fix user language update to use correct update_datetime field
- Add menu i18n sync management command
- Add migrations for company/miscprocurement i18n fields
Frontend:
- Clear tagsView cache on language switch to reload titles in new language
2026-04-08 23:06:59 +08:00
Lewis_yan
9fe040c5fc
feat(i18n): complete i18n adaptation for basicinfo modules
...
- Add missing createTime/updateTime keys to company, supplierUser, emailnotice
- Add statusValid, statusInvalid, autoFillNote, roleQuote to supplierUser
- Add general label to systemNo
- Fix systemno → systemNo key naming consistency in crud.tsx
- Sync menu i18n keys across en/zh-tw
2026-04-08 23:05:31 +08:00
Lewis_yan
ff0e99b2c0
fix(i18n): add createTime/updateTime keys and fix company createUser/updateUser refs in basicinfo
2026-04-08 22:43:11 +08:00
Lewis_yan
89b16e6047
feat(i18n): full i18n adaptation of pissupplier quotation index.vue and add missing i18n keys
2026-04-08 22:37:15 +08:00
Lewis_yan
7a3dc8376e
fix(i18n): revert buyingMethodDict rename - still used by index.vue import
2026-04-08 22:32:50 +08:00
Lewis_yan
40c376f205
feat(i18n): add missing inquiry status keys and paymentPrepaid to pissupplier quotation
2026-04-08 22:30:38 +08:00
Lewis_yan
6a73422e82
fix(i18n): add missing useI18n import in misc_parts/crud.tsx
2026-04-08 22:25:10 +08:00
Lewis_yan
c07929a7b2
feat(i18n): Fix misc_materials/stations i18n refs and add misc_parts i18n
...
- misc_materials/crud.tsx: Change misc_materials.* refs to materialInfo.*
- misc_stations/crud.tsx: Change misc_stations.* refs to stationInfo.*
- misc_parts/crud.tsx: Add full i18n support (useI18n, statusDict, categoryDict, all columns)
- Add missing keys to all 3 i18n files:
- materialInfo: statusEnabled, statusDisabled, createTime, updateTime
- stationInfo: statusEnabled, statusDisabled, typeTooling, typeGraphite, createTime, updateTime
- misc_parts: new section with all field labels
- rfqmiscellaneous: paymentMethod1-9, selectInquiryFirst, onlySingleOperation,
confirmBargainPrompt, addSupplierFirst, confirmPrompt, prompt, confirmFailed,
restorePrompt, restoreFailed, publishPrompt, publishFailed, startBargainFailed,
deleteFailed, cancel, inquiryNameRequired, buyerRequired, inquiryNoPlaceholder,
inquiryNamePlaceholder, buyerPlaceholder
2026-04-08 22:20:54 +08:00
Lewis_yan
433ce5243a
feat(i18n): 完成剩余 CRUD 文件国际化适配
...
basicinfo: company, systemno, emailnotice, supplier_user
miscprocurement: misc_materials, misc_stations, cost_template, rfqmiscellaneous
pissupplier: quotation
- 所有硬编码中文字符串替换为 t() i18n 调用
- 同步补充所有翻译 key (zh-cn/en/zh-tw)
2026-04-08 21:25:50 +08:00
nebula_chen
e8cc4c9a70
feat(eip_sync):新增供应商报价权限资料同步接口及配套测试
2026-04-08 19:28:43 +08:00
Lewis_yan
1ccea93eed
chore: 添加 dvadmin_ak_sk 到 INSTALLED_APPS
2026-04-08 17:30:01 +08:00
Lewis_yan
c115934a6f
chore(settings): 更新 settings.py (i18n 相关变更已在上一 commit 体现)
2026-04-08 17:20:12 +08:00
Lewis_yan
0716cd293c
feat(i18n): 添加 Menu/MenuButton/Users i18n 字段迁移
2026-04-08 17:20:05 +08:00
Lewis_yan
231ac88c8b
feat(i18n): 合并 django-vue3-admin i18n 国际化功能
...
后端:
- 添加 LocaleMiddleware 和 Django i18n 配置 (LANGUAGES/LOCALE_PATHS)
- Users.language 字段支持用户语言偏好
- Menu/MenuButton name_en/name_zh_tw 多语言字段
- WebRouterSerializer get_title() 语言感知返回
- update_language API endpoint
前端:
- vue-i18n 升级为 deepMerge + fast-crud i18n 集成
- 新增 19 个模块的 3 种语言翻译 (zh-CN/en/zh-TW)
- 导航栏语言切换器: 刷新路由 + 后端持久化
- router/backEnd.ts 支持 language 参数和 refreshRoutesForI18n
2026-04-08 17:11:39 +08:00
nebula_chen
67c90cd1ae
refactor(eip_sync):修改单测配置确保SQL Server环境下也能运行
2026-04-08 17:02:56 +08:00
nebula_chen
f05fa940da
feat(eip_sync):新增核价审核结果抛转接口并配套单元测试
2026-04-08 16:34:02 +08:00
nebula_chen
581cdd4422
feat(pisadmin):新增比价页及报价单详情页的分享页供抛转核价信息时抛转比价信息地址
2026-04-08 15:26:31 +08:00
nebula_chen
d99cdb543a
refactor(eip_sync):修改杂采料号抛转接口URL与文件对齐
2026-04-08 15:22:05 +08:00
nebula_chen
ed91fa2728
fix(eip_sync):暂时关闭AKSK认证,便于联调
2026-04-08 15:07:47 +08:00
lewis yan
aad26c9558
Merge branch 'develop' into 'Develop'
...
test: update Django+DRF testing infrastructure
See merge request pisteams/pis!1
2026-04-08 06:09:32 +00:00
nebula chen
72e21bd75c
Merge branch 'Develop' into 'develop'
...
# Conflicts:
# README.md
2026-04-08 06:01:27 +00:00
pandas xiao
196f20a9ca
Initial commit
2026-04-08 02:23:41 +00:00
nebula_chen
fbb8809664
refactor(dashboard):调整前端效果
2026-04-07 20:25:39 +08:00