Commit 8c012e06 authored by 刘俊宏's avatar 刘俊宏

完成商品分类数据对接(缺确定按钮)

parent d7a7aff6
......@@ -14,9 +14,12 @@ class GoodsClassModel: NSObject {
var isSelect : Bool? = false
var isCanExpand : Bool? = false
var isCanSelect : Bool? = false
var Level_Type : Int?
var name : String?
var cat_id : Int? //分类id
var cat_name : String? //分类名
var parent_id : Int? //分类上一级id,其值为 上一层级分类的"cat_id"
var parents_id : Int?
var sort_order : Int?
var level : Int? //分类层级,0为第一级
var modelS : Array<GoodsClassModel>? = []
var modelId : Int?
}
......@@ -18,57 +18,82 @@ class GoodsClassViewController: BaseViewController , UITableViewDelegate, UITabl
print("商品分类数据==\(dataModelArray)")
self.view.addSubview(navbar)
for i in 0..<5 {
//先分级
var levelArr_0 : Array<GeneralInfoCatsModel>? = []
var levelArr_1 : Array<GeneralInfoCatsModel>? = []
var levelArr_2 : Array<GeneralInfoCatsModel>? = []
dataModelArray?.forEach({ (model) in
if model.level == 0 {
levelArr_0?.append(model)
}else if model.level == 1 {
levelArr_1?.append(model)
}else if model.level == 2 {
levelArr_2?.append(model)
}
})
for i in 0..<levelArr_0!.count {
let dataModel_1 = levelArr_0![i]
//model_1
let model_1 = GoodsClassModel()
model_1.name = "第一级商品=\(i)"
model_1.cat_name = dataModel_1.cat_name
model_1.isExpand = false
model_1.isCanExpand = false
model_1.isCanSelect = false
model_1.isSelect = false
model_1.Level_Type = 0
model_1.modelId = i
if i != 1 {
model_1.isCanExpand = true
for j in 0..<3 {
model_1.level = dataModel_1.level
model_1.cat_id = dataModel_1.cat_id
levelArr_1?.forEach({ (dataModel_2) in
if dataModel_2.parent_id == model_1.cat_id {
model_1.isCanExpand = true
//model_2
let model_2 = GoodsClassModel()
model_2.name = "第二级商品=\(j)"
model_2.cat_name = dataModel_2.cat_name
model_2.isExpand = false
model_2.isCanExpand = false
model_2.isCanSelect = false
model_2.isSelect = false
model_2.Level_Type = 1
model_2.modelId = j
model_2.level = dataModel_2.level
model_2.cat_id = dataModel_2.cat_id
if j != 2 {
model_2.isCanExpand = true
for k in 0..<2 {
levelArr_2?.forEach({ (dataModel_3) in
if dataModel_3.parent_id == model_2.cat_id {
model_2.isCanExpand = true
//model_3
let model_3 = GoodsClassModel()
model_3.name = "第三级商品=\(k)"
model_3.cat_name = dataModel_3.cat_name
model_3.isExpand = false
model_3.isCanExpand = false
model_3.isCanSelect = true
model_3.isSelect = false
model_3.Level_Type = 2
model_3.modelId = k
model_3.level = dataModel_3.level
model_3.cat_id = dataModel_3.cat_id
//添加
model_2.modelS?.append(model_3)
}
}else{
})
if !model_2.isCanExpand! {
model_2.isCanSelect = true
}
model_1.modelS?.append(model_2)
}
}else{
}
})
if !model_1.isCanExpand! {
model_1.isCanSelect = true
}
var arrs:Array<Any> = []
arrs.append(model_1)
dataArr.append(arrs)
}
setTabv()
}
......@@ -105,9 +130,9 @@ class GoodsClassViewController: BaseViewController , UITableViewDelegate, UITabl
let arrs = dataArr[indexPath.section] as! Array<Any>
let rowModel = arrs[indexPath.row] as! GoodsClassModel
if rowModel.Level_Type == 1 {
if rowModel.level == 1 {
let cell = tableView.dequeueReusableCell(withIdentifier: "SecondCell") as! SecondCell
cell.nameLbl.text = rowModel.name
cell.nameLbl.text = rowModel.cat_name
if rowModel.isCanExpand! {
if rowModel.isExpand! {
cell.imgView.image = UIImage.init(named: "2")
......@@ -127,9 +152,9 @@ class GoodsClassViewController: BaseViewController , UITableViewDelegate, UITabl
}
return cell
}
if rowModel.Level_Type == 2 {
if rowModel.level == 2 {
let cell = tableView.dequeueReusableCell(withIdentifier: "ThirdCell") as! ThirdCell
cell.nameLbl.text = rowModel.name
cell.nameLbl.text = rowModel.cat_name
if rowModel.isSelect! {
cell.imgView.image = UIImage.init(named: "yuxuan")
cell.nameLbl.textColor = UIColor.init(named: "蓝色字体颜色")
......@@ -157,17 +182,16 @@ class GoodsClassViewController: BaseViewController , UITableViewDelegate, UITabl
cell.nameLbl.textColor = UIColor.init(named: "标题字颜色")
}
}
cell.nameLbl.text = rowModel.name
cell.nameLbl.text = rowModel.cat_name
return cell
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print(indexPath)
let arrs = dataArr[indexPath.section] as! Array<Any>
let rowModel = arrs[indexPath.row] as! GoodsClassModel
if rowModel.Level_Type != 2 && rowModel.isCanExpand!
if rowModel.level != 2 && rowModel.isCanExpand!
{
rowModel.isExpand = !rowModel.isExpand!
......@@ -177,6 +201,7 @@ class GoodsClassViewController: BaseViewController , UITableViewDelegate, UITabl
let reloadSet = IndexSet.init(arrayLiteral: indexPath.section)
tableV.reloadSections(reloadSet, with: .automatic)
}
}
//MARK:--展开或收起(利用数据)
......@@ -193,7 +218,7 @@ class GoodsClassViewController: BaseViewController , UITableViewDelegate, UITabl
dataArr.insert(arrs, at: section)
}else{
let lenght = ((model.Level_Type == 0) ? (arrs.count - 1):model.modelS?.count)!
let lenght = ((model.level == 0) ? (arrs.count - 1):model.modelS?.count)!
let startIndex = index! + 1
let lastIndex = startIndex + lenght
for i in (startIndex..<lastIndex).reversed() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment