Commit 839b987a96dc5ee967448591ab782f19286a729f

Authored by Cao yang
1 parent a2a153f1
Exists in parentassistant

添加请假页面

Showing 15 changed files with 667 additions and 1 deletions   Show diff stats
ParentAssistant/ParentAssistant.xcodeproj/project.pbxproj
... ... @@ -32,12 +32,19 @@
32 32 5993652C20528D5700C8B371 /* MainViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5993652B20528D5700C8B371 /* MainViewController.swift */; };
33 33 59C0A9B8205375F800A8BB5A /* SelectCityViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59C0A9B7205375F800A8BB5A /* SelectCityViewController.swift */; };
34 34 9FB4F6F97960021FB4F02BBE /* Pods_ParentAssistant.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A6EEE742C2FA920AEDF24728 /* Pods_ParentAssistant.framework */; };
  35 + AD198173207D9FB4009AB8B5 /* ProgramCheckViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD198172207D9FB4009AB8B5 /* ProgramCheckViewController.swift */; };
  36 + AD198175207D9FC1009AB8B5 /* ProgramCardViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD198174207D9FC1009AB8B5 /* ProgramCardViewController.swift */; };
  37 + AD198177207D9FF5009AB8B5 /* ProgramVacateViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD198176207D9FF5009AB8B5 /* ProgramVacateViewController.swift */; };
35 38 AD24AA202065FBAF00ECA428 /* SceneTopCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD24AA1F2065FBAF00ECA428 /* SceneTopCell.swift */; };
36 39 AD24AA222065FBC000ECA428 /* SceneMiddleCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD24AA212065FBC000ECA428 /* SceneMiddleCell.swift */; };
37 40 AD24AA242065FBD100ECA428 /* SceneDownCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD24AA232065FBD100ECA428 /* SceneDownCell.swift */; };
38 41 AD34D11A2064C79D00989F8D /* MoralDetailCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD34D1192064C79D00989F8D /* MoralDetailCell.swift */; };
39 42 AD34D11C2064C7AE00989F8D /* EducationDetailCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD34D11B2064C7AE00989F8D /* EducationDetailCell.swift */; };
40 43 AD34D11E2064C7C300989F8D /* BehaviorDetailCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD34D11D2064C7C300989F8D /* BehaviorDetailCell.swift */; };
  44 + AD64A2C0207F289400B25E80 /* ProgramVacateTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD64A2BE207F289400B25E80 /* ProgramVacateTableViewCell.swift */; };
  45 + AD64A2C1207F289400B25E80 /* ProgramVacateTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = AD64A2BF207F289400B25E80 /* ProgramVacateTableViewCell.xib */; };
  46 + AD64A2C3207F28CF00B25E80 /* ProgramVacateBodyTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD64A2C2207F28CF00B25E80 /* ProgramVacateBodyTableViewCell.swift */; };
  47 + AD64A2C5207F28EB00B25E80 /* ProgramVacateBodyTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = AD64A2C4207F28EB00B25E80 /* ProgramVacateBodyTableViewCell.xib */; };
41 48 AD65FB78206354220052415B /* MoralTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD65FB77206354220052415B /* MoralTableViewCell.swift */; };
42 49 AD65FB7A20637F110052415B /* MoralViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD65FB7920637F110052415B /* MoralViewController.swift */; };
43 50 ADAEA3982064960300A47D2C /* SceneDetailViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADAEA3972064960300A47D2C /* SceneDetailViewController.swift */; };
... ... @@ -187,12 +194,19 @@
187 194 5993652B20528D5700C8B371 /* MainViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewController.swift; sourceTree = "<group>"; };
188 195 59C0A9B7205375F800A8BB5A /* SelectCityViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SelectCityViewController.swift; sourceTree = "<group>"; };
189 196 A6EEE742C2FA920AEDF24728 /* Pods_ParentAssistant.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ParentAssistant.framework; sourceTree = BUILT_PRODUCTS_DIR; };
  197 + AD198172207D9FB4009AB8B5 /* ProgramCheckViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgramCheckViewController.swift; sourceTree = "<group>"; };
  198 + AD198174207D9FC1009AB8B5 /* ProgramCardViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgramCardViewController.swift; sourceTree = "<group>"; };
  199 + AD198176207D9FF5009AB8B5 /* ProgramVacateViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgramVacateViewController.swift; sourceTree = "<group>"; };
190 200 AD24AA1F2065FBAF00ECA428 /* SceneTopCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneTopCell.swift; sourceTree = "<group>"; };
191 201 AD24AA212065FBC000ECA428 /* SceneMiddleCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneMiddleCell.swift; sourceTree = "<group>"; };
192 202 AD24AA232065FBD100ECA428 /* SceneDownCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDownCell.swift; sourceTree = "<group>"; };
193 203 AD34D1192064C79D00989F8D /* MoralDetailCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoralDetailCell.swift; sourceTree = "<group>"; };
194 204 AD34D11B2064C7AE00989F8D /* EducationDetailCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EducationDetailCell.swift; sourceTree = "<group>"; };
195 205 AD34D11D2064C7C300989F8D /* BehaviorDetailCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BehaviorDetailCell.swift; sourceTree = "<group>"; };
  206 + AD64A2BE207F289400B25E80 /* ProgramVacateTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgramVacateTableViewCell.swift; sourceTree = "<group>"; };
  207 + AD64A2BF207F289400B25E80 /* ProgramVacateTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ProgramVacateTableViewCell.xib; sourceTree = "<group>"; };
  208 + AD64A2C2207F28CF00B25E80 /* ProgramVacateBodyTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgramVacateBodyTableViewCell.swift; sourceTree = "<group>"; };
  209 + AD64A2C4207F28EB00B25E80 /* ProgramVacateBodyTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ProgramVacateBodyTableViewCell.xib; sourceTree = "<group>"; };
196 210 AD65FB77206354220052415B /* MoralTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoralTableViewCell.swift; sourceTree = "<group>"; };
197 211 AD65FB7920637F110052415B /* MoralViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoralViewController.swift; sourceTree = "<group>"; };
198 212 ADAEA3972064960300A47D2C /* SceneDetailViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SceneDetailViewController.swift; sourceTree = "<group>"; };
... ... @@ -513,6 +527,9 @@
513 527 isa = PBXGroup;
514 528 children = (
515 529 ADC9AB87207C940700348EF1 /* ProgramViewController.swift */,
  530 + AD198172207D9FB4009AB8B5 /* ProgramCheckViewController.swift */,
  531 + AD198174207D9FC1009AB8B5 /* ProgramCardViewController.swift */,
  532 + AD198176207D9FF5009AB8B5 /* ProgramVacateViewController.swift */,
