tovolApply.vue 23 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009
  1. <template>
  2. <view class="content">
  3. <!-- <view class="top">
  4. <image src="../../static/img/activity.png" mode=""></image>
  5. </view>
  6. -->
  7. <view class="box">
  8. <!-- <view class="red-box">
  9. 申请登记表
  10. </view> -->
  11. <view class="box-1">
  12. <view class="box-left">
  13. 姓名
  14. <text class="imp">*</text>
  15. </view>
  16. <input type="text" placeholder="请填写你的名字" value="" class="list-input" v-model="name" />
  17. </view>
  18. <view class="box-1">
  19. <view class="box-left">
  20. 性别
  21. <text class="imp">*</text>
  22. </view>
  23. <picker @change="bindPickerSex" :value="index" :range="array">
  24. <view class="box-right">{{ sex == '0'? '男' : sex == '1'? '女' : sex }}</view>
  25. </picker>
  26. </view>
  27. <view class="box-1">
  28. <view class="box-left">
  29. 出生年月
  30. <text class="imp">*</text>
  31. </view>
  32. <picker mode="date" :value="birth" :start="startDate" :end="endDate" @change="bindDateChange">
  33. <view class="box-right">{{ birth }}</view>
  34. </picker>
  35. </view>
  36. <view class="upload-box">
  37. <view class="upload-left">
  38. 照片
  39. <text class="imp">*</text>
  40. </view>
  41. <view class="upload-right">
  42. <image :src="cardimg" mode="" class="upload-img" @click.stop="imgsub" v-if="cardimg"></image>
  43. <image src="../../static/images/upload.png" class="upload-img" mode="" v-if="!cardimg" @click.stop="imgsub"></image>
  44. </view>
  45. </view>
  46. <view class="box-1">
  47. <view class="box-left">
  48. 移动电话
  49. <text class="imp">*</text>
  50. </view>
  51. <input type="text" placeholder="请填写移动电话" value="" class="list-input" v-model="phone" />
  52. </view>
  53. <view class="box-1">
  54. <view class="box-left">电子邮件(选填)</view>
  55. <input type="text" placeholder="请填写电子邮件" value="" class="list-input" v-model="email" />
  56. </view>
  57. <view class="box-1">
  58. <view class="box-left">联系地址<text class="imp">*</text></view>
  59. <input type="text" value="" placeholder="请填写联系地址" class="list-input" v-model="address" />
  60. </view>
  61. <view class="box-1">
  62. <view class="box-left">工作单位(选填)</view>
  63. <input type="text" value="" placeholder="请填写工作单位" class="list-input" v-model="work" />
  64. </view>
  65. <view class="box-1">
  66. <view class="box-left">职业/职务/专业(选填)</view>
  67. <input type="text" placeholder="请填写职业/职务/专业" value="" class="list-input" v-model="specialty" />
  68. </view>
  69. <view class="box-1">
  70. <view class="box-left">教育程度<text class="imp">*</text></view>
  71. <picker @change="bindPickerEdu" :value="index" :range="chooseEdu">
  72. <view class="box-right">{{ education }}</view>
  73. </picker>
  74. </view>
  75. <view class="box-1">
  76. <view class="box-left">
  77. 是否受过志愿服务
  78. <text class="imp">*</text>
  79. </view>
  80. </view>
  81. <view class="uni-list">
  82. <radio-group @change="radioChange">
  83. <view class="radio-list flex_item">
  84. <label class="uni-list-cell uni-list-cell-pd flex_item" v-for="(item, index) in is_vol" :key="item.id">
  85. <view><radio style="transform:scale(0.7)" color="#E71F2C" :value="item.id" :checked="index === current" /></view>
  86. <view>{{ item.name }}</view>
  87. </label>
  88. </view>
  89. </radio-group>
  90. </view>
  91. <view class="box-1">
  92. <view class="box-left">
  93. 有无服务经验
  94. <text class="imp">*</text>
  95. </view>
  96. </view>
  97. <view class="uni-list">
  98. <radio-group @change="radioChange1">
  99. <view class="radio-list flex_item">
  100. <label class="uni-list-cell uni-list-cell-pd flex_item" v-for="(item, index) in is_experience" :key="item.id">
  101. <view><radio style="transform:scale(0.7)" color="#E71F2C" :value="item.id" :checked="index === current" /></view>
  102. <view>{{ item.name }}</view>
  103. </label>
  104. </view>
  105. </radio-group>
  106. </view>
  107. <view class="list-box">
  108. <view class="list-title">可提供服务的时间</view>
  109. <view class="tip">请选择适当方格,可选多项</view>
  110. <view class="content_box">
  111. <view class="box-1" style="margin: 10rpx;">
  112. <view class="box-left">
  113. 开始时间
  114. <text class="imp">*</text>
  115. </view>
  116. <picker mode="time" :value="start_hour" @change="startTimeChange">
  117. <view class="box-right">{{ start_hour }}</view>
  118. </picker>
  119. </view>
  120. <view class="box-1" style="margin: 10rpx;">
  121. <view class="box-left">
  122. 结束时间
  123. <text class="imp">*</text>
  124. </view>
  125. <picker mode="time" :value="end_hour" :start="start_hour" @change="endTimeChange">
  126. <view class="box-right">{{ end_hour }}</view>
  127. </picker>
  128. </view>
  129. </view>
  130. <view class="content_box">
  131. <view class="list-name">
  132. 日期
  133. <text class="icon">*</text>
  134. </view>
  135. <view class="uni-list">
  136. <checkbox-group @change="checkboxChange1">
  137. <view class="radio-list flex_item">
  138. <label class="uni-list-cell uni-list-cell-pd flex_item" v-for="item in items" :key="item.name">
  139. <view><checkbox :value="item.value" style="transform:scale(0.7)" color="#E71F2C" :checked="item.checked" /></view>
  140. <view>{{ item.name }}</view>
  141. </label>
  142. </view>
  143. </checkbox-group>
  144. </view>
  145. </view>
  146. </view>
  147. <view class="list-box tpl-box">
  148. <view class="list-title">有兴趣参与的工作</view>
  149. <view class="tip">请选择适当方格,可选多项</view>
  150. <view class="content_box">
  151. <view class="uni-list">
  152. <checkbox-group @change="checkboxChange2">
  153. <view class="radio-list flex_item">
  154. <label class="uni-list-cell uni-list-cell-pd flex_item" v-for="item in works" :key="item.name">
  155. <view><checkbox :value="item.name" style="transform:scale(0.7)" color="#E71F2C" :checked="item.checked" /></view>
  156. <view>{{ item.name }}</view>
  157. </label>
  158. </view>
  159. </checkbox-group>
  160. </view>
  161. <input class="worksInput" type="text" v-model="worksText" />
  162. </view>
  163. </view>
  164. <view class="list-box tpl-box">
  165. <view class="list-title">专长</view>
  166. <view class="tip">请选择适当方格,可选多项</view>
  167. <view class="content_box">
  168. <view class="uni-list">
  169. <checkbox-group @change="checkboxChange3">
  170. <view class="radio-list flex_item">
  171. <label class="uni-list-cell uni-list-cell-pd flex_item" v-for="item in expertise" :key="item.name">
  172. <view><checkbox :value="item.name" style="transform:scale(0.7)" color="#E71F2C" :checked="item.checked" /></view>
  173. <view>{{ item.name }}</view>
  174. </label>
  175. </view>
  176. </checkbox-group>
  177. </view>
  178. <input class="worksInput" type="text" v-model="expertiseText" />
  179. </view>
  180. </view>
  181. <view class="list-box">
  182. <view class="list-title">个人声明</view>
  183. <view class="check_box">
  184. <view>
  185. <radio style="transform: scale(0.75)" @click="Getcheckbox" color="#E62129" :checked="Getchecked" />
  186. 本人同意将个人资料送交红十字志愿者工作委员会,申请注册登记,成为光荣的红十字志愿工作者,并乐于接受志愿工作安排,提供服务。
  187. </view>
  188. </view>
  189. </view>
  190. </view>
  191. <view class="buttom" :class="{ action: loding }" @click="!loding ? join() : ''">立即提交</view>
  192. </view>
  193. </template>
  194. <script>
  195. import {
  196. saveUrl,
  197. interceptor
  198. } from '@/utils/loginUtils.js';
  199. import {
  200. mapState,
  201. mapMutations
  202. } from 'vuex';
  203. import { add_volunteers } from '@/api/index.js';
  204. import { upload } from '@/api/ask.js';
  205. export default {
  206. data() {
  207. const currentDate = this.getDate({
  208. format: true
  209. });
  210. return {
  211. otherjob: '',
  212. otherspe: '',
  213. loding: false, //是否提交中
  214. array: ['男', '女'],
  215. chooseEdu: ['小学以下', '小学', '初中', '高中/中专', '大专/本科', '硕士','博士','博士后'],
  216. chooseVol: ['有', '无'],
  217. is_experience: [
  218. {
  219. id: '1',
  220. name: '有'
  221. },
  222. {
  223. id: '2',
  224. name: '无'
  225. }
  226. ],
  227. // is_experience: '',
  228. chooseExp: ['是', '否'],
  229. start_hour:'选择开始时间',//开始时间
  230. end_hour:'选择结束时间',//
  231. quantum: '',
  232. //日期
  233. items: [
  234. {
  235. value: '2',
  236. name: '星期一'
  237. },
  238. {
  239. value: '3',
  240. name: '星期二'
  241. },
  242. {
  243. value: '4',
  244. name: '星期三'
  245. },
  246. {
  247. value: '5',
  248. name: '星期四'
  249. },
  250. {
  251. value: '6',
  252. name: '星期五'
  253. },
  254. {
  255. value: '7',
  256. name: '星期六'
  257. },
  258. {
  259. value: '1',
  260. name: '星期日'
  261. }
  262. ],
  263. dates: '',
  264. //有兴趣参与的工作
  265. works: [
  266. {
  267. value: '1',
  268. name: '赈灾工作'
  269. },
  270. {
  271. value: '2',
  272. name: '救护培训'
  273. },
  274. {
  275. value: '3',
  276. name: '护送服务'
  277. },
  278. {
  279. value: '4',
  280. name: '编辑及出版'
  281. },
  282. {
  283. value: '5',
  284. name: '医疗护理服务'
  285. },
  286. {
  287. value: '6',
  288. name: '探访服务'
  289. },
  290. {
  291. value: '7',
  292. name: '外语翻译'
  293. },
  294. {
  295. value: '8',
  296. name: '调查服务'
  297. },
  298. {
  299. value: '9',
  300. name: '联络服务'
  301. },
  302. {
  303. value: '10',
  304. name: '宣传及推广'
  305. },
  306. {
  307. value: '11',
  308. name: '文书档案工作'
  309. },
  310. {
  311. value: '12',
  312. name: '其它(请注明)'
  313. }
  314. ],
  315. taste: '',
  316. worksText: '', //工作其他
  317. //专长
  318. expertise: [
  319. {
  320. value: '1',
  321. name: '医疗护理'
  322. },
  323. {
  324. value: '2',
  325. name: '紧急救护'
  326. },
  327. {
  328. value: '3',
  329. name: '出版/美术设计'
  330. },
  331. {
  332. value: '4',
  333. name: '影音制作'
  334. },
  335. {
  336. value: '5',
  337. name: '文艺演出'
  338. },
  339. {
  340. value: '6',
  341. name: '网络软件'
  342. },
  343. {
  344. value: '7',
  345. name: '摄影摄像'
  346. },
  347. {
  348. value: '8',
  349. name: '电脑中文打字'
  350. },
  351. {
  352. value: '9',
  353. name: '汽车驾驶'
  354. },
  355. {
  356. value: '10',
  357. name: '外语翻译'
  358. },
  359. {
  360. value: '11',
  361. name: '法律咨询'
  362. },
  363. {
  364. value: '12',
  365. name: '文案策划'
  366. },
  367. {
  368. value: '13',
  369. name: '其它(请注明)'
  370. }
  371. ],
  372. speciali: '',
  373. current: '',
  374. is_vol: [
  375. {
  376. id: '1',
  377. name: '有'
  378. },
  379. {
  380. id: '0',
  381. name: '无'
  382. }
  383. ],
  384. index: 0,
  385. // mz: '',
  386. email: '',
  387. cardimg: '', //证件照
  388. // card: '',
  389. // checklist: [],
  390. name: '',
  391. sex: '请选择你的性别',
  392. birth: '请选择你的生日',
  393. fillingDate: '',
  394. phone: '',
  395. address: '',
  396. work: '',
  397. specialty: '',
  398. education: '请选择教育程度',
  399. educationid:'',
  400. checked1: '',
  401. checked: '',
  402. expertiseText: '', //专长其他
  403. Getchecked: false //个人声明
  404. };
  405. },
  406. onShow() {
  407. if (this.hasLogin) {
  408. // this.loadBaseData();
  409. } else {
  410. saveUrl();
  411. uni.showModal({
  412. title: '登录',
  413. content: '您未登录,是否马上登陆?',
  414. success: e => {
  415. if (e.confirm) {
  416. interceptor();
  417. }
  418. },
  419. fail: e => {
  420. console.log(e);
  421. }
  422. });
  423. }
  424. },
  425. computed: {
  426. ...mapState('user', ['userInfo', 'baseURL', 'hasLogin']),
  427. startDate() {
  428. return this.getDate('start');
  429. },
  430. endDate() {
  431. return this.getDate('end');
  432. }
  433. },
  434. methods: {
  435. async join() {
  436. let obj = this;
  437. if (obj.name == '') {
  438. obj.$api.msg('请输入您的姓名');
  439. return;
  440. }
  441. if (obj.sex === '') {
  442. obj.$api.msg('请输入您的性别');
  443. return;
  444. }
  445. if (obj.birth == '' || obj.birth == '请选择你的生日') {
  446. obj.$api.msg('请填写您的生日');
  447. return;
  448. }
  449. const reg = /^(\+?0?86-?)?1[\d]\d{9}$/;
  450. if (obj.phone == '') {
  451. obj.$api.msg('请填写您的移动电话');
  452. return;
  453. }
  454. if (!reg.test(obj.phone)) {
  455. obj.$api.msg('请填写正确的移动电话');
  456. return;
  457. }
  458. if (obj.address == '') {
  459. obj.$api.msg('请填写您的地址');
  460. return;
  461. }
  462. // /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/
  463. if (obj.checked1 === '') {
  464. obj.$api.msg('请选择有无服务经验');
  465. return;
  466. }
  467. if (obj.checked === '') {
  468. obj.$api.msg('请选择是否接受过志愿者服务');
  469. return;
  470. }
  471. if (obj.cardimg == '') {
  472. obj.$api.msg('请上传您的证件');
  473. return;
  474. }
  475. if (!obj.start_hour){
  476. this.$api.msg('请选择开始时间!');
  477. return;
  478. }
  479. if (!obj.end_hour){
  480. this.$api.msg('请选择结束时间!');
  481. return;
  482. }
  483. if (!obj.dates) {
  484. this.$api.msg('请选择日期!');
  485. return;
  486. }
  487. if(obj.education == '') {
  488. this.$api.msg('请选择教育程度!');
  489. return;
  490. }
  491. if (obj.Getchecked == false) {
  492. this.$api.msg('请阅读并同意个人声明!');
  493. return;
  494. }
  495. // let reg1 = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;
  496. // if (!reg1.test(obj.card)) {
  497. // obj.$api.msg('请填写正确的身份证信息');
  498. // return;
  499. // }
  500. // if (obj.mz == '') {
  501. // obj.$api.msg('请填写您所属的名族');
  502. // return;
  503. // }
  504. // if (obj.specialty == '') {
  505. // obj.$api.msg('请填写您的职位');
  506. // return;
  507. // }
  508. // obj.loding = true;
  509. add_volunteers({
  510. name: obj.name,//姓名
  511. phone: obj.phone,//手机号
  512. sex: obj.sex,//性别
  513. birth: obj.birth,//生日
  514. image: obj.cardimg,//照片
  515. email: obj.email,//邮件
  516. address: obj.address,//地址
  517. work: obj.work, //工作单位
  518. specialty: obj.specialty, //职业/职务/专业
  519. education: obj.educationid, //教育程度
  520. is_vol: obj.checked,//是否受过志愿者服务
  521. is_experience: obj.checked1,//有无工作经验
  522. start_hour: obj.start_hour,
  523. end_hour: obj.end_hour,
  524. work_week: obj.dates,//星期几
  525. taste: obj.taste,//有兴趣参与的工作
  526. taste_title: obj.worksText, //工作其他
  527. speciali: obj.speciali,//专长
  528. speciali_title: obj.expertiseText,//其他专长
  529. })
  530. .then(e => {
  531. obj.loding = false;
  532. obj.sex = '请选择你的性别';
  533. obj.education = '请选择教育程度';
  534. obj.birth = '请选择你的生日';
  535. uni.navigateTo({
  536. url: '../joinSuc/joinNow'
  537. });
  538. })
  539. .catch(function(e) {
  540. console.log('出错了');
  541. console.log(e);
  542. obj.loding = false;
  543. });
  544. },
  545. imgsub() {
  546. console.log('imgsub');
  547. upload({
  548. filename: ''
  549. }).then(data => {
  550. console.log(data,'2222')
  551. this.cardimg = data[0].fullurl;
  552. });
  553. },
  554. // 选择性别
  555. bindPickerSex: function(e) {
  556. this.sex = e.target.value
  557. this.index = e.target.value + 1;
  558. },
  559. // 选择教育程度
  560. bindPickerEdu: function(e) {
  561. this.education = this.chooseEdu[e.target.value];
  562. this.educationid = e.target.value;
  563. console.log(this.educationid)
  564. },
  565. // 选择日期
  566. bindDateChange: function(e) {
  567. this.birth = e.target.value;
  568. },
  569. // 选择开始时间
  570. startTimeChange: function(e) {
  571. console.log(e,'开始时间')
  572. this.start_hour = e.target.value;
  573. },
  574. // 选择结束时间
  575. endTimeChange: function(e) {
  576. this.end_hour = e.target.value;
  577. },
  578. //选择填写日期
  579. fillingDateChange: function(e) {
  580. this.fillingDate = e.target.value;
  581. },
  582. // 是否参加志愿活动
  583. bindPickerVol: function(e) {
  584. this.is_vol = this.chooseVol[e.target.value];
  585. this.index = e.target.value + 1;
  586. },
  587. // 有无服务经验
  588. radioChange1(evt) {
  589. this.checked1 = evt.detail.value;
  590. console.log(this.checked1, '有无服务经验');
  591. },
  592. //是否受过志愿服务
  593. radioChange(evt) {
  594. this.checked = evt.detail.value;
  595. console.log(this.checked, '是否受过志愿服务');
  596. },
  597. Getcheckbox() {
  598. let obj = this;
  599. obj.Getchecked = !obj.Getchecked;
  600. },
  601. getDate(type) {
  602. const date = new Date();
  603. let year = date.getFullYear();
  604. let month = date.getMonth() + 1;
  605. let day = date.getDate();
  606. if (type === 'start') {
  607. year = year - 60;
  608. } else if (type === 'end') {
  609. year = year + 2;
  610. }
  611. month = month > 9 ? month : '0' + month;
  612. day = day > 9 ? day : '0' + day;
  613. return `${year}-${month}-${day}`;
  614. },
  615. //时间段
  616. checkboxChange: function(e) {
  617. var items = this.days,
  618. values = e.detail.value;
  619. for (var i = 0, lenI = items.length; i < lenI; ++i) {
  620. const item = items[i];
  621. if (values.includes(item.value)) {
  622. this.$set(item, 'checked', true);
  623. } else {
  624. this.$set(item, 'checked', false);
  625. }
  626. }
  627. this.quantum = values.join(',');
  628. console.log(this.quantum, '时间段');
  629. },
  630. //日期
  631. checkboxChange1: function(e) {
  632. var items = this.items,
  633. values = e.detail.value;
  634. for (var i = 0, lenI = items.length; i < lenI; ++i) {
  635. const item = items[i];
  636. if (values.includes(item.value)) {
  637. this.$set(item, 'checked', true);
  638. } else {
  639. this.$set(item, 'checked', false);
  640. }
  641. }
  642. this.dates = values.join(',');
  643. console.log(this.dates, '日期');
  644. },
  645. //有兴趣参与的工作
  646. checkboxChange2: function(e) {
  647. var items = this.works,
  648. values = e.detail.value;
  649. for (var i = 0, lenI = items.length; i < lenI; ++i) {
  650. const item = items[i];
  651. if (values.includes(item.value)) {
  652. this.$set(item, 'checked', true);
  653. } else {
  654. this.$set(item, 'checked', false);
  655. }
  656. }
  657. this.taste = values.join(',');
  658. console.log(this.taste, '有兴趣参与的工作');
  659. },
  660. //专长
  661. checkboxChange3: function(e) {
  662. var items = this.expertise,
  663. values = e.detail.value;
  664. for (var i = 0, lenI = items.length; i < lenI; ++i) {
  665. const item = items[i];
  666. if (values.includes(item.value)) {
  667. this.$set(item, 'checked', true);
  668. } else {
  669. this.$set(item, 'checked', false);
  670. }
  671. }
  672. this.speciali = values.join(',');
  673. console.log(this.speciali, '专长');
  674. }
  675. }
  676. };
  677. </script>
  678. <style lang="scss">
  679. page {
  680. background-color: #ffffff;
  681. }
  682. .content {
  683. // padding-top: 64rpx;
  684. // background-color: #f3afad;
  685. .top {
  686. width: 100%;
  687. height: 368rpx;
  688. image {
  689. width: 100%;
  690. height: 368rpx;
  691. }
  692. }
  693. .info-box {
  694. text-indent: 64rpx;
  695. margin: 12rpx 0 54rpx;
  696. padding: 0 32rpx 20rpx;
  697. // border: 3rpx solid #009100;
  698. width: 100%;
  699. display: flex;
  700. flex-direction: column;
  701. border-radius: 25rpx;
  702. color: #e63931;
  703. }
  704. .statement {
  705. // margin: 32rpx;
  706. background-color: #ffffff;
  707. // padding: 32rpx 23rpx;
  708. border-radius: 12rpx;
  709. .title {
  710. height: 84rpx;
  711. display: flex;
  712. justify-content: center;
  713. align-items: center;
  714. font-size: 32rpx;
  715. border-bottom: 2rpx dotted #f3f3f3;
  716. }
  717. .main {
  718. padding: 24rpx;
  719. text-indent: 48rpx;
  720. color: #666;
  721. font-weight: 400;
  722. }
  723. }
  724. .buttom {
  725. width: 100%;
  726. height: 100rpx;
  727. background: #df2412;
  728. margin: 50rpx auto 0;
  729. font-size: 36rpx;
  730. font-weight: 400;
  731. color: #ffffff;
  732. line-height: 100rpx;
  733. text-align: center;
  734. &.action {
  735. background: #999999;
  736. }
  737. }
  738. .box {
  739. // margin-top: 44rpx;
  740. // width: 690rpx;
  741. // margin: 32rpx auto 0;
  742. background-color: #ffffff;
  743. border-radius: 10rpx;
  744. padding: 28rpx 32rpx 84rpx 32rpx;
  745. position: relative;
  746. // .red-box {
  747. // width: 405rpx;
  748. // line-height: 66rpx;
  749. // text-align: center;
  750. // background: linear-gradient(0deg, #C90F1B, #F14D33);
  751. // border-radius: 10rpx;
  752. // font-size: 30rpx;
  753. // font-weight: 500;
  754. // color: #FFFFFF;
  755. // // position: relative;
  756. // position: absolute;
  757. // top: -36rpx;
  758. // left: 50%;
  759. // transform: translateX(-50%);
  760. // z-index: 1;
  761. // }
  762. .box-check {
  763. font-size: 28rpx;
  764. font-weight: 500;
  765. color: #666666;
  766. line-height: 100rpx;
  767. }
  768. .imp {
  769. color: red;
  770. margin-left: 5rpx;
  771. }
  772. .check-box {
  773. margin: 44rpx 0rpx;
  774. padding: 25rpx 25rpx;
  775. border: 3rpx solid #e9b2af;
  776. width: 100%;
  777. display: flex;
  778. flex-direction: column;
  779. border-radius: 25rpx;
  780. color: #e63931;
  781. .info {
  782. margin-bottom: 32rpx;
  783. text-align: center;
  784. }
  785. .chooseTim {
  786. text-align: center;
  787. font-size: 42rpx;
  788. }
  789. .choose-job {
  790. color: #666666;
  791. // height: 45rpx; 爱心捐赠
  792. .goods_check {
  793. display: flex;
  794. flex-direction: column;
  795. .uni-label-pointer {
  796. // width: 50%;
  797. // display: flex;
  798. }
  799. }
  800. .other {
  801. width: 100%;
  802. border-bottom: 2rpx solid #f3f3f3;
  803. }
  804. }
  805. .box-cent {
  806. font-size: 28rpx;
  807. font-weight: 500;
  808. color: #666666;
  809. display: flex;
  810. .cent-left {
  811. margin-right: 28rpx;
  812. .left-txt {
  813. line-height: 100rpx;
  814. }
  815. }
  816. .cent-right {
  817. flex: 1;
  818. display: flex;
  819. justify-content: space-around;
  820. .right-check {
  821. line-height: 100rpx;
  822. }
  823. }
  824. }
  825. }
  826. .box-1 {
  827. display: flex;
  828. justify-content: space-between;
  829. align-items: center;
  830. width: 100%;
  831. margin-top: 42rpx;
  832. // height: 133rpx;
  833. .box-left {
  834. padding-left: 2rpx;
  835. width: 50%;
  836. text-align: left;
  837. color: #000000;
  838. }
  839. input {
  840. height: 66rpx;
  841. line-height: 66rpx;
  842. // height: 88rpx;
  843. }
  844. .list-input {
  845. padding-left: 24rpx;
  846. // margin: 12rpx 0 ;
  847. font-size: 28rpx;
  848. // line-height: 66rpx;
  849. display: flex;
  850. align-items: center;
  851. width: 50%;
  852. flex: 1;
  853. color: #000000;
  854. text-align: right;
  855. padding-right: 24rpx;
  856. .input-placeholder {
  857. height: 70rpx;
  858. color: #959595;
  859. }
  860. }
  861. .box-right {
  862. display: flex;
  863. padding-left: 24rpx;
  864. height: 66rpx;
  865. line-height: 66rpx;
  866. border-radius: 22rpx;
  867. // margin: 32rpx 36rpx 0 36rpx;
  868. width: 100%;
  869. padding-right: 24rpx;
  870. font-size: 28rpx;
  871. color: #959595;
  872. text-align: right !important;
  873. // line-height: 1;
  874. }
  875. }
  876. .upload-box {
  877. width: 100%;
  878. height: 247rpx;
  879. background: #ffffff;
  880. // border: 1px solid #E63931;
  881. border-radius: 27rpx;
  882. display: flex;
  883. flex-direction: column;
  884. padding: 30rpx 40rpx 30rpx 0;
  885. margin: 42rpx auto 30rpx;
  886. .upload-left {
  887. font-weight: 400;
  888. color: #000000;
  889. }
  890. .upload-right {
  891. flex: 1;
  892. display: flex;
  893. align-items: center;
  894. justify-content: center;
  895. .upload-img {
  896. width: 150rpx;
  897. height: 150rpx;
  898. margin-top: 24rpx;
  899. }
  900. }
  901. }
  902. }
  903. .flex_item {
  904. display: flex;
  905. align-items: center;
  906. }
  907. .radio-list {
  908. display: flex;
  909. flex-wrap: wrap;
  910. font-size: 28rpx;
  911. padding-top: 30rpx;
  912. color: #000000;
  913. .uni-label-pointer {
  914. padding-right: 25rpx;
  915. padding-bottom: 30rpx;
  916. }
  917. }
  918. .check_box {
  919. padding: 25rpx 25rpx;
  920. font-size: 28rpx;
  921. }
  922. .list-box {
  923. background-color: #ffffff;
  924. font-size: 28rpx;
  925. width: 100%;
  926. height: 100%;
  927. border-top: 15rpx solid #f2f2f2;
  928. color: #222222;
  929. .worksInput {
  930. margin-bottom: 35rpx;
  931. border: 2rpx solid #979797;
  932. width: 100%;
  933. height: 70rpx;
  934. line-height: 70rpx;
  935. padding: 0rpx 25rpx;
  936. border-radius: 15rpx;
  937. }
  938. .list-title {
  939. color: #000000;
  940. text-align: center;
  941. padding: 30rpx 0rpx;
  942. font-size: 34rpx;
  943. font-weight: 500;
  944. border-bottom: 2rpx dashed #b5b5b5;
  945. }
  946. .tip {
  947. color: #000000;
  948. padding-top: 25rpx;
  949. width: 100%;
  950. text-align: center;
  951. }
  952. .icon {
  953. color: red;
  954. margin-left: 5rpx;
  955. }
  956. }
  957. }
  958. </style>