李林
2024-03-08 a2ae35d75856018cb66f407ed1f88b5dd3d5f422
功能调整
已修改6个文件
已删除1个文件
已添加1个文件
762 ■■■■ 文件已修改
build/logo.png 补丁 | 查看 | 原始文档 | blame | 历史
src/App.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/a5-capacity-scope.vue 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/b1-inspection-order.vue 447 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/b2-standard.vue 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/view/index.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
static/img/logo1.png 补丁 | 查看 | 原始文档 | blame | 历史
static/js/menu.js 234 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
build/logo.png
Binary files differ
src/App.vue
@@ -25,8 +25,8 @@
    };
</script>
<style>
    @import url("../static/alifont/iconfont.css");
    /* @import url("//at.alicdn.com/t/c/font_4379269_2wteluxhkyd.css"); */
    /* @import url("../static/alifont/iconfont.css"); */
    @import url("//at.alicdn.com/t/c/font_4457508_5ubi3w3kng.css");
    * {
        margin: 0;
src/components/view/a5-capacity-scope.vue
@@ -160,7 +160,8 @@
                        laboratory:{
                            select:[]
                        },
                        method:{select:[]}
                        method:{select:[]},
                        deviceGroup:{select:[]}
                    },
                    selectField: {
                        inspectionItemType: {
@@ -178,7 +179,8 @@
                        laboratory:{
                            select:[]
                        },
                        method:{select:[]}
                        method:{select:[]},
                        deviceGroup:{select:[]}
                    },
                    requiredAdd: ['inspectionItem', 'manHour', 'inspectionItemType','inspectionValueType','inspectionItemClassify','laboratory','unit','method','price','manDay','deviceGroup','checkoutNumber','valueType'],
                    requiredUp: ['inspectionItem', 'manHour', 'inspectionItemType','inspectionValueType','inspectionItemClassify','laboratory','unit','method','price','manDay','deviceGroup','checkoutNumber','valueType']
@@ -228,6 +230,7 @@
            this.selectEnumByCategoryForInspectionValueType()
            this.obtainItemParameterList()
            this.selectStandardMethods()
            this.selectEnumByCategoryForDevice()
            this.getPower('0')
        },
        methods: {
@@ -296,6 +299,14 @@
                    this.itemParameterData.tagField.inspectionValueType.select = res.data
                })
            },
            selectEnumByCategoryForDevice() {
                this.$axios.post(this.$api.enums.selectEnumByCategory, {
                    category: "设备分类"
                }).then(res => {
                    this.itemParameterData.selectField.deviceGroup.select = res.data
                    this.itemParameterData.tagField.deviceGroup.select = res.data
                })
            },
            obtainItemParameterList() {
                this.$axios.get(this.$api.laboratoryScope.obtainItemParameterList).then(res => {
                    let data = []
src/components/view/b1-inspection-order.vue
@@ -34,33 +34,38 @@
        height: calc(100% - 60px - 80px - 10px - 40px);
        padding: 20px;
    }
  .tab{
    list-style-type: none;
    display: flex;
    margin-bottom: 12px;
  }
  .tab li{
    line-height: 24px;
    padding: 6px 14px;
    font-size: 14px;
    color: #333333;
    border: 1px solid #EEEEEE;
    cursor: pointer;
  }
  .tab li:nth-child(1){
    border-radius: 8px 0 0 8px;
  }
  .tab li:nth-child(4){
    border-radius: 0 8px 8px 0;
  }
  .tab li.active{
    border-color: #3A7BFA;
    color: #3A7BFA;
  }
  .el-form-item{
    margin-bottom: 16px;
  }
    .tab {
        list-style-type: none;
        display: flex;
        margin-bottom: 12px;
    }
    .tab li {
        line-height: 24px;
        padding: 6px 14px;
        font-size: 14px;
        color: #333333;
        border: 1px solid #EEEEEE;
        cursor: pointer;
    }
    .tab li:nth-child(1) {
        border-radius: 8px 0 0 8px;
    }
    .tab li:nth-child(4) {
        border-radius: 0 8px 8px 0;
    }
    .tab li.active {
        border-color: #3A7BFA;
        color: #3A7BFA;
    }
    .el-form-item {
        margin-bottom: 16px;
    }
</style>
<template>
@@ -69,7 +74,7 @@
            <el-row class="title">
                <el-col :span="12" style="padding-left: 20px;">检验下单</el-col>
                <el-col :span="12" style="text-align: right;">
          <el-button size="medium" type="primary" @click="playOrder">下单</el-button>
                    <el-button size="medium" type="primary" @click="playOrder">下单</el-button>
                </el-col>
            </el-row>
        </div>
@@ -79,128 +84,94 @@
                <div class="search_input"><el-input size="small" placeholder="请输入" clearable
                        v-model="componentData.entity.deviceName" @keyup.enter.native="refreshTable()"></el-input></div>
            </div>
        <div class="search_thing">
            <div class="search_thing">
                <div class="search_label">样品名称:</div>
                <div class="search_input"><el-input size="small" placeholder="请输入" clearable
                        v-model="componentData.entity.specificationModel" @keyup.enter.native="refreshTable()"></el-input></div>
            </div>
            <div class="search_thing" style="padding-left: 30px;">
                <el-button size="small" @click="refresh()">重 置</el-button>
                <el-button size="small" @click="refresh()">重 置</el-button>
                <el-button size="small" type="primary" @click="refreshTable()">查 询</el-button>
            </div>
        </div>
        <div class="table">
      <ul class="tab">
        <li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li>
      </ul>
            <ul class="tab">
                <li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li>
            </ul>
            <!-- 语法 子组件通过 this.$emit +传入方法名 调用父组件方法 例如  this.$emit(selectAllByOne) 就需在父组件声明并传入  @selectAllByOne="selectAllByOne"-->
            <ValueTable
      ref="ValueTable"
      :url="$api.deviceScope.selectDeviceParameter"
      :componentData="componentData"
      :key="upIndex"
      style="height: calc(100% - 44px)"
      @selectAllByOne="selectAllByOne"
      @handleDataLook="handleDataLook"
      @download="download"
      @handleVerify="handleVerify"
      @handlEquash="handlEquash"
      @handleIssued="handleIssued" />
            <ValueTable ref="ValueTable" :url="$api.deviceScope.selectDeviceParameter" :componentData="componentData"
                :key="upIndex" style="height: calc(100% - 44px)" @selectAllByOne="selectAllByOne"
                @handleDataLook="handleDataLook" @download="download" @handleVerify="handleVerify" @handlEquash="handlEquash"
                @handleIssued="handleIssued" />
        </div>
    <!-- 审核 -->
    <el-dialog
      title="下单审核"
      :visible.sync="verifyDialogVisible"
      width="30%"
      :before-close="handleClose">
      <p style="font-size:16px;color:#333333" v-if="!isPass">委托编号<span style="color:#34BD66">ZTMS2023071001</span>的信息是否通过</p>
      <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
        <el-form-item label="请输入样品库位号:" >
          <el-input v-model="formData.specificationModel" size="small" style="width:60%"></el-input>
        </el-form-item>
      </el-form>
      <span slot="footer" class="dialog-footer">
        <el-row v-if="!isPass">
          <el-button @click="handleClose">退 回</el-button>
        <el-button type="primary" @click="submitForm" :loading="upLoad">通 过</el-button>
        </el-row>
        <el-row v-else>
          <el-button @click="handleClose">返 回</el-button>
        <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
        </el-row>
      </span>
    </el-dialog>
    <!-- 撤销 -->
    <el-dialog
      title="下单撤销"
      :visible.sync="quashDialogVisible"
      width="30%"
      :before-close="handleClose">
      <p style="font-size:16px;color:#333333" v-if="!isQuash">委托编号<span style="color:#34BD66">ZTMS2023071001</span>的信息是否撤销</p>
      <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
        <el-form-item label="请输入撤销原因:" >
          <el-input v-model="formData.specificationModel" size="small" style="width:60%"></el-input>
        </el-form-item>
      </el-form>
      <span slot="footer" class="dialog-footer">
        <el-row v-if="!isQuash">
          <el-button @click="handleClose">取 消</el-button>
        <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
        </el-row>
        <el-row v-else>
          <el-button @click="handleClose">返 回</el-button>
        <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
        </el-row>
      </span>
    </el-dialog>
    <!-- 下发 -->
    <el-dialog
      title="检验下发"
      :visible.sync="issuedDialogVisible"
      width="30%"
      :before-close="handleClose">
      <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm">
        <el-form-item label="约定时间:" >
          <el-date-picker
          style="width:100%"
            format="yyyy-MM-dd"
            value-format="yyyy-MM-dd"
            v-model="formData.downTime"
            type="date"
            size="small"
            placeholder="选择时间">
          </el-date-picker>
        </el-form-item>
        <el-form-item label="指派人员:" >
          <el-select v-model="formData.equipmentManager" placeholder="请选择" size="small" style="width:100%">
            <el-option
              v-for="item in personList"
              :key="item.value"
              :label="item.label"
              :value="item.value"
              >
            </el-option>
          </el-select>
        </el-form-item>
      </el-form>
      <span slot="footer" class="dialog-footer">
        <el-row>
          <el-button @click="handleClose">取 消</el-button>
        <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
        </el-row>
      </span>
    </el-dialog>
    <el-dialog
      title="数据查看"
      :visible.sync="dataDialogVisible"
      width="70%"
      :before-close="handleClose">
      <ValueTable
      ref="ValueTableDataLook"
      :url="$api.deviceScope.selectDeviceParameter"
      :componentData="componentDataDataLook"
      :key="upIndex" style="height: calc(100% - 44px)" />
    </el-dialog>
        <!-- 审核 -->
        <el-dialog title="下单审核" :visible.sync="verifyDialogVisible" width="30%" :before-close="handleClose">
            <p style="font-size:16px;color:#333333" v-if="!isPass">委托编号<span
                    style="color:#34BD66">ZTMS2023071001</span>的信息是否通过</p>
            <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
                <el-form-item label="请输入样品库位号:">
                    <el-input v-model="formData.specificationModel" size="small" style="width:60%"></el-input>
                </el-form-item>
            </el-form>
            <span slot="footer" class="dialog-footer">
                <el-row v-if="!isPass">
                    <el-button @click="handleClose">退 回</el-button>
                    <el-button type="primary" @click="submitForm" :loading="upLoad">通 过</el-button>
                </el-row>
                <el-row v-else>
                    <el-button @click="handleClose">返 回</el-button>
                    <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
                </el-row>
            </span>
        </el-dialog>
        <!-- 撤销 -->
        <el-dialog title="下单撤销" :visible.sync="quashDialogVisible" width="30%" :before-close="handleClose">
            <p style="font-size:16px;color:#333333" v-if="!isQuash">委托编号<span
                    style="color:#34BD66">ZTMS2023071001</span>的信息是否撤销</p>
            <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
                <el-form-item label="请输入撤销原因:">
                    <el-input v-model="formData.specificationModel" size="small" style="width:60%"></el-input>
                </el-form-item>
            </el-form>
            <span slot="footer" class="dialog-footer">
                <el-row v-if="!isQuash">
                    <el-button @click="handleClose">取 消</el-button>
                    <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
                </el-row>
                <el-row v-else>
                    <el-button @click="handleClose">返 回</el-button>
                    <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
                </el-row>
            </span>
        </el-dialog>
        <!-- 下发 -->
        <el-dialog title="检验下发" :visible.sync="issuedDialogVisible" width="30%" :before-close="handleClose">
            <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm">
                <el-form-item label="约定时间:">
                    <el-date-picker style="width:100%" format="yyyy-MM-dd" value-format="yyyy-MM-dd" v-model="formData.downTime"
                        type="date" size="small" placeholder="选择时间">
                    </el-date-picker>
                </el-form-item>
                <el-form-item label="指派人员:">
                    <el-select v-model="formData.equipmentManager" placeholder="请选择" size="small" style="width:100%">
                        <el-option v-for="item in personList" :key="item.value" :label="item.label" :value="item.value">
                        </el-option>
                    </el-select>
                </el-form-item>
            </el-form>
            <span slot="footer" class="dialog-footer">
                <el-row>
                    <el-button @click="handleClose">取 消</el-button>
                    <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
                </el-row>
            </span>
        </el-dialog>
        <el-dialog title="数据查看" :visible.sync="dataDialogVisible" width="70%" :before-close="handleClose">
            <div style="height: 70vh;overflow-y: auto;">
                <ValueTable ref="ValueTableDataLook" :url="$api.deviceScope.selectDeviceParameter"
                    :componentData="componentDataDataLook" :key="upIndex" />
            </div>
        </el-dialog>
    </div>
</template>
@@ -214,15 +185,15 @@
            return {
                //是否审核通过  true是 false不是
                isPass: false,
        //是否审核撤销  true是 false不是
        isQuash:false,
        verifyDialogVisible: false,
        quashDialogVisible:false,
        issuedDialogVisible:false,
        dataDialogVisible:false,
                //是否审核撤销  true是 false不是
                isQuash: false,
                verifyDialogVisible: false,
                quashDialogVisible: false,
                issuedDialogVisible: false,
                dataDialogVisible: false,
                formData: {},
        // 人员列表
        personList:[],
                // 人员列表
                personList: [],
                labelPosition: 'right',
                componentData: {
                    entity: {
@@ -239,58 +210,59 @@
                    showSelect: false,
                    select: false,
                    do: [{
                        id: 'details',
                        font: '详情',
                        type: 'text',
                        method: 'selectAllByOne'
                    }, {
                        id: 'dataLook',
                        font: '数据查看',
                        type: 'text',
                        method: 'handleDataLook'
                    },{
                    }, {
                        id: 'download',
                        font: '报告下载',
                        type: 'text',
                        method: 'download'
                    },{
                    }, {
                        id: 'verify',
                        font: '审核',
                        type: 'text',
                        method: 'handleVerify'
                    },{
                    }, {
                        id: 'quash',
                        font: '撤销',
                        type: 'text',
                        method: 'handlEquash'
                    },{
                    }, {
                        id: 'issued',
                        font: '下发',
                        type: 'text',
                        method: 'handleIssued'
                    }],
                    tagField: {
            deviceStatus: {
                        deviceStatus: {
                            select: [{
                                value: 0,
                                type: 'success',
                                label: '正常'
                            },{
                            }, {
                                value: 1,
                                type: 'warning',
                                label: '报废'
                            },{
                            }, {
                                value: 2,
                                type: 'danger',
                                label: '保修'
                            }]
                        }
          },
                    },
                    linkEvent:{
                      deviceName:{
                        id: 'details',
                        method:'selectAllByOne',
                      }
                    },
                    selectField: {},
                    requiredAdd:['largeCategory','subclass','deviceName','internalCode','specificationModel','manufacturer'],
                    requiredUp:['largeCategory','subclass','deviceName','internalCode','specificationModel','manufacturer']
                    requiredAdd: ['largeCategory', 'subclass', 'deviceName', 'internalCode', 'specificationModel', 'manufacturer'],
                    requiredUp: ['largeCategory', 'subclass', 'deviceName', 'internalCode', 'specificationModel', 'manufacturer']
                },
        componentDataDataLook:{
                componentDataDataLook: {
                    entity: {
                        orderBy: {
                            field: 'id',
@@ -302,49 +274,48 @@
                    select: false,
                    do: [],
                    tagField: {
            deviceStatus: {
                        deviceStatus: {
                            select: [{
                                value: 0,
                                type: 'success',
                                label: '正常'
                            },{
                            }, {
                                value: 1,
                                type: 'warning',
                                label: '报废'
                            },{
                            }, {
                                value: 2,
                                type: 'danger',
                                label: '保修'
                            }]
                        }
          },
                    },
                    selectField: {},
                    requiredAdd:[],
                    requiredUp:[]
                    requiredAdd: [],
                    requiredUp: []
                },
                entityCopy: {},
                upIndex: 0,
                addPower: true,
        upLoad:false,
        tabList:[
          {
            label:'检验处理',
            value:0
          },
          {
            label:'待审核',
            value:1
          },
          {
            label:'退回',
            value:2
          },
          {
            label:'撤销',
            value:3
          },
        ],
        tabIndex:0,
                upLoad: false,
                tabList: [{
                        label: '检验处理',
                        value: 0
                    },
                    {
                        label: '待审核',
                        value: 1
                    },
                    {
                        label: '退回',
                        value: 2
                    },
                    {
                        label: '撤销',
                        value: 3
                    },
                ],
                tabIndex: 0,
            }
        },
        mounted() {
@@ -366,68 +337,68 @@
                let del = false
                let add = false
                for (var i = 0; i < power.length; i++) {
                    if(power[i].menuMethod=='upDeviceParameter'){
                    if (power[i].menuMethod == 'upDeviceParameter') {
                        up = true
                    }
                    if(power[i].menuMethod=='delDeviceParameter'){
                    if (power[i].menuMethod == 'delDeviceParameter') {
                        del = true
                    }
                    if(power[i].menuMethod=='addDeviceParameter'){
                    if (power[i].menuMethod == 'addDeviceParameter') {
                        add = true
                    }
                }
                if(!del){
                if (!del) {
                    this.componentData.do.splice(1, 1)
                }
                if(!up){
                if (!up) {
                    this.componentData.do.splice(0, 1)
                }
                this.addPower = add
            },
            handleClose(){
            handleClose() {
                this.verifyDialogVisible = false;
        this.quashDialogVisible = false;
        this.issuedDialogVisible = false;
        this.dataDialogVisible = false;
        this.upLoad = false;
                this.quashDialogVisible = false;
                this.issuedDialogVisible = false;
                this.dataDialogVisible = false;
                this.upLoad = false;
            },
      // 详情
            selectAllByOne(row){
            // 详情
            selectAllByOne(row) {
                //打开弹框
                this.dialogVisible = true;
                //row = 点击对应行值
                //复制给formData
                this.formData=this.HaveJson(row);
                this.formData = this.HaveJson(row);
            },
      // 数据查看
      handleDataLook(row){
        this.dataDialogVisible = true;
      },
      // 下载报告
      download(row){
            // 数据查看
            handleDataLook(row) {
                this.dataDialogVisible = true;
            },
            // 下载报告
            download(row) {
      },
      // 审核
      handleVerify(row){
        this.verifyDialogVisible = true;
      },
      // 撤销
      handlEquash(row){
        this.quashDialogVisible = true;
      },
      // 下发
      handleIssued(row){
        this.issuedDialogVisible = true;
      },
      submitForm(){
        this.upLoad = true;
        let authorizedPerson = this.formData.authorizedPerson.length>0?this.formData.authorizedPerson.join(','):''
        delete this.formData.createTime
        delete this.formData.updateTime
        delete this.formData.createUser
        delete this.formData.updateUser
        this.formData.authorizedPerson = authorizedPerson
        this.$axios.post(this.$api.deviceScope.upDeviceParameter, this.formData, {
            },
            // 审核
            handleVerify(row) {
                this.verifyDialogVisible = true;
            },
            // 撤销
            handlEquash(row) {
                this.quashDialogVisible = true;
            },
            // 下发
            handleIssued(row) {
                this.issuedDialogVisible = true;
            },
            submitForm() {
                this.upLoad = true;
                let authorizedPerson = this.formData.authorizedPerson.length > 0 ? this.formData.authorizedPerson.join(',') : ''
                delete this.formData.createTime
                delete this.formData.updateTime
                delete this.formData.createUser
                delete this.formData.updateUser
                this.formData.authorizedPerson = authorizedPerson
                this.$axios.post(this.$api.deviceScope.upDeviceParameter, this.formData, {
                    headers: {
                        'Content-Type': 'application/json'
                    }
@@ -437,20 +408,20 @@
                        return
                    }
                    this.$message.success('修改成功')
          this.upLoad = false
                    this.upLoad = false
                    this.refreshTable()
          this.dialogVisible = false
                    this.dialogVisible = false
                }).catch(e => {
                    this.$message.error('修改失败')
                    this.dialogVisible = false
                    this.upLoad = false
                })
      },
      // 下单
      playOrder(){},
      handleTab(m,i){
        this.tabIndex = i;
      }
            },
            // 下单
            playOrder() {},
            handleTab(m, i) {
                this.tabIndex = i;
            }
        }
    }
</script>
</script>
src/components/view/b2-standard.vue
@@ -311,7 +311,21 @@
                    showSelect: true,
                    select: true,
                    do: [],
                    tagField: {},
                    tagField: {
                        inspectionItemType: {
                            select: []
                        },
                        valueType: {
                            select: []
                        },
                        bsm:{
                            select: []
                        },
                        inspectionValueType:{
                            select:[]
                        },
                        deviceGroup:{select:[]}
                    },
                    selectField: {},
                }
            }
@@ -324,6 +338,11 @@
            this.selectEnumByCategoryForsampleType()
            this.selectTestObjectByName()
            this.selectStandardMethods()
            this.selectEnumByCategoryForDevice()
            this.selectEnumByCategory()
            this.selectEnumByCategoryForValue()
            this.selectEnumByCategoryForSpecial()
            this.selectEnumByCategoryForInspectionValueType()
        },
        methods: {
            filterNode(value, data) {
@@ -400,6 +419,42 @@
                    this.sampleType = res.data
                })
            },
            selectEnumByCategoryForDevice() {
                this.$axios.post(this.$api.enums.selectEnumByCategory, {
                    category: "设备分类"
                }).then(res => {
                    this.componentData.tagField.deviceGroup.select = res.data
                })
            },
            selectEnumByCategory() {
                this.$axios.post(this.$api.enums.selectEnumByCategory, {
                    category: "检验项类型"
                }).then(res => {
                    res.data[1].type = 'info'
                    this.componentData.tagField.inspectionItemType.select = res.data
                })
            },
            selectEnumByCategoryForValue() {
                this.$axios.post(this.$api.enums.selectEnumByCategory, {
                    category: "取值类型"
                }).then(res => {
                    this.componentData.tagField.valueType.select = res.data
                })
            },
            selectEnumByCategoryForSpecial() {
                this.$axios.post(this.$api.enums.selectEnumByCategory, {
                    category: "特殊标识"
                }).then(res => {
                    this.componentData.tagField.bsm.select = res.data
                })
            },
            selectEnumByCategoryForInspectionValueType() {
                this.$axios.post(this.$api.enums.selectEnumByCategory, {
                    category: "检验值类型"
                }).then(res => {
                    this.componentData.tagField.inspectionValueType.select = res.data
                })
            },
            selectStandardTreeList() {
                this.treeLoad = true
                this.$axios.get(this.$api.standardTree.selectStandardTreeList).then(res => {
src/view/index.vue
@@ -12,11 +12,12 @@
        height: 48px;
        display: flex;
        align-items: center;
        padding: 0 30px;
        padding: 0 24px;
    }
    .logo {
        width: 130px;
        height: 40px;
    }
    .logo img {
@@ -264,7 +265,7 @@
    <div class="all" @click="closeRightKey">
        <div class="title">
            <div class="logo">
                <!-- <img src="../../static/img/logo 1.png" /> -->
                <img src="../../static/img/logo1.png" />
            </div>
            <div class="label">LIMS实验室管理系统</div>
            <div class="user">
static/img/logo1.png
static/js/menu.js
@@ -12,145 +12,145 @@
    },
    {
        v: "业务管理",
        i: "font icon-a-Group1118",
        i: "font icon-kexueyanjiuheshiyankaifa",
        p: "",
        c: [{
            v: "检验下单",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "b1-inspection-order",
            p: ""
        }, {
            v: "检验任务",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "报告编制",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "费用统计",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "样品管理",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }]
    },
    {
        v: "标准集",
        i: "font icon-a-Group1120",
        i: "font icon-biaozhunji",
        p: "",
        c: [{
            v: "标准库",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "b2-standard",
            p: "selectStandardTreeList"
        }, {
            v: "标准模板",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }]
    },
    {
        v: "绩效管理",
        i: "font icon-24gl-clipboardList",
        i: "font icon-jixiaoguanli",
        p: "",
        c: [{
            v: "工时管理",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "fans-submit",
            p: ""
        }, {
            v: "人员考勤",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "人员考评",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "人员考核",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "技能等级",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "工资结算",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "班次",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }]
    },
    {
        v: "统计图表",
        i: "font icon-24gl-clipboardList",
        i: "font icon-tongjitubiao",
        p: "",
        c: [{
            v: "实验室要素",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "每日业务统计",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "检测项目统计",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "样品缺陷指数",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "耗材统计",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "人员工作报表",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }]
    },
    {
        v: "电子看板",
        i: "font icon-a-Group1126",
        i: "font icon-dianzikanban-fan",
        p: "",
        c: [{
            v: "客户接待",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "任务展示",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }, {
            v: "设备状态及饱和度",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            p: ""
        }]
@@ -188,25 +188,25 @@
    },
    {
        v: "4 通用要求",
        i: "el-icon-tickets",
        i: "font icon-tongyongyaoqiu",
        p: "",
        c: [{
                v: "通用要求",
                i: "font icon-24gl-clipboardList",
                i: "font icon-erjidaohang",
                u: "",
                g: "4 通用要求",
                p: ""
            },
            {
                v: "公正性",
                i: "font icon-24gl-clipboardList",
                i: "font icon-erjidaohang",
                u: "",
                g: "4.1 公正性",
                p: ""
            },
            {
                v: "保密性",
                i: "font icon-24gl-clipboardList",
                i: "font icon-erjidaohang",
                u: "",
                g: "4.2 保密性",
                p: ""
@@ -215,310 +215,310 @@
    },
    {
        v: "5 结构要求",
        i: "el-icon-tickets",
        i: "font icon-jiegouyaoqiu",
        p: "",
        c: [{
            v: "实验室的法律地位",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "A实验室的法律地位",
            p: ""
        }, {
            v: "全权负责的管理层",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "B全权负责的管理层",
            p: ""
        }, {
            v: "实验室资质",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "C能力范围和资质",
            p: ""
        }, {
            v: "能力范围",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "a5-capacity-scope",
            g: "C能力范围和资质",
            p: "selectItemParameterList selectTestObjectList"
        }, {
            v: "场所或设施",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "a5-laboratory-management",
            g: "D场所或设施",
            p: "selectItemParameter"
        }, {
            v: "组织相关文件",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "E组织相关文件",
            p: ""
        }, {
            v: "人员岗位任职",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "F人员岗位任职",
            p: ""
        }, {
            v: "沟通和宣贯",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "G沟通和宣贯",
            p: ""
        }]
    }, {
        v: "6 资源要求",
        i: "el-icon-tickets",
        i: "font icon-ziyuanyaoqiu",
        p: "",
        c: [{
            v: "总则",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.1 总则",
            p: ""
        }, {
            v: "人员总览",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "人员明细",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "人员培训",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "人员监督",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "岗位职责",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "人员基本信息",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "工作履历",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "奖惩记录",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "培训记录",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "监督记录",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "任职授权记录",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "人员能力监控记录",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "沟通记录",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.2 人员",
            p: ""
        }, {
            v: "外来人员管理",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.3 设施和环境条件",
            p: ""
        }, {
            v: "实验室设施场所信息",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.3 设施和环境条件",
            p: ""
        }, {
            v: "设施和环境条件要求",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.3 设施和环境条件",
            p: ""
        }, {
            v: "环境条件引用",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.3 设施和环境条件",
            p: ""
        }, {
            v: "安全区代表检查",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.3 设施和环境条件",
            p: ""
        }, {
            v: "安全内务",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.3 设施和环境条件",
            p: ""
        }, {
            v: "废物处理交接记录",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.3 设施和环境条件",
            p: ""
        }, {
            v: "设备总览",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "a6-device-overview",
            g: "6.4 设备",
            p: "selectDeviceParameter"
        }, {
            v: "设备工具明细",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "a6-device-management",
            g: "6.4 设备",
            p: "selectDeviceParameter"
        }, {
            v: "资源预定",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "作业指导书",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "设备运行总览",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "设备档案",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "设备验收",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "设备校准",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "设备核查",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "设备维护",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "设备借用",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "设备故障",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "使用记录",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "设备停用/启用",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.4 设备",
            p: ""
        }, {
            v: "量值溯源计划",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.5 计量溯源性",
            p: ""
        }, {
            v: "标准物质清单",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.5 计量溯源性",
            p: ""
        }, {
            v: "标准物质验收",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.5 计量溯源性",
            p: ""
        }, {
            v: "标准物质领用",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.5 计量溯源性",
            p: ""
        }, {
            v: "过期标样处置",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.5 计量溯源性",
            p: ""
        }, {
            v: "服务和供应品采购",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.6 外部提供的产品和服务",
            p: ""
        },{
            v: "供应商管理",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "6.6 外部提供的产品和服务",
            p: ""
@@ -526,107 +526,107 @@
    },
    {
        v: "7 过程要求",
        i: "el-icon-tickets",
        i: "font icon-guochengyaoqiu",
        p: "",
        c: [{
            v: "检验委托单",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.1 要求、标书和合同评审",
            p: ""
        }, {
            v: "合同评审",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.1 要求、标书和合同评审",
            p: ""
        }, {
            v: "实验室的检测能力档案",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "standard_method",
            g: "7.2 方法的选择、验证和确认",
            p: "selectStandardMethodList"
        }, {
            v: "标准查新",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.2 方法的选择、验证和确认",
            p: ""
        }, {
            v: "标准方法的变更",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.2 方法的选择、验证和确认",
            p: ""
        }, {
            v: "方法验证",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.2 方法的选择、验证和确认",
            p: ""
        }, {
            v: "抽样",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.3 抽样",
            p: ""
        }, {
            v: "检测或校准物品的处置",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.4 检测或校准物品的处置",
            p: ""
        }, {
            v: "技术记录",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.5 技术记录",
            p: ""
        }, {
            v: "测量不确定度的评定",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.6 测量不确定度的评定",
            p: ""
        }, {
            v: "确保结果有效性",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.7 确保结果有效性",
            p: ""
        }, {
            v: "报告结果",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.8 报告结果",
            p: ""
        }, {
            v: "投诉详情",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.9 投诉",
            p: ""
        }, {
            v: "投诉情况汇总表",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.9 投诉",
            p: ""
        }, {
            v: "不符合项",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.10 不符合工作",
            p: ""
        }, {
            v: "不符合项的分布",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.10 不符合工作",
            p: ""
        }, {
            v: "数据控制和信息管理",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "7.11 数据控制和信息管理",
            p: ""
@@ -634,89 +634,89 @@
    },
    {
        v: "8 体系管理要求",
        i: "el-icon-tickets",
        i: "font icon-guanlitixiyaoqiu",
        p: "",
        c: [{
            v: "方式",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.1 方式",
            p: ""
        }, {
            v: "管理体系文件",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.2 管理体系文件",
            p: ""
        }, {
            v: "文件清单",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.3 管理体系文件的控制",
            p: ""
        }, {
            v: "文件受控",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.3 管理体系文件的控制",
            p: ""
        }, {
            v: "文件发放回收",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.3 管理体系文件的控制",
            p: ""
        }, {
            v: "文件变更",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.3 管理体系文件的控制",
            p: ""
        }, {
            v: "文件作废",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.3 管理体系文件的控制",
            p: ""
        }, {
            v: "记录的控制",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.4 记录的控制",
            p: ""
        }, {
            v: "应对风险和机遇的措施",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.5 应对风险和机遇的措施",
            p: ""
        }, {
            v: "客户基本信息管理",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.6 改进",
            p: ""
        }, {
            v: "客户满意度",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.6 改进",
            p: ""
        }, {
            v: "纠正措施",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.7 纠正措施",
            p: ""
        }, {
            v: "内审管理",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.8 内审管理",
            p: ""
        }, {
            v: "管理评审",
            i: "font icon-24gl-clipboardList",
            i: "font icon-erjidaohang",
            u: "",
            g: "8.9 管理评审",
            p: ""