宽窄优行-由【嘉易行】项目成品而来
无故事王国
2023-05-24 b57da2ad2fa51029fb47f10b9e96ac8e87d7c983
新增修改
9个文件已修改
4个文件已添加
689 ■■■■■ 已修改文件
OKProject.xcodeproj/project.pbxproj 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/API/API.swift 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/Home/Controller/LineOfCreditDetailVC.swift 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/Home/Controller/LineOfCreditDetailVC.xib 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/Home/Controller/LinesOfCreditListVC.swift 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/Home/View/LineOfCredictTCell.swift 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/Home/View/RejectReasonView.swift 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/Home/View/RejectReasonView.xib 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/Home/ViewModel/EnterpriseViewModel.swift 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/LeftMenu/Controller/MineBusinessCreditDetailVC.swift 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/LeftMenu/Controller/MineBusinessCreditDetailVC.xib 196 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/LeftMenu/Controller/MineBusinessCreditVC.swift 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject/Class/LeftMenu/Controller/MineCreditApplyVC.swift 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
OKProject.xcodeproj/project.pbxproj
@@ -7,6 +7,10 @@
    objects = {
/* Begin PBXBuildFile section */
        130206582A1DEC5A00A06489 /* RejectReasonView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 130206572A1DEC5A00A06489 /* RejectReasonView.swift */; };
        1302065A2A1DEC6500A06489 /* RejectReasonView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 130206592A1DEC6500A06489 /* RejectReasonView.xib */; };
        1302065D2A1E00B300A06489 /* MineBusinessCreditDetailVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1302065B2A1E00B300A06489 /* MineBusinessCreditDetailVC.swift */; };
        1302065E2A1E00B300A06489 /* MineBusinessCreditDetailVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1302065C2A1E00B300A06489 /* MineBusinessCreditDetailVC.xib */; };
        130B330227BA2AF0001FC50A /* MerchantVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 130B330127BA2AF0001FC50A /* MerchantVC.swift */; };
        130B330427BA2DA4001FC50A /* MerchantListVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 130B330327BA2DA4001FC50A /* MerchantListVC.swift */; };
        130B330727BA2E4B001FC50A /* MerchantCouponTCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 130B330527BA2E4B001FC50A /* MerchantCouponTCell.swift */; };
@@ -675,6 +679,10 @@
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
        130206572A1DEC5A00A06489 /* RejectReasonView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RejectReasonView.swift; sourceTree = "<group>"; };
        130206592A1DEC6500A06489 /* RejectReasonView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RejectReasonView.xib; sourceTree = "<group>"; };
        1302065B2A1E00B300A06489 /* MineBusinessCreditDetailVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineBusinessCreditDetailVC.swift; sourceTree = "<group>"; };
        1302065C2A1E00B300A06489 /* MineBusinessCreditDetailVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineBusinessCreditDetailVC.xib; sourceTree = "<group>"; };
        130B330127BA2AF0001FC50A /* MerchantVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MerchantVC.swift; sourceTree = "<group>"; };
        130B330327BA2DA4001FC50A /* MerchantListVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MerchantListVC.swift; sourceTree = "<group>"; };
        130B330527BA2E4B001FC50A /* MerchantCouponTCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MerchantCouponTCell.swift; sourceTree = "<group>"; };
@@ -1787,6 +1795,8 @@
                138987E729E930D900ED0EAC /* Reason_Content_TCell.xib */,
                13B75D9429F0DCC400C57B59 /* OfficialCharterPassengerTCell.swift */,
                13B75D9529F0DCC400C57B59 /* OfficialCharterPassengerTCell.xib */,
                130206572A1DEC5A00A06489 /* RejectReasonView.swift */,
                130206592A1DEC6500A06489 /* RejectReasonView.xib */,
            );
            path = View;
            sourceTree = "<group>";
@@ -2156,6 +2166,8 @@
                13D9AAAC29E4F2110019467D /* MineCreditApplyVC.xib */,
                13F6D5A229E50051003FDF28 /* MineBusinessCreditVC.swift */,
                13F6D5A329E50051003FDF28 /* MineBusinessCreditVC.xib */,
                1302065B2A1E00B300A06489 /* MineBusinessCreditDetailVC.swift */,
                1302065C2A1E00B300A06489 /* MineBusinessCreditDetailVC.xib */,
            );
            path = Controller;
            sourceTree = "<group>";
@@ -3189,6 +3201,7 @@
                D9119FAF247E4F8C004FD68D /* AgreementView.xib in Resources */,
                F39670C2252C70FF00E570E6 /* TravelCityCell.xib in Resources */,
                138A357C2829FCA1000F95F7 /* CarMoreListView.xib in Resources */,
                1302065E2A1E00B300A06489 /* MineBusinessCreditDetailVC.xib in Resources */,
                D927C45F2490CEB1002BB108 /* TravelCouponsCell.xib in Resources */,
                D9582EB82491C4A7005F2142 /* DriverInfoVC.xib in Resources */,
                F3BD2090252DB1E60058D0AF /* TravelChooseCarCell.xib in Resources */,
