123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152 |
- var app = getApp()
- var that;
- Component({
- mixins: [],
- data: {
- allItems:[],
- item_list: {},
- rule_tree: {},
- types:'',
- activeIndex:'',//一级索引
- activeItemIndex:'',//二级索引
- item_child_list:[],//子数据集合
- isItem:true,//判断是否显示左侧
- selectItem:[],//选择的数据
- isCreator:false,
- creatorName:'',
- },
- props: {
- onClose: (data) => console.log(data),
- onConfirm:(data) => console.log(data),
- isGzType:'',
- defaultId:'',//默认选中
- },
- didMount() {
- that = this;
- this.setData({types:app.globalData.types,isCreator: app.globalData.isCreator,creatorName:app.globalData.corpMessage.creators})
- this.getData();
- },
- didUpdate() { },
- didUnmount() { },
- methods: {
- onReset(){
- this.setData({
- selectItem: [],
- isItem:true,
- isVal:false
- })
- },
- //搜索
- bindKeyInput(e) {
- var item_list=this.data.allItems;
- var items=item_list.filter((item)=>{
- return item.remark.indexOf(e.detail.value) >= 0
- });
- this.setData({
- selectItem: items,
- isItem:e.detail.value? false:true,
- isVal:e.detail.value? true:false
- })
- },
- //点击一级
- activeTree(e){
- var item=e.target.dataset.item
- var item_list=this.data.allItems;
- if(item.id==this.data.activeIndex){
- this.setData({
- activeIndex:'',
- item_child_list:[],
- item_list: item_list,
- activeItemIndex:'',
- })
- return false;
- }
- this.setData({item_child_list:[]});
- if(item.child&&item.child.length>0){
- // this.setData({
- // activeItemIndex:item.child[0].id
- // })
- // if(item.child[0].child&&item.child[0].child.length>0){
- // this.setData({
- // item_child_list:item.child[0].child
- // })
- // }
- }
- this.setData({
- activeIndex:item.id
- })
- this.getItem(item.id);
- },
- //点击二级
- activeItem(e){
- var item=e.target.dataset.item
- this.setData({
- activeItemIndex:item.id,
- item_list:[]
- });
- if(item.child&&item.child.length>0){
- this.setData({
- item_child_list:item.child
- })
- }else{
- this.setData({
- item_child_list:[]
- })
- }
- this.getItem(item.id);
- },
- openDetail(e){
- var id=e.target.dataset.item.id;
- this.setData({
- activeItemIndex:id,
- item_child_list:e.target.dataset.item.child
- });
- this.getItem(id);
- },
- getItem(id){
- var item_list=this.data.allItems;
- var items=item_list.filter((item)=>{return item.rule_id==id});
- that.setData({
- item_list: items,
- })
- },
- radioChange: function (e) {
- this.props.onConfirm(e.detail.value);
- this.plusOne();
- },
- getData() {
- var pt_id,typeObj;
- if(that.props.isGzType){
- typeObj=app.getTypesItem(that.props.isGzType);
- pt_id=typeObj.id;
- }
- app.$get2("api/integral/rule/trees", { pt_id: pt_id,cycle_type: 1 }).then((res)=>{
- var item_list = res.data.data.item_list
- var rule_tree = res.data.data.rule_tree
- var list = []
- for (let i in item_list) {
- for (let k in item_list[i]) {
- item_list[i][k].pt_Obj=that.props.isGzType? typeObj:app.getTypesItem(item_list[i][k].pt_id);
- list.push(item_list[i][k])
- }
- }
- if(this.props.defaultId){
- list.map(item=>{
- if(this.props.defaultId==item.id){
- item.checked=true;
- }
- })
- }
- that.setData({
- item_list: list,
- rule_tree:rule_tree,
- allItems:list,
- })
- })
- },
- //关闭
- plusOne(e) {
- this.props.onClose();
- },
- },
- });
|