516 533 );
517 534 path = Program;
518 535 sourceTree = "<group>";
... ... @@ -579,6 +596,10 @@
579 596 AD24AA232065FBD100ECA428 /* SceneDownCell.swift */,
580 597 ADC9AB83207C673C00348EF1 /* SceneDownCell.xib */,
581 598 ADAEA3992064C44900A47D2C /* LineChartView.swift */,
  599 + AD64A2BE207F289400B25E80 /* ProgramVacateTableViewCell.swift */,
  600 + AD64A2BF207F289400B25E80 /* ProgramVacateTableViewCell.xib */,
  601 + AD64A2C2207F28CF00B25E80 /* ProgramVacateBodyTableViewCell.swift */,
  602 + AD64A2C4207F28EB00B25E80 /* ProgramVacateBodyTableViewCell.xib */,
582 603 );
583 604 path = View;
584 605 sourceTree = "<group>";
... ... @@ -888,6 +909,7 @@
888 909 5980BF672061048A00F4A35E /* Address.plist in Resources */,
889 910 BF38847C205CDE1B00A240EF /* JS.storyboard in Resources */,
890 911 ADC9AB7C207C66C300348EF1 /* EducationDetailCell.xib in Resources */,
  912 + AD64A2C1207F289400B25E80 /* ProgramVacateTableViewCell.xib in Resources */,
891 913 BFF9B7F42057A29D00F39B3E /* TableEmptyView.xib in Resources */,
892 914 ADC9AB7E207C66DA00348EF1 /* BehaviorDetailCell.xib in Resources */,
893 915 ADC9AB84207C673C00348EF1 /* SceneDownCell.xib in Resources */,
... ... @@ -902,6 +924,7 @@
902 924 BF67F3BD20590A2F002FDC61 /* Info-OSX.plist in Resources */,
903 925 BF621CAC205660E90040D2C1 /* My.storyboard in Resources */,
904 926 BF67F3BC20590A2F002FDC61 /* Info-iOS.plist in Resources */,
  927 + AD64A2C5207F28EB00B25E80 /* ProgramVacateBodyTableViewCell.xib in Resources */,
905 928 BF7A4C84204E338500460463 /* Assets.xcassets in Resources */,
906 929 BF7A4C85204E338500460463 /* LaunchScreen.storyboard in Resources */,
907 930 ADC9AB82207C673300348EF1 /* SceneMiddleCell.xib in Resources */,
... ... @@ -993,6 +1016,7 @@
993 1016 BF621CB02056664C0040D2C1 /* CurrentInfoViewController.swift in Sources */,
994 1017 ADC9AB88207C940700348EF1 /* ProgramViewController.swift in Sources */,
995 1018 BF7A4C3C204CD55300460463 /* ParentAssistant.xcdatamodeld in Sources */,
  1019 + AD198177207D9FF5009AB8B5 /* ProgramVacateViewController.swift in Sources */,
996 1020 BFEAAAD620525D620072FAAF /* LxButton.m in Sources */,
997 1021 5993652C20528D5700C8B371 /* MainViewController.swift in Sources */,
998 1022 5993652A2052553900C8B371 /* pinyin.c in Sources */,
... ... @@ -1014,6 +1038,7 @@
1014 1038 5980BF692061048A00F4A35E /* LZCityPickerView.m in Sources */,
1015 1039 BF388482205F5BC800A240EF /* MessageManager.swift in Sources */,
1016 1040 5980BF682061048A00F4A35E /* LZCityPickerController.m in Sources */,
  1041 + AD198173207D9FB4009AB8B5 /* ProgramCheckViewController.swift in Sources */,
1017 1042 BFCED88B20528DE700055373 /* MyViewControllerModel.swift in Sources */,
1018 1043 BFF9B7E92056852A00F39B3E /* RegisterViewController.swift in Sources */,
1019 1044 BFBC06C72063AE8900CCFAFF /* ZLaunchAdButton.swift in Sources */,
... ... @@ -1046,6 +1071,8 @@
1046 1071 599364EC204E62E700C8B371 /* EvaluationViewController.swift in Sources */,
1047 1072 599364F0204E62E700C8B371 /* ReportViewController.swift in Sources */,
1048 1073 BF621CAE2056663C0040D2C1 /* LoginViewController.swift in Sources */,
  1074 + AD64A2C0207F289400B25E80 /* ProgramVacateTableViewCell.swift in Sources */,
  1075 + AD64A2C3207F28CF00B25E80 /* ProgramVacateBodyTableViewCell.swift in Sources */,
1049 1076 599364EA204E62E700C8B371 /* ChannelViewController.swift in Sources */,
1050 1077 BF406CDE2057C537000A6681 /* OrderDetailTableViewCell.swift in Sources */,
1051 1078 BFEAAAC7205257460072FAAF /* LXCalenderCell.m in Sources */,
... ... @@ -1056,6 +1083,7 @@
1056 1083 BFBC06C62063AE8900CCFAFF /* ZLaunchAdAnimation.swift in Sources */,
1057 1084 AD34D11E2064C7C300989F8D /* BehaviorDetailCell.swift in Sources */,
1058 1085 BFCED888205280B700055373 /* MyViewController.swift in Sources */,
  1086 + AD198175207D9FC1009AB8B5 /* ProgramCardViewController.swift in Sources */,