@@ -3240,6 +3253,7 @@
                132387A527B4E5B700D2BD1F /* TravelCardBuyTCell.xib in Resources */,
                D953BB2C2499EA9B002BA5EF /* MineOnlineCustomerServiceVC.xib in Resources */,
                D9A6A7BA2497195A008E251B /* MineBirthdayView.xib in Resources */,
                1302065A2A1DEC6500A06489 /* RejectReasonView.xib in Resources */,
                D953F28E249751FA00D30F88 /* MineGiveCouponsVC.xib in Resources */,
                13A27FC727BBB95F00DD0CDF /* MineCouponsDetailVC.xib in Resources */,
                1327631F27B3CAFB0039C712 /* BindRelationAgreementVC.xib in Resources */,
@@ -3358,6 +3372,7 @@
            buildActionMask = 2147483647;
            files = (
                D912FCFF248129B5005C1B9A /* ValidateCityModel.swift in Sources */,
                1302065D2A1E00B300A06489 /* MineBusinessCreditDetailVC.swift in Sources */,
                D927C4612490CF26002BB108 /* TravelCouponsViewModel.swift in Sources */,
                139F887128446B9100D8C4BA /* InvoiceViewController.swift in Sources */,
                D90D7329248DCA04006200A7 /* MyOrderListVC.swift in Sources */,
@@ -3638,6 +3653,7 @@
                F3BD2072252DA3ED0058D0AF /* TravleCityModel.swift in Sources */,
                1365117B29E409C50051C926 /* LineOfCredictTCell.swift in Sources */,
                D943AF8C247F5726006EF639 /* SwitchCityVC.swift in Sources */,
                130206582A1DEC5A00A06489 /* RejectReasonView.swift in Sources */,
                13B494D9286C56D3004241AE /* HQFlowView.m in Sources */,
                13E2B17828251FE7000EE396 /* HireCarTCell.swift in Sources */,
                13CB991227BCFD99003B3110 /* ThanksDriverView.swift in Sources */,
OKProject/API/API.swift
@@ -685,6 +685,10 @@
    case saveCompanyLimit(applyQuota:String,applyReason:String)
    case getCompanyLimitDetail(id:Int)
    case companyLimitApprove(id:Int,remark:String? = nil,status:Int)
}
@@ -996,6 +1000,10 @@
                return "/api/user/getMineLimitList"
            case .saveCompanyLimit:
                return "/api/user/saveCompanyLimit"
            case .getCompanyLimitDetail:
                return "/api/user/getCompanyLimitDetail"
            case .companyLimitApprove:
                return "/api/user/companyLimitApprove"
        }
    }
    
