You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

372 lines
10 KiB

  1. <template>
  2. <view class="enSecBox">
  3. <!-- 已完成 类名 sSec1Type1 图片 enter1-1 enter1-2 enter1-3 enter1-4 enter1-5-->
  4. <!-- 未完成 类名 sSec1Type2 图片 enter2-1 enter2-2 enter2-3 enter2-4 enter2-5-->
  5. <!-- 可以点击类名 sSec1Tap -->
  6. <view class="ensHeader">
  7. <view class="ensTime">{{ year }}</view>
  8. <view class="ensHeadT">新生入校流程</view>
  9. </view>
  10. <view class="ensSec1">
  11. <view class="eSec1Box">
  12. <view class="eSec1Top">step<text>1</text></view>
  13. <view :class="one? 'sSec1Type1' : 'sSec1Type2'" style="padding-top: 21px;padding-bottom:21px" class="sSec1Con" id="IsCompleteInfo" @click="tapList('../welcome/list')">
  14. <image src="@/static/img-notice2/stu-info.jpg" mode="widthFix"></image>
  15. <view class="sSec1Txt">
  16. 完善学生信息
  17. </view>
  18. <view class="checkBoxRight">
  19. <view class="check-border-box">
  20. <view v-if="one" style="margin-left:2px;width: 32px;">
  21. <image src="@/static/img-notice2/right.png" mode="widthFix"></image>
  22. </view>
  23. </view>
  24. <view class="sSec1State" v-if="one">完成</view>
  25. <view class="sSec1State" v-else>未完成</view>
  26. </view>
  27. </view>
  28. </view>
  29. <view class="eSec1Box">
  30. <image src="~@/common/images/enter1-6.png" class="sSecDown" mode="widthFix"></image>
  31. <view class="eSec1Top">step<text>2</text></view>
  32. <view :class="twoOne? 'sSec1Type1' : 'sSec1Type2'" class="sSec1Con" id="PayFeeStatus" @click="tapList('/pages/EducationalAdministration/StuInfoFresh/PayFee/list')">
  33. <image src="@/static/img-notice2/stu-pay.png" mode="widthFix"></image>
  34. <view class="sSec1Txt">
  35. 线上缴费
  36. <text>扫描二维码缴费</text>
  37. </view>
  38. <view class="checkBoxRight">
  39. <view class="check-border-box" >
  40. <view v-if="twoOne" style="margin-left:2px;width: 32px;">
  41. <image src="@/static/img-notice2/right.png" mode="widthFix"></image>
  42. </view>
  43. </view>
  44. <view class="sSec1State" v-if="twoOne">完成</view>
  45. <view class="sSec1State" v-else>未完成</view>
  46. </view>
  47. </view>
  48. <!-- <view :class="twoTwo? 'sSec1Type1' : 'sSec1Type2'" class="sSec1Con" id="StudentLoan" @click="tapList('../EducationalAdministration/StuInfoFresh/StudentLoan/list')">
  49. <image src="@/static/img-notice2/stu-daikuan.png" mode="widthFix"></image>
  50. <view class="sSec1Txt">
  51. 助学贷款
  52. <text>填写贷款回执码</text>
  53. </view>
  54. <view class="checkBoxRight">
  55. <view class="check-border-box" >
  56. <view v-if="twoTwo" style="margin-left:2px;width: 32px;">
  57. <image src="@/static/img-notice2/right.png" mode="widthFix"></image>
  58. </view>
  59. </view>
  60. <view class="sSec1State" v-if="twoTwo">完成</view>
  61. <view class="sSec1State" v-else>未完成</view>
  62. </view>
  63. </view> -->
  64. <view :class="twoThree? 'sSec1Type1' : 'sSec1Type2'" class="sSec1Con" id="OnsitePayFeeStatus">
  65. <image src="@/static/img-notice2/stu-jiaofei.png" mode="widthFix"></image>
  66. <view class="sSec1Txt">
  67. 现场缴费
  68. <text>学校现场缴费</text>
  69. </view>
  70. <view class="checkBoxRight">
  71. <view class="check-border-box" >
  72. <view v-if="twoThree" style="margin-left:2px;width: 32px;">
  73. <image src="@/static/img-notice2/right.png" mode="widthFix"></image>
  74. </view>
  75. </view>
  76. <view class="sSec1State" v-if="twoThree">完成</view>
  77. <view class="sSec1State" v-else>未完成</view>
  78. </view>
  79. </view>
  80. <view :class="twoFour? 'sSec1Type1' : 'sSec1Type2'" class="sSec1Con" id="OnsitePayFeeStatus">
  81. <image src="@/static/img-notice2/stu-facecheck.png" mode="widthFix"></image>
  82. <view class="sSec1Txt">
  83. 人脸核验
  84. <text>进行人脸识别身份验证</text>
  85. </view>
  86. <view class="checkBoxRight">
  87. <view class="check-border-box" >
  88. <view v-if="twoFour" style="margin-left:2px;width: 32px;">
  89. <image src="@/static/img-notice2/right.png" mode="widthFix"></image>
  90. </view>
  91. </view>
  92. <view class="sSec1State" v-if="twoFour">完成</view>
  93. <view class="sSec1State" v-else>未完成</view>
  94. </view>
  95. </view>
  96. </view>
  97. <view class="eSec1Box">
  98. <image src="~@/common/images/enter1-6.png" class="sSecDown" mode="widthFix"></image>
  99. <view class="eSec1Top">step<text>3</text></view>
  100. <view :class="three? 'sSec1Type1' : 'sSec1Type2'" class="sSec1Con" id="RegisterStatus" @click="()=>{if(twoFour){tapList('../EducationalAdministration/StuInfoFresh/RegisterQRCode/list')}else{TOAST('请核验人脸后再报到注册')}}">
  101. <image src="@/static/img-notice2/qrcode.png" mode="widthFix"></image>
  102. <view class="sSec1Txt">
  103. 报到注册
  104. <text>生成报到二维码,并显示报到教室</text>
  105. </view>
  106. <view class="checkBoxRight">
  107. <view class="check-border-box" >
  108. <view v-if="twoThree" style="margin-left:2px;width: 32px;">
  109. <image src="@/static/img-notice2/right.png" mode="widthFix"></image>
  110. </view>
  111. </view>
  112. <view class="sSec1State" v-if="twoThree">完成</view>
  113. <view class="sSec1State" v-else>未完成</view>
  114. </view>
  115. </view>
  116. </view>
  117. </view>
  118. </view>
  119. </template>
  120. <script>
  121. import todayTime from '@/common/js/todayTime.js';
  122. export default{
  123. data() {
  124. return {
  125. one: '',
  126. twoOne: '',
  127. // twoTwo: '',
  128. twoThree: '',
  129. twoFour:'',
  130. three: '',
  131. userinfo: {},
  132. data: {
  133. StuInfoFreshEntity:{},
  134. StuInfoFreshFamilyList: [],
  135. StuInfoFreshEmergePeopleList: []
  136. },
  137. year:'',
  138. ready:false,
  139. }
  140. },
  141. onShow() {
  142. if(this.ready){
  143. this.init();
  144. }
  145. },
  146. methods:{
  147. init() {
  148. let _this = this;
  149. _this.userinfo = _this.GET_GLOBAL('loginUser'); //获取登录信息
  150. this.year = todayTime.doHandleYear()
  151. _this.LOADING('加载数据中…');
  152. _this.HTTP_GET('StuInfoFresh/stuInfoFreshEntity', _this.userinfo.account, '加载数据时出错').then(res => {
  153. this.ready = true
  154. _this.HIDE_LOADING();
  155. console.log(res);
  156. if(res.StuInfoFreshEntity == null){
  157. res.StuInfoFreshEntity = {}
  158. }
  159. _this.data = _this.COPY(res);
  160. if (this.data["StuInfoFreshFamilyList"].length && this.data["StuInfoFreshFamilyList"].length > 0) {
  161. _this.one = true
  162. } else {
  163. _this.one = false
  164. }
  165. if (_this.data["StuInfoFreshEntity"].PayFeeStatus == "1") {
  166. _this.twoOne = true
  167. } else {
  168. _this.twoOne = false
  169. }
  170. if (_this.data["StuInfoFreshEntity"].StudentLoanStatus == "1") {
  171. // _this.twoTwo = true
  172. } else {
  173. // _this.twoTwo = false
  174. }
  175. if (_this.data["StuInfoFreshEntity"].OnsitePayFeeStatus == "1") {
  176. _this.twoThree = true
  177. } else {
  178. _this.twoThree = false
  179. }
  180. if (_this.data["StuInfoFreshEntity"].RegisterStatus == "1") {
  181. _this.three = true
  182. } else {
  183. _this.three = false
  184. }
  185. if (_this.data["StuInfoFreshEntity"].PhotoCheckStatus == "1") {
  186. _this.twoFour = true
  187. } else {
  188. _this.twoFour = false
  189. }
  190. });
  191. },
  192. tapList(str) {
  193. this.NAV_TO(str, {}, true);
  194. }
  195. },
  196. created() {
  197. this.init()
  198. }
  199. }
  200. </script>
  201. <style lang="less" scoped>
  202. .enSecBox{
  203. min-height: 100vh;
  204. background-color: #fff;
  205. // padding-bottom: 20px;
  206. background-image: url("@/static/stu-bg.png");
  207. background-repeat: no-repeat;
  208. background-size: 100%;
  209. background-color: #0c86d8;
  210. }
  211. .ensTime{
  212. position: relative;
  213. text-align: center;
  214. line-height: 24px;
  215. font-size: 14px;
  216. color: #fff;
  217. }
  218. .ensTime:after,.ensTime::before{
  219. content: '';
  220. width: 6px;
  221. height: 6px;
  222. background-color: #fff;
  223. border-radius: 50%;
  224. position: absolute;
  225. top: 0;
  226. bottom: 0;
  227. margin: auto;
  228. }
  229. .ensTime:after{
  230. right: 32%;
  231. }
  232. .ensTime::before{
  233. left: 32%;
  234. }
  235. .ensHeader{
  236. // background-color: #0C86D8;
  237. // padding: 20px 0;
  238. padding-top: 8px;
  239. }
  240. .ensHeadT{
  241. font-size: 20px;
  242. color: #fff;
  243. text-align: center;
  244. margin-top: 15px;
  245. font-weight: 700;
  246. }
  247. .ensSec1{
  248. padding: 0 15px;
  249. padding-left: 25px;
  250. }
  251. .eSec1Box{
  252. position: relative;
  253. margin-top: 14px;
  254. }
  255. .eSec1Box:before{
  256. content: '';
  257. position: absolute;
  258. left: -10px;
  259. bottom: -26px;
  260. height: calc(100% + 10px);
  261. border-left: #abddff 2px dashed;
  262. }
  263. .eSec1Box:first-child{
  264. margin-top: 10px;
  265. }
  266. .eSec1Box:last-child:before{
  267. content: '';
  268. display: none;
  269. }
  270. .sSecDown{
  271. display: none;
  272. position: absolute;
  273. width: 25px;
  274. left: 0;
  275. right: 0;
  276. top: -4px;
  277. margin: auto;
  278. }
  279. .eSec1Top{
  280. font-size: 14px;
  281. font-weight: bold;
  282. color: #abddff;
  283. font-style: italic;
  284. padding-left: 8px;
  285. }
  286. .eSec1Top:before{
  287. content: '';
  288. background-color: #abddff;
  289. position: absolute;
  290. height: 8px;width: 8px;
  291. border-radius: 50%;
  292. left: -13px;
  293. top: 10px;
  294. }
  295. .eSec1Top text {
  296. color: #abddff;
  297. font-size: 20px;
  298. // margin-left: 5px;
  299. }
  300. .sSec1Con{
  301. padding: 14px 15px 14px 25px;
  302. display: flex;
  303. justify-content: space-between;
  304. align-items: center;
  305. margin-top: 10px;
  306. background-color: #fff;
  307. border-radius: 16px;
  308. position: relative;
  309. }
  310. .sSec1Type1{
  311. border: 2px solid #AEE8CF;
  312. // border-radius: 30px;
  313. }
  314. .sSec1Type1 .sSec1State{
  315. color: #9A9A9A;
  316. }
  317. .sSec1Type2{
  318. border: 2px solid #B8E2FF;
  319. // border-radius: 32px;
  320. }
  321. .sSec1Type2 .sSec1State{
  322. color: #9A9A9A;
  323. }
  324. .sSec1Con > image{
  325. width: 30px;
  326. }
  327. .sSec1State{
  328. font-size: 12px;
  329. margin-top: 4px;
  330. }
  331. .sSec1Txt{
  332. flex: 1;
  333. padding-left: 16px;
  334. font-size: 16px;
  335. text-align: left;
  336. color: #1A1A1A;
  337. margin: 5px 0;
  338. }
  339. .sSec1Txt text{
  340. display: block;
  341. color: #9A9A9A;
  342. margin-top: 4px;
  343. font-size: 12px;
  344. }
  345. .checkBoxRight{
  346. position: absolute;
  347. right: 0;
  348. height: 100%;
  349. border-radius: 0 16px 16px 0;
  350. border-left: 1px dashed #ABDDFF;
  351. width: 78px;
  352. background-color: #e5f4ff;
  353. text-align: center;
  354. }
  355. .check-border-box{
  356. border: #0C86D8 2px solid;
  357. width: 28px;height: 28px;
  358. border-radius: 2px;
  359. background: #fff;
  360. margin: 0 auto;
  361. margin-top: 18px;
  362. }
  363. </style>