Commit 2ec621ce authored by pete谢兆麟's avatar pete谢兆麟

文书下载

parent 8434f581
...@@ -13,6 +13,7 @@ class YHInvitationWithGiftsHeadView: UIView { ...@@ -13,6 +13,7 @@ class YHInvitationWithGiftsHeadView: UIView {
var bottomImageView: UIImageView! var bottomImageView: UIImageView!
var bgView: UIView! var bgView: UIView!
var marqueeLabel: UILabel! var marqueeLabel: UILabel!
var subMarqueeLabel: UILabel!
var timer: Timer? var timer: Timer?
var currentOffset: CGFloat = 0 var currentOffset: CGFloat = 0
...@@ -24,17 +25,31 @@ class YHInvitationWithGiftsHeadView: UIView { ...@@ -24,17 +25,31 @@ class YHInvitationWithGiftsHeadView: UIView {
} else { } else {
bgView.isHidden = false bgView.isHidden = false
var index = 0 var index = 0
var nextIndex = 1
if dataSource.count == 1 {
nextIndex = 0
}
let model = dataSource.first ?? YHShareCashOutModel() let model = dataSource.first ?? YHShareCashOutModel()
let nextModel = dataSource[nextIndex]
marqueeLabel.text = "\(model.mobile) 已提现 \(model.amount) 元" marqueeLabel.text = "\(model.mobile) 已提现 \(model.amount) 元"
subMarqueeLabel.text = "\(nextModel.mobile) 已提现 \(nextModel.amount) 元"
timer = Timer.scheduledTimer(withTimeInterval: 2.0, repeats: true) { [weak self] _ in timer = Timer.scheduledTimer(withTimeInterval: 2.0, repeats: true) { [weak self] _ in
index = index + 1 index = index + 1
UIView.animate(withDuration: 0.5) { UIView.animate(withDuration: 0.5) {
self?.marqueeLabel.frame.origin.y = -30 self?.marqueeLabel.frame.origin.y = -30
self?.subMarqueeLabel.frame.origin.y = 0
} completion: { flag in } completion: { flag in
let resultIndex = index % dataSource.count let resultIndex = index % dataSource.count
let nextIndex = (index + 1) % dataSource.count
let resultModel = dataSource[resultIndex] let resultModel = dataSource[resultIndex]
let nextModel = dataSource[nextIndex]
self?.marqueeLabel.text = "\(resultModel.mobile) 已提现 \(resultModel.amount) 元" self?.marqueeLabel.text = "\(resultModel.mobile) 已提现 \(resultModel.amount) 元"
self?.subMarqueeLabel.text = "\(nextModel.mobile) 已提现 \(nextModel.amount) 元"
self?.marqueeLabel.frame.origin.y = 0 self?.marqueeLabel.frame.origin.y = 0
self?.subMarqueeLabel.frame.origin.y = 30
} }
} }
} }
...@@ -104,6 +119,20 @@ class YHInvitationWithGiftsHeadView: UIView { ...@@ -104,6 +119,20 @@ class YHInvitationWithGiftsHeadView: UIView {
marqueeLabel.snp.makeConstraints { make in marqueeLabel.snp.makeConstraints { make in
make.left.right.top.bottom.equalToSuperview() make.left.right.top.bottom.equalToSuperview()
} }
subMarqueeLabel = {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 14)
label.textColor = .black
label.textAlignment = .center
return label
}()
bgView.addSubview(subMarqueeLabel)
subMarqueeLabel.snp.makeConstraints { make in
make.left.right.equalToSuperview()
make.top.equalTo(bgView.snp.bottom)
make.height.equalTo(30)
}
} }
deinit { deinit {
......
...@@ -137,6 +137,14 @@ extension YHLifeViewController: UITableViewDelegate, UITableViewDataSource { ...@@ -137,6 +137,14 @@ extension YHLifeViewController: UITableViewDelegate, UITableViewDataSource {
return UIView() return UIView()
} }
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let model = self.viewModel.detailModel.products[indexPath.row]
let vc = YHEvaluationViewVC()
// todo 谢
vc.url = YHBaseUrlManager.shared.curH5URL() + "articleDetail.html" + "?id=\(model.id)"
self.navigationController?.pushViewController(vc)
}
} }
extension YHLifeViewController: JXSegmentedListContainerViewListDelegate { extension YHLifeViewController: JXSegmentedListContainerViewListDelegate {
......
...@@ -27,6 +27,7 @@ class YHHomeLifeCategoryDetailModel: SmartCodable { ...@@ -27,6 +27,7 @@ class YHHomeLifeCategoryDetailModel: SmartCodable {
// MARK: - Product // MARK: - Product
class YHProductModel: SmartCodable { class YHProductModel: SmartCodable {
var id: String = ""
var name: String = "" var name: String = ""
var description: String = "" var description: String = ""
var image: String = "" var image: String = ""
......
...@@ -26,6 +26,8 @@ class YHMyDocumentsDetailViewController: YHBaseViewController { ...@@ -26,6 +26,8 @@ class YHMyDocumentsDetailViewController: YHBaseViewController {
var isAuth: Bool = true //小程序分享字段 var isAuth: Bool = true //小程序分享字段
var fileType: String = "sign" var fileType: String = "sign"
var orderID: Int = 0 var orderID: Int = 0
var isDocDownLoad: Bool = true
lazy var blackMaskView: UIView = { lazy var blackMaskView: UIView = {
let view = UIView(frame:UIScreen.main.bounds) let view = UIView(frame:UIScreen.main.bounds)
view.backgroundColor = UIColor(hex: 0x0F1214, alpha: 0.5) view.backgroundColor = UIColor(hex: 0x0F1214, alpha: 0.5)
...@@ -263,20 +265,38 @@ class YHMyDocumentsDetailViewController: YHBaseViewController { ...@@ -263,20 +265,38 @@ class YHMyDocumentsDetailViewController: YHBaseViewController {
YHCheckEamilAlertView.show(nil,text, "取消", "确认") { YHCheckEamilAlertView.show(nil,text, "取消", "确认") {
//进行 //进行
//发送接口 //发送接口
if let orderID = UserDefaults.standard.value(forKey: "orderIdForPreview") { if self.isDocDownLoad {
YHHUD.show(.progress(message: "发送中...")) if let orderID = UserDefaults.standard.value(forKey: "orderIdForPreview") {
let params = ["order_id":orderID,"ids":[self.viewModel.mainModel?.writing_document.doc_sign.id ?? 0],"email":text] YHHUD.show(.progress(message: "发送中..."))
self.viewModel?.sendEmailForDocs(params, callBackBlock: { success, error in let params = ["order_id":orderID,"supplement_id":self.viewModel.mainModel?.writing_document.supplement_id ?? 0,"email":text]
YHHUD.hide() self.viewModel?.sendEmailForDoc(params, callBackBlock: { success, error in
if success { YHHUD.hide()
YHHUD.flash(message: "已发送至邮箱") if success {
} else { YHHUD.flash(message: "已发送至邮箱")
let msg = error?.errorMsg ?? "发送失败" } else {
YHHUD.flash(message: msg) let msg = error?.errorMsg ?? "发送失败"
} YHHUD.flash(message: msg)
}) }
})
} else {
YHHUD.flash(message: "订单ID 为空")
}
} else { } else {
YHHUD.flash(message: "订单ID 为空") if let orderID = UserDefaults.standard.value(forKey: "orderIdForPreview") {
YHHUD.show(.progress(message: "发送中..."))
let params = ["order_id":orderID,"ids":[self.viewModel.mainModel?.writing_document.doc_sign.id ?? 0],"email":text]
self.viewModel?.sendEmailForDocs(params, callBackBlock: { success, error in
YHHUD.hide()
if success {
YHHUD.flash(message: "已发送至邮箱")
} else {
let msg = error?.errorMsg ?? "发送失败"
YHHUD.flash(message: msg)
}
})
} else {
YHHUD.flash(message: "订单ID 为空")
}
} }
} }
} }
...@@ -454,6 +474,39 @@ extension YHMyDocumentsDetailViewController: UITableViewDelegate, UITableViewDat ...@@ -454,6 +474,39 @@ extension YHMyDocumentsDetailViewController: UITableViewDelegate, UITableViewDat
} }
}) })
} }
if type == .downLoad {
let items = [YHCertificateEditItem(type:.sendEmail, title:"发送至邮箱"),
YHCertificateEditItem(type:.cancel, title:"取消")]
YHCertificateEditSheetView.sheetView(items:items,sheetTitle: "请选择下载方式") {
[weak self] editType in
guard let self = self else { return }
IQKeyboardManager.shared.enable = false
if editType == .sendEmail {
isDocDownLoad = true
emailInputView.textField.text = ""
emailInputView.textField.becomeFirstResponder()
}
}.show()
// YHHUD.show(.progress(message: ""))
// self.viewModel.requestDocumentsTemporaryUrl("\(id)", callBackBlock: {[weak self] success, error in
// YHHUD.hide()
// guard let self = self else { return }
// if success {
// self.viewModel.requestDocumentRecord("\(id)", 1) { success, error in
// }
// guard let url = URL(string: self.viewModel?.urlModel?.url) else { return }
// let tmpVC = SFSafariViewController(url: url)
// tmpVC.dismissButtonStyle = .close
// tmpVC.delegate = self
// tmpVC.modalPresentationStyle = .fullScreen
// present(tmpVC, animated: true, completion: nil)
// } else {
// YHHUD.flash(message: error?.errorMsg ?? "")
// }
// })
}
} }
return cell return cell
} else { } else {
...@@ -549,6 +602,7 @@ extension YHMyDocumentsDetailViewController: UITableViewDelegate, UITableViewDat ...@@ -549,6 +602,7 @@ extension YHMyDocumentsDetailViewController: UITableViewDelegate, UITableViewDat
IQKeyboardManager.shared.enable = false IQKeyboardManager.shared.enable = false
if editType == .sendEmail { if editType == .sendEmail {
isDocDownLoad = false
emailInputView.textField.text = "" emailInputView.textField.text = ""
emailInputView.textField.becomeFirstResponder() emailInputView.textField.becomeFirstResponder()
} }
......
...@@ -17,11 +17,14 @@ class YHDocumentMessageTableViewCell: UITableViewCell { ...@@ -17,11 +17,14 @@ class YHDocumentMessageTableViewCell: UITableViewCell {
var topLineView: UIView! var topLineView: UIView!
var bottomView: UIView! var bottomView: UIView!
var bottomCenterLineView: UIView! var bottomCenterLineView: UIView!
var bottomCenterLine1View: UIView!
var bottomCenterLine2View: UIView!
var fileImageView: UIImageView! var fileImageView: UIImageView!
var fileNameLabel: UILabel! var fileNameLabel: UILabel!
var editButton: UIButton! var editButton: UIButton!
var submitButton: UIButton! var submitButton: UIButton!
var lookButton: UIButton! var lookButton: UIButton!
var downLoadButton: UIButton!
var dataSource: YHMyDocumentDetailModel? { var dataSource: YHMyDocumentDetailModel? {
didSet { didSet {
updateAllViews() updateAllViews()
...@@ -51,6 +54,7 @@ class YHDocumentMessageTableViewCell: UITableViewCell { ...@@ -51,6 +54,7 @@ class YHDocumentMessageTableViewCell: UITableViewCell {
func setupUI() { func setupUI() {
backgroundColor = .clear backgroundColor = .clear
let width = self.width/3 - 1
centerView = { centerView = {
let view = UIView() let view = UIView()
view.backgroundColor = .white view.backgroundColor = .white
...@@ -135,6 +139,32 @@ class YHDocumentMessageTableViewCell: UITableViewCell { ...@@ -135,6 +139,32 @@ class YHDocumentMessageTableViewCell: UITableViewCell {
make.height.equalTo(16) make.height.equalTo(16)
} }
bottomCenterLine1View = {
let view = UIView()
view.backgroundColor = UIColor.separatorColor
return view
}()
centerView.addSubview(bottomCenterLine1View)
bottomCenterLine1View.snp.makeConstraints { make in
make.left.equalTo(width)
make.width.equalTo(1)
make.bottom.equalTo(-17.5)
make.height.equalTo(16)
}
bottomCenterLine2View = {
let view = UIView()
view.backgroundColor = UIColor.separatorColor
return view
}()
centerView.addSubview(bottomCenterLine2View)
bottomCenterLine2View.snp.makeConstraints { make in
make.right.equalTo(-width)
make.width.equalTo(1)
make.bottom.equalTo(-17.5)
make.height.equalTo(16)
}
editButton = { editButton = {
let button = UIButton(type: .custom) let button = UIButton(type: .custom)
button.setTitleColor(UIColor.brandMainColor, for: .normal) button.setTitleColor(UIColor.brandMainColor, for: .normal)
...@@ -147,7 +177,7 @@ class YHDocumentMessageTableViewCell: UITableViewCell { ...@@ -147,7 +177,7 @@ class YHDocumentMessageTableViewCell: UITableViewCell {
editButton.snp.makeConstraints { make in editButton.snp.makeConstraints { make in
make.left.bottom.equalToSuperview() make.left.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom) make.top.equalTo(bottomView.snp.bottom)
make.right.equalTo(bottomCenterLineView.snp.left) make.right.equalTo(bottomCenterLine1View.snp.left)
} }
submitButton = { submitButton = {
...@@ -160,9 +190,10 @@ class YHDocumentMessageTableViewCell: UITableViewCell { ...@@ -160,9 +190,10 @@ class YHDocumentMessageTableViewCell: UITableViewCell {
}() }()
centerView.addSubview(submitButton) centerView.addSubview(submitButton)
submitButton.snp.makeConstraints { make in submitButton.snp.makeConstraints { make in
make.right.bottom.equalToSuperview() make.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom) make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLineView.snp.right) make.left.equalTo(bottomCenterLine1View.snp.right)
make.right.equalTo(bottomCenterLine2View.snp.left)
} }
lookButton = { lookButton = {
...@@ -175,8 +206,24 @@ class YHDocumentMessageTableViewCell: UITableViewCell { ...@@ -175,8 +206,24 @@ class YHDocumentMessageTableViewCell: UITableViewCell {
}() }()
centerView.addSubview(lookButton) centerView.addSubview(lookButton)
lookButton.snp.makeConstraints { make in lookButton.snp.makeConstraints { make in
make.left.right.bottom.equalToSuperview() make.left.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom) make.top.equalTo(bottomView.snp.bottom)
make.right.equalTo(bottomCenterLineView.snp.left)
}
downLoadButton = {
let button = UIButton(type: .custom)
button.setTitleColor(UIColor.brandMainColor, for: .normal)
button.titleLabel?.font = UIFont.PFSC_R(ofSize: 14)
button.setTitle("下载", for: .normal)
button.addTarget(self, action: #selector(downLoadButtonClick), for: .touchUpInside)
return button
}()
centerView.addSubview(downLoadButton)
downLoadButton.snp.makeConstraints { make in
make.right.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLineView.snp.right)
} }
fileImageView = { fileImageView = {
...@@ -221,54 +268,112 @@ class YHDocumentMessageTableViewCell: UITableViewCell { ...@@ -221,54 +268,112 @@ class YHDocumentMessageTableViewCell: UITableViewCell {
lookButton.isHidden = true lookButton.isHidden = true
editButton.isHidden = false editButton.isHidden = false
submitButton.isHidden = false submitButton.isHidden = false
bottomCenterLineView.isHidden = true
bottomCenterLine1View.isHidden = false
bottomCenterLine2View.isHidden = false
downLoadButton.snp.remakeConstraints { make in
make.right.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLine2View.snp.right)
}
} else if status == 2 { } else if status == 2 {
statusTxt = " 待确认 " statusTxt = " 待确认 "
color = UIColor.brandMainColor color = UIColor.brandMainColor
lookButton.isHidden = true lookButton.isHidden = true
editButton.isHidden = false editButton.isHidden = false
submitButton.isHidden = false submitButton.isHidden = false
bottomCenterLineView.isHidden = true
bottomCenterLine1View.isHidden = false
bottomCenterLine2View.isHidden = false
downLoadButton.snp.remakeConstraints { make in
make.right.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLine2View.snp.right)
}
} else if status == 3 { } else if status == 3 {
statusTxt = " 已提交 " statusTxt = " 已提交 "
color = UIColor.warnColor color = UIColor.warnColor
lookButton.isHidden = false lookButton.isHidden = false
editButton.isHidden = true editButton.isHidden = true
submitButton.isHidden = true submitButton.isHidden = true
bottomCenterLineView.isHidden = true bottomCenterLineView.isHidden = false
bottomCenterLine1View.isHidden = true
bottomCenterLine2View.isHidden = true
downLoadButton.snp.remakeConstraints { make in
make.right.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLineView.snp.right)
}
} else if status == 4 { } else if status == 4 {
statusTxt = " 已提交 " statusTxt = " 已提交 "
color = UIColor.warnColor color = UIColor.warnColor
lookButton.isHidden = false lookButton.isHidden = false
editButton.isHidden = true editButton.isHidden = true
submitButton.isHidden = true submitButton.isHidden = true
bottomCenterLineView.isHidden = true bottomCenterLineView.isHidden = false
bottomCenterLine1View.isHidden = true
bottomCenterLine2View.isHidden = true
downLoadButton.snp.remakeConstraints { make in
make.right.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLineView.snp.right)
}
} else if status == 5 { } else if status == 5 {
statusTxt = " 已驳回 " statusTxt = " 已驳回 "
color = UIColor.successColor color = UIColor.successColor
lookButton.isHidden = false lookButton.isHidden = false
editButton.isHidden = true editButton.isHidden = true
submitButton.isHidden = true submitButton.isHidden = true
bottomCenterLineView.isHidden = true bottomCenterLineView.isHidden = false
bottomCenterLine1View.isHidden = true
bottomCenterLine2View.isHidden = true
downLoadButton.snp.remakeConstraints { make in
make.right.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLineView.snp.right)
}
} else if status == 6 { } else if status == 6 {
statusTxt = " 已定稿 " statusTxt = " 已定稿 "
color = UIColor.labelTextColor2 color = UIColor.labelTextColor2
lookButton.isHidden = false lookButton.isHidden = false
editButton.isHidden = true editButton.isHidden = true
submitButton.isHidden = true submitButton.isHidden = true
bottomCenterLineView.isHidden = true bottomCenterLineView.isHidden = false
bottomCenterLine1View.isHidden = true
bottomCenterLine2View.isHidden = true
downLoadButton.snp.remakeConstraints { make in
make.right.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLineView.snp.right)
}
} else if status == 7 { } else if status == 7 {
statusTxt = " 已完成 " statusTxt = " 已完成 "
color = UIColor.labelTextColor2 color = UIColor.labelTextColor2
lookButton.isHidden = false lookButton.isHidden = false
editButton.isHidden = true editButton.isHidden = true
submitButton.isHidden = true submitButton.isHidden = true
bottomCenterLineView.isHidden = true bottomCenterLineView.isHidden = false
bottomCenterLine1View.isHidden = true
bottomCenterLine2View.isHidden = true
downLoadButton.snp.remakeConstraints { make in
make.right.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLineView.snp.right)
}
} else { } else {
statusTxt = " -- " statusTxt = " -- "
color = UIColor.failColor color = UIColor.failColor
lookButton.isHidden = false lookButton.isHidden = false
editButton.isHidden = true editButton.isHidden = true
submitButton.isHidden = true submitButton.isHidden = true
bottomCenterLineView.isHidden = true bottomCenterLineView.isHidden = false
bottomCenterLine1View.isHidden = true
bottomCenterLine2View.isHidden = true
downLoadButton.snp.remakeConstraints { make in
make.right.bottom.equalToSuperview()
make.top.equalTo(bottomView.snp.bottom)
make.left.equalTo(bottomCenterLineView.snp.right)
}
} }
subTitleLabel.text = statusTxt subTitleLabel.text = statusTxt
...@@ -318,5 +423,11 @@ class YHDocumentMessageTableViewCell: UITableViewCell { ...@@ -318,5 +423,11 @@ class YHDocumentMessageTableViewCell: UITableViewCell {
block(.submit) block(.submit)
} }
} }
@objc func downLoadButtonClick() {
if let block = block {
block(.downLoad)
}
}
} }
...@@ -298,6 +298,25 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel { ...@@ -298,6 +298,25 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
} }
} }
func sendEmailForDoc(_ params : [String : Any], callBackBlock:@escaping (_ success: Bool, _ error: YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Signature.sendDocMail
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard self != nil else {
callBackBlock(false, nil)
return
}
if json.code == 200 {
callBackBlock(true, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
callBackBlock(false, error)
}
} failBlock: { err in
callBackBlock(false, err)
}
}
func requestSignBack(_ id: String, callBackBlock:@escaping (_ success: Bool, _ error: YHErrorModel?)->()) { func requestSignBack(_ id: String, callBackBlock:@escaping (_ success: Bool, _ error: YHErrorModel?)->()) {
// let params: [String : Any] = ["order_id": orderId] // let params: [String : Any] = ["order_id": orderId]
let params: [String : Any] = ["id": id] let params: [String : Any] = ["id": id]
......
...@@ -277,6 +277,7 @@ class YHAllApiName { ...@@ -277,6 +277,7 @@ class YHAllApiName {
static let download = "infoflow/sign/download" static let download = "infoflow/sign/download"
// 发送邮箱 // 发送邮箱
static let sendMail = "infoflow/sign/send_mail" static let sendMail = "infoflow/sign/send_mail"
static let sendDocMail = "infoflow/doc/send-mail"
// 提交签字 // 提交签字
static let confirm = "infoflow/my-sign/confirm" static let confirm = "infoflow/my-sign/confirm"
// 查看合同 // 查看合同
......
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