@@ -1991,6 +1999,18 @@
                    .append(key: "applyQuota", value: applyQuota)
                    .append(key: "applyReason", value: applyReason)
                return .requestParameters(parameters: params.done(), encoding: URLEncoding.queryString)
            case .getCompanyLimitDetail(let id):
                let params = APIParamsAppender()
                    .append(key: "id", value: id)
                return .requestParameters(parameters: params.done(), encoding: URLEncoding.queryString)
            case .companyLimitApprove(let id, let remark, let status):
                let params = APIParamsAppender()
                    .append(key: "id", value: id)
                    .append(key: "remark", value: remark)
                    .append(key: "status", value: status)
                return .requestParameters(parameters: params.done(), encoding: URLEncoding.queryString)
        }
    }
}
OKProject/Class/Home/Controller/LineOfCreditDetailVC.swift
@@ -7,11 +7,79 @@
//
import UIKit
import QMUIKit
class LineOfCreditDetailVC: YYViewController {
    @IBOutlet weak var label_name: UILabel!
    @IBOutlet weak var label_phone: UILabel!
    @IBOutlet weak var label_applyQuota: UILabel!
    @IBOutlet weak var textView_reason: QMUITextView!
    @IBOutlet weak var stackView_handle: UIStackView!
    @IBOutlet weak var btn_reject: UIButton!
    @IBOutlet weak var btn_agreen: UIButton!
    @IBOutlet weak var label_textLen: UILabel!
    let viewModel = EnterpriseViewModel()
    private var id:Int!
    init(id:Int) {
        super.init(nibName: nil, bundle: nil)
        self.id = id
    }
    required init?(coder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
    override func viewDidLoad() {
        super.viewDidLoad()
        title = "申请详情"
        textView_reason.isEditable = false
        viewModel.getCompanyLimitDetail(id: id) { [weak self] status in
            guard let weakSelf = self else { return }
            switch status {
                case .success(let m):
                    weakSelf.label_name.text = m?.staffName ?? ""
                    weakSelf.label_phone.text = m?.phone ?? ""
                    weakSelf.label_applyQuota.text = m?.applyQuota.remain2Digits() ?? ""
                    weakSelf.textView_reason.text = m?.applyReason ?? ""
                    weakSelf.label_textLen.text = String(format: "%ld/50", m?.applyReason.length ?? 0)
                    weakSelf.stackView_handle.isHidden = (m?.status == .pass || m?.status == .reject)
                case .error(let error):
                    alert(text: error.localizedDescription)
            }
        }
    }
    @IBAction func agreenAction(_ sender: UIButton) {
        viewModel.companyLimitApprove(id: id, status: 1) { status in
            switch status {
                case .success(_):
                    alert(text: "审核成功")
                    self.stackView_handle.isHidden = true
                    NotificationCenter.default.post(name: RefreshLineOfCredit_Noti, object: nil)
                case .error(let error):
                    alert(text: error.localizedDescription)
            }
        }
    }
    @IBAction func rejectAction(_ sender: UIButton) {
        RejectReasonView.show { [weak self] text in
            guard let weakSelf = self else { return }
            weakSelf.viewModel.companyLimitApprove(id: weakSelf.id,remark: text, status: 2) { status in
                switch status {
                    case .success(_):
                        alert(text: "审核成功")
                        weakSelf.stackView_handle.isHidden = true
                        NotificationCenter.default.post(name: RefreshLineOfCredit_Noti, object: nil)
                    case .error(let error):
                        alert(text: error.localizedDescription)
                }
            }
        }
    }
}
OKProject/Class/Home/Controller/LineOfCreditDetailVC.xib
@@ -4,6 +4,7 @@
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21678"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
@@ -11,6 +12,14 @@
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="LineOfCreditDetailVC" customModule="OK出行" customModuleProvider="target">
            <connections>
                <outlet property="btn_agreen" destination="czy-rk-oqF" id="Gik-Wf-kiD"/>
                <outlet property="btn_reject" destination="khe-6T-mHh" id="Gn0-Gu-cOa"/>
                <outlet property="label_applyQuota" destination="E5s-kG-ftA" id="H3i-Am-WFW"/>
                <outlet property="label_name" destination="lQR-ff-Fqb" id="7F4-cz-G8v"/>
                <outlet property="label_phone" destination="eCI-eM-tia" id="gqz-us-31j"/>
                <outlet property="label_textLen" destination="wZo-ah-5iW" id="Uf9-Tg-Z8M"/>
                <outlet property="stackView_handle" destination="rgp-XV-hp8" id="VDr-dL-PjS"/>
                <outlet property="textView_reason" destination="nja-1V-5Vs" id="F5u-4R-LFt"/>
                <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
            </connections>
        </placeholder>
@@ -204,10 +213,62 @@
                        <constraint firstItem="GqD-QY-XAR" firstAttribute="leading" secondItem="Q7r-po-Oqy" secondAttribute="leading" id="wbh-Ja-sPR"/>
                    </constraints>
                </scrollView>
                <stackView opaque="NO" contentMode="scaleToFill" spacing="20" translatesAutoresizingMaskIntoConstraints="NO" id="rgp-XV-hp8">
                    <rect key="frame" x="59.666666666666657" y="759" width="274" height="40"/>
                    <subviews>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="khe-6T-mHh">
                            <rect key="frame" x="0.0" y="0.0" width="127" height="40"/>
                            <color key="backgroundColor" red="0.74901960784313726" green="0.74901960784313726" blue="0.74901960784313726" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                            <constraints>
                                <constraint firstAttribute="width" constant="127" id="3No-aP-MLb"/>
                                <constraint firstAttribute="height" constant="40" id="aCp-1z-YZj"/>
                            </constraints>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" title="拒绝">
                                <color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                            </state>
                            <userDefinedRuntimeAttributes>
                                <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                                    <real key="value" value="4"/>
                                </userDefinedRuntimeAttribute>
                            </userDefinedRuntimeAttributes>
                            <connections>
                                <action selector="rejectAction:" destination="-1" eventType="touchUpInside" id="wOO-Hl-fw3"/>
                            </connections>
                        </button>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="czy-rk-oqF">
                            <rect key="frame" x="147" y="0.0" width="127" height="40"/>
                            <color key="backgroundColor" name="Color"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="40" id="klG-fC-F0O"/>
                                <constraint firstAttribute="width" constant="127" id="zY2-t7-QdU"/>
                            </constraints>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" title="同意">
                                <color key="titleColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                            </state>
                            <userDefinedRuntimeAttributes>
                                <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                                    <real key="value" value="4"/>
                                </userDefinedRuntimeAttribute>
                            </userDefinedRuntimeAttributes>
                            <connections>
                                <action selector="agreenAction:" destination="-1" eventType="touchUpInside" id="RH8-gx-1j7"/>
                            </connections>
                        </button>
                    </subviews>
                    <constraints>
                        <constraint firstAttribute="height" constant="40" id="6tf-fI-yOO"/>
                    </constraints>
                </stackView>
            </subviews>
            <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
            <constraints>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="bottom" secondItem="rgp-XV-hp8" secondAttribute="bottom" constant="19" id="HW5-tv-5ZK"/>
                <constraint firstItem="rgp-XV-hp8" firstAttribute="centerX" secondItem="Q7r-po-Oqy" secondAttribute="centerX" id="Nv4-bz-8Ap"/>
                <constraint firstItem="Q7r-po-Oqy" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="UTt-4D-9g5"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="Q7r-po-Oqy" secondAttribute="trailing" id="mQP-5H-shM"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="bottom" secondItem="Q7r-po-Oqy" secondAttribute="bottom" id="nhY-NF-9aL"/>
@@ -217,6 +278,9 @@
        </view>
    </objects>
    <resources>
        <namedColor name="Color">
            <color red="0.27099999785423279" green="0.70599997043609619" blue="0.57999998331069946" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </namedColor>
        <systemColor name="labelColor">
            <color red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </systemColor>
OKProject/Class/Home/Controller/LinesOfCreditListVC.swift
@@ -15,6 +15,8 @@
    }
}
let RefreshLineOfCredit_Noti = Notification.Name.init("RefreshLineOfCredit_Noti")
class LinesOfCreditListVC: YYTableViewController {
    private var viewModel = LinesOfCreditViewModel()
@@ -29,6 +31,13 @@
        viewModel.configure(tableView: tableView)
        tableView.beginRefreshing()
    }
    override func bindRx() {
        super.bindRx()
        NotificationCenter.default.rx.notification(RefreshLineOfCredit_Noti).takeUntil(self.rx.deallocated).subscribe(onNext: {noti in
            self.tableView.beginRefreshing()
        }).disposed(by: disposeBag)
    }
}
extension LinesOfCreditListVC:UITableViewDelegate{
OKProject/Class/Home/View/LineOfCredictTCell.swift
@@ -35,7 +35,7 @@
    }
    @IBAction func detailAction(_ sender: UIButton) {
        let detailVC = LineOfCreditDetailVC()
        let detailVC = LineOfCreditDetailVC(id: lineModel.id)
        LD_currentNavigationController().pushViewController(detailVC)
    }
}
OKProject/Class/Home/View/RejectReasonView.swift
New file
@@ -0,0 +1,66 @@
//
//  RejectReasonView.swift
//  OKProject
//
//  Created by 无故事王国 on 2023/5/24.
//  Copyright © 2023 yangwang. All rights reserved.
//
import UIKit
import QMUIKit
class RejectReasonView: UIView,LDNibView{
    @IBOutlet weak var view_container: UIView!
    @IBOutlet weak var textView_content: QMUITextView!
    var clouse:((String)->Void)?
    override func awakeFromNib() {
        super.awakeFromNib()
        view_container.alpha = 0
        view_container.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)
        layoutIfNeeded()
    }
    static func show(_ clouse:@escaping (String)->Void){
        let reasonView = RejectReasonView.ld_loadNibView()
        reasonView.clouse = clouse
        reasonView.frame = app.window?.frame ?? .zero
        app.window?.addSubview(reasonView)
        UIView.animate(withDuration: 0.5) {
            reasonView.view_container.alpha = 1
            reasonView.view_container.transform = CGAffineTransform(scaleX: 1.0, y: 1.0)
            reasonView.layoutIfNeeded()
        }
    }
    @IBAction func closeAction(_ sender: UIButton) {
        UIView.animate(withDuration: 0.5) {
            self.view_container.alpha = 0
            self.view_container.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)
            self.layoutIfNeeded()
        } completion: { _ in
            self.removeFromSuperview()
        }
    }
    @IBAction func completeAction(_ sender: UIButton) {
        guard !textView_content.text.isEmpty else {
            alert(text: "请输入拒绝原因");return
        }
        UIView.animate(withDuration: 0.5) {
            self.view_container.alpha = 0
            self.view_container.transform = CGAffineTransform(scaleX: 0.1, y: 0.1)
            self.layoutIfNeeded()
        } completion: { [weak self] _ in
            guard let weakSelf = self else { return }
            weakSelf.clouse?(weakSelf.textView_content.text!)
            weakSelf.removeFromSuperview()
        }
    }
}
OKProject/Class/Home/View/RejectReasonView.xib
New file
@@ -0,0 +1,136 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21678"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="RejectReasonView" customModule="OK出行" customModuleProvider="target">
            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
            <subviews>
                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="2mR-be-fEt">
                    <rect key="frame" x="38" y="289.66666666666669" width="317" height="273.00000000000006"/>
                    <subviews>
                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="拒绝原因" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="mLm-nS-k5c">
                            <rect key="frame" x="121.66666666666666" y="24" width="73.666666666666657" height="25"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="25" id="a2h-Gk-ZQ9"/>
                            </constraints>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="18"/>
                            <nil key="textColor"/>
                            <nil key="highlightedColor"/>
                        </label>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="30D-Hf-T8b">
                            <rect key="frame" x="16" y="65" width="285" height="135"/>
                            <subviews>
                                <textView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" textAlignment="natural" translatesAutoresizingMaskIntoConstraints="NO" id="H1S-af-GhE" customClass="QMUITextView">
                                    <rect key="frame" x="14" y="13" width="257" height="109"/>
                                    <color key="textColor" systemColor="labelColor"/>
                                    <fontDescription key="fontDescription" type="system" pointSize="15"/>
                                    <textInputTraits key="textInputTraits" autocapitalizationType="sentences"/>
                                    <userDefinedRuntimeAttributes>
                                        <userDefinedRuntimeAttribute type="string" keyPath="placeholder" value="请输入拒绝原因"/>
                                        <userDefinedRuntimeAttribute type="number" keyPath="maximumTextLength">
                                            <integer key="value" value="50"/>
                                        </userDefinedRuntimeAttribute>
                                        <userDefinedRuntimeAttribute type="color" keyPath="placeholderColor">
                                            <color key="value" red="0.40000000000000002" green="0.40000000000000002" blue="0.40000000000000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                        </userDefinedRuntimeAttribute>
                                    </userDefinedRuntimeAttributes>
                                </textView>
                            </subviews>
                            <color key="backgroundColor" red="0.93725490196078431" green="0.93725490196078431" blue="0.93725490196078431" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="135" id="2zs-i2-nFY"/>
                                <constraint firstAttribute="bottom" secondItem="H1S-af-GhE" secondAttribute="bottom" constant="13" id="Bt6-ho-H88"/>
                                <constraint firstItem="H1S-af-GhE" firstAttribute="top" secondItem="30D-Hf-T8b" secondAttribute="top" constant="13" id="i7Y-Li-ZIk"/>
                                <constraint firstItem="H1S-af-GhE" firstAttribute="leading" secondItem="30D-Hf-T8b" secondAttribute="leading" constant="14" id="vjo-cU-uuM"/>
                                <constraint firstAttribute="trailing" secondItem="H1S-af-GhE" secondAttribute="trailing" constant="14" id="x50-jj-eYD"/>
                            </constraints>
                        </view>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="wJi-J5-azP">
                            <rect key="frame" x="16" y="216" width="285" height="40"/>
                            <color key="backgroundColor" name="Color"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="40" id="BHk-yr-GmR"/>
                            </constraints>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="15"/>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" title="确定"/>
                            <userDefinedRuntimeAttributes>
                                <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                                    <real key="value" value="4"/>
                                </userDefinedRuntimeAttribute>
                            </userDefinedRuntimeAttributes>
                            <connections>
                                <action selector="completeAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="TEe-PR-u10"/>
                            </connections>
                        </button>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="zAP-eJ-fs4">
                            <rect key="frame" x="272" y="5" width="40" height="40"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="40" id="dqB-cj-WIx"/>
                                <constraint firstAttribute="width" constant="40" id="gNX-Aj-ZeO"/>
                            </constraints>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" image="icon_close"/>
                            <connections>
                                <action selector="closeAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="hVT-Ra-La4"/>
                            </connections>
                        </button>
                    </subviews>
                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                    <constraints>
                        <constraint firstItem="30D-Hf-T8b" firstAttribute="top" secondItem="mLm-nS-k5c" secondAttribute="bottom" constant="16" id="47g-Ek-GgK"/>
                        <constraint firstItem="wJi-J5-azP" firstAttribute="leading" secondItem="2mR-be-fEt" secondAttribute="leading" constant="16" id="8uY-JJ-RKs"/>
                        <constraint firstItem="30D-Hf-T8b" firstAttribute="leading" secondItem="2mR-be-fEt" secondAttribute="leading" constant="16" id="Byk-qZ-TYt"/>
                        <constraint firstItem="mLm-nS-k5c" firstAttribute="top" secondItem="2mR-be-fEt" secondAttribute="top" constant="24" id="E04-Ja-eQ1"/>
                        <constraint firstAttribute="trailing" secondItem="wJi-J5-azP" secondAttribute="trailing" constant="16" id="Oey-J4-SiG"/>
                        <constraint firstItem="zAP-eJ-fs4" firstAttribute="top" secondItem="2mR-be-fEt" secondAttribute="top" constant="5" id="UUB-yd-K8J"/>
                        <constraint firstItem="mLm-nS-k5c" firstAttribute="centerX" secondItem="2mR-be-fEt" secondAttribute="centerX" id="WMd-bW-AP0"/>
                        <constraint firstAttribute="trailing" secondItem="30D-Hf-T8b" secondAttribute="trailing" constant="16" id="ffc-W0-KEM"/>
                        <constraint firstAttribute="trailing" secondItem="zAP-eJ-fs4" secondAttribute="trailing" constant="5" id="oX4-V2-yJe"/>
                        <constraint firstAttribute="bottom" secondItem="wJi-J5-azP" secondAttribute="bottom" constant="17" id="y5m-TP-u7p"/>
                        <constraint firstItem="wJi-J5-azP" firstAttribute="top" secondItem="30D-Hf-T8b" secondAttribute="bottom" constant="16" id="zgU-gw-aJF"/>
                    </constraints>
                    <userDefinedRuntimeAttributes>
                        <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                            <real key="value" value="6"/>
                        </userDefinedRuntimeAttribute>
                    </userDefinedRuntimeAttributes>
                </view>
            </subviews>
            <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/>
            <constraints>
                <constraint firstItem="2mR-be-fEt" firstAttribute="centerY" secondItem="iN0-l3-epB" secondAttribute="centerY" id="3SH-bU-HCL"/>
                <constraint firstAttribute="trailing" secondItem="2mR-be-fEt" secondAttribute="trailing" constant="38" id="5nc-zh-npA"/>
                <constraint firstItem="2mR-be-fEt" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" constant="38" id="76v-AZ-Mt7"/>
                <constraint firstItem="2mR-be-fEt" firstAttribute="centerX" secondItem="iN0-l3-epB" secondAttribute="centerX" id="BRK-HK-SFY"/>
            </constraints>
            <connections>
                <outlet property="textView_content" destination="H1S-af-GhE" id="OvQ-op-Q4N"/>
                <outlet property="view_container" destination="2mR-be-fEt" id="vBB-er-AaB"/>
            </connections>
            <point key="canvasLocation" x="81.679389312977094" y="20.422535211267608"/>
        </view>
    </objects>
    <resources>
        <image name="icon_close" width="16" height="16"/>
        <namedColor name="Color">
            <color red="0.27099999785423279" green="0.70599997043609619" blue="0.57999998331069946" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </namedColor>
        <systemColor name="labelColor">
            <color red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </systemColor>
        <systemColor name="systemBackgroundColor">
            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
        </systemColor>
    </resources>
