tanghaolin
2022-08-30 e6c7099b1f642c63822f8288471bfd9fbfeb5625
添加品牌选择和品牌筛选
已修改4个文件
590 ■■■■ 文件已修改
src/views/Select/PumpCategory.vue 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Select/PumpList.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Select/SelParams.vue 330 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Select/SelSeries.vue 170 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/Select/PumpCategory.vue
@@ -74,16 +74,22 @@
          </van-cell-group> -->
          <van-collapse v-model="currentExplanCategory">
            <van-collapse-item             
            :title="group_item.label"
            v-for="group_item in m_VisiblepumpCateGoryOption"
            :key="group_item.label"
            :name="group_item.label">
            v-for="(group_item,group_index) in m_VisiblepumpCateGoryOption"
            :key="group_index"
            :name="group_item.label"
            >
            <template #title>
              <van-badge v-if="group_item.isHaveSelect" dot color="#528abe">
                <div style="color:#578ebe">{{group_item.label}}</div>
              </van-badge>
              <div v-else>{{group_item.label}}</div>
            </template>
              <van-cell
              v-for="(item, index) in group_item.child"
              v-for="item in group_item.child"
              clickable
              title-style="color:#808080"
              :key="item.value"
              @click="toggle(item, index)"
              @click="toggle(item, group_index)"
            >
              <template #title>
                <span style="font-size: 14px;font-weight: 700;">{{item.label}}</span>
@@ -180,6 +186,7 @@
      m_prevPageData: {}, //上个页面传入的数据
      m_selectIndex: 1, //列表的选择状态 1表示按类型 2表示按行业 3表示按介质
      currentCheckedCategory: "", //当前选择的类型
      currentCheckedLabel:"",
      currentExplanCategory:[],//当前展开的菜单
      m_SelectAllList: false,
@@ -211,22 +218,6 @@
    this.m_pageTitle =  this.getSoftName();
    document.title = this.m_pageTitle;
    let prvePathDataObj = this.$store.state.instante.select.ByParas.filterData;
    if (prvePathDataObj) {
      this.m_prevPageData = prvePathDataObj;
      if (prvePathDataObj.FilterInfo.CatalogID) {
        //console.log(prvePathDataObj.FilterInfo.SeriesID,104)
        this.currentCheckedCategory = prvePathDataObj.FilterInfo.CatalogID;
      }
    }
    if (this.currentCheckedCategory == "") {
      _this.showPopover = true;
      setTimeout(function() {
        _this.showPopover = false;
      }, 3000);
    } else {
      _this.showPopover = false;
    }
    this.$nextTick(function() {
      //移除滚动事件
      document.removeEventListener("scroll", this.setBackShow, true);
@@ -314,10 +305,10 @@
                label: group.label,
                parentID: group.parentID,
                isExpland: false,
                isHaveSelect:false,
                child: []
              };
              catalogChilds.forEach(child => {
                // console.log(group,child)
                if (child.parentID == group.value) {
                  let node = {
                    value: child.value,
@@ -330,15 +321,47 @@
              });
              currentCatalogOptions.push(catalogOption);
            });
            // console.log(currentCatalogOptions, 362);
            //  console.log(currentCatalogOptions, 362);
            _this.m_pumpCateGoryOption = currentCatalogOptions;
            _this.m_VisiblepumpCateGoryOption = currentCatalogOptions;
            _this.getPrivePageData()
          }
        })
        .catch(err => {
          console.log(err);
        });
    },
    //获取上一页的历史数据
  getPrivePageData(){
        let prvePathDataObj = this.$store.state.instante.select.ByParas.filterData;
      if (prvePathDataObj) {
        this.m_prevPageData = prvePathDataObj;
        if (prvePathDataObj.FilterInfo.CatalogID) {
          //console.log(prvePathDataObj.FilterInfo.SeriesID,104)
          this.currentCheckedCategory = prvePathDataObj.FilterInfo.CatalogID;
        }
      }
      if (this.currentCheckedCategory == "") {
        this.showPopover = true;
        setTimeout(function() {
          _this.showPopover = false;
        }, 3000);
      } else {
        this.showPopover = false;
      }
      for(let i=0,length= this.m_pumpCateGoryOption.length;i<length;i++){
        let groupItem = this.m_pumpCateGoryOption[i]
        for(let j=0,childlength= groupItem.child.length;j<childlength;j++){
          let childItem = groupItem.child[j]
          if(childItem.value == this.currentCheckedCategory){
            groupItem.isHaveSelect = true
            this.currentCheckedLabel = childItem.label
            break;
          }
        }
      }
  },
    //构建行业列表
    // buildHYList() {
    //   if (
