record.vue 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773
  1. <template>
  2. <view class="content-box">
  3. <form @submit="formSubmit" style="width: 100%">
  4. <view class="info-box" style="flex-direction: row;">
  5. <view class="info-title-box">
  6. <!-- <image src="/static/require-icon.png" mode="aspectFill"></image> -->
  7. <text>上传图片</text>
  8. </view>
  9. <view class="info-value-box">
  10. <view class="update_button display-flex">
  11. <view class="upload-box" @click="getImage('album')">
  12. <view class="img">
  13. <image src="/static/upload-photo.png" class="photo"></image>
  14. </view>
  15. </view>
  16. <view
  17. class="display-flex upload-box-photo"
  18. v-for="(item, index) in uploadList"
  19. :key="index">
  20. <image :src="item" mode="aspectFit" style="width: 100%; height: 100%" @click="showLarge(item)"/>
  21. <image src="/static/del.png" class="del-icon"mode="aspectFit"
  22. style="width: 30rpx; height: 30rpx" @click="delPhoto(index)"></image>
  23. </view>
  24. </view>
  25. </view>
  26. </view>
  27. <view class="info-box">
  28. <view class="info-title-box">
  29. <!-- <image src="/static/require-icon.png" mode="aspectFill"></image> -->
  30. <text>名称</text>
  31. </view>
  32. <view class="info-value-box">
  33. <input type="text" placeholder="请输入奖项名称" name="awardName" :value="awardName" >
  34. </view>
  35. </view>
  36. <view class="info-box" style="margin-top: -10rpx;margin-bottom: 15rpx;">
  37. <view class="info-title-box" style="margin-bottom: 15rpx;">
  38. <!-- <image src="/static/require-icon.png" mode="aspectFill"></image> -->
  39. <text>时间</text>
  40. </view>
  41. <view class="info-value-box">
  42. <view class="uni-list title-date-box">
  43. <view class="uni-list-cell">
  44. <view class="uni-list-cell-db display-flex-start">
  45. <picker mode="date" fields="year" @change="bindDateChange" class="picker-class">
  46. <view class="uni-input display-between items-center">{{dateYear}}年<image src="/static/calendar_icon.svg" mode="aspectFit" style="top: 18rpx;"></image></view>
  47. </picker>
  48. <picker :range="arrayMonth" :value="dateMonth" @change="bindDateMonthChange" class="picker-class" style="margin-left: 2%;">
  49. <view class="uni-input display-between items-center" style="color: #707070;">{{dateMonth}}月<image src="/static/calendar_icon.svg" mode="aspectFit" style="top: 18rpx;"></image></view>
  50. </picker>
  51. </view>
  52. </view>
  53. </view>
  54. </view>
  55. </view>
  56. <view class="info-box">
  57. <view class="info-title-box">
  58. <!-- <image src="/static/require-icon.png" mode="aspectFill"></image> -->
  59. <text>荣誉级别</text>
  60. </view>
  61. <view class="info-value-box">
  62. <picker @change="bindPickerChange($event,'level')" :range="honorLevel" class="select-box" name="level">
  63. <view class="uni-input">{{levelValue}}</view>
  64. <image src="/static/arrow_down.svg" mode="aspectFill"></image>
  65. </picker>
  66. </view>
  67. </view>
  68. <view class="info-box">
  69. <view class="info-title-box">
  70. <!-- <image src="/static/require-icon.png" mode="aspectFill"></image> -->
  71. <text>荣誉来源</text>
  72. </view>
  73. <view class="info-value-box">
  74. <picker @change="bindPickerChange($event,'from')" :range="honorFrom" class="select-box" name="from">
  75. <view class="uni-input">{{fromValue}}</view>
  76. <image src="/static/arrow_down.svg" mode="aspectFill"></image>
  77. </picker>
  78. </view>
  79. </view>
  80. <view class="info-box">
  81. <view class="info-title-box">
  82. <!-- <image src="/static/require-icon.png" mode="aspectFill"></image> -->
  83. <text>所属支部</text>
  84. </view>
  85. <view class="info-value-box">
  86. <picker @change="bindPickerChange($event,'branch')" :range="honorBranch" :range-key="'name'" class="select-box" name="branch">
  87. <view class="uni-input">{{branchValue}}</view>
  88. <image src="/static/arrow_down.svg" mode="aspectFill"></image>
  89. </picker>
  90. </view>
  91. </view>
  92. <view class="info-box">
  93. <view class="info-title-box">
  94. <!-- <image src="/static/require-icon.png" mode="aspectFill"></image> -->
  95. <text>荣誉类型</text>
  96. </view>
  97. <view class="info-value-box">
  98. <picker @change="bindPickerChange($event,'type')" :range="honorType" class="select-box" name="type">
  99. <view class="uni-input">{{typeValue}}</view>
  100. <image src="/static/arrow_down.svg" mode="aspectFill"></image>
  101. </picker>
  102. </view>
  103. <!-- <view class="info-value-box">
  104. <picker @change="bindPickerChange($event,'education')" :range="honorType2" class="select-box" name="education">
  105. <view class="uni-input">{{typeValue2}}</view>
  106. <image src="/static/arrow_down.svg" mode="aspectFill"></image>
  107. </picker>
  108. </view> -->
  109. </view>
  110. <view class="info-box" v-if="typeValue !== '集体荣誉'">
  111. <view class="info-title-box">
  112. <!-- <image src="/static/require-icon.png" mode="aspectFill"></image> -->
  113. <text>选择成员</text>
  114. </view>
  115. <!-- <view class="info-value-box display-flex-start select-member">
  116. <input type="text" placeholder="请输入手机号" name="selfName">
  117. <button type="primary" class="submit-bth" style="background-color: #169bd5;" @click="addMember()">添加</button>
  118. </view>-->
  119. <view>
  120. <checkbox-group @change="checkboxChange" class="display-wrap">
  121. <label class="display-flex-start" v-for="(item,index) in memberList" :key="item.member_id" style="margin-right:10rpx;transform:scale(.8);">
  122. <view>
  123. <checkbox :value="item.member_id" :checked="item.checked"/>
  124. </view>
  125. <view>{{item.name}}</view>
  126. <!-- <image src="/static/del.png" mode="aspectFit"
  127. style="width: 30rpx; height: 30rpx;margin-left: 10rpx;" @click="delMember(index)"></image> -->
  128. </label>
  129. </checkbox-group>
  130. </view>
  131. </view>
  132. <view style="display: flex;justify-content: space-evenly;">
  133. <!-- <button type="default" class="submit-bth" style="background-color: #aaaaaa;">清空</button> -->
  134. <button type="primary" class="submit-bth" style="background-color: #169bd5;" formType="submit">提交</button>
  135. </view>
  136. </form>
  137. </view>
  138. </template>
  139. <script>
  140. import md5 from "@/common/md5.js";
  141. export default {
  142. components: {
  143. },
  144. data() {
  145. return {
  146. dateYear:new Date().getFullYear(),
  147. dateMonth:new Date().getMonth() + 1,
  148. arrayMonth:["1", "2","3", "4","5", "6","7", "8","9", "10","11", "12"],
  149. awardName:'',
  150. levelValue:'市级',
  151. honorLevel:['中央','省级','市级','区级','单位'],
  152. fromValue:'党内荣誉',
  153. honorFrom:['党内荣誉','社会荣誉','单位荣誉','行业荣誉'],
  154. branchValue:'',
  155. honorBranch:[],
  156. typeValue:'集体荣誉',
  157. honorType:['集体荣誉','个人荣誉','集体个人兼有'],
  158. memberList: [],
  159. uploadList: [],
  160. imgIdList: [],
  161. headImgId:'',
  162. branchId:'',
  163. memberIds:[],
  164. editId:''
  165. }
  166. },
  167. onLoad(option) {
  168. if(option.id){
  169. this.editId = option.id;
  170. this.getBranch(option.id);
  171. }else {
  172. this.editId = '';
  173. this.getBranch();
  174. }
  175. },
  176. onShow() {
  177. },
  178. // onShareAppMessage() {
  179. // return {
  180. // title: '分销小助手',
  181. // path:'/pages/index/index?scene=' + getApp().globalData.user_id
  182. // }
  183. // },
  184. methods: {
  185. bindDateChange(e){
  186. this.dateYear = e.target.value
  187. },
  188. bindDateMonthChange(e){
  189. this.dateMonth = this.arrayMonth[e.target.value]
  190. },
  191. change(e) {
  192. this.single = e;
  193. console.log("-change事件:", e);
  194. },
  195. checkboxChange: function (e) {
  196. // var items = this.memberList,
  197. // values = e.detail.value;
  198. this.memberIds = e.detail.value;
  199. // for (var i = 0, lenI = items.length; i < lenI; ++i) {
  200. // const item = items[i]
  201. // if(values.includes(item.value)){
  202. // this.$set(item,'checked',true)
  203. // }else{
  204. // this.$set(item,'checked',false)
  205. // }
  206. // }
  207. },
  208. // addMember(){
  209. // let items = {value: '6',name: '13630230648'}
  210. // this.memberList.push(items)
  211. // },
  212. // delMember(idx){
  213. // this.memberList.splice(idx, 1);
  214. // },
  215. getImage(type) {
  216. let that = this;
  217. console.log(that.uploadList)
  218. if (that.uploadList.length === 1) {
  219. uni.showToast({
  220. title: "最多上传1张图片",
  221. icon: "none",
  222. duration: 2500,
  223. });
  224. return;
  225. }
  226. uni.chooseImage({
  227. sourceType: [type],
  228. count: 1,
  229. sizeType: ["original", "compressed"], //可以指定是原图还是压缩图,默认二者都有
  230. success: (res) => {
  231. for (let i = 0; i < res.tempFilePaths.length; i++) {
  232. that.uploadList.push(res.tempFilePaths[i]);
  233. that.uploadFileRequest(res.tempFilePaths[i]);
  234. }
  235. },
  236. });
  237. },
  238. uploadFileRequest(fileVal) {
  239. uni.showLoading({
  240. title: "上传中",
  241. mask: true,
  242. });
  243. let that = this;
  244. let md5Sign = md5(
  245. "method=" +"glory_upload" + "&timestamp=" +getApp().globalData.globalTimestamp +"&secret=" + getApp().globalData.secret
  246. );
  247. let url =
  248. getApp().globalData.shareUrl +
  249. "api/api.php" +
  250. "?method=glory_upload&timestamp=" +
  251. getApp().globalData.globalTimestamp +
  252. "&sign=" +
  253. md5Sign;
  254. uni.uploadFile({
  255. url: url, //需要设置为全局
  256. filePath: fileVal,
  257. name: "file",
  258. formData: {
  259. openid: getApp().globalData.open_id,
  260. file: fileVal,
  261. branch_id: this.branchId
  262. },
  263. success: (res) => {
  264. let tmpres = JSON.parse(res.data);
  265. uni.hideLoading();
  266. that.imgIdList.push(tmpres.data.id);
  267. that.headImgId = tmpres.data.id;
  268. },
  269. fail: (res) => {
  270. console.log("上传请求失败");
  271. console.log(res);
  272. },
  273. });
  274. },
  275. delPhoto(idx) {
  276. this.uploadList.splice(idx, 1);
  277. this.imgIdList.splice(idx, 1);
  278. },
  279. showLarge(src) {
  280. uni.previewImage({
  281. urls: [src],
  282. longPressActions: {
  283. itemList: ["发送给朋友", "保存图片"],
  284. success: function (data) {},
  285. fail: function (err) {
  286. console.log(err.errMsg);
  287. },
  288. },
  289. });
  290. },
  291. bindPickerChange(e,type) {
  292. let that = this;
  293. switch (type){
  294. case 'branch':
  295. that.branchValue = that.honorBranch[e.target.value].name;
  296. that.branchId = that.honorBranch[e.target.value].branch_id;
  297. that.getMemberList(that.branchId)
  298. break;
  299. case 'type':
  300. that.typeValue = that.honorType[e.target.value]
  301. break;
  302. case 'level':
  303. that.levelValue = that.honorLevel[e.target.value]
  304. break;
  305. case 'from':
  306. that.fromValue = that.honorFrom[e.target.value]
  307. break;
  308. }
  309. },
  310. filterChecked(list){
  311. let arr = this.memberList, childArr = list;
  312. childArr.forEach((child)=>{
  313. arr.forEach((item)=>{
  314. if(item.member_id == child.member_id){
  315. item.checked = true
  316. }
  317. })
  318. })
  319. },
  320. getHonorInfo(id) {
  321. let levelObj = {
  322. '1':'中央',
  323. '2':'省级',
  324. '3':'市级',
  325. '4':'区级',
  326. '5':'单位'
  327. }
  328. let fromObj = {
  329. '1':'党内荣誉',
  330. '2':'社会荣誉',
  331. '3':'单位荣誉',
  332. '4':'行业荣誉'
  333. }
  334. let typeObj = {
  335. '1':'集体荣誉',
  336. '2':'个人荣誉',
  337. '3':'集体个人兼有',
  338. }
  339. let md5Sign = md5(
  340. "method=" +"glory" + "&timestamp=" + getApp().globalData.globalTimestamp +
  341. "&secret=" + getApp().globalData.secret
  342. );
  343. let url = getApp().globalData.shareUrl +"api/api.php" +
  344. "?method=glory&action=info_by_id&timestamp=" +
  345. getApp().globalData.globalTimestamp +
  346. "&sign=" +
  347. md5Sign;
  348. uni.request({
  349. url: url,
  350. method: "POST",
  351. header: {
  352. "content-type": "application/x-www-form-urlencoded",
  353. },
  354. data: {
  355. openid: getApp().globalData.open_id,
  356. id:id
  357. },
  358. success: (res) => {
  359. if (res.data.code === 200) {
  360. let infoObj = res.data.data;
  361. this.branchId = infoObj.branch_id;
  362. this.awardName = infoObj.name;
  363. this.headImgId = infoObj.photo_attach_id;
  364. this.dateYear = infoObj.year;
  365. this.dateMonth = infoObj.month;
  366. this.uploadList.push(getApp().globalData.shareUrl + infoObj.pic_url);
  367. this.typeValue = typeObj[infoObj.for];
  368. this.fromValue = fromObj[infoObj.from];
  369. this.levelValue = levelObj[infoObj.level];
  370. this.filterChecked(infoObj.member_list);
  371. this.branchValue = (this.honorBranch.find((item)=>{return item.branch_id == infoObj.branch_id})).name;
  372. }
  373. },
  374. fail: () => {
  375. console.log("连接失败");
  376. },
  377. });
  378. },
  379. getBranch(optionId) {
  380. let md5Sign = md5(
  381. "method=" +"glory" + "&timestamp=" + getApp().globalData.globalTimestamp +
  382. "&secret=" + getApp().globalData.secret
  383. );
  384. let url = getApp().globalData.shareUrl +"api/api.php" +
  385. "?method=glory&action=glory_branch&timestamp=" +
  386. getApp().globalData.globalTimestamp +
  387. "&sign=" +
  388. md5Sign;
  389. uni.request({
  390. url: url,
  391. method: "POST",
  392. header: {
  393. "content-type": "application/x-www-form-urlencoded",
  394. },
  395. data: {
  396. openid: getApp().globalData.open_id,
  397. },
  398. success: (res) => {
  399. if (res.data.code === 200) {
  400. this.honorBranch = res.data.data;
  401. this.branchValue = res.data.data[0].name;
  402. this.branchId = res.data.data[0].branch_id;
  403. this.getMemberList(this.branchId,optionId);
  404. }
  405. },
  406. fail: () => {
  407. console.log("连接失败");
  408. },
  409. });
  410. },
  411. getMemberList(bId,optionId) {
  412. let md5Sign = md5(
  413. "method=" + "glory" + "&timestamp=" + getApp().globalData.globalTimestamp +
  414. "&secret=" + getApp().globalData.secret
  415. );
  416. let url = getApp().globalData.shareUrl +"api/api.php" +
  417. "?method=glory&action=member_by_branch&timestamp=" +
  418. getApp().globalData.globalTimestamp +
  419. "&sign=" +
  420. md5Sign;
  421. uni.request({
  422. url: url,
  423. method: "POST",
  424. header: {
  425. "content-type": "application/x-www-form-urlencoded",
  426. },
  427. data: {
  428. openid:getApp().globalData.open_id,
  429. branch_id:bId
  430. },
  431. success: (res) => {
  432. if (res.data.code === 200) {
  433. this.memberList = res.data.data;
  434. if(optionId){
  435. this.getHonorInfo(optionId)
  436. }
  437. }
  438. },
  439. fail: () => {
  440. console.log("连接失败");
  441. },
  442. });
  443. },
  444. formSubmit(e) {
  445. let formData = e.detail.value;
  446. this.submitRequest(formData)
  447. },
  448. submitRequest(params){
  449. if(this.headImgId.length===0){
  450. uni.showToast({
  451. title: "请选上传图片",
  452. icon: "none",
  453. duration: 2500,
  454. });
  455. return
  456. }
  457. if(!params.awardName){
  458. uni.showToast({
  459. title: "请填写名称",
  460. icon: "none",
  461. duration: 2500,
  462. });
  463. return
  464. }
  465. let levelObj = {
  466. '中央':'1',
  467. '省级':'2',
  468. '市级':'3',
  469. '区级':'4',
  470. '单位':'5'
  471. }
  472. let fromObj = {
  473. '党内荣誉':'1',
  474. '社会荣誉':'2',
  475. '单位荣誉':'3',
  476. '行业荣誉':'4'
  477. }
  478. let typeObj = {
  479. '集体荣誉':'1',
  480. '个人荣誉':'2',
  481. '集体个人兼有':'3',
  482. }
  483. let md5Sign = md5("method=" + "glory" + "&timestamp=" + getApp().globalData.globalTimestamp +"&secret=" + getApp().globalData.secret)
  484. , url;
  485. let dataParams = {
  486. openid:getApp().globalData.open_id,
  487. name:params.awardName,
  488. level:levelObj[this.levelValue],
  489. from:fromObj[this.fromValue],
  490. for:typeObj[this.typeValue],
  491. year:this.dateYear,
  492. month:this.dateMonth,
  493. branch_id:this.branchId,
  494. member_ids:this.memberIds.join(),
  495. photo_attach_id:this.headImgId,
  496. remark:''
  497. };
  498. if(this.editId){
  499. url = getApp().globalData.shareUrl +"api/api.php" + "?method=glory&action=update&timestamp="
  500. +getApp().globalData.globalTimestamp + "&sign=" + md5Sign;
  501. dataParams.id = this.editId;
  502. }else {
  503. url = getApp().globalData.shareUrl +"api/api.php" +
  504. "?method=glory&action=add&timestamp=" +
  505. getApp().globalData.globalTimestamp +
  506. "&sign=" +
  507. md5Sign;
  508. }
  509. uni.request({
  510. url: url,
  511. method: "POST",
  512. header: {
  513. "content-type": "application/x-www-form-urlencoded",
  514. },
  515. data:dataParams,
  516. success: (res) => {
  517. if (res.data.code === 200) {
  518. if(this.editId){
  519. let types = 'edit';
  520. let pages = getCurrentPages(); // 获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。
  521. let nowPage = pages[pages.length - 1]; //当前页页面实例
  522. let prevPage = pages[pages.length - 2]; //上一页页面实例
  523. prevPage.$vm.pageRefreshHonor(types)
  524. uni.showToast({
  525. title: "修改成功",
  526. icon: "none",
  527. duration: 2500,
  528. });
  529. setTimeout(()=>{uni.navigateBack({delta:1})},500)
  530. }else {
  531. let types = 'add';
  532. let pages = getCurrentPages(); // 获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。
  533. let nowPage = pages[pages.length - 1]; //当前页页面实例
  534. let prevPage = pages[pages.length - 2]; //上一页页面实例
  535. prevPage.$vm.pageRefreshHonor(types)
  536. uni.showToast({
  537. title: "上传成功",
  538. icon: "none",
  539. duration: 2500,
  540. });
  541. setTimeout(()=>{uni.navigateBack({delta:1})},500)
  542. }
  543. }
  544. },
  545. fail: () => {
  546. console.log("连接失败");
  547. },
  548. });
  549. },
  550. }
  551. }
  552. </script>
  553. <style lang="scss" scoped>
  554. .content {
  555. &_list{
  556. display: flex;
  557. flex-direction: row;
  558. align-items: center;
  559. justify-content:space-around;
  560. &_lable{
  561. }
  562. &_content{
  563. flex: 1;
  564. width: auto;
  565. text-align: right;
  566. }
  567. }
  568. }
  569. .content-box {
  570. width: 100%;
  571. /* height: 100%; */
  572. display: flex;
  573. flex-direction: column;
  574. align-items: center;
  575. /* justify-content: center; */
  576. }
  577. .header-box {
  578. width: 85%;
  579. height:80rpx;
  580. border: .5px dotted #00A1B4;
  581. border-radius: 50rpx;
  582. display: flex;
  583. justify-content: center;
  584. align-items: center;
  585. font-size: 24rpx;
  586. color:#00A1B4 ;
  587. /* font-family: PingFangSC-Regular; */
  588. margin-top: 2%;
  589. }
  590. .header-box image {
  591. width: 36rpx;
  592. height: 36rpx;
  593. margin-right: 1%;
  594. }
  595. .self-title-box {
  596. width: 90%;
  597. display: flex;
  598. align-items: center;
  599. font-size: 32rpx;
  600. letter-spacing: 2rpx;
  601. color:#3C3C3C ;
  602. /* font-family: SimHei; */
  603. margin: 4% auto;
  604. font-weight: bold;
  605. height: 50rpx;
  606. line-height: 50rpx;
  607. }
  608. .self-title-box image {
  609. width: 6rpx;
  610. height: 32rpx;
  611. margin-right: 2%;
  612. }
  613. .info-box {
  614. width: 90%;
  615. margin: 3% auto;
  616. display: flex;
  617. flex-direction: column;
  618. // align-items: center;
  619. // height: 180rpx;
  620. }
  621. .info-title-box {
  622. width: 20%;
  623. display: flex;
  624. align-items: center;
  625. font-size: 26rpx;
  626. }
  627. .info-title-box image{
  628. width: 15rpx;
  629. height: 15rpx;
  630. margin-right: 2%;
  631. }
  632. .info-value-box {
  633. width: 100%;
  634. }
  635. .info-value-box input {
  636. height: 88rpx;
  637. background: #f7f7f7;
  638. font-size: 26rpx;
  639. padding-left: 4%;
  640. margin: 2% auto;
  641. }
  642. .info-value-box picker {
  643. position: relative;
  644. }
  645. .info-value-box picker image {
  646. position: absolute;
  647. width: 25rpx;
  648. height: 25rpx;
  649. right: 10px;
  650. top: 30rpx;
  651. }
  652. .select-box {
  653. height: 80rpx;
  654. background: #f7f7f7;
  655. font-size: 26rpx;
  656. padding-left: 4%;
  657. margin: 2% auto;
  658. color: #888;
  659. line-height: 88rpx;
  660. }
  661. .info-gender-box {
  662. width: 75%;
  663. font-size: 28rpx;
  664. }
  665. .form-radio {
  666. transform: scale(0.6);
  667. }
  668. .padding-left-2 {
  669. // padding-left: 2%;
  670. }
  671. .margin-right-10 {
  672. margin-right: 10%;
  673. }
  674. .border-line-box {
  675. width: 100%;
  676. height: 20rpx;
  677. background: #f7f7f7;
  678. }
  679. .picker-box{
  680. display: flex;
  681. align-items: center;
  682. justify-content: space-between;
  683. height: 60rpx;
  684. line-height: 60rpx;
  685. background: #f7f7f7;
  686. height: 88rpx;
  687. line-height: 88rpx;
  688. background: #f7f7f7;
  689. font-size: 28rpx;
  690. padding-left: 4%;
  691. }
  692. .uni-input image {
  693. width: 40rpx;
  694. height: 40rpx;
  695. margin-right: 2%;
  696. float: right;
  697. }
  698. .textarea-box {
  699. background: #f7f7f7;
  700. min-height: 120rpx;
  701. font-size: 28rpx;
  702. margin: 5% auto;
  703. padding: 4%;
  704. margin-bottom: 8%;
  705. }
  706. .upload-box {
  707. display: flex;
  708. flex-flow: column;
  709. width: 25%;
  710. height: 100rpx;
  711. border-radius: 10rpx;
  712. padding-top: 15rpx;
  713. image {
  714. width: 100rpx;
  715. height:100rpx;
  716. }
  717. }
  718. .upload-box-photo {
  719. width: 25%;
  720. height: 100rpx;
  721. border-radius: 10rpx;
  722. padding-top: 15rpx;
  723. position: relative;
  724. margin-left: 10rpx;
  725. }
  726. .del-icon {
  727. position: absolute;
  728. right: 0;
  729. width: 30rpx;
  730. height: 30rpx;
  731. }
  732. .update_button {
  733. text-align: center;
  734. display: flex;
  735. flex-wrap: wrap;
  736. }
  737. .picker-class {
  738. border-radius: 10rpx;
  739. padding: 10rpx;
  740. width: 73%;
  741. font-size: 28rpx;
  742. background: #f5f5f5;
  743. }
  744. .picker-class image {
  745. width: 26rpx;
  746. height: 26rpx;
  747. }
  748. .submit-bth {
  749. width: 25%;
  750. font-size: 26rpx;
  751. margin: 0 0 5% 0;
  752. color: #fff;
  753. }
  754. .select-member {
  755. input {
  756. margin: 2% 2% 2% 0;
  757. height: 80rpx;
  758. line-height: 80rpx;
  759. }
  760. button {
  761. background-color: #169bd5;
  762. margin: 0;
  763. height: 60rpx;
  764. line-height: 60rpx;
  765. width: 20%;
  766. }
  767. }
  768. </style>