</document>
OKProject/Class/Home/ViewModel/EnterpriseViewModel.swift
@@ -58,4 +58,41 @@
            clouse(ResponseStatus.error(error))
        }.disposed(by: disposeBag)
    }
    func getCompanyLimitDetail(id:Int,clouse: @escaping (ResponseStatus<LinesModel>)->Void){
        show()
        APIManager.shared.provider.rx.request(.getCompanyLimitDetail(id: id)).mapTravelThenValidate(LinesModel.self).subscribe { result in
            self.hidden()
            switch result {
                case .success(let m):
                    clouse(ResponseStatus.success(m))
                case .failure(let e):
                    clouse(ResponseStatus.error(e))
            }
        } onError: { error in
            self.hidden()
            clouse(ResponseStatus.error(error))
        }.disposed(by: disposeBag)
    }
        /// 额度审核
        /// - Parameters:
        ///   - id: id
        ///   - remark: 拒绝备注
        ///   - status: 审核状态(1审核通过 2审核拒绝)
    func companyLimitApprove(id:Int,remark:String? = nil,status:Int,clouse: @escaping (ResponseStatus<Nothing>)->Void){
        show()
        APIManager.shared.provider.rx.request(.companyLimitApprove(id: id, remark: remark, status: status)).mapTravelThenValidate(Nothing.self).subscribe { result in
            self.hidden()
            switch result {
                case .success(_):
                    clouse(ResponseStatus.success(nil))
                case .failure(let e):
                    clouse(ResponseStatus.error(e))
            }
        } onError: { error in
            self.hidden()
            clouse(ResponseStatus.error(error))
        }.disposed(by: disposeBag)
    }
}
OKProject/Class/LeftMenu/Controller/MineBusinessCreditDetailVC.swift
New file
@@ -0,0 +1,57 @@
//
//  MineBusinessCreditDetailVC.swift
//  OKProject
//
//  Created by 无故事王国 on 2023/5/24.
//  Copyright © 2023 yangwang. All rights reserved.
//
import UIKit
class MineBusinessCreditDetailVC: YYViewController {
    @IBOutlet weak var label_balance: UILabel!
    @IBOutlet weak var label_applyReason: UILabel!
    @IBOutlet weak var label_limitCount: UILabel!
    @IBOutlet weak var label_reject: UILabel!
    @IBOutlet weak var view_reject: UIView!
    @IBOutlet weak var label_auth: UILabel!
    private var model:LinesModel!
    init(model:LinesModel) {
        super.init(nibName: nil, bundle: nil)
        self.model = model
    }
    required init?(coder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
    override func viewDidLoad() {
        super.viewDidLoad()
        title = "申请详情"
        view.backgroundColor = UIColor(hexString: "#F3F4F5")
        label_balance.text = model.applyQuota.remain2Digits()
        label_applyReason.text = model.applyReason
        label_limitCount.text = "\(model.applyReason.length)/50"
        view_reject.isHidden = model.status != .reject
        label_reject.text = model.remark
        switch model.status{
            case .pass:
                label_auth.text = "审核成功!"
                label_auth.backgroundColor = ThemeColor
            case .pending:
                label_auth.text = "处理中"
                label_auth.backgroundColor = UIColor.black.withAlphaComponent(0.49)
            case .reject:
                label_auth.text = "审核失败!"
                label_auth.backgroundColor = UIColor.black.withAlphaComponent(0.49)
            case .none:break
        }
    }
}
OKProject/Class/LeftMenu/Controller/MineBusinessCreditDetailVC.xib
New file
@@ -0,0 +1,196 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21701" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21678"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="MineBusinessCreditDetailVC" customModule="OK出行" customModuleProvider="target">
            <connections>
                <outlet property="label_applyReason" destination="hEz-fg-ctA" id="2gy-uJ-ZtZ"/>
                <outlet property="label_auth" destination="4aN-4Q-LSL" id="5ps-IG-Ga2"/>
                <outlet property="label_balance" destination="voC-uF-PGs" id="Lhd-f2-v6W"/>
                <outlet property="label_limitCount" destination="Odp-Mr-xT3" id="Jw0-D2-lb3"/>
                <outlet property="label_reject" destination="GKv-sa-wOp" id="Esb-8r-40K"/>
                <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
                <outlet property="view_reject" destination="PQ6-Ec-9bY" id="UsU-rE-bBY"/>
            </connections>
        </placeholder>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
            <subviews>
                <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" translatesAutoresizingMaskIntoConstraints="NO" id="xQC-Jh-DaQ">
                    <rect key="frame" x="0.0" y="59" width="393" height="537"/>
                    <subviews>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="NBa-gx-bSB">
                            <rect key="frame" x="0.0" y="0.0" width="393" height="51"/>
                            <subviews>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="I8A-kH-kfp">
                                    <rect key="frame" x="0.0" y="50" width="393" height="1"/>
                                    <color key="backgroundColor" red="0.95294117647058818" green="0.95686274509803915" blue="0.96078431372549022" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                    <constraints>
                                        <constraint firstAttribute="height" constant="1" id="n9O-3S-EhZ"/>
                                    </constraints>
                                </view>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="申请额度" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dZb-Uy-YtC">
                                    <rect key="frame" x="14.000000000000004" y="17" width="57.333333333333343" height="17"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                    <nil key="textColor"/>
                                    <nil key="highlightedColor"/>
                                </label>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0.00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="voC-uF-PGs">
                                    <rect key="frame" x="112.33333333333333" y="17" width="29.999999999999986" height="17"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                    <nil key="textColor"/>
                                    <nil key="highlightedColor"/>
                                </label>
                            </subviews>
                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="51" id="BXr-9k-yRu"/>
                                <constraint firstItem="voC-uF-PGs" firstAttribute="centerY" secondItem="NBa-gx-bSB" secondAttribute="centerY" id="OS5-zj-Yo5"/>
                                <constraint firstItem="I8A-kH-kfp" firstAttribute="leading" secondItem="NBa-gx-bSB" secondAttribute="leading" id="Ppq-uR-d4P"/>
                                <constraint firstItem="voC-uF-PGs" firstAttribute="leading" secondItem="dZb-Uy-YtC" secondAttribute="trailing" constant="41" id="RHI-Wh-n58"/>
                                <constraint firstItem="dZb-Uy-YtC" firstAttribute="leading" secondItem="NBa-gx-bSB" secondAttribute="leading" constant="14" id="YQK-cQ-aA1"/>
                                <constraint firstItem="dZb-Uy-YtC" firstAttribute="centerY" secondItem="NBa-gx-bSB" secondAttribute="centerY" id="ncK-Y5-gQr"/>
                                <constraint firstAttribute="bottom" secondItem="I8A-kH-kfp" secondAttribute="bottom" id="sx4-41-epW"/>
                                <constraint firstAttribute="trailing" secondItem="I8A-kH-kfp" secondAttribute="trailing" id="w5t-zE-i3L"/>
                            </constraints>
                        </view>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="een-zv-ScA">
                            <rect key="frame" x="0.0" y="51" width="393" height="200"/>
                            <subviews>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Hrb-pA-anh">
                                    <rect key="frame" x="0.0" y="199" width="393" height="1"/>
                                    <color key="backgroundColor" red="0.95294117649999999" green="0.95686274510000002" blue="0.96078431369999995" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                    <constraints>
                                        <constraint firstAttribute="height" constant="1" id="E0O-BS-OJZ"/>
                                    </constraints>
                                </view>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="申请理由" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xW1-ff-9Nq">
                                    <rect key="frame" x="14.000000000000004" y="10" width="57.333333333333343" height="30"/>
                                    <constraints>
                                        <constraint firstAttribute="height" constant="30" id="hme-AA-cUA"/>
                                    </constraints>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                    <nil key="textColor"/>
                                    <nil key="highlightedColor"/>
                                </label>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hEz-fg-ctA">
                                    <rect key="frame" x="14" y="43" width="365" height="59"/>
                                    <constraints>
                                        <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="30" id="XGO-vC-tlW"/>
                                    </constraints>
                                    <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                    <nil key="textColor"/>
                                    <nil key="highlightedColor"/>
                                </label>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0/50" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Odp-Mr-xT3">
                                    <rect key="frame" x="346" y="157" width="30" height="30"/>
                                    <constraints>
                                        <constraint firstAttribute="height" constant="30" id="vaN-tA-HNp"/>
                                    </constraints>
                                    <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                    <color key="textColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="0.40000000000000002" colorSpace="custom" customColorSpace="sRGB"/>
                                    <nil key="highlightedColor"/>
                                </label>
                            </subviews>
                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                            <constraints>
                                <constraint firstItem="hEz-fg-ctA" firstAttribute="top" secondItem="xW1-ff-9Nq" secondAttribute="bottom" constant="3" id="24E-7J-aJB"/>
                                <constraint firstItem="xW1-ff-9Nq" firstAttribute="leading" secondItem="een-zv-ScA" secondAttribute="leading" constant="14" id="5XK-yw-DWd"/>
                                <constraint firstItem="Hrb-pA-anh" firstAttribute="leading" secondItem="een-zv-ScA" secondAttribute="leading" id="FjA-Jc-i3t"/>
                                <constraint firstAttribute="trailing" secondItem="hEz-fg-ctA" secondAttribute="trailing" constant="14" id="Ox1-zC-XAb"/>
                                <constraint firstItem="xW1-ff-9Nq" firstAttribute="top" secondItem="een-zv-ScA" secondAttribute="top" constant="10" id="SkZ-Sj-9UN"/>
                                <constraint firstAttribute="bottom" secondItem="Hrb-pA-anh" secondAttribute="bottom" id="iHB-CU-jZn"/>
                                <constraint firstAttribute="trailing" secondItem="Hrb-pA-anh" secondAttribute="trailing" id="khj-Cu-Jt9"/>
                                <constraint firstItem="Hrb-pA-anh" firstAttribute="top" secondItem="Odp-Mr-xT3" secondAttribute="bottom" constant="12" id="nlA-Qe-JOQ"/>
                                <constraint firstAttribute="trailing" secondItem="Odp-Mr-xT3" secondAttribute="trailing" constant="17" id="oz4-rT-9uI"/>
                                <constraint firstItem="Odp-Mr-xT3" firstAttribute="top" secondItem="hEz-fg-ctA" secondAttribute="bottom" constant="55" id="usA-pJ-7zW"/>
                                <constraint firstItem="hEz-fg-ctA" firstAttribute="leading" secondItem="een-zv-ScA" secondAttribute="leading" constant="14" id="vCB-g3-0l2"/>
                            </constraints>
                        </view>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="PQ6-Ec-9bY">
                            <rect key="frame" x="0.0" y="251" width="393" height="200"/>
                            <subviews>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="拒绝理由" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="POC-hk-NvE">
                                    <rect key="frame" x="14.000000000000004" y="10" width="57.333333333333343" height="30"/>
                                    <constraints>
                                        <constraint firstAttribute="height" constant="30" id="hge-5y-6dd"/>
                                    </constraints>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                    <nil key="textColor"/>
                                    <nil key="highlightedColor"/>
                                </label>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="GKv-sa-wOp">
                                    <rect key="frame" x="14" y="43" width="365" height="60"/>
                                    <constraints>
                                        <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="30" id="aQT-gN-MHm"/>
                                    </constraints>
                                    <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                    <nil key="textColor"/>
                                    <nil key="highlightedColor"/>
                                </label>
                            </subviews>
                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                            <constraints>
                                <constraint firstItem="POC-hk-NvE" firstAttribute="leading" secondItem="PQ6-Ec-9bY" secondAttribute="leading" constant="14" id="4xR-Ah-rb1"/>
                                <constraint firstItem="POC-hk-NvE" firstAttribute="top" secondItem="PQ6-Ec-9bY" secondAttribute="top" constant="10" id="5cp-za-7gW"/>
                                <constraint firstAttribute="trailing" secondItem="GKv-sa-wOp" secondAttribute="trailing" constant="14" id="AO9-f3-qkL"/>
                                <constraint firstItem="GKv-sa-wOp" firstAttribute="leading" secondItem="PQ6-Ec-9bY" secondAttribute="leading" constant="14" id="JAH-Pq-j05"/>
                                <constraint firstItem="GKv-sa-wOp" firstAttribute="top" secondItem="POC-hk-NvE" secondAttribute="bottom" constant="3" id="TfH-VI-lZ1"/>
                                <constraint firstAttribute="bottom" secondItem="GKv-sa-wOp" secondAttribute="bottom" constant="97" id="Yls-cG-56B"/>
                            </constraints>
                        </view>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Mox-VW-Amf">
                            <rect key="frame" x="0.0" y="451" width="393" height="86"/>
                            <subviews>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="4aN-4Q-LSL">
                                    <rect key="frame" x="115" y="30" width="163" height="46"/>
                                    <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.48999999999999999" colorSpace="custom" customColorSpace="sRGB"/>
                                    <constraints>
                                        <constraint firstAttribute="width" constant="163" id="8oY-vC-YH5"/>
                                        <constraint firstAttribute="height" constant="46" id="YaJ-ew-0Lo"/>
                                    </constraints>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                                    <color key="textColor" red="0.95294117649999999" green="0.95686274510000002" blue="0.96078431369999995" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                    <nil key="highlightedColor"/>
                                    <userDefinedRuntimeAttributes>
                                        <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                                            <real key="value" value="7"/>
                                        </userDefinedRuntimeAttribute>
                                        <userDefinedRuntimeAttribute type="boolean" keyPath="maskToBounds" value="YES"/>
                                    </userDefinedRuntimeAttributes>
                                </label>
                            </subviews>
                            <constraints>
                                <constraint firstItem="4aN-4Q-LSL" firstAttribute="top" secondItem="Mox-VW-Amf" secondAttribute="top" constant="30" id="Fd8-CX-D6l"/>
                                <constraint firstAttribute="bottom" secondItem="4aN-4Q-LSL" secondAttribute="bottom" constant="10" id="KiT-gu-zNS"/>
                                <constraint firstItem="4aN-4Q-LSL" firstAttribute="centerX" secondItem="Mox-VW-Amf" secondAttribute="centerX" id="nRl-gf-y9M"/>
                            </constraints>
                        </view>
                    </subviews>
                </stackView>
            </subviews>
            <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
            <constraints>
                <constraint firstItem="xQC-Jh-DaQ" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" id="0Tv-LG-h1u"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="xQC-Jh-DaQ" secondAttribute="trailing" id="hQb-wM-ke7"/>
                <constraint firstItem="xQC-Jh-DaQ" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="qtS-iB-vhW"/>
            </constraints>
            <point key="canvasLocation" x="83" y="21"/>
        </view>
    </objects>
    <resources>
        <systemColor name="systemBackgroundColor">
            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
        </systemColor>
    </resources>
</document>
OKProject/Class/LeftMenu/Controller/MineBusinessCreditVC.swift
@@ -14,6 +14,8 @@
    }
}
let Refresh_MineBusinessCredit_Noti = Notification.Name.init("Refresh_MineBusinessCredit_Noti")
class MineBusinessCreditVC: YYViewController {
    @IBOutlet weak var label_quotaAccount: UILabel!
@@ -72,6 +74,15 @@
        tableview.dataSource = self
        viewModel.configure(tableView: tableview)
        tableview.beginRefreshing()
        label_quotaAccount.text = "\(app.userInfo.balance.remain2Digits())"
        label_account.text = "\(app.userInfo.balanceQuota.remain2Digits())"
    }
    override func bindRx() {
        NotificationCenter.default.rx.notification(Refresh_MineBusinessCredit_Noti).takeUntil(self.rx.deallocated).subscribe(onNext: {[weak self] noti in
            self?.tableview.beginRefreshing()
        }).disposed(by: disposeBag)
    }
    @IBAction func applyAction(_ sender: UIButton) {
@@ -86,7 +97,11 @@
}
extension MineBusinessCreditVC:UITableViewDelegate{
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        let model = viewModel.dataSource.value[indexPath.row]
        let vc = MineBusinessCreditDetailVC(model: model)
        yy_push(vc: vc)
    }
}
extension MineBusinessCreditVC:UITableViewDataSource{
OKProject/Class/LeftMenu/Controller/MineCreditApplyVC.swift
@@ -45,6 +45,7 @@
            switch status {
                case .success(_):
                    alert(popup: .single, title: "提示!", text: "申请提交成功", submitTitle: "确定", cancelTitle: "取消") {
                        NotificationCenter.default.post(name: Refresh_MineBusinessCredit_Noti, object: nil)
                        self.yy_pop()
                    } cancelClick: {