@@ -409,12 +432,17 @@
    },
    //按类型多选 checkbox 选择状态切换
    toggle(item, index) {
      //  console.log(item)
        console.log(item.label)
       if(item.seriesNumber == 0){
         return
       }
       this.m_VisiblepumpCateGoryOption.forEach(item=>{
        item.isHaveSelect = false
       })
       this.m_VisiblepumpCateGoryOption[index].isHaveSelect = true
      this.currentCheckedCategory = item.value;
    },
      this.currentCheckedLabel = item.label
    },
    //按行业选择
    clickHYItem(item) {
      this.m_currentSelectHY = item.ID;
@@ -556,7 +584,10 @@
        //select 表示vuex的文件名
        filterData: groupPageData
      });
      this.gotoPage("/Select/SelSeries", "", null);
      let query = {
        catalogName:this.currentCheckedLabel
      }
      this.gotoPage("/Select/SelSeries", query, null);
      //console.log(groupPageData);
      //console.log(this.m_SelectSeriesID);
    },
src/views/Select/PumpList.vue
@@ -28,7 +28,7 @@
      >
        <div class="pump_content">
          <div class="pump_name">
          <span >  <span>{{ item.PumpName }} </span> <span class="corpName"> {{ item.CorpName }} </span> </span>
            <div>{{ item.PumpName }} </div> <div class="corpName"> <van-tag round type="primary" color="#528abe">{{item.CorpName}}</van-tag></div>
          </div>
          <div class="pump_detail">
            <div class="prop_item" style="margin-right: 10px; width: 30%">
@@ -320,6 +320,8 @@
  font-size:12px;
  color:gray;
  padding-left:12px;
  position: absolute;
  right: 15px;
}
.pumpList_box {
  width: 100vw;
@@ -350,6 +352,7 @@
          align-items: center;
          font-size: 16px;
          font-weight: 600;
          position: relative;
        }
        .pump_detail {
          width: 100%;
src/views/Select/SelParams.vue
@@ -5,20 +5,21 @@
      <template #left>
        <div @click="pageBack" style="display: flex; align-items: center">
          <van-icon name="arrow-left" size="18" />
          <span>{{$t('selectPage.index.TR')}}</span>
          <span>{{ $t("selectPage.index.TR") }}</span>
        </div>
      </template>
      <template #title>
        <label>{{$t("selectPage.productSeries.TR")}}</label>
        <label>{{ $t("selectPage.productSeries.TR") }}</label>
      </template>
      <template #right>
        <div @click="toSelSeries" style="display: flex; align-items: center">
          <span>{{$t("selectPage.nextStep.TR")}}</span>
          <span>{{ $t("selectPage.nextStep.TR") }}</span>
          <van-icon name="arrow" size="18" />
        </div>
      </template>
    </van-nav-bar>
    <div class="selectParm_main">
      <!-- 流量 -->
      <van-field
        center
        clearable
@@ -30,7 +31,7 @@
        style="padding: 10px 26px"
      >
        <template #label>
          <span style="font-size: 14px">{{$t('ebookPage.flow.TR')}}</span>
          <span style="font-size: 14px">{{ $t("ebookPage.flow.TR") }}</span>
        </template>
        <template #button>
          <van-button
@@ -41,6 +42,7 @@
          >
        </template>
      </van-field>
      <!-- 扬程 -->
      <van-field
        center
        clearable
@@ -48,11 +50,11 @@
        label-align="center"
        :label="$t('ebookPage.head.TR')"
        type="number"
        :placeholder="$t('selectPage.headRule.TR')"
        :placeholder="$t('selectPage.headRule.TR')"
        style="padding: 10px 26px"
      >
        <template #label>
          <span style="font-size: 14px">{{$t('ebookPage.head.TR')}}</span>
          <span style="font-size: 14px">{{ $t("ebookPage.head.TR") }}</span>
        </template>
        <template #button>
          <van-button
@@ -63,6 +65,7 @@
          >
        </template>
      </van-field>
      <!-- 设置频率 -->
      <van-field
        readonly
        clickable
@@ -78,6 +81,7 @@
          <van-button disabled size="small" type="primary">Hz</van-button>
        </template>
      </van-field>
      <!-- 消防泵 -->
      <van-field
        readonly
        center
@@ -94,6 +98,7 @@
          </van-button>
        </template>
      </van-field>
      <!-- 转速 -->
      <van-field
        readonly
        center
@@ -102,7 +107,7 @@
        v-if="m_DeviceTpyeValue != 3"
        :label="$t('selectPage.speed.TR')"
        label-align="center"
        style="margin-bottom: 10px; padding: 10px 26px"
        style="padding: 10px 26px"
        @click="m_ShowMotorPolePicker = true"
      >
        <template #button>
@@ -111,11 +116,30 @@
          </van-button>
        </template>
      </van-field>
      <!-- 品牌 -->
      <van-field
        readonly
        center
        clearable
        v-model="m_BrandShowValue"
        label="品牌"
        label-align="center"
        style="margin-bottom: 10px; padding: 10px 26px"
        @click="getBrandData"
      >
        <template #button>
          <van-button disabled size="small" type="primary">
            <van-icon name="arrow" />
          </van-button>
        </template>
      </van-field>
      <van-collapse v-model="m_activeNames">
        <!-- 更多条件 -->
        <van-collapse-item name="moreTrade" style="margin-bottom: 10px">
          <template #title>
            <span style="font-size: 14px; font-weight: 600">{{$t('selectPage.drivingConditions.TR')}}</span>
            <span style="font-size: 14px; font-weight: 600">{{
              $t("selectPage.drivingConditions.TR")
            }}</span>
          </template>
          <van-field
            readonly
@@ -149,7 +173,9 @@
        <!-- 参数范围 -->
        <van-collapse-item name="paramLimit" style="margin-bottom: 10px">
          <template #title>
            <span style="font-size: 14px; font-weight: 600">{{$t('detailPage.medium.TR')}}</span>
            <span style="font-size: 14px; font-weight: 600">{{
              $t("detailPage.medium.TR")
            }}</span>
          </template>
          <van-field
            readonly
@@ -208,7 +234,9 @@
        <!-- 容差范围 -->
        <van-collapse-item name="tolerances">
          <template #title>
            <span style="font-size: 14px; font-weight: 600">{{$t('selectPage.toleranceRange.TR')}}</span>
            <span style="font-size: 14px; font-weight: 600">{{
              $t("selectPage.toleranceRange.TR")
            }}</span>
          </template>
          <van-field
            readonly
@@ -382,6 +410,17 @@
          @confirm="onChangeMotorPoleConfirm"
        />
      </van-popup>
      <!-- 品牌 -->
      <van-action-sheet v-model:show="m_ShowBrandPicker" title="品牌选择">
        <div class="brand-content">
          <div class="brand-item" @click="onChangeBrandSelectAll" :class="brandSelectAll?'brand-item-active':''">
            <span>全部</span>
          </div>
          <div class="brand-item" @click="onChangeBrandSelect(brand_item)" :class="brand_item.IsSelect?'brand-item-active':''" v-for="(brand_item,brand_index) in m_BrandColumns" :key="brand_index">
            <span>{{brand_item.ShortName}}</span>
          </div>
        </div>
      </van-action-sheet>
      <!-- 电机功率标准 -->
      <van-popup
        v-model:show="m_ShowMotorStdPicker"
@@ -497,6 +536,13 @@
        { text: "12p", value: 12, disabled: false },
      ], //转速等级
      m_ShowBrandPicker: false, //显示品牌弹框
      m_BrandValue: null, //选择的品牌的值
      m_BrandShowValue: "全部", //展示品牌选择后的值
      m_BrandColumns: [], //品牌选择数
      isInitBrandData:false,//是否获取了品牌数据
      brandSelectAll:false,
      m_DieselSpeed: "", //柴油机转速
      m_ShowMotorStdPicker: false, //转速等级选择弹框