1059 1087 AD65FB78206354220052415B /* MoralTableViewCell.swift in Sources */,
1060 1088 BF38846C205A58F800A240EF /* YXMessageManager.swift in Sources */,
1061 1089 BFBC06C92063AE8900CCFAFF /* ZLaunchAdConfig.swift in Sources */,
... ...
ParentAssistant/ParentAssistant.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist 0 → 100644
... ... @@ -0,0 +1,8 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  3 +<plist version="1.0">
  4 +<dict>
  5 + <key>IDEDidComputeMac32BitWarning</key>
  6 + <true/>
  7 +</dict>
  8 +</plist>
... ...
ParentAssistant/ParentAssistant.xcworkspace/xcuserdata/caoyang.xcuserdatad/UserInterfaceState.xcuserstate
No preview for this file type
ParentAssistant/ParentAssistant/Classes/controllers/Grow/Program/ProgramCardViewController.swift 0 → 100644
... ... @@ -0,0 +1,35 @@
  1 +//
  2 +// ProgramCardViewController.swift
  3 +// ParentAssistant
  4 +//
  5 +// Created by Cao yang on 2018/4/11.
  6 +// Copyright © 2018年 HANGZHOUTEAM. All rights reserved.
  7 +//
  8 +
  9 +import UIKit
  10 +
  11 +class ProgramCardViewController: UIViewController {
  12 +
  13 + override func viewDidLoad() {
  14 + super.viewDidLoad()
  15 +
  16 + // Do any additional setup after loading the view.
  17 + }
  18 +
  19 + override func didReceiveMemoryWarning() {
  20 + super.didReceiveMemoryWarning()
  21 + // Dispose of any resources that can be recreated.
  22 + }
  23 +
  24 +
  25 + /*
  26 + // MARK: - Navigation
  27 +
  28 + // In a storyboard-based application, you will often want to do a little preparation before navigation
  29 + override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
  30 + // Get the new view controller using segue.destinationViewController.
  31 + // Pass the selected object to the new view controller.
  32 + }
  33 + */
  34 +
  35 +}
... ...
ParentAssistant/ParentAssistant/Classes/controllers/Grow/Program/ProgramCheckViewController.swift 0 → 100644
... ... @@ -0,0 +1,35 @@
  1 +//
  2 +// ProgramCheckViewController.swift
  3 +// ParentAssistant
  4 +//
  5 +// Created by Cao yang on 2018/4/11.
  6 +// Copyright © 2018年 HANGZHOUTEAM. All rights reserved.
  7 +//
  8 +
  9 +import UIKit
  10 +
  11 +class ProgramCheckViewController: UIViewController {
  12 +
  13 + override func viewDidLoad() {
  14 + super.viewDidLoad()
  15 +
  16 + // Do any additional setup after loading the view.
  17 + }
  18 +
  19 + override func didReceiveMemoryWarning() {
  20 + super.didReceiveMemoryWarning()
  21 + // Dispose of any resources that can be recreated.
  22 + }
  23 +
  24 +
  25 + /*
  26 + // MARK: - Navigation
  27 +
  28 + // In a storyboard-based application, you will often want to do a little preparation before navigation
  29 + override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
  30 + // Get the new view controller using segue.destinationViewController.
  31 + // Pass the selected object to the new view controller.
  32 + }
  33 + */
  34 +
  35 +}
... ...
ParentAssistant/ParentAssistant/Classes/controllers/Grow/Program/ProgramVacateViewController.swift 0 → 100644
... ... @@ -0,0 +1,153 @@
  1 +//
  2 +// ProgramVacateViewController.swift
  3 +// ParentAssistant
  4 +//
  5 +// Created by Cao yang on 2018/4/11.
  6 +// Copyright © 2018年 HANGZHOUTEAM. All rights reserved.
  7 +//
  8 +
  9 +import UIKit
  10 +
  11 +class ProgramVacateViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {
  12 +
  13 + lazy var tableView = {()-> UITableView in
  14 + let table = UITableView.init(frame: CGRect.init(x: 0, y: 0, width: screenWidth, height: screenHeight-44-22-60))
  15 + table.backgroundColor = backGroundColor
  16 + table.delegate = self
  17 + table.dataSource = self
  18 + table.tableFooterView = UIView.init()
  19 + table.separatorStyle = .none
  20 + table.register(UINib.init(nibName: "ProgramVacateTableViewCell", bundle: nil), forCellReuseIdentifier: "ProgramVacateTableViewCell")
  21 + table.register(UINib.init(nibName: "ProgramVacateBodyTableViewCell", bundle: nil), forCellReuseIdentifier: "ProgramVacateBodyTableViewCell")
  22 + return table
  23 + }()
  24 +
  25 + lazy var bottomBtn = {()-> UIButton in
  26 + let btn = UIButton.init(frame: CGRect.init(x: screenWidth/2-60, y: screenHeight-66-50, width: 120, height: 40))
  27 + btn.setTitle("请假", for: UIControlState.normal)
  28 + btn.setTitleColor(UIColor.black, for: UIControlState.normal)
  29 + btn.backgroundColor = Theme.topBarColor()
  30 + return btn
  31 + }()
  32 +
  33 + //data
  34 +
  35 + /// 请假记录
  36 + var vacateRecodeArray = Array<String>()
  37 +
  38 +
  39 + override func viewDidLoad() {
  40 + super.viewDidLoad()
  41 + self.view.backgroundColor = backGroundColor
  42 +
  43 + self.view.addSubview(self.tableView)
  44 + self.view.addSubview(self.bottomBtn)
  45 + self.vacateRecodeArray = ["1","2"]
  46 +
  47 + // Do any additional setup after loading the view.
  48 + }
  49 +
  50 + //MARK: - TableView delegate & dataSourse
  51 + func numberOfSections(in tableView: UITableView) -> Int {
  52 + return 2
  53 + }
  54 + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
  55 + switch section {
  56 + case 0:
  57 + return 1
  58 + case 1:
  59 + if vacateRecodeArray.count > 0 {
  60 + return vacateRecodeArray.count+1
  61 + }else{
  62 + return 2
  63 + }
  64 + default:
  65 + return 0
  66 + }
  67 + }
  68 + func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
  69 +
  70 + switch indexPath.section {
  71 + case 0:
  72 + return 90
  73 + case 1:
  74 + if indexPath.row == 0{
  75 + return 40
  76 + }else{
  77 + if vacateRecodeArray.count > 0 {
  78 + return 230
  79 + }else{
  80 + return 50
  81 + }
  82 + }
  83 + default:
  84 + return 0
  85 + }
  86 + }
  87 + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
  88 +
  89 + switch indexPath.section {
  90 + case 0:
  91 + let cell = tableView.dequeueReusableCell(withIdentifier: "ProgramVacateTableViewCell", for: indexPath) as! ProgramVacateTableViewCell
  92 + return cell
  93 + case 1:
  94 + if indexPath.row == 0 {
  95 + let cell = UITableViewCell.init()
  96 + cell.backgroundColor = backGroundColor
  97 + let cellView = UIView.init(frame: CGRect.init(x: 10, y: 0, width: screenWidth-20, height: 40))
  98 + cellView.backgroundColor = UIColor.white
  99 + let label = UILabel.init(frame: CGRect.init(x: 10, y: 0, width: 200, height: 40))
  100 + label.text = "请假记录:"
  101 + label.textAlignment = .left
  102 + cellView.addSubview(label)
  103 + cell.addSubview(cellView)
  104 + return cell
  105 + }else{
  106 + if vacateRecodeArray.count > 0 {
  107 + let cell = tableView.dequeueReusableCell(withIdentifier: "ProgramVacateBodyTableViewCell", for: indexPath) as! ProgramVacateBodyTableViewCell
  108 + return cell
  109 + }else{
  110 + let cell = UITableViewCell.init()
  111 + cell.backgroundColor = backGroundColor
  112 + let cellView = UIView.init(frame: CGRect.init(x: 10, y: 0, width: screenWidth-20, height: 50))
  113 + cellView.backgroundColor = UIColor.white
  114 + let label = UILabel.init(frame: CGRect.init(x: 10, y: 0, width: screenWidth-20-20, height: 50))
  115 + label.text = "张三今日无请假记录!"
  116 + label.font = UIFont.systemFont(ofSize: 20)
  117 + label.textAlignment = .center
  118 + label.textColor = UIColor.red
  119 + cellView.addSubview(label)
  120 + cell.addSubview(cellView)
  121 + return cell
  122 + }
  123 + }
  124 + default:
  125 + return UITableViewCell.init()
  126 + }
  127 + }
  128 +
  129 + func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
  130 + if indexPath.section == 1 && indexPath.row != 0 && vacateRecodeArray.count>0 {
  131 +
  132 +
  133 +
  134 + }
  135 + }
  136 +
  137 + override func didReceiveMemoryWarning() {
  138 + super.didReceiveMemoryWarning()
  139 + // Dispose of any resources that can be recreated.
  140 + }
  141 +
  142 +
  143 + /*
  144 + // MARK: - Navigation
  145 +
  146 + // In a storyboard-based application, you will often want to do a little preparation before navigation
  147 + override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
  148 + // Get the new view controller using segue.destinationViewController.
  149 + // Pass the selected object to the new view controller.
  150 + }
  151 + */
  152 +
  153 +}
