fix
13404089107
2025-06-30 651e740368416b0b2b5da19e92028f7ed3c6135f
fix
16个文件已修改
183 ■■■■ 已修改文件
culture/src/views/pedigree-chart/add.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/pedigree-chart/addProgenitor.vue 66 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/pedigree-chart/index.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/breeding-record/add.vue 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/main-cell-library/index.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/production-cell-library/index.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/strain-library-manage/components/RecordDetailDialog.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/strain-library-manage/index.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/strain-library-manage/record.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/validation/chief-cell/add.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strain-library/validation/primitive-cell/add.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strainReportLibrary/reportLibraryOne/components/evaluate/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strainReportLibrary/reportLibraryOneFour/components/evaluate/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/strainReportLibrary/reportLibraryOneThree/components/evaluate/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/system/role/detail.vue 50 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/system/role/service.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
culture/src/views/pedigree-chart/add.vue
@@ -65,7 +65,8 @@
          <div id="mountNode"></div>
        </div>
        <el-button type="primary" v-if="!$route.query.id" @click="handleSubmit" style="width: 150px">保存</el-button>
        <el-button type="primary" v-if="!$route.query.id || (roleType == 1 && $route.query.id)" @click="handleSubmit"
          style="width: 150px">保存</el-button>
      </div>
      <div class="end-btn">
        <!-- <el-button @click="handleDraft">存草稿</el-button>
culture/src/views/pedigree-chart/addProgenitor.vue
@@ -1,40 +1,20 @@
<template>
  <div>
    <el-form
      :model="form"
      :rules="rules"
      ref="pedigreeForm"
      label-position="top"
      class="strain-form"
    >
    <el-form :model="form" :rules="rules" ref="pedigreeForm" label-position="top" class="strain-form">
      <div class="card">
        <div class="form-items-row">
          <el-form-item label="传代菌种编号" prop="strainCode" required>
            <el-input
              v-model="form.strainCode"
              placeholder="请输入"
              class="fixed-width-input"
            ></el-input>
            <el-input v-model="form.strainCode" placeholder="请输入" class="fixed-width-input"></el-input>
          </el-form-item>
          <el-form-item label="传代菌种名称" prop="strainName" required>
            <el-input
              v-model="form.strainName"
              placeholder="请输入"
              class="fixed-width-input"
            ></el-input>
            <el-input v-model="form.strainName" placeholder="请输入" class="fixed-width-input"></el-input>
          </el-form-item>
        </div>
      </div>
      <div class="card" style="margin-top: 30px; display: block" v-if="roleType != 4">
        <div class="title" style="padding: 25px 0">待确认入库菌种列表</div>
        <Table
          :height="null"
          :total="total"
          :data="tableData"
          :queryForm="queryForm"
          @handleCurrentChange="handleCurrentChange"
          @handleSizeChange="handleSizeChange"
        >
        <Table :height="null" :total="total" :data="tableData" :queryForm="queryForm"
          @handleCurrentChange="handleCurrentChange" @handleSizeChange="handleSizeChange">
          <el-table-column label="菌种实验员" prop="experimenter" />
          <el-table-column label="菌种编号" prop="strainCode" />
          <el-table-column label="菌种名称" prop="strainName" />
@@ -46,9 +26,7 @@
          <el-table-column label="菌种入库时间/菌种废弃时间" prop="storageTime" />
          <el-table-column label="操作" v-if="roleType == 3">
            <template #default="{ row }">
              <el-button type="text" @click="handleConfirm(row)"
                >确认入库</el-button
              >
              <el-button type="text" @click="handleConfirm(row)">确认入库</el-button>
            </template>
          </el-table-column>
        </Table>
@@ -59,11 +37,8 @@
          <div class="title">菌种传代生产谱系图</div>
          <div class="option-btn">
            <el-button type="primary" class="el-icon-plus" @click="addNode" v-if="$route.query.type != 1" >
              新增</el-button
            >
            <el-button type="primary" v-if="$route.query.type != 1" @click="setGenerationPlan"
              >设置传代计划数</el-button
            >
              新增</el-button>
            <el-button type="primary" v-if="$route.query.type != 1" @click="setGenerationPlan">设置传代计划数</el-button>
            <el-button type="primary" @click="showDetail">详情</el-button>
            <el-button type="primary" @click="handleEdit" v-if="roleType == 1">编辑</el-button>
            <el-button type="primary" @click="handleDelete" v-if="roleType == 1">删除</el-button>
