Explorar el Código

feat:小主卡标识

xuyunhui hace 1 año
padre
commit
ade0e92dbd

+ 7 - 0
common/js/api.js

@@ -936,4 +936,11 @@ export default {
             data: data
         })
     },
+    serviceProjectList(param) {
+        return request({
+            url: '/business/storeManager/minMain/service',
+            method: 'get',
+            data: param
+        })
+    },
 }

+ 1 - 2
myPages/ServiceObjectManagement/index.vue

@@ -25,7 +25,7 @@
                   备注:<text>{{item.remark || '无'}}</text>
                 </view>
                 <view class="completed" >
-                  小主卡:<text class="tab" :style="{'backgroundColor': item.minMainCardStatus ? '#85ce63':'#a6a9ad' }" >{{item.minMainCardStatus ?  "已注册" : "未注册"}}</text>
+                  小主卡:<text class="tab" :style="{'backgroundColor': item.minMainCardStatus ? '#85ce63':'#a6a9ad' }" >{{item.minMainCardStatus ?  "已开通" : "未开通"}}</text>
                 </view>
               </view>
             </view>
@@ -93,7 +93,6 @@
         for(let i = 0; i <items.length; i++) {
           if (items[i].facePhoto){
             this.$api.getImgUrlByOssId({ossId:items[i].facePhoto}).then(res=>{
-              console.log('++++++++++++facePhotoUrl+++++++++',res.data.data[0].url.replace(/^http:/, "https:"))
               items[i].facePhotoUrl = res.data.data[0].url.replace(/^http:/, "https:")
               this.$set(this.serviceObjectList,i,items[i])
             })

+ 550 - 505
myPages/serviceObjectAllInfo/index.vue

@@ -1,541 +1,586 @@
 <template>
-    <view class="user-info-wrap">
-        <view class="nav-bar">
-            <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-<!--                            <view class="">宝贝头像</view>-->
-                        </view>
-                    </view>
-                    <view  class="arrow-right">
-                        <view class="head-img" @click="uploadImg1(1)">
-                            <image v-if="userInfo.facePhotoUrl" :src="userInfo.facePhotoUrl" mode="aspectFill"></image>
-                            <image v-else src="../../static/me/u1796.png" mode=""></image>
-                        </view>
-                        <!-- <u-icon name="arrow-right" color="#666" size="26"></u-icon> -->
-                    </view>
-                </view>
+  <view class="user-info-wrap">
+    <view class="nav-bar">
+      <view class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <!--                            <view class="">宝贝头像</view>-->
             </view>
-            <view class="custom-line"></view>
-            <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">宝贝昵称</view>
-                        </view>
-
-                    </view>
-                    <view class="arrow-right">
-                        <input class="custom-input" v-model="userInfo.nickName" type="text" placeholder="请输入昵称">
-                    </view>
-                </view>
+          </view>
+          <view class="arrow-right">
+            <view class="head-img" @click="uploadImg1(1)">
+              <image v-if="userInfo.facePhotoUrl" :src="userInfo.facePhotoUrl" mode="aspectFill"></image>
+              <image v-else src="../../static/me/u1796.png" mode=""></image>
             </view>
-            <view class="custom-line"></view>
-            <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">宝贝性别</view>
-                        </view>
-                    </view>
-                    <view @click="chooseGender()" class="arrow-right">
-                        <view class="change-store">
-                            <text v-if="userInfo.sex == 0">男</text>
-                            <text v-else-if="userInfo.sex == 1">女</text>
-                            <text v-else-if="userInfo.sex == 2">未知</text>
-                            <text v-else>请选择性别</text>
-                        </view>
-                        <u-icon name="arrow-right" color="#666" size="16"></u-icon>
-                    </view>
-                </view>
-            </view>
-            <view class="custom-line"></view>
-            <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">宝贝生日</view>
-                        </view>
-                    </view>
-                    <view  class="arrow-right">
-
-                        <picker mode="date" :value="date" :start="date"  @change="bindDateChange">
-                            <view class="picker-change-store">
-                                <text v-if="userInfo.birthday">{{userInfo.birthday}}</text>
-                                <text v-else>请选择生日</text>
-                                <u-icon name="arrow-right" color="#666" size="16"></u-icon>
-                            </view>
-                        </picker>
-                    </view>
-                </view>
+            <!-- <u-icon name="arrow-right" color="#666" size="26"></u-icon> -->
+          </view>
+        </view>
+      </view>
+      <view class="custom-line"></view>
+      <view class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">宝贝昵称</view>
             </view>
-            <view class="custom-line"></view>
-            <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">是否双胞胎</view>
-                        </view>
-                    </view>
-                    <view class="arrow-right">
-                        <view class="change-store">
-                            <u-radio-group
-                                    v-model="userInfo.ranksState"
-                                    size="14"
-                                    @change="handleRankChange"
-                                    placement="row">
-                                <u-radio activeColor="#eac00f" name="0" label="否"></u-radio>
-                                <u-radio activeColor="#eac00f" name="1" label="是"></u-radio>
-                            </u-radio-group>
-                        </view>
-                    </view>
-                </view>
+
+          </view>
+          <view class="arrow-right">
+            <input class="custom-input" v-model="userInfo.nickName" type="text" placeholder="请输入昵称">
+          </view>
+        </view>
+      </view>
+      <view class="custom-line"></view>
+      <view class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">宝贝性别</view>
             </view>
-            <view v-if="userInfo.ranksState == '1'" class="custom-line"></view>
-            <view v-if="userInfo.ranksState == '1'" class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">宝贝排行</view>
-                        </view>
-                    </view>
-                    <view class="arrow-right button-group">
-                        <text class="button" @click="decrement">-</text>
-                        <input class="custom-input-ranks" v-model="userInfo.ranks" type="number" >
-                        <text class="button" @click="increment">+</text>
-                    </view>
-                    <!-- <view @click="gotoRealNameAuth()" class="arrow-right">
-                        <view class="change-store">
-                            <u-radio-group
-                                v-model="userInfo.ranks"
-                                 size="14"
-                                placement="row">
-                                <u-radio activeColor="#eac00f" name="1" label="老大"></u-radio>
-                                <u-radio activeColor="#eac00f" name="2" label="老二"></u-radio>
-                                <u-radio activeColor="#eac00f" name="3" label="老三"></u-radio>
-                                <u-radio activeColor="#eac00f" name="4" label="老四"></u-radio>
-                            </u-radio-group>
-                        </view>
-                    </view> -->
-                </view>
+          </view>
+          <view @click="chooseGender()" class="arrow-right">
+            <view class="change-store">
+              <text v-if="userInfo.sex == 0">男</text>
+              <text v-else-if="userInfo.sex == 1">女</text>
+              <text v-else-if="userInfo.sex == 2">未知</text>
+              <text v-else>请选择性别</text>
             </view>
-            <view class="custom-line"></view>
-            <!-- <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">服务对象编号</view>
-                        </view>
-                    </view>
-                    <view @click="gotoRealNameAuth()" class="arrow-right">
-                        <view class="change-store">
-                            <text>NTML0801</text>
-                        </view>
-                    </view>
-                </view>
+            <u-icon name="arrow-right" color="#666" size="16"></u-icon>
+          </view>
+        </view>
+      </view>
+      <view class="custom-line"></view>
+      <view class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">宝贝生日</view>
             </view>
-            <view class="custom-line"></view> -->
-            <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">关系</view>
-                        </view>
-
-                    </view>
-                    <view class="arrow-right">
-                        <input class="custom-input" v-model="userInfo.blood" type="text" placeholder="请输入关系">
-                    </view>
-                </view>
+          </view>
+          <view class="arrow-right">
+
+            <picker mode="date" :value="date" :start="date" @change="bindDateChange">
+              <view class="picker-change-store">
+                <text v-if="userInfo.birthday">{{ userInfo.birthday }}</text>
+                <text v-else>请选择生日</text>
+                <u-icon name="arrow-right" color="#666" size="16"></u-icon>
+              </view>
+            </picker>
+          </view>
+        </view>
+      </view>
+      <view class="custom-line"></view>
+      <view class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">是否双胞胎</view>
             </view>
-            <view class="custom-line"></view>
-            <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">是否监护人</view>
-                        </view>
-                    </view>
-                    <view  class="arrow-right">
-                        <view  class="change-store">
-                            <u-radio-group
-                                    size="14"
-                                    v-model="userInfo.wardship"
-                                    placement="row">
-                                <u-radio class="radio-item" activeColor="#eac00f" name="2" label="否"></u-radio>
-                                <u-radio class="radio-item" activeColor="#eac00f" name="1" label="是"></u-radio>
-                            </u-radio-group>
-                        </view>
-                    </view>
-                </view>
+          </view>
+          <view class="arrow-right">
+            <view class="change-store">
+              <u-radio-group
+                  v-model="userInfo.ranks"
+                  size="14"
+                  @change="handleRankChange"
+                  placement="row">
+                <u-radio activeColor="#eac00f" name="0" label="否"></u-radio>
+                <u-radio activeColor="#eac00f" name="1" label="是"></u-radio>
+              </u-radio-group>
             </view>
-            <view class="custom-line"></view>
-            <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">备注</view>
-                        </view>
-
-                    </view>
-                    <view class="arrow-right">
-                        <input class="custom-input" v-model="userInfo.remark" type="text" placeholder="请输入备注">
-                    </view>
-                </view>
+          </view>
+        </view>
+      </view>
+      <view v-if="userInfo.ranksState == '1'" class="custom-line"></view>
+      <view v-if="userInfo.ranksState == '1'" class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">宝贝排行</view>
             </view>
+          </view>
+          <view class="arrow-right button-group">
+            <text class="button" @click="decrement">-</text>
+            <input class="custom-input-ranks" v-model="userInfo.ranks" type="number">
+            <text class="button" @click="increment">+</text>
+          </view>
+          <!-- <view @click="gotoRealNameAuth()" class="arrow-right">
+              <view class="change-store">
+                  <u-radio-group
+                      v-model="userInfo.ranks"
+                       size="14"
+                      placement="row">
+                      <u-radio activeColor="#eac00f" name="1" label="老大"></u-radio>
+                      <u-radio activeColor="#eac00f" name="2" label="老二"></u-radio>
+                      <u-radio activeColor="#eac00f" name="3" label="老三"></u-radio>
+                      <u-radio activeColor="#eac00f" name="4" label="老四"></u-radio>
+                  </u-radio-group>
+              </view>
+          </view> -->
         </view>
+      </view>
+      <view class="custom-line"></view>
+      <!-- <view class="nav-content">
+          <view class="nav-info">
+              <view class="nav-desc">
+                  <view class="nav-name">
+                      <view class="">服务对象编号</view>
+                  </view>
+              </view>
+              <view @click="gotoRealNameAuth()" class="arrow-right">
+                  <view class="change-store">
+                      <text>NTML0801</text>
+                  </view>
+              </view>
+          </view>
+      </view>
+      <view class="custom-line"></view> -->
+      <view class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">关系</view>
+            </view>
 
-        <view @click="saveUserInfo()" class="sure-btn">
-            <view class="btn">保存</view>
+          </view>
+          <view class="arrow-right">
+            <input class="custom-input" v-model="userInfo.blood" type="text" placeholder="请输入关系">
+          </view>
+        </view>
+      </view>
+      <view class="custom-line"></view>
+      <view class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">是否监护人</view>
+            </view>
+          </view>
+          <view class="arrow-right">
+            <view class="change-store">
+              <u-radio-group
+                  size="14"
+                  v-model="userInfo.wardship"
+                  placement="row">
+                <u-radio class="radio-item" activeColor="#eac00f" name="2" label="否"></u-radio>
+                <u-radio class="radio-item" activeColor="#eac00f" name="1" label="是"></u-radio>
+              </u-radio-group>
+            </view>
+          </view>
         </view>
+      </view>
+      <view class="custom-line"></view>
+      <view class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">备注</view>
+            </view>
 
+          </view>
+          <view class="arrow-right">
+            <input class="custom-input" v-model="userInfo.remark" type="text" placeholder="请输入备注">
+          </view>
+        </view>
+      </view>
+      <view class="custom-line"></view>
+      <view class="nav-content" v-if="userInfo.minMainCardStatus">
+        <view class="nav-info" style="align-items: normal">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">服务项目</view>
+            </view>
+          </view>
+          <view class="arrow-right">
+            <uni-data-checkbox mode="button" multiple v-model="userInfo.serviceProjectId"
+                               :localdata="serviceProjectList"/>
+          </view>
+        </view>
+      </view>
+    </view>
 
+    <view @click="saveUserInfo()" class="sure-btn">
+      <view class="btn">保存</view>
+    </view>
 
-        <!-- 性别选择 -->
-        <u-picker :show="genderShow" keyName="gender"  @confirm="sureChooseGender" :columns="genderList"></u-picker>
+    <!-- 性别选择 -->
+    <u-picker :show="genderShow" keyName="gender" @confirm="sureChooseGender" :columns="genderList"></u-picker>
 
-    </view>
+  </view>
 </template>
 
 <script>
 
-    export default {
-        data() {
-            return {
-                userInfo: {
-
-                    auth: true,
-                    nickName: '',
-                    sex: '1',
-                    birthday: '',
-                    selfPhoto: '',
-                    memberType: '',
-                    facePhotos: '',
-                    facePhoto: '',
-                    ranks: 0,
-                    wardship: '1',
-                    blood: '',
-                    ranksState: '0',
-                    facePhotoUrl: '',
-                    name: '',
-                    authBook: '',
-                    signPhoto: '',
-                    remark:''
-                },
-                genderShow: false,
-                date: Number(new Date()),
-                // 服务时间
-                genderList: [
-                    [{gender:'男',id:'0'},
-                        {gender:'女',id:'1'},
-                        {gender:'未知',id:'2'}
-                    ],
-                ],
-                imgUrl1: '',
-                requestStatus : false,
-            };
-        },
-        mounted() {
-        },
-        onLoad(option) {
-
-            if(option.data){
-                const data = JSON.parse(option.data);
-                console.log('+++++++JSON.parse(option.data)++++++',option.data)
-                this.userInfo.facePhotoUrl = data.facePhotoUrl;
-                this.userInfo.facePhoto = data.facePhoto;
-                this.userInfo.facePhotos = data.facePhoto;
-                this.userInfo.birthday = data.birthday;
-                this.userInfo.memberType = data.memberType;
-                this.userInfo.ranks = data.ranks;
-                this.userInfo.wardship = data.wardship;
-                this.userInfo.blood = data.blood;
-                this.userInfo.ranksState = data.ranksState;
-                this.userInfo.name = data.name;
-                this.userInfo.authBook = data.authBook;
-                this.userInfo.signPhoto = data.signPhoto;
-                this.userInfo.sex = data.sex;
-                this.userInfo.nickName = data.nickName;
-                this.userInfo.remark = data.remark;
-                this.userInfo.id = data.id;
-            }
-        },
-        methods: {
-            increment() {
-                this.userInfo.ranks++;
-            },
-            decrement() {
-                if (this.userInfo.ranks > 1) {
-                    this.userInfo.ranks--;
-                }
-            },
-            handleRankChange(value) {
-                console.log('Rank changed:', value);
-                this.userInfo.ranks = value;
-                // 在这里处理值改变事件的逻辑
-            },
-            // 选择性别
-            chooseGender(){
-                this.genderShow = true;
-            },
-            // 选择值
-            sureChooseGender(e){
-                this.genderShow = false;
-                this.userInfo.sex = e.value[0].id;
-            },
-            // 确定选择的服务日期
-            bindDateChange(e){
-                console.log(e)
-                this.userInfo.birthday = e.detail.value
-            },
-
-
-            // 保存用户信息
-            saveUserInfo(){
-
-
-                if(!this.userInfo.nickName){
-                    uni.showToast({
-                        title: "请认真填写宝贝昵称"
-                    })
-                    return;
-                }
-                if(!this.userInfo.blood){
-                    uni.showToast({
-                        title: "请认真填写关系"
-                    })
-                    return;
-                }
-                if(!this.userInfo.birthday){
-                    uni.showToast({
-                        title: "请认真填写宝贝生日"
-                    })
-                    return;
-                }
-
-                if(this.requestStatus){
-                    return;
-                }
-                this.requestStatus=true
-
-                this.userInfo.auth = true;
-
-                if (this.userInfo.id){
-
-                    // 修改数据
-                    this.$api.updateServiceObject(this.userInfo).then((res)=>{
-                        console.log(res)
-                        uni.showToast({
-                            title: "修改成功"
-                        })
-                        setTimeout(()=>{
-                            this.requestStatus=false
-                            // uni.reLaunch({
-                            //     url: '/myPages/ServiceObjectManagement/index'
-                            // });
-                          uni.navigateBack({
-                            delta: 1
-                          });
-                        },2000)
-
-                    }).catch(()=>{
-                        this.requestStatus=false
-                    })
-
-                }else{
-
-                    // 保存数据
-                    this.$api.saveServiceObject(this.userInfo).then((res)=>{
-                        console.log(res)
-                        uni.showToast({
-                            title: "保存成功"
-                        })
-                        setTimeout(()=>{
-                            this.requestStatus=false
-                            // uni.reLaunch({
-                            //     url: '/myPages/ServiceObjectManagement/index'
-                            // });
-                          uni.navigateBack({
-                            delta: 1
-                          });
-                        },2000)
-
-                    }).catch(()=>{
-                        this.requestStatus=false
-                    })
-                }
-
+export default {
+  data() {
+    return {
+      serviceProjectList: [],
+      userInfo: {
+        auth: true,
+        nickName: '',
+        sex: '1',
+        birthday: '',
+        selfPhoto: '',
+        memberType: '',
+        facePhotos: '',
+        facePhoto: '',
+        ranks: 0,
+        wardship: '1',
+        blood: '',
+        ranksState: '0',
+        facePhotoUrl: '',
+        name: '',
+        authBook: '',
+        signPhoto: '',
+        remark: '',
+        serviceProjectId: []
+      },
+      genderShow: false,
+      date: Number(new Date()),
+      // 服务时间
+      genderList: [
+        [{gender: '男', id: '0'},
+          {gender: '女', id: '1'},
+          {gender: '未知', id: '2'}
+        ],
+      ],
+      imgUrl1: '',
+      requestStatus: false,
+    };
+  },
+  mounted() {
+  },
+  onLoad(option) {
+    this.getServiceObjectList()
+    if (option.data) {
+      const data = JSON.parse(option.data);
+      console.log('+++++++JSON.parse(option.data)++++++', option.data)
+      if(data.authServiceIds){
+        this.userInfo.serviceProjectId = data.authServiceIds.split(',');
+      }
+      this.userInfo.facePhotoUrl = data.facePhotoUrl;
+      this.userInfo.minMainCardStatus = data.minMainCardStatus;
+      this.userInfo.facePhoto = data.facePhoto;
+      this.userInfo.facePhotos = data.facePhoto;
+      this.userInfo.birthday = data.birthday;
+      this.userInfo.memberType = data.memberType;
+      this.userInfo.ranks = data.ranks;
+      this.userInfo.wardship = data.wardship;
+      this.userInfo.blood = data.blood;
+      this.userInfo.ranksState = data.ranksState;
+      this.userInfo.name = data.name;
+      this.userInfo.authBook = data.authBook;
+      this.userInfo.signPhoto = data.signPhoto;
+      this.userInfo.sex = data.sex;
+      this.userInfo.nickName = data.nickName;
+      this.userInfo.remark = data.remark;
+      this.userInfo.id = data.id;
+      console.log('+++++++JSON.parse(option.data)++++++', this.userInfo)
+    }
+  },
+  methods: {
+    //修改数组属性名
+    changeKey(arr, newName, oldName) {
+      arr.forEach(item => {
+        item[newName] = item[oldName]
+        delete item[oldName]
+      })
+      return arr
+    },
+    getServiceObjectList() {
+      this.$api.serviceProjectList().then(res => {
+        this.serviceProjectList = res.data.data
+        console.log()
+        this.changeKey(this.serviceProjectList, 'value', 'id')
+        this.changeKey(this.serviceProjectList, 'text', 'serviceName')
+      })
+    },
+    increment() {
+      this.userInfo.ranks++;
+    },
+    decrement() {
+      if (this.userInfo.ranks > 1) {
+        this.userInfo.ranks--;
+      }
+    },
+    handleRankChange(value) {
+      console.log('Rank changed:', value);
+      this.userInfo.ranks = value;
+      // 在这里处理值改变事件的逻辑
+    },
+    // 选择性别
+    chooseGender() {
+      this.genderShow = true;
+    },
+    // 选择值
+    sureChooseGender(e) {
+      this.genderShow = false;
+      this.userInfo.sex = e.value[0].id;
+    },
+    // 确定选择的服务日期
+    bindDateChange(e) {
+      console.log(e)
+      this.userInfo.birthday = e.detail.value
+    },
+
+
+    // 保存用户信息
+    saveUserInfo() {
+      if (!this.userInfo.nickName) {
+        uni.showToast({
+          title: "请认真填写宝贝昵称"
+        })
+        return;
+      }
+      if (!this.userInfo.blood) {
+        uni.showToast({
+          title: "请认真填写关系"
+        })
+        return;
+      }
+      if (!this.userInfo.birthday) {
+        uni.showToast({
+          title: "请认真填写宝贝生日"
+        })
+        return;
+      }
+
+      if (this.requestStatus) {
+        return;
+      }
+      this.requestStatus = true
+
+      this.userInfo.auth = true;
+      this.userInfo.authServiceIds = this.userInfo.serviceProjectId.join()
+      if (this.userInfo.id) {
+        // 修改数据
+        this.$api.updateServiceObject(this.userInfo).then((res) => {
+          console.log(res)
+          uni.showToast({
+            title: "修改成功"
+          })
+          setTimeout(() => {
+            this.requestStatus = false
+            // uni.reLaunch({
+            //     url: '/myPages/ServiceObjectManagement/index'
+            // });
+            uni.navigateBack({
+              delta: 1
+            });
+          }, 2000)
+
+        }).catch(() => {
+          this.requestStatus = false
+        })
+
+      } else {
+
+        // 保存数据
+        this.$api.saveServiceObject(this.userInfo).then((res) => {
+          console.log(res)
+          uni.showToast({
+            title: "保存成功"
+          })
+          setTimeout(() => {
+            this.requestStatus = false
+            // uni.reLaunch({
+            //     url: '/myPages/ServiceObjectManagement/index'
+            // });
+            uni.navigateBack({
+              delta: 1
+            });
+          }, 2000)
+
+        }).catch(() => {
+          this.requestStatus = false
+        })
+      }
+
+    },
+    //头像上传
+    uploadImg1(imgIndex) {
+      return //关闭头像上传
+      let that = this;
+      uni.chooseImage({
+        count: 1,
+        success: (chooseImageRes) => {
+          const tempFilePaths = chooseImageRes.tempFilePaths;
+
+          uni.uploadFile({
+            url: that.$host + '/resource/oss/upload', //仅为示例,非真实的接口地址
+            filePath: tempFilePaths[0],
+            name: 'file',
+            header: {
+              // "Content-Type": "multipart/form-data",
+              // 'X-Access-Token': uni.getStorageSync('token'),
+              'Authorization': 'Bearer ' + that.$store.state.loginState.accessToken,
             },
-            //头像上传
-            uploadImg1(imgIndex) {
-                return //关闭头像上传
-                let that = this;
-                uni.chooseImage({
-                    count: 1,
-                    success: (chooseImageRes) => {
-                        const tempFilePaths = chooseImageRes.tempFilePaths;
-
-                        uni.uploadFile({
-                            url: that.$host + '/resource/oss/upload', //仅为示例,非真实的接口地址
-                            filePath: tempFilePaths[0],
-                            name: 'file',
-                            header: {
-                                // "Content-Type": "multipart/form-data",
-                                // 'X-Access-Token': uni.getStorageSync('token'),
-                                'Authorization': 'Bearer ' + that.$store.state.loginState.accessToken,
-                            },
-                            success: (uploadFileRes) => {
-                                let res = JSON.parse(uploadFileRes.data)
-                                console.log(res.data)
-                                that.imgUrl1 = res.data.url;
-                                that.userInfo.selfPhoto = res.data.ossId
-                            }
-                        });
-                    }
-                });
+            success: (uploadFileRes) => {
+              let res = JSON.parse(uploadFileRes.data)
+              console.log(res.data)
+              that.imgUrl1 = res.data.url;
+              that.userInfo.selfPhoto = res.data.ossId
             }
+          });
         }
-    };
+      });
+    }
+  }
+};
 </script>
 
 <style lang="scss">
-    .user-info-wrap{
-        margin-left: 12px;
-        margin-right: 12px;
-        /* 导航菜单 */
-        .nav-bar{
-            background: #fff;
-            border-radius: 10px;
-            margin-top: 12px;
-            /* 商店信息 */
-            .nav-content{
-                padding-right: 6px;
-                padding-top: 10px;
-                padding-bottom: 6px;
-                .nav-info{
-                    display: flex;
-                    padding-left: 10px;
-                    align-items: center;
-                    .logo {
-                        width: 12%;
-                        text-align: center;
-                        image{
-                            width: 24px;
-                            height: 24px;
-                        }
-                    }
-                    .nav-desc{
-                        width: 46%;
-                        display: flex;
-                        line-height: 30px;
-                        font-family: PingFangSC-Regular, PingFang SC;
-                        font-weight: 400;
-                        align-items: center;
-                        .custom-input{
-                            font-size: 12px;
-                        }
-                        .nav-name{
-                            width: 60%;
-                            font-size: 14px;
-
-                            color: #333333;
-                            line-height: 22px;
-                        }
-                        .change-store{
-                            text-align: right;
-                            width: 40%;
-                            font-size: 12px;
-                            color: #333333;
-                            line-height: 22px;
-                        }
-                    }
-
-                    .arrow-right{
-                        width:64%;
-                        /*text-align: right;*/
-                        margin: 0 auto;
-                        padding-top: 3px;
-                        display: flex;
-                        justify-content: flex-end;
-                        align-items: center;
-                        image{
-                            width: 18px;
-                            height: 18px;
-                        }
-                        .custom-input{
-                            font-size: 12px;
-                            width: 200rpx;
-                            /*border: 1px solid red;*/
-                        }
-                        .head-img {
-                            width: 50px;
-                            height: 50px;
-                            border-radius: 25px;
-                            text-align: center;
-                            padding-right: 20px;
-                            image{
-                                width: 50px;
-                                height: 50px;
-                                border-radius: 25px;
-                            }
-                        }
-                        .change-store{
-                            font-size: 14px;
-                            color: #999;
-                            line-height: 22px;
-                        }
-                    }
-                }
-            }
-        }
-
-        .sure-btn{
-            margin-top: 20px;
-            width: 100%;
-            .btn{
-                text-align: center;
-                height: 42px;
-                background: #FFE05C;
-                border-radius: 27px;
-                color: #333333;
-                line-height: 42px;
-                margin-top: 12px;
-                font-size: 14px;
-            }
-        }
-    }
-
-    .button-group {
+.user-info-wrap {
+  margin-left: 12px;
+  margin-right: 12px;
+  /* 导航菜单 */
+  .nav-bar {
+    background: #fff;
+    border-radius: 10px;
+    margin-top: 12px;
+    /* 商店信息 */
+    .nav-content {
+      padding-right: 6px;
+      padding-top: 10px;
+      padding-bottom: 6px;
+
+      .nav-info {
         display: flex;
+        padding-left: 10px;
         align-items: center;
-    }
 
-    .button {
-        padding: 6px 12px;
-        font-size: 14px;
-        background-color: #e6e6e6;
-        border: none;
-        border-radius: 4px;
-        cursor: pointer;
-    }
+        .logo {
+          width: 12%;
+          text-align: center;
 
-    .custom-input-ranks{
-        width: 30px;
-        font-size: 12px;
-        text-align: center;
-    }
+          image {
+            width: 24px;
+            height: 24px;
+          }
+        }
 
+        .nav-desc {
+          width: 46%;
+          display: flex;
+          line-height: 30px;
+          font-family: PingFangSC-Regular, PingFang SC;
+          font-weight: 400;
+          align-items: center;
+
+          .custom-input {
+            font-size: 12px;
+          }
+
+          .nav-name {
+            width: 60%;
+            font-size: 14px;
+
+            color: #333333;
+            line-height: 22px;
+          }
+
+          .change-store {
+            text-align: right;
+            width: 40%;
+            font-size: 12px;
+            color: #333333;
+            line-height: 22px;
+          }
+        }
 
-    .radio-item{
-        padding-right: 6px;
-    }
-    .picker-change-store{
-        font-size: 14px;
-        color: #999;
-        line-height: 22px;
+        .arrow-right {
+          width: 64%;
+          /*text-align: right;*/
+          margin: 0 auto;
+          padding-top: 3px;
+          display: flex;
+          justify-content: flex-end;
+          align-items: center;
+
+          image {
+            width: 18px;
+            height: 18px;
+          }
+
+          .custom-input {
+            font-size: 12px;
+            width: 200rpx;
+            /*border: 1px solid red;*/
+          }
+
+          .head-img {
+            width: 50px;
+            height: 50px;
+            border-radius: 25px;
+            text-align: center;
+            padding-right: 20px;
+
+            image {
+              width: 50px;
+              height: 50px;
+              border-radius: 25px;
+            }
+          }
 
-        display: flex;
-        flex-direction: row;
+          .change-store {
+            font-size: 14px;
+            color: #999;
+            line-height: 22px;
+          }
+        }
+      }
+    }
+  }
+
+  .sure-btn {
+    margin-top: 20px;
+    width: 100%;
+
+    .btn {
+      text-align: center;
+      height: 42px;
+      background: #FFE05C;
+      border-radius: 27px;
+      color: #333333;
+      line-height: 42px;
+      margin-top: 12px;
+      font-size: 14px;
     }
+  }
+}
+
+.button-group {
+  display: flex;
+  align-items: center;
+}
+
+.button {
+  padding: 6px 12px;
+  font-size: 14px;
+  background-color: #e6e6e6;
+  border: none;
+  border-radius: 4px;
+  cursor: pointer;
+}
+
+.custom-input-ranks {
+  width: 30px;
+  font-size: 12px;
+  text-align: center;
+}
+
+
+.radio-item {
+  padding-right: 6px;
+}
+
+.picker-change-store {
+  font-size: 14px;
+  color: #999;
+  line-height: 22px;
+
+  display: flex;
+  flex-direction: row;
+}
 </style>

+ 0 - 2
myPages/serviceObjectFaceAuth/index.vue

@@ -133,8 +133,6 @@
           uni.$u.toast('识别失败,请重新上传照片')
         });
 
-
-
       },
       //头像上传
       uploadImg() {

+ 338 - 296
myPages/serviceObjectInfo/index.vue

@@ -1,325 +1,367 @@
 <template>
-    <view class="user-info-wrap">
-        <view class="nav-bar">
-            <view class="nav-content">
-                <view class="nav-info">
-                    <view class="nav-desc">
-                        <view class="nav-name">
-                            <view class="">头像</view>
-                        </view>
-                    </view>
-                    <view @click="uploadImg1(1)" class="arrow-right">
-                        <view class="head-img">
-                            <image :src="userInfo.facePhotoUrl || '/static/me/ud4.png'" mode="aspectFill"></image>
-                        </view>
-                    </view>
-                </view>
+  <view class="user-info-wrap">
+    <view class="nav-bar">
+      <view class="nav-content">
+        <view class="nav-info">
+          <view class="nav-desc">
+            <view class="nav-name">
+              <view class="">头像</view>
             </view>
-            <view class="custom-line"></view>
-            <view class="cotent-from">
-                <u--form
-                        labelPosition="left"
-                        :model="userInfo"
-                        :rules="rules"
-                        ref="form1"
-                >
-                    <u-form-item
-                            label="昵称"
-                            prop="nickName"
-                            labelWidth="auto"
-                            labelAlign="right"
-                    >
-                        <u--input
-                                v-model="userInfo.nickName"
-                                placeholder="请输入昵称"
-                                border="bottom"
-                                maxlength="20"
-                                type="text"
-                        ></u--input>
-                    </u-form-item>
-                    <u-form-item
-                            labelWidth="auto"
-                            labelAlign="right"
-                            label="关系"
-                            prop="blood"
-                            width="120"
-                    >
-                        <u--input
-                                maxlength="20"
-                                v-model="userInfo.blood"
-                                placeholder="请输入关系"
-                                border="bottom"
-                                type="text"
-                        ></u--input>
-                    </u-form-item>
-                    <u-form-item
-                            labelWidth="auto"
-                            labelAlign="right"
-                            label="备注"
-                            prop="remark"
-                            width="120"
-                    >
-                        <u--input
-                                maxlength="20"
-                                v-model="userInfo.remark"
-                                placeholder="请输入备注"
-                                border="bottom"
-                                type="text"
-                        ></u--input>
-                    </u-form-item>
-                </u--form>
+          </view>
+          <view @click="uploadImg1(1)" class="arrow-right">
+            <view class="head-img">
+              <image :src="userInfo.facePhotoUrl || '/static/me/ud4.png'" mode="aspectFill"></image>
             </view>
+          </view>
         </view>
+      </view>
+      <view class="custom-line"></view>
+      <view class="cotent-from">
+        <u--form
+            labelPosition="left"
+            :model="userInfo"
+            :rules="rules"
+            ref="form1"
+        >
+          <u-form-item
+              label="昵称"
+              prop="nickName"
+              labelWidth="auto"
+              labelAlign="right"
+          >
+            <u--input
+                v-model="userInfo.nickName"
+                placeholder="请输入昵称"
+                border="bottom"
+                maxlength="20"
+                type="text"
+            ></u--input>
+          </u-form-item>
+          <u-form-item
+              labelWidth="auto"
+              labelAlign="right"
+              label="关系"
+              prop="blood"
+              width="120"
+          >
+            <u--input
+                maxlength="20"
+                v-model="userInfo.blood"
+                placeholder="请输入关系"
+                border="bottom"
+                type="text"
+            ></u--input>
+          </u-form-item>
+          <u-form-item
+              labelWidth="auto"
+              labelAlign="right"
+              label="备注"
+              prop="remark"
+              width="120"
+          >
+            <u--input
+                maxlength="20"
+                v-model="userInfo.remark"
+                placeholder="请输入备注"
+                border="bottom"
+                type="text"
+            ></u--input>
+          </u-form-item>
+          <u-form-item
+              v-if="userInfo.minMainCardStatus"
+              labelWidth="auto"
+              labelAlign="right"
+              label="服务项目"
+              prop="remark"
+              width="120"
+          >
+            <uni-data-checkbox multiple v-model="userInfo.serviceProjectId"
+                               :localdata="serviceProjectList"/>
+          </u-form-item>
+        </u--form>
+      </view>
+    </view>
 
-        <view @click="saveUserInfo()" class="sure-btn">
-            <view class="btn">确认</view>
-        </view>
-
+    <view @click="saveUserInfo()" class="sure-btn">
+      <view class="btn">确认</view>
     </view>
+
+  </view>
 </template>
 
 <script>
+export default {
+  data() {
+    return {
+      serviceProjectList: [],
+      requestStatus: false,
+      userInfo: {
+        auth: true,
+        nickName: '',
+        facePhoto: '',
+        blood: '',
+        remark: '',
+        id: '',
+        serviceProjectId:[],
+      },
+      genderShow: false,
+      value1: '2023-12-12',
+      imgUrl1: '',
+      rules: []
+    };
+  },
+  mounted() {
+  },
+  onShow() {
+    if (this.userInfo.facePhoto) {
+      this.getImgUrlByOssId(this.userInfo.facePhoto)
+    }
+  },
+  onLoad(option) {
+    this.getServiceObjectList()
+    console.log('++++++++++++++++option+++++++++++++++', option)
+    if (option.data) {
+      this.userInfo = JSON.parse(option.data);
+      if(this.userInfo.authServiceIds){
+        this.userInfo.serviceProjectId = this.userInfo.authServiceIds.split(',');
+      }
+      if (this.userInfo.facePhoto) {
+        this.getImgUrlByOssId(this.userInfo.facePhoto)
+      }
+    }
+  },
+  methods: {
+    //修改数组属性名
+    changeKey(arr, newName, oldName) {
+      arr.forEach(item => {
+        item[newName] = item[oldName]
+        delete item[oldName]
+      })
+      return arr
+    },
+    getServiceObjectList() {
+      this.$api.serviceProjectList().then(res => {
+        this.serviceProjectList = res.data.data
+        console.log()
+        this.changeKey(this.serviceProjectList, 'value', 'id')
+        this.changeKey(this.serviceProjectList, 'text', 'serviceName')
+      })
+    },
+    getImgUrlByOssId(Id) {
+      if (Id) {
+        this.$api.getImage(Id).then(res => {
+          this.userInfo.facePhotoUrl = res.data.data[0].url.replace(/^http:/, "https:")
+          this.$set(this.userInfo)
+        });
+      }
+    },
 
-    export default {
-        data() {
-            return {
-                requestStatus:false,
-                userInfo: {
-                    auth: true,
-                    nickName: '',
-                    facePhoto: '',
-                    blood: '',
-                    remark: '',
-                    id: ''
-                },
-                genderShow: false,
-                value1: '2023-12-12',
-                imgUrl1: '',
-                rules:[]
-            };
-        },
-        mounted() {
-        },
-        onShow(){
-            if (this.userInfo.facePhoto){
-                this.getImgUrlByOssId(this.userInfo.facePhoto)
-            }
-        },
-        onLoad(option) {
+    // 保存用户信息
+    saveUserInfo() {
+      if (!this.userInfo.nickName) {
+        uni.showToast({
+          title: "请填写昵称"
+        })
+        return;
+      }
+      if (!this.userInfo.blood) {
+        uni.showToast({
+          title: "请填写关系"
+        })
+        return;
+      }
+      if (this.requestStatus) {
+        return;
+      }
+      this.requestStatus = true
+      this.userInfo.auth = true;
+      this.userInfo.authServiceIds = this.userInfo.serviceProjectId.join()
+      this.userInfo.serviceProjectId = this.userInfo.serviceProjectId
+      if (this.userInfo.opType == '1') { // 绑定
+        // 保存数据
+        this.$api.bindServiceObject(this.userInfo).then((res) => {
+          if (res.data.code === 500) {
+            uni.showToast({
+              title: res.data.msg
+            })
+          } else {
+            uni.showToast({
+              title: "绑定成功"
+            })
+          }
+          // 去服务对象列表页
+          setTimeout(() => {
+            this.requestStatus = false
+            // uni.reLaunch({
+            //     url: '/myPages/ServiceObjectManagement/index',
+            // })
+            uni.navigateBack({
+              delta: 1
+            });
+          }, 3000)
+        }).catch(() => {
+          this.requestStatus = false
+        })
+      } else if (this.userInfo.opType == '2') { // 修改
+        // 修改数据
+        this.$api.updateServiceObject(this.userInfo).then((res) => {
+          uni.showToast({
+            title: "修改成功"
+          })
+          // 去服务对象列表页
+          setTimeout(() => {
+            this.requestStatus = false
+            // uni.redirectTo({
+            //     url: '/myPages/ServiceObjectManagement/index',
+            // })
+            uni.navigateBack({
+              delta: 1
+            });
+          }, 3000)
+        }).catch(() => {
+          this.requestStatus = false
+        })
+      }
+    },
+    //头像上传
+    uploadImg1(imgIndex) {
+      return //关闭头像上传
+      let that = this;
+      uni.chooseImage({
+        count: 1,
+        success: (chooseImageRes) => {
+          const tempFilePaths = chooseImageRes.tempFilePaths;
 
-            console.log('++++++++++++++++option+++++++++++++++',option)
-            if(option.data){
-                this.userInfo = JSON.parse(option.data);
-                if (this.userInfo.facePhoto){
-                    this.getImgUrlByOssId(this.userInfo.facePhoto)
-                }
+          uni.uploadFile({
+            url: that.$baseUrl + '/resource/oss/upload', //仅为示例,非真实的接口地址
+            filePath: tempFilePaths[0],
+            name: 'file',
+            header: {
+              'Authorization': 'Bearer ' + uni.getStorageInfo('accessToken'),
+            },
+            success: (uploadFileRes) => {
+              console.log('uploadFileRes=>', uploadFileRes)
+              let res = JSON.parse(uploadFileRes.data)
+              that.userInfo.facePhotoUrl = res.data.url.replace(/^http:/, "https:");
+              that.userInfo.facePhoto = res.data.ossId
             }
-        },
-        methods: {
+          });
+        }
+      });
+    }
+  }
+};
+</script>
 
-            getImgUrlByOssId(Id){
-                if (Id) {
-                    this.$api.getImage(Id).then(res=>{
-                        this.userInfo.facePhotoUrl = res.data.data[0].url.replace(/^http:/, "https:")
-                        this.$set(this.userInfo)
-                    });
-                }
-            },
+<style lang="scss">
+.user-info-wrap {
+  margin-left: 12px;
+  margin-right: 12px;
+  /* 导航菜单 */
+  .nav-bar {
+    background: #fff;
+    border-radius: 10px;
+    margin-top: 12px;
+
+    .cotent-from {
+      padding-right: 12px;
+      padding-left: 12px;
+    }
 
-            // 保存用户信息
-            saveUserInfo(){
+    /* 商店信息 */
+    .nav-content {
+      padding-right: 6px;
+      padding-top: 10px;
+      padding-bottom: 6px;
 
-                if(!this.userInfo.nickName){
-                    uni.showToast({
-                        title: "请填写昵称"
-                    })
-                    return;
-                }
-                if(!this.userInfo.blood){
-                    uni.showToast({
-                        title: "请填写关系"
-                    })
-                    return;
-                }
-                if(this.requestStatus){
-                    return;
-                }
-                this.requestStatus=true
-                this.userInfo.auth = true;
+      .nav-info {
+        display: flex;
+        justify-content: space-between;
+        padding-left: 10px;
+        align-items: center;
 
-                if(this.userInfo.opType == '1'){ // 绑定
-                    // 保存数据
-                    this.$api.bindServiceObject(this.userInfo).then((res)=>{
-                        if (res.data.code === 500){
-                            uni.showToast({
-                                title: res.data.msg
-                            })
-                        }else {
-                            uni.showToast({
-                                title: "绑定成功"
-                            })
-                        }
-                        // 去服务对象列表页
-                        setTimeout(()=>{
-                            this.requestStatus=false
-                            // uni.reLaunch({
-                            //     url: '/myPages/ServiceObjectManagement/index',
-                            // })
-                          uni.navigateBack({
-                            delta: 1
-                          });
-                        },3000)
-                    }).catch(()=>{
-                        this.requestStatus=false
-                    })
-                }else if(this.userInfo.opType == '2'){ // 修改
-                    // 修改数据
-                    this.$api.updateServiceObject(this.userInfo).then((res)=>{
-                        uni.showToast({
-                            title: "修改成功"
-                        })
-                        // 去服务对象列表页
-                        setTimeout(()=>{
-                            this.requestStatus=false
-                            // uni.redirectTo({
-                            //     url: '/myPages/ServiceObjectManagement/index',
-                            // })
-                          uni.navigateBack({
-                            delta: 1
-                          });
-                        },3000)
-                    }).catch(()=>{
-                        this.requestStatus=false
-                    })
-                }
-            },
-            //头像上传
-            uploadImg1(imgIndex) {
-                return //关闭头像上传
-                let that = this;
-                uni.chooseImage({
-                    count: 1,
-                    success: (chooseImageRes) => {
-                        const tempFilePaths = chooseImageRes.tempFilePaths;
+        .logo {
+          width: 12%;
+          text-align: center;
 
-                        uni.uploadFile({
-                            url: that.$baseUrl  + '/resource/oss/upload', //仅为示例,非真实的接口地址
-                            filePath: tempFilePaths[0],
-                            name: 'file',
-                            header: {
-                                'Authorization': 'Bearer ' + uni.getStorageInfo('accessToken'),
-                            },
-                            success: (uploadFileRes) => {
-                                console.log('uploadFileRes=>',uploadFileRes)
-                                let res = JSON.parse(uploadFileRes.data)
-                                that.userInfo.facePhotoUrl = res.data.url.replace(/^http:/, "https:");
-                                that.userInfo.facePhoto = res.data.ossId
-                            }
-                        });
-                    }
-                });
-            }
+          image {
+            width: 24px;
+            height: 24px;
+          }
         }
-    };
-</script>
 
-<style lang="scss">
-    .user-info-wrap{
-        margin-left: 12px;
-        margin-right: 12px;
-        /* 导航菜单 */
-        .nav-bar{
-            background: #fff;
-            border-radius: 10px;
-            margin-top: 12px;
-            .cotent-from{
-                padding-right: 12px;
-                padding-left: 12px;
-            }
-            /* 商店信息 */
-            .nav-content{
-                padding-right: 6px;
-                padding-top: 10px;
-                padding-bottom: 6px;
-                .nav-info{
-                    display: flex;
-                    justify-content: space-between;
-                    padding-left: 10px;
-                    align-items: center;
-                    .logo {
-                        width: 12%;
-                        text-align: center;
-                        image{
-                            width: 24px;
-                            height: 24px;
-                        }
-                    }
-                    .nav-desc{
-                        width: 46%;
-                        display: flex;
-                        line-height: 30px;
-                        font-family: PingFangSC-Regular, PingFang SC;
-                        font-weight: 400;
-                        align-items: center;
-                        .custom-input{
-                            font-size: 12px;
-                        }
-                        .nav-name{
-                            width: 60%;
-                            font-size: 14px;
+        .nav-desc {
+          width: 46%;
+          display: flex;
+          line-height: 30px;
+          font-family: PingFangSC-Regular, PingFang SC;
+          font-weight: 400;
+          align-items: center;
 
-                            color: #333333;
-                            line-height: 22px;
-                        }
-                        .change-store{
-                            text-align: right;
-                            width: 40%;
-                            font-size: 12px;
-                            color: #333333;
-                            line-height: 22px;
-                        }
-                    }
+          .custom-input {
+            font-size: 12px;
+          }
 
-                    .arrow-right{
-                        width: 50px;
-                        height: 50px;
-                        display: flex;
-                        justify-content: flex-end;
+          .nav-name {
+            width: 60%;
+            font-size: 14px;
 
-                        .head-img {
-                            width: 50px;
-                            height: 50px;
-                            border-radius: 25px;
-                            image{
-                                width: 50px;
-                                height: 50px;
-                                border-radius: 25px;
-                            }
-                        }
-                        .change-store{
-                            font-size: 14px;
-                            color: #999;
-                            line-height: 22px;
-                        }
-                    }
-                }
-            }
+            color: #333333;
+            line-height: 22px;
+          }
+
+          .change-store {
+            text-align: right;
+            width: 40%;
+            font-size: 12px;
+            color: #333333;
+            line-height: 22px;
+          }
         }
 
-        .sure-btn{
-            margin-top: 20px;
-            width: 100%;
-            .btn{
-                text-align: center;
-                height: 42px;
-                background: #FFE05C;
-                border-radius: 27px;
-                color: #333333;
-                line-height: 42px;
-                margin-top: 12px;
-                font-size: 14px;
+        .arrow-right {
+          width: 50px;
+          height: 50px;
+          display: flex;
+          justify-content: flex-end;
+
+          .head-img {
+            width: 50px;
+            height: 50px;
+            border-radius: 25px;
+
+            image {
+              width: 50px;
+              height: 50px;
+              border-radius: 25px;
             }
+          }
+
+          .change-store {
+            font-size: 14px;
+            color: #999;
+            line-height: 22px;
+          }
         }
+      }
+    }
+  }
+
+  .sure-btn {
+    margin-top: 20px;
+    width: 100%;
+
+    .btn {
+      text-align: center;
+      height: 42px;
+      background: #FFE05C;
+      border-radius: 27px;
+      color: #333333;
+      line-height: 42px;
+      margin-top: 12px;
+      font-size: 14px;
     }
+  }
+}
 
 </style>