党员积分
This commit is contained in:
		@@ -4,7 +4,7 @@
 | 
			
		||||
      <p><span>积分申请:</span>通过民主程序,将基层治理和服务各项事务转化为数量化指标,对个人日常行为进行评价。申请积分需管理员审核通过后系统自动发放积分。</p>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="list">
 | 
			
		||||
      <div class="item">
 | 
			
		||||
      <div class="item" @click="toAdd">
 | 
			
		||||
        <div class="left">
 | 
			
		||||
          <h2>积分申报</h2>
 | 
			
		||||
          <p>08-31 13:45</p>
 | 
			
		||||
@@ -34,7 +34,9 @@ export default {
 | 
			
		||||
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    
 | 
			
		||||
    toAdd() {
 | 
			
		||||
      uni.navigateTo({url: `./add?id=1&name=111`})
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
};
 | 
			
		||||
</script>
 | 
			
		||||
 
 | 
			
		||||
@@ -5,11 +5,11 @@
 | 
			
		||||
        <div class="label">
 | 
			
		||||
          <span class="tips">*</span>积分类型
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="value">请选择<u-icon name="arrow-right" color="#ddd" size="24" style="margin-left: 4px" ></u-icon></div>
 | 
			
		||||
        <div class="value" @click="showTypeSelect=true">{{typeName}}<u-icon name="arrow-right" color="#ddd" size="24" style="margin-left: 4px" ></u-icon></div>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="text-area">
 | 
			
		||||
        <div class="title"><span class="tips">*</span>申请描述</div>
 | 
			
		||||
        <u-input v-model="value" type="textarea" :height="200" placeholder="请输入描述信息" placeholder-style="font-size:20px;color:#999;"/>
 | 
			
		||||
        <u-input v-model="value" type="textarea" :height="200" placeholder="请输入描述信息" placeholder-style="font-size:20px;color:#999;" maxlength="500" />
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="upload">
 | 
			
		||||
@@ -18,9 +18,10 @@
 | 
			
		||||
        <AiUploader v-model="fileList" multiple placeholder="上传图片" :limit="9"></AiUploader>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="footer">
 | 
			
		||||
    <div class="footer" @click="confirmAdd">
 | 
			
		||||
      <div class="btn">提交</div>
 | 
			
		||||
    </div>
 | 
			
		||||
    <u-select v-model="showTypeSelect" :list="typeList"  @confirm="confirmType" value-name="id" label-name="name"></u-select>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
<script>
 | 
			
		||||
@@ -35,14 +36,37 @@ export default {
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      value: '',
 | 
			
		||||
      fileList: []
 | 
			
		||||
      fileList: [],
 | 
			
		||||
      typeId: '',
 | 
			
		||||
      typeName: '',
 | 
			
		||||
      typeList: [{id: '1', name: '111'}, {id: '2', name: '222'}],
 | 
			
		||||
      showTypeSelect: false
 | 
			
		||||
    };
 | 
			
		||||
  },
 | 
			
		||||
  onLoad() {
 | 
			
		||||
 | 
			
		||||
  onLoad(options) {
 | 
			
		||||
    if(options.id) {
 | 
			
		||||
      this.typeId = options.id
 | 
			
		||||
      this.typeName = options.name
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    
 | 
			
		||||
    confirmAdd() {
 | 
			
		||||
      if(!this.value) {
 | 
			
		||||
        this.$u.toast('请输入申请描述')
 | 
			
		||||
      }
 | 
			
		||||
      this.$instance.post(`/app/partyOrganization/queryPartyOrganizationListByName`).then((res) => {
 | 
			
		||||
        if(res?.data) {
 | 
			
		||||
          this.$u.toast('申请成功')
 | 
			
		||||
          setTimeout(() => {
 | 
			
		||||
            uni.navigateBack()
 | 
			
		||||
          }, 500)
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    confirmType(e) {
 | 
			
		||||
      this.typeId = e[0].value
 | 
			
		||||
      this.typeName = e[0].label
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
};
 | 
			
		||||
</script>
 | 
			
		||||
 
 | 
			
		||||
@@ -7,14 +7,14 @@
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="select-content">
 | 
			
		||||
        <div class="select">全部类型<u-icon name="arrow-down" color="#333" size="24" style="margin-left: 4px" ></u-icon></div>
 | 
			
		||||
        <div class="select" @click="showTypeSelect=true">{{typeId ? typeName : '全部类型'}}<u-icon name="arrow-down" color="#333" size="24" style="margin-left: 4px" ></u-icon></div>
 | 
			
		||||
        <div class="search">
 | 
			
		||||
          <u-search placeholder="请输入党组织" v-model="name" :show-action="false" @change="getList"></u-search>
 | 
			
		||||
          <u-search placeholder="请输入党组织" v-model="name" :show-action="false" @search="getListInit" @clear="name='', getListInit()"></u-search>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="list">
 | 
			
		||||
      <div class="item">
 | 
			
		||||
      <div class="item" @click="toDetail()">
 | 
			
		||||
        <div class="top">
 | 
			
		||||
          <p class="title">本人与2021年11月12日,在紫荆医院接种第三针新冠疫苗。本人与2021年11月12日,在紫荆医院接种第三针新21年11月12日,在紫荆医院接种第三针新</p>
 | 
			
		||||
          <div class="flex">
 | 
			
		||||
@@ -27,6 +27,7 @@
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
    <u-select v-model="showTypeSelect" :list="typeList"  @confirm="confirmType" value-name="id" label-name="name"></u-select>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
<script>
 | 
			
		||||
@@ -42,22 +43,51 @@ export default {
 | 
			
		||||
    return {
 | 
			
		||||
      tabList: ['全部', '待审核', '已审核'],
 | 
			
		||||
      tabIndex: 0,
 | 
			
		||||
      name: ''
 | 
			
		||||
      name: '',
 | 
			
		||||
      typeId: '',
 | 
			
		||||
      typeName: '',
 | 
			
		||||
      typeList: [{id: '1', name: '111'}, {id: '2', name: '222'}],
 | 
			
		||||
      showTypeSelect: false,
 | 
			
		||||
      current: 1,
 | 
			
		||||
      pages: 2,
 | 
			
		||||
      list: []
 | 
			
		||||
    };
 | 
			
		||||
  },
 | 
			
		||||
  onLoad() {
 | 
			
		||||
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    getListInit() {
 | 
			
		||||
      this.current = 1
 | 
			
		||||
      this.pages = 2
 | 
			
		||||
      this.list = []
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    getList() {
 | 
			
		||||
      if (this.current > this.pages) return;
 | 
			
		||||
      // this.$instance.post(`/app/apppartyeducation/list?current=${this.current}`).then((res) => {
 | 
			
		||||
      //   if (res.code == 0) {
 | 
			
		||||
      //     const list = this.current > 1 ? [...this.list, ...res.data.records] : res.data.records
 | 
			
		||||
      //     this.pages = Math.ceil(res.data.total / 10)
 | 
			
		||||
      //     this.list = list
 | 
			
		||||
      //   }
 | 
			
		||||
      // });
 | 
			
		||||
    },
 | 
			
		||||
    tabClick(index) {
 | 
			
		||||
      this.tabIndex = index
 | 
			
		||||
      // if (!this.tabIndex) {
 | 
			
		||||
      //   this.status = ''
 | 
			
		||||
      // } else {
 | 
			
		||||
      //   this.status = this.tabIndex - 1
 | 
			
		||||
      // }
 | 
			
		||||
      // this.getList()
 | 
			
		||||
      this.getListInit()
 | 
			
		||||
    },
 | 
			
		||||
    confirmType(e) {
 | 
			
		||||
      this.typeId = e[0].value
 | 
			
		||||
      this.typeName = e[0].label
 | 
			
		||||
    },
 | 
			
		||||
    toDetail() {
 | 
			
		||||
      uni.navigateTo({ url: `./detail` })
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  onReachBottom() {
 | 
			
		||||
    this.current ++
 | 
			
		||||
    this.getList()
 | 
			
		||||
  }
 | 
			
		||||
};
 | 
			
		||||
</script>
 | 
			
		||||
 
 | 
			
		||||
@@ -29,6 +29,9 @@
 | 
			
		||||
        <div>第11名</div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="footer" @click="linkTo(`../AppApplyPoint/AppApplyPoint`)">
 | 
			
		||||
      <div class="btn">党员积分申报</div>
 | 
			
		||||
    </div>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
<script>
 | 
			
		||||
@@ -160,4 +163,23 @@ page{
 | 
			
		||||
    border-bottom: 1px solid #ddd;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
.footer{
 | 
			
		||||
  position: fixed;
 | 
			
		||||
  bottom: 0;
 | 
			
		||||
  left: 0;
 | 
			
		||||
  width: 100%;
 | 
			
		||||
  padding: 16px 32px;
 | 
			
		||||
  .btn{
 | 
			
		||||
    width: 686px;
 | 
			
		||||
    height: 88px;
 | 
			
		||||
    line-height: 88px;
 | 
			
		||||
    text-align: center;
 | 
			
		||||
    background: #E76056;
 | 
			
		||||
    border-radius: 16px;
 | 
			
		||||
    font-size: 34px;
 | 
			
		||||
    font-family: PingFangSC-Medium, PingFang SC;
 | 
			
		||||
    font-weight: 500;
 | 
			
		||||
    color: #FFF;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
  <div class="wrapper">
 | 
			
		||||
    <div class="fixed">
 | 
			
		||||
      <div class="header">
 | 
			
		||||
        <div class="left">2020-08<u-icon name="arrow-down" color="#333" size="24" style="margin-left: 4px" ></u-icon></div>
 | 
			
		||||
        <div class="left" @click="showDate=true">{{searchDate}}<u-icon name="arrow-down" color="#333" size="24" style="margin-left: 4px" ></u-icon></div>
 | 
			
		||||
        <div class="right">获得积分 <span>1500</span></div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
@@ -18,6 +18,7 @@
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
    <u-picker mode="time" v-model="showDate" :params="dateParams" @confirm="selectDate"></u-picker>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
<script>
 | 
			
		||||
@@ -31,14 +32,28 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
 | 
			
		||||
      searchDate: '',
 | 
			
		||||
      showDate: false,
 | 
			
		||||
      dateParams: {
 | 
			
		||||
        year: true,
 | 
			
		||||
        month: true,
 | 
			
		||||
        day: false,
 | 
			
		||||
        hour: false,
 | 
			
		||||
        minute: false,
 | 
			
		||||
        second: false
 | 
			
		||||
      },
 | 
			
		||||
    };
 | 
			
		||||
  },
 | 
			
		||||
  onLoad() {
 | 
			
		||||
 | 
			
		||||
    var datetime = new Date();
 | 
			
		||||
    var year = datetime.getFullYear();
 | 
			
		||||
    var month = datetime.getMonth() + 1 < 10 ? '0' + (datetime.getMonth() + 1) : datetime.getMonth() + 1;
 | 
			
		||||
    this.searchDate = `${year}-${month}`
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    
 | 
			
		||||
    selectDate(e) {
 | 
			
		||||
      this.searchDate = `${e.year}-${e.month}`
 | 
			
		||||
    },
 | 
			
		||||
  }
 | 
			
		||||
};
 | 
			
		||||
</script>
 | 
			
		||||
 
 | 
			
		||||
@@ -2,15 +2,13 @@
 | 
			
		||||
  <div class="wrapper">
 | 
			
		||||
    <div class="fixed">
 | 
			
		||||
      <div class="header">
 | 
			
		||||
        <AiAreaPicker ref="area" class="ai-area" v-model="areaId" :name.sync="areaName" :areaId="$areaId" @input="areaSelect" >
 | 
			
		||||
          <div class="ai-area__wrapper">
 | 
			
		||||
            <img src="./img/location-icon.png" alt="" class="location-icon">
 | 
			
		||||
            <span class="label" v-if="areaName" style="color:#E6736E;">{{ areaName }}</span>
 | 
			
		||||
            <span v-else style="color:#E6736E;">请选择</span>
 | 
			
		||||
            <u-icon name="arrow-down" color="#E6736E" size="24" style="margin-left: 4px" ></u-icon>
 | 
			
		||||
          </div>
 | 
			
		||||
        </AiAreaPicker>
 | 
			
		||||
        <div class="right">2020-08<u-icon name="arrow-down" color="#333" size="24" style="margin-left: 4px" ></u-icon></div>
 | 
			
		||||
        <div class="ai-area__wrapper" @click="toSelect">
 | 
			
		||||
          <img src="./img/location-icon.png" alt="" class="location-icon">
 | 
			
		||||
          <span class="label" v-if="partyName" style="color:#E6736E;">{{ partyName }}</span>
 | 
			
		||||
          <span v-else style="color:#E6736E;">请选择</span>
 | 
			
		||||
          <u-icon name="arrow-down" color="#E6736E" size="24" style="margin-left: 4px" ></u-icon>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="right" @click="showDate=true">{{searchDate}}<u-icon name="arrow-down" color="#333" size="24" style="margin-left: 4px" ></u-icon></div>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="tab-list">
 | 
			
		||||
        <div class="tab-item" v-for="(item, index) in tabList" :key="index" @click="tabClick(index)" :style="tabIndex == index ? 'color:#333;' : ''">{{ item }}
 | 
			
		||||
@@ -27,6 +25,7 @@
 | 
			
		||||
        <div class="right">70分</div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
    <u-picker mode="time" v-model="showDate" :params="dateParams" @confirm="selectDate"></u-picker>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
<script>
 | 
			
		||||
@@ -40,21 +39,33 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      areaId: '',
 | 
			
		||||
      areaName: '',
 | 
			
		||||
      partyName: '',
 | 
			
		||||
      partyId: '',
 | 
			
		||||
      tabList: ['月度排行', '累计排行'],
 | 
			
		||||
      tabIndex: 0,
 | 
			
		||||
      searchDate: '',
 | 
			
		||||
      showDate: false,
 | 
			
		||||
      dateParams: {
 | 
			
		||||
        year: true,
 | 
			
		||||
        month: true,
 | 
			
		||||
        day: false,
 | 
			
		||||
        hour: false,
 | 
			
		||||
        minute: false,
 | 
			
		||||
        second: false
 | 
			
		||||
      },
 | 
			
		||||
    };
 | 
			
		||||
  },
 | 
			
		||||
  onLoad() {
 | 
			
		||||
    this.areaId = this.user.areaId
 | 
			
		||||
    this.areaName = this.user.areaName
 | 
			
		||||
    uni.$on('selectParty', (res) => {
 | 
			
		||||
      this.partyName = res.name
 | 
			
		||||
      this.partyId = res.id
 | 
			
		||||
    })
 | 
			
		||||
    var datetime = new Date();
 | 
			
		||||
    var year = datetime.getFullYear();
 | 
			
		||||
    var month = datetime.getMonth() + 1 < 10 ? '0' + (datetime.getMonth() + 1) : datetime.getMonth() + 1;
 | 
			
		||||
    this.searchDate = `${year}-${month}`
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    areaSelect(v) {
 | 
			
		||||
      this.areaId = v
 | 
			
		||||
      // this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    tabClick(index) {
 | 
			
		||||
      this.tabIndex = index
 | 
			
		||||
      // if (!this.tabIndex) {
 | 
			
		||||
@@ -63,6 +74,12 @@ export default {
 | 
			
		||||
      //   this.status = this.tabIndex - 1
 | 
			
		||||
      // }
 | 
			
		||||
      // this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    selectDate(e) {
 | 
			
		||||
      this.searchDate = `${e.year}-${e.month}`
 | 
			
		||||
    },
 | 
			
		||||
    toSelect() {
 | 
			
		||||
      uni.navigateTo({url: './search'})
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
};
 | 
			
		||||
 
 | 
			
		||||
@@ -1,19 +1,19 @@
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="wrapper">
 | 
			
		||||
    <div class="fixed">
 | 
			
		||||
      <u-search placeholder="请输入党组织" v-model="name" :show-action="false" @change="getList"></u-search>
 | 
			
		||||
      <u-search placeholder="请输入党组织" v-model="name" :show-action="false" @search="searchParty" @clear="clearName"></u-search>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="history-list">
 | 
			
		||||
    <div class="history-list" v-if="showHistory">
 | 
			
		||||
      <div class="title">
 | 
			
		||||
        <div class="left">历史选择</div>
 | 
			
		||||
        <div class="right"><img src="./img/del-icon.png" alt=""> 清空</div>
 | 
			
		||||
        <div class="right" @click="clearHistory"><img src="./img/del-icon.png" alt=""> 清空</div>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="item">仙桃市蔡滩村党委第一党小组</div>
 | 
			
		||||
      <div class="item">仙桃市</div>
 | 
			
		||||
      <div class="item">委第一党小组</div>
 | 
			
		||||
      <div class="item" v-for="(item, index) in historyList" :key="index" @click="itemClick(item)">{{item}}</div>
 | 
			
		||||
      <AiEmpty description="暂无搜索数据" v-if="!historyList.length"/>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="list">
 | 
			
		||||
      <div class="item">仙桃市胡场镇蔡滩村党组织换行样式换行样式换行样式换行样式换行样式</div>
 | 
			
		||||
    <div class="list" v-else>
 | 
			
		||||
      <div class="item" v-for="(item, index) in list" :key="index" @click="back(item)">{{item.name}}</div>
 | 
			
		||||
      <AiEmpty v-if="!list.length"/>
 | 
			
		||||
    </div>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
@@ -28,15 +28,55 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      name: ''
 | 
			
		||||
      name: '',
 | 
			
		||||
      showHistory: true,
 | 
			
		||||
      historyList: [],
 | 
			
		||||
      list: []
 | 
			
		||||
    };
 | 
			
		||||
  },
 | 
			
		||||
  onLoad() {
 | 
			
		||||
    
 | 
			
		||||
    this.historyList = uni.getStorageSync("historyList")
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    back(item) {
 | 
			
		||||
      uni.navigateBack({
 | 
			
		||||
        delta: 1,
 | 
			
		||||
        success: () => {
 | 
			
		||||
          uni.$emit('selectParty', item)
 | 
			
		||||
        },
 | 
			
		||||
      })
 | 
			
		||||
      // uni.$emit('selectParty', item)
 | 
			
		||||
      // uni.navigateBack()
 | 
			
		||||
    },
 | 
			
		||||
    clearHistory() {
 | 
			
		||||
      this.historyList = []
 | 
			
		||||
      uni.setStorageSync("historyList", this.historyList)
 | 
			
		||||
    },
 | 
			
		||||
    searchParty() {
 | 
			
		||||
      if(!this.name) {
 | 
			
		||||
        return this.$u.toast('请输入查询的党组织')
 | 
			
		||||
      }
 | 
			
		||||
      if(!this.historyList.includes(this.name)) {
 | 
			
		||||
        this.historyList.push(this.name)
 | 
			
		||||
        uni.setStorageSync("historyList", this.historyList)
 | 
			
		||||
      }
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    clearName() {
 | 
			
		||||
      this.name = ''
 | 
			
		||||
      this.showHistory = true
 | 
			
		||||
    },
 | 
			
		||||
    itemClick(e) {
 | 
			
		||||
      this.name = e
 | 
			
		||||
      this.getList()
 | 
			
		||||
    },
 | 
			
		||||
    getList() {
 | 
			
		||||
 | 
			
		||||
      this.$instance.post(`/app/partyOrganization/queryPartyOrganizationListByName?name=${this.name}`).then((res) => {
 | 
			
		||||
        if(res?.data) {
 | 
			
		||||
          this.showHistory = false
 | 
			
		||||
          this.list = res.data
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
};
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user