@@ -73,31 +48,19 @@
        <div class="strain-flow-chart">
          <div id="mountNode"></div>
        </div>
        <el-button
          v-if="!$route.query.id"
          type="primary"
          @click="handleSubmit"
          style="width: 150px"
          >保存</el-button
        >
        <el-button v-if="!$route.query.id || (roleType == 1 && $route.query.id)" type="primary" @click="handleSubmit"
          style="width: 150px">保存</el-button>
      </div>
    </el-form>
    <AddAncestor ref="addAncestor" @addNodeSign="addNodeSign" />
    <PlanForm ref="planForm" @addNodeSign="addNodeSign" />
    <AddSublevelForm ref="addSublevelForm" @addNodeSign="addNodeSign" />
    <ConfirmStorageDialog
      name="接种操作人签字"
      :visible.sync="confirmStorageDialogVisible"
      @confirm="handleSignatureConfirm"
    />
    <ConfirmStorageDialog name="接种操作人签字" :visible.sync="confirmStorageDialogVisible"
      @confirm="handleSignatureConfirm" />
    <!-- 菌种工程师 -->
    <ConfirmStorageDialog
      name="菌种保藏人签字"
      text="是否确认该项菌种信息入库"
      :visible.sync="storageVisible"
      @confirm="handleSignatureConfirm1"
    />
    <ConfirmStorageDialog name="菌种保藏人签字" text="是否确认该项菌种信息入库" :visible.sync="storageVisible"
      @confirm="handleSignatureConfirm1" />
  </div>
</template>
@@ -1409,6 +1372,7 @@
    }
  }
}
.title {
  font-size: 18px;
}
culture/src/views/pedigree-chart/index.vue
@@ -10,12 +10,12 @@
          <el-form-item label="菌种名称:">
            <el-input v-model="form.strainName" placeholder="请输入"></el-input>
          </el-form-item>
          <!-- <el-form-item v-if="roleType != 1" label="起传类型">
          <el-form-item v-if="roleType == 4" label="起传类型">
            <el-select v-model="form.generationType" placeholder="请选择">
              <el-option label="母代" :value="1"></el-option>
              <el-option label="祖代" :value="2"></el-option>
            </el-select>
          </el-form-item> -->
          </el-form-item>
          <el-form-item label="">
            <el-button type="default" @click="resetForm">重置</el-button>
            <el-button style="margin-left: 10px;" type="primary" @click="handleSearch">查询</el-button>
@@ -42,7 +42,7 @@
      <template #table>
        <el-table-column prop="generationType" label="起传类型">
          <template slot-scope="scope">
            {{ scope.row.generationType === 1 ? '母代' : '祖代' }}
            {{ scope.row.generationType === 1 ? '母代起传' : '祖代起传' }}
          </template>
        </el-table-column>
        <el-table-column label="菌种源">
culture/src/views/strain-library/breeding-record/add.vue
@@ -82,10 +82,10 @@
            <el-form-item label="需氧类型" prop="aerobicType">
              <el-select :disabled="!!$route.query.isDetail" v-model="form.aerobicType" class="w-380"
                placeholder="请选择需氧类型">
                <el-option label="专性需氧" value="1"></el-option>
                <el-option label="专性厌氧" value="2"></el-option>
                <el-option label="兼性需氧" value="3"></el-option>
                <el-option label="耐氧厌氧" value="4"></el-option>
                <el-option label="专性需氧" :value="1"></el-option>
                <el-option label="专性厌氧" :value="2"></el-option>
                <el-option label="兼性需氧" :value="3"></el-option>
                <el-option label="耐氧厌氧" :value="4"></el-option>
              </el-select>
            </el-form-item>
          </el-col>
