|  | @@ -20,7 +20,7 @@
 | 
	
		
			
				|  |  |              clearable
 | 
	
		
			
				|  |  |              placeholder="分部名称/编号/地址"
 | 
	
		
			
				|  |  |              @keyup.enter.native="
 | 
	
		
			
				|  |  | -              (e) => {
 | 
	
		
			
				|  |  | +              e => {
 | 
	
		
			
				|  |  |                  e.target.blur();
 | 
	
		
			
				|  |  |                  $refs.searchForm.save();
 | 
	
		
			
				|  |  |                  search();
 | 
	
	
		
			
				|  | @@ -197,7 +197,7 @@
 | 
	
		
			
				|  |  |              type="date"
 | 
	
		
			
				|  |  |              value-format="yyyy-MM-dd"
 | 
	
		
			
				|  |  |              :picker-options="{
 | 
	
		
			
				|  |  | -              firstDayOfWeek: 1,
 | 
	
		
			
				|  |  | +              firstDayOfWeek: 1
 | 
	
		
			
				|  |  |              }"
 | 
	
		
			
				|  |  |              placeholder="选择成立时间"
 | 
	
		
			
				|  |  |            ></el-date-picker>
 | 
	
	
		
			
				|  | @@ -212,10 +212,38 @@
 | 
	
		
			
				|  |  |              placeholder="请输入乐器分润上限"
 | 
	
		
			
				|  |  |              autocomplete="off"
 | 
	
		
			
				|  |  |            >
 | 
	
		
			
				|  |  | -          <template slot="append">元</template>
 | 
	
		
			
				|  |  | +            <template slot="append"
 | 
	
		
			
				|  |  | +              >元</template
 | 
	
		
			
				|  |  | +            >
 | 
	
		
			
				|  |  |            </el-input>
 | 
	
		
			
				|  |  |          </el-form-item>
 | 
	
		
			
				|  |  |          <el-form-item
 | 
	
		
			
				|  |  | +          label="可用教材"
 | 
	
		
			
				|  |  | +          prop="teachingMaterialId"
 | 
	
		
			
				|  |  | +          :label-width="formLabelWidth"
 | 
	
		
			
				|  |  | +        >
 | 
	
		
			
				|  |  | +          <el-cascader
 | 
	
		
			
				|  |  | +            v-model.trim="form.teachingMaterialId"
 | 
	
		
			
				|  |  | +            style="width: 100% !important"
 | 
	
		
			
				|  |  | +            :options="teachList"
 | 
	
		
			
				|  |  | +            :props="{ multiple: true }"
 | 
	
		
			
				|  |  | +            :show-all-levels="false"
 | 
	
		
			
				|  |  | +            collapse-tags
 | 
	
		
			
				|  |  | +            ref="cascader"
 | 
	
		
			
				|  |  | +            clearable
 | 
	
		
			
				|  |  | +          ></el-cascader>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +          <el-tag
 | 
	
		
			
				|  |  | +            :key="tag.id"
 | 
	
		
			
				|  |  | +            v-show="isDisabled"
 | 
	
		
			
				|  |  | +            v-for="tag in dynamicTags"
 | 
	
		
			
				|  |  | +            :disable-transitions="false"
 | 
	
		
			
				|  |  | +            @close="handleClose(tag)"
 | 
	
		
			
				|  |  | +          >
 | 
	
		
			
				|  |  | +            {{ tag.name }}
 | 
	
		
			
				|  |  | +          </el-tag>
 | 
	
		
			
				|  |  | +        </el-form-item>
 | 
	
		
			
				|  |  | +        <el-form-item
 | 
	
		
			
				|  |  |            label="公司名称"
 | 
	
		
			
				|  |  |            prop="corporateName"
 | 
	
		
			
				|  |  |            :label-width="formLabelWidth"
 | 
	
	
		
			
				|  | @@ -270,7 +298,7 @@
 | 
	
		
			
				|  |  |                  autoCropHeight: 300, //默认生成截图框高度
 | 
	
		
			
				|  |  |                  fixedBox: true, //是否固定截图框大小 不允许改变
 | 
	
		
			
				|  |  |                  previewsCircle: false, //预览图是否是圆形
 | 
	
		
			
				|  |  | -                title: '上传企业公章', //模态框上显示的标题
 | 
	
		
			
				|  |  | +                title: '上传企业公章' //模态框上显示的标题
 | 
	
		
			
				|  |  |                }"
 | 
	
		
			
				|  |  |                isDelete
 | 
	
		
			
				|  |  |                :imgSize="5"
 | 
	
	
		
			
				|  | @@ -318,7 +346,7 @@
 | 
	
		
			
				|  |  |                  autoCropHeight: 300, //默认生成截图框高度
 | 
	
		
			
				|  |  |                  fixedBox: true, //是否固定截图框大小 不允许改变
 | 
	
		
			
				|  |  |                  previewsCircle: false, //预览图是否是圆形
 | 
	
		
			
				|  |  | -                title: '上传企业财务公章', //模态框上显示的标题
 | 
	
		
			
				|  |  | +                title: '上传企业财务公章' //模态框上显示的标题
 | 
	
		
			
				|  |  |                }"
 | 
	
		
			
				|  |  |                isDelete
 | 
	
		
			
				|  |  |                :imgSize="5"
 | 
	
	
		
			
				|  | @@ -430,18 +458,19 @@ import {
 | 
	
		
			
				|  |  |    areaQueryChild,
 | 
	
		
			
				|  |  |    branchAdd,
 | 
	
		
			
				|  |  |    branchUpdate,
 | 
	
		
			
				|  |  | -  getParentArea,
 | 
	
		
			
				|  |  | +  getParentArea
 | 
	
		
			
				|  |  |  } from "@/api/specialSetting";
 | 
	
		
			
				|  |  |  import { vaildStudentUrl } from "@/utils/validate";
 | 
	
		
			
				|  |  |  import { queryEmployByOrganId } from "@/api/systemManage";
 | 
	
		
			
				|  |  |  import ImageCropper from "@/components/ImageCropper";
 | 
	
		
			
				|  |  | +import { queryTree } from "../../accompaniment/api";
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  |    name: "branchSetting",
 | 
	
		
			
				|  |  |    components: { pagination, qrCode, ImageCropper },
 | 
	
		
			
				|  |  |    data() {
 | 
	
		
			
				|  |  |      return {
 | 
	
		
			
				|  |  |        headers: {
 | 
	
		
			
				|  |  | -        Authorization: getToken(),
 | 
	
		
			
				|  |  | +        Authorization: getToken()
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        tableList: [],
 | 
	
		
			
				|  |  |        pageInfo: {
 | 
	
	
		
			
				|  | @@ -449,19 +478,20 @@ export default {
 | 
	
		
			
				|  |  |          limit: 10, // 限制显示条数
 | 
	
		
			
				|  |  |          page: 1, // 当前页
 | 
	
		
			
				|  |  |          total: 0, // 总条数
 | 
	
		
			
				|  |  | -        page_size: [10, 20, 40, 50], // 选择限制显示条数
 | 
	
		
			
				|  |  | +        page_size: [10, 20, 40, 50] // 选择限制显示条数
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        organId: null,
 | 
	
		
			
				|  |  |        formActionTitle: "create",
 | 
	
		
			
				|  |  |        formTitle: {
 | 
	
		
			
				|  |  |          create: "添加分部",
 | 
	
		
			
				|  |  | -        update: "修改分部",
 | 
	
		
			
				|  |  | +        update: "修改分部"
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        formLabelWidth: "120px",
 | 
	
		
			
				|  |  |        branchStatus: false,
 | 
	
		
			
				|  |  |        provinceList: [], // 省列表
 | 
	
		
			
				|  |  |        cityList: [], // 市列表
 | 
	
		
			
				|  |  |        employeeList: [], // 分部下的员工集合
 | 
	
		
			
				|  |  | +      teachList: [], // 可用教材列表
 | 
	
		
			
				|  |  |        form: {
 | 
	
		
			
				|  |  |          name: null,
 | 
	
		
			
				|  |  |          province: null,
 | 
	
	
		
			
				|  | @@ -477,43 +507,72 @@ export default {
 | 
	
		
			
				|  |  |          corporateCode: null,
 | 
	
		
			
				|  |  |          corporateSeal: null,
 | 
	
		
			
				|  |  |          corporateFinancialSeal: null,
 | 
	
		
			
				|  |  | -        maxMusicalInstrumentsProfits:null
 | 
	
		
			
				|  |  | +        maxMusicalInstrumentsProfits: null,
 | 
	
		
			
				|  |  | +        teachingMaterialId: []
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        rules: {
 | 
	
		
			
				|  |  |          name: [{ required: true, message: "请输入分部名称", trigger: "blur" }],
 | 
	
		
			
				|  |  |          province: [{ required: true, message: "请选择省", trigger: "change" }],
 | 
	
		
			
				|  |  |          city: [{ required: true, message: "请选择市", trigger: "change" }],
 | 
	
		
			
				|  |  |          address: [
 | 
	
		
			
				|  |  | -          { required: true, message: "请输入分部地址", trigger: "blur" },
 | 
	
		
			
				|  |  | +          { required: true, message: "请输入分部地址", trigger: "blur" }
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  |          registerDate: [
 | 
	
		
			
				|  |  | -          { required: true, message: "请选择成立时间", trigger: "change" },
 | 
	
		
			
				|  |  | +          { required: true, message: "请选择成立时间", trigger: "change" }
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  |          gradeType: [
 | 
	
		
			
				|  |  | -          { required: true, message: "请选择学年制", trigger: "change" },
 | 
	
		
			
				|  |  | +          { required: true, message: "请选择学年制", trigger: "change" }
 | 
	
		
			
				|  |  |          ],
 | 
	
		
			
				|  |  |          maxMusicalInstrumentsProfits: [
 | 
	
		
			
				|  |  |            { required: true, message: "请输入乐器分润上线", trigger: "change" },
 | 
	
		
			
				|  |  |            {
 | 
	
		
			
				|  |  | -            pattern:
 | 
	
		
			
				|  |  | -              /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/,
 | 
	
		
			
				|  |  | -            message: "请输入正确的金额",
 | 
	
		
			
				|  |  | -          },
 | 
	
		
			
				|  |  | -        ],
 | 
	
		
			
				|  |  | +            pattern: /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/,
 | 
	
		
			
				|  |  | +            message: "请输入正确的金额"
 | 
	
		
			
				|  |  | +          }
 | 
	
		
			
				|  |  | +        ]
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  |        codeStatus: false,
 | 
	
		
			
				|  |  |        qrCodeUrl: null,
 | 
	
		
			
				|  |  |        codeTitle: "注册二维码",
 | 
	
		
			
				|  |  |        searchForm: {
 | 
	
		
			
				|  |  | -        search: "",
 | 
	
		
			
				|  |  | -      },
 | 
	
		
			
				|  |  | +        search: ""
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  |      };
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    mounted() {
 | 
	
		
			
				|  |  | +    this.__init();
 | 
	
		
			
				|  |  |      this.getList();
 | 
	
		
			
				|  |  |      this.getAreaList();
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    methods: {
 | 
	
		
			
				|  |  | +    async __init() {
 | 
	
		
			
				|  |  | +      try {
 | 
	
		
			
				|  |  | +        // 不管是添加、查看、修改都传-1
 | 
	
		
			
				|  |  | +        const tenantId = -1;
 | 
	
		
			
				|  |  | +        const res = await queryTree({ enable: 1, tenantId });
 | 
	
		
			
				|  |  | +        const rows = res.data || [];
 | 
	
		
			
				|  |  | +        rows.forEach(item => {
 | 
	
		
			
				|  |  | +          let children = [];
 | 
	
		
			
				|  |  | +          item.label = item.name;
 | 
	
		
			
				|  |  | +          item.value = item.id;
 | 
	
		
			
				|  |  | +          let childList = item.sysMusicScoreCategoriesList
 | 
	
		
			
				|  |  | +            ? item.sysMusicScoreCategoriesList
 | 
	
		
			
				|  |  | +            : [];
 | 
	
		
			
				|  |  | +          if (childList.length > 0) {
 | 
	
		
			
				|  |  | +            childList.forEach(child => {
 | 
	
		
			
				|  |  | +              child.label = child.name;
 | 
	
		
			
				|  |  | +              child.value = child.id;
 | 
	
		
			
				|  |  | +              child.sysMusicScoreCategoriesList = [];
 | 
	
		
			
				|  |  | +              children.push(child);
 | 
	
		
			
				|  |  | +            });
 | 
	
		
			
				|  |  | +          }
 | 
	
		
			
				|  |  | +          item.children = children.length > 0 ? children : null;
 | 
	
		
			
				|  |  | +          this.teachList.push(item);
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  | +      } catch (e) {
 | 
	
		
			
				|  |  | +        console.log(e);
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  |      cropSuccess1(data) {
 | 
	
		
			
				|  |  |        this.form.corporateSeal = data.data.url;
 | 
	
		
			
				|  |  |      },
 | 
	
	
		
			
				|  | @@ -530,7 +589,7 @@ export default {
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      beforeAvatarUpload(file) {
 | 
	
		
			
				|  |  |        const imageType = {
 | 
	
		
			
				|  |  | -        "image/png": true,
 | 
	
		
			
				|  |  | +        "image/png": true
 | 
	
		
			
				|  |  |        };
 | 
	
		
			
				|  |  |        const isImage = imageType[file.type];
 | 
	
		
			
				|  |  |        const isLt2M = file.size / 1024 / 1024 < 5;
 | 
	
	
		
			
				|  | @@ -551,7 +610,7 @@ export default {
 | 
	
		
			
				|  |  |        this.form.corporateFinancialSeal = res.data.url;
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      onBranchSubmit(formName) {
 | 
	
		
			
				|  |  | -      this.$refs[formName].validate((valid) => {
 | 
	
		
			
				|  |  | +      this.$refs[formName].validate(valid => {
 | 
	
		
			
				|  |  |          if (!valid) return;
 | 
	
		
			
				|  |  |          this.form.areaId = this.form.city;
 | 
	
		
			
				|  |  |          let obj = {
 | 
	
	
		
			
				|  | @@ -560,6 +619,7 @@ export default {
 | 
	
		
			
				|  |  |            educationId: this.form.educationId.join(","),
 | 
	
		
			
				|  |  |            repairId: this.form.repairId.join(","),
 | 
	
		
			
				|  |  |            joinTeacherId: this.form.joinTeacherId.join(","),
 | 
	
		
			
				|  |  | +          teachingMaterialId: this.form.teachingMaterialId.join(",")
 | 
	
		
			
				|  |  |          };
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          if (this.formActionTitle == "create") {
 | 
	
	
		
			
				|  | @@ -567,11 +627,11 @@ export default {
 | 
	
		
			
				|  |  |              // 判断有没有Id,如果有则删除
 | 
	
		
			
				|  |  |              delete obj.id;
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  | -          branchAdd(obj).then((res) => {
 | 
	
		
			
				|  |  | +          branchAdd(obj).then(res => {
 | 
	
		
			
				|  |  |              this.messageTips("添加", res);
 | 
	
		
			
				|  |  |            });
 | 
	
		
			
				|  |  |          } else if (this.formActionTitle == "update") {
 | 
	
		
			
				|  |  | -          branchUpdate(obj).then((res) => {
 | 
	
		
			
				|  |  | +          branchUpdate(obj).then(res => {
 | 
	
		
			
				|  |  |              this.messageTips("修改", res);
 | 
	
		
			
				|  |  |            });
 | 
	
		
			
				|  |  |          }
 | 
	
	
		
			
				|  | @@ -590,8 +650,8 @@ export default {
 | 
	
		
			
				|  |  |        branchQueryPage({
 | 
	
		
			
				|  |  |          rows: this.pageInfo.limit,
 | 
	
		
			
				|  |  |          page: this.pageInfo.page,
 | 
	
		
			
				|  |  | -        ...this.searchForm,
 | 
	
		
			
				|  |  | -      }).then((res) => {
 | 
	
		
			
				|  |  | +        ...this.searchForm
 | 
	
		
			
				|  |  | +      }).then(res => {
 | 
	
		
			
				|  |  |          if (res.code == 200 && res.data) {
 | 
	
		
			
				|  |  |            this.tableList = res.data.rows;
 | 
	
		
			
				|  |  |            this.pageInfo.total = res.data.total;
 | 
	
	
		
			
				|  | @@ -605,13 +665,13 @@ export default {
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      getAreaList(parentId, callback) {
 | 
	
		
			
				|  |  |        parentId = parentId ? parentId : 0;
 | 
	
		
			
				|  |  | -      areaQueryChild({ parentId: parentId }).then((res) => {
 | 
	
		
			
				|  |  | +      areaQueryChild({ parentId: parentId }).then(res => {
 | 
	
		
			
				|  |  |          if (res.code == 200 && res.data) {
 | 
	
		
			
				|  |  |            let tempData = [];
 | 
	
		
			
				|  |  | -          res.data.forEach((item) => {
 | 
	
		
			
				|  |  | +          res.data.forEach(item => {
 | 
	
		
			
				|  |  |              tempData.push({
 | 
	
		
			
				|  |  |                label: item.name,
 | 
	
		
			
				|  |  | -              value: item.id,
 | 
	
		
			
				|  |  | +              value: item.id
 | 
	
		
			
				|  |  |              });
 | 
	
		
			
				|  |  |            });
 | 
	
		
			
				|  |  |            if (parentId) {
 | 
	
	
		
			
				|  | @@ -639,7 +699,7 @@ export default {
 | 
	
		
			
				|  |  |              organId: row.id,
 | 
	
		
			
				|  |  |              rows: 9999,
 | 
	
		
			
				|  |  |              demissionflag: false,
 | 
	
		
			
				|  |  | -            lockFlag: false,
 | 
	
		
			
				|  |  | +            lockFlag: false
 | 
	
		
			
				|  |  |            });
 | 
	
		
			
				|  |  |            this.$set(this, "employeeList", res.data.rows);
 | 
	
		
			
				|  |  |          } catch (e) {
 | 
	
	
		
			
				|  | @@ -649,7 +709,7 @@ export default {
 | 
	
		
			
				|  |  |        this.formActionTitle = type;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |        if (type == "update") {
 | 
	
		
			
				|  |  | -        getParentArea({ id: row.areaId }).then((res) => {
 | 
	
		
			
				|  |  | +        getParentArea({ id: row.areaId }).then(res => {
 | 
	
		
			
				|  |  |            if (res.code == 200 && res.data) {
 | 
	
		
			
				|  |  |              this.getAreaList(res.data.id, () => {
 | 
	
		
			
				|  |  |                this.form = {
 | 
	
	
		
			
				|  | @@ -672,7 +732,7 @@ export default {
 | 
	
		
			
				|  |  |                  corporateCode: row.corporateCode,
 | 
	
		
			
				|  |  |                  corporateSeal: row.corporateSeal,
 | 
	
		
			
				|  |  |                  corporateFinancialSeal: row.corporateFinancialSeal,
 | 
	
		
			
				|  |  | -                maxMusicalInstrumentsProfits:row.maxMusicalInstrumentsProfits
 | 
	
		
			
				|  |  | +                maxMusicalInstrumentsProfits: row.maxMusicalInstrumentsProfits
 | 
	
		
			
				|  |  |                };
 | 
	
		
			
				|  |  |              });
 | 
	
		
			
				|  |  |              this.branchStatus = true;
 | 
	
	
		
			
				|  | @@ -687,8 +747,8 @@ export default {
 | 
	
		
			
				|  |  |          vaildStudentUrl() + "/project/register/index.html?organId=" + row.id;
 | 
	
		
			
				|  |  |        this.codeStatus = true;
 | 
	
		
			
				|  |  |        // qrCodeUrl:null,
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -  },
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  </script>
 | 
	
		
			
				|  |  |  <style lang="scss" scoped>
 |