Commit cef9c44f authored by 曹云霄's avatar 曹云霄

卡劵改动

parent bae556a2
......@@ -12,15 +12,6 @@
@interface CardAmplificationViewController : BaseViewController
/**
* 取消
*/
@property (weak, nonatomic) IBOutlet UIButton *cancelButton;
/**
* 确认
*/
@property (weak, nonatomic) IBOutlet UIButton *sureButton;
/**
* 数据源
......@@ -50,11 +41,21 @@
/**
* 遮罩层
*/
@property (nonatomic,strong) MDScratchImageView *maskView;
@property (weak, nonatomic) IBOutlet MDScratchImageView *maskView;
/**
* 去使用
*/
@property (weak, nonatomic) IBOutlet UIButton *usedingButton;
/**
* 已使用
*/
@property (weak, nonatomic) IBOutlet UIImageView *usedImageView;
/**
* 改变京东卡状态后需要刷新
*/
@property (nonatomic,copy) void(^refreshJDCardList)(BOOL isComplete,NSString *cardNumber);
@property (nonatomic,copy) void(^refreshJDCardList)(NSString *cardNumber);
@end
......@@ -23,82 +23,66 @@
#pragma mark - 添加遮罩层
- (void)addMaskView
{
_maskView = [[MDScratchImageView alloc]init];
[self.view addSubview:_maskView];
[_maskView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self.cardPasswordLabel);
make.top.equalTo(self.cardPasswordLabel);
make.size.equalTo(self.cardPasswordLabel);
}];
_maskView.delegate = self;
[_maskView setImage:TCImage(@"mask") radius:20];
self.maskView.delegate = self;
[self.maskView setImage:TCImage(@"mask") radius:20];
}
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
self.view.superview.layer.cornerRadius = 15;
}
#pragma mark - 取消
- (IBAction)cancelButtonClickAction:(UIButton *)sender {
[self dismissViewControllerAnimated:YES completion:nil];
}
#pragma mark - 确认
#pragma mark - 去使用
- (IBAction)sureButtonClickAction:(UIButton *)sender {
WS(weakSelf);
[self CreateMBProgressHUDLoding];
[[NetworkRequestClassManager Manager] NetworkWithDictionaryRequestWithURL:[NSString stringWithFormat:SERVERREQUESTURL(RECEIVEJDECARD),self.cardModel.cardNumber] WithRequestType:ZERO WithParameter:nil WithReturnValueBlock:^(id returnValue) {
[weakSelf RemoveMBProgressHUDLoding];
if ([returnValue[@"code"] isEqualToNumber:@0]) {
if (weakSelf.refreshJDCardList) {
weakSelf.refreshJDCardList(YES,weakSelf.cardModel.cardNumber);
}
}else
{
if (weakSelf.refreshJDCardList) {
weakSelf.refreshJDCardList(NO,weakSelf.cardModel.cardNumber);
if (self.refreshJDCardList) {
self.refreshJDCardList(self.cardModel.cardNumber);
}
}
} WithErrorCodeBlock:^(id errorCodeValue) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:NETWORK];
} WithFailureBlock:^(NSError *error) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:error.localizedDescription];
}];
[self dismissViewControllerAnimated:YES completion:nil];
}
- (void)setCardModel:(TOJingdongEcardEntity *)cardModel
{
_cardModel = cardModel;
self.backgroundImageView.image = [BaseViewController getCorrespondingPictures:_cardModel.denomation];
self.cardNumberLabel.text = _cardModel.cardNumber;
self.cardPasswordLabel.text = _cardModel.cardPassword;
//是否已查看
if ([_cardModel.state isEqualToString:LOOKED]) {
[self.maskView removeFromSuperview];
self.cardNumberLabel.text = [NSString stringWithFormat:@"卡号: %@",_cardModel.cardNumber];
self.cardPasswordLabel.text = [NSString stringWithFormat:@"密码: %@",_cardModel.cardPassword];
/// 判断状态
BOOL isUsed = [_cardModel.state isEqualToString:LOOKED];
BOOL isActived = [_cardModel.state isEqualToString:ACTIVED];
BOOL isDispensed = [_cardModel.state isEqualToString:DISPENSED];
if (isDispensed) {
self.usedImageView.hidden = YES;
self.maskView.hidden = NO;
self.usedingButton.hidden = NO;
}
if (isActived) {
self.usedImageView.hidden = YES;
self.maskView.hidden = NO;
self.usedingButton.hidden = NO;
}
if (isUsed) {
self.maskView.hidden = YES;
self.usedingButton.hidden = YES;
self.usedImageView.hidden = NO;
}
self.amountLabel.text = [NSString stringWithFormat:@"¥%ld",_cardModel.denomation];
NSString *totalString = [NSString stringWithFormat:@"%ld元",_cardModel.denomation];
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]initWithString:totalString];
[attributedString addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold" size:50] range:NSMakeRange(0, totalString.length-1)];
self.usedingButton.enabled = NO;
self.amountLabel.attributedText = attributedString;
}
#pragma mark - <MDScratchImageViewDelegate>
- (void)mdScratchImageView:(MDScratchImageView *)scratchImageView didChangeMaskingProgress:(CGFloat)maskingProgress
{
NSLog(@"%f",maskingProgress);
if (maskingProgress == 1) {
self.usedingButton.enabled = YES;
self.maskView.hidden = YES;
}
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="10117" systemVersion="16A323" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="10117" systemVersion="16B2555" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="CardAmplificationViewController">
<connections>
<outlet property="amountLabel" destination="0aw-rU-2w8" id="P4m-1Q-AOS"/>
<outlet property="backgroundImageView" destination="4rL-ti-mfn" id="RCE-Ob-tgT"/>
<outlet property="cancelButton" destination="fSg-ii-Gn4" id="wVG-sn-NH6"/>
<outlet property="cardNumberLabel" destination="14z-ZJ-5E3" id="ib7-L2-IL0"/>
<outlet property="cardPasswordLabel" destination="z4q-vO-5Wt" id="pwV-kU-xcO"/>
<outlet property="sureButton" destination="f9T-ak-TEq" id="vnn-d3-9GZ"/>
<outlet property="amountLabel" destination="Ijv-rF-zh4" id="hxi-cj-ceJ"/>
<outlet property="backgroundImageView" destination="cWQ-HK-qv1" id="yzb-gM-CTI"/>
<outlet property="cardNumberLabel" destination="z5Z-2z-1qL" id="Lpz-Tk-5hb"/>
<outlet property="cardPasswordLabel" destination="bkG-iT-aBC" id="mNq-qo-W5V"/>
<outlet property="maskView" destination="FAF-XN-Ibv" id="kJZ-nu-eU7"/>
<outlet property="usedImageView" destination="X2G-su-iPO" id="WnG-5w-mzH"/>
<outlet property="usedingButton" destination="q0Y-Z3-9ec" id="fQH-VQ-YII"/>
<outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
</connections>
</placeholder>
......@@ -20,121 +21,111 @@
<rect key="frame" x="0.0" y="0.0" width="500" height="370"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="fifty" translatesAutoresizingMaskIntoConstraints="NO" id="4rL-ti-mfn">
<rect key="frame" x="0.0" y="0.0" width="500" height="309"/>
</imageView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="f9T-ak-TEq">
<rect key="frame" x="315" y="323" width="120" height="35"/>
<color key="backgroundColor" red="0.34901960780000002" green="0.67450980390000004" blue="0.86274509799999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstAttribute="height" constant="35" id="7hv-j7-zdH"/>
</constraints>
<state key="normal" title="确认">
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</state>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
<real key="value" value="5"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
<connections>
<action selector="sureButtonClickAction:" destination="-1" eventType="touchUpInside" id="7CT-T8-qpC"/>
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="fSg-ii-Gn4">
<rect key="frame" x="64" y="322" width="120" height="35"/>
<color key="backgroundColor" red="0.34901960780000002" green="0.67450980390000004" blue="0.86274509799999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstAttribute="height" constant="35" id="goe-WI-MS6"/>
</constraints>
<state key="normal" title="取消">
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</state>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="onehundred" translatesAutoresizingMaskIntoConstraints="NO" id="cWQ-HK-qv1">
<rect key="frame" x="0.0" y="0.0" width="500" height="370"/>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
<real key="value" value="5"/>
<real key="value" value="0.0"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
<connections>
<action selector="cancelButtonClickAction:" destination="-1" eventType="touchUpInside" id="KWa-ug-wjw"/>
</connections>
</button>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12345678" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="14z-ZJ-5E3">
<rect key="frame" x="19" y="134" width="462" height="40"/>
<constraints>
<constraint firstAttribute="height" constant="40" id="Imc-Hw-jHZ"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="30"/>
</imageView>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="bg-w" translatesAutoresizingMaskIntoConstraints="NO" id="FOR-QQ-gKa">
<rect key="frame" x="0.0" y="197" width="500" height="173"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="50元" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Ijv-rF-zh4">
<rect key="frame" x="363" y="62" width="119" height="32"/>
<fontDescription key="fontDescription" type="system" pointSize="25"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" alpha="0.29999999999999999" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2FF0-3F9D-DCC6-D1CD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="z4q-vO-5Wt">
<rect key="frame" x="18" y="265" width="215" height="26"/>
<color key="backgroundColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="京东logo" translatesAutoresizingMaskIntoConstraints="NO" id="daL-7C-9So">
<rect key="frame" x="29" y="42" width="120" height="120"/>
<constraints>
<constraint firstAttribute="height" constant="26" id="QRy-tb-lRt"/>
<constraint firstAttribute="width" constant="215" id="oIE-kX-N6G"/>
<constraint firstAttribute="width" constant="120" id="QB9-fj-j6y"/>
<constraint firstAttribute="height" constant="120" id="S11-yk-vI9"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="密码: 2FF0-3F9D-DCC6-D1CD" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bkG-iT-aBC">
<rect key="frame" x="17" y="301" width="330" height="20"/>
<fontDescription key="fontDescription" type="system" pointSize="15"/>
<color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="京东E卡" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="HOE-bh-0Qi">
<rect key="frame" x="426" y="105" width="56" height="23"/>
<fontDescription key="fontDescription" type="system" pointSize="15"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
<real key="value" value="5"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
</label>
<label opaque="NO" userInteractionEnabled="NO" alpha="0.75" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text=" 京东E卡" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="CGQ-Gi-Un9">
<rect key="frame" x="18" y="11" width="120" height="24"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<constraints>
<constraint firstAttribute="width" constant="120" id="AQS-uq-zTE"/>
<constraint firstAttribute="height" constant="24" id="zGQ-E9-8sS"/>
</constraints>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="卡号: 12345678987643677" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="z5Z-2z-1qL">
<rect key="frame" x="17" y="267" width="330" height="20"/>
<fontDescription key="fontDescription" type="system" pointSize="15"/>
<color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥100" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0aw-rU-2w8">
<rect key="frame" x="401" y="258" width="80" height="40"/>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="used" translatesAutoresizingMaskIntoConstraints="NO" id="X2G-su-iPO">
<rect key="frame" x="382" y="234" width="100" height="100"/>
<constraints>
<constraint firstAttribute="width" constant="80" id="03d-5z-CC5"/>
<constraint firstAttribute="height" constant="40" id="SMs-NC-Yfc"/>
<constraint firstAttribute="height" constant="100" id="JnK-Ak-QyO"/>
<constraint firstAttribute="width" constant="100" id="w5u-oL-Y0U"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="26"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
</imageView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="q0Y-Z3-9ec">
<rect key="frame" x="413" y="332" width="81" height="30"/>
<constraints>
<constraint firstAttribute="width" constant="81" id="5JN-t8-HOZ"/>
<constraint firstAttribute="height" constant="30" id="o7o-uU-SKJ"/>
</constraints>
<state key="normal" image="useing"/>
<connections>
<action selector="sureButtonClickAction:" destination="-1" eventType="touchUpInside" id="xP7-jg-LZQ"/>
</connections>
</button>
<imageView contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mask" translatesAutoresizingMaskIntoConstraints="NO" id="FAF-XN-Ibv" customClass="MDScratchImageView">
<rect key="frame" x="0.0" y="197" width="500" height="173"/>
</imageView>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<constraints>
<constraint firstItem="4rL-ti-mfn" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" id="1KA-cY-Iy4"/>
<constraint firstItem="f9T-ak-TEq" firstAttribute="top" secondItem="4rL-ti-mfn" secondAttribute="bottom" constant="14" id="3UD-nV-ZGF"/>
<constraint firstAttribute="trailing" secondItem="4rL-ti-mfn" secondAttribute="trailing" id="8cB-Ma-qfw"/>
<constraint firstItem="z4q-vO-5Wt" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" constant="18" id="CaL-i2-ql2"/>
<constraint firstAttribute="bottom" secondItem="4rL-ti-mfn" secondAttribute="bottom" constant="61" id="DpK-EL-Z6i"/>
<constraint firstItem="4rL-ti-mfn" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="EAG-QZ-ddA"/>
<constraint firstItem="fSg-ii-Gn4" firstAttribute="top" secondItem="4rL-ti-mfn" secondAttribute="bottom" constant="13" id="Eba-U3-xgV"/>
<constraint firstAttribute="trailing" secondItem="0aw-rU-2w8" secondAttribute="trailing" constant="19" id="FLO-73-7b1"/>
<constraint firstItem="f9T-ak-TEq" firstAttribute="width" secondItem="fSg-ii-Gn4" secondAttribute="width" id="MD2-dC-LcZ"/>
<constraint firstItem="f9T-ak-TEq" firstAttribute="leading" secondItem="fSg-ii-Gn4" secondAttribute="trailing" constant="131" id="O5P-bH-hPu"/>
<constraint firstItem="0aw-rU-2w8" firstAttribute="leading" secondItem="z4q-vO-5Wt" secondAttribute="trailing" constant="168" id="Occ-s2-2SM"/>
<constraint firstItem="f9T-ak-TEq" firstAttribute="height" secondItem="fSg-ii-Gn4" secondAttribute="height" id="P02-TC-Nbq"/>
<constraint firstItem="z4q-vO-5Wt" firstAttribute="top" secondItem="14z-ZJ-5E3" secondAttribute="bottom" constant="91" id="P2w-XZ-nvT"/>
<constraint firstAttribute="trailing" secondItem="f9T-ak-TEq" secondAttribute="trailing" constant="65" id="Ubj-HW-uUA"/>
<constraint firstItem="fSg-ii-Gn4" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" constant="64" id="YaH-SL-lIj"/>
<constraint firstItem="14z-ZJ-5E3" firstAttribute="top" secondItem="CGQ-Gi-Un9" secondAttribute="bottom" constant="99" id="beO-os-gtb"/>
<constraint firstAttribute="bottom" secondItem="fSg-ii-Gn4" secondAttribute="bottom" constant="13" id="cQ0-8b-PB2"/>
<constraint firstItem="14z-ZJ-5E3" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" constant="134" id="ccO-gx-N8z"/>
<constraint firstItem="CGQ-Gi-Un9" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" constant="18" id="eta-0d-eMW"/>
<constraint firstItem="14z-ZJ-5E3" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" constant="19" id="gad-Bc-32l"/>
<constraint firstItem="fSg-ii-Gn4" firstAttribute="top" secondItem="z4q-vO-5Wt" secondAttribute="bottom" constant="31" id="nCg-zX-rde"/>
<constraint firstItem="0aw-rU-2w8" firstAttribute="top" secondItem="14z-ZJ-5E3" secondAttribute="bottom" constant="84" id="q1e-rl-FWk"/>
<constraint firstAttribute="trailing" secondItem="14z-ZJ-5E3" secondAttribute="trailing" constant="19" id="q4q-Sl-q31"/>
<constraint firstItem="CGQ-Gi-Un9" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" constant="11" id="t35-hH-3J6"/>
<constraint firstAttribute="bottom" secondItem="f9T-ak-TEq" secondAttribute="bottom" constant="12" id="vUz-h7-HUa"/>
<constraint firstItem="f9T-ak-TEq" firstAttribute="leading" secondItem="fSg-ii-Gn4" secondAttribute="trailing" constant="131" id="w9R-Od-Jds"/>
<constraint firstAttribute="trailing" secondItem="FOR-QQ-gKa" secondAttribute="trailing" id="1hS-sz-h5i"/>
<constraint firstAttribute="bottom" secondItem="X2G-su-iPO" secondAttribute="bottom" constant="36" id="4TV-4K-XHc"/>
<constraint firstAttribute="bottom" secondItem="q0Y-Z3-9ec" secondAttribute="bottom" constant="8" id="A5W-wD-rys"/>
<constraint firstAttribute="bottom" secondItem="FAF-XN-Ibv" secondAttribute="bottom" id="ID7-4t-Qds"/>
<constraint firstAttribute="trailing" secondItem="X2G-su-iPO" secondAttribute="trailing" constant="18" id="PcV-pO-aDJ"/>
<constraint firstItem="cWQ-HK-qv1" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" id="QPP-sD-d3D"/>
<constraint firstAttribute="trailing" secondItem="cWQ-HK-qv1" secondAttribute="trailing" id="RaO-A5-Fg4"/>
<constraint firstItem="FAF-XN-Ibv" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" constant="197" id="WXq-V4-xaM"/>
<constraint firstItem="cWQ-HK-qv1" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="Ykn-55-Clv"/>
<constraint firstAttribute="bottom" secondItem="cWQ-HK-qv1" secondAttribute="bottom" id="acN-C1-djR"/>
<constraint firstAttribute="bottom" secondItem="FOR-QQ-gKa" secondAttribute="bottom" id="cBq-Xz-B6M"/>
<constraint firstItem="FOR-QQ-gKa" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="cMD-Hv-jVl"/>
<constraint firstAttribute="trailing" secondItem="FAF-XN-Ibv" secondAttribute="trailing" id="ehg-fz-Uz9"/>
<constraint firstItem="daL-7C-9So" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" constant="42" id="em4-ep-2cI"/>
<constraint firstItem="FOR-QQ-gKa" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" constant="197" id="sTB-V2-3bt"/>
<constraint firstItem="FAF-XN-Ibv" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="vZH-4h-gg3"/>
<constraint firstItem="daL-7C-9So" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" constant="29" id="vsP-VJ-iJv"/>
<constraint firstAttribute="trailing" secondItem="q0Y-Z3-9ec" secondAttribute="trailing" constant="6" id="ydA-5i-Bxb"/>
</constraints>
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
<real key="value" value="0.0"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
<point key="canvasLocation" x="407" y="156"/>
</view>
</objects>
<resources>
<image name="fifty" width="253" height="153"/>
<image name="bg-w" width="290" height="72"/>
<image name="mask" width="290" height="72"/>
<image name="onehundred" width="290" height="144"/>
<image name="used" width="51" height="51"/>
<image name="useing" width="48" height="10"/>
<image name="京东logo" width="56" height="56"/>
</resources>
</document>
......@@ -12,7 +12,7 @@
/**
* 已使用卡劵
* 已激活卡劵、已使用
*/
@property (weak, nonatomic) IBOutlet UICollectionView *beenUseCardCollectionView;
......@@ -21,4 +21,9 @@
*/
@property (weak, nonatomic) IBOutlet UICollectionViewFlowLayout *beenUseLayout;
/**
* 区分已激活还是已使用
*/
@property (nonatomic,copy) NSString *cardState;
@end
......@@ -15,6 +15,7 @@
@property (nonatomic,strong) RsJingDongECardRequest *requestModel;
@property (nonatomic,strong) WYPopoverController *settingsPopoverController;
/**
* 数据源
......@@ -39,7 +40,7 @@
page.rows = 10;
page.order = @"desc";
_requestModel.guideIdEquals = [Shoppersmanager manager].Shoppers.employee.fid;
_requestModel.stateEquals = LOOKED;
_requestModel.stateEquals = self.cardState;
_requestModel.page = page;
}
return _requestModel;
......@@ -53,6 +54,11 @@
return _datasArray;
}
- (void)viewDidAppear:(BOOL)animated
{
[self.beenUseCardCollectionView.mj_header beginRefreshing];
}
- (void)viewDidLoad {
[super viewDidLoad];
......@@ -72,7 +78,6 @@
headerRefresh.stateLabel.hidden = YES;
headerRefresh.lastUpdatedTimeLabel.hidden = YES;
self.beenUseCardCollectionView.mj_header = headerRefresh;
[self.beenUseCardCollectionView.mj_header beginRefreshing];
MJRefreshAutoNormalFooter *footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{
if (++ weakSelf.requestModel.page.page >= weakSelf.totalPage) {
......@@ -87,7 +92,7 @@
}
#pragma mark - 获取已激活卡劵
#pragma mark - 获取卡劵
- (void)getCardDatasAction:(BOOL)isRemove
{
WS(weakSelf);
......@@ -121,6 +126,46 @@
}];
}
#pragma mark - 使用京东卡劵
- (void)useJDECard:(NSString *)JDECardNumber
{
WS(weakSelf);
[self CreateMBProgressHUDLoding];
NSLog(@"%@",[NSString stringWithFormat:SERVERREQUESTURL(USEJDECARD),JDECardNumber]);
[[NetworkRequestClassManager Manager] NetworkWithDictionaryRequestWithURL:[NSString stringWithFormat:SERVERREQUESTURL(USEJDECARD),JDECardNumber] WithRequestType:ZERO WithParameter:nil WithReturnValueBlock:^(id returnValue) {
[weakSelf RemoveMBProgressHUDLoding];
if ([returnValue[@"code"] isEqualToNumber:@0]) {
[weakSelf deleteUsedJDECard:JDECardNumber];
}else{
[weakSelf ErrorMBProgressView:returnValue[@"message"]];
}
} WithErrorCodeBlock:^(id errorCodeValue) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:NETWORK];
} WithFailureBlock:^(NSError *error) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:error.localizedDescription];
}];
}
#pragma mark - 区分已经使用的E卡
- (void)deleteUsedJDECard:(NSString *)eCardNumber
{
///@property (nonatomic, strong) NSMutableArray<TOJingdongEcardEntity> *eCards;
/// 手动改为可变数组
for (int i=0; i<self.datasArray.count; i++) {
GroupByOrderNumber *order = self.datasArray[i];
for (int j=0; j<order.eCards.count; j++) {
TOJingdongEcardEntity *ecard = order.eCards[j];
if ([eCardNumber isEqualToString:ecard.cardNumber]) {
ecard.state = @"used";
[self.beenUseCardCollectionView reloadItemsAtIndexPaths:@[[NSIndexPath indexPathForItem:j inSection:i]]];
}
}
}
}
#pragma mark - UICollectionView
- (void)setupCollectionView
{
......@@ -129,19 +174,12 @@
self.beenUseLayout.minimumLineSpacing = 20;
self.beenUseLayout.minimumInteritemSpacing = 20;
[self.beenUseCardCollectionView registerNib:[UINib nibWithNibName:@"CardOrderInformationReusableView" bundle:nil] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"CardOrderInformationReusableView"];
//** 查看京东卡密码后调用 */
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshList:) name:VIEWPASSWORD object:nil];
}
#pragma mark - 刷新列表
- (void)refreshList:(NSNotification *)sender
{
[self.beenUseCardCollectionView.mj_header beginRefreshing];
}
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
CardCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"CardCollectionViewCelltwohundred" forIndexPath:indexPath];
CardCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"CardCollectionViewCell" forIndexPath:indexPath];
GroupByOrderNumber *model = self.datasArray[indexPath.section];
cell.Cardmodel = model.eCards[indexPath.row];
return cell;
......@@ -173,14 +211,24 @@
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
CardAmplificationViewController *settlement = [[CardAmplificationViewController alloc]init];
settlement.preferredContentSize = CGSizeMake(500, 370);
settlement.modalPresentationStyle = UIModalPresentationFormSheet;
UIPopoverPresentationController *pop = settlement.popoverPresentationController;
pop.sourceView = settlement.view;
CardAmplificationViewController *cardVC = [[CardAmplificationViewController alloc]init];
self.settingsPopoverController = [[WYPopoverController alloc] initWithContentViewController:cardVC];
self.settingsPopoverController.theme.fillBottomColor = [UIColor clearColor];
self.settingsPopoverController.theme.fillTopColor = [UIColor clearColor];
[self.settingsPopoverController presentPopoverAsDialogAnimated:YES
options:WYPopoverAnimationOptionFadeWithScale];
[self.settingsPopoverController beginThemeUpdates];
GroupByOrderNumber *model = self.datasArray[indexPath.section];
settlement.cardModel = model.eCards[indexPath.row];
[self presentViewController:settlement animated:YES completion:nil];
cardVC.cardModel = model.eCards[indexPath.row];
cardVC.preferredContentSize = CGSizeMake(500, 370);
[self.settingsPopoverController endThemeUpdates];
/// 更新E卡状态
WS(weakSelf);
[cardVC setRefreshJDCardList:^(NSString *cardNumber) {
[weakSelf.settingsPopoverController dismissPopoverAnimated:YES completion:^{
[weakSelf useJDECard:cardNumber];
}];
}];
}
#pragma mark -友好界面
......@@ -201,7 +249,6 @@
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)dealloc
......
......@@ -38,7 +38,23 @@
/**
* 遮罩层
*/
@property (nonatomic,strong) UIImageView *maskView;
@property (weak, nonatomic) IBOutlet UIImageView *maskImageView;
/**
* 已使用imageView
*/
@property (weak, nonatomic) IBOutlet UIImageView *usedImageView;
/**
* 去使用Button
*/
@property (weak, nonatomic) IBOutlet UIButton *useingButton;
/**
* 遮罩层View
*/
@property (weak, nonatomic) IBOutlet UIImageView *maskBackGroundView;
@end
......@@ -13,14 +13,11 @@
- (void)awakeFromNib
{
_maskView = [[UIImageView alloc]init];
[self.contentView addSubview:_maskView];
[_maskView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self.cardPasswordLabel);
make.top.equalTo(self.cardPasswordLabel);
make.size.equalTo(self.cardPasswordLabel);
}];
[_maskView setImage:TCImage(@"mask")];
self.layer.shadowColor = [UIColor grayColor].CGColor;
self.layer.shadowRadius = 4;
self.layer.shadowOpacity = 0.3;
self.layer.shadowOffset = CGSizeMake(-1, -1);
self.layer.masksToBounds = NO;
}
......@@ -28,13 +25,49 @@
{
_Cardmodel = Cardmodel;
self.backgroundImageView.image = [BaseViewController getCorrespondingPictures:_Cardmodel.denomation];
self.cardNumberLabel.text = _Cardmodel.cardNumber;
self.cardPasswordLabel.text = _Cardmodel.cardPassword;
//是否已查看
if ([_Cardmodel.state isEqualToString:LOOKED]) {
[self.maskView removeFromSuperview];
self.cardNumberLabel.text = [NSString stringWithFormat:@"卡号: %@",_Cardmodel.cardNumber];
self.cardPasswordLabel.text = [NSString stringWithFormat:@"密码: %@",_Cardmodel.cardPassword];
NSString *totalString = [NSString stringWithFormat:@"%ld元",_Cardmodel.denomation];
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]initWithString:totalString];
[attributedString addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold" size:22] range:NSMakeRange(0, totalString.length-1)];
self.self.amountLabel.attributedText = attributedString;
/// 判断状态
BOOL isUsed = [_Cardmodel.state isEqualToString:LOOKED];
BOOL isActived = [_Cardmodel.state isEqualToString:ACTIVED];
BOOL isDispensed = [_Cardmodel.state isEqualToString:DISPENSED];
if (isDispensed) {
self.usedImageView.hidden = YES;
self.maskImageView.hidden = NO;
self.useingButton.hidden = NO;
}
if (isActived) {
self.usedImageView.hidden = YES;
self.maskImageView.hidden = NO;
self.useingButton.hidden = NO;
}
if (isUsed) {
self.maskImageView.hidden = YES;
self.useingButton.hidden = YES;
self.usedImageView.hidden = NO;
}
self.amountLabel.text = [NSString stringWithFormat:@"¥%ld",_Cardmodel.denomation];
}
@end
......@@ -12,15 +12,21 @@
/**
* 未使用
* 未领取
*/
@property (weak, nonatomic) IBOutlet UIButton *dontUseButton;
/**
* 已使用
* 已领取
*/
@property (weak, nonatomic) IBOutlet UIButton *beenUseButton;
/**
* 已使用
*/
@property (weak, nonatomic) IBOutlet UIButton *isUsedButton;
/**
* 指示线
*/
......
......@@ -30,13 +30,20 @@
#pragma mark - 添加卡劵详情vc
- (void)addChildViewController
{
/// 未领取
CardDontUseViewController *dontUseVc = [[self getStoryboardWithName] instantiateViewControllerWithIdentifier:@"CardDontUseViewController"];
[self addChildViewController:dontUseVc];
/// 已领取
CardBeenUseViewController *beenUseVc = [[self getStoryboardWithName] instantiateViewControllerWithIdentifier:@"CardBeenUseViewController"];
beenUseVc.cardState = ACTIVED;
[self addChildViewController:beenUseVc];
/// 已使用
CardBeenUseViewController *usedVc = [[self getStoryboardWithName] instantiateViewControllerWithIdentifier:@"CardBeenUseViewController"];
usedVc.cardState = LOOKED;
[self addChildViewController:usedVc];
dontUseVc.view.frame = CGRectMake(0, 0, self.cardBackgroundView.mj_w, self.cardBackgroundView.mj_h);
beenUseVc.view.frame = CGRectMake(0, 0, self.cardBackgroundView.mj_w, self.cardBackgroundView.mj_h);
usedVc.view.frame = CGRectMake(0, 0, self.cardBackgroundView.mj_w, self.cardBackgroundView.mj_h);
[self.cardBackgroundView addSubview:dontUseVc.view];
self.currentVC = dontUseVc;
}
......@@ -56,14 +63,31 @@
#pragma mark - 切换ContentController
- (IBAction)paymentsButtonAndWithdrawalButtonClick:(UIButton *)sender {
if ([sender isEqual:self.dontUseButton]) {
sender.selected = YES;
switch (sender.tag) {
case 100:
{
self.beenUseButton.selected = NO;
}else
self.isUsedButton.selected = NO;
}
break;
case 101:
{
sender.selected = YES;
self.dontUseButton.selected = NO;
self.isUsedButton.selected = NO;
}
break;
case 102:
{
self.dontUseButton.selected = NO;
self.beenUseButton.selected = NO;
}
break;
default:
break;
}
sender.selected = YES;
[self setupInstructionsViewOrigin:sender];
[self switchPaymentsVCAndWithdrawalVC:self.childViewControllers[sender.tag-100]];
}
......
......@@ -46,7 +46,7 @@
page.rows = 10;
page.order = @"desc";
_requestModel.guideIdEquals = [Shoppersmanager manager].Shoppers.employee.fid;
_requestModel.stateEquals = [NSString stringWithFormat:@"%@,%@",DISPENSED,ACTIVED];
_requestModel.stateEquals = DISPENSED;
_requestModel.page = page;
}
return _requestModel;
......@@ -60,6 +60,11 @@
return _datasArray;
}
- (void)viewDidAppear:(BOOL)animated
{
[self.dontUseCardCollectionView.mj_header beginRefreshing];
}
- (void)viewDidLoad {
[super viewDidLoad];
......@@ -89,7 +94,6 @@
headerRefresh.stateLabel.hidden = YES;
headerRefresh.lastUpdatedTimeLabel.hidden = YES;
self.dontUseCardCollectionView.mj_header = headerRefresh;
[self.dontUseCardCollectionView.mj_header beginRefreshing];
MJRefreshAutoNormalFooter *footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{
if (++ weakSelf.requestModel.page.page >= weakSelf.totalPage) {
......@@ -139,7 +143,7 @@
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
CardCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"CardCollectionViewCellonehundred" forIndexPath:indexPath];
CardCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"CardCollectionViewCell" forIndexPath:indexPath];
GroupByOrderNumber *model = self.datasArray[indexPath.section];
cell.Cardmodel = model.eCards[indexPath.row];
return cell;
......@@ -174,31 +178,8 @@
{
GroupByOrderNumber *model = self.datasArray[indexPath.section];
if ([[self class] isBlankString:model.orderReceiptUrl]) {
[self SHOWPrompttext:@"不能查看未激活卡劵,请先上传小票激活卡劵"];return;
}
CardAmplificationViewController *settlement = [[CardAmplificationViewController alloc]init];
settlement.preferredContentSize = CGSizeMake(500, 370);
settlement.modalPresentationStyle = UIModalPresentationFormSheet;
UIPopoverPresentationController *pop = settlement.popoverPresentationController;
pop.sourceView = settlement.view;
settlement.cardModel = model.eCards[indexPath.row];
WS(weakSelf);
[settlement setRefreshJDCardList:^(BOOL boolValue,NSString *cardNumber) {
[weakSelf SHOWPrompttext:boolValue?@"领取成功":@"领取失败"];
for (GroupByOrderNumber *model in weakSelf.datasArray) {
for (TOJingdongEcardEntity *cardModel in model.eCards) {
if ([cardModel.cardNumber isEqualToString:cardNumber]) {
NSMutableArray *mutableCard = [NSMutableArray array];
[mutableCard addObjectsFromArray:model.eCards];
[mutableCard removeObject:cardModel];
model.eCards = (NSArray<TOJingdongEcardEntity>*)mutableCard;goto end;
[self SHOWPrompttext:@"不能查看未激活卡劵,请先上传小票激活卡劵"];
}
}
}
end:NSLog(@"跳出");
[[NSNotificationCenter defaultCenter] postNotificationName:VIEWPASSWORD object:nil];
}];
[self presentViewController:settlement animated:YES completion:nil];
}
......@@ -265,7 +246,7 @@
[weakSelf activationJDECard:returnValue[@"data"]];
}else
{
[self ErrorMBProgressView:returnValue[@"message"]];
[weakSelf ErrorMBProgressView:returnValue[@"message"]];
}
} WithprogressBlock:^(double progress) {
[weakSelf ShowProgressView:progress];
......@@ -286,12 +267,7 @@
[weakSelf RemoveMBProgressHUDLoding];
if ([returnValue[@"code"] isEqualToNumber:@0]) {
[weakSelf SuccessMBProgressView:@"激活成功"];
for (GroupByOrderNumber *order in weakSelf.datasArray) {
if ([order.orderNumber isEqualToString:self.orderNumber]) {
order.orderReceiptUrl = imagePath;
[weakSelf.dontUseCardCollectionView reloadSections:[NSIndexSet indexSetWithIndex:[weakSelf.datasArray indexOfObject:order]]];break;
}
}
}else{
[weakSelf ErrorMBProgressView:returnValue[@"message"]];
}
......
......@@ -9,6 +9,7 @@
#import "CardViewController.h"
#import "CardCollectionViewCell.h"
#import "CardDetailsViewController.h"
#import "CardAmplificationViewController.h"
@interface CardViewController ()<UICollectionViewDelegate,UICollectionViewDataSource,DZNEmptyDataSetSource,DZNEmptyDataSetDelegate>
......@@ -17,6 +18,7 @@
//** 数据源 */
@property (nonatomic,strong) NSMutableArray *datasArray;
@property (nonatomic,strong) WYPopoverController *settingsPopoverController;
@end
......@@ -82,6 +84,46 @@
}];
}
#pragma mark - 使用京东卡劵
- (void)useJDECard:(NSString *)JDECardNumber
{
WS(weakSelf);
[self CreateMBProgressHUDLoding];
NSLog(@"%@",[NSString stringWithFormat:SERVERREQUESTURL(USEJDECARD),JDECardNumber]);
[[NetworkRequestClassManager Manager] NetworkWithDictionaryRequestWithURL:[NSString stringWithFormat:SERVERREQUESTURL(USEJDECARD),JDECardNumber] WithRequestType:ZERO WithParameter:nil WithReturnValueBlock:^(id returnValue) {
[weakSelf RemoveMBProgressHUDLoding];
if ([returnValue[@"code"] isEqualToNumber:@0]) {
[weakSelf deleteUsedJDECard:JDECardNumber];
}else{
[weakSelf ErrorMBProgressView:returnValue[@"message"]];
}
} WithErrorCodeBlock:^(id errorCodeValue) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:NETWORK];
} WithFailureBlock:^(NSError *error) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:error.localizedDescription];
}];
}
#pragma mark - 区分已经使用的E卡
- (void)deleteUsedJDECard:(NSString *)eCardNumber
{
///@property (nonatomic, strong) NSMutableArray<TOJingdongEcardEntity> *eCards;
/// 手动改为可变数组
for (int i=0; i<self.datasArray.count; i++) {
GroupByOrderNumber *order = self.datasArray[i];
for (int j=0; j<order.eCards.count; j++) {
TOJingdongEcardEntity *ecard = order.eCards[j];
if ([eCardNumber isEqualToString:ecard.cardNumber]) {
ecard.state = @"used";
[self.cardCollectionView reloadItemsAtIndexPaths:@[[NSIndexPath indexPathForItem:j inSection:i]]];
}
}
}
}
#pragma mark <UICollectionViewDataSource>
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
{
......@@ -90,15 +132,35 @@
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
CardCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"CardCollectionViewCellfifty" forIndexPath:indexPath];
CardCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"CardCollectionViewCell" forIndexPath:indexPath];
cell.Cardmodel = self.datasArray[indexPath.row];
return cell;
}
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
CardDetailsViewController *cardDetails = [[self getStoryboardWithName] instantiateViewControllerWithIdentifier:@"CardDetailsViewController"];
[self.navigationController pushViewController:cardDetails animated:YES];
GroupByOrderNumber *model = self.datasArray[indexPath.section];
if ([[self class] isBlankString:model.orderReceiptUrl]) {
[self SHOWPrompttext:@"不能查看未激活卡劵,请先上传小票激活卡劵"];
}else{
CardAmplificationViewController *cardVC = [[CardAmplificationViewController alloc]init];
self.settingsPopoverController = [[WYPopoverController alloc] initWithContentViewController:cardVC];
self.settingsPopoverController.theme.fillBottomColor = [UIColor clearColor];
self.settingsPopoverController.theme.fillTopColor = [UIColor clearColor];
[self.settingsPopoverController presentPopoverAsDialogAnimated:YES
options:WYPopoverAnimationOptionFadeWithScale];
[self.settingsPopoverController beginThemeUpdates];
cardVC.cardModel = self.datasArray[indexPath.row];
cardVC.preferredContentSize = CGSizeMake(500, 370);
[self.settingsPopoverController endThemeUpdates];
/// 更新E卡状态
WS(weakSelf);
[cardVC setRefreshJDCardList:^(NSString *cardNumber) {
[weakSelf.settingsPopoverController dismissPopoverAnimated:YES completion:^{
[weakSelf useJDECard:cardNumber];
}];
}];
}
}
#pragma mark -友好界面
......
......@@ -238,7 +238,7 @@
NSInteger selectedIndex;
if ([Name isEqualToString:@"体验中心"]) {
[[NSNotificationCenter defaultCenter] postNotificationName:@"FollowHeartVC" object:nil];
[[NSNotificationCenter defaultCenter] postNotificationName:OPENFOLLOWHEARTVC object:nil];
return;
}else if ([Name isEqualToString:@"场景库"])
......
......@@ -23,6 +23,7 @@
#import "PromotionalTableViewCell.h"
#import "JDEcardViewController.h"
#import "WYPopoverController.h"
#import "RebateSuccessTableViewController.h"
NSString *const PROMOTIONALSTRING = @"促销信息";
......@@ -237,16 +238,17 @@ NSString *const lotteryAction = @"lotteryAction";
});
}
#pragma mark - 方法京东E卡
#pragma mark - 发放京东E卡
- (void)issueJDECard:(NSInteger)denomation andGuideId:(NSString *)guideId andOrderNumber:(NSString *)orderNumber
{
WS(weakSelf);
[self CreateMBProgressHUDLoding];
NSLog(@"%@",[NSString stringWithFormat:SERVERREQUESTURL(JDECARD),denomation,guideId,orderNumber]);
[[NetworkRequestClassManager Manager] NetworkWithDictionaryRequestWithURL:[NSString stringWithFormat:SERVERREQUESTURL(JDECARD),denomation,guideId,orderNumber] WithRequestType:0 WithParameter:nil WithReturnValueBlock:^(id returnValue) {
[weakSelf RemoveMBProgressHUDLoding];
if ([returnValue[@"code"] isEqualToNumber:@0]) {
[weakSelf showJDECard];
[weakSelf rebateApplySuccess];
}else{
[weakSelf ErrorMBProgressView:@"京东E卡领取失败"];
}
......@@ -260,6 +262,27 @@ NSString *const lotteryAction = @"lotteryAction";
}];
}
#pragma mark - 卡劵领取成功
- (void)rebateApplySuccess
{
RebateSuccessTableViewController *success = [self.getStoryboardWithName instantiateViewControllerWithIdentifier:@"RebateSuccessTableViewController"];
success.titleArray = @[@"卡劵已发放到你的账户",@"查看账户",@"我知道了"];
[success setClickEvent:^(NSIndexPath *indexPath) {
if (indexPath.row == 1) {
/// 我知道了
}else if (indexPath.row == 0)
{
[[NSNotificationCenter defaultCenter] postNotificationName:OPENCONTROLLER object:@(0)];
}
}];
success.preferredContentSize = CGSizeMake(315, 320);
success.modalPresentationStyle = UIModalPresentationFormSheet;
UIPopoverPresentationController *pop = success.popoverPresentationController;
pop.permittedArrowDirections = UIPopoverArrowDirectionAny;
pop.sourceView = success.view;
[self presentViewController:success animated:YES completion:nil];
}
#pragma mark - 显示京东E卡
- (void)showJDECard
{
......@@ -590,23 +613,30 @@ NSString *const lotteryAction = @"lotteryAction";
#pragma mark -打印订单
- (void)AirprintButtonClick:(UIButton *)button
{
WS(weakSelf);
[self DownloadPDF:^(id Value) {
[weakSelf CreateMBProgressHUDLoding];
[[NetworkRequestClassManager Manager] DownloadPDFdatasWithURL:Value WithReturnValueBlock:^(id returnValue) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf callAirprintWithdata:returnValue SuccessBlock:^{
[weakSelf SuccessMBProgressView:@"打印完成"];
// WS(weakSelf);
// [self DownloadPDF:^(id Value) {
// [weakSelf CreateMBProgressHUDLoding];
// [[NetworkRequestClassManager Manager] DownloadPDFdatasWithURL:Value WithReturnValueBlock:^(id returnValue) {
// [weakSelf RemoveMBProgressHUDLoding];
// [weakSelf callAirprintWithdata:returnValue SuccessBlock:^{
// [weakSelf SuccessMBProgressView:@"打印完成"];
// } ErrorBlock:^{
// [weakSelf ErrorMBProgressView:@"打印失败"];
// }];
// } WithErrorCodeBlock:^(id errorCodeValue) {
// [weakSelf RemoveMBProgressHUDLoding];
// [weakSelf ErrorMBProgressView:NETWORK];
// } WithFailureBlock:^(NSError *error) {
// [weakSelf RemoveMBProgressHUDLoding];
// [weakSelf ErrorMBProgressView:error.localizedDescription];
// }];
// }];
[self callAirprintWithURL:[NSURL URLWithString:@"https://www.baidu.com"] SuccessBlock:^{
} ErrorBlock:^{
[weakSelf ErrorMBProgressView:@"打印失败"];
}];
} WithErrorCodeBlock:^(id errorCodeValue) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:NETWORK];
} WithFailureBlock:^(NSError *error) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:error.localizedDescription];
}];
}];
}
......@@ -614,22 +644,24 @@ NSString *const lotteryAction = @"lotteryAction";
#pragma mark -下载PDF
- (void)DownloadPDF:(void(^)(id returnValue))success
{
WS(weakSelf);
[self CreateMBProgressHUDLoding];
// NSLog(@"%@",[NSString stringWithFormat:@"%@%@",SERVERREQUESTURL(DOWNLOADPDF),_orderCode]);
[[NetworkRequestClassManager Manager] NetworkWithDictionaryRequestWithURL:[NSString stringWithFormat:@"%@%@",SERVERREQUESTURL(DOWNLOADPDF),_orderCode] WithRequestType:1 WithParameter:nil WithReturnValueBlock:^(id returnValue) {
[weakSelf RemoveMBProgressHUDLoding];
NSString *url = [NSString stringWithFormat:@"%@",returnValue[@"data"]];
success(url);
// WS(weakSelf);
// [self CreateMBProgressHUDLoding];
//// NSLog(@"%@",[NSString stringWithFormat:@"%@%@",SERVERREQUESTURL(DOWNLOADPDF),_orderCode]);
// [[NetworkRequestClassManager Manager] NetworkWithDictionaryRequestWithURL:[NSString stringWithFormat:@"%@%@",SERVERREQUESTURL(DOWNLOADPDF),_orderCode] WithRequestType:1 WithParameter:nil WithReturnValueBlock:^(id returnValue) {
//
// [weakSelf RemoveMBProgressHUDLoding];
// NSString *url = [NSString stringWithFormat:@"%@",returnValue[@"data"]];
// success(url);
//
// } WithErrorCodeBlock:^(id errorCodeValue) {
// [weakSelf RemoveMBProgressHUDLoding];
// [weakSelf ErrorMBProgressView:NETWORK];
// } WithFailureBlock:^(NSError *error) {
// [weakSelf RemoveMBProgressHUDLoding];
// [weakSelf ErrorMBProgressView:error.localizedDescription];
// }];
success(@"https://www.baidu.com");
} WithErrorCodeBlock:^(id errorCodeValue) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:NETWORK];
} WithFailureBlock:^(NSError *error) {
[weakSelf RemoveMBProgressHUDLoding];
[weakSelf ErrorMBProgressView:error.localizedDescription];
}];
}
#pragma mark -预览订单、撤销订单
......
//
// PromptHeaderTableViewCell.h
// Lighting
//
// Created by 曹云霄 on 2016/11/2.
// Copyright © 2016年 上海勾芒科技有限公司. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface PromptHeaderTableViewCell : UITableViewCell
@property (weak, nonatomic) IBOutlet UILabel *headerViewContentLabel;
@end
//
// PromptHeaderTableViewCell.m
// Lighting
//
// Created by 曹云霄 on 2016/11/2.
// Copyright © 2016年 上海勾芒科技有限公司. All rights reserved.
//
#import "PromptHeaderTableViewCell.h"
@implementation PromptHeaderTableViewCell
- (void)awakeFromNib {
[super awakeFromNib];
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
@end
//
// PromptTableViewCell.h
// Lighting
//
// Created by 曹云霄 on 2016/11/2.
// Copyright © 2016年 上海勾芒科技有限公司. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface PromptTableViewCell : UITableViewCell
/**
* 显示文本
*/
@property (weak, nonatomic) IBOutlet UILabel *contentLabel;
@end
//
// PromptTableViewCell.m
// Lighting
//
// Created by 曹云霄 on 2016/11/2.
// Copyright © 2016年 上海勾芒科技有限公司. All rights reserved.
//
#import "PromptTableViewCell.h"
@implementation PromptTableViewCell
- (void)awakeFromNib {
[super awakeFromNib];
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
@end
......@@ -78,6 +78,7 @@
{
WS(weakSelf);
RebateSuccessTableViewController *success = [self.getStoryboardWithName instantiateViewControllerWithIdentifier:@"RebateSuccessTableViewController"];
success.titleArray = @[@"提现申请已提交,审核中",@"查看详情",@"返回账户"];
[success setClickEvent:^(NSIndexPath *indexPath) {
if (indexPath.row == 1) {
[weakSelf.navigationController popViewControllerAnimated:YES];
......
......@@ -15,6 +15,11 @@
*/
@property (nonatomic,copy) void(^ClickEvent)(NSIndexPath *indexPath);
/**
* 数据源
*/
@property (nonatomic,strong) NSArray *titleArray;
@end
......@@ -7,13 +7,11 @@
//
#import "RebateSuccessTableViewController.h"
#import "PromptTableViewCell.h"
#import "PromptHeaderTableViewCell.h"
@interface RebateSuccessTableViewController ()
///
@property (weak, nonatomic) IBOutlet UITableViewRowAction *showRebateDetailsCell;
@property (weak, nonatomic) IBOutlet UITableViewRowAction *backAccountCell;
@end
@implementation RebateSuccessTableViewController
......@@ -24,13 +22,42 @@
self.tableView.tableFooterView = [UIView new];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return self.titleArray.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.row == 0) {
PromptHeaderTableViewCell *headerView = [tableView dequeueReusableCellWithIdentifier:@"PromptHeaderTableViewCell" forIndexPath:indexPath];
headerView.headerViewContentLabel.text = self.titleArray[indexPath.row];
return headerView;
}
PromptTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"PromptTableViewCell" forIndexPath:indexPath];
cell.contentLabel.text = self.titleArray[indexPath.row];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView deselectRowAtIndexPath:indexPath animated:YES];
[self dismissViewControllerAnimated:YES completion:nil];
if (self.ClickEvent) {
self.ClickEvent(indexPath);
if (indexPath.row == 0) {
return;
}
WS(weakSelf);
[self dismissViewControllerAnimated:YES completion:^{
if (weakSelf.ClickEvent) {
weakSelf.ClickEvent([NSIndexPath indexPathForRow:indexPath.row-1 inSection:0]);
}
}];
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.row == 0) {
return 150;
}
return 68;
}
......
......@@ -106,9 +106,9 @@
self.delegate = self;
[self.tabBar addSubview:self.toolview];
//显示体验中心
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(ShowFollowHeart:) name:@"FollowHeartVC" object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(ShowFollowHeart:) name:OPENFOLLOWHEARTVC object:nil];
//2016年08月26日15:52:28显示我的账户
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(showMyAccountController:) name:@"ShowMyAccountVC" object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(openControllerWithIndex:) name:OPENCONTROLLER object:nil];
}
......@@ -334,7 +334,6 @@
}
}
#pragma mark -推出体验中心控制器
- (void)ShowFollowHeart:(NSNotification *)objc
{
......@@ -361,11 +360,12 @@
}
}
#pragma mark - 显示我的账户
- (void)showMyAccountController:(NSNotification *)sender
#pragma mark - 打开相应的控制器
- (void)openControllerWithIndex:(NSNotification *)sender
{
NSInteger index = [sender.object integerValue];
[self dismissViewControllerAnimated:NO completion:nil];
self.selectedIndex = 0;
self.selectedIndex = index;
}
@end
......@@ -70,7 +70,7 @@
#pragma mark -返利余额点击
- (void)rebateViewClickAction:(UITapGestureRecognizer *)tap
{
[[NSNotificationCenter defaultCenter] postNotificationName:@"ShowMyAccountVC" object:nil];
[[NSNotificationCenter defaultCenter] postNotificationName:OPENCONTROLLER object:@(0)];
}
#pragma mark -用户头像点击
......
......@@ -19,6 +19,7 @@
04F9EE221CF27B1D00BD729F /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 04F9EE211CF27B1D00BD729F /* CoreTelephony.framework */; };
04FCB1A41CF60A8F0056093B /* DeviceDirectionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 04FCB1A31CF60A8F0056093B /* DeviceDirectionManager.m */; };
2903F93D1DBE57F4003CC6B1 /* JDEcardViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2903F93C1DBE57F4003CC6B1 /* JDEcardViewController.m */; };
29045F321DCA192700E42A86 /* PromptHeaderTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 29045F311DCA192700E42A86 /* PromptHeaderTableViewCell.m */; };
2904BA431DBEF3A200FB473A /* OrderRecordViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2904BA421DBEF3A200FB473A /* OrderRecordViewController.m */; };
2906B5D71CD89246000849B4 /* ClientDetailsTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 2906B5D61CD89246000849B4 /* ClientDetailsTableViewCell.m */; };
290887061CE58BC2000B7097 /* screeningButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 290887051CE58BC2000B7097 /* screeningButton.m */; };
......@@ -132,6 +133,7 @@
29A938271CDAE31B00F21E54 /* ProductDetailsHeaderView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 29A938261CDAE31B00F21E54 /* ProductDetailsHeaderView.xib */; };
29A974CA1D72F9C80012AFA1 /* RebateSuccessTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 29A974C91D72F9C80012AFA1 /* RebateSuccessTableViewController.m */; };
29A9DCAE1CEB643C00A7567A /* PDFViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 29A9DCAC1CEB643C00A7567A /* PDFViewController.m */; };
29BAA3AB1DC9FB5B00927D04 /* PromptTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 29BAA3AA1DC9FB5B00927D04 /* PromptTableViewCell.m */; };
29BB27681CD9D38E009A0813 /* AllpriceTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 29BB27671CD9D38E009A0813 /* AllpriceTableViewCell.m */; };
29BB27741CD9DFAC009A0813 /* SceneLibraryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 29BB27731CD9DFAC009A0813 /* SceneLibraryViewController.m */; };
29BB27771CD9DFBA009A0813 /* ProductLibraryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 29BB27761CD9DFBA009A0813 /* ProductLibraryViewController.m */; };
......@@ -201,6 +203,8 @@
075FDF6809C755AD73136F27 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = "Pods/Target Support Files/Pods/Pods.release.xcconfig"; sourceTree = "<group>"; };
2903F93B1DBE57F4003CC6B1 /* JDEcardViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JDEcardViewController.h; sourceTree = "<group>"; };
2903F93C1DBE57F4003CC6B1 /* JDEcardViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JDEcardViewController.m; sourceTree = "<group>"; };
29045F301DCA192700E42A86 /* PromptHeaderTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PromptHeaderTableViewCell.h; sourceTree = "<group>"; };
29045F311DCA192700E42A86 /* PromptHeaderTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PromptHeaderTableViewCell.m; sourceTree = "<group>"; };
2904BA411DBEF3A200FB473A /* OrderRecordViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OrderRecordViewController.h; sourceTree = "<group>"; };
2904BA421DBEF3A200FB473A /* OrderRecordViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OrderRecordViewController.m; sourceTree = "<group>"; };
2906B5D51CD89246000849B4 /* ClientDetailsTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClientDetailsTableViewCell.h; sourceTree = "<group>"; };
......@@ -419,6 +423,8 @@
29A974C91D72F9C80012AFA1 /* RebateSuccessTableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RebateSuccessTableViewController.m; sourceTree = "<group>"; };
29A9DCAB1CEB643C00A7567A /* PDFViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PDFViewController.h; sourceTree = "<group>"; };
29A9DCAC1CEB643C00A7567A /* PDFViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PDFViewController.m; sourceTree = "<group>"; };
29BAA3A91DC9FB5B00927D04 /* PromptTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PromptTableViewCell.h; sourceTree = "<group>"; };
29BAA3AA1DC9FB5B00927D04 /* PromptTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PromptTableViewCell.m; sourceTree = "<group>"; };
29BB27661CD9D38E009A0813 /* AllpriceTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AllpriceTableViewCell.h; sourceTree = "<group>"; };
29BB27671CD9D38E009A0813 /* AllpriceTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AllpriceTableViewCell.m; sourceTree = "<group>"; };
29BB27721CD9DFAC009A0813 /* SceneLibraryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SceneLibraryViewController.h; sourceTree = "<group>"; };
......@@ -672,6 +678,10 @@
2916A74B1D703DFF00644C8C /* PaymentsTableViewCell.m */,
2916A74D1D703E4F00644C8C /* WithdrawalTableViewCell.h */,
2916A74E1D703E4F00644C8C /* WithdrawalTableViewCell.m */,
29BAA3A91DC9FB5B00927D04 /* PromptTableViewCell.h */,
29BAA3AA1DC9FB5B00927D04 /* PromptTableViewCell.m */,
29045F301DCA192700E42A86 /* PromptHeaderTableViewCell.h */,
29045F311DCA192700E42A86 /* PromptHeaderTableViewCell.m */,
);
name = Cells;
sourceTree = "<group>";
......@@ -1782,6 +1792,7 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
29045F321DCA192700E42A86 /* PromptHeaderTableViewCell.m in Sources */,
2980AEC51D0D0B10001AA4A3 /* opple_objc_json_client.m in Sources */,
2916A7521D70557400644C8C /* PaymentsDetailsTableViewController.m in Sources */,
29E2D3241DB878F200443170 /* XLPlainFlowLayout.m in Sources */,
......@@ -1855,6 +1866,7 @@
29360C2F1CDDC47E002A5D89 /* ScreeningView.m in Sources */,
2985AEA21CE72F1500704C91 /* NSDictionary+ZXPUnicode.m in Sources */,
29498C601D053B7C004FA79B /* ShoppingBagTableViewCell.m in Sources */,
29BAA3AB1DC9FB5B00927D04 /* PromptTableViewCell.m in Sources */,
29EAAE9C1CDC74CA00C4DBA2 /* AllCustomerViewController.m in Sources */,
2933934F1CD3158B000D997B /* instructionsLabe.m in Sources */,
29F726011CE1D05D0072FE0E /* ScreeningCollectionReusableView.m in Sources */,
......@@ -2029,8 +2041,8 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = "Brand Assets";
CLANG_ENABLE_OBJC_WEAK = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_IDENTITY = "iPhone Developer: 云霄 曹 (WM8ZU7YY98)";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer: 云霄 曹 (WM8ZU7YY98)";
COMPRESS_PNG_FILES = NO;
ENABLE_BITCODE = NO;
FRAMEWORK_SEARCH_PATHS = "$(inherited)";
......@@ -2072,7 +2084,7 @@
);
PRODUCT_BUNDLE_IDENTIFIER = com.gomore.opple;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE = "";
PROVISIONING_PROFILE = "ce8104e7-12c7-4aa2-a135-c4d3731e559c";
STRIP_PNG_TEXT = NO;
TARGETED_DEVICE_FAMILY = 2;
USER_HEADER_SEARCH_PATHS = "$(PODS_ROOT)/**";
......@@ -2086,8 +2098,8 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = "Brand Assets";
CLANG_ENABLE_OBJC_WEAK = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_IDENTITY = "iPhone Developer: 云霄 曹 (WM8ZU7YY98)";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer: 云霄 曹 (WM8ZU7YY98)";
COMPRESS_PNG_FILES = NO;
ENABLE_BITCODE = NO;
FRAMEWORK_SEARCH_PATHS = "$(inherited)";
......@@ -2129,7 +2141,7 @@
);
PRODUCT_BUNDLE_IDENTIFIER = com.gomore.opple;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE = "";
PROVISIONING_PROFILE = "ce8104e7-12c7-4aa2-a135-c4d3731e559c";
STRIP_PNG_TEXT = NO;
TARGETED_DEVICE_FAMILY = 2;
USER_HEADER_SEARCH_PATHS = "$(PODS_ROOT)/**";
......
......@@ -20,6 +20,7 @@
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
//bug检测
[Bugly startWithAppId:@"900033734"];
//检测版本更新
......
{
"images" : [
{
"idiom" : "universal",
"filename" : "140046029-MX260-D112-03-星冠-5700K(2).png",
"scale" : "1x"
},
{
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "140046029-MX260-D112-03-星冠-5700K(4).png",
"scale" : "1x"
},
{
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "Cog.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "Cog@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "Error.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "Error@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "Error@3x.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "ScannerViewController.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "ScannerViewController@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "View.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "View@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "bg-img 副本.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
......@@ -2,15 +2,17 @@
"images" : [
{
"idiom" : "universal",
"filename" : "backView.png",
"filename" : "bg-w.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "bg-w@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "bg-w@3x.png",
"scale" : "3x"
}
],
......
{
"images" : [
{
"idiom" : "universal",
"filename" : "business.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "business@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "7.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "7@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "data.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "data@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "icon-副本.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "icon-副本@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "icon.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "icon@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
......@@ -2,16 +2,17 @@
"images" : [
{
"idiom" : "universal",
"filename" : "10-副本.png",
"filename" : "used.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "10-副本@2x.png",
"filename" : "used@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "used@3x.png",
"scale" : "3x"
}
],
......
......@@ -2,16 +2,17 @@
"images" : [
{
"idiom" : "universal",
"filename" : "box.png",
"filename" : "useing.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "box@2x.png",
"filename" : "useing@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "useing@3x.png",
"scale" : "3x"
}
],
......
{
"images" : [
{
"idiom" : "universal",
"filename" : "¥-副本.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "¥-副本@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
......@@ -2,16 +2,17 @@
"images" : [
{
"idiom" : "universal",
"filename" : "1.png",
"filename" : "京东logo.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "1@2x.png",
"filename" : "京东logo@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "京东logo@3x.png",
"scale" : "3x"
}
],
......
{
"images" : [
{
"idiom" : "universal",
"filename" : "圆角矩形-2-副本-2.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "圆角矩形-2-副本-2@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "圆角矩形-3-副本.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "圆角矩形-3-副本@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "欧普照明零售全渠道营销平台@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
{
"images" : [
{
"idiom" : "universal",
"filename" : "矩形-3-副本.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "矩形-3-副本@2x.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="10117" systemVersion="16A323" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="10117" systemVersion="16B2555" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none">
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/>
</dependencies>
......@@ -2562,7 +2562,7 @@
<rect key="frame" x="0.0" y="0.0" width="768" height="1024"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" dataMode="prototypes" id="1s4-ZY-Qaj">
<collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" id="1s4-ZY-Qaj">
<rect key="frame" x="0.0" y="0.0" width="768" height="1024"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
......@@ -2573,60 +2573,84 @@
<inset key="sectionInset" minX="0.0" minY="0.0" maxX="0.0" maxY="0.0"/>
</collectionViewFlowLayout>
<cells>
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="CardCollectionViewCellfifty" id="r8R-Zl-kft" customClass="CardCollectionViewCell">
<rect key="frame" x="0.0" y="0.0" width="240" height="140"/>
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="CardCollectionViewCell" id="ePG-OR-WbX" customClass="CardCollectionViewCell">
<rect key="frame" x="0.0" y="0.0" width="324" height="186"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
<rect key="frame" x="0.0" y="0.0" width="240" height="140"/>
<rect key="frame" x="0.0" y="0.0" width="324" height="186"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="fifty" id="6Hj-Wk-jG7">
<rect key="frame" x="0.0" y="0.0" width="240" height="140"/>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="onehundred" id="SKx-H8-PKb">
<rect key="frame" x="0.0" y="0.0" width="324" height="186"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12345678" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="1GL-Ec-jDh">
<rect key="frame" x="18" y="57" width="204" height="27"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="京东logo" id="usy-MP-pGh">
<rect key="frame" x="13" y="27" width="50" height="50"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
</imageView>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="bg-w" id="bpG-fL-VkK">
<rect key="frame" x="0.0" y="106" width="324" height="80"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" heightSizable="YES"/>
</imageView>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="used" id="kVT-Bx-Ei0">
<rect key="frame" x="272" y="136" width="40" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="50元" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="4nv-JJ-TfD">
<rect key="frame" x="233" y="33" width="80" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" alpha="0.29999999999999999" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2FF0-3F9D-DCC6-D1CD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="sPE-Tw-LX3">
<rect key="frame" x="12" y="115" width="112" height="17"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<color key="backgroundColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="system" pointSize="9"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="京东E卡" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="GYJ-GO-Cch">
<rect key="frame" x="263" y="60" width="50" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="10"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥200" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="w6a-NA-aZD">
<rect key="frame" x="168" y="110" width="64" height="27"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="卡号: 12345678987643677" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="P9I-FB-Tbb">
<rect key="frame" x="13" y="134" width="183" height="17"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="9"/>
<color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" alpha="0.75" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="京东E卡" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="ajM-q9-0XR">
<rect key="frame" x="12" y="8" width="60" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="Oel-pL-HCW">
<rect key="frame" x="268" y="159" width="48" height="22.5"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<state key="normal" image="useing"/>
</button>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="密码: 2FF0-3F9D-DCC6-D1CD" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Wgk-z8-eG9">
<rect key="frame" x="13" y="157" width="183" height="13"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="9"/>
<color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mask" id="Utj-YQ-0Me">
<rect key="frame" x="0.0" y="106" width="324" height="80"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" heightSizable="YES"/>
</imageView>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</view>
<size key="customSize" width="324" height="186"/>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
<real key="value" value="5"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
<connections>
<outlet property="amountLabel" destination="w6a-NA-aZD" id="Gmj-CM-8bm"/>
<outlet property="backgroundImageView" destination="6Hj-Wk-jG7" id="4Lv-Z7-A0Z"/>
<outlet property="cardNumberLabel" destination="1GL-Ec-jDh" id="HCX-JX-uum"/>
<outlet property="cardPasswordLabel" destination="sPE-Tw-LX3" id="YRz-ny-1Oa"/>
<outlet property="amountLabel" destination="4nv-JJ-TfD" id="Gxp-b2-wr7"/>
<outlet property="backgroundImageView" destination="SKx-H8-PKb" id="bpJ-5L-biu"/>
<outlet property="cardNumberLabel" destination="P9I-FB-Tbb" id="vkn-vw-PGI"/>
<outlet property="cardPasswordLabel" destination="Wgk-z8-eG9" id="aOq-vq-uKJ"/>
<outlet property="maskBackGroundView" destination="bpG-fL-VkK" id="wDs-7a-A4l"/>
<outlet property="maskImageView" destination="Utj-YQ-0Me" id="kQn-iL-MLf"/>
<outlet property="usedImageView" destination="kVT-Bx-Ei0" id="PBI-rs-r1C"/>
<outlet property="useingButton" destination="Oel-pL-HCW" id="rp1-Gn-ZdK"/>
</connections>
</collectionViewCell>
</cells>
......@@ -2659,7 +2683,7 @@
<rect key="frame" x="34" y="89" width="88" height="30"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" weight="medium" pointSize="15"/>
<state key="normal" title="未使用">
<state key="normal" title="待领取">
<color key="titleColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="selected">
......@@ -2669,8 +2693,7 @@
<userDefinedRuntimeAttribute type="boolean" keyPath="selected" value="YES"/>
</userDefinedRuntimeAttributes>
<connections>
<action selector="paymentsButtonAndWithdrawalButtonClick:" destination="77g-0u-pMo" eventType="touchUpInside" id="Tek-6D-sRb"/>
<action selector="paymentsButtonAndWithdrawalButtonClick:" destination="fEO-A3-cQG" eventType="touchUpInside" id="gLE-gD-Cef"/>
<action selector="paymentsButtonAndWithdrawalButtonClick:" destination="fEO-A3-cQG" eventType="touchUpInside" id="X2P-Q8-1HM"/>
</connections>
</button>
<view contentMode="scaleToFill" id="Q8j-Aa-ntw">
......@@ -2683,29 +2706,43 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</view>
<button opaque="NO" tag="102" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="rLt-Gi-G4k">
<rect key="frame" x="226" y="89" width="88" height="30"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" weight="medium" pointSize="15"/>
<state key="normal" title="已使用">
<color key="titleColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="selected">
<color key="titleColor" red="0.2156862745" green="0.46274509800000002" blue="0.6705882353" alpha="1" colorSpace="calibratedRGB"/>
</state>
<connections>
<action selector="paymentsButtonAndWithdrawalButtonClick:" destination="fEO-A3-cQG" eventType="touchUpInside" id="x2Q-ID-KBw"/>
</connections>
</button>
<button opaque="NO" tag="101" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="Bod-h4-0Gc">
<rect key="frame" x="130" y="89" width="88" height="30"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" weight="medium" pointSize="15"/>
<state key="normal" title="已使用">
<state key="normal" title="已领取">
<color key="titleColor" white="0.66666666666666663" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="selected">
<color key="titleColor" red="0.2156862745" green="0.46274509800000002" blue="0.6705882353" alpha="1" colorSpace="calibratedRGB"/>
</state>
<connections>
<action selector="paymentsButtonAndWithdrawalButtonClick:" destination="fEO-A3-cQG" eventType="touchUpInside" id="7ql-As-adZ"/>
<action selector="paymentsButtonAndWithdrawalButtonClick:" destination="77g-0u-pMo" eventType="touchUpInside" id="CVA-TO-VGM"/>
<action selector="paymentsButtonAndWithdrawalButtonClick:" destination="fEO-A3-cQG" eventType="touchUpInside" id="nef-eu-d7R"/>
</connections>
</button>
</subviews>
<color key="backgroundColor" red="0.93725490196078431" green="0.93725490196078431" blue="0.93725490196078431" alpha="1" colorSpace="calibratedRGB"/>
</view>
<connections>
<outlet property="beenUseButton" destination="Bod-h4-0Gc" id="3Wh-oW-amM"/>
<outlet property="beenUseButton" destination="Bod-h4-0Gc" id="unN-wm-ppI"/>
<outlet property="cardBackgroundView" destination="PM0-aT-gnI" id="R7E-Tc-yuZ"/>
<outlet property="dontUseButton" destination="HGx-bG-vPP" id="lID-8K-uxa"/>
<outlet property="dontUseButton" destination="HGx-bG-vPP" id="mRp-zf-S5z"/>
<outlet property="instructionsLineView" destination="Q8j-Aa-ntw" id="Akn-AA-rM8"/>
<outlet property="isUsedButton" destination="rLt-Gi-G4k" id="FQB-OO-h1F"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="I7U-4M-r81" userLabel="First Responder" sceneMemberID="firstResponder"/>
......@@ -2725,66 +2762,90 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="10" minimumInteritemSpacing="10" id="Wsz-hw-uVI">
<size key="itemSize" width="261" height="147"/>
<size key="itemSize" width="324" height="186"/>
<size key="headerReferenceSize" width="0.0" height="0.0"/>
<size key="footerReferenceSize" width="0.0" height="0.0"/>
<inset key="sectionInset" minX="0.0" minY="0.0" maxX="0.0" maxY="0.0"/>
</collectionViewFlowLayout>
<cells>
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="CardCollectionViewCellonehundred" id="XGr-el-Iwg" customClass="CardCollectionViewCell">
<rect key="frame" x="0.0" y="0.0" width="261" height="147"/>
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="CardCollectionViewCell" id="otn-06-rtZ" customClass="CardCollectionViewCell">
<rect key="frame" x="0.0" y="0.0" width="324" height="186"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
<rect key="frame" x="0.0" y="0.0" width="261" height="147"/>
<rect key="frame" x="0.0" y="0.0" width="324" height="186"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="onehundred" id="Tbp-6U-3i4">
<rect key="frame" x="0.0" y="0.0" width="261" height="147"/>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="onehundred" id="LSM-l9-F9b">
<rect key="frame" x="0.0" y="0.0" width="324" height="186"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥100" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="qC1-H1-5oH">
<rect key="frame" x="182" y="115" width="67" height="27"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="20"/>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="京东logo" id="VdS-Mk-Wlv">
<rect key="frame" x="17" y="27" width="60" height="60"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
</imageView>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="bg-w" id="08w-I7-6Cv">
<rect key="frame" x="0.0" y="106" width="324" height="80"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="50元" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="i1s-Gw-4Oq">
<rect key="frame" x="226" y="38" width="80" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12345678" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="8Tj-Qd-TJg">
<rect key="frame" x="28" y="60" width="204" height="27"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="20"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="京东E卡" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="CxM-Sc-q28">
<rect key="frame" x="256" y="61" width="50" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="12"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" alpha="0.75" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="京东E卡" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="miw-3m-Zfn">
<rect key="frame" x="12" y="8" width="60" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="卡号: 12345678987643677" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="84x-Z3-2D8">
<rect key="frame" x="17" y="126" width="183" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="12"/>
<color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" alpha="0.29999999999999999" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2FF0-3F9D-DCC6-D1CD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="QfX-d3-D3B">
<rect key="frame" x="8" y="122" width="122" height="17"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<color key="backgroundColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="system" pointSize="10"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="BRU-ac-da2">
<rect key="frame" x="258" y="159" width="48" height="22"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<state key="normal" image="useing"/>
</button>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="密码: 2FF0-3F9D-DCC6-D1CD" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="j4H-VG-erX">
<rect key="frame" x="17" y="150" width="183" height="13"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="12"/>
<color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="used" id="p5o-1q-5XY">
<rect key="frame" x="236" y="112" width="70" height="70"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
</imageView>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mask" id="oQU-QJ-i6w">
<rect key="frame" x="0.0" y="106" width="324" height="80"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
</imageView>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</view>
<size key="customSize" width="324" height="186"/>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
<real key="value" value="5"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
<connections>
<outlet property="amountLabel" destination="qC1-H1-5oH" id="4JG-r3-CYi"/>
<outlet property="backgroundImageView" destination="Tbp-6U-3i4" id="yeW-jk-Xx3"/>
<outlet property="cardNumberLabel" destination="8Tj-Qd-TJg" id="q9O-lX-4Fh"/>
<outlet property="cardPasswordLabel" destination="QfX-d3-D3B" id="7jR-pd-seA"/>
<outlet property="amountLabel" destination="i1s-Gw-4Oq" id="aVn-1S-4Qq"/>
<outlet property="backgroundImageView" destination="LSM-l9-F9b" id="7EZ-47-eWP"/>
<outlet property="cardNumberLabel" destination="84x-Z3-2D8" id="agh-rb-avg"/>
<outlet property="cardPasswordLabel" destination="j4H-VG-erX" id="Qly-CT-iCx"/>
<outlet property="maskBackGroundView" destination="08w-I7-6Cv" id="ILN-ky-OkE"/>
<outlet property="maskImageView" destination="oQU-QJ-i6w" id="rTS-4k-i9c"/>
<outlet property="usedImageView" destination="oQU-QJ-i6w" id="C4x-BR-xSL"/>
<outlet property="useingButton" destination="BRU-ac-da2" id="iZ9-8Z-9p5"/>
</connections>
</collectionViewCell>
</cells>
......@@ -2824,61 +2885,84 @@
<inset key="sectionInset" minX="0.0" minY="0.0" maxX="0.0" maxY="0.0"/>
</collectionViewFlowLayout>
<cells>
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="CardCollectionViewCelltwohundred" id="TW8-pX-Kur" customClass="CardCollectionViewCell">
<rect key="frame" x="0.0" y="0.0" width="261" height="147"/>
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="CardCollectionViewCell" id="54d-oP-UPH" customClass="CardCollectionViewCell">
<rect key="frame" x="0.0" y="0.0" width="324" height="186"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
<rect key="frame" x="0.0" y="0.0" width="261" height="147"/>
<rect key="frame" x="0.0" y="0.0" width="324" height="186"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="twohundred" id="P4B-IO-eCX">
<rect key="frame" x="0.0" y="0.0" width="261" height="147"/>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="onehundred" id="aWj-G4-DSb">
<rect key="frame" x="0.0" y="0.0" width="324" height="186"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥200" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="PlE-P1-Jeb">
<rect key="frame" x="182" y="117" width="67" height="27"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="20"/>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="京东logo" id="ph4-IK-i3k">
<rect key="frame" x="17" y="27" width="60" height="60"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
</imageView>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="bg-w" id="m5I-AX-mXf">
<rect key="frame" x="0.0" y="106" width="324" height="80"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="50元" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="OYM-Fv-oij">
<rect key="frame" x="226" y="38" width="80" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12345678" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Idh-cJ-lrv">
<rect key="frame" x="25" y="60" width="211" height="27"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="20"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="京东E卡" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="EJO-oU-eh4">
<rect key="frame" x="256" y="61" width="50" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="12"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" alpha="0.75" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="京东E卡" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="tGi-bz-BT1">
<rect key="frame" x="12" y="8" width="60" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="卡号: 12345678987643677" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="7h1-Dr-kSe">
<rect key="frame" x="17" y="126" width="183" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="12"/>
<color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" alpha="0.29999999999999999" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2FF0-3F9D-DCC6-D1CD" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="4s8-VQ-d4n">
<rect key="frame" x="8" y="122" width="122" height="17"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<color key="backgroundColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="system" pointSize="10"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="O2P-mO-Dw4">
<rect key="frame" x="258" y="159" width="48" height="22"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<state key="normal" image="useing"/>
</button>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="密码: 2FF0-3F9D-DCC6-D1CD" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="N4c-E5-FG0">
<rect key="frame" x="17" y="150" width="183" height="13"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="12"/>
<color key="textColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="used" id="8xL-mY-9E8">
<rect key="frame" x="236" y="112" width="70" height="70"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
</imageView>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="mask" id="eYY-eT-fub">
<rect key="frame" x="0.0" y="106" width="324" height="80"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
</imageView>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</view>
<size key="customSize" width="261" height="147"/>
<size key="customSize" width="324" height="186"/>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
<real key="value" value="5"/>
</userDefinedRuntimeAttribute>
</userDefinedRuntimeAttributes>
<connections>
<outlet property="amountLabel" destination="PlE-P1-Jeb" id="xoq-oz-o12"/>
<outlet property="backgroundImageView" destination="P4B-IO-eCX" id="zk9-5r-Luc"/>
<outlet property="cardNumberLabel" destination="Idh-cJ-lrv" id="Y0J-D9-Kzn"/>
<outlet property="cardPasswordLabel" destination="4s8-VQ-d4n" id="KsI-40-kPb"/>
<outlet property="amountLabel" destination="OYM-Fv-oij" id="uDK-Na-KOX"/>
<outlet property="backgroundImageView" destination="aWj-G4-DSb" id="eVT-6x-3pf"/>
<outlet property="cardNumberLabel" destination="7h1-Dr-kSe" id="W91-YM-Yig"/>
<outlet property="cardPasswordLabel" destination="N4c-E5-FG0" id="tZY-Nv-Ub0"/>
<outlet property="maskBackGroundView" destination="m5I-AX-mXf" id="CnN-3K-5x0"/>
<outlet property="maskImageView" destination="eYY-eT-fub" id="O6w-87-afA"/>
<outlet property="usedImageView" destination="8xL-mY-9E8" id="fIk-KR-bBk"/>
<outlet property="useingButton" destination="O2P-mO-Dw4" id="h3D-K1-yVL"/>
</connections>
</collectionViewCell>
</cells>
......@@ -3364,83 +3448,67 @@
<scene sceneID="KSb-3p-bzb">
<objects>
<tableViewController storyboardIdentifier="RebateSuccessTableViewController" id="Adi-1A-ucl" customClass="RebateSuccessTableViewController" sceneMemberID="viewController">
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" scrollEnabled="NO" dataMode="static" style="plain" separatorStyle="none" rowHeight="68" sectionHeaderHeight="28" sectionFooterHeight="28" id="MeE-u7-NaE">
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" scrollEnabled="NO" dataMode="prototypes" style="plain" separatorStyle="none" rowHeight="68" sectionHeaderHeight="28" sectionFooterHeight="28" id="MeE-u7-NaE">
<rect key="frame" x="0.0" y="0.0" width="768" height="1024"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<view key="tableHeaderView" contentMode="scaleToFill" id="mDY-Z0-Mwk">
<rect key="frame" x="0.0" y="0.0" width="768" height="210"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
<prototypes>
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" reuseIdentifier="PromptHeaderTableViewCell" rowHeight="150" id="a4X-wI-TKY" customClass="PromptHeaderTableViewCell">
<rect key="frame" x="0.0" y="28" width="768" height="150"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="a4X-wI-TKY" id="F9G-Lu-fOF">
<rect key="frame" x="0.0" y="0.0" width="768" height="150"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="green" id="hga-Mu-sgU">
<rect key="frame" x="364" y="58" width="40" height="30"/>
<view contentMode="scaleToFill" id="gKU-uU-ts6">
<rect key="frame" x="0.0" y="149" width="768" height="1"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" red="0.91372549020000005" green="0.91764705879999997" blue="0.92156862750000001" alpha="1" colorSpace="calibratedRGB"/>
</view>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="green" id="M4E-RA-RhL">
<rect key="frame" x="364" y="30" width="40" height="30"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="提现申请已提交,审核中..." textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="W9L-JB-sQA">
<rect key="frame" x="237" y="101" width="294" height="21"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="提现申请已提交,审核中..." textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="2NE-Tc-dFT">
<rect key="frame" x="237" y="78" width="294" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</view>
<sections>
<tableViewSection id="egQ-ip-GTC">
<cells>
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="68" id="C2r-ss-hDa">
<rect key="frame" x="0.0" y="210" width="768" height="68"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="C2r-ss-hDa" id="L9q-Fk-oOX">
<rect key="frame" x="0.0" y="0.0" width="768" height="68"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="查看详情" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="xc6-ok-ben">
<rect key="frame" x="314" y="23" width="140" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" weight="medium" pointSize="17"/>
<color key="textColor" red="0.2156862745" green="0.46274509800000002" blue="0.6705882353" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<view contentMode="scaleToFill" id="Y8P-Rt-8e9">
<rect key="frame" x="0.0" y="0.0" width="768" height="1"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" red="0.9137254901960784" green="0.91764705882352937" blue="0.92156862745098034" alpha="1" colorSpace="calibratedRGB"/>
</view>
</subviews>
</tableViewCellContentView>
<connections>
<outlet property="headerViewContentLabel" destination="2NE-Tc-dFT" id="CFE-5O-bgJ"/>
</connections>
</tableViewCell>
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="68" id="uaU-6R-KWI">
<rect key="frame" x="0.0" y="278" width="768" height="68"/>
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="PromptTableViewCell" rowHeight="68" id="C2r-ss-hDa" customClass="PromptTableViewCell">
<rect key="frame" x="0.0" y="178" width="768" height="68"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="uaU-6R-KWI" id="FfJ-rg-oJ8">
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="C2r-ss-hDa" id="L9q-Fk-oOX">
<rect key="frame" x="0.0" y="0.0" width="768" height="68"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="返回账户" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="qR9-iE-pHi">
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="文本" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="xc6-ok-ben">
<rect key="frame" x="314" y="24" width="140" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" weight="medium" pointSize="17"/>
<color key="textColor" red="0.2156862745" green="0.46274509800000002" blue="0.6705882353" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<view contentMode="scaleToFill" id="flx-3m-k3O">
<rect key="frame" x="0.0" y="0.0" width="768" height="1"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" red="0.91372549020000005" green="0.91764705879999997" blue="0.92156862750000001" alpha="1" colorSpace="calibratedRGB"/>
</view>
<view contentMode="scaleToFill" id="bft-Gk-ONL">
<view contentMode="scaleToFill" id="Y8P-Rt-8e9">
<rect key="frame" x="0.0" y="67" width="768" height="1"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
<color key="backgroundColor" red="0.91372549020000005" green="0.91764705879999997" blue="0.92156862750000001" alpha="1" colorSpace="calibratedRGB"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" red="0.9137254901960784" green="0.91764705882352937" blue="0.92156862745098034" alpha="1" colorSpace="calibratedRGB"/>
</view>
</subviews>
</tableViewCellContentView>
<connections>
<outlet property="contentLabel" destination="xc6-ok-ben" id="rgk-GJ-mU3"/>
</connections>
</tableViewCell>
</cells>
</tableViewSection>
</sections>
</prototypes>
<sections/>
<connections>
<outlet property="dataSource" destination="Adi-1A-ucl" id="ROk-5O-NSj"/>
<outlet property="delegate" destination="Adi-1A-ucl" id="ZJS-tt-1U7"/>
......@@ -4979,17 +5047,18 @@
<image name="all" width="16" height="16"/>
<image name="bangzhu" width="45" height="45"/>
<image name="bg" width="27" height="26"/>
<image name="bg-w" width="290" height="72"/>
<image name="box-副本" width="26" height="26"/>
<image name="customchangjing" width="45" height="45"/>
<image name="fenxiang" width="45" height="45"/>
<image name="fifty" width="253" height="153"/>
<image name="gouwuche" width="45" height="45"/>
<image name="green" width="56" height="37"/>
<image name="jia" width="30" height="30"/>
<image name="line" width="301" height="30"/>
<image name="lineNew" width="1024" height="7"/>
<image name="mask" width="290" height="72"/>
<image name="now" width="110" height="110"/>
<image name="onehundred" width="253" height="153"/>
<image name="onehundred" width="290" height="144"/>
<image name="progress" width="404" height="35"/>
<image name="qian" width="16" height="16"/>
<image name="quanping" width="45" height="45"/>
......@@ -5000,11 +5069,13 @@
<image name="selectshoping" width="45" height="45"/>
<image name="trunoff" width="45" height="45"/>
<image name="trunon" width="45" height="45"/>
<image name="twohundred" width="253" height="153"/>
<image name="used" width="51" height="51"/>
<image name="useing" width="48" height="10"/>
<image name="xiaoping" width="45" height="45"/>
<image name="zuotian" width="16" height="16"/>
<image name="产品1" width="50" height="50"/>
<image name="产品2" width="50" height="50"/>
<image name="京东logo" width="56" height="56"/>
<image name="场景1" width="50" height="50"/>
<image name="场景2" width="50" height="50"/>
<image name="已完成" width="88" height="87"/>
......
......@@ -8,10 +8,12 @@
#import "BaseViewController.h"
#import "LoginViewController.h"
@interface BaseViewController ()<UIPrintInteractionControllerDelegate,UIWebViewDelegate>
#import <WebKit/WebKit.h>
@interface BaseViewController ()<UIPrintInteractionControllerDelegate,UIWebViewDelegate,WKNavigationDelegate>
@property (nonatomic,strong) UIWebView *webView;
@property (nonatomic,strong) WKWebView *webView;
/**
* 提示框
......@@ -32,7 +34,7 @@
{
if (_TCHud == nil) {
_TCHud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
_TCHud = [MBProgressHUD showHUDAddedTo:SHARED_APPDELEGATE.window animated:YES];
}
return _TCHud;
}
......@@ -53,11 +55,11 @@
}
- (UIWebView *)webView
- (WKWebView *)webView
{
if (_webView == nil) {
_webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 0, ScreenWidth, ScreenHeight)];
_webView = [[WKWebView alloc]initWithFrame:CGRectMake(0, 0, ScreenWidth, ScreenHeight)];
}
return _webView;
}
......@@ -266,19 +268,13 @@
}
#pragma mark 调用airPrint无线打印机
- (void)callAirprintWithURL:(NSURL *)datasurl SuccessBlock:(void (^)())success ErrorBlock:(void (^)())failed
{
// NSData *mypdfdata = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"The Swift Programming Language 中文版 - v1.2" ofType:@"pdf"]];
UIPrintInteractionController *pic = [UIPrintInteractionController sharedPrintController];
pic.delegate = self;
[self.webView loadRequest:[NSURLRequest requestWithURL:datasurl]];//网页
self.webView.delegate = self;
self.webView.navigationDelegate = self;
pic.printFormatter = [self.webView viewPrintFormatter];//布局打印视图绘制的内容。
UIPrintInfo *printInfo = [UIPrintInfo printInfo];
printInfo.outputType = UIPrintInfoOutputGeneral;
......@@ -306,15 +302,18 @@
}
}
- (void)webViewDidStartLoad:(UIWebView *)webView
#pragma mark - <WKNavigationDelegate>
- (void)webView:(WKWebView *)webView didStartProvisionalNavigation:(null_unspecified WKNavigation *)navigation
{
[self CreateMBProgressHUDLoding];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView
- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation
{
[self RemoveMBProgressHUDLoding];
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(nullable NSError *)error
- (void)webView:(WKWebView *)webView didFailNavigation:(WKNavigation *)navigation withError:(NSError *)error
{
[self ErrorMBProgressView:@"打印失败"];
}
......
......@@ -247,6 +247,11 @@ extern NSString *const RECEIVEJDECARD;
* 查询所有京东E卡
*/
extern NSString *const QUERYALLJDECARD;
/**
* 使用京东E卡
*/
extern NSString *const USEJDECARD;
/*****************************************接口地址*****************************************/
......@@ -279,3 +284,13 @@ extern NSString *const LOOKED;
* 更新购物车商品
*/
extern NSString *const SHOPPINGCARGOODS;
/**
* 通知打开响应的控制器
*/
extern NSString *const OPENCONTROLLER;
/**
* 打开体验中心
*/
extern NSString *const OPENFOLLOWHEARTVC;
......@@ -240,12 +240,17 @@ NSString *const ACTIVIATIONJDECARD = @"/jingdongecard/active?orderNumber=%@&orde
/**
* 领取京东E卡
*/
NSString *const RECEIVEJDECARD = @"/jingdongecard/look?cardNumber=%@";
NSString *const RECEIVEJDECARD = @"/jingdongecard/use?cardNumber=%@";
/**
* 查询所有京东E卡
*/
NSString *const QUERYALLJDECARD = @"/jingdongecard/simpleQuery";
/**
* 使用京东E卡
*/
NSString *const USEJDECARD = @"/jingdongecard/use?cardNumber=%@";
/*****************************************接口地址*****************************************/
......@@ -279,6 +284,16 @@ NSString *const LOOKED = @"used";
*/
NSString *const SHOPPINGCARGOODS = @"shoppingCar";
/**
* 通知打开响应的控制器
*/
NSString *const OPENCONTROLLER = @"openController";
/**
* 打开体验中心
*/
NSString *const OPENFOLLOWHEARTVC = @"FollowHeartVC";
......
......@@ -38,6 +38,20 @@ static NetworkRequestClassManager *manager = nil;
return manager;
}
/**
* 请求实体
*
* @return AFHTTPSessionManager
*/
- (AFHTTPSessionManager *)baseHttpRequest
{
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
manager.requestSerializer.timeoutInterval = 120.0f;
[manager.requestSerializer setValue:@"application/json;charset=utf-8" forHTTPHeaderField: @"Content-Type"];
return manager;
}
/**
* 网络请求
......@@ -59,12 +73,7 @@ static NetworkRequestClassManager *manager = nil;
{
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
manager.requestSerializer.timeoutInterval = 10.0f;
[manager.requestSerializer setValue:@"application/json;charset=utf-8" forHTTPHeaderField: @"Content-Type"];
AFHTTPSessionManager *manager = [self baseHttpRequest];
//网络检测
if (SHARED_APPDELEGATE.Networkstatus == false) {
......@@ -126,12 +135,7 @@ static NetworkRequestClassManager *manager = nil;
WithErrorCodeBlock:(ErrorCodeBlock) errorCodeBlock
WithFailureBlock:(FailureBlock) failureBlock
{
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
manager.requestSerializer.timeoutInterval = 10.0f;
[manager.requestSerializer setValue:@"application/json;charset=utf-8" forHTTPHeaderField: @"Content-Type"];
AFHTTPSessionManager *manager = [self baseHttpRequest];
//网络检测
if (SHARED_APPDELEGATE.Networkstatus == false) {
......@@ -186,7 +190,7 @@ static NetworkRequestClassManager *manager = nil;
AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] initWithSessionConfiguration:configuration];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
manager.requestSerializer.timeoutInterval = 10.0f;
manager.requestSerializer.timeoutInterval = 120.0f;
[manager.requestSerializer setValue:@"application/json;charset=utf-8" forHTTPHeaderField: @"Content-Type"];
//网络检测
if (SHARED_APPDELEGATE.Networkstatus == false) {
......@@ -249,12 +253,7 @@ static NetworkRequestClassManager *manager = nil;
errorCodeBlock(BROKEN);
return;
}
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
[manager.requestSerializer setValue:@"application/json;charset=utf-8" forHTTPHeaderField: @"Content-Type"];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
AFHTTPSessionManager *manager = [self baseHttpRequest];
[manager POST:requestURLString parameters:parameter constructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData) {
[formData appendPartWithFileData:imagedata name:@"file" fileName:@"file.png" mimeType:@"image/png"];
......
......@@ -21,6 +21,7 @@
// Do any additional setup after loading the view from its nib.
[self uiConfigAction];
[self addDismissButton];
}
......@@ -30,14 +31,26 @@
self.webView = [[WKWebView alloc] initWithFrame:self.view.bounds];
[self.view addSubview:self.webView];
self.webView.navigationDelegate = self;
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:_pdfURLString]];
[self.webView loadRequest:request];
[self.view addGestureRecognizer:[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(PDFClickAction)]];
[self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:self.pdfURLString]]];
}
#pragma mark - 添加删除按钮
- (void)addDismissButton
{
UIButton *dismissButton = [UIButton buttonWithType:UIButtonTypeCustom];
[self.view addSubview:dismissButton];
[dismissButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(100);
make.top.mas_equalTo(100);
make.size.mas_equalTo(CGSizeMake(60, 60));
}];
[dismissButton setBackgroundImage:TCImage(@"10-副本-3") forState:UIControlStateNormal];
[dismissButton addTarget:self action:@selector(dismissButtonClick) forControlEvents:UIControlEventTouchUpInside];
}
#pragma mark -dismiss
- (void)PDFClickAction
- (void)dismissButtonClick
{
[self dismissViewControllerAnimated:YES completion:nil];
}
......
......@@ -37,6 +37,7 @@
#import "UIView+cornerRadius.h"
#import "XLPlainFlowLayout.h"
#import "MDScratchImageView.h"
#import "WYPopoverController.h"
// Include any system framework and library headers here that should be included in all compilation units.
// You will also need to set the Prefix Header build setting of one or more of your targets to reference this file.
......
......@@ -2783,7 +2783,7 @@ extern NSString * const SORTDIRECTION_DESC;
* @see TOJingdongEcardEntity
*
*/
@property (nonatomic, strong) NSArray<TOJingdongEcardEntity> *eCards;
@property (nonatomic, strong) NSMutableArray<TOJingdongEcardEntity> *eCards;
@end /* interface GroupByOrderNumber */
......
......@@ -8,7 +8,7 @@ pod 'MMDrawerController'
pod 'Masonry'
pod 'MJRefresh'
pod 'SDWebImage'
pod 'AFNetworking'
pod 'AFNetworking', '~> 3.1.0'
pod 'JSONModel', '~> 1.2.0'
pod 'UMengSocial'
pod 'DZNEmptyDataSet'
......
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