@@ -517,13 +563,13 @@
      m_CalcViscosityUnit: "cSt",
      m_ToleranceStandardPicker: false, //校验标准容差选择弹框显/隐
      m_ToleranceStandardIndex:0,//当前选择的容差标准索引
      m_ToleranceStandardIndex: 0, //当前选择的容差标准索引
      m_ToleranceStandardValue: "", //验收容差标准
      m_ToleranceStandardShowValue: "", //介质名称
      m_ToleranceStandardColumns: [],
      m_ToleranceLevelPicker: false, //校验标准容差选择弹框显/隐
      m_ToleranceLevelIndex:0,//当前选择的容差等级索引
      m_ToleranceLevelIndex: 0, //当前选择的容差等级索引
      m_ToleranceLevelValue: "", //验收容差标准
      m_ToleranceLevelShowValue: "", //介质名称
      m_ToleranceLevelColumns: [],
@@ -540,11 +586,10 @@
    };
  },
  mounted() {
    this.m_Title =  this.getSoftName();
    this.m_Title = this.getSoftName();
    // console.log(this.$i18n.locale,554)
    this.translateParamsToLang()
    this.translateParamsToLang();
    this.getParaPageInfo();
    this.m_DpQuText = UnitHelper.GetUnitNameQ(
      this.$globalConfig.UnitDefault.UnitQ.value
@@ -559,9 +604,9 @@
  methods: {
    getParaPageInfo() {
      let _this = this;
      let Toast = _this.$toast
      let Toast = _this.$toast;
      Toast.loading({
        message: 'loading...',
        message: "loading...",
        forbidClick: true,
      });
      _this
@@ -569,23 +614,23 @@
          url:
            _this.$globalConfig.WebApiUrl.MainUrl +
            "/v1/Mobile/SelectByParas/GetParaPageInfo",
            params:{
              Lang:_this.getCurrentLanguageType()
            }
          params: {
            Lang: _this.getCurrentLanguageType(),
          },
        })
        .then((res) => {
          Toast.clear()
          Toast.clear();
          let result = res.data;
           console.log(res,575)
          // console.log(res, 575);
          if (result.Code != 0) {
            Toast.fail(result.Message)
            Toast.fail(result.Message);
            return;
          }
          if (result.Data.DriveTypeList) {
            _this.m_DeviceTpyeValue = result.Data.DriveTypeList[0].Value;
            _this.m_DeviceTpyeShowValue = result.Data.DriveTypeList[0].Text;
            console.log(_this.m_DeviceTpyeValue,_this.m_DeviceTpyeShowValue )
            // console.log(_this.m_DeviceTpyeValue, _this.m_DeviceTpyeShowValue);
            //获取驱动类型
            let deviceTpyeColumns = [];
            result.Data.DriveTypeList.forEach((element) => {
@@ -601,7 +646,8 @@
          if (result.Data.FireTypeList) {
            //获取消防泵类型
            _this.m_FireTypeValue = _this.$globalConfig.FireTypeDefault.value;
            _this.m_FireTypeShowValue = _this.$globalConfig.FireTypeDefault.text;
            _this.m_FireTypeShowValue =
              _this.$globalConfig.FireTypeDefault.text;
            let fireTypeColumns = [];
            result.Data.FireTypeList.forEach((element) => {
              let columns = {
@@ -609,8 +655,8 @@
                value: element.Value,
                disable: !element.Enable,
              };
              if(element.Value == _this.m_FireTypeValue){
                _this.m_FireTypeShowValue = element.Text
              if (element.Value == _this.m_FireTypeValue) {
                _this.m_FireTypeShowValue = element.Text;
              }
              fireTypeColumns.push(columns);
            });
@@ -635,21 +681,71 @@
          _this.getToleranceDefaultValue();
          _this.buildToleranceRangData();
          //console.log(res, 344);
        })
        .catch((err) => {
          console.log(err);
        });
    },
    translateParamsToLang(){
      let currentLang = this.$i18n.locale
      if(currentLang == 'en'){
        this.m_JieZhiNameColumns[0].text = `${this.$t('selectPage.cleanWater.TR')}`
        this.m_JieZhiNameShowValue = this.m_JieZhiNameColumns[0].text
    //获取品牌数据
    getBrandData() {
      this.m_ShowBrandPicker = true;
      console.log(this.isInitBrandData,987)
      if(this.isInitBrandData)return
      this.getBrandList();
    },
        this.m_MotorPoleColumns[0].text = `${this.$t('selectPage.unlimited.TR')}`
        this.m_MotorPoleShowValue = this.m_MotorPoleColumns[0].text
    //获取品牌列表
    getBrandList() {
      let _this = this;
      _this
        .$axios({
          methods: "get",
          url: _this.$globalConfig.WebApiUrl.MainUrl + "v1/Web/Corp/GetList",
          params: {
            lang: _this.getCurrentLanguageType(),
          },
        })
        .then(function (res) {
          _this.isInitBrandData = true
          //  console.log(res,"类型列表");
          let result = res.data;
          if (result.Code != 0) {
            return;
          }
          if (result.Data) {
            // console.log(result.Data, 158);
            let brandList = [];
            result.Data.forEach((element) => {
              let brandNode = {
                Description: element.Description,
                FullName: element.FullName,
                ID: element.ID,
                LogoPath:
                  _this.$globalConfig.WebApiUrl.FileUrl + element.LogoPath,
                ShortName: element.ShortName,
                IsSelect: false,
              };
              brandList.push(brandNode);
            });
            _this.m_BrandColumns = brandList;
          }
        })
        .catch(function (err) {
          console.log(err);
        });
    },
    translateParamsToLang() {
      let currentLang = this.$i18n.locale;
      if (currentLang == "en") {
        this.m_JieZhiNameColumns[0].text = `${this.$t(
          "selectPage.cleanWater.TR"
        )}`;
        this.m_JieZhiNameShowValue = this.m_JieZhiNameColumns[0].text;
        this.m_MotorPoleColumns[0].text = `${this.$t(
          "selectPage.unlimited.TR"
        )}`;
        this.m_MotorPoleShowValue = this.m_MotorPoleColumns[0].text;
      }
    },
    //获取上次填写表单的记录
@@ -675,16 +771,25 @@
        prvePathDataObj.DesignInfo.UnitQ
      );
      this.m_ToleranceStandardValue = prvePathDataObj.DesignInfo.ToleranceStandard //容差标准
      this.m_ToleranceLevelValue = prvePathDataObj.DesignInfo.PointTolerance.ToleranceGrade //容差等级
      if(this.m_ToleranceLevelValue == 0){
          this.isToleranceLevelCustom = true
      this.m_ToleranceStandardValue =
        prvePathDataObj.DesignInfo.ToleranceStandard; //容差标准
      this.m_ToleranceLevelValue =
        prvePathDataObj.DesignInfo.PointTolerance.ToleranceGrade; //容差等级
      if (this.m_ToleranceLevelValue == 0) {
        this.isToleranceLevelCustom = true;
      }
      this.m_MinFlowPerecent =  parseFloat(prvePathDataObj.DesignInfo.PointTolerance.RatioMinQ * 100).toFixed(1); //最小流量百分比
      this.m_MaxFlowPerecent =  parseFloat(prvePathDataObj.DesignInfo.PointTolerance.RatioMaxQ * 100).toFixed(1); //最大流量百分比
      this.m_MinHeadPerecent =  parseFloat(prvePathDataObj.DesignInfo.PointTolerance.RatioMinH * 100).toFixed(1); //最小扬程百分比
      this.m_MaxHeadPerecent =  parseFloat(prvePathDataObj.DesignInfo.PointTolerance.RatioMaxH * 100).toFixed(1); //最大扬程百分比
      this.m_MinFlowPerecent = parseFloat(
        prvePathDataObj.DesignInfo.PointTolerance.RatioMinQ * 100
      ).toFixed(1); //最小流量百分比
      this.m_MaxFlowPerecent = parseFloat(
        prvePathDataObj.DesignInfo.PointTolerance.RatioMaxQ * 100
      ).toFixed(1); //最大流量百分比
      this.m_MinHeadPerecent = parseFloat(
        prvePathDataObj.DesignInfo.PointTolerance.RatioMinH * 100
      ).toFixed(1); //最小扬程百分比
      this.m_MaxHeadPerecent = parseFloat(
        prvePathDataObj.DesignInfo.PointTolerance.RatioMaxH * 100
      ).toFixed(1); //最大扬程百分比
      this.m_PinLvValue = prvePathDataObj.FilterInfo.MotorFrequence; //电机频率
      this.m_PinLvShowValue = prvePathDataObj.FilterInfo.MotorFrequence; //电机频率显示文字
@@ -703,19 +808,23 @@
      let currentLangType = this.getCurrentLanguageUrl();
      let defauleValueObj = this.pointToleranceConfig.DefaultValue;
      let currentDefauleValue = {
        Standard:"",
        ToleranceGrade:""
        Standard: "",
        ToleranceGrade: "",
      };
      // console.log(this.m_ToleranceStandardValue,this.m_ToleranceLevelValue,689)
      if(this.m_ToleranceStandardValue == "" || this.m_ToleranceStandardValue == undefined || this.m_ToleranceStandardValue == null){
      if (
        this.m_ToleranceStandardValue == "" ||
        this.m_ToleranceStandardValue == undefined ||
        this.m_ToleranceStandardValue == null
      ) {
        Object.keys(defauleValueObj).forEach((item) => {
          if (item == currentLangType) {
            currentDefauleValue = defauleValueObj[item];
          }
        });
      } else {
        currentDefauleValue.Standard = this.m_ToleranceStandardValue
        currentDefauleValue.ToleranceGrade = this.m_ToleranceLevelValue
        currentDefauleValue.Standard = this.m_ToleranceStandardValue;
        currentDefauleValue.ToleranceGrade = this.m_ToleranceLevelValue;
      }
      let selectList = this.pointToleranceConfig.Standard4PumpSelectList;
@@ -727,8 +836,13 @@
          if (grade.Value == currentDefauleValue.ToleranceGrade) {
            this.m_ToleranceLevelShowValue = grade.Name;
          }
          if (grade.Value != currentDefauleValue.ToleranceGrade && currentDefauleValue.ToleranceGrade == 0) {
            this.m_ToleranceLevelShowValue = `${this.$t('selectPage.custom.TR')}`;
          if (
            grade.Value != currentDefauleValue.ToleranceGrade &&
            currentDefauleValue.ToleranceGrade == 0
          ) {
            this.m_ToleranceLevelShowValue = `${this.$t(
              "selectPage.custom.TR"
            )}`;
          }
        });
      });
@@ -741,9 +855,9 @@
      let ToleranceStandardColumns = [];
      let ToleranceLevelColumns = [];
      let SelectList = this.pointToleranceConfig.Standard4PumpSelectList;
      SelectList.forEach((item,index) => {
        if(item.Value == this.m_ToleranceStandardValue){
            this.m_ToleranceStandardIndex = index
      SelectList.forEach((item, index) => {
        if (item.Value == this.m_ToleranceStandardValue) {
          this.m_ToleranceStandardIndex = index;
        }
        let standColumn = {
          text: "",
@@ -754,12 +868,12 @@
        standColumn.value = item.Value;
        ToleranceStandardColumns.push(standColumn);
        item.ToleranceGrade.forEach((grade,gradeIndex) => {
        item.ToleranceGrade.forEach((grade, gradeIndex) => {
          if (
            item.Value == this.m_ToleranceStandardValue &&
            grade.Value == this.m_ToleranceLevelValue
          ) {
            this.m_ToleranceLevelIndex = gradeIndex
            this.m_ToleranceLevelIndex = gradeIndex;
            this.m_MinFlowPerecent = parseFloat(
              grade.Tol.RatioMinQ * 100
            ).toFixed(1); //最小流量百分比
@@ -786,12 +900,12 @@
        });
      });
      ToleranceLevelColumns.push({
        text: `${this.$t('selectPage.custom.TR')}`,
        text: `${this.$t("selectPage.custom.TR")}`,
        value: 0,
        disable: false,
      });
      if(this.m_ToleranceStandardValue == 0){
          this.m_ToleranceLevelIndex = ToleranceLevelColumns.length - 1
      if (this.m_ToleranceStandardValue == 0) {
        this.m_ToleranceLevelIndex = ToleranceLevelColumns.length - 1;
      }
      this.m_ToleranceStandardColumns = ToleranceStandardColumns;
      this.m_ToleranceLevelColumns = ToleranceLevelColumns;
@@ -852,6 +966,51 @@
      this.m_MotorPoleValue = e.value;
      this.m_MotorPoleShowValue = e.text;
    },
    onChangeBrandSelectAll(){
      this.brandSelectAll = !this.brandSelectAll
      let currentBrandSelectArr= []
      let currentBrandSelectName = []
      this.m_BrandColumns.forEach(item=>{
        if(this.brandSelectAll){
          item.IsSelect = true
        }else {
          item.IsSelect = false
        }
        if(item.IsSelect){
         currentBrandSelectArr.push(item.ID)
         currentBrandSelectName.push(item.ShortName)
        }
      })
      this.m_BrandShowValue = currentBrandSelectName.join(',')
      this.m_BrandValue = currentBrandSelectArr
    },
    //监听品牌选择
    onChangeBrandSelect(e){
      // console.log(e,965)
      let currentBrandSelectArr= []
      let currentBrandSelectName = []
      this.m_BrandColumns.forEach(item=>{
        if(item.ID == e.ID){
          item.IsSelect = !item.IsSelect
        }
        if(item.IsSelect){
         currentBrandSelectArr.push(item.ID)
         currentBrandSelectName.push(item.ShortName)
        }
      })
      this.m_BrandShowValue = currentBrandSelectName.join(',')
      this.m_BrandValue = currentBrandSelectArr
      //判断当前是否是全选
      if(this.m_BrandValue.length != this.m_BrandColumns.length){
        this.brandSelectAll = false
      }else {
        this.brandSelectAll = true
      }
    },
    //监听电机功率标准选择
    onChangeMotorStdConfirm(e) {
      this.m_ShowMotorStdPicker = false;
@@ -865,9 +1024,9 @@
      this.m_JieZhiNameShowValue = e.text;
    },
    //监听校验容差标准的选择
    onChangeToleranceStandardConfirm(e,index) {
    onChangeToleranceStandardConfirm(e, index) {
      this.isToleranceLevelCustom = false;
      this.m_ToleranceStandardIndex = index
      this.m_ToleranceStandardIndex = index;
      this.m_ToleranceStandardPicker = false;
      this.m_ToleranceStandardValue = e.value;
      this.m_ToleranceStandardShowValue = e.text;
@@ -883,15 +1042,15 @@
      this.buildToleranceRangData();
    },
    //监听容差等级的选择
    onChangeToleranceLevelConfirm(e,index) {
    onChangeToleranceLevelConfirm(e, index) {
      this.isToleranceLevelCustom = false;
      this.m_ToleranceLevelPicker = false;
      this.m_ToleranceLevelValue = e.value;
      this.m_ToleranceLevelIndex = index
      this.m_ToleranceLevelIndex = index;
      this.m_ToleranceLevelShowValue = e.text;
      if (e.value == 0) {
        this.isToleranceLevelCustom = true;
        return
        return;
      }
      this.buildToleranceRangData();
    },
@@ -943,7 +1102,7 @@
          UnitH: this.m_DpHuValue, //扬程单位
          DpQ: this.m_DpQ, //输入的流量的值
          DpH: this.m_DpH, //输入的扬程的值
          ToleranceStandard:this.m_ToleranceStandardValue,//容差标准的值
          ToleranceStandard: this.m_ToleranceStandardValue, //容差标准的值
          // PointTolerance: {
          //   ToleranceGrade: this.m_ToleranceLevelValue,//容差等级的值
          //   RatioMinQ: this.m_MinFlowPerecent / 100,
@@ -951,7 +1110,7 @@
          //   RatioMinH: this.m_MinHeadPerecent / 100,
          //   RatioMaxH: this.m_MaxHeadPerecent / 100,
          // },
          PointTolerance:"",
          PointTolerance: "",
          IsVisCorrect: false, //是否修正粘度 默认false
        },
      };
@@ -968,11 +1127,11 @@
        //select 表示vuex的文件名
        filterData: groupPageData,
      });
        this.gotoPage("/Select/PumpCategory","",null)
      this.gotoPage("/Select/PumpCategory", "", null);
    },
    //返回上一页
    pageBack() {
        this.gotoPage("/Index","",null)
      this.gotoPage("/Index", "", null);
    },
  },
};
@@ -1008,6 +1167,39 @@
    }
    .van-field__control {
      text-indent: 5.5em;
      text-overflow: ellipsis;
    }
    .brand-content {
      height: 50vh;
      padding: 0px 5px;
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-content: flex-start;
    }
    .brand-item {
      display: flex;
      flex-direction: column;
      width: 120px;
      height: 32px;
      justify-content: center;
      align-items: center;
      background-color: #f1f2f3;
      border-radius: 20px;
      margin-bottom: 10px;
      margin-right: 5px;
      box-sizing: border-box;
        span{
          font-size: 12px;
        }
    }
    .brand-item-active{
      border: 1px solid #578ebe;
      background-color: #ecf5ff;
      span{
        font-size: 12px;
        color:#578ebe
      }
    }
  }
}
src/views/Select/SelSeries.vue
@@ -9,7 +9,7 @@
        </div>
      </template>
      <template #title>
        <label>{{$t("selectPage.seriesRange.TR")}}</label>
        <label>{{m_currentCatalogName}}</label>
      </template>
      <template #right>
        <div @click="toSelPumpList" style="display: flex; align-items: center">
@@ -20,6 +20,15 @@
    </van-nav-bar>
    <div class="selectSeriews_main">
      <van-row class="select_title_style" type="flex">
        <van-col
          span="6"
          @click="m_ShowBrandPicker = true"
        >
          <div :class="m_ShowBrandPicker?'brand-filter':''">
            <van-icon name="filter-o" />
            <span style="font-size:14px">品牌</span>
          </div>
        </van-col>
        <van-col
          v-if="m_setSeriesMethod.byCatalog.isVisible"
          class="select_btn"
@@ -57,14 +66,14 @@
        </van-col>
      </van-row>
      <!-- 按类型分类列表 -->
      <div style="height: calc(100% - 42px); overflow: auto" v-if="m_selectIndex == 1">
      <div class="select-series-continer" style="height: calc(100% - 42px); overflow: auto" v-if="m_selectIndex == 1">
          <van-cell
            v-for="(item, index) in m_VisibleSeriesList"
            clickable
            title-style="color:#808080"
            :key="item.ID"
            :label="item.CatalogName"
            @click="toggle(item.ID, index)"
            @click="toggle(index)"
          >
           <template #title>
              <span style="font-weight: 700; font-size: 16px;">{{item.Name}}</span>
@@ -80,13 +89,13 @@
                v-model="item.isCheck"
                checked-color="#528abe"
                :name="item"
                ref="checkboxes"
                @click="toggle(index)"
              />
            </template>
          </van-cell>
      </div>
      <!-- 按行业分类列表 -->
      <div style="height: calc(100% - 42px); overflow: auto" v-if="m_selectIndex == 2">
      <div clas style="height: calc(100% - 42px); overflow: auto" v-if="m_selectIndex == 2">
        <van-radio-group v-model="m_currentSelectHY">
          <van-cell-group>
            <van-cell
@@ -132,6 +141,17 @@
        </van-radio-group>
      </div>
    </div>
      <!-- 品牌 -->
    <van-action-sheet v-model:show="m_ShowBrandPicker" title="品牌选择">
      <div class="brand-content">
        <div class="brand-item" @click="onChangeBrandSelectAll" :class="brandSelectAll?'brand-item-active':''">
          <span>全部</span>
        </div>
        <div class="brand-item" @click="onChangeBrandSelect(brand_item)" :class="brand_item.isSelect?'brand-item-active':''" v-for="(brand_item,brand_index) in m_allBrandList" :key="brand_index">
          <span>{{brand_item.name}}</span>
        </div>
      </div>
    </van-action-sheet>
    <transition name="van-slide-left">
      <div class="poptips" v-show="showPopover">{{$t('selectPage.seriesRangTips.TR')}}</div>
    </transition>
@@ -151,6 +171,7 @@
      m_userID:0,
      m_pumpCategoryID:"",//泵型ID
      m_pageTitle: "",
      m_currentCatalogName:"",//当前类型的名称
      m_SeriesList: [], //原始系列列表
      m_currentSelectHY: "", //当前选中的行业
@@ -158,7 +179,8 @@
      m_currentSelectJZ: "",
      m_allJZList: [], //所有介质列表
      m_allBrandList:[],//当前所有品牌
      brandSelectAll:false,//是否选择所有品牌
      m_VisibleSeriesList: [], //用于页面展示的系列列表
      m_prevPageData: {}, //上个页面传入的数据
@@ -166,7 +188,7 @@
      m_SelectSeriesID: [], //储存选择的系列的id
      m_pinlv: "", //电机频率
      m_SelectAllList: false,
      m_ShowBrandPicker:false,//显示品牌选择弹框
      m_setSeriesMethod: {
        byCatalog: {
          isDisable: true,
@@ -185,25 +207,23 @@
    };
  },
  mounted() {
    let _this = this;
    let _this = this;
    let userType = this.$store.state.instante.account.UserType;
    let userID = this.$store.state.instante.account.UserID;
    this.m_userType = userType;
    this.m_userID = userID;
    this.m_pageTitle =  this.getSoftName();
    document.title = this.m_pageTitle
    this.m_currentCatalogName = this.$route.query.catalogName
    let prvePathDataObj = this.$store.state.instante.select.ByParas.filterData;
    // console.log(prvePathDataObj,198)
    if (prvePathDataObj) {
      this.m_prevPageData = prvePathDataObj;
      this.m_pinlv = prvePathDataObj.FilterInfo.MotorFrequence;
      this.m_pumpCategoryID = prvePathDataObj.FilterInfo.CatalogID
      if (prvePathDataObj.FilterInfo.SeriesID) {
        //console.log(prvePathDataObj.FilterInfo.SeriesID,104)
        this.m_SelectSeriesID = prvePathDataObj.FilterInfo.SeriesID.split(
          ","
        ).map(Number);
        this.m_SelectSeriesID = prvePathDataObj.FilterInfo.SeriesID.split(",");
      }
    }
    if (this.m_SelectSeriesID.length == 0) {
@@ -249,7 +269,7 @@
            }
        }) 
        .then(res => {
          // console.log(res);
           console.log(res);
          let result = res.data;
          if (result.Code != 0) {
            myToast.clear();
@@ -262,13 +282,19 @@
          }
          if (result.Data) {
            myToast.clear();
            _this.m_setSeriesMethod.byCatalog.isVisible = true;
            let brandList = []
            let seriesList = result.Data;
            seriesList.forEach(element => {
              element.isCheck = false;
            let brandObj = {
              name:element.CorpName,
              isSelect:false
            }
             brandList.push(brandObj)
            });
            _this.m_SeriesList = seriesList;
            _this.m_allBrandList = _this.uniqueCorpList(brandList)
            // console.log(_this.m_allBrandList,287)
            if (_this.m_SelectSeriesID) {
              _this.m_SelectSeriesID.forEach(item => {
                _this.m_SeriesList.forEach(seriesItem => {
@@ -350,18 +376,15 @@
      // console.log(this.m_VisibleSeriesList,186)
    },
    //按类型多选 checkbox 选择状态切换
    toggle(ID, index) {
      this.m_VisibleSeriesList[index].isCheck = !this.m_VisibleSeriesList[index]
        .isCheck;
    toggle(index) {
      this.m_VisibleSeriesList[index].isCheck = !this.m_VisibleSeriesList[index].isCheck;
      let ser_id = [];
      this.m_VisibleSeriesList.forEach(ser_item => {
        if (ser_item.isCheck) {
          ser_id.push(ser_item.ID);
        }
      });
      if (ser_id.length > 0) this.m_SelectSeriesID = ser_id;
      // console.log(this.m_SelectSeriesID, 239);
      this.m_SelectSeriesID = ser_id;
    },
    //按行业选择
    clickHYItem(item) {
@@ -498,7 +521,7 @@
          IsVisCorrect: this.m_prevPageData.DesignInfo.IsVisCorrect //是否修正粘度 默认false
        }
      };
      console.log(groupPageData,497)
      //将筛选数据存储到vuex中
      this.$store.commit("instante/select/ByParas", {
        //select 表示vuex的文件名
@@ -507,6 +530,63 @@
    this.gotoPage("/Select/PumpList", "", null);
      //console.log(groupPageData);
      //console.log(this.m_SelectSeriesID);
    },
    // 全选
    onChangeBrandSelectAll(){
      this.brandSelectAll = !this.brandSelectAll
      let currentBrandSelectArr= []
      let currentBrandSelectName = []
      this.m_BrandColumns.forEach(item=>{
        if(this.brandSelectAll){
          item.IsSelect = true
        }else {
          item.IsSelect = false
        }
        if(item.IsSelect){
         currentBrandSelectArr.push(item.ID)
         currentBrandSelectName.push(item.ShortName)
        }
      })
      this.m_BrandShowValue = currentBrandSelectName.join(',')
      this.m_BrandValue = currentBrandSelectArr
    },
    //监听品牌选择
    onChangeBrandSelect(e){
       console.log(e,965)
      let showSeriesList = [];
      this.m_allBrandList.forEach(item=>{
        if(item.name == e.name){
          item.isSelect = !item.isSelect
        }
        if(item.IsSelect){
          this.m_SeriesList.forEach(series_item=>{
            if(item.name = series_item.CorpName){
              showSeriesList.push(series_item)
            }
          })
        }
      })
      this.m_VisibleSeriesList = showSeriesList
      //判断当前是否是全选
      // if(this.m_BrandValue.length != this.m_BrandColumns.length){
      //   this.brandSelectAll = false
      // }else {
      //   this.brandSelectAll = true
      // }
    },
    //公司筛选列表去重
    uniqueCorpList (arr) {
    let map = new Map();
    for (let item of arr) {
        if (!map.has(item.name)) {
            map.set(item.name, item);
        }
    }
    return [...map.values()];
    }
  }
};
@@ -584,7 +664,51 @@
        color: #fff;
      }
    }
    .select-series-continer{
      .van-tag{
          position: absolute;
          top: 3px;
          right: 15px;
      }
    }
  }
  .brand-filter{
    i,span{
      color: #578ebe;
    }
  }
    .brand-content {
      height: 50vh;
      padding: 0px 5px;
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-content: flex-start;
    }
    .brand-item {
      display: flex;
      flex-direction: column;
      width: 120px;
      height: 32px;
      justify-content: center;
      align-items: center;
      background-color: #f1f2f3;
      border-radius: 20px;
      margin-bottom: 10px;
      margin-right: 5px;
      box-sizing: border-box;
        span{
          font-size: 12px;
        }
    }
    .brand-item-active{
      border: 1px solid #578ebe;
      background-color: #ecf5ff;
      span{
        font-size: 12px;
        color:#578ebe
      }
    }
  .poptips {
    // width: 135px;
    height: 18px;