class ProductNameOption { final int id; final String? code; final String name; final String? remark; const ProductNameOption({ required this.id, this.code, required this.name, this.remark, }); factory ProductNameOption.fromJson(Map json) => ProductNameOption( id: (json['id'] as num).toInt(), code: json['code'] as String?, name: json['name'] as String, remark: json['remark'] as String?, ); } class ProductSeriesOption { final int id; final String? code; final String name; final String? remark; const ProductSeriesOption({ required this.id, this.code, required this.name, this.remark, }); factory ProductSeriesOption.fromJson(Map json) => ProductSeriesOption( id: (json['id'] as num).toInt(), code: json['code'] as String?, name: json['name'] as String, remark: json['remark'] as String?, ); } class ProductSpecOption { final int id; final String? code; final String name; final int quantity; final String? remark; const ProductSpecOption({ required this.id, this.code, required this.name, this.quantity = 0, this.remark, }); factory ProductSpecOption.fromJson(Map json) => ProductSpecOption( id: (json['id'] as num).toInt(), code: json['code'] as String?, name: json['name'] as String, quantity: (json['quantity'] as num?)?.toInt() ?? 0, remark: json['remark'] as String?, ); } // ── 商品属性字典(产地/保质期/储存方式) ───────────────────────── class ProductOriginOption { final int id; final String? code; final String name; final String? remark; const ProductOriginOption({ required this.id, this.code, required this.name, this.remark, }); factory ProductOriginOption.fromJson(Map json) => ProductOriginOption( id: (json['id'] as num).toInt(), code: json['code'] as String?, name: json['name'] as String, remark: json['remark'] as String?, ); } class ProductShelfLifeOption { final int id; final String? code; final String name; final String? remark; const ProductShelfLifeOption({ required this.id, this.code, required this.name, this.remark, }); factory ProductShelfLifeOption.fromJson(Map json) => ProductShelfLifeOption( id: (json['id'] as num).toInt(), code: json['code'] as String?, name: json['name'] as String, remark: json['remark'] as String?, ); } class ProductStorageOption { final int id; final String? code; final String name; final String? remark; const ProductStorageOption({ required this.id, this.code, required this.name, this.remark, }); factory ProductStorageOption.fromJson(Map json) => ProductStorageOption( id: (json['id'] as num).toInt(), code: json['code'] as String?, name: json['name'] as String, remark: json['remark'] as String?, ); } // ── 描述文档 ───────────────────────────────────────────────────── class ProductDescriptionDoc { final int id; final String title; final String? content; final String? remark; const ProductDescriptionDoc({ required this.id, required this.title, this.content, this.remark, }); factory ProductDescriptionDoc.fromJson(Map json) => ProductDescriptionDoc( id: (json['id'] as num).toInt(), title: json['title'] as String, content: json['content'] as String?, remark: json['remark'] as String?, ); }