@@ -269,7 +269,7 @@
          v-if="($route.query.isDetail && [4, 3].includes(roleType)) || !$route.query.isDetail && [1, 3, 4].includes(roleType)">
          <el-button type="primary" v-if="[1,4].includes(roleType)" @click="handleSubmit(1)">提交</el-button>
          <el-button v-if="[1,4].includes(roleType)" type="primary" @click="handleSubmit(3)">同步给保藏人</el-button>
          <el-button v-if="!$route.query.isDetail" type="default" @click="handleSubmit(2)">存草稿</el-button>
          <el-button v-if="!$route.query.isDetail && roleType != 1" type="default" @click="handleSubmit(2)">存草稿</el-button>
        </div>
      </el-form>
    </Card>
@@ -526,7 +526,12 @@
          }
          console.log(this.form,this.form.isDraft);
          
          if (this.form.id && (this.form.isDraft == 0 || this.form.isDraft == null)) {
          if (this.form.id && (this.form.isDraft == 0 || this.form.isDraft == null || this.form.isDraft == 1)) {
            if (this.form.status != 2) {
              this.form.isDraft == 0
            }
            edit(this.form).then(res => {
              if (res.code === 200) {
                this.$message.success('编辑成功');
culture/src/views/strain-library/main-cell-library/index.vue
@@ -116,7 +116,13 @@
        <el-table-column prop="saveMethod" label="菌种保存方法" />
        <el-table-column prop="saveLocation" label="保藏位置" />
        <el-table-column prop="stock" label="库存余量" />
        <el-table-column prop="remark" label="备注" />
        <el-table-column prop="remark" label="备注" >
          <template #default="{ row }">
            <el-tooltip popper-class="custom-tooltip" :content="row.remark" style="width: 200px;" placement="top" effect="dark">
              <div class="ellipsis-text">{{ row.remark }}</div>
            </el-tooltip>
          </template>
        </el-table-column>
        <el-table-column v-if="currentType === 'list'" prop="status" label="当前状态">
          <template #default="{ row }">
            <el-tag :type="getStatusType(row.status)">{{
culture/src/views/strain-library/production-cell-library/index.vue
@@ -146,7 +146,13 @@
        <el-table-column prop="saveMethod" label="菌种保存方法" />
        <el-table-column prop="saveLocation" label="保藏位置" />
        <el-table-column prop="stock" label="库存余量" />
        <el-table-column prop="remark" label="备注" />
        <el-table-column prop="remark" label="备注" >
          <template #default="{ row }">
            <el-tooltip popper-class="custom-tooltip" :content="row.remark" style="width: 200px;" placement="top" effect="dark">
              <div class="ellipsis-text">{{ row.remark }}</div>
            </el-tooltip>
          </template>
        </el-table-column>
        <el-table-column
          v-if="currentType === 'list'"
          prop="status"
culture/src/views/strain-library/strain-library-manage/components/RecordDetailDialog.vue
@@ -23,7 +23,7 @@
                        </div>
                    </el-form-item>
                    <el-form-item v-if="formData.handleSignature" label="出库时间" required class="time-item">
                    <el-form-item v-if="formData.handleSignature" :label="`${formData.type == '1'?'出库':'入库'}时间`" required class="time-item">
                        <div class="time-value">{{ formData.boundTime }}</div>
                    </el-form-item>
                </div>
culture/src/views/strain-library/strain-library-manage/index.vue
@@ -119,7 +119,13 @@
        <el-table-column prop="saveMethod" label="菌种保存方法" />
        <el-table-column prop="saveLocation" label="保藏位置" />
        <el-table-column prop="stock" label="库存余量" />
        <el-table-column prop="remark" label="备注" />
        <el-table-column prop="remark" label="备注" >
          <template #default="{ row }">
            <el-tooltip popper-class="custom-tooltip" :content="row.remark" style="width: 200px;" placement="top" effect="dark">
              <div class="ellipsis-text">{{ row.remark }}</div>
            </el-tooltip>
          </template>
        </el-table-column>
        <el-table-column v-if="currentType === 'list'" prop="status" label="当前状态">
          <template #default="{ row }">
            <el-tag :type="getStatusType(row.status)">{{
culture/src/views/strain-library/strain-library-manage/record.vue
@@ -127,6 +127,7 @@
  addWarehousing,
  getDetailById,
  confirmWarehousing,
  deleteWarehousing
} from "./service";
export default {
culture/src/views/strain-library/validation/chief-cell/add.vue
@@ -33,7 +33,7 @@
            </div>
            <div class="end-btn" style="margin-top: 400px">
                <el-button type="primary" @click="handleSubmit">提交</el-button>
                <el-button @click="handleDraft">存草稿</el-button>
                <el-button @click="handleDraft" v-if="roleType != 1">存草稿</el-button>
            </div>
        </el-form>
@@ -60,6 +60,7 @@
            batchForm: {
                count: ''
            },
            roleType: JSON.parse(sessionStorage.getItem('userInfo')).roleType * 1,
            form: {
                strainSource: '',         // 菌种来源
                identifyingStrainCode: '',      // 鉴别菌株编号
culture/src/views/strain-library/validation/primitive-cell/add.vue
@@ -33,7 +33,7 @@
            </div>
            <div class="end-btn" style="margin-top: 400px">
                <el-button type="primary" @click="handleSubmit">提交</el-button>
                <el-button @click="handleDraft">存草稿</el-button>
                <el-button @click="handleDraft" v-if="roleType != 1">存草稿</el-button>
            </div>
        </el-form>
@@ -60,6 +60,7 @@
            batchForm: {
                count: ''
            },
            roleType: JSON.parse(sessionStorage.getItem('userInfo')).roleType * 1,
            form: {
                strainSource: '',         // 菌种来源
                identifyingStrainCode: '',      // 鉴别菌株编号
culture/src/views/strainReportLibrary/reportLibraryOne/components/evaluate/index.vue
@@ -177,7 +177,7 @@
    },
    computed: {
        dialogTitle() {
            return this.type === "approve" ? "菌种实验员操作评定" : "菌种实验员操作评定详情";
            return this.type === "approve" ? "菌种工程师操作评定" : "菌种工程师操作评定详情";
        },
        totalScore() {
            return this.assessmentTable.reduce((sum, item) => sum + (item.selectedScore || 0), 0);
culture/src/views/strainReportLibrary/reportLibraryOneFour/components/evaluate/index.vue
@@ -213,7 +213,7 @@
            return this.currentAssessmentTable.reduce((sum, item) => sum + (item.selectedScore || 0), 0);
        },
        dialogTitle() {
            return this.type === "1" ? "创新型课题评定" : "规程型课题评定标准";
            return this.type == "1" ? "创新型课题评定" : "规程型课题评定标准";
        }
    },
    methods: {
culture/src/views/strainReportLibrary/reportLibraryOneThree/components/evaluate/index.vue
@@ -212,7 +212,7 @@
            return this.currentAssessmentTable.reduce((sum, item) => sum + (item.selectedScore || 0), 0);
        },
        dialogTitle() {
            return this.type === "1" ? "创新型课题评定" : "规程型课题评定标准";
            return this.type == "1" ? "创新型课题评定" : "规程型课题评定标准";
        }
    },
    methods: {
culture/src/views/system/role/detail.vue
@@ -9,7 +9,7 @@
          <div class="sconed">
            <div class="subpage">
              <div class="title">页面名称</div>
              <div class="btns">权限</div>
              <!-- <div class="btns">权限</div> -->
            </div>
          </div>
        </div>
@@ -22,7 +22,7 @@
            </div>
            <div class="sconed">
              <div class="subpage"
                v-if="(item.children.length > 0 && item.children[0].children.length > 0) || item.children[0].children.menuType != 'F'">
                v-if="item.children && item.children.length > 0 && ((item.children[0].children && item.children[0].children.length > 0) || item.children[0].menuType != 'F')">
                <div v-for="item1 in item.children" :key="item1.menuId" class="two">
                  <div class="left">
                    <el-checkbox disabled :checked="item1.selected">
@@ -39,10 +39,9 @@
                  </div>
                </div>
              </div>
              <div class="subpage" v-else>
              <!-- <div class="subpage" v-else>
                <div class="two">
                  <!-- <div class="left">
                    </div> -->
                  <div class="right">
                    <div v-for="item1 in item.children" :key="item1.menuId">
                      <el-checkbox disabled :checked="item1.selected">
@@ -51,7 +50,7 @@
                    </div>
                  </div>
                </div>
              </div>
              </div> -->
            </div>
          </div>
        </div>
@@ -66,12 +65,6 @@
            <el-form-item label="人员搜索">
              <el-input v-model="nickNameOrPhone" placeholder="请输入姓名/联系电话"></el-input>
            </el-form-item>
            <!-- <el-form-item label="所属部门">
              <el-select v-model="deptId" placeholder="请选择(多选)" multiple>
                <el-option v-for="item in deptList" :key="item.id" :label="item.deptName" :value="item.id">
                </el-option>
              </el-select>
            </el-form-item> -->
            <el-form-item label="登陆状态">
              <el-select v-model="status" placeholder="请选择">
                <el-option
@@ -87,8 +80,8 @@
          </div>
        </el-form>
        <Table :data="data" :total="pagination.total" :queryForm="pagination" @handleCurrentChange="handleCurrentChange"
          @handleSizeChange="handleSizeChange">
        <Table :data="data" :total="pagination.total" :queryForm="pagination" @currentChange="handleCurrentChange"
          @sizeChange="handleSizeChange">
          <el-table-column label="序号" type="index" width="50">
          </el-table-column>
          <el-table-column prop="nickName" label="姓名"></el-table-column>
@@ -104,7 +97,7 @@
            <template slot-scope="{row}">
              <div class="status_class">
                <div :class="row.status == 0 ? 'green' : 'red'"></div>
                <div>{{ row.status == 0 ? '正常' : '禁用' }}</div>
                <div>{{ row.status == 0 ? '启用' : '停用' }}</div>
                <div v-if="row.status == 1" style="cursor: pointer;" @click="dialogVisibleView = true, rowView = row">
                  <i class="el-icon-warning"></i>
                </div>
@@ -155,19 +148,20 @@
  },
  watch: {},
  created() {
    roleInfoFromUserId({ userId: 1 }).then(res => {
    roleInfoFromUserId().then(res => {
      getRoleInfo({ roleId: this.$route.query.roleId }).then(resp => {
        this.menu = this.setSelectedIds(res, resp.menus);
        this.form = {
          roleName: resp.roleName,
          remark: resp.remark,
        }
        this.menu = this.setSelectedIds(res, resp.menus);
      })
    })
    this.getListData()
    getDeptList().then((res) => {
      this.deptList = res
    })
    // getDeptList().then((res) => {
    //   this.deptList = res.data.data
    // })
  },
  mounted() { },
  methods: {
@@ -175,7 +169,6 @@
      let obj = {
        ...this.pagination,
        nickNameOrPhone: this.nickNameOrPhone,
        // deptIds: this.deptId,
        status: this.status,
        roleIds: [this.$route.query.roleId]
      }
@@ -220,6 +213,11 @@
};
</script>
<style lang="less" scoped>
.el-checkbox__inner {
  background-color: #009688;
  border-color: #009688;
}
.header-title {
  font-size: 18px;
  font-weight: bold;
@@ -239,7 +237,7 @@
  border: 1px solid #e8e8e8;
  .w20 {
    width: 15%;
    width: 35%;
    padding: 8px 20px;
  }
@@ -261,7 +259,7 @@
        border-right: none;
        .left {
          width: 200px;
          width: 300px;
          padding: 13px 20px;
          border-right: 1px solid #e8e8e8;
        }
@@ -300,7 +298,7 @@
  }
  .title {
    width: 200px;
    width: 300px;
    padding: 8px 20px;
  }
}
@@ -320,6 +318,10 @@
    margin-right: 8px;
  }
}
::v-deep .checkbox__inner{
  background-color: #009688 !important;
  border-color: #009688 !important;
}
.no-data {
  height: 100%;
culture/src/views/system/role/service.js
@@ -22,7 +22,7 @@
// 获取菜单树
export const roleInfoFromUserId = (params) => {
  return axios.get(`/system/role/roleInfoFromUserId`, { params })
  return axios.get(`/system/menu/levelList`, { params })
}
// 获取角色详情