addGroup.vue 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. <template>
  2. <view class="page">
  3. <uni-nav-bar :fixed="true" background-color="#FFE05C" :border="false" :statusBar="true" left-icon="left"
  4. title="新增分组" @clickLeft="back" />
  5. <view>
  6. <u--form labelPosition="left" :model="form" :rules="rules" ref="uForm">
  7. <u-form-item prop="groupName" borderBottom>
  8. <view class="item">
  9. <text class="key">分组名称</text>
  10. <view class="flex-row input">
  11. <u--input v-model="form.groupName" placeholder="请输入分组名称" border="none"></u--input>
  12. </view>
  13. </view>
  14. </u-form-item>
  15. <u-form-item prop="userInfo.sex" borderBottom>
  16. <view class="item">
  17. <text class="key">负责人</text>
  18. <view class="flex-row input" @click="openSelectPerson">
  19. <u--input disabled placeholder="请选择负责人" border="none"></u--input>
  20. <u-icon name="arrow-right"></u-icon>
  21. </view>
  22. </view>
  23. </u-form-item>
  24. <u-form-item prop="userInfo.sex" borderBottom>
  25. <view class="item">
  26. <text class="key">分组成员</text>
  27. <view class="flex-row input" @click="openSelectMember">
  28. <u--input disabled placeholder="请选择分组成员" border="none"></u--input>
  29. <u-icon name="arrow-right"></u-icon>
  30. </view>
  31. </view>
  32. </u-form-item>
  33. </u--form>
  34. <view class="members">
  35. <view class="membersTitle ">
  36. <text>已选择的分组成员</text>
  37. </view>
  38. <scroll-view scroll-y class="scroll-y" >
  39. <view class="flex-row justify-between member" v-for="item in 10">
  40. <view class="flex-row">
  41. <u-icon name="account-fill" size="24"></u-icon>
  42. <text class="name">张三</text>
  43. </view>
  44. <view>
  45. <u-icon name="trash" size="24"></u-icon>
  46. </view>
  47. </view>
  48. </scroll-view>
  49. </view>
  50. </view>
  51. <view class="addGroup">
  52. <text>提交</text>
  53. </view>
  54. <uni-popup ref="selectMemberPopup" type="bottom">
  55. <view class="selectMemberPopup">
  56. <view class="flex-row justify-around popupTitle">
  57. <text @click="closePopup('selectMemberPopup')">取消</text>
  58. <text>选择分组负责人</text>
  59. <text>确定</text>
  60. </view>
  61. <view class="scroll-y-view">
  62. <scroll-view scroll-y class="scroll-y1" >
  63. <view class="flex-row justify-between member" v-for="item in 10">
  64. <view class="flex-row">
  65. <text class="name">张三</text>
  66. <text class="name">1736500000</text>
  67. </view>
  68. <u-icon name="checkbox-mark" color="#FFE05C" size="24"></u-icon>
  69. </view>
  70. </scroll-view>
  71. </view>
  72. </view>
  73. </uni-popup>
  74. <uni-popup ref="selectPersonPopup" type="bottom">
  75. <view class="selectMemberPopup">
  76. <view class="flex-row justify-around popupTitle">
  77. <text @click="closePopup('selectPersonPopup')">取消</text>
  78. <text>选择分组负责人</text>
  79. <text>确定</text>
  80. </view>
  81. <view class="scroll-y-view">
  82. <scroll-view scroll-y class="scroll-y1" >
  83. <view class="flex-row justify-between member" v-for="item in 10">
  84. <view class="flex-row">
  85. <text class="name">张三</text>
  86. <text class="name">1736500000</text>
  87. </view>
  88. <u-icon name="checkbox-mark" color="#FFE05C" size="24"></u-icon>
  89. </view>
  90. </scroll-view>
  91. </view>
  92. </view>
  93. </uni-popup>
  94. </view>
  95. </template>
  96. <script>
  97. export default {
  98. components: {
  99. },
  100. data() {
  101. return {
  102. height: '',
  103. form:{
  104. groupName:''
  105. },
  106. rules: {
  107. 'groupName': {
  108. type: 'string',
  109. required: true,
  110. min:1,
  111. message: '请输入分组名称',
  112. trigger: ['blur', 'change']
  113. }
  114. },
  115. }
  116. },
  117. onLoad(e) {
  118. let sysInfo = uni.getSystemInfoSync()
  119. this.height = sysInfo.windowHeight - 120 + 'px' //除标题栏栏外的屏幕可用高度
  120. },
  121. methods: {
  122. back() {
  123. uni.navigateBack({
  124. delta: 1
  125. })
  126. },
  127. openSelectMember(){
  128. this.$refs.selectMemberPopup.open()
  129. },
  130. openSelectPerson(){
  131. this.$refs.selectPersonPopup.open()
  132. },
  133. closePopup(name){
  134. this.$refs[name].close()
  135. }
  136. }
  137. }
  138. </script>
  139. <style lang="scss" scoped>
  140. @import './index.rpx.css';
  141. </style>