李林
2024-03-13 5251c3d10e62e918d763e0ff46cabc967618dbe0
功能调整
已修改5个文件
266 ■■■■■ 文件已修改
src/App.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/do/b1-ins-order/add.vue 250 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/b1-inspection-order.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/view/index.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
static/js/menu.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/App.vue
@@ -285,7 +285,7 @@
    }
    
    .el-loading-mask{
        z-index: 9999;
        z-index: 9990;
    }
    /* 全局输入框样式 */
src/components/do/b1-ins-order/add.vue
@@ -1,12 +1,40 @@
<style scoped>
    .ins_order_add{
    .ins_order_add {
        width: 100%;
        height: 100%;
    }
    .title {
        height: 60px;
        line-height: 60px;
    }
    .search {
        width: calc(100% - 40px);
        background-color: #fff;
        padding: 10px 40px 10px 0;
    }
    .search_thing {
        display: flex;
        align-items: center;
        height: 50px;
    }
    .search_label {
        width: 120px;
        font-size: 14px;
        text-align: right;
    }
    .search_input {
        width: calc(100% - 120px);
    }
</style>
<style>
    .ins_order_add .el-input-group__append,
    .el-input-group__prepend {
        padding: 0 10px;
    }
</style>
@@ -14,21 +42,225 @@
    <div class="ins_order_add">
        <div>
            <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="">提交</el-button>
                    <el-button size="medium" @click="">返回</el-button>
                <el-col :span="6" style="padding-left: 20px;">委托单信息</el-col>
                <el-col :span="18" style="text-align: right;">
                    <el-select v-model="template" size="medium" placeholder="下单模板" style="margin-right: 10px;">
                        <el-option v-for="(a, ai) in templates" :key="ai" :value="a.value" :label="a.label"></el-option>
                    </el-select>
                    <el-button size="medium" @click="">
                        <span style="color: #3A7BFA;">保存模板</span>
                    </el-button>
                    <el-button size="medium" type="primary" @click="save">提交</el-button>
                    <el-button size="medium" @click="$parent.playOrder(0)">
                        <span style="color: #3A7BFA;">返回</span>
                    </el-button>
                </el-col>
            </el-row>
        </div>
        <div class="search">
            <el-row>
                <el-col class="search_thing" :span="6">
                    <div class="search_label">委托编号:</div>
                    <div class="search_input">
                        <el-input v-model="addObj.entrustCode" size="small" placeholder="系统生成" disabled></el-input>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label"><span class="required-span">* </span>样品编号:</div>
                    <div class="search_input">
                        <el-input v-model="addObj.sampleCode" size="small" placeholder="请输入" clearable></el-input>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label"><span class="required-span">* </span>下单客户:</div>
                    <div class="search_input">
                        <el-input readonly size="small" v-model="addObj.custom">
                            <template slot="append"><el-button slot="append" icon="el-icon-search"
                                    @click="selectUserDia = true"></el-button></template>
                        </el-input>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label"><span class="required-span">* </span>下单单位:</div>
                    <div class="search_input">
                        <el-input size="small" placeholder="选择下单客户" clearable disabled v-model="addObj.company"></el-input>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label"><span class="required-span">* </span>样品名称:</div>
                    <div class="search_input">
                        <el-input readonly size="small" v-model="addObj.sample">
                            <template slot="append"><el-button slot="append" icon="el-icon-search" @click=""></el-button></template>
                        </el-input>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label"><span class="required-span">* </span>实验室名称:</div>
                    <div class="search_input">
                        <el-input size="small" clearable disabled v-model="addObj.laboratory"></el-input>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label"><span class="required-span">* </span>样品类型:</div>
                    <div class="search_input">
                        <el-input size="small" clearable disabled v-model="addObj.sampleType"></el-input>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label"><span class="required-span">* </span>规格型号:</div>
                    <div class="search_input">
                        <el-input size="small" placeholder="请输入" clearable v-model="addObj.model"></el-input>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label">约定时间:</div>
                    <div class="search_input">
                        <el-date-picker type="date" placeholder="选择日期" size="small" value-format="yyyy-MM-dd" style="width: 100%;"
                            v-model="addObj.appointedTime"></el-date-picker>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label"><span class="required-span">* </span>紧急程度:</div>
                    <div class="search_input">
                        <el-select size="small" style="width: 100%;" clearable v-model="addObj.type">
                            <el-option v-for="(a, ai) in type" :key="ai" :value="a.value" :label="a.label"></el-option>
                        </el-select>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label"><span class="required-span">* </span>样品数量:</div>
                    <div class="search_input">
                        <el-input-number size="small" v-model="addObj.sampleNum" :controls="false" :min="0" :precision="0" style="width: 50%;"></el-input-number>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label">OTC订单号:</div>
                    <div class="search_input">
                        <el-input size="small" placeholder="请输入" clearable v-model="addObj.otcCode"></el-input>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label">样品留样:</div>
                    <div class="search_input">
                        <el-radio-group v-model="addObj.isLeave" @change="addObj.leaveNum = null">
                            <el-radio :label="1">留样</el-radio>
                            <el-radio :label="0">不留样</el-radio>
                        </el-radio-group>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="6">
                    <div class="search_label">留样数量:</div>
                    <div class="search_input">
                        <el-input-number size="small" v-model="addObj.leaveNum" :controls="false" :min="0" :disabled="addObj.isLeave == 0" style="width: 50%;"></el-input-number>
                    </div>
                </el-col>
                <el-col class="search_thing" :span="12">
                    <div class="search_label">备注:</div>
                    <div class="search_input">
                        <el-input size="small" placeholder="请输入" clearable v-model="addObj.remark"></el-input>
                    </div>
                </el-col>
            </el-row>
        </div>
        <el-dialog title="选择客户" :visible.sync="selectUserDia" width="70%">
            <div class="body" style="height: 60vh;" v-if="selectUserDia">
                <ValueTable ref="ValueTable2" :url="$api.user.selectCustomPageList" :componentData="componentData2" />
            </div>
            <span slot="footer" class="dialog-footer">
                <el-button @click="selectUserDia = false">取 消</el-button>
                <el-button type="primary" @click="selectUser">确 定</el-button>
            </span>
        </el-dialog>
    </div>
</template>
<script>
    export default{
    import ValueTable from '../../tool/value-table.vue'
    export default {
        components: {
            ValueTable
        },
        data() {
            return{
            return {
                template: null,
                templates: [],
                addObj: {
                    entrustCode: null,
                    sampleCode: null,
                    custom: null,
                    company: null,
                    userId: null,
                    type: '0',
                    code: null,
                    laboratory: null,
                    appointedTime: null,
                    sample: null,
                    sampleType: null,
                    sampleNum: null,
                    model: null,
                    isLeave: 0,
                    leaveNum: null,
                    remark: null,
                    otcCode: null
                },
                type: [],
                selectUserDia: false,
                componentData2: {
                    entity: {
                        orderBy: {
                            field: 'id',
                            order: 'asc'
                        }
                    },
                    isIndex: true,
                    showSelect: true,
                    select: false,
                    do: [],
                    tagField: {
                        state: {
                            select: [{
                                value: 1,
                                type: 'success',
                                label: '启用'
                            }, {
                                value: 0,
                                type: 'danger',
                                label: '停用'
                            }]
                        }
                    },
                    selectField: {},
                }
            }
        },
        mounted() {
            this.selectEnumByCategoryForType()
        },
        methods:{
            selectEnumByCategoryForType() {
                this.$axios.post(this.$api.enums.selectEnumByCategory, {
                    category: "紧急程度"
                }).then(res => {
                    this.type = res.data
                })
            },
            selectUser() {
                let selects = this.$refs.ValueTable2.multipleSelection
                if (selects.length == 0) {
                    this.$message.error('未选择数据')
                    return
                }
                delete selects['orderBy']
                delete selects['updateUser']
                delete selects['updateTime']
                this.addObj.userId = selects.id
                this.addObj.company = selects.company
                this.addObj.custom = selects.name
                this.addObj.code = selects.code
                this.selectUserDia = false
            },
            save(){
                console.log(this.addObj);
            }
        }
    }
src/components/view/b1-inspection-order.vue
@@ -75,7 +75,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(1)">下单</el-button>
                    </el-col>
                </el-row>
            </div>
@@ -423,8 +423,8 @@
                })
            },
            // 下单
            playOrder() {
                this.active = 1
            playOrder(num) {
                this.active = num
            },
            handleTab(m, i) {
                this.tabIndex = i;
src/view/index.vue
@@ -281,7 +281,7 @@
                    <i :class="a.i"></i>
                    <div>{{a.v}}</div>
                </div>
                <el-popover placement="right-start" trigger="click" v-if="a.self != true && getPower(a.p)">
                <el-popover ref="popoverName" placement="right-start" trigger="click" v-if="a.self != true && getPower(a.p)">
                    <div :class="`box ${activeBox == a.k ? 'active_box' : ''}`" slot="reference">
                        <i :class="a.i"></i>
                        <div style="text-align: center;">{{ a.v }}</div>
@@ -298,7 +298,6 @@
                            </el-col>
                        </div>
                    </div>
                </el-popover>
                </el-popover>
            </div>
        </div>
@@ -416,6 +415,9 @@
                    if (ob.u == "") ob.u = "nullFace"
                    this.tabs.push(ob);
                }
                this.$refs['popoverName'].forEach(a=>{
                    a.doClose()
                })
                this.saveClick()
            },
            removeTab(index) {
static/js/menu.js
@@ -64,7 +64,7 @@
        c: [{
            v: "工时管理",
            i: "font icon-erjidaohang",
            u: "fans-submit",
            u: "",
            p: ""
        }, {
            v: "人员考勤",