... ...
ParentAssistant/ParentAssistant/Classes/controllers/Grow/Program/ProgramViewController.swift
... ... @@ -102,7 +102,22 @@ class ProgramViewController: UIViewController,UITableViewDelegate,UITableViewDat
102 102  
103 103 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
104 104  
105   -
  105 + switch indexPath.row {
  106 + case 0:
  107 + let vc = ProgramCheckViewController()
  108 + vc.title = "考勤"
  109 + self.navigationController?.pushViewController(vc, animated: true)
  110 + case 1:
  111 + let vc = ProgramCardViewController()
  112 + vc.title = "补卡"
  113 + self.navigationController?.pushViewController(vc, animated: true)
  114 + case 2:
  115 + let vc = ProgramVacateViewController()
  116 + vc.title = "请假"
  117 + self.navigationController?.pushViewController(vc, animated: true)
  118 + default:
  119 + break
  120 + }
106 121 }
107 122  
108 123 override func didReceiveMemoryWarning() {
... ...
ParentAssistant/ParentAssistant/Classes/controllers/Grow/View/ProgramVacateBodyTableViewCell.swift 0 → 100644
... ... @@ -0,0 +1,31 @@
  1 +//
  2 +// ProgramVacateBodyTableViewCell.swift
  3 +// ParentAssistant
  4 +//
  5 +// Created by Cao yang on 2018/4/12.
  6 +// Copyright © 2018年 HANGZHOUTEAM. All rights reserved.
  7 +//
  8 +
  9 +import UIKit
  10 +
  11 +class ProgramVacateBodyTableViewCell: UITableViewCell {
  12 +
  13 + @IBOutlet weak var upLine: UILabel!
  14 + @IBOutlet weak var vacateName: UILabel!
  15 + @IBOutlet weak var vacateType: UILabel!
  16 + @IBOutlet weak var startTime: UILabel!
  17 + @IBOutlet weak var endTime: UILabel!
  18 + @IBOutlet weak var examinePerson: UILabel!
  19 + @IBOutlet weak var vacateResult: UILabel!
  20 + override func awakeFromNib() {
  21 + super.awakeFromNib()
  22 + // Initialization code
  23 + }
  24 +
  25 + override func setSelected(_ selected: Bool, animated: Bool) {
  26 + super.setSelected(selected, animated: animated)
  27 +
  28 + // Configure the view for the selected state
  29 + }
  30 +
  31 +}
... ...
ParentAssistant/ParentAssistant/Classes/controllers/Grow/View/ProgramVacateBodyTableViewCell.xib 0 → 100644
... ... @@ -0,0 +1,184 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14109" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
  3 + <device id="retina4_7" orientation="portrait">
  4 + <adaptation id="fullscreen"/>
  5 + </device>
  6 + <dependencies>
  7 + <deployment identifier="iOS"/>
  8 + <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
  9 + <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
  10 + </dependencies>
  11 + <objects>
  12 + <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
  13 + <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
  14 + <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="none" indentationWidth="10" reuseIdentifier="ProgramVacateBodyTableViewCell" rowHeight="232" id="fd1-Sl-6Qm" customClass="ProgramVacateBodyTableViewCell" customModule="ParentAssistant" customModuleProvider="target">
  15 + <rect key="frame" x="0.0" y="0.0" width="375" height="232"/>
  16 + <autoresizingMask key="autoresizingMask"/>
  17 + <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="fd1-Sl-6Qm" id="yYa-Yh-jMm">
  18 + <rect key="frame" x="0.0" y="0.0" width="375" height="231.5"/>
  19 + <autoresizingMask key="autoresizingMask"/>
  20 + <subviews>
  21 + <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="3iC-h2-GLD">
  22 + <rect key="frame" x="10" y="0.0" width="355" height="221.5"/>
  23 + <subviews>
  24 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="down" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gay-8r-CB4">
  25 + <rect key="frame" x="15" y="28" width="1" height="193"/>
  26 + <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
  27 + <constraints>
  28 + <constraint firstAttribute="width" constant="1" id="4WM-0K-GRV"/>
  29 + </constraints>
  30 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  31 + <nil key="textColor"/>
  32 + <nil key="highlightedColor"/>
  33 + </label>
  34 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="up" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="zCX-fI-ung">
  35 + <rect key="frame" x="15" y="0.0" width="1" height="28"/>
  36 + <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
  37 + <constraints>
  38 + <constraint firstAttribute="width" constant="1" id="QZc-Lb-vnO"/>
  39 + </constraints>
  40 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  41 + <nil key="textColor"/>
  42 + <nil key="highlightedColor"/>
  43 + </label>
  44 + <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="grow_ellipse" translatesAutoresizingMaskIntoConstraints="NO" id="184-vm-o8V">
  45 + <rect key="frame" x="10" y="18" width="10" height="10"/>
  46 + <constraints>
  47 + <constraint firstAttribute="height" constant="10" id="NxP-OE-KAZ"/>
  48 + <constraint firstAttribute="width" constant="10" id="T2p-Zf-FWk"/>
  49 + </constraints>
  50 + </imageView>
  51 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请假人:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ptA-gi-ASQ">
  52 + <rect key="frame" x="40" y="12.5" width="57" height="21"/>
  53 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  54 + <nil key="textColor"/>
  55 + <nil key="highlightedColor"/>
  56 + </label>
  57 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张三" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="SMb-fO-hlW">
  58 + <rect key="frame" x="107" y="12.5" width="35" height="21"/>
  59 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  60 + <nil key="textColor"/>
  61 + <nil key="highlightedColor"/>
  62 + </label>
  63 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请假类型:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="I23-J8-cbV">
  64 + <rect key="frame" x="40" y="43.5" width="74" height="21"/>
  65 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  66 + <nil key="textColor"/>
  67 + <nil key="highlightedColor"/>
  68 + </label>
  69 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="事假" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tQ9-wo-yko">
  70 + <rect key="frame" x="124" y="43.5" width="35" height="21"/>
  71 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  72 + <nil key="textColor"/>
  73 + <nil key="highlightedColor"/>
  74 + </label>
  75 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请假时间:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="XUE-jH-LMd">
  76 + <rect key="frame" x="40" y="74.5" width="74" height="21"/>
  77 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  78 + <nil key="textColor"/>
  79 + <nil key="highlightedColor"/>
  80 + </label>
  81 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2018/04/02 08:00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="o1S-an-wZs">
  82 + <rect key="frame" x="124" y="74.5" width="141" height="21"/>
  83 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  84 + <nil key="textColor"/>
  85 + <nil key="highlightedColor"/>
  86 + </label>
  87 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="至" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Q4S-hi-7fU">
  88 + <rect key="frame" x="185.5" y="100.5" width="18" height="21"/>
  89 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  90 + <nil key="textColor"/>
  91 + <nil key="highlightedColor"/>
  92 + </label>
  93 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2018/04/02 17:30" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="m2d-nZ-oIw">
  94 + <rect key="frame" x="126" y="126.5" width="137" height="21"/>
  95 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  96 + <nil key="textColor"/>
  97 + <nil key="highlightedColor"/>
  98 + </label>
  99 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="审批人:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="XmD-SZ-8bL">
  100 + <rect key="frame" x="40" y="157.5" width="57" height="21"/>
  101 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  102 + <nil key="textColor"/>
  103 + <nil key="highlightedColor"/>
  104 + </label>
  105 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="班主任-李倩" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="CmX-ZE-z2v">
  106 + <rect key="frame" x="107" y="157.5" width="95" height="21"/>
  107 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  108 + <nil key="textColor"/>
  109 + <nil key="highlightedColor"/>
  110 + </label>
  111 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请假结果:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UYo-On-ZLA">
  112 + <rect key="frame" x="40" y="188.5" width="74" height="21"/>
  113 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  114 + <nil key="textColor"/>
  115 + <nil key="highlightedColor"/>
  116 + </label>
  117 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="同意" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="P6F-mV-ell">
  118 + <rect key="frame" x="124" y="188.5" width="35" height="21"/>
  119 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  120 + <nil key="textColor"/>
  121 + <nil key="highlightedColor"/>
  122 + </label>
  123 + </subviews>
  124 + <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
  125 + <constraints>
  126 + <constraint firstItem="ptA-gi-ASQ" firstAttribute="centerY" secondItem="184-vm-o8V" secondAttribute="centerY" id="3sf-dz-jdr"/>
  127 + <constraint firstItem="o1S-an-wZs" firstAttribute="leading" secondItem="XUE-jH-LMd" secondAttribute="trailing" constant="10" id="45A-cx-9er"/>
  128 + <constraint firstItem="P6F-mV-ell" firstAttribute="centerY" secondItem="UYo-On-ZLA" secondAttribute="centerY" id="4jj-Yv-FyP"/>
  129 + <constraint firstItem="184-vm-o8V" firstAttribute="bottom" secondItem="zCX-fI-ung" secondAttribute="bottom" id="7Qo-Zx-DAx"/>
  130 + <constraint firstItem="CmX-ZE-z2v" firstAttribute="centerY" secondItem="XmD-SZ-8bL" secondAttribute="centerY" id="9d8-Eh-bXG"/>
  131 + <constraint firstItem="XUE-jH-LMd" firstAttribute="leading" secondItem="ptA-gi-ASQ" secondAttribute="leading" id="Egr-sG-T07"/>
  132 + <constraint firstItem="Q4S-hi-7fU" firstAttribute="centerX" secondItem="o1S-an-wZs" secondAttribute="centerX" id="HXy-Rc-qfD"/>
  133 + <constraint firstItem="P6F-mV-ell" firstAttribute="leading" secondItem="UYo-On-ZLA" secondAttribute="trailing" constant="10" id="IOH-oF-TIq"/>
  134 + <constraint firstItem="SMb-fO-hlW" firstAttribute="centerY" secondItem="ptA-gi-ASQ" secondAttribute="centerY" id="IjA-7L-kXF"/>
  135 + <constraint firstItem="gay-8r-CB4" firstAttribute="top" secondItem="184-vm-o8V" secondAttribute="bottom" id="Ilk-EK-SMV"/>
  136 + <constraint firstItem="184-vm-o8V" firstAttribute="leading" secondItem="3iC-h2-GLD" secondAttribute="leading" constant="10.5" id="KES-Nk-NQi"/>
  137 + <constraint firstAttribute="bottom" secondItem="gay-8r-CB4" secondAttribute="bottom" id="KoQ-MH-wGN"/>
  138 + <constraint firstItem="gay-8r-CB4" firstAttribute="leading" secondItem="3iC-h2-GLD" secondAttribute="leading" constant="15" id="QYv-CA-Chf"/>
  139 + <constraint firstItem="CmX-ZE-z2v" firstAttribute="leading" secondItem="XmD-SZ-8bL" secondAttribute="trailing" constant="10" id="Sa6-He-Zw1"/>
  140 + <constraint firstItem="XmD-SZ-8bL" firstAttribute="leading" secondItem="XUE-jH-LMd" secondAttribute="leading" id="XkB-Ka-XYp"/>
  141 + <constraint firstItem="zCX-fI-ung" firstAttribute="leading" secondItem="3iC-h2-GLD" secondAttribute="leading" constant="15" id="aTH-2y-tFi"/>
  142 + <constraint firstItem="I23-J8-cbV" firstAttribute="leading" secondItem="ptA-gi-ASQ" secondAttribute="leading" id="bPl-LK-op9"/>
  143 + <constraint firstItem="Q4S-hi-7fU" firstAttribute="top" secondItem="o1S-an-wZs" secondAttribute="bottom" constant="5" id="diF-eM-RWC"/>
  144 + <constraint firstItem="UYo-On-ZLA" firstAttribute="leading" secondItem="XmD-SZ-8bL" secondAttribute="leading" id="fVt-dT-aZ7"/>
  145 + <constraint firstItem="XmD-SZ-8bL" firstAttribute="top" secondItem="m2d-nZ-oIw" secondAttribute="bottom" constant="10" id="h1a-12-2u4"/>
  146 + <constraint firstItem="m2d-nZ-oIw" firstAttribute="top" secondItem="Q4S-hi-7fU" secondAttribute="bottom" constant="5" id="h5e-sp-jOh"/>
  147 + <constraint firstItem="184-vm-o8V" firstAttribute="top" secondItem="3iC-h2-GLD" secondAttribute="top" constant="18" id="hCe-rk-8Rh"/>
  148 + <constraint firstItem="tQ9-wo-yko" firstAttribute="centerY" secondItem="I23-J8-cbV" secondAttribute="centerY" id="iaq-Pt-N0v"/>
  149 + <constraint firstItem="XUE-jH-LMd" firstAttribute="top" secondItem="I23-J8-cbV" secondAttribute="bottom" constant="10" id="kFN-pq-rFH"/>
  150 + <constraint firstItem="tQ9-wo-yko" firstAttribute="leading" secondItem="I23-J8-cbV" secondAttribute="trailing" constant="10" id="lkm-Pa-khY"/>
  151 + <constraint firstItem="m2d-nZ-oIw" firstAttribute="centerX" secondItem="o1S-an-wZs" secondAttribute="centerX" id="osq-5I-jbe"/>
  152 + <constraint firstItem="o1S-an-wZs" firstAttribute="centerY" secondItem="XUE-jH-LMd" secondAttribute="centerY" id="p59-e2-LBT"/>
  153 + <constraint firstItem="ptA-gi-ASQ" firstAttribute="leading" secondItem="184-vm-o8V" secondAttribute="trailing" constant="20" id="pGi-jU-OcT"/>
  154 + <constraint firstItem="zCX-fI-ung" firstAttribute="top" secondItem="3iC-h2-GLD" secondAttribute="top" id="pYa-T9-TGa"/>
  155 + <constraint firstItem="I23-J8-cbV" firstAttribute="top" secondItem="ptA-gi-ASQ" secondAttribute="bottom" constant="10" id="sP9-y8-kI3"/>
  156 + <constraint firstItem="UYo-On-ZLA" firstAttribute="top" secondItem="XmD-SZ-8bL" secondAttribute="bottom" constant="10" id="tkO-jd-7ez"/>
  157 + <constraint firstItem="SMb-fO-hlW" firstAttribute="leading" secondItem="ptA-gi-ASQ" secondAttribute="trailing" constant="10" id="uGY-Th-x4A"/>
  158 + </constraints>
  159 + </view>
  160 + </subviews>
  161 + <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
  162 + <constraints>
  163 + <constraint firstAttribute="bottom" secondItem="3iC-h2-GLD" secondAttribute="bottom" constant="10" id="FAV-5i-UxH"/>
  164 + <constraint firstItem="3iC-h2-GLD" firstAttribute="top" secondItem="yYa-Yh-jMm" secondAttribute="top" id="ObN-MI-Jfr"/>
  165 + <constraint firstAttribute="trailing" secondItem="3iC-h2-GLD" secondAttribute="trailing" constant="10" id="jGw-JA-Q0y"/>
  166 + <constraint firstItem="3iC-h2-GLD" firstAttribute="leading" secondItem="yYa-Yh-jMm" secondAttribute="leading" constant="10" id="tYS-Bh-NlN"/>
  167 + </constraints>
  168 + </tableViewCellContentView>
  169 + <connections>
  170 + <outlet property="endTime" destination="m2d-nZ-oIw" id="ZpU-Qi-TcG"/>
  171 + <outlet property="examinePerson" destination="CmX-ZE-z2v" id="GaV-qe-fuK"/>
  172 + <outlet property="startTime" destination="o1S-an-wZs" id="Qec-Kk-7UW"/>
  173 + <outlet property="upLine" destination="zCX-fI-ung" id="2Yc-jg-N9W"/>
  174 + <outlet property="vacateName" destination="SMb-fO-hlW" id="P18-Y5-fEa"/>
  175 + <outlet property="vacateResult" destination="P6F-mV-ell" id="LDB-dx-UoA"/>
  176 + <outlet property="vacateType" destination="tQ9-wo-yko" id="NeS-11-BX1"/>
  177 + </connections>
  178 + <point key="canvasLocation" x="-252.5" y="9"/>
  179 + </tableViewCell>
  180 + </objects>
  181 + <resources>
  182 + <image name="grow_ellipse" width="10" height="10"/>
  183 + </resources>
  184 +</document>
... ...
ParentAssistant/ParentAssistant/Classes/controllers/Grow/View/ProgramVacateTableViewCell.swift 0 → 100644
... ... @@ -0,0 +1,26 @@
  1 +//
  2 +// ProgramVacateTableViewCell.swift
  3 +// ParentAssistant
  4 +//
  5 +// Created by Cao yang on 2018/4/12.
  6 +// Copyright © 2018年 HANGZHOUTEAM. All rights reserved.
  7 +//
  8 +
  9 +import UIKit
  10 +
  11 +class ProgramVacateTableViewCell: UITableViewCell {
  12 +
  13 + @IBOutlet weak var vacateName: UILabel!
  14 + @IBOutlet weak var startTime: UILabel!
  15 + @IBOutlet weak var endTime: UILabel!
  16 + override func awakeFromNib() {
  17 + super.awakeFromNib()
  18 + // Initialization code
  19 + }
  20 +
  21 + override func setSelected(_ selected: Bool, animated: Bool) {
  22 + super.setSelected(selected, animated: animated)
  23 +
  24 + // Configure the view for the selected state
  25 + }
  26 +}
... ...
ParentAssistant/ParentAssistant/Classes/controllers/Grow/View/ProgramVacateTableViewCell.xib 0 → 100644
... ... @@ -0,0 +1,109 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14109" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
  3 + <device id="retina4_7" orientation="portrait">
  4 + <adaptation id="fullscreen"/>
  5 + </device>
  6 + <dependencies>
  7 + <deployment identifier="iOS"/>
  8 + <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
  9 + <capability name="Safe area layout guides" minToolsVersion="9.0"/>
  10 + <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
  11 + </dependencies>
  12 + <objects>
  13 + <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
  14 + <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
  15 + <tableViewCell contentMode="scaleToFill" selectionStyle="none" indentationWidth="10" reuseIdentifier="ProgramVacateTableViewCell" rowHeight="92" id="KGk-i7-Jjw" customClass="ProgramVacateTableViewCell" customModule="ParentAssistant" customModuleProvider="target">
  16 + <rect key="frame" x="0.0" y="0.0" width="389" height="92"/>
  17 + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
  18 + <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
  19 + <rect key="frame" x="0.0" y="0.0" width="389" height="91.5"/>
  20 + <autoresizingMask key="autoresizingMask"/>
  21 + <subviews>
  22 + <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="A0K-zH-Rt1">
  23 + <rect key="frame" x="10" y="10" width="369" height="72"/>
  24 + <subviews>
  25 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="-" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="H0L-Bl-DnY">
  26 + <rect key="frame" x="207" y="41.5" width="8" height="20.5"/>
  27 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  28 + <nil key="textColor"/>
  29 + <nil key="highlightedColor"/>
  30 + </label>
  31 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请假人:" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6Tv-CA-ehv">
  32 + <rect key="frame" x="10" y="10" width="57" height="21"/>
  33 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  34 + <nil key="textColor"/>
  35 + <nil key="highlightedColor"/>
  36 + </label>
  37 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="张三" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vif-Lw-a1X">
  38 + <rect key="frame" x="77" y="10" width="35" height="21"/>
  39 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  40 + <nil key="textColor"/>
  41 + <nil key="highlightedColor"/>
  42 + </label>
  43 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="请假日期:" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bJt-wD-aUL">
  44 + <rect key="frame" x="10" y="41" width="74" height="21"/>
  45 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  46 + <nil key="textColor"/>
  47 + <nil key="highlightedColor"/>
  48 + </label>
  49 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2018/04/02" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Rel-Qy-6VP">
  50 + <rect key="frame" x="94" y="41" width="90" height="21"/>
  51 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  52 + <nil key="textColor"/>
  53 + <nil key="highlightedColor"/>
  54 + </label>
  55 + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="2018/04/02" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gIK-21-Af2">
  56 + <rect key="frame" x="220" y="41" width="90" height="21"/>
  57 + <fontDescription key="fontDescription" type="system" pointSize="17"/>
  58 + <nil key="textColor"/>
  59 + <nil key="highlightedColor"/>
  60 + </label>
  61 + <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="grow_calendar" translatesAutoresizingMaskIntoConstraints="NO" id="B3i-HY-f54">
  62 + <rect key="frame" x="189" y="45.5" width="13" height="12"/>
  63 + </imageView>
  64 + <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="grow_calendar" translatesAutoresizingMaskIntoConstraints="NO" id="ilp-az-hgB">
  65 + <rect key="frame" x="315" y="45.5" width="13" height="12"/>
  66 + </imageView>
  67 + </subviews>
  68 + <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
  69 + <constraints>
  70 + <constraint firstItem="bJt-wD-aUL" firstAttribute="top" secondItem="6Tv-CA-ehv" secondAttribute="bottom" constant="10" id="0OL-rx-svf"/>
  71 + <constraint firstItem="ilp-az-hgB" firstAttribute="centerY" secondItem="bJt-wD-aUL" secondAttribute="centerY" id="7EV-jy-9F4"/>
  72 + <constraint firstItem="vif-Lw-a1X" firstAttribute="centerY" secondItem="6Tv-CA-ehv" secondAttribute="centerY" id="7TD-NT-Lxd"/>
  73 + <constraint firstItem="H0L-Bl-DnY" firstAttribute="centerY" secondItem="bJt-wD-aUL" secondAttribute="centerY" id="ITS-GX-y9S"/>
  74 + <constraint firstItem="B3i-HY-f54" firstAttribute="centerY" secondItem="Rel-Qy-6VP" secondAttribute="centerY" id="JcP-od-r2M"/>
  75 + <constraint firstItem="ilp-az-hgB" firstAttribute="leading" secondItem="gIK-21-Af2" secondAttribute="trailing" constant="5" id="Kdw-IT-c8d"/>
  76 + <constraint firstItem="H0L-Bl-DnY" firstAttribute="leading" secondItem="B3i-HY-f54" secondAttribute="trailing" constant="5" id="SZC-UD-HMF"/>
  77 + <constraint firstItem="Rel-Qy-6VP" firstAttribute="centerY" secondItem="bJt-wD-aUL" secondAttribute="centerY" id="axv-QG-Ntd"/>
  78 + <constraint firstItem="6Tv-CA-ehv" firstAttribute="leading" secondItem="A0K-zH-Rt1" secondAttribute="leading" constant="10" id="bMD-p2-wnP"/>
  79 + <constraint firstItem="bJt-wD-aUL" firstAttribute="leading" secondItem="6Tv-CA-ehv" secondAttribute="leading" id="mK7-vI-tFc"/>
  80 + <constraint firstItem="gIK-21-Af2" firstAttribute="centerY" secondItem="bJt-wD-aUL" secondAttribute="centerY" id="peU-cr-ev1"/>
  81 + <constraint firstItem="vif-Lw-a1X" firstAttribute="leading" secondItem="6Tv-CA-ehv" secondAttribute="trailing" constant="10" id="pnQ-fK-xwq"/>
  82 + <constraint firstItem="Rel-Qy-6VP" firstAttribute="leading" secondItem="bJt-wD-aUL" secondAttribute="trailing" constant="10" id="sGH-i2-tjB"/>
  83 + <constraint firstItem="6Tv-CA-ehv" firstAttribute="top" secondItem="A0K-zH-Rt1" secondAttribute="top" constant="10" id="sXD-DY-NqG"/>
  84 + <constraint firstItem="gIK-21-Af2" firstAttribute="leading" secondItem="H0L-Bl-DnY" secondAttribute="trailing" constant="5" id="vcT-Nz-jpC"/>
  85 + <constraint firstItem="B3i-HY-f54" firstAttribute="leading" secondItem="Rel-Qy-6VP" secondAttribute="trailing" constant="5" id="x47-0x-gfz"/>
  86 + </constraints>
  87 + </view>
  88 + </subviews>
  89 + <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
  90 + <constraints>
  91 + <constraint firstItem="A0K-zH-Rt1" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="10" id="GYT-zJ-fus"/>
  92 + <constraint firstAttribute="trailing" secondItem="A0K-zH-Rt1" secondAttribute="trailing" constant="10" id="JFC-pM-1F3"/>
  93 + <constraint firstItem="A0K-zH-Rt1" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="10" id="lo1-GF-rL8"/>
  94 + <constraint firstAttribute="bottom" secondItem="A0K-zH-Rt1" secondAttribute="bottom" constant="10" id="thL-h4-Sig"/>
  95 + </constraints>
  96 + </tableViewCellContentView>
  97 + <viewLayoutGuide key="safeArea" id="njF-e1-oar"/>
  98 + <connections>
  99 + <outlet property="endTime" destination="gIK-21-Af2" id="YWL-mH-LCE"/>
  100 + <outlet property="startTime" destination="Rel-Qy-6VP" id="yWM-28-kpK"/>
  101 + <outlet property="vacateName" destination="vif-Lw-a1X" id="Hyd-gs-iH0"/>
  102 + </connections>
  103 + <point key="canvasLocation" x="59.5" y="-38"/>
  104 + </tableViewCell>
  105 + </objects>
  106 + <resources>
  107 + <image name="grow_calendar" width="13" height="12"/>
  108 + </resources>
  109 +</document>
... ...
ParentAssistant/ParentAssistant/Supporting Files/Assets.xcassets/report/grow_calendar.imageset/Contents.json 0 → 100644
... ... @@ -0,0 +1,21 @@
  1 +{
  2 + "images" : [
  3 + {
  4 + "idiom" : "universal",
  5 + "scale" : "1x"
  6 + },
  7 + {
  8 + "idiom" : "universal",
  9 + "filename" : "grow_calendar@2x.png",
  10 + "scale" : "2x"
  11 + },
  12 + {
  13 + "idiom" : "universal",
  14 + "scale" : "3x"
  15 + }
  16 + ],
  17 + "info" : {
  18 + "version" : 1,
  19 + "author" : "xcode"
  20 + }
  21 +}
0 22 \ No newline at end of file
... ...
ParentAssistant/ParentAssistant/Supporting Files/Assets.xcassets/report/grow_calendar.imageset/grow_calendar@2x.png 0 → 100644

751 Bytes

ParentAssistant/ParentAssistant/Supporting Files/Assets.xcassets/report/grow_ellipse.imageset/Contents.json 0 → 100644
... ... @@ -0,0 +1,21 @@
  1 +{
  2 + "images" : [
  3 + {
  4 + "idiom" : "universal",
  5 + "scale" : "1x"
  6 + },
  7 + {
  8 + "idiom" : "universal",
  9 + "filename" : "grow_ellipse@2x.png",
  10 + "scale" : "2x"
  11 + },
  12 + {
  13 + "idiom" : "universal",
  14 + "scale" : "3x"
  15 + }
  16 + ],
  17 + "info" : {
  18 + "version" : 1,
  19 + "author" : "xcode"
  20 + }
  21 +}
0 22 \ No newline at end of file
... ...
ParentAssistant/ParentAssistant/Supporting Files/Assets.xcassets/report/grow_ellipse.imageset/grow_ellipse@2x.png 0 → 100644

322 Bytes