1. 24 Sep, 2026 9 commits
  2. 23 Sep, 2026 12 commits
    • 【需求 25171】refactor: 发文页按文章类型拆成独立组件 · 0e5824f6
      publishLongArticle 之前把专栏/专访/帖子/问吧/实践五种类型的表单全挤在一个文件里,
      字段、校验规则、官方账号/管理员身份判断混在一起,改一个类型容易牵连到别的类型。
      
      按类型拆成 components/ 下的 PostForm、ColumnForm、InterviewForm、QuestionForm、
      PracticeForm,每个组件独立维护自己完整的抽屉表单(字段、校验、发布时间/IP信息、
      提交数据、编辑回显),文件开头写清楚了这个类型的特殊规则(比如帖子封面图什么时候
      必填、专栏独有的"同步同事吧"、问吧/实践用图片不用封面图、实践没有推送等)。外层
      index.vue 只保留标题/内容编辑器、抽屉壳子和提交/回显的整体编排。
      
      顺带把 api/article/types.ts 里跟实际请求对不上的类型补全了:AddOrUpdatePostDto
      之前没声明推送字段,PushSettingBase.pushList 缺了 valueType,新增了
      AddOrUpdateQuestionDto。
      lijiabin authored
    • 【需求 25171】feat: 内容管理新增帖子管理页面 · f5a5dc76
      补上帖子(ArticleTypeEnum.POST)类型的管理页面,结构跟专栏/专访/视频/问吧/
      实践管理保持一致,先展示基本信息,后续再按需加功能。
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
    • 【需求 25171】feat: 内容管理新增实践管理页面 · 31ace192
      内容管理下之前只有专栏/专访/视频/问吧四种类型,现在按同样的结构(列表+
      是否推荐排序+搜索)补上实践管理,先展示基本信息,后续再按需加功能。
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
    • 【需求 25171】fix: 案例库导入失败列表精确标红缺失字段 · bda2c6e0
      之前"文化主关键词"这一列漏了 v-if 判空,为空时会渲染出一个看起来像空
      勾选框的 el-tag。顺带按后端新增的 errorFields(必填项校验失败的字段名
      数组)实现按单元格精确标红,不再需要靠肉眼整行找哪个字段填错了。
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
    • 【需求 25171】fix: 问吧详情页翻页后自动滚动回回答列表顶部 · f1b6bed9
      回答列表翻页之前没有滚动,翻到后面几页时看不到"N 个回答"这个列表头部,
      体验和其他分页列表(比如首页问吧列表)不一致。参考同页面回答置顶后的
      滚动逻辑,翻页后统一滚回列表控制栏顶部。
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
    • 【需求 25171】fix: 修复问吧评论区首次无评论时查询参数缺失导致报错 · 5625c0e1
      问吧内联评论组件用 v-show 常驻挂载,commentId 只在组件创建时决定 searchParams
      走 pid 分支还是 articleId 分支。某个问题/回答一开始没有评论时 commentId 是
      undefined,组件锁死用 articleId 分支初始化;之后哪怕父组件传入了真实的
      commentId,组件不会重新 mount,再次搜索时依然带着 articleId 请求
      getQuestionComment,后端提示"参数缺失"。现在改成在真正发起搜索前校正一次
      searchParams,commentId 一旦有值就切到 pid 分支。
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
    • 【需求 25171】refactor: 统一问吧和普通帖子的评论回复展示逻辑 · 0ddc8e7d
      问吧的子评论之前会收起成"查看全部N条回复"跳转弹窗,跟帖子的内联展开+分页不一致。
      getQuestionComment 实际已经和帖子一样直接返回前5条 children,只是总数字段名不同
      (childNum vs childrenNum),所以是纯前端展示差异,统一成和帖子一致的内联展开/分页
      即可,不需要改后端。CommentListDialog 因此变成无引用组件,一并删除。
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
    • 【需求 25171】refactor: 4 个页面接入 DeptUserPicker,替代企微选人 API · 10b99bbd
      editDialog(后台案例编辑)、publishCase(投稿案例):只选部门,
      value-type="string" 直接绑 deptId,@confirm 里拼 deptName。
      
      publishLongArticle、publishVideo:部门+人员都能选,双 v-model 绑 id,
      @confirm 拿完整详情拼 pushList。
      
      顺手删掉了 wxUtil 里不再使用的 selectDepOrUser 及其相关类型。
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
    • 【需求 25171】refactor: 优化选人组件的设计和几个交互 bug · af06f8fb
      DepartmentUserModal:
      - 修复同一个人同时出现在父部门和子部门成员列表里时,勾选状态互相串、
        取消不同步的问题(node-key 改成带部门前缀保证全树唯一)
      - 新增 max 限制,超出直接在弹窗内提示,不接受这次勾选
      - 树行高、行间分割线、hover 光标等样式调整(改用 scoped style,
        之前链式 UnoCSS 工具类在这种组合下没有正确生效)
      
      DeptUserPicker:
      - v-model 拆成 dept-value/user-value 两个,只存 id,支持 array 或
        逗号字符串(value-type)两种格式,跟后端字段直接对齐
      - 内部缓存选中详情(含头像),重新打开弹窗/编辑回显不会丢失
      - 部门缺名字时自动用 getAllDept({ deptIdList }) 反查,不需要调用方
        额外传初始详情;人员没有等价的批量查询接口,保留 initial-selected
        作为可选的回显种子
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
  3. 22 Sep, 2026 2 commits
    • 【需求 25171】feat: 新增部门/人员选择组件,替代企微选人 API · fee53bb2
      - DepartmentUserModal:自封装选部门/选人弹窗,懒加载组织架构树 + 成员,
        支持部门/人员/两者、单选/多选、userId|account|jobNumId 三种取值字段、
        搜索下拉(超过 100 条截断展示 + 查看全部)。
      - DeptUserPicker:表单场景的轻量封装,v-model 直接绑 DepartmentUserSelection[],
        触发区交给调用方自定义,用于逐步替换页面里的 selectDepOrUser(企微选人)调用。
      - src/api/department 改名为 src/api/deptUser,接口不只是部门,也包含查成员/搜人。
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
    • 【需求 25171】feat: 封面图上传支持裁剪后再提交 · 8b8ed832
      新增 ImageCropperDialog 裁剪弹窗,UploadFile 组件加 crop/aspect-ratio 支持,
      publishLongArticle 封面图上传接入裁剪,避免用户上传的封面图比例不统一。
      
      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
      lijiabin authored
  4. 15 Sep, 2026 2 commits
  5. 14 Sep, 2026 5 commits
  6. 11 Sep, 2026 8 commits
  7. 31 Aug, 2026 1 commit
  8. 26 Aug, 2026 1 commit