Commit d02e3f34 authored by Steven杜宇's avatar Steven杜宇

Merge branch 'develop' into duyu

parents c995226c 10f51c33
......@@ -50,8 +50,6 @@ class YHServiceCenterMainViewController: YHBaseViewController {
override func viewDidLoad() {
super.viewDidLoad()
setupUI()
loadData()
}
}
......@@ -156,6 +154,7 @@ extension YHServiceCenterMainViewController : UITableViewDelegate,UITableViewDat
tableView.deselectRow(at: indexPath, animated: true)
printLog("点击了 tableView Cell \(indexPath.row)")
let vc = YHServiceCenterSecondViewController()
vc.orderId = serviceCenterMainReqVM.arrContactList[indexPath.row].id
self.navigationController?.pushViewController(vc)
}
}
......@@ -10,13 +10,11 @@ import UIKit
//服务中心
class YHServiceCenterSecondViewController: YHBaseViewController {
// private let serviceCenterMainReqVM : YHServiceCenterMainViewModel = YHServiceCenterMainViewModel()
private var arrData : [YHContactMainItemStatusModel] = []
var orderId : Int?
private let serviceCenterMainReqVM : YHServiceCenterMainViewModel = YHServiceCenterMainViewModel()
private var unfoldFlag : Bool = true //是否展开
private lazy var downArrowImagev : UIImageView = {
let imagV = UIImageView(frame: CGRect(x: KScreenWidth - 16 - 32, y: 17, width: 24, height: 24))
let imagV = UIImageView(frame: CGRect(x: KScreenWidth - 16 - 32, y: 17, width: 16, height: 16))
imagV.image = UIImage(named: "service_center_down_arrow")
imagV.contentMode = .scaleAspectFill
return imagV
......@@ -50,12 +48,10 @@ class YHServiceCenterSecondViewController: YHBaseViewController {
extension YHServiceCenterSecondViewController {
func loadData() {
// self.serviceCenterMainReqVM.getContactList { success, error in
// if success == true {
//
// }
// self.homeTableView.reloadData()
// }
guard let orderId = orderId else { return}
self.serviceCenterMainReqVM.getContactStatus(params: ["orderId":orderId]) { success, error in
self.homeTableView.reloadData()
}
}
func setupUI() {
......@@ -63,13 +59,7 @@ extension YHServiceCenterSecondViewController {
gk_navBarAlpha = 1.0
gk_navLineHidden = false
let arr = [1,2,3]
for item in arr {
let model = YHContactMainItemStatusModel()
model.type = item
model.isFinished = false
arrData.append(model)
}
view.addSubview(topBkg)
topBkg.snp.makeConstraints { make in
......@@ -82,11 +72,9 @@ extension YHServiceCenterSecondViewController {
homeTableView.dataSource = self
view.addSubview(homeTableView)
homeTableView.snp.makeConstraints { make in
make.left.right.equalToSuperview()
make.top.equalTo(k_Height_NavigationtBarAndStatuBar)
make.bottom.equalToSuperview()
make.left.right.bottom.equalToSuperview()
}
}
@objc func clickUnfoldView() {
......@@ -112,24 +100,37 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if unfoldFlag == true {
return arrData.count
return self.serviceCenterMainReqVM.arrContactStausItmes.count
}
return 0
}
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 60
return 40
}
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let view = UIView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: 60))
let view = UIView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: 40))
view.backgroundColor = .clear
let lable = UILabel(frame: CGRect(x: 16, y: 0, width: 200, height: 60))
let lable = UILabel(frame: CGRect(x: 16, y: 0, width: 200, height: 40))
lable.text = "身份申请"
lable.font = kFont(size: 17)
lable.font = UIFont.PFSC_M(ofSize: 17)
lable.textColor = .mainTextColor
view.addSubview(lable)
view.addSubview(self.downArrowImagev)
lable.snp.makeConstraints { make in
make.top.bottom.equalToSuperview()
make.left.equalTo(kMargin)
}
view.addSubview(downArrowImagev)
downArrowImagev.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.right.equalTo(-kMargin)
make.width.height.equalTo(16)
}
let tap = UITapGestureRecognizer(target: self, action: #selector(clickUnfoldView))
view.addGestureRecognizer(tap)
......@@ -153,14 +154,18 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD
let newCell = tableView.dequeueReusableCell(withClass: YHContractMainItemStatusCell.self)
newCell.selectionStyle = .none
newCell.dataModel = arrData[indexPath.row]
newCell.dataModel = self.serviceCenterMainReqVM.arrContactStausItmes[indexPath.row]
return newCell
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView.deselectRow(at: indexPath, animated: true)
printLog("点击了 \(indexPath.section)section --- \(indexPath.row)row")
navigationController?.pushViewController(YHInformationPerfectListVC())
if indexPath.row == 0 {
navigationController?.pushViewController(YHInformationPerfectListVC())
} else if indexPath.row == 1 {
} else {
}
}
}
......@@ -10,7 +10,7 @@ import UIKit
import SmartCodable
struct YHContactItemModel : SmartCodable {
var id : String = ""
var id : Int = -1
var orderSn : String = ""
var username : String = ""
var productName : String = ""
......
......@@ -7,6 +7,7 @@
//
import UIKit
import SmartCodable
class YHContactMainItemStatusModel {
var type : Int = -1 {
......@@ -16,7 +17,7 @@ class YHContactMainItemStatusModel {
itemName = "信息完善"
} else if type == 2 {
iconName = "service_center_sfsq_zlsc_icon"
itemName = "资料上传"
itemName = "证件上传"
} else if type == 3 {
iconName = "service_center_sfsq_wdpf_icon"
itemName = "我的评分"
......@@ -24,7 +25,12 @@ class YHContactMainItemStatusModel {
}
}
var isFinished : Bool = false
var iconName : String = ""
var itemName : String = ""
}
struct YHContactMainItemStatusModel2 : SmartCodable {
var fill_info_step : Int = 0
}
......@@ -9,6 +9,7 @@
import UIKit
class YHSelectCountryViewController: YHBaseViewController {
public var backLocationStringController: ((String) -> Void)?
var searchView: UITextField!
var flagLabel: UILabel!
var tableView: UITableView!
......@@ -144,6 +145,16 @@ extension YHSelectCountryViewController: UITableViewDelegate, UITableViewDataSou
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 44
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let cn = searchDataSource?[indexPath.row].name_cn ?? ""
let en = searchDataSource?[indexPath.row].name_en ?? ""
let text = cn + en
if let backLocationStringController = backLocationStringController {
backLocationStringController(text)
self.navigationController?.popViewController()
}
}
}
extension YHSelectCountryViewController: UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout {
......@@ -163,6 +174,13 @@ extension YHSelectCountryViewController: UICollectionViewDelegate, UICollectionV
return CGSize(width: size.width + 25, height: 32) // 这里可以根据需求设置不同的尺寸
}
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let string = hotDataSource[indexPath.row]
if let backLocationStringController = backLocationStringController {
backLocationStringController(string)
self.navigationController?.popViewController()
}
}
}
class YHCountryCollectionViewCell: UICollectionViewCell {
......
......@@ -19,7 +19,43 @@ enum YHItemSelectType: Int {
case marry = 7
}
enum YHItemID: Int {
case id1 = 0 //国籍 国家
case id2 = 1 // 现居住地址 国家
case id3 = 2 // 现居住地址 省市区
case id4 = 3 // 现居住地址 详细地址
case id5 = 4 // 通行证 是否
case id6 = 5 // 中国身份证 上传
case id7 = 6 // 港澳通行证 上传
case id8 = 7 // 中国身份证 身份证号码
case id9 = 8 // 中国身份证 签发地
case id10 = 9 // 中国身份证 签发日期
case id11 = 10 // 中国身份证 届满日期
case id12 = 11 // 港澳通行证 身份证号码
case id13 = 12 // 港澳通行证 签发地
case id14 = 13 // 港澳通行证 签发日期
case id15 = 14 // 港澳通行证 届满日期
case id16 = 15 // 护照 类型
case id17 = 16 // 护照 身份证号码
case id18 = 17 // 护照 签发地
case id19 = 18 // 护照 签发日期
case id20 = 19 // 护照 届满日期
case id21 = 20 // 主申请人信息 姓名
case id22 = 21 // 主申请人信息 曾用名
case id23 = 22 // 主申请人信息 婚前姓氏
case id24 = 23 // 主申请人信息 出生日期
case id25 = 24 // 主申请人信息 出生国家/地区
case id26 = 25 // 主申请人信息 出生城市
case id27 = 26 // 主申请人信息 性别
case id28 = 27 // 主申请人信息 婚姻状况
case id29 = 28 // 主申请人信息 手机号码
case id30 = 29 // 主申请人信息 电子邮箱
case id31 = 30 // 主申请人信息 香港身份证是否办理过是/否
}
struct YHItemModel {
var id: YHItemID?
var isNeed: Bool?
var title: String?
var isUserKeyBoard: Bool?
......@@ -28,8 +64,10 @@ struct YHItemModel {
var leftButtonString: String?
var rightButtonString: String?
var type: YHItemSelectType?
var value: [String]?
init(isNeed: Bool? = nil, title: String? = nil, isUserKeyBoard: Bool? = nil, prompts: String? = nil, message: String? = nil, leftButtonString: String? = nil, rightButtonString: String? = nil, type: YHItemSelectType? = nil) {
init(id: YHItemID? = nil, isNeed: Bool? = nil, title: String? = nil, isUserKeyBoard: Bool? = nil, prompts: String? = nil, message: String? = nil, leftButtonString: String? = nil, rightButtonString: String? = nil, type: YHItemSelectType? = nil, value: [String]? = nil) {
self.id = id
self.isNeed = isNeed
self.title = title
self.isUserKeyBoard = isUserKeyBoard
......@@ -38,6 +76,7 @@ struct YHItemModel {
self.leftButtonString = leftButtonString
self.rightButtonString = rightButtonString
self.type = type
self.value = value
}
}
......
......@@ -123,7 +123,7 @@ class YHItemView: UIView {
if dataSource.isNeed ?? false {
let str = "*" + (dataSource.title ?? "")
let attributes: [NSAttributedString.Key: Any] = [
.font: kFont(size: 14),
.font: UIFont.PFSC_R(ofSize: 14),
.foregroundColor: UIColor(hex:0x222222)
]
let questionAttrStr = NSMutableAttributedString(string: str, attributes: attributes)
......@@ -155,9 +155,9 @@ class YHItemView: UIView {
nextStepImageView.isHidden = true
messageTextField.isHidden = true
if dataSource.message == "0" {
rightClick()
buttonState(isLeft: false)
} else {
leftClick()
buttonState(isLeft: true)
}
} else {
leftButton.isHidden = true
......@@ -173,6 +173,26 @@ class YHItemView: UIView {
}
}
func buttonState(isLeft: Bool) {
if isLeft {
leftButton.isSelected = true
rightButton.isSelected = false
leftButton.layer.borderWidth = 1
leftButton.layer.borderColor = UIColor(hex: 0x4487f9).cgColor
leftButton.backgroundColor = UIColor(hex: 0x4487f9).withAlphaComponent(0.08)
rightButton.backgroundColor = UIColor(hex: 0xf8f9fb)
rightButton.layer.borderWidth = 0
} else {
rightButton.isSelected = true
leftButton.isSelected = false
rightButton.layer.borderWidth = 1
rightButton.layer.borderColor = UIColor(hex: 0x4487f9).cgColor
rightButton.backgroundColor = UIColor(hex: 0x4487f9).withAlphaComponent(0.08)
leftButton.backgroundColor = UIColor(hex: 0xf8f9fb)
leftButton.layer.borderWidth = 0
}
}
@objc func rightClick() {
rightButton.isSelected = true
leftButton.isSelected = false
......@@ -182,6 +202,10 @@ class YHItemView: UIView {
leftButton.backgroundColor = UIColor(hex: 0xf8f9fb)
leftButton.layer.borderWidth = 0
dataSource?.message = "0"
dataSource?.value = ["0"]
if let block = block {
block(dataSource ?? YHItemModel())
}
}
@objc func leftClick() {
......@@ -193,10 +217,66 @@ class YHItemView: UIView {
rightButton.backgroundColor = UIColor(hex: 0xf8f9fb)
rightButton.layer.borderWidth = 0
dataSource?.message = "1"
dataSource?.value = ["1"]
if let block = block {
block(dataSource ?? YHItemModel())
}
}
@objc func centerClick() {
guard let type = dataSource?.type else { return }
switch type {
case .normal:
printLog("不需要跳转")
case .address:
let addressPicker = YHAddressViewController( selectProvince: "上海市", selectCity: "" )
addressPicker.backLocationStringController = { (address,province,city,area) in
self.dataSource?.message = address
self.dataSource?.value = [province, city, area]
self.updateAllViews()
}
UIViewController.current?.present(addressPicker, animated: true, completion: nil)
case .time:
YHDatePickView.show(type: .yyyymmdd) { date in
// let arr = date.components(separatedBy: YHDatePickView.separator)
// [yyyy, mm, dd] eg ["2024", "01", "20"]
self.dataSource?.message = date
self.updateAllViews()
}
case .image:
let view = YHImagePickerView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: KScreenHeight))
view.backImage = { [weak self] image in
guard let self = self else { return }
self.updateAllViews()
}
let window = UIApplication.shared.yhKeyWindow()
window?.addSubview(view)
case .id:
YHFormPickerView.show(type: .certificate, selectTitle: "公务通行证") { selectType in
// 选择类型的标题
self.dataSource?.message = selectType.title
self.updateAllViews()
}
case .country:
let vc = YHSelectCountryViewController()
vc.backLocationStringController = { (country) in
self.dataSource?.message = country
self.updateAllViews()
}
UIViewController.current?.navigationController?.pushViewController(vc)
case .sex:
YHFormPickerView.show(type: .gender, selectType: .gender(.female)) { selectType in
// 选择类型的标题
self.dataSource?.message = selectType.title
self.updateAllViews()
}
case .marry:
YHFormPickerView.show(type: .marriage, selectType: .marriage(.divorced)) { selectType in
// 选择类型的标题
self.dataSource?.message = selectType.title
self.updateAllViews()
}
}
}
}
......
......@@ -55,19 +55,12 @@ class YHContractMainItemStatusCell: UITableViewCell {
private lazy var goUnfinishHoldView : UIView = {
let view = UIView()
view.layer.cornerRadius = 6
view.layer.cornerRadius = kCornerRadius6
view.clipsToBounds = true
let gradientLayer = CAGradientLayer()
gradientLayer.frame = bounds
gradientLayer.colors = UIColor.arrBrandGradaterColors
gradientLayer.locations = [0,1].map { NSNumber(value: $0) }
gradientLayer.startPoint = CGPoint(x: 0.12, y: 0.25)
gradientLayer.endPoint = CGPoint(x: 0.38, y: 0.25)
view.layer.addSublayer(gradientLayer)
let lable = UILabel()
lable.font = kFont(size: 14)
lable.font = UIFont.PFSC_M(ofSize: 13)
lable.text = "去完善"
lable.textAlignment = .center
lable.textColor = .white
......@@ -99,7 +92,7 @@ extension YHContractMainItemStatusCell {
func setupUI() {
let holdView = UIView()
holdView.backgroundColor = .white
holdView.layer.cornerRadius = 12
holdView.layer.cornerRadius = kCornerRadius6
holdView.clipsToBounds = true
backgroundColor = .clear
......@@ -107,10 +100,10 @@ extension YHContractMainItemStatusCell {
contentView.addSubview(holdView)
holdView.snp.makeConstraints { make in
make.top.equalToSuperview().offset(16)
make.top.equalToSuperview().offset(kMargin)
make.bottom.equalToSuperview()
make.left.equalTo(16)
make.right.equalTo(-16)
make.left.equalTo(kMargin)
make.right.equalTo(-kMargin)
}
holdView.addSubview(iconImageV)
......@@ -133,17 +126,20 @@ extension YHContractMainItemStatusCell {
holdView.addSubview(goUnfinishHoldView)
goUnfinishHoldView.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.right.equalTo(-16)
make.right.equalTo(-kMargin)
make.height.equalTo(34)
make.width.equalTo(76)
}
goUnfinishHoldView.layoutIfNeeded()
goUnfinishHoldView.addYinHeGradualLayer()
gofinishHoldView.isHidden = true
holdView.addSubview(gofinishHoldView)
gofinishHoldView.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.right.equalTo(-16)
make.right.equalTo(-kMargin)
make.width.equalTo(82)
}
......@@ -160,8 +156,8 @@ extension YHContractMainItemStatusCell {
let statusLable = UILabel(text: "已完成")
statusLable.textAlignment = .center
statusLable.font = kFont(name: "PingFang SC", size: 14)
statusLable.textColor = .black
statusLable.font = UIFont.PFSC_M(ofSize: 14)
statusLable.textColor = UIColor.mainTextColor
gofinishHoldView.addSubview(statusLable)
statusLable.snp.makeConstraints { make in
make.centerY.equalToSuperview()
......
......@@ -39,8 +39,8 @@ class YHLoginTipsView: UIView {
private lazy var tipsLab : UILabel = {
let lable = UILabel()
lable.textColor = UIColor(red: 0.533, green: 0.561, blue: 0.596, alpha: 1)
lable.font = kFont(size: 14)
lable.textColor = UIColor.labelTextColor2
lable.font = UIFont.PFSC_R(ofSize: 14)
lable.textAlignment = .center
lable.text = "登录后可以查看"
return lable
......@@ -49,10 +49,10 @@ class YHLoginTipsView: UIView {
private lazy var loginBtn : UIButton = {
let btn = UIButton(type: .custom)
btn.setTitle("去登录", for: .normal)
btn.setBackgroundImage(UIImage.from(color: UIColor(hex: 0x4D9FF8, alpha: 1.0), rect: CGRect(x: 0, y: 0, width: 10, height: 10)), for: .normal)
btn.layer.cornerRadius = 8
btn.layer.cornerRadius = kCornerRadius6
btn.clipsToBounds = true
btn.titleLabel?.font = kFont(size: 12)
btn.titleLabel?.font = UIFont.PFSC_M(ofSize: 12)
btn.setTitleColor(.white, for: .normal)
return btn
}()
......@@ -61,7 +61,6 @@ class YHLoginTipsView: UIView {
initView()
}
private func initView() {
addSubview(iconImgV)
iconImgV.snp.makeConstraints { make in
......@@ -88,6 +87,8 @@ class YHLoginTipsView: UIView {
}
loginBtn.addTarget(self, action: #selector(clickLoginBtn), for: .touchUpInside)
loginBtn.layoutIfNeeded()
loginBtn.backgroundGradient()
}
required init?(coder: NSCoder) {
......
......@@ -14,6 +14,9 @@ class YHServiceCenterMainViewModel: YHBaseViewModel {
//评分相关的 本地数据
var localScoreData : YHScoreDataModel?
//合同对应的状态
var arrContactStausItmes: [YHContactMainItemStatusModel] = []
}
//请求接口
......@@ -43,6 +46,62 @@ extension YHServiceCenterMainViewModel {
callBackBlock(false,err)
}
}
//请求合同的状态
func getContactStatus( params:[String : Any],callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Order.contractStatusApi
let _ = YHNetRequest.getRequest(url: strUrl,params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
guard let model = NetBaseModel.deserialize(dict: json) else {
let error : YHErrorModel = YHErrorModel(errorCode:YHErrorCode.dictParseError.rawValue,errorMsg: YHErrorCode.dictParseError.description())
callBackBlock(false,error)
return
}
printLog("model 是 ==> \(model)")
let dic = model.data?.peel
guard let resultModel = YHContactMainItemStatusModel2.deserialize(dict: dic as? [AnyHashable : Any]) else {
self.arrContactStausItmes = []
callBackBlock(false,nil)
return
}
if resultModel.fill_info_step > 6 {
let model = YHContactMainItemStatusModel()
model.type = 1
model.isFinished = true
arrContactStausItmes.append(model)
let model2 = YHContactMainItemStatusModel()
model2.type = 2
model2.isFinished = false
arrContactStausItmes.append(model2)
let model3 = YHContactMainItemStatusModel()
model3.type = 3
model3.isFinished = false
arrContactStausItmes.append(model3)
} else {
let model = YHContactMainItemStatusModel()
model.type = 1
model.isFinished = false
arrContactStausItmes.append(model)
let model2 = YHContactMainItemStatusModel()
model2.type = 2
model2.isFinished = false
arrContactStausItmes.append(model2)
}
callBackBlock(true,nil)
} failBlock: { err in
self.arrContactStausItmes = []
callBackBlock(false,err)
}
}
}
//其他方法
......
......@@ -19,6 +19,7 @@ extension UIView {
gradientLayer.startPoint = CGPoint(x: 0.12, y: 0.25)
gradientLayer.endPoint = CGPoint(x: 0.38, y: 0.25)
gradientLayer.frame = bounds
gradientLayer.zPosition = -1
layer.addSublayer(gradientLayer)
}
......
......@@ -20,6 +20,10 @@ class YHAllApiName {
struct Order {
//合同列表
static let contractListApi = "frontend/order/list"
//合同填写进度
static let contractStatusApi = "frontend/order/progress"
// 获取家庭成员信息 添加家庭成员也用这个
static let familyInfoApi = "frontend/order/information/family"
// 删除家庭成员信息
......
......@@ -94,7 +94,6 @@ class YHNetRequest: NSObject {
requestHeader.add(name:"sign",value:sign)
requestHeader.add(name: "token", value: "eyJpdiI6InkrcVNJK2tyMDMzekZOcHE1NklOUUE9PSIsInZhbHVlIjoiRTNMY0VoM2p1b2JvMVoxY28wa2RCRWtMdzA3N1BIaUhqN2F5d3Y5VXp6KzhlNHpTMzdWODlJckNaeUczZkNNamZDbWY0U1c2VGJJOVVBeVpDWUVqV29ISzRkNzh3d2ZZbDFKMk9vN3pRR0g4ZUlXTTliWTNoUzdyNHpQNGtKU1Z3YzMzTnRUMERPQXcwTmpEcXQzSU5qRWt6MlhMWXVEUDB5THNwTWMzZTE1cEtUOUFpXC9xTlB4UFBmeXJ6cHhnNkR6TktFK3hhejJ0OG82cWFGRG5hMkN1dU1zblwvRk8xSEhXTno4Z3Z1WjExYXRHNE1zZXo4Yzh5cW1WSjlNVnBJU1dFOUFYbDBIXC83Q1BtZ3dhK2REa3NFQjI1ODZJalY3U1c0WHM5aG0xSDNzUjJcL0ZPVEhqR1lRTFI3UjBJRVFcL0NRZVlrbWZ4eGJvNUxtZDNJNUdGME45WkwzN1Byc1U5MTdod3RNMFc3TEt5cVNha211aEN6V0g4eFo4YStOYVFYdXhYaTJ6RFN0bTRkb1U3NUV1ZG01XC9UM3pMdlhRSm1VNUpcL0ZwMnpXdkR5XC9hTDJrVW9pamxYRTROOENRSTRsUlVJQ1lGR1phSmJZVVVEK1R6NTZLbkN4WlA5REJhbzN5Qzc4bEE3OTEyTDBJSmZic2dKSkpPWXpaOVF0T1NId05GdGVCYnNBNXVmOWt6MG9GUjRHcEFKVWVJSG1QXC8rTElxZGFTUERlQjdDS1FzUVI2VHJSYXVlZWZ3ZUlVK28rM1VaeGhPXC9OVWFoU0lqUHFkRWdiSG8wcUlcL2IyNWVZUzZ2ZE93ZmZkQXFYXC9CSHJNU0VcL1RPb2RYWW1OVnFhd251UFhjTnI3b2lraVJWcG16SkxRdjFnc1BlaHVTSEdpSTlUMmlBTjF5eFgyb09GSzR6UUdmRHlMZFZNT3JTNmowWGdYNVR5WFM5TnVVNTVYdHduWnV0ZTVNUGNHNngyVGNtK0Q3YTN0ekVZb1E3UFBJd2hmblJEdmZLdk5nUExmaWJJU2hWRVBmdHMzRUM0SW1hTnNSRWt6VWY5NDhodUJJelZvSDNHbjBJMitvb2ZKNGVKMW05SjQ4QVcyTGVtY1JDK2doWE52Kzh6K2xqMVpMWXgxT1NUWUo0UWdocktxbFBxMGx1S0RlbXlJalwvNkhRWUV5dktRcGoxZ3MzT1NWWDN5TGpJQ0hlb1Jta05zdmRpTmdWOXNBYXJidVFnTTlSRG4wUjhEMXg3WWdXUkZSM0JiTlNVaDlBYjZEVFBxdm1lZkw4UGpjRXJMSlVQRFwvNG5zYmp3cVc4emd5bmI4VGU4dW1kS3RhdHhpMGY3NzVKRnVBVjhoVjBHc2VhRmZpS3V4aEdZZFpob3NcLzR1MHpCOUp4ZE92NkZoYU8xc3JuMVdQQjl0QmdoOENCVHZneG1xVFJ1eHVOSVIzN2xnNEVNZ01yeFhzMitESVM0QzdVTmJiUmNkaW1XS2VuR3lqclJNRWk4WmNjK0FyZXh2Qldxd25EU1h1MHE4WElPMnZtSVhQNHBYV1l4QXlKV0dBaUlGem5aMUFGNDFBTmgrMHNIeFVSTWtKUERxQkJvOFJ1anI1SGJZd2hJM1NWbFJnMXdSTUJKMytKeThucDlERVBrK3lkVUVnY1diRkRRXC90aEl2OCtyTFVaQjZcLzlnN01TaXcrVlF0TFVFdGNLbitrVU1WZnlobkVuQXZYSCtqc083cUNXYlRjS21sVDd4ak5FMDlMM05WeHMya3FBblYyVXRNSjI4MklXSmdaUnZqdGxOWTZXS1ZYNXpobTlPWGN0alwvODhoVzM4OEJDeDl3WmZrcGREYnJwbUVRaWdXb2dzMnVcL1ZEYXVxUUtjR1I2WjJuVHNidmlZUHBqREg3bmcyalB2QWdBdz09IiwibWFjIjoiYWYyZTgyMWJkZmUxYzUxOThmYjBiYTI3ZGRhNTk3NWU2NTBlODgzMjZjYmExYzEzZDEwZDA4NGU5YmUzNmIwNiJ9")
headers = requestHeader
}
......
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "箭头@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "箭头@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "down-arrow.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "down-arrow@2x.png",
"filename" : "icon-展开@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "down-arrow@3x.png",
"filename" : "icon-展开@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
......
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