1.0.197.sql 1.5 KB

123456789101112131415161718192021222324
  1. -- =============================================================================
  2. -- S0-MATERIAL-PL-CATEGORY-FILTER-DICT-VALUE-ALIGN-1
  3. -- 目的:修正 s0_pl_category 字典 value 与 ItemMaster.PurMfg 真实存储值对齐,
  4. -- 修复物料维护列表 P/L件筛选选「采购件/自制件」查空的 bug。
  5. -- 采购件 value purchase→P;自制件 value manufacture→L。
  6. -- 字段:SysDictData.Value,按字典 Code='s0_pl_category' + Label 定位(不按 Id——
  7. -- 运行期 Id 与种子 seq 已漂移,按 Label 才能 dev/prod 通用)。
  8. -- 安全:幂等(Value 已正确则不重复写);委外件无真实存储值,保持 outsource 不动;
  9. -- 不清洗 PurMfg 脏数据(11/6/空/NULL);不改 ItemType;不动其他字典/页面。
  10. -- 回滚:UPDATE SysDictData d JOIN SysDictType t ON d.DictTypeId=t.Id
  11. -- SET d.Value='purchase' WHERE t.Code='s0_pl_category' AND d.Label='采购件';
  12. -- UPDATE SysDictData d JOIN SysDictType t ON d.DictTypeId=t.Id
  13. -- SET d.Value='manufacture' WHERE t.Code='s0_pl_category' AND d.Label='自制件';
  14. -- =============================================================================
  15. UPDATE SysDictData d
  16. JOIN SysDictType t ON d.DictTypeId = t.Id
  17. SET d.Value = 'P', d.UpdateTime = NOW()
  18. WHERE t.Code = 's0_pl_category' AND d.Label = '采购件' AND d.Value <> 'P';
  19. UPDATE SysDictData d
  20. JOIN SysDictType t ON d.DictTypeId = t.Id
  21. SET d.Value = 'L', d.UpdateTime = NOW()
  22. WHERE t.Code = 's0_pl_category' AND d.Label = '自制件' AND d.Value <> 'L';