Commit Graph
118 Commits
Author SHA1 Message Date
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
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
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
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
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 581cdd4422 feat(pisadmin):新增比价页及报价单详情页的分享页供抛转核价信息时抛转比价信息地址 2026-04-08 15:26:31 +08:00
nebula_chen fbb8809664 refactor(dashboard):调整前端效果 2026-04-07 20:25:39 +08:00
nebula_chen 8259cd797a refactor(system, pisadmin):修改供应商账号登录时角色标识的校验逻辑,暂时改为 supplier_*;同步修改仪表盘 2026-04-07 16:06:39 +08:00
lewis 742b5e8482 Merge branch 'feat/dashboard-home-notification' into 'develop'
feat(dashboard): add semantic icons to KPI cards

See merge request pisteams/pis!52
2026-04-07 03:19:30 +00:00
Lewis_yan 3ddea70c55 feat(dashboard): add system notification card to right sidebar
Reference the original django-vue3-admin framework home page, combine
the home image and notification card into one layout. The notification
list appears below the image, matching the original framework's style
with creator name, datetime, and title for each notification item.
2026-04-07 11:13:47 +08:00
Lewis_yan 0a5b72fdba fix(dashboard): wrap response with code:200 and update store to extract data from res.data
Backend: Response() now returns {code:200, msg, data: {buyer, supplier}}
Frontend: store extracts buyer/supplier from res.data since axios interceptor returns full response
2026-04-07 10:48:32 +08:00
nebula_chen b31588d7ad feat(pisadmin):新增供应商用户创建关联系统的用户创建 2026-04-07 10:22:58 +08:00
Lewis_yan 3c2ae69383 debug: log full task object to identify actual API field names 2026-04-07 10:19:08 +08:00
Lewis_yan 2a753d7cfd debug(dashboard): add console.log debugging for buyer/supplier task list data flow
Trace points:
- Dashboard Store: API response, buyer/supplier data, tasks/pending_quotes
- BuyerDashboard: computed tasks, onMounted, getDeadlineClass, getRemainingTimeText
- SupplierDashboard: computed pendingQuotes, onMounted, getDeadlineClass, getRemainingTimeText
2026-04-07 10:18:08 +08:00
Lewis_yan 9ebda50083 docs: update README with project architecture and startup scripts
- Replace dvadmin3 framework intro with PIS project content
- Add project architecture section (tech stack, directory structure, modules)
- Add startup scripts documentation (start-backend.sh, start-frontend.sh, etc.)
- Update all 4 README files (EN/ZH for root and web/)
2026-04-07 10:07:03 +08:00
Lewis_yan 41ad7b67c2 feat(dashboard): enhance todo task rendering with procurement method and deadline styling
BuyerDashboard:
- Added procurement method column (询价/招标 badge)
- Added deadline/remaining time with color coding:
  - <24h: red bold
  - 24-48h: yellow bold
  - expired: strikethrough
- 询价 uses quote_deadline, 招标 uses bid_end_time

SupplierDashboard:
- Added procurement method badge
- Time display varies by method:
  - 询价: shows quote deadline + remaining time
  - 招标: shows bid time range (bid_start ~ bid_end) + remaining time
- Same deadline color coding as buyer
2026-04-07 10:06:07 +08:00
Lewis_yan 6123b6ef17 fix(dashboard): render all days of current month in trend chart
Generate all calendar days of current month and map backend data to
each day. Missing days display as 0 instead of being omitted from
the x-axis.
2026-04-07 09:59:49 +08:00
Lewis_yan 22f8caa6d4 fix(dashboard): use day field for 30-day trend chart x-axis
Change from d.month to d.day to properly display daily
data instead of monthly aggregation on the 30-day trend chart.
2026-04-07 09:57:48 +08:00
Lewis_yan 829b030828 fix(dashboard): replace non-existent FA4.7 icons with valid alternatives
- fa-chart-pie → fa-pie-chart
- fa-file-invoice → fa-file-text-o
- fa-pen-to-square → fa-pencil-square-o
2026-04-07 09:52:28 +08:00
Lewis_yan 4d61d34c56 fix(dashboard): use fa-clock-o for FontAwesome 4.7 compatibility
fa-clock (solid) only exists in FA5+, FA4.7 uses fa-clock-o (outline)
2026-04-07 09:51:28 +08:00
Lewis_yan 2e49fa1449 feat(dashboard): add semantic icons to KPI cards
Add FontAwesome icons to all 7 KPI metric cards in buyer and
supplier dashboards for better visual semantics:

BuyerDashboard:
- fa-check-circle (completed inquiries)
- fa-clock (pending inquiries)
- fa-chart-pie (quote timeliness rate)

SupplierDashboard:
- fa-file-invoice (total quotes)
- fa-pen-to-square (pending quotes)
- fa-trophy (won bids)
- fa-bullseye (win rate)
2026-04-07 09:46:09 +08:00
nebula_chen 28d799c2e4 refactor(pisadmin):修改材料制程最低价与杂采材料表的关联逻辑;修改履历表的写入逻辑与前端实现 2026-04-03 20:22:52 +08:00
nebula_chen 3e9fcc0198 Merge branch pis:develop into develop 2026-04-03 11:02:29 +00:00
nebula_chen 7a9822740c refactor(pisadmin):修改制程最低价和平均价的计算逻辑 2026-04-03 18:57:09 +08:00
lewis f8214b1264 Merge branch 'develop' into 'develop'
feat(pisadmin):新增供应商用户信息页

See merge request pisteams/pis!48
2026-04-03 10:19:15 +00:00
nebula_chen cb91c7c4f5 fix(pisadmin):修改制程最低价计算逻辑 2026-04-03 16:32:13 +08:00
nebula_chen 28f327b01d Merge branch 'develop' of http://192.168.80.90:8086/nebula_chen/pis into develop 2026-04-03 15:19:28 +08:00
nebula_chen 59fb404460 feat(pisadmin):新增供应商用户信息页 2026-04-03 15:17:43 +08:00
lewis_yan 6031375607 feat(dashboard): add quote_timely_rate and status fields to store types 2026-04-03 13:34:44 +08:00
lewis_yan 09e4838c66 chore(deps): update pnpm-lock.yaml for husky and lint-staged 2026-04-03 13:34:42 +08:00
nebula_chen af9406db3a Merge branch 'develop' into 'develop'
# Conflicts:
#   backend/apps/pisadmin/basicinfo/views/email_template.py
2026-04-03 02:23:36 +00:00
nebula_chen 3c50ad5d40 修改供应商用户信息表序列化器;修改操作日志写入逻辑;新增前端操作日志在询价单发布后显示供应商报价一览;调整报价单详情页成本结构前端设计 2026-04-03 10:20:32 +08:00