|
|
|
|
/// id : "1433994980233314304"
|
|
|
|
|
/// createTime : "2021-09-04 11:27:00"
|
|
|
|
|
/// createUser : "1333246101196636160"
|
|
|
|
|
/// updateTime : "2021-10-08 15:51:01"
|
|
|
|
|
/// updateUser : "1333246101196636160"
|
|
|
|
|
/// supplierName : "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
|
|
|
|
/// storeId : "1333246101343436800"
|
|
|
|
|
/// categoryId : "1300688133322440704"
|
|
|
|
|
/// groupId : "1426086173217914880"
|
|
|
|
|
/// shortName : "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
|
|
|
|
/// productName : "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̲<EFBFBD>"
|
|
|
|
|
/// sellDesc : ""
|
|
|
|
|
/// productCode : "PRO202109041127000000000000001"
|
|
|
|
|
/// weight : "0"
|
|
|
|
|
/// applyPrice : "0.00"
|
|
|
|
|
/// price : "5.00"
|
|
|
|
|
/// stock : -52
|
|
|
|
|
/// sellCount : 25
|
|
|
|
|
/// needLogistics : 1
|
|
|
|
|
/// oversold : 1
|
|
|
|
|
/// status : 1
|
|
|
|
|
/// posShow : true
|
|
|
|
|
/// productType : 0
|
|
|
|
|
/// productNumber : 0
|
|
|
|
|
/// setMeal : 1
|
|
|
|
|
/// attrStyle : 1
|
|
|
|
|
/// isDelete : 0
|
|
|
|
|
/// printerFlag : "DEFAULT"
|
|
|
|
|
/// materialId : null
|
|
|
|
|
/// imgs : ["https://pos.upload.gznl.top/1175/2021/09/b87e91a4-fe36-4268-803a-94e5bfaea3eb.webp"]
|
|
|
|
|
/// storeDTO : {"id":"1333246101343436800","storeName":"<EFBFBD><EFBFBD>Ͽ<EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>)","nickName":"","logo":"https://pos.upload.gznl.top/1175/2021/07/ae873881-b3ab-4332-b863-f3055b200e07.webp","productCount":31,"soldNum":1518}
|
|
|
|
|
/// attrList : [{"productId":"1433994980233314304","attrName":"<EFBFBD>¶<EFBFBD>","sortOrder":null,"needImg":false,"isDelete":0,"attrCode":null,"id":"1433994980644356096","attrValueList":[{"id":"1434076666832879616","attrId":"1433994980644356096","attrValue":"ȥ<EFBFBD><EFBFBD>","attrValueImg":"","sortOrder":null,"isDelete":0,"attrValueCode":null},{"id":"1433994980849876992","attrId":"1433994980644356096","attrValue":"<EFBFBD>ٱ<EFBFBD>","attrValueImg":"","sortOrder":null,"isDelete":0,"attrValueCode":null},{"id":"1434076667034206208","attrId":"1433994980644356096","attrValue":"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>","attrValueImg":"","sortOrder":null,"isDelete":0,"attrValueCode":null}]},{"productId":"1433994980233314304","attrName":"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>","sortOrder":0,"needImg":false,"isDelete":0,"attrCode":null,"id":"1434076668170862592","attrValueList":[{"id":"1434076668615458816","attrId":"1434076668170862592","attrValue":"<EFBFBD>б<EFBFBD>","attrValueImg":"","sortOrder":null,"isDelete":0,"attrValueCode":null},{"id":"1434076668376383488","attrId":"1434076668170862592","attrValue":"<EFBFBD><EFBFBD>","attrValueImg":"","sortOrder":0,"isDelete":0,"attrValueCode":null}]},{"productId":"1433994980233314304","attrName":"<EFBFBD><EFBFBD><EFBFBD>","sortOrder":0,"needImg":false,"isDelete":0,"attrCode":null,"id":"1434076667252310016","attrValueList":[{"id":"1434076667919204352","attrId":"1434076667252310016","attrValue":"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>","attrValueImg":"","sortOrder":null,"isDelete":0,"attrValueCode":null},{"id":"1434076667696906240","attrId":"1434076667252310016","attrValue":"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>","attrValueImg":"","sortOrder":null,"isDelete":0,"attrValueCode":null},{"id":"1434076667478802432","attrId":"1434076667252310016","attrValue":"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>","attrValueImg":"","sortOrder":0,"isDelete":0,"attrValueCode":null}]}]
|
|
|
|
|
/// productSkuVOList : [{"id":"1446382612795883520","createTime":"2021-09-04 16:51:38","createUser":"1333246101196636160","updateTime":"2021-09-04 16:51:38","updateUser":"1333246101196636160","storeId":"1333246101343436800","skuCode":"P202109041651376","skuNameStr":"ȥ<EFBFBD><EFBFBD> <EFBFBD>б<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>","productId":"1433994980233314304","skuPrice":"5.00","applyPrice":"0.00","vipPrice":null,"skuImg":null,"skuStock":-3,"sort":null,"setMeal":null,"weight":0.0,"volume":0.0,"isDelete":0,"material":null,"version":null,"skuAttrCodeDTOList":null,"skuAttrList":[{"id":"1446382613043347456","createTime":"2021-10-08 15:51:02","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:02","updateUser":"1333246101196636160","skuId":"1446382612795883520","attrId":"1433994980644356096","attrValueId":"1434076666832879616","sortOrder":null,"isDelete":0},{"id":"1446382613278228480","createTime":"2021-10-08 15:51:02","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:02","updateUser":"1333246101196636160","skuId":"1446382612795883520","attrId":"1434076668170862592","attrValueId":"1434076668615458816","sortOrder":null,"isDelete":0},{"id":"1446382613479555072","createTime":"2021-10-08 15:51:02","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:02","updateUser":"1333246101196636160","skuId":"1446382612795883520","attrId":"1434076667252310016","attrValueId":"1434076667919204352","sortOrder":null,"isDelete":0}],"setMealDTOList":null},{"id":"1446382613697658880","createTime":"2021-09-04 16:51:37","createUser":"1333246101196636160","updateTime":"2021-09-04 16:51:37","updateUser":"1333246101196636160","storeId":"1333246101343436800","skuCode":"P202109041651374","skuNameStr":"ȥ<EFBFBD><EFBFBD> <EFBFBD>б<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>","productId":"1433994980233314304","skuPrice":"5.00","applyPrice":"0.00","vipPrice":null,"skuImg":null,"skuStock":-3,"sort":null,"setMeal":null,"weight":0.0,"volume":0.0,"isDelete":0,"material":null,"version":null,"skuAttrCodeDTOList":null,"skuAttrList":[{"id":"1446382613911568384","createTime":"2021-10-08 15:51:02","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:02","updateUser":"1333246101196636160","skuId":"1446382613697658880","attrId":"1433994980644356096","attrValueId":"1434076666832879616","sortOrder":null,"isDelete":0},{"id":"1446382614112894976","createTime":"2021-10-08 15:51:02","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:02","updateUser":"1333246101196636160","skuId":"1446382613697658880","attrId":"1434076668170862592","attrValueId":"1434076668615458816","sortOrder":null,"isDelete":0},{"id":"1446382614330998784","createTime":"2021-10-08 15:51:02","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:02","updateUser":"1333246101196636160","skuId":"1446382613697658880","attrId":"1434076667252310016","attrValueId":"1434076667696906240","sortOrder":null,"isDelete":0}],"setMealDTOList":null},{"id":"1446382614553296896","createTime":"2021-09-04 16:51:37","createUser":"1333246101196636160","updateTime":"2021-09-04 16:51:37","updateUser":"1333246101196636160","storeId":"1333246101343436800","skuCode":"P202109041651362","skuNameStr":"ȥ<EFBFBD><EFBFBD> <EFBFBD>б<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>","productId":"1433994980233314304","skuPrice":"5.00","applyPrice":"0.00","vipPrice":null,"skuImg":null,"skuStock":-3,"sort":null,"setMeal":null,"weight":0.0,"volume":0.0,"isDelete":0,"material":null,"version":null,"skuAttrCodeDTOList":null,"skuAttrList":[{"id":"1446382614788177920","createTime":"2021-10-08 15:51:03","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:03","updateUser":"1333246101196636160","skuId":"1446382614553296896","attrId":"1433994980644356096","attrValueId":"1434076666832879616","sortOrder":null,"isDelete":0},{"id":"1446382615002087424","createTime":"2021-10-08 15:51:03","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:03","updateUser":"1333246101196636160","skuId":"1446382614553296896","attrId":"1434076668170862592","attrValueId":"1434076668615458816","sortOrder":null,"isDelete":0},{"id":"1446382615199219712","createTime":"2021-10-08 15:51:
|
|
|
|
|
/// shipAddress : "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><EFBFBD>Ͽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̲<EFBFBD>"
|
|
|
|
|
/// buyCount : 3
|
|
|
|
|
/// promotionShowVOList : []
|
|
|
|
|
/// buyNum : 1
|
|
|
|
|
/// productPlatterInfos : null
|
|
|
|
|
/// markProductNone : null
|
|
|
|
|
/// namePinyin : null
|
|
|
|
|
/// nameInitials : null
|
|
|
|
|
|
|
|
|
|
class MiNiDetail {
|
|
|
|
|
String id;
|
|
|
|
|
String createTime;
|
|
|
|
|
String createUser;
|
|
|
|
|
String updateTime;
|
|
|
|
|
String updateUser;
|
|
|
|
|
String supplierName;
|
|
|
|
|
String storeId;
|
|
|
|
|
String categoryId;
|
|
|
|
|
String groupId;
|
|
|
|
|
String shortName;
|
|
|
|
|
String productName;
|
|
|
|
|
String sellDesc;
|
|
|
|
|
String productCode;
|
|
|
|
|
String weight;
|
|
|
|
|
String applyPrice;
|
|
|
|
|
String price;
|
|
|
|
|
int stock;
|
|
|
|
|
int sellCount;
|
|
|
|
|
int needLogistics;
|
|
|
|
|
int oversold;
|
|
|
|
|
int organic;
|
|
|
|
|
int status;
|
|
|
|
|
bool posShow;
|
|
|
|
|
int productType;
|
|
|
|
|
int productNumber;
|
|
|
|
|
int setMeal;
|
|
|
|
|
int attrStyle;
|
|
|
|
|
String detail;
|
|
|
|
|
String details;
|
|
|
|
|
int isDelete;
|
|
|
|
|
String printerFlag;
|
|
|
|
|
String thumbnailImg;
|
|
|
|
|
dynamic materialId;
|
|
|
|
|
List<String> imgs;
|
|
|
|
|
StoreDTOBean storeDTO;
|
|
|
|
|
List<AttrListBean> attrList;
|
|
|
|
|
List<ProductSkuVOListBean> productSkuVOList;
|
|
|
|
|
String shipAddress;
|
|
|
|
|
int buyCount;
|
|
|
|
|
List<dynamic> promotionShowVOList;
|
|
|
|
|
int buyNum;
|
|
|
|
|
dynamic productPlatterInfos;
|
|
|
|
|
dynamic markProductNone;
|
|
|
|
|
dynamic namePinyin;
|
|
|
|
|
dynamic nameInitials;
|
|
|
|
|
SubscribeParam subscribeParam;
|
|
|
|
|
int minQty;
|
|
|
|
|
|
|
|
|
|
static MiNiDetail fromJson(Map<String, dynamic> map) {
|
|
|
|
|
if (map == null) return null;
|
|
|
|
|
MiNiDetail miNiDetailBean = MiNiDetail();
|
|
|
|
|
miNiDetailBean.id = map['id'];
|
|
|
|
|
miNiDetailBean.createTime = map['createTime'];
|
|
|
|
|
miNiDetailBean.createUser = map['createUser'];
|
|
|
|
|
miNiDetailBean.updateTime = map['updateTime'];
|
|
|
|
|
miNiDetailBean.updateUser = map['updateUser'];
|
|
|
|
|
miNiDetailBean.supplierName = map['supplierName'];
|
|
|
|
|
miNiDetailBean.storeId = map['storeId'];
|
|
|
|
|
miNiDetailBean.categoryId = map['categoryId'];
|
|
|
|
|
miNiDetailBean.groupId = map['groupId'];
|
|
|
|
|
miNiDetailBean.shortName = map['shortName'];
|
|
|
|
|
miNiDetailBean.productName = map['productName'];
|
|
|
|
|
miNiDetailBean.sellDesc = map['sellDesc'];
|
|
|
|
|
miNiDetailBean.productCode = map['productCode'];
|
|
|
|
|
miNiDetailBean.weight = map['weight'];
|
|
|
|
|
miNiDetailBean.applyPrice = map['applyPrice'];
|
|
|
|
|
miNiDetailBean.price = map['price'];
|
|
|
|
|
miNiDetailBean.stock = map['stock'];
|
|
|
|
|
miNiDetailBean.sellCount = map['sellCount'];
|
|
|
|
|
miNiDetailBean.needLogistics = map['needLogistics'];
|
|
|
|
|
miNiDetailBean.oversold = map['oversold'];
|
|
|
|
|
miNiDetailBean.organic = map['organic'];
|
|
|
|
|
miNiDetailBean.status = map['status'];
|
|
|
|
|
miNiDetailBean.posShow = map['posShow'];
|
|
|
|
|
miNiDetailBean.productType = map['productType'];
|
|
|
|
|
miNiDetailBean.productNumber = map['productNumber'];
|
|
|
|
|
miNiDetailBean.setMeal = map['setMeal'];
|
|
|
|
|
miNiDetailBean.attrStyle = map['attrStyle'];
|
|
|
|
|
miNiDetailBean.detail = map['detail'];
|
|
|
|
|
miNiDetailBean.details = map['details'];
|
|
|
|
|
miNiDetailBean.isDelete = map['isDelete'];
|
|
|
|
|
miNiDetailBean.printerFlag = map['printerFlag'];
|
|
|
|
|
miNiDetailBean.thumbnailImg = map['thumbnailImg'];
|
|
|
|
|
miNiDetailBean.materialId = map['materialId'];
|
|
|
|
|
miNiDetailBean.imgs = []
|
|
|
|
|
..addAll((map['imgs'] as List ?? []).map((o) => o.toString()));
|
|
|
|
|
miNiDetailBean.storeDTO = StoreDTOBean.fromJson(map['storeDTO']);
|
|
|
|
|
miNiDetailBean.attrList = []..addAll(
|
|
|
|
|
(map['attrList'] as List ?? []).map((o) => AttrListBean.fromJson(o)));
|
|
|
|
|
miNiDetailBean.productSkuVOList = []..addAll(
|
|
|
|
|
(map['productSkuVOList'] as List ?? [])
|
|
|
|
|
.map((o) => ProductSkuVOListBean.fromJson(o)));
|
|
|
|
|
miNiDetailBean.shipAddress = map['shipAddress'];
|
|
|
|
|
miNiDetailBean.buyCount = map['buyCount'];
|
|
|
|
|
miNiDetailBean.promotionShowVOList = map['promotionShowVOList'];
|
|
|
|
|
miNiDetailBean.buyNum = map['buyNum'];
|
|
|
|
|
miNiDetailBean.productPlatterInfos = map['productPlatterInfos'];
|
|
|
|
|
miNiDetailBean.markProductNone = map['markProductNone'];
|
|
|
|
|
miNiDetailBean.namePinyin = map['namePinyin'];
|
|
|
|
|
miNiDetailBean.nameInitials = map['nameInitials'];
|
|
|
|
|
miNiDetailBean.subscribeParam =
|
|
|
|
|
SubscribeParam.fromJson(map['subscribeParam']);
|
|
|
|
|
miNiDetailBean.minQty = map['minQty'];
|
|
|
|
|
return miNiDetailBean;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map toJson() => {
|
|
|
|
|
"id": id,
|
|
|
|
|
"createTime": createTime,
|
|
|
|
|
"createUser": createUser,
|
|
|
|
|
"updateTime": updateTime,
|
|
|
|
|
"updateUser": updateUser,
|
|
|
|
|
"supplierName": supplierName,
|
|
|
|
|
"storeId": storeId,
|
|
|
|
|
"categoryId": categoryId,
|
|
|
|
|
"groupId": groupId,
|
|
|
|
|
"shortName": shortName,
|
|
|
|
|
"productName": productName,
|
|
|
|
|
"sellDesc": sellDesc,
|
|
|
|
|
"productCode": productCode,
|
|
|
|
|
"weight": weight,
|
|
|
|
|
"applyPrice": applyPrice,
|
|
|
|
|
"price": price,
|
|
|
|
|
"stock": stock,
|
|
|
|
|
"sellCount": sellCount,
|
|
|
|
|
"needLogistics": needLogistics,
|
|
|
|
|
"oversold": oversold,
|
|
|
|
|
"organic": organic,
|
|
|
|
|
"status": status,
|
|
|
|
|
"posShow": posShow,
|
|
|
|
|
"productType": productType,
|
|
|
|
|
"productNumber": productNumber,
|
|
|
|
|
"setMeal": setMeal,
|
|
|
|
|
"attrStyle": attrStyle,
|
|
|
|
|
"detail": detail,
|
|
|
|
|
"details": details,
|
|
|
|
|
"isDelete": isDelete,
|
|
|
|
|
"printerFlag": printerFlag,
|
|
|
|
|
"thumbnailImg": thumbnailImg,
|
|
|
|
|
"materialId": materialId,
|
|
|
|
|
"imgs": imgs,
|
|
|
|
|
"storeDTO": storeDTO,
|
|
|
|
|
"attrList": attrList,
|
|
|
|
|
"productSkuVOList": productSkuVOList,
|
|
|
|
|
"shipAddress": shipAddress,
|
|
|
|
|
"buyCount": buyCount,
|
|
|
|
|
"promotionShowVOList": promotionShowVOList,
|
|
|
|
|
"buyNum": buyNum,
|
|
|
|
|
"productPlatterInfos": productPlatterInfos,
|
|
|
|
|
"markProductNone": markProductNone,
|
|
|
|
|
"namePinyin": namePinyin,
|
|
|
|
|
"nameInitials": nameInitials,
|
|
|
|
|
"subscribeParam": subscribeParam,
|
|
|
|
|
"minQty": minQty
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// id : "1446382612795883520"
|
|
|
|
|
/// createTime : "2021-09-04 16:51:38"
|
|
|
|
|
/// createUser : "1333246101196636160"
|
|
|
|
|
/// updateTime : "2021-09-04 16:51:38"
|
|
|
|
|
/// updateUser : "1333246101196636160"
|
|
|
|
|
/// storeId : "1333246101343436800"
|
|
|
|
|
/// skuCode : "P202109041651376"
|
|
|
|
|
/// skuNameStr : "ȥ<EFBFBD><EFBFBD> <EFBFBD>б<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
|
|
|
|
/// productId : "1433994980233314304"
|
|
|
|
|
/// skuPrice : "5.00"
|
|
|
|
|
/// applyPrice : "0.00"
|
|
|
|
|
/// vipPrice : null
|
|
|
|
|
/// skuImg : null
|
|
|
|
|
/// skuStock : -3
|
|
|
|
|
/// sort : null
|
|
|
|
|
/// setMeal : null
|
|
|
|
|
/// weight : 0.0
|
|
|
|
|
/// volume : 0.0
|
|
|
|
|
/// isDelete : 0
|
|
|
|
|
/// material : null
|
|
|
|
|
/// version : null
|
|
|
|
|
/// skuAttrCodeDTOList : null
|
|
|
|
|
/// skuAttrList : [{"id":"1446382613043347456","createTime":"2021-10-08 15:51:02","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:02","updateUser":"1333246101196636160","skuId":"1446382612795883520","attrId":"1433994980644356096","attrValueId":"1434076666832879616","sortOrder":null,"isDelete":0},{"id":"1446382613278228480","createTime":"2021-10-08 15:51:02","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:02","updateUser":"1333246101196636160","skuId":"1446382612795883520","attrId":"1434076668170862592","attrValueId":"1434076668615458816","sortOrder":null,"isDelete":0},{"id":"1446382613479555072","createTime":"2021-10-08 15:51:02","createUser":"1333246101196636160","updateTime":"2021-10-08 15:51:02","updateUser":"1333246101196636160","skuId":"1446382612795883520","attrId":"1434076667252310016","attrValueId":"1434076667919204352","sortOrder":null,"isDelete":0}]
|
|
|
|
|
/// setMealDTOList : null
|
|
|
|
|
|
|
|
|
|
class ProductSkuVOListBean {
|
|
|
|
|
String id;
|
|
|
|
|
String createTime;
|
|
|
|
|
String createUser;
|
|
|
|
|
String updateTime;
|
|
|
|
|
String updateUser;
|
|
|
|
|
String storeId;
|
|
|
|
|
String skuCode;
|
|
|
|
|
String skuNameStr;
|
|
|
|
|
int _minQty;
|
|
|
|
|
String productId;
|
|
|
|
|
String skuPrice;
|
|
|
|
|
String applyPrice;
|
|
|
|
|
dynamic vipPrice;
|
|
|
|
|
dynamic skuImg;
|
|
|
|
|
int skuStock;
|
|
|
|
|
dynamic sort;
|
|
|
|
|
dynamic setMeal;
|
|
|
|
|
double weight;
|
|
|
|
|
double volume;
|
|
|
|
|
int isDelete;
|
|
|
|
|
dynamic material;
|
|
|
|
|
dynamic version;
|
|
|
|
|
dynamic skuAttrCodeDTOList;
|
|
|
|
|
List<SkuAttrListBean> skuAttrList;
|
|
|
|
|
List<ProductSetMeals> productSetMeals;
|
|
|
|
|
dynamic setMealDTOList;
|
|
|
|
|
int _count;
|
|
|
|
|
|
|
|
|
|
int get minQty => _minQty??0;
|
|
|
|
|
|
|
|
|
|
set minQty(int value) {
|
|
|
|
|
_minQty = value;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int get count => _count??1;
|
|
|
|
|
|
|
|
|
|
set count(int value) {
|
|
|
|
|
_count = value;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
static ProductSkuVOListBean fromJson(Map<String, dynamic> map) {
|
|
|
|
|
if (map == null) return null;
|
|
|
|
|
ProductSkuVOListBean productSkuVOListBean = ProductSkuVOListBean();
|
|
|
|
|
productSkuVOListBean.id = map['id'];
|
|
|
|
|
productSkuVOListBean.createTime = map['createTime'];
|
|
|
|
|
productSkuVOListBean.createUser = map['createUser'];
|
|
|
|
|
productSkuVOListBean.updateTime = map['updateTime'];
|
|
|
|
|
productSkuVOListBean.updateUser = map['updateUser'];
|
|
|
|
|
productSkuVOListBean.storeId = map['storeId'];
|
|
|
|
|
productSkuVOListBean.skuCode = map['skuCode'];
|
|
|
|
|
productSkuVOListBean.skuNameStr = map['skuNameStr'];
|
|
|
|
|
productSkuVOListBean._minQty = map['minQty'];
|
|
|
|
|
productSkuVOListBean.productId = map['productId'];
|
|
|
|
|
productSkuVOListBean.skuPrice = map['skuPrice'];
|
|
|
|
|
productSkuVOListBean.applyPrice = map['applyPrice'];
|
|
|
|
|
productSkuVOListBean.vipPrice = map['vipPrice'];
|
|
|
|
|
productSkuVOListBean.skuImg = map['skuImg'];
|
|
|
|
|
productSkuVOListBean.skuStock = map['skuStock'];
|
|
|
|
|
productSkuVOListBean.sort = map['sort'];
|
|
|
|
|
productSkuVOListBean.setMeal = map['setMeal'];
|
|
|
|
|
productSkuVOListBean.weight = map['weight'];
|
|
|
|
|
productSkuVOListBean.volume = map['volume'];
|
|
|
|
|
productSkuVOListBean.isDelete = map['isDelete'];
|
|
|
|
|
productSkuVOListBean.material = map['material'];
|
|
|
|
|
productSkuVOListBean.version = map['version'];
|
|
|
|
|
productSkuVOListBean.skuAttrCodeDTOList = map['skuAttrCodeDTOList'];
|
|
|
|
|
productSkuVOListBean.skuAttrList = []..addAll(
|
|
|
|
|
(map['skuAttrList'] as List ?? [])
|
|
|
|
|
.map((o) => SkuAttrListBean.fromJson(o)));
|
|
|
|
|
productSkuVOListBean.productSetMeals = []..addAll(
|
|
|
|
|
(map['productSetMeals'] as List ?? [])
|
|
|
|
|
.map((o) => ProductSetMeals.fromJson(o)));
|
|
|
|
|
productSkuVOListBean.setMealDTOList = map['setMealDTOList'];
|
|
|
|
|
return productSkuVOListBean;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map toJson() => {
|
|
|
|
|
"id": id,
|
|
|
|
|
"createTime": createTime,
|
|
|
|
|
"createUser": createUser,
|
|
|
|
|
"updateTime": updateTime,
|
|
|
|
|
"updateUser": updateUser,
|
|
|
|
|
"storeId": storeId,
|
|
|
|
|
"skuCode": skuCode,
|
|
|
|
|
"skuNameStr": skuNameStr,
|
|
|
|
|
"minQty": _minQty,
|
|
|
|
|
"productId": productId,
|
|
|
|
|
"skuPrice": skuPrice,
|
|
|
|
|
"applyPrice": applyPrice,
|
|
|
|
|
"vipPrice": vipPrice,
|
|
|
|
|
"skuImg": skuImg,
|
|
|
|
|
"skuStock": skuStock,
|
|
|
|
|
"sort": sort,
|
|
|
|
|
"setMeal": setMeal,
|
|
|
|
|
"weight": weight,
|
|
|
|
|
"volume": volume,
|
|
|
|
|
"isDelete": isDelete,
|
|
|
|
|
"material": material,
|
|
|
|
|
"version": version,
|
|
|
|
|
"skuAttrCodeDTOList": skuAttrCodeDTOList,
|
|
|
|
|
"skuAttrList": skuAttrList,
|
|
|
|
|
"setMealDTOList": setMealDTOList,
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// id : "1446382613043347456"
|
|
|
|
|
/// createTime : "2021-10-08 15:51:02"
|
|
|
|
|
/// createUser : "1333246101196636160"
|
|
|
|
|
/// updateTime : "2021-10-08 15:51:02"
|
|
|
|
|
/// updateUser : "1333246101196636160"
|
|
|
|
|
/// skuId : "1446382612795883520"
|
|
|
|
|
/// attrId : "1433994980644356096"
|
|
|
|
|
/// attrValueId : "1434076666832879616"
|
|
|
|
|
/// sortOrder : null
|
|
|
|
|
/// isDelete : 0
|
|
|
|
|
|
|
|
|
|
class SkuAttrListBean {
|
|
|
|
|
String id;
|
|
|
|
|
String createTime;
|
|
|
|
|
String createUser;
|
|
|
|
|
String updateTime;
|
|
|
|
|
String updateUser;
|
|
|
|
|
String skuId;
|
|
|
|
|
String attrId;
|
|
|
|
|
String attrValueId;
|
|
|
|
|
dynamic sortOrder;
|
|
|
|
|
int isDelete;
|
|
|
|
|
|
|
|
|
|
static SkuAttrListBean fromJson(Map<String, dynamic> map) {
|
|
|
|
|
if (map == null) return null;
|
|
|
|
|
SkuAttrListBean skuAttrListBean = SkuAttrListBean();
|
|
|
|
|
skuAttrListBean.id = map['id'];
|
|
|
|
|
skuAttrListBean.createTime = map['createTime'];
|
|
|
|
|
skuAttrListBean.createUser = map['createUser'];
|
|
|
|
|
skuAttrListBean.updateTime = map['updateTime'];
|
|
|
|
|
skuAttrListBean.updateUser = map['updateUser'];
|
|
|
|
|
skuAttrListBean.skuId = map['skuId'];
|
|
|
|
|
skuAttrListBean.attrId = map['attrId'];
|
|
|
|
|
skuAttrListBean.attrValueId = map['attrValueId'];
|
|
|
|
|
skuAttrListBean.sortOrder = map['sortOrder'];
|
|
|
|
|
skuAttrListBean.isDelete = map['isDelete'];
|
|
|
|
|
return skuAttrListBean;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map toJson() => {
|
|
|
|
|
"id": id,
|
|
|
|
|
"createTime": createTime,
|
|
|
|
|
"createUser": createUser,
|
|
|
|
|
"updateTime": updateTime,
|
|
|
|
|
"updateUser": updateUser,
|
|
|
|
|
"skuId": skuId,
|
|
|
|
|
"attrId": attrId,
|
|
|
|
|
"attrValueId": attrValueId,
|
|
|
|
|
"sortOrder": sortOrder,
|
|
|
|
|
"isDelete": isDelete,
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// groupName : "酒水选1"
|
|
|
|
|
/// totalNumber : 4
|
|
|
|
|
/// optionalNumber : 1
|
|
|
|
|
/// productInfoList : [{"productId":"1372091668961951744","productName":"白云边12年300ml","productImg":"https://pos.upload.gznl.top/MDAwMA==/2021/03/34cbd11d-402c-4278-b1e3-8d1d780a8ee5.jpg","allSku":true,"skuInfoList":[{"id":"1372091669003894784","skuName":"","productSkuAttrList":[{"id":"1372091669012283392","createTime":"2021-03-17 15:45:21","createUser":"1311123845502992384","updateTime":"2021-03-17 15:45:21","updateUser":"1311123845502992384","skuId":"1372091669003894784","attrId":"1372091668978728960","attrValueId":"1372091668987117568","sortOrder":null,"isDelete":0}]}],"productAttrInfoList":[{"attrId":"1372091668978728960","attrName":"","attrValueList":[{"attrId":"1372091668987117568","attrName":"","attrValueList":null}]}],"number":1},{"productId":"1372091974143705088","productName":"白云边9年250ml","productImg":"https://pos.upload.gznl.top/MDAwMA==/2021/03/333c5280-fe1f-4294-a334-0cf11b0ab7a6.jpg","allSku":true,"skuInfoList":[{"id":"1372091974194036736","skuName":"","productSkuAttrList":[{"id":"1372091974202425344","createTime":"2021-03-17 15:46:34","createUser":"1311123845502992384","updateTime":"2021-03-17 15:46:34","updateUser":"1311123845502992384","skuId":"1372091974194036736","attrId":"1372091974164676608","attrValueId":"1372091974173065216","sortOrder":null,"isDelete":0}]}],"productAttrInfoList":[{"attrId":"1372091974164676608","attrName":"","attrValueList":[{"attrId":"1372091974173065216","attrName":"","attrValueList":null}]}],"number":1},{"productId":"1372092276561412096","productName":"毛铺紫荞酒500ml","productImg":"https://pos.upload.gznl.top/MDAwMA==/2021/03/b8869284-ccb8-4c97-8ba7-88a140ac4b08.jpg","allSku":true,"skuInfoList":[{"id":"1372092276607549440","skuName":"","productSkuAttrList":[{"id":"1372092276615938048","createTime":"2021-03-17 15:47:46","createUser":"1311123845502992384","updateTime":"2021-03-17 15:47:46","updateUser":"1311123845502992384","skuId":"1372092276607549440","attrId":"1372092276582383616","attrValueId":"1372092276594966528","sortOrder":null,"isDelete":0}]}],"productAttrInfoList":[{"attrId":"1372092276582383616","attrName":"","attrValueList":[{"attrId":"1372092276594966528","attrName":"","attrValueList":null}]}],"number":1},{"productId":"1372092499190874112","productName":"毛铺苦荞酒500ml","productImg":"https://pos.upload.gznl.top/MDAwMA==/2021/03/f5a64d71-9b20-43d3-b992-89a5a270895b.jpg","allSku":true,"skuInfoList":[{"id":"1372092499237011456","skuName":"","productSkuAttrList":[{"id":"1372092499249594368","createTime":"2021-03-17 15:48:39","createUser":"1311123845502992384","updateTime":"2021-03-17 15:48:39","updateUser":"1311123845502992384","skuId":"1372092499237011456","attrId":"1372092499211845632","attrValueId":"1372092499224428544","sortOrder":null,"isDelete":0}]}],"productAttrInfoList":[{"attrId":"1372092499211845632","attrName":"","attrValueList":[{"attrId":"1372092499224428544","attrName":"","attrValueList":null}]}],"number":1}]
|
|
|
|
|
|
|
|
|
|
class ProductSetMeals {
|
|
|
|
|
ProductSetMeals({
|
|
|
|
|
String groupName,
|
|
|
|
|
int totalNumber,
|
|
|
|
|
int optionalNumber,
|
|
|
|
|
List<ProductInfoList> productInfoList,
|
|
|
|
|
}) {
|
|
|
|
|
_groupName = groupName;
|
|
|
|
|
_totalNumber = totalNumber;
|
|
|
|
|
_optionalNumber = optionalNumber;
|
|
|
|
|
_productInfoList = productInfoList;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ProductSetMeals.fromJson(dynamic json) {
|
|
|
|
|
_groupName = json['groupName'];
|
|
|
|
|
_totalNumber = json['totalNumber'];
|
|
|
|
|
_optionalNumber = json['optionalNumber'];
|
|
|
|
|
if (json['productInfoList'] != null) {
|
|
|
|
|
_productInfoList = [];
|
|
|
|
|
json['productInfoList'].forEach((v) {
|
|
|
|
|
_productInfoList.add(ProductInfoList.fromJson(v));
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
String _groupName;
|
|
|
|
|
int _totalNumber;
|
|
|
|
|
int _optionalNumber;
|
|
|
|
|
List<ProductInfoList> _productInfoList;
|
|
|
|
|
|
|
|
|
|
ProductSetMeals copyWith({
|
|
|
|
|
String groupName,
|
|
|
|
|
int totalNumber,
|
|
|
|
|
int optionalNumber,
|
|
|
|
|
List<ProductInfoList> productInfoList,
|
|
|
|
|
}) =>
|
|
|
|
|
ProductSetMeals(
|
|
|
|
|
groupName: groupName ?? _groupName,
|
|
|
|
|
totalNumber: totalNumber ?? _totalNumber,
|
|
|
|
|
optionalNumber: optionalNumber ?? _optionalNumber,
|
|
|
|
|
productInfoList: productInfoList ?? _productInfoList,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
String get groupName => _groupName;
|
|
|
|
|
|
|
|
|
|
int get totalNumber => _totalNumber;
|
|
|
|
|
|
|
|
|
|
int get optionalNumber => _optionalNumber;
|
|
|
|
|
|
|
|
|
|
List<ProductInfoList> get productInfoList => _productInfoList;
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final map = <String, dynamic>{};
|
|
|
|
|
map['groupName'] = _groupName;
|
|
|
|
|
map['totalNumber'] = _totalNumber;
|
|
|
|
|
map['optionalNumber'] = _optionalNumber;
|
|
|
|
|
if (_productInfoList != null) {
|
|
|
|
|
map['productInfoList'] = _productInfoList.map((v) => v.toJson()).toList();
|
|
|
|
|
}
|
|
|
|
|
return map;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// productId : "1372091668961951744"
|
|
|
|
|
/// productName : "白云边12年300ml"
|
|
|
|
|
/// productImg : "https://pos.upload.gznl.top/MDAwMA==/2021/03/34cbd11d-402c-4278-b1e3-8d1d780a8ee5.jpg"
|
|
|
|
|
/// allSku : true
|
|
|
|
|
/// skuInfoList : [{"id":"1372091669003894784","skuName":"","productSkuAttrList":[{"id":"1372091669012283392","createTime":"2021-03-17 15:45:21","createUser":"1311123845502992384","updateTime":"2021-03-17 15:45:21","updateUser":"1311123845502992384","skuId":"1372091669003894784","attrId":"1372091668978728960","attrValueId":"1372091668987117568","sortOrder":null,"isDelete":0}]}]
|
|
|
|
|
/// productAttrInfoList : [{"attrId":"1372091668978728960","attrName":"","attrValueList":[{"attrId":"1372091668987117568","attrName":"","attrValueList":null}]}]
|
|
|
|
|
/// number : 1
|
|
|
|
|
|
|
|
|
|
class ProductInfoList {
|
|
|
|
|
ProductInfoList({
|
|
|
|
|
String productId,
|
|
|
|
|
String productName,
|
|
|
|
|
String productImg,
|
|
|
|
|
bool allSku,
|
|
|
|
|
List<SkuInfoList> skuInfoList,
|
|
|
|
|
List<ProductAttrInfoList> productAttrInfoList,
|
|
|
|
|
int number,
|
|
|
|
|
}) {
|
|
|
|
|
_productId = productId;
|
|
|
|
|
_productName = productName;
|
|
|
|
|
_productImg = productImg;
|
|
|
|
|
_allSku = allSku;
|
|
|
|
|
_skuInfoList = skuInfoList;
|
|
|
|
|
_productAttrInfoList = productAttrInfoList;
|
|
|
|
|
_number = number;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ProductInfoList.fromJson(dynamic json) {
|
|
|
|
|
_productId = json['productId'];
|
|
|
|
|
_productName = json['productName'];
|
|
|
|
|
_productImg = json['productImg'];
|
|
|
|
|
_allSku = json['allSku'];
|
|
|
|
|
if (json['skuInfoList'] != null) {
|
|
|
|
|
_skuInfoList = [];
|
|
|
|
|
json['skuInfoList'].forEach((v) {
|
|
|
|
|
_skuInfoList.add(SkuInfoList.fromJson(v));
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
if (json['productAttrInfoList'] != null) {
|
|
|
|
|
_productAttrInfoList = [];
|
|
|
|
|
json['productAttrInfoList'].forEach((v) {
|
|
|
|
|
_productAttrInfoList.add(ProductAttrInfoList.fromJson(v));
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
_number = json['number'];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
String _productId;
|
|
|
|
|
String _productName;
|
|
|
|
|
String _productImg;
|
|
|
|
|
bool _allSku;
|
|
|
|
|
List<SkuInfoList> _skuInfoList;
|
|
|
|
|
List<ProductAttrInfoList> _productAttrInfoList;
|
|
|
|
|
int _number;
|
|
|
|
|
int _count = 0;
|
|
|
|
|
|
|
|
|
|
ProductInfoList copyWith({
|
|
|
|
|
String productId,
|
|
|
|
|
String productName,
|
|
|
|
|
String productImg,
|
|
|
|
|
bool allSku,
|
|
|
|
|
List<SkuInfoList> skuInfoList,
|
|
|
|
|
List<ProductAttrInfoList> productAttrInfoList,
|
|
|
|
|
int number,
|
|
|
|
|
}) =>
|
|
|
|
|
ProductInfoList(
|
|
|
|
|
productId: productId ?? _productId,
|
|
|
|
|
productName: productName ?? _productName,
|
|
|
|
|
productImg: productImg ?? _productImg,
|
|
|
|
|
allSku: allSku ?? _allSku,
|
|
|
|
|
skuInfoList: skuInfoList ?? _skuInfoList,
|
|
|
|
|
productAttrInfoList: productAttrInfoList ?? _productAttrInfoList,
|
|
|
|
|
number: number ?? _number,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
String get productId => _productId;
|
|
|
|
|
|
|
|
|
|
String get productName => _productName;
|
|
|
|
|
|
|
|
|
|
String get productImg => _productImg;
|
|
|
|
|
|
|
|
|
|
bool get allSku => _allSku;
|
|
|
|
|
|
|
|
|
|
List<SkuInfoList> get skuInfoList => _skuInfoList;
|
|
|
|
|
|
|
|
|
|
List<ProductAttrInfoList> get productAttrInfoList => _productAttrInfoList;
|
|
|
|
|
int number;
|
|
|
|
|
|
|
|
|
|
int get count => _count;
|
|
|
|
|
|
|
|
|
|
set count(int value) {
|
|
|
|
|
_count = value;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final map = <String, dynamic>{};
|
|
|
|
|
map['productId'] = _productId;
|
|
|
|
|
map['productName'] = _productName;
|
|
|
|
|
map['productImg'] = _productImg;
|
|
|
|
|
map['allSku'] = _allSku;
|
|
|
|
|
if (_skuInfoList != null) {
|
|
|
|
|
map['skuInfoList'] = _skuInfoList.map((v) => v.toJson()).toList();
|
|
|
|
|
}
|
|
|
|
|
if (_productAttrInfoList != null) {
|
|
|
|
|
map['productAttrInfoList'] =
|
|
|
|
|
_productAttrInfoList.map((v) => v.toJson()).toList();
|
|
|
|
|
}
|
|
|
|
|
map['number'] = _number;
|
|
|
|
|
return map;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// attrId : "1372091668978728960"
|
|
|
|
|
/// attrName : ""
|
|
|
|
|
/// attrValueList : [{"attrId":"1372091668987117568","attrName":"","attrValueList":null}]
|
|
|
|
|
|
|
|
|
|
class ProductAttrInfoList {
|
|
|
|
|
ProductAttrInfoList({
|
|
|
|
|
String attrId,
|
|
|
|
|
String attrName,
|
|
|
|
|
List<AttrValueList> attrValueList,
|
|
|
|
|
}) {
|
|
|
|
|
_attrId = attrId;
|
|
|
|
|
_attrName = attrName;
|
|
|
|
|
_attrValueList = attrValueList;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ProductAttrInfoList.fromJson(dynamic json) {
|
|
|
|
|
_attrId = json['attrId'];
|
|
|
|
|
_attrName = json['attrName'];
|
|
|
|
|
if (json['attrValueList'] != null) {
|
|
|
|
|
_attrValueList = [];
|
|
|
|
|
json['attrValueList'].forEach((v) {
|
|
|
|
|
_attrValueList.add(AttrValueList.fromJson(v));
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
String _attrId;
|
|
|
|
|
String _attrName;
|
|
|
|
|
List<AttrValueList> _attrValueList;
|
|
|
|
|
String _selectSku;
|
|
|
|
|
|
|
|
|
|
ProductAttrInfoList copyWith({
|
|
|
|
|
String attrId,
|
|
|
|
|
String attrName,
|
|
|
|
|
List<AttrValueList> attrValueList,
|
|
|
|
|
}) =>
|
|
|
|
|
ProductAttrInfoList(
|
|
|
|
|
attrId: attrId ?? _attrId,
|
|
|
|
|
attrName: attrName ?? _attrName,
|
|
|
|
|
attrValueList: attrValueList ?? _attrValueList,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
String get attrId => _attrId;
|
|
|
|
|
|
|
|
|
|
String get attrName => _attrName;
|
|
|
|
|
|
|
|
|
|
List<AttrValueList> get attrValueList => _attrValueList;
|
|
|
|
|
|
|
|
|
|
String get selectSku => _selectSku;
|
|
|
|
|
|
|
|
|
|
set selectSku(String value) {
|
|
|
|
|
_selectSku = value;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final map = <String, dynamic>{};
|
|
|
|
|
map['attrId'] = _attrId;
|
|
|
|
|
map['attrName'] = _attrName;
|
|
|
|
|
if (_attrValueList != null) {
|
|
|
|
|
map['attrValueList'] = _attrValueList.map((v) => v.toJson()).toList();
|
|
|
|
|
}
|
|
|
|
|
return map;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// attrId : "1372091668987117568"
|
|
|
|
|
/// attrName : ""
|
|
|
|
|
/// attrValueList : null
|
|
|
|
|
|
|
|
|
|
class AttrValueList {
|
|
|
|
|
AttrValueList({
|
|
|
|
|
String attrId,
|
|
|
|
|
String attrName,
|
|
|
|
|
dynamic attrValueList,
|
|
|
|
|
}) {
|
|
|
|
|
_attrId = attrId;
|
|
|
|
|
_attrName = attrName;
|
|
|
|
|
_attrValueList = attrValueList;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
AttrValueList.fromJson(dynamic json) {
|
|
|
|
|
_attrId = json['attrId'];
|
|
|
|
|
_attrName = json['attrName'];
|
|
|
|
|
_attrValueList = json['attrValueList'];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
String _attrId;
|
|
|
|
|
String _attrName;
|
|
|
|
|
dynamic _attrValueList;
|
|
|
|
|
|
|
|
|
|
AttrValueList copyWith({
|
|
|
|
|
String attrId,
|
|
|
|
|
String attrName,
|
|
|
|
|
dynamic attrValueList,
|
|
|
|
|
}) =>
|
|
|
|
|
AttrValueList(
|
|
|
|
|
attrId: attrId ?? _attrId,
|
|
|
|
|
attrName: attrName ?? _attrName,
|
|
|
|
|
attrValueList: attrValueList ?? _attrValueList,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
String get attrId => _attrId;
|
|
|
|
|
|
|
|
|
|
String get attrName => _attrName;
|
|
|
|
|
|
|
|
|
|
dynamic get attrValueList => _attrValueList;
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final map = <String, dynamic>{};
|
|
|
|
|
map['attrId'] = _attrId;
|
|
|
|
|
map['attrName'] = _attrName;
|
|
|
|
|
map['attrValueList'] = _attrValueList;
|
|
|
|
|
return map;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// id : "1372091669003894784"
|
|
|
|
|
/// skuName : ""
|
|
|
|
|
/// productSkuAttrList : [{"id":"1372091669012283392","createTime":"2021-03-17 15:45:21","createUser":"1311123845502992384","updateTime":"2021-03-17 15:45:21","updateUser":"1311123845502992384","skuId":"1372091669003894784","attrId":"1372091668978728960","attrValueId":"1372091668987117568","sortOrder":null,"isDelete":0}]
|
|
|
|
|
|
|
|
|
|
class SkuInfoList {
|
|
|
|
|
SkuInfoList({
|
|
|
|
|
String id,
|
|
|
|
|
String skuName,
|
|
|
|
|
List<ProductSkuAttrList> productSkuAttrList,
|
|
|
|
|
}) {
|
|
|
|
|
_id = id;
|
|
|
|
|
_skuName = skuName;
|
|
|
|
|
_productSkuAttrList = productSkuAttrList;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
SkuInfoList.fromJson(dynamic json) {
|
|
|
|
|
_id = json['id'];
|
|
|
|
|
_skuName = json['skuName'];
|
|
|
|
|
if (json['productSkuAttrList'] != null) {
|
|
|
|
|
_productSkuAttrList = [];
|
|
|
|
|
json['productSkuAttrList'].forEach((v) {
|
|
|
|
|
_productSkuAttrList.add(ProductSkuAttrList.fromJson(v));
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
String _id;
|
|
|
|
|
String _skuName;
|
|
|
|
|
bool _isSelected = false;
|
|
|
|
|
List<ProductSkuAttrList> _productSkuAttrList;
|
|
|
|
|
|
|
|
|
|
SkuInfoList copyWith({
|
|
|
|
|
String id,
|
|
|
|
|
String skuName,
|
|
|
|
|
List<ProductSkuAttrList> productSkuAttrList,
|
|
|
|
|
}) =>
|
|
|
|
|
SkuInfoList(
|
|
|
|
|
id: id ?? _id,
|
|
|
|
|
skuName: skuName ?? _skuName,
|
|
|
|
|
productSkuAttrList: productSkuAttrList ?? _productSkuAttrList,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
String get id => _id;
|
|
|
|
|
|
|
|
|
|
String get skuName => _skuName;
|
|
|
|
|
|
|
|
|
|
List<ProductSkuAttrList> get productSkuAttrList => _productSkuAttrList;
|
|
|
|
|
|
|
|
|
|
bool get isSelected => _isSelected;
|
|
|
|
|
|
|
|
|
|
set isSelected(bool value) {
|
|
|
|
|
_isSelected = value;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final map = <String, dynamic>{};
|
|
|
|
|
map['id'] = _id;
|
|
|
|
|
map['skuName'] = _skuName;
|
|
|
|
|
if (_productSkuAttrList != null) {
|
|
|
|
|
map['productSkuAttrList'] =
|
|
|
|
|
_productSkuAttrList.map((v) => v.toJson()).toList();
|
|
|
|
|
}
|
|
|
|
|
return map;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// id : "1372091669012283392"
|
|
|
|
|
/// createTime : "2021-03-17 15:45:21"
|
|
|
|
|
/// createUser : "1311123845502992384"
|
|
|
|
|
/// updateTime : "2021-03-17 15:45:21"
|
|
|
|
|
/// updateUser : "1311123845502992384"
|
|
|
|
|
/// skuId : "1372091669003894784"
|
|
|
|
|
/// attrId : "1372091668978728960"
|
|
|
|
|
/// attrValueId : "1372091668987117568"
|
|
|
|
|
/// sortOrder : null
|
|
|
|
|
/// isDelete : 0
|
|
|
|
|
|
|
|
|
|
class ProductSkuAttrList {
|
|
|
|
|
ProductSkuAttrList({
|
|
|
|
|
String id,
|
|
|
|
|
String createTime,
|
|
|
|
|
String createUser,
|
|
|
|
|
String updateTime,
|
|
|
|
|
String updateUser,
|
|
|
|
|
String skuId,
|
|
|
|
|
String attrId,
|
|
|
|
|
String attrValueId,
|
|
|
|
|
dynamic sortOrder,
|
|
|
|
|
int isDelete,
|
|
|
|
|
}) {
|
|
|
|
|
_id = id;
|
|
|
|
|
_createTime = createTime;
|
|
|
|
|
_createUser = createUser;
|
|
|
|
|
_updateTime = updateTime;
|
|
|
|
|
_updateUser = updateUser;
|
|
|
|
|
_skuId = skuId;
|
|
|
|
|
_attrId = attrId;
|
|
|
|
|
_attrValueId = attrValueId;
|
|
|
|
|
_sortOrder = sortOrder;
|
|
|
|
|
_isDelete = isDelete;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ProductSkuAttrList.fromJson(dynamic json) {
|
|
|
|
|
_id = json['id'];
|
|
|
|
|
_createTime = json['createTime'];
|
|
|
|
|
_createUser = json['createUser'];
|
|
|
|
|
_updateTime = json['updateTime'];
|
|
|
|
|
_updateUser = json['updateUser'];
|
|
|
|
|
_skuId = json['skuId'];
|
|
|
|
|
_attrId = json['attrId'];
|
|
|
|
|
_attrValueId = json['attrValueId'];
|
|
|
|
|
_sortOrder = json['sortOrder'];
|
|
|
|
|
_isDelete = json['isDelete'];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
String _id;
|
|
|
|
|
String _createTime;
|
|
|
|
|
String _createUser;
|
|
|
|
|
String _updateTime;
|
|
|
|
|
String _updateUser;
|
|
|
|
|
String _skuId;
|
|
|
|
|
String _attrId;
|
|
|
|
|
String _attrValueId;
|
|
|
|
|
dynamic _sortOrder;
|
|
|
|
|
int _isDelete;
|
|
|
|
|
|
|
|
|
|
ProductSkuAttrList copyWith({
|
|
|
|
|
String id,
|
|
|
|
|
String createTime,
|
|
|
|
|
String createUser,
|
|
|
|
|
String updateTime,
|
|
|
|
|
String updateUser,
|
|
|
|
|
String skuId,
|
|
|
|
|
String attrId,
|
|
|
|
|
String attrValueId,
|
|
|
|
|
dynamic sortOrder,
|
|
|
|
|
int isDelete,
|
|
|
|
|
}) =>
|
|
|
|
|
ProductSkuAttrList(
|
|
|
|
|
id: id ?? _id,
|
|
|
|
|
createTime: createTime ?? _createTime,
|
|
|
|
|
createUser: createUser ?? _createUser,
|
|
|
|
|
updateTime: updateTime ?? _updateTime,
|
|
|
|
|
updateUser: updateUser ?? _updateUser,
|
|
|
|
|
skuId: skuId ?? _skuId,
|
|
|
|
|
attrId: attrId ?? _attrId,
|
|
|
|
|
attrValueId: attrValueId ?? _attrValueId,
|
|
|
|
|
sortOrder: sortOrder ?? _sortOrder,
|
|
|
|
|
isDelete: isDelete ?? _isDelete,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
String get id => _id;
|
|
|
|
|
|
|
|
|
|
String get createTime => _createTime;
|
|
|
|
|
|
|
|
|
|
String get createUser => _createUser;
|
|
|
|
|
|
|
|
|
|
String get updateTime => _updateTime;
|
|
|
|
|
|
|
|
|
|
String get updateUser => _updateUser;
|
|
|
|
|
|
|
|
|
|
String get skuId => _skuId;
|
|
|
|
|
|
|
|
|
|
String get attrId => _attrId;
|
|
|
|
|
|
|
|
|
|
String get attrValueId => _attrValueId;
|
|
|
|
|
|
|
|
|
|
dynamic get sortOrder => _sortOrder;
|
|
|
|
|
|
|
|
|
|
int get isDelete => _isDelete;
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final map = <String, dynamic>{};
|
|
|
|
|
map['id'] = _id;
|
|
|
|
|
map['createTime'] = _createTime;
|
|
|
|
|
map['createUser'] = _createUser;
|
|
|
|
|
map['updateTime'] = _updateTime;
|
|
|
|
|
map['updateUser'] = _updateUser;
|
|
|
|
|
map['skuId'] = _skuId;
|
|
|
|
|
map['attrId'] = _attrId;
|
|
|
|
|
map['attrValueId'] = _attrValueId;
|
|
|
|
|
map['sortOrder'] = _sortOrder;
|
|
|
|
|
map['isDelete'] = _isDelete;
|
|
|
|
|
return map;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// productId : "1433994980233314304"
|
|
|
|
|
/// attrName : "<EFBFBD>¶<EFBFBD>"
|
|
|
|
|
/// sortOrder : null
|
|
|
|
|
/// needImg : false
|
|
|
|
|
/// isDelete : 0
|
|
|
|
|
/// attrCode : null
|
|
|
|
|
/// id : "1433994980644356096"
|
|
|
|
|
/// attrValueList : [{"id":"1434076666832879616","attrId":"1433994980644356096","attrValue":"ȥ<EFBFBD><EFBFBD>","attrValueImg":"","sortOrder":null,"isDelete":0,"attrValueCode":null},{"id":"1433994980849876992","attrId":"1433994980644356096","attrValue":"<EFBFBD>ٱ<EFBFBD>","attrValueImg":"","sortOrder":null,"isDelete":0,"attrValueCode":null},{"id":"1434076667034206208","attrId":"1433994980644356096","attrValue":"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>","attrValueImg":"","sortOrder":null,"isDelete":0,"attrValueCode":null}]
|
|
|
|
|
|
|
|
|
|
class AttrListBean {
|
|
|
|
|
String productId;
|
|
|
|
|
String attrName;
|
|
|
|
|
dynamic sortOrder;
|
|
|
|
|
bool needImg;
|
|
|
|
|
int isDelete;
|
|
|
|
|
dynamic attrCode;
|
|
|
|
|
String id;
|
|
|
|
|
List<AttrValueListBean> attrValueList;
|
|
|
|
|
|
|
|
|
|
static AttrListBean fromJson(Map<String, dynamic> map) {
|
|
|
|
|
if (map == null) return null;
|
|
|
|
|
AttrListBean attrListBean = AttrListBean();
|
|
|
|
|
attrListBean.productId = map['productId'];
|
|
|
|
|
attrListBean.attrName = map['attrName'];
|
|
|
|
|
attrListBean.sortOrder = map['sortOrder'];
|
|
|
|
|
attrListBean.needImg = map['needImg'];
|
|
|
|
|
attrListBean.isDelete = map['isDelete'];
|
|
|
|
|
attrListBean.attrCode = map['attrCode'];
|
|
|
|
|
attrListBean.id = map['id'];
|
|
|
|
|
attrListBean.attrValueList = []..addAll((map['attrValueList'] as List ?? [])
|
|
|
|
|
.map((o) => AttrValueListBean.fromJson(o)));
|
|
|
|
|
return attrListBean;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map toJson() => {
|
|
|
|
|
"productId": productId,
|
|
|
|
|
"attrName": attrName,
|
|
|
|
|
"sortOrder": sortOrder,
|
|
|
|
|
"needImg": needImg,
|
|
|
|
|
"isDelete": isDelete,
|
|
|
|
|
"attrCode": attrCode,
|
|
|
|
|
"id": id,
|
|
|
|
|
"attrValueList": attrValueList,
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// id : "1434076666832879616"
|
|
|
|
|
/// attrId : "1433994980644356096"
|
|
|
|
|
/// attrValue : "ȥ<EFBFBD><EFBFBD>"
|
|
|
|
|
/// attrValueImg : ""
|
|
|
|
|
/// sortOrder : null
|
|
|
|
|
/// isDelete : 0
|
|
|
|
|
/// attrValueCode : null
|
|
|
|
|
|
|
|
|
|
class AttrValueListBean {
|
|
|
|
|
String id;
|
|
|
|
|
String attrId;
|
|
|
|
|
String attrValue;
|
|
|
|
|
String attrValueImg;
|
|
|
|
|
dynamic sortOrder;
|
|
|
|
|
int isDelete;
|
|
|
|
|
dynamic attrValueCode;
|
|
|
|
|
bool isSelected;
|
|
|
|
|
|
|
|
|
|
static AttrValueListBean fromJson(Map<String, dynamic> map) {
|
|
|
|
|
if (map == null) return null;
|
|
|
|
|
AttrValueListBean attrValueListBean = AttrValueListBean();
|
|
|
|
|
attrValueListBean.id = map['id'];
|
|
|
|
|
attrValueListBean.attrId = map['attrId'];
|
|
|
|
|
attrValueListBean.attrValue = map['attrValue'];
|
|
|
|
|
attrValueListBean.attrValueImg = map['attrValueImg'];
|
|
|
|
|
attrValueListBean.sortOrder = map['sortOrder'];
|
|
|
|
|
attrValueListBean.isDelete = map['isDelete'];
|
|
|
|
|
attrValueListBean.attrValueCode = map['attrValueCode'];
|
|
|
|
|
return attrValueListBean;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map toJson() => {
|
|
|
|
|
"id": id,
|
|
|
|
|
"attrId": attrId,
|
|
|
|
|
"attrValue": attrValue,
|
|
|
|
|
"attrValueImg": attrValueImg,
|
|
|
|
|
"sortOrder": sortOrder,
|
|
|
|
|
"isDelete": isDelete,
|
|
|
|
|
"attrValueCode": attrValueCode,
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// id : "1333246101343436800"
|
|
|
|
|
/// storeName : "<EFBFBD><EFBFBD>Ͽ<EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>)"
|
|
|
|
|
/// nickName : ""
|
|
|
|
|
/// logo : "https://pos.upload.gznl.top/1175/2021/07/ae873881-b3ab-4332-b863-f3055b200e07.png"
|
|
|
|
|
/// productCount : 31
|
|
|
|
|
/// soldNum : 1518
|
|
|
|
|
|
|
|
|
|
class StoreDTOBean {
|
|
|
|
|
String id;
|
|
|
|
|
String storeName;
|
|
|
|
|
String nickName;
|
|
|
|
|
String logo;
|
|
|
|
|
dynamic productCount;
|
|
|
|
|
dynamic soldNum;
|
|
|
|
|
|
|
|
|
|
static StoreDTOBean fromJson(Map<String, dynamic> map) {
|
|
|
|
|
if (map == null) return null;
|
|
|
|
|
StoreDTOBean storeDTOBean = StoreDTOBean();
|
|
|
|
|
storeDTOBean.id = map['id'];
|
|
|
|
|
storeDTOBean.storeName = map['storeName'];
|
|
|
|
|
storeDTOBean.nickName = map['nickName'];
|
|
|
|
|
storeDTOBean.logo = map['logo'];
|
|
|
|
|
storeDTOBean.productCount = map['productCount'];
|
|
|
|
|
storeDTOBean.soldNum = map['soldNum'];
|
|
|
|
|
return storeDTOBean;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map toJson() => {
|
|
|
|
|
"id": id,
|
|
|
|
|
"storeName": storeName,
|
|
|
|
|
"nickName": nickName,
|
|
|
|
|
"logo": logo,
|
|
|
|
|
"productCount": productCount,
|
|
|
|
|
"soldNum": soldNum,
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// isEnableSubscribe : true
|
|
|
|
|
/// dayOrDate : 3
|
|
|
|
|
/// startAfterDays : null
|
|
|
|
|
/// daysValidate : null
|
|
|
|
|
/// subscribeStartTime : "2023-04-20 00:00:00"
|
|
|
|
|
/// subscribeEndTime : "2023-04-30 00:00:00"
|
|
|
|
|
/// stores : ["海峡姐妹","前进麦味","百年川椒","小吃街"]
|
|
|
|
|
|
|
|
|
|
class SubscribeParam {
|
|
|
|
|
SubscribeParam({
|
|
|
|
|
bool isEnableSubscribe,
|
|
|
|
|
num dayOrDate,
|
|
|
|
|
dynamic startAfterDays,
|
|
|
|
|
dynamic daysValidate,
|
|
|
|
|
String subscribeStartTime,
|
|
|
|
|
String subscribeEndTime,
|
|
|
|
|
List<String> stores,}) {
|
|
|
|
|
_isEnableSubscribe = isEnableSubscribe;
|
|
|
|
|
_dayOrDate = dayOrDate;
|
|
|
|
|
_startAfterDays = startAfterDays;
|
|
|
|
|
_daysValidate = daysValidate;
|
|
|
|
|
_subscribeStartTime = subscribeStartTime;
|
|
|
|
|
_subscribeEndTime = subscribeEndTime;
|
|
|
|
|
_stores = stores;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
SubscribeParam.fromJson(dynamic json) {
|
|
|
|
|
if(json == null)
|
|
|
|
|
return;
|
|
|
|
|
_isEnableSubscribe = json['isEnableSubscribe'];
|
|
|
|
|
_dayOrDate = json['dayOrDate'];
|
|
|
|
|
_startAfterDays = json['startAfterDays'];
|
|
|
|
|
_daysValidate = json['daysValidate'];
|
|
|
|
|
_subscribeStartTime = json['subscribeStartTime'];
|
|
|
|
|
_subscribeEndTime = json['subscribeEndTime'];
|
|
|
|
|
_stores = json['stores'] != null ? json['stores'].cast<String>() : [];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool _isEnableSubscribe;
|
|
|
|
|
num _dayOrDate;
|
|
|
|
|
dynamic _startAfterDays;
|
|
|
|
|
dynamic _daysValidate;
|
|
|
|
|
String _subscribeStartTime;
|
|
|
|
|
String _subscribeEndTime;
|
|
|
|
|
List<String> _stores;
|
|
|
|
|
|
|
|
|
|
SubscribeParam copyWith({ bool isEnableSubscribe,
|
|
|
|
|
num dayOrDate,
|
|
|
|
|
dynamic startAfterDays,
|
|
|
|
|
dynamic daysValidate,
|
|
|
|
|
String subscribeStartTime,
|
|
|
|
|
String subscribeEndTime,
|
|
|
|
|
List<String> stores,
|
|
|
|
|
}) =>
|
|
|
|
|
SubscribeParam(
|
|
|
|
|
isEnableSubscribe: isEnableSubscribe ?? _isEnableSubscribe,
|
|
|
|
|
dayOrDate: dayOrDate ?? _dayOrDate,
|
|
|
|
|
startAfterDays: startAfterDays ?? _startAfterDays,
|
|
|
|
|
daysValidate: daysValidate ?? _daysValidate,
|
|
|
|
|
subscribeStartTime: subscribeStartTime ?? _subscribeStartTime,
|
|
|
|
|
subscribeEndTime: subscribeEndTime ?? _subscribeEndTime,
|
|
|
|
|
stores: stores ?? _stores,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
bool get isEnableSubscribe => _isEnableSubscribe;
|
|
|
|
|
|
|
|
|
|
num get dayOrDate => _dayOrDate;
|
|
|
|
|
|
|
|
|
|
dynamic get startAfterDays => _startAfterDays;
|
|
|
|
|
|
|
|
|
|
dynamic get daysValidate => _daysValidate;
|
|
|
|
|
|
|
|
|
|
String get subscribeStartTime => _subscribeStartTime;
|
|
|
|
|
|
|
|
|
|
String get subscribeEndTime => _subscribeEndTime;
|
|
|
|
|
|
|
|
|
|
List<String> get stores => _stores;
|
|
|
|
|
|
|
|
|
|
Map<String, dynamic> toJson() {
|
|
|
|
|
final map = <String, dynamic>{};
|
|
|
|
|
map['isEnableSubscribe'] = _isEnableSubscribe;
|
|
|
|
|
map['dayOrDate'] = _dayOrDate;
|
|
|
|
|
map['startAfterDays'] = _startAfterDays;
|
|
|
|
|
map['daysValidate'] = _daysValidate;
|
|
|
|
|
map['subscribeStartTime'] = _subscribeStartTime;
|
|
|
|
|
map['subscribeEndTime'] = _subscribeEndTime;
|
|
|
|
|
map['stores'] = _stores;
|
|
|
|
|
return map;
|
|
|
|
|
}
|
|
|
|
|
}
|