Browse Source

fix:[资源库管理][麻精药发放记录]

lkf
15881625488@163.com 3 months ago
parent
commit
f65a1f29b7
26 changed files with 4594 additions and 0 deletions
  1. +66
    -0
      src/api/business/mjy/mjyFfjl.js
  2. +156
    -0
      src/views/business/resource/mjy/comps/ffjl/Gd.vue
  3. +144
    -0
      src/views/business/resource/mjy/comps/ffjl/Jd.vue
  4. +123
    -0
      src/views/business/resource/mjy/comps/ffjl/Js.vue
  5. +157
    -0
      src/views/business/resource/mjy/comps/ffjl/Jy.vue
  6. +156
    -0
      src/views/business/resource/mjy/comps/ffjl/Sd.vue
  7. +56
    -0
      src/views/business/resource/mjy/comps/ffjl/SelectList.vue
  8. +310
    -0
      src/views/business/resource/mjy/comps/ffjlList.vue
  9. +196
    -0
      src/views/business/resource/mjy/comps/mjy/Bj.vue
  10. +272
    -0
      src/views/business/resource/mjy/comps/mjy/Czrq.vue
  11. +295
    -0
      src/views/business/resource/mjy/comps/mjy/Czyj.vue
  12. +363
    -0
      src/views/business/resource/mjy/comps/mjy/Ff.vue
  13. +156
    -0
      src/views/business/resource/mjy/comps/mjy/Gd.vue
  14. +129
    -0
      src/views/business/resource/mjy/comps/mjy/Gh.vue
  15. +157
    -0
      src/views/business/resource/mjy/comps/mjy/Jd.vue
  16. +123
    -0
      src/views/business/resource/mjy/comps/mjy/Js.vue
  17. +157
    -0
      src/views/business/resource/mjy/comps/mjy/Jy.vue
  18. +156
    -0
      src/views/business/resource/mjy/comps/mjy/Sd.vue
  19. +38
    -0
      src/views/business/resource/mjy/comps/mjy/SelectList.vue
  20. +223
    -0
      src/views/business/resource/mjy/comps/mjy/Shbj.vue
  21. +167
    -0
      src/views/business/resource/mjy/comps/mjy/Shxgkc.vue
  22. +145
    -0
      src/views/business/resource/mjy/comps/mjy/Xgkc.vue
  23. +168
    -0
      src/views/business/resource/mjy/comps/mjy/Xq.vue
  24. +217
    -0
      src/views/business/resource/mjy/comps/mjy/Ysff.vue
  25. +426
    -0
      src/views/business/resource/mjy/comps/mjyList.vue
  26. +38
    -0
      src/views/business/resource/mjy/index.vue

+ 66
- 0
src/api/business/mjy/mjyFfjl.js View File

@ -0,0 +1,66 @@
import request from '@/utils/request'
// 查询麻精药发放记录列表
export function list(query) {
return request({
url: '/system/business/mjyFfjl/list',
method: 'get',
params: query
})
}
// 解锁
export function js(data) {
return request({
url: '/system/business/mjyFfjl/js',
method: 'post',
data: data
})
}
// 锁定
export function sd(data) {
return request({
url: '/system/business/mjyFfjl/sd',
method: 'post',
data: data
})
}
// 锁定
export function plsd(data) {
return request({
url: '/system/business/mjyFfjl/plsd',
method: 'post',
data: data
})
}
//归档
export function gd(data) {
return request({
url: '/system/business/mjyFfjl/gd',
method: 'post',
data: data
})
}
//解档
export function jd(data) {
return request({
url: '/system/business/mjyFfjl/jd',
method: 'post',
data: data
})
}
//借阅
export function jy(data) {
return request({
url: '/system/business/mjyFfjl/jy',
method: 'post',
data: data
})
}
//归档
export function plgd(data) {
return request({
url: '/system/business/mjyFfjl/plgd',
method: 'post',
data: data
})
}

+ 156
- 0
src/views/business/resource/mjy/comps/ffjl/Gd.vue View File

@ -0,0 +1,156 @@
G<template>
<div>
<!-- 归档弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.guidang')" :visible.sync="open" width="500px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div v-show="isBatch">
<el-row style="margin:10px 0px;">
<el-col :span="24">
<SelectList :value="selectList" />
</el-col>
</el-row>
</div>
<div v-show="!isBatch">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { gd, plgd } from "@/api/business/mjy/mjyFfjl"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Gd",
components: { SelectList },
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
this.selectList = val
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '申请归档',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isBatch) {
plgd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
} else {
gd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 144
- 0
src/views/business/resource/mjy/comps/ffjl/Jd.vue View File

@ -0,0 +1,144 @@
G<template>
<div >
<!-- 解档弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.jiedang')" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { jd, jdBatch } from "@/api/business/mjy/mjyFfjl"
import { mapGetters } from 'vuex'
export default {
name: "Jd",
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
this.selectList = val
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '申请解档',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isBatch) {
jdBatch(this.form).then(response => {
this.open = false
this.$emit('callback')
})
} else {
jd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 123
- 0
src/views/business/resource/mjy/comps/ffjl/Js.vue View File

@ -0,0 +1,123 @@
G<template>
<div >
<!-- 解锁弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.unlock')" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { js } from "@/api/business/mjy/mjyFfjl"
import { mapGetters } from 'vuex'
export default {
name: "Js",
data() {
return {
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '解锁发放记录',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
js(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
})
}
}
}
</script>

+ 157
- 0
src/views/business/resource/mjy/comps/ffjl/Jy.vue View File

@ -0,0 +1,157 @@
G<template>
<div >
<!-- 借阅弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.jieyue')" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div :style="isBatch ? 'display:block' : 'display:none'">
<el-alert :title="$t('page.business.zykgl.mjy.jdts') " type="error" :closable="false">
</el-alert>
<el-row style="margin:10px 0px;">
<el-col :span="24">
<SelectList :value="selectList"/>
</el-col>
</el-row>
</div>
<div v-if="!isBatch">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { jd, jdBatch } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Jy",
components: { SelectList },
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
this.selectList = val
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '申请借阅',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isBatch) {
jdBatch(this.form).then(response => {
this.open = false
this.$emit('callback')
})
} else {
jd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 156
- 0
src/views/business/resource/mjy/comps/ffjl/Sd.vue View File

@ -0,0 +1,156 @@
G<template>
<div>
<!-- 锁定弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.lock')" :visible.sync="open" width="500px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div :style="isBatch ? 'display:block' : 'display:none'">
<el-row style="margin:10px 0px;">
<el-col :span="24">
<SelectList :value="selectList" />
</el-col>
</el-row>
</div>
<div v-if="!isBatch">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { sd, plsd } from "@/api/business/mjy/mjyFfjl"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Sd",
components: { SelectList },
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
this.selectList = val
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '锁定发放记录',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isBatch) {
plsd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
} else {
sd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 56
- 0
src/views/business/resource/mjy/comps/ffjl/SelectList.vue View File

@ -0,0 +1,56 @@
G<template>
<div class="app-container">
<el-table :data="selectList" border>
<el-table-column :label="$t('page.business.zykgl.mjy.mc')" align="left" prop="mc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.bh')" align="center" prop="bh"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.jlzt')" align="center" width="100px" fixed="right">
<template slot-scope="scope">
<span v-if="scope.row.jlzt == 1">{{ $t('page.business.zykgl.jlzt.wsd') }}</span>
<span v-if="scope.row.jlzt == 3">{{ $t('page.business.zykgl.jlzt.ysd') }}</span>
<span v-if="scope.row.jlzt == 5">{{ $t('page.business.zykgl.jlzt.dgd') }}</span>
<span v-if="scope.row.jlzt == 7">{{ $t('page.business.zykgl.jlzt.gd') }}</span>
<span v-if="scope.row.jlzt == 9">{{ $t('page.business.zykgl.jlzt.djd') }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.jyzt')" align="center" width="100px" fixed="right">
<template slot-scope="scope">
<span v-if="scope.row.jyzt == 1">{{ $t('page.business.zykgl.jyzt.wjy') }}</span>
<span v-if="scope.row.jyzt == 3">{{ $t('page.business.zykgl.jyzt.djy') }}</span>
<span v-if="scope.row.jyzt == 5">{{ $t('page.business.zykgl.jyzt.jyz') }}</span>
</template>
</el-table-column>
</el-table>
</div>
</template>
<script>
export default {
name: "SelectList",
data() {
return {
selectList: []
}
},
props: {
value: {
type: Array,
default: () => []
}
},
watch: {
value: {
immediate: true,
handler(v) {
this.selectList = v || []
}
},
},
created() {
},
methods: {
}
}
</script>

+ 310
- 0
src/views/business/resource/mjy/comps/ffjlList.vue View File

@ -0,0 +1,310 @@
<template>
<div>
<!-- 列表 -->
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" class="search-area" size="small" :inline="true" label-width="88px">
<el-row>
<el-col :span="24">
<!-- 名称 -->
<el-form-item :label="$t('page.business.zykgl.mjy.mc') + ':'">
<el-input v-model="queryParams.mc" clearable @change="handleQuery"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
<!-- 编号 -->
<el-form-item :label="$t('page.business.zykgl.mjy.bh') + ':'">
<el-input v-model="queryParams.bh" clearable @change="handleQuery"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
<!-- 目的 -->
<el-form-item :label="$t('page.business.zykgl.mjy.md') + ':'">
<el-input v-model="queryParams.mdId" clearable @change="handleQuery"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
<!-- 记录状态 -->
<el-form-item :label="$t('page.business.zykgl.mjy.jlzt') + ':'">
<el-select v-model="queryParams.jlzt" :placeholder="$t('form.placeholderSelect')" clearable
@change="handleQuery">
<el-option key="1" :label="$t('page.business.zykgl.jlzt.wsd')" :value="1" />
<el-option key="3" :label="$t('page.business.zykgl.jlzt.ysd')" :value="3" />
<el-option key="5" :label="$t('page.business.zykgl.jlzt.dgd')" :value="5" />
<el-option key="7" :label="$t('page.business.zykgl.jlzt.gd')" :value="7" />
<el-option key="9" :label="$t('page.business.zykgl.jlzt.djd')" :value="9" />
</el-select>
</el-form-item>
<!-- 借阅状态 -->
<el-form-item :label="$t('page.business.zykgl.mjy.jyzt') + ':'">
<el-select v-model="queryParams.jyzt" :placeholder="$t('form.placeholderSelect')" clearable
@change="handleQuery">
<el-option key="1" :label="$t('page.business.zykgl.jyzt.wjy')" :value="1" />
<el-option key="3" :label="$t('page.business.zykgl.jyzt.djy')" :value="3" />
<el-option key="5" :label="$t('page.business.zykgl.jyzt.jyz')" :value="5" />
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{ $t('form.search') }}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{ $t('form.reset') }}</el-button>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<!-- 出库日期 -->
<el-form-item :label="$t('page.business.zykgl.mjy.cksj') + ':'">
<el-date-picker v-model="daterangeCk" class="chat-histogram-daterange" type="daterange"
range-separator="-" :start-placeholder="$t('form.startDate')" :end-placeholder="$t('form.endDate')"
value-format="yyyy-MM-dd" @change="handleQuery" style="width: 250px;" />
</el-form-item>
<!-- 入库日期 -->
<el-form-item :label="$t('page.business.zykgl.mjy.rksj') + ':'">
<el-date-picker v-model="daterangeRk" class="chat-histogram-daterange" type="daterange"
range-separator="-" :start-placeholder="$t('form.startDate')" :end-placeholder="$t('form.endDate')"
value-format="yyyy-MM-dd" @change="handleQuery" style="width: 250px;" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<!-- 批量归档 -->
<el-button type="primary" :disabled="multiple" @click="handlePlgd"
v-hasPermi="['business:resource:mjy:ffjlgd']">{{
$t('page.business.zykgl.mjy.plgd') }}</el-button>
</el-col>
<el-col :span="1.5">
<!-- 批量锁定 -->
<el-button type="primary" :disabled="multiple" @click="handlePlsd"
v-hasPermi="['business:resource:mjy:ffjlsd']">{{
$t('page.business.zykgl.mjy.plsd') }}</el-button>
</el-col>
<el-col :span="1.5">
<!-- 导出 -->
<el-button type="primary" :disabled="multiple" @click="handleDc"
v-hasPermi="['business:resource:mjy:ffjldc']">{{
$t('form.export') }}</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" :selectable="checkSelectable" />
<el-table-column :label="$t('page.business.zykgl.mjy.mc')" align="left" prop="mc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.bh')" align="center" prop="bh"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.md')" align="center" prop="mdMc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.zytj')" align="center" prop="zytj"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.cksj')" align="center" prop="ffrq" width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.rksj')" align="center" prop="ghrq" width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.ckjz')" align="center" width="150px">
<template slot-scope="scope">
{{ scope.row.ckl }} {{ scope.row.ckldw }}
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.rkjz')" align="center" width="150px">
<template slot-scope="scope">
{{ scope.row.rkl }} {{ scope.row.rkldw }}
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.syl')" align="center" width="150px">
<template slot-scope="scope">
{{ scope.row.syl }} {{ scope.row.syldw }}
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.lqr1')" align="center" prop="lqr1Mc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.lqr2')" align="center" prop="lqr2Mc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.kgy1')" align="center" prop="kgy1Mc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.kgy2')" align="center" prop="kgy2Mc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.zcg')" align="center" prop="zcgMc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.jlzt')" align="center" width="100px" fixed="right">
<template slot-scope="scope">
<span v-if="scope.row.jlzt == 1">{{ $t('page.business.zykgl.jlzt.wsd') }}</span>
<span v-if="scope.row.jlzt == 3">{{ $t('page.business.zykgl.jlzt.ysd') }}</span>
<span v-if="scope.row.jlzt == 5">{{ $t('page.business.zykgl.jlzt.dgd') }}</span>
<span v-if="scope.row.jlzt == 7">{{ $t('page.business.zykgl.jlzt.gd') }}</span>
<span v-if="scope.row.jlzt == 9">{{ $t('page.business.zykgl.jlzt.djd') }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.jyzt')" align="center" width="100px" fixed="right">
<template slot-scope="scope">
<span v-if="scope.row.jyzt == 1">{{ $t('page.business.zykgl.jyzt.wjy') }}</span>
<span v-if="scope.row.jyzt == 3">{{ $t('page.business.zykgl.jyzt.djy') }}</span>
<span v-if="scope.row.jyzt == 5">{{ $t('page.business.zykgl.jyzt.jyz') }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('form.operate')" fixed="right" align="center" class-name="small-padding fixed-width"
width="250px">
<template slot-scope="scope">
<template v-if="scope.row.jlzt == 1||scope.row.jlzt == 3||scope.row.jlzt == 7">
<!-- 详情 -->
<el-button size="mini" type="text" @click="handleXq(scope.row)"
v-hasPermi="['business:resource:mjy:ffjlList']">{{
$t('page.business.zykgl.mjy.detail') }}</el-button>
</template>
<template v-if="scope.row.zjzt == 9"></template>
<template v-if="scope.row.zjzt == 9"></template>
<!-- 锁定 -->
<el-button size="mini" type="text" v-if="scope.row.jlzt == 1" @click="handleSd(scope.row)"
v-hasPermi="['business:resource:mjy:ffjlsd']">{{
$t('page.business.zykgl.mjy.lock') }}</el-button>
<!-- 解锁 -->
<el-button size="mini" type="text" v-if="scope.row.jlzt == 3" @click="handleJs(scope.row)"
v-hasPermi="['business:resource:mjy:ffjljs']">{{
$t('page.business.zykgl.mjy.unlock') }}</el-button>
<!-- 归档 -->
<el-button size="mini" type="text" v-if="scope.row.jlzt == 3" @click="handleGd(scope.row)"
v-hasPermi="['business:resource:mjy:ffjlgd']">{{
$t('page.business.zykgl.mjy.guidang') }}</el-button>
<!-- 解档 -->
<el-button size="mini" type="text" v-if="scope.row.jlzt == 7" @click="handleJd(scope.row)"
v-hasPermi="['business:resource:mjy:ffjljd']">{{
$t('page.business.zykgl.mjy.jiedang') }}</el-button>
<!-- 借阅 -->
<el-button size="mini" type="text" v-if="scope.row.jyzt == 1" @click="handleJy(scope.row)"
v-hasPermi="['business:resource:mjy:ffjljy']">{{
$t('page.business.zykgl.mjy.jieyue') }}</el-button>
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" />
<!-- 锁定 -->
<Sd ref="Sd" @callback="handleQuery" />
<!-- 解锁 -->
<Js ref="Js" @callback="handleQuery" />
<!-- 归档 -->
<Gd ref="Gd" @callback="handleQuery" />
<!-- 解档 -->
<Jd ref="Jd" @callback="handleQuery" />
<!-- 借阅 -->
<Jy ref="Jy" @callback="handleQuery" />
</div>
</div>
</template>
<script>
import { list } from "@/api/business/mjy/mjyFfjl"
import Sd from "./ffjl/Sd";
import Jy from "./ffjl/Jy";
import Js from "./ffjl/Js";
import Gd from "./ffjl/Gd";
import Jd from "./ffjl/Jd";
export default {
name: "FfjlList",
components: { Sd, Js, Gd, Jd, Jy },
data() {
return {
daterangeCk: [],
daterangeRk: [],
loading: true,
single: true,
multiple: true,
total: 0,
list: [],
//
selectList: [],
//
queryParams: {
pageNum: 1,
pageSize: 10,
mc: null,
mdId: null,
jlzt: null,
jyzt: null,
bh: null,
startDateCk: null,
endDateCk: null,
startDateRk: null,
endDateRk: null,
},
}
},
created() {
this.getList()
},
methods: {
//
handleDc() {
},
//
handleSd(row) {
this.$refs.Sd.show(row)
},
//
handleJs(row) {
this.$refs.Js.show(row)
},
//
handlePlgd() {
this.$refs.Gd.showBatch(this.selectList)
},
//
handlePlsd() {
this.$refs.Sd.showBatch(this.selectList)
},
//
handleGd(row) {
this.$refs.Gd.show(row)
},
//
handleJy(row) {
this.$refs.Jy.show(row)
},
//
handleJd(row) {
this.$refs.Jd.show(row)
},
//
checkSelectable(row) {
return true;
},
//
getList() {
if (this.daterangeCk != null && this.daterangeCk.length > 0) {
this.queryParams.startDateCk = this.daterangeCk[0]
this.queryParams.endDateCk = moment().add(this.daterangeCk[1], 'days').format('YYYY-MM-DD');
} else {
this.queryParams.startDateCk = ''
this.queryParams.endDateCk = ''
}
if (this.daterangeRk != null && this.daterangeRk.length > 0) {
this.queryParams.startDateRk = this.daterangeRk[0]
this.queryParams.endDateRk = moment().add(this.daterangeRk[1], 'days').format('YYYY-MM-DD');
} else {
this.queryParams.startDateRk = ''
this.queryParams.endDateRk = ''
}
this.loading = true
list(this.queryParams).then(response => {
this.list = response.rows
this.total = response.total
this.loading = false
})
},
//
handleQuery() {
this.queryParams.pageNum = 1
this.getList()
},
//
resetQuery() {
this.resetForm("queryForm")
this.handleQuery()
},
//
handleSelectionChange(selection) {
this.single = selection.length !== 1
this.multiple = !selection.length
this.selectList = selection
}
}
}
</script>

+ 196
- 0
src/views/business/resource/mjy/comps/mjy/Bj.vue View File

@ -0,0 +1,196 @@
G<template>
<div>
<!-- 编辑弹窗 -->
<el-dialog :title="$t('form.edit')" :visible.sync="open" width="800px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.nd')" prop="nd">
<el-input type="number" v-model="form.nd" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.nddw')" prop="nddw">
<el-input type="text" v-model="form.nddw" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.sxrq')" prop="sxrq">
<el-input type="text" v-model="form.sxrq" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.cctj')" prop="cctj">
<el-input type="text" v-model="form.cctj" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.ccwz')" prop="ccwz">
<el-input type="text" v-model="form.ccwz" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="qmrmm">
<el-input type="password" v-model="form.qmrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="bjbz">
<el-input type="textarea" v-model="form.bjbz" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { bj } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Bj",
components: { SelectList },
data() {
return {
open: false,
form: {},
rules: {
mc: [{
required: true,
message: ' ',
trigger: 'blur'
}],
bh: [{
required: true,
message: ' ',
trigger: 'blur'
}],
nd: [{
required: true,
message: ' ',
trigger: 'blur'
}],
nddw: [{
required: true,
message: ' ',
trigger: 'blur'
}],
sxrq: [{
required: true,
message: ' ',
trigger: 'blur'
}],
cctj: [{
required: true,
message: ' ',
trigger: 'blur'
}],
ccwz: [{
required: true,
message: ' ',
trigger: 'blur'
}],
qmrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
mc: null,
bh: null,
nd: null,
nddw: null,
sxrq: null,
cctj: null,
ccwz: null,
qmrmm: null,
qmyy: '编辑',
bjbz: ''
}
this.resetForm("form")
},
show(row) {
this.reset()
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.form.nd = row.nd
this.form.nddw = row.nddw
this.form.sxrq= row.sxrq
this.form.cctj = row.cctj
this.form.ccwz = row.ccwz
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
bj(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
})
}
}
}
</script>

+ 272
- 0
src/views/business/resource/mjy/comps/mjy/Czrq.vue View File

@ -0,0 +1,272 @@
G<template>
<div>
<!-- 处置容器弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.czrq')" :visible.sync="open" width="1200px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div :style="isBatch?'display:block':'display:none'">
<el-row style="margin:10px 0px;">
<el-col :span="24">
<el-table :data="selectList" border>
<el-table-column :label="$t('page.business.zykgl.mjy.mc')" align="left" prop="mc"
:show-overflow-tooltip="true" width="120px" />
<el-table-column :label="$t('page.business.zykgl.mjy.bh')" align="left" prop="bh"
:show-overflow-tooltip="true" width="120px" />
<el-table-column :label="$t('page.business.zykgl.mjy.czfs')" align="center" width="250px">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.czfs" maxlength="50"
:placeholder="$t('form.placeholderInput')" />
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.yuanyin')" align="center">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.czyy" maxlength="50"
:placeholder="$t('form.placeholderInput')" />
</template>
</el-table-column>
<el-table-column :label="$t('form.operate')" align="center" width="150px">
<template slot-scope="scope">
<el-button size="mini" type="text" @click="handleSc(scope.row)">{{
$t('form.delete') }}</el-button>
</template>
</el-table-column>
</el-table>
</el-col>
</el-row>
</div>
<div v-if="!isBatch">
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.czfs')" prop="czfs">
<el-input type="text" v-model="form.czfs" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.yuanyin')" prop="czyy">
<el-input type="textarea" v-model="form.czyy" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.clr')">
<el-input type="text" v-model="nickName" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="clrmm">
<el-input type="password" v-model="form.clrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.fhr')" prop="fhrId">
<el-input type="text" v-model="form.fhrId" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="fhrmm">
<el-input type="password" v-model="form.fhrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.jdr')" prop="jdrId">
<el-input type="text" v-model="form.jdrId" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="jdrmm">
<el-input type="password" v-model="form.jdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" v-model="form.qmyy" maxlength="20" disabled />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { czrq, plczrq } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
export default {
name: "Bj",
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
czyy: [{
required: true,
message: ' ',
trigger: 'blur'
}],
czfs: [{
required: true,
message: ' ',
trigger: 'blur'
}],
clrId: [{
required: true,
message: ' ',
trigger: 'blur'
}],
fhrId: [{
required: true,
message: ' ',
trigger: 'blur'
}],
jdrId: [{
required: true,
message: ' ',
trigger: 'blur'
}],
clrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
fhrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
jdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
handleSc(row) {
const that = this
this.$modal.confirm(this.$t('form.confirmDelete')).then(function () {
return delDept(row.deptId)
}).then(() => {
const _index = _.findIndex(that.selectList, function (o) { return o.id === row.id })
if (_index > -1) {
that.selectList.splice(_index, 1)
that.form.ids = that.selectList.map(item => item.id)
}
}).catch(() => { })
},
showBatch(val) {
this.reset()
this.isBatch = true
this.selectList = []
this.form.ids = val.map(item => item.id)
let tmp = []
_.forEach(val, function (item) {
tmp.push({
id: item.id,
mc: item.mc,
bh: item.bh,
czyy: null,
czfs: null,
})
})
this.selectList = tmp
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: [],
mc: null,
bh: null,
czyy: null,
czfs: null,
clrId: null,
fhrId: null,
jdrId: null,
qmyy: '处置容器',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
let params = this.form
if (this.isBatch) {
params.list = this.selectList
if (this.selectList.length <= 0) {
this.$modal.msgError("请选择要操作的麻精药")
} else {
plczrq(params).then(response => {
this.open = false
this.$emit('callback')
})
}
} else {
czrq(params).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 295
- 0
src/views/business/resource/mjy/comps/mjy/Czyj.vue View File

@ -0,0 +1,295 @@
G<template>
<div>
<!-- 处置药剂弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.czyj')" :visible.sync="open" width="1200px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div :style="isBatch?'display:block':'display:none'">
<el-row style="margin:10px 0px;">
<el-col :span="24">
<el-table :data="selectList" border>
<el-table-column :label="$t('page.business.zykgl.mjy.mc')" align="left" prop="mc"
:show-overflow-tooltip="true" width="120px" />
<el-table-column :label="$t('page.business.zykgl.mjy.bh')" align="left" prop="bh"
:show-overflow-tooltip="true" width="120px" />
<el-table-column :label="$t('page.business.zykgl.mjy.czfs')" align="center" width="250px">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.czfs" maxlength="50"
:placeholder="$t('form.placeholderInput')" />
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.yuanyin')" align="center">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.czyy" maxlength="50"
:placeholder="$t('form.placeholderInput')" />
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.czl')" align="center">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.czl" maxlength="50"
:placeholder="$t('form.placeholderInput')"> <template slot="append">{{ scope.row.kcdw }}</template>
</el-input>
</template>
</el-table-column>
<el-table-column :label="$t('form.operate')" align="center" width="150px">
<template slot-scope="scope">
<el-button size="mini" type="text" @click="handleSc(scope.row)">{{
$t('form.delete') }}</el-button>
</template>
</el-table-column>
</el-table>
</el-col>
</el-row>
</div>
<div v-if="!isBatch">
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.czfs')" prop="czfs">
<el-input type="text" v-model="form.czfs" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.czl')" prop="czl">
<el-input-number type="text" v-model="form.czl" maxlength="50" :placeholder="$t('form.placeholderInput')" > <template slot="append">{{ form.kcdw }}</template>
</el-input-number>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.yuanyin')" prop="czyy">
<el-input type="textarea" v-model="form.czyy" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.clr')">
<el-input type="text" v-model="nickName" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="clrmm">
<el-input type="password" v-model="form.clrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.fhr')" prop="fhrId">
<el-input type="text" v-model="form.fhrId" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="fhrmm">
<el-input type="password" v-model="form.fhrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.jdr')" prop="jdrId">
<el-input type="text" v-model="form.jdrId" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="jdrmm">
<el-input type="password" v-model="form.jdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" v-model="form.qmyy" maxlength="20" disabled />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { czyj, plczyj } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
export default {
name: "Czyj",
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
czyy: [{
required: true,
message: ' ',
trigger: 'blur'
}],
czfs: [{
required: true,
message: ' ',
trigger: 'blur'
}],
czl: [{
required: true,
message: ' ',
trigger: 'blur'
}],
clrId: [{
required: true,
message: ' ',
trigger: 'blur'
}],
fhrId: [{
required: true,
message: ' ',
trigger: 'blur'
}],
jdrId: [{
required: true,
message: ' ',
trigger: 'blur'
}],
clrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
fhrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
jdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
handleSc(row) {
const that = this
this.$modal.confirm(this.$t('form.confirmDelete')).then(function () {
return delDept(row.deptId)
}).then(() => {
const _index = _.findIndex(that.selectList, function (o) { return o.id === row.id })
if (_index > -1) {
that.selectList.splice(_index, 1)
that.form.ids = that.selectList.map(item => item.id)
}
}).catch(() => { })
},
showBatch(val) {
this.reset()
this.isBatch = true
this.selectList = []
this.form.ids = val.map(item => item.id)
let tmp = []
_.forEach(val, function (item) {
tmp.push({
id: item.id,
mc: item.mc,
bh: item.bh,
kcdw: item.kcdw,
czyy: null,
czl: null,
czfs: null,
})
})
this.selectList = tmp
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
czyy: null,
kcdw: null,
czfs: null,
clrId: null,
fhrId: null,
jdrId: null,
czl: null,
qmyy: '处置药剂',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.form.kcdw = row.kcdw
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
let params = this.form
if (this.isBatch) {
params.list = this.selectList
if (this.selectList.length <= 0) {
this.$modal.msgError("请选择要操作的麻精药")
} else {
plczyj(params).then(response => {
this.open = false
this.$emit('callback')
})
}
} else {
czyj(params).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 363
- 0
src/views/business/resource/mjy/comps/mjy/Ff.vue View File

@ -0,0 +1,363 @@
G<template>
<div>
<!-- 发放弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.fafang')" :visible.sync="open" width="1200px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div :style="isBatch ? 'display:block' : 'display:none'">
<el-row style="margin:10px 0px;">
<el-col :span="24">
<el-table :data="selectList" border>
<el-table-column :label="$t('page.business.zykgl.mjy.mc')" align="left" prop="mc"
:show-overflow-tooltip="true" width="120px" />
<el-table-column :label="$t('page.business.zykgl.mjy.bh')" align="left" prop="bh"
:show-overflow-tooltip="true" width="120px" />
<el-table-column :label="$t('page.business.zykgl.mjy.zytj')" align="center" width="250px">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.zytj" maxlength="50"
:placeholder="$t('form.placeholderInput')" />
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.ckmz')" align="center" width="250px">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.ckmz" maxlength="50"
:placeholder="$t('form.placeholderInput')"><template slot="append">{{ scope.row.ckmzdw }}</template>
</el-input>
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.md')" align="center" width="250px">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.xmId" maxlength="50"
:placeholder="$t('form.placeholderInput')" />
</template>
</el-table-column>
<el-table-column :label="$t('form.remark')" align="center" width="250px">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.remark" maxlength="50"
:placeholder="$t('form.placeholderInput')" />
</template>
</el-table-column>
<el-table-column :label="$t('form.operate')" align="center" width="100px" fixed="right">
<template slot-scope="scope">
<el-button size="mini" type="text" @click="handleSc(scope.row)">{{
$t('form.delete') }}</el-button>
</template>
</el-table-column>
</el-table>
</el-col>
</el-row>
</div>
<div v-if="!isBatch">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.zytj')" prop="zytj">
<el-input type="text" v-model="form.zytj" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.ckmz')" prop="ckmz">
<el-input type="number" v-model="form.ckmz" maxlength="20" :placeholder="$t('form.placeholderInput')">
<template slot="append">{{ form.ckmzdw }}</template>
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.md')" prop="xmId">
<el-input type="text" v-model="form.xmId" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.lqr1')" prop="lqr1Id">
<el-input type="text" v-model="form.lqr1Id" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="lqr1mm">
<el-input type="password" v-model="form.lqr1mm" maxlength="20"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.lqr2')" prop="lqr2Id">
<el-input type="text" v-model="form.lqr2Id" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="lqr2mm">
<el-input type="password" v-model="form.lqr2mm" maxlength="20"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.ffr1')" prop="ffr1Id">
<el-input type="text" v-model="form.ffr1Id" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="ffr1mm">
<el-input type="password" v-model="form.ffr1mm" maxlength="20"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.ffr2')" prop="ffr2Id">
<el-input type="text" v-model="form.ffr2Id" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="ffr2mm">
<el-input type="password" v-model="form.ffr2mm" maxlength="20"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { ff, plff } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Ff",
components: { SelectList },
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
ffr2mm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
ffr2Id: [{
required: true,
message: ' ',
trigger: 'blur'
}],
ffr1mm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
ffr1Id: [{
required: true,
message: ' ',
trigger: 'blur'
}],
lqr2mm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
lqr1mm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
lqr2Id: [{
required: true,
message: ' ',
trigger: 'blur'
}],
lqr1Id: [{
required: true,
message: ' ',
trigger: 'blur'
}],
xmId: [{
required: true,
message: ' ',
trigger: 'blur'
}],
ckmzdw: [{
required: true,
message: ' ',
trigger: 'blur'
}],
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
ckmz: [{
required: true,
message: ' ',
trigger: 'blur'
}],
xmId: [{
required: true,
message: ' ',
trigger: 'blur'
}],
zytj: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
handleSc(row) {
const that = this
this.$modal.confirm(this.$t('form.confirmDelete')).then(function () {
return delDept(row.deptId)
}).then(() => {
const _index = _.findIndex(that.selectList, function (o) { return o.id === row.id })
if (_index > -1) {
that.selectList.splice(_index, 1)
that.form.ids = that.selectList.map(item => item.id)
}
}).catch(() => { })
},
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
let tmp = []
_.forEach(val, function (item) {
tmp.push({
id: item.id,
mc: item.mc,
bh: item.bh,
ckmzdw: item.kcdw,
zytj: null,
ckmz: null,
xmId: null,
remark: null,
})
})
this.selectList = tmp
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
ckmzdw: null,
zytj: null,
xmId: null,
ckmz: null,
lqr1Id: null,
lqr2Id: null,
lqr1mm: null,
lqr2mm: null,
ffr1Id: null,
ffr1mm: null,
ffr2Id: null,
ffr2mm: null,
xmId: null,
qmyy: '领取发放',
sdrmm: null,
remark: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.form.ckmzdw = row.kcdw
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
let params = this.form
if (this.isBatch) {
params.list = this.selectList
if (this.selectList.length <= 0) {
this.$modal.msgError("请选择要操作的麻精药")
} else {
plff(params).then(response => {
this.open = false
this.$emit('callback')
})
}
} else {
ff(params).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 156
- 0
src/views/business/resource/mjy/comps/mjy/Gd.vue View File

@ -0,0 +1,156 @@
G<template>
<div>
<!-- 归档弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.guidang')" :visible.sync="open" width="500px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div :style="isBatch ? 'display:block' : 'display:none'">
<el-row style="margin:10px 0px;">
<el-col :span="24">
<SelectList :value="selectList" />
</el-col>
</el-row>
</div>
<div v-if="!isBatch">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { gd, plgd } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Gd",
components: { SelectList },
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
this.selectList = val
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '申请归档',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isBatch) {
plgd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
} else {
gd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 129
- 0
src/views/business/resource/mjy/comps/mjy/Gh.vue View File

@ -0,0 +1,129 @@
G<template>
<div>
<!-- 归还弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.guihuan')" :visible.sync="open" width="500px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { gh } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
export default {
name: "Gh",
components: { },
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '归还',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
gh(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
})
}
}
}
</script>

+ 157
- 0
src/views/business/resource/mjy/comps/mjy/Jd.vue View File

@ -0,0 +1,157 @@
G<template>
<div >
<!-- 解档弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.jiedang')" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div :style="isBatch ? 'display:block' : 'display:none'">
<el-alert :title="$t('page.business.zykgl.mjy.jdts') " type="error" :closable="false">
</el-alert>
<el-row style="margin:10px 0px;">
<el-col :span="24">
<SelectList :value="selectList"/>
</el-col>
</el-row>
</div>
<div v-if="!isBatch">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { jd, jdBatch } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Jd",
components: { SelectList },
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
this.selectList = val
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '申请解档',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isBatch) {
jdBatch(this.form).then(response => {
this.open = false
this.$emit('callback')
})
} else {
jd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 123
- 0
src/views/business/resource/mjy/comps/mjy/Js.vue View File

@ -0,0 +1,123 @@
G<template>
<div >
<!-- 解锁弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.unlock')" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { js } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
export default {
name: "Js",
data() {
return {
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '解锁麻精药',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
js(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
})
}
}
}
</script>

+ 157
- 0
src/views/business/resource/mjy/comps/mjy/Jy.vue View File

@ -0,0 +1,157 @@
G<template>
<div >
<!-- 借阅弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.jieyue')" :visible.sync="open" width="500px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div :style="isBatch ? 'display:block' : 'display:none'">
<el-alert :title="$t('page.business.zykgl.mjy.jdts') " type="error" :closable="false">
</el-alert>
<el-row style="margin:10px 0px;">
<el-col :span="24">
<SelectList :value="selectList"/>
</el-col>
</el-row>
</div>
<div v-if="!isBatch">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { jd, jdBatch } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Jy",
components: { SelectList },
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
this.selectList = val
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '申请解档',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isBatch) {
jdBatch(this.form).then(response => {
this.open = false
this.$emit('callback')
})
} else {
jd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 156
- 0
src/views/business/resource/mjy/comps/mjy/Sd.vue View File

@ -0,0 +1,156 @@
G<template>
<div>
<!-- 锁定弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.lock')" :visible.sync="open" width="500px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div :style="isBatch ? 'display:block' : 'display:none'">
<el-row >
<el-col :span="24">
<SelectList :value="selectList" />
</el-col>
</el-row>
</div>
<div v-if="!isBatch">
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="sdrmm">
<el-input type="password" v-model="form.sdrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { sd, plsd } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Sd",
components: { SelectList },
data() {
return {
isBatch: false,
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
this.selectList = val
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
ids: null,
mc: null,
bh: null,
qmyy: '锁定麻精药',
sdrmm: null
}
this.resetForm("form")
},
show(row) {
this.reset()
this.isBatch = false
this.form.ids = []
this.selectList = []
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isBatch) {
plsd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
} else {
sd(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
}
})
}
}
}
</script>

+ 38
- 0
src/views/business/resource/mjy/comps/mjy/SelectList.vue View File

@ -0,0 +1,38 @@
G<template>
<div class="app-container">
<el-table :data="selectList" border>
<el-table-column :label="$t('page.business.zykgl.mjy.mc')" align="left" prop="mc" :show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.bh')" align="left" prop="bh" :show-overflow-tooltip="true" />
</el-table>
</div>
</template>
<script>
export default {
name: "SelectList",
data() {
return {
selectList: []
}
},
props: {
value: {
type: Array,
default: () => []
}
},
watch: {
value: {
immediate: true,
handler(v) {
this.selectList = v || []
}
},
},
created() {
},
methods: {
}
}
</script>

+ 223
- 0
src/views/business/resource/mjy/comps/mjy/Shbj.vue View File

@ -0,0 +1,223 @@
G<template>
<div>
<!-- 审核编辑弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.shbj')" :visible.sync="open" width="800px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mc">
<el-input type="text" v-model="form.mc" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.nd')" prop="nd">
<el-input type="text" v-model="form.nd" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.nddw')" prop="nddw">
<el-input type="text" v-model="form.nddw" maxlength="50" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.sxrq')" prop="sxrq">
<el-input type="text" v-model="form.sxrq" maxlength="50" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.cctj')" prop="cctj">
<el-input type="text" v-model="form.cctj" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.ccwz')" prop="ccwz">
<el-input type="text" v-model="form.ccwz" maxlength="50" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.xgr')">
<el-input type="text" v-model="form.bjrMc" disabled />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.xgbz')" prop="bjbz">
<el-input type="text" v-model="form.bjbz" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-select v-model="form.qmyy" :placeholder="$t('form.placeholderSelect')" >
<el-option label="同意编辑" :value="10" />
<el-option label="拒绝编辑" :value="1" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="qmrmm">
<el-input type="password" v-model="form.qmrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { shbj, info } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Shbj",
components: { SelectList },
data() {
return {
open: false,
form: {},
rules: {
qmyy: [{
required: true,
message: ' ',
trigger: 'blur'
}],
mc: [{
required: true,
message: ' ',
trigger: 'blur'
}],
bh: [{
required: true,
message: ' ',
trigger: 'blur'
}],
nd: [{
required: true,
message: ' ',
trigger: 'blur'
}],
nddw: [{
required: true,
message: ' ',
trigger: 'blur'
}],
sxrq: [{
required: true,
message: ' ',
trigger: 'blur'
}],
cctj: [{
required: true,
message: ' ',
trigger: 'blur'
}],
ccwz: [{
required: true,
message: ' ',
trigger: 'blur'
}],
qmrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
mc: null,
bh: null,
nd: null,
nddw: null,
sxrq: null,
cctj: null,
ccwz: null,
qmrmm: null,
bjrMc: null,
bjbz: null,
qmyy: '同意编辑',
remark: ''
}
this.resetForm("form")
},
show(row) {
this.reset()
this.$modal.loading()
info({ id: row.id }).then(response => {
this.form.id = response.data.id
this.form.mc = response.data.mcbj
this.form.bh = response.data.bh
this.form.nd = response.data.ndbj
this.form.nddw = response.data.nddwbj
this.form.sxrq = response.data.sxrqbj
this.form.cctj = response.data.cctjbj
this.form.ccwz = response.data.ccwzbj
this.form.bjbz = response.data.bjbz
this.form.bjrMc = response.data.bjrMc
this.open = true
this.$modal.closeLoading()
})
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
shbj(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
})
}
}
}
</script>

+ 167
- 0
src/views/business/resource/mjy/comps/mjy/Shxgkc.vue View File

@ -0,0 +1,167 @@
G<template>
<div>
<!-- 审核修改库存弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.shxgkc')" :visible.sync="open" width="800px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mcbj">
<el-input type="text" v-model="form.mc" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.kc')" prop="kcbj">
<el-input type="number" v-model="form.kcbj" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.kcdw')" prop="kcdwbj">
<el-input type="text" v-model="form.kcdwbj" maxlength="50" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.xgr')">
<el-input type="text" v-model="form.kcbjrMc" disabled />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item :label="$t('page.business.zykgl.mjy.xgbz')" prop="kcbjbz">
<el-input type="text" v-model="form.kcbjbz" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-select v-model="form.qmyy" :placeholder="$t('form.placeholderSelect')" >
<el-option label="同意修改库存" :value="10" />
<el-option label="拒绝修改库存" :value="1" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="qmrmm">
<el-input type="password" v-model="form.qmrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="textarea" v-model="form.remark" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { shxgkc, info } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Shxgkc",
components: { SelectList },
data() {
return {
open: false,
form: {},
rules: {
kcbj: [{
required: true,
message: ' ',
trigger: 'blur'
}],
kcdwbj: [{
required: true,
message: ' ',
trigger: 'blur'
}],
qmrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
mc: null,
bh: null,
kcbj: null,
kcdwbj: null,
qmrmm: null,
kcbjrMc: null,
kcbjbz: null,
qmyy: '同意修改库存',
remark: ''
}
this.resetForm("form")
},
show(row) {
this.reset()
this.$modal.loading()
info({ id: row.id }).then(response => {
this.form.id = response.data.id
this.form.mc = response.data.mc
this.form.bh = response.data.bh
this.form.kcbj = response.data.kcbj
this.form.kcdwbj = response.data.kcdwbj
this.form.kcbjbz = response.data.kcbjbz
this.form.kcbjrMc = response.data.kcbjrMc
this.open = true
this.$modal.closeLoading()
})
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
shxgkc(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
})
}
}
}
</script>

+ 145
- 0
src/views/business/resource/mjy/comps/mjy/Xgkc.vue View File

@ -0,0 +1,145 @@
G<template>
<div>
<!-- 修改库存弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.xgkc')" :visible.sync="open" width="800px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.mc')" prop="mcbj">
<el-input type="text" v-model="form.mc" maxlength="50" disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.bh')" prop="glyj">
<el-input type="text" v-model="form.bh" maxlength="50" disabled />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.kc')" prop="kcbj">
<el-input type="number" v-model="form.kc" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.kcdw')" prop="kcdwbj">
<el-input type="text" v-model="form.kcdw" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" :value="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.signer')">
<el-input type="text" v-model="nickName" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.password')" prop="qmrmm">
<el-input type="password" v-model="form.qmrmm" maxlength="20" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" >
<el-input type="textarea" v-model="form.kcbjbz" :rows="2" maxlength="500"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { xgkc } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
import SelectList from "./SelectList";
export default {
name: "Xgkc",
components: { SelectList },
data() {
return {
open: false,
form: {},
rules: {
kc: [{
required: true,
message: ' ',
trigger: 'blur'
}],
kcdw: [{
required: true,
message: ' ',
trigger: 'blur'
}],
qmrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
cancel() {
this.open = false
},
reset() {
this.form = {
id: null,
mc: null,
bh: null,
kc: null,
kcdw: null,
qmrmm: null,
qmyy: '修改库存',
kcbjbz: ''
}
this.resetForm("form")
},
show(row) {
this.reset()
this.form.id = row.id
this.form.mc = row.mc
this.form.bh = row.bh
this.form.kc = row.kc
this.form.kcdw = row.kcdw
this.open = true
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
xgkc(this.form).then(response => {
this.open = false
this.$emit('callback')
})
}
})
}
}
}
</script>

+ 168
- 0
src/views/business/resource/mjy/comps/mjy/Xq.vue View File

@ -0,0 +1,168 @@
G<template>
<!-- 详情 -->
<el-dialog :title="$t('form.detail')" :visible.sync="open" width="1200px" append-to-body :close-on-click-modal="false">
<div class="detail-container">
<div class="content">
<div class="content-left">
<div class="content-title">
<div class="line"></div>
<div class="subtitle"> 基本信息</div>
</div>
<div class="pal">
<div class="left">
<div class="left-title">{{ $t('page.business.zykgl.mjy.mc') }}</div>
<el-input type="text" :value="form.mc" maxlength="50" disabled />
</div>
<div class="right">
<div class="right-title">{{ $t('page.business.zykgl.mjy.bh') }}</div>
<el-input type="text" :value="form.bh" maxlength="50" disabled />
</div>
</div>
<div class="pal">
<div class="left">
<div class="left-title">{{ $t('page.business.zykgl.mjy.nd') }}</div>
<el-input type="text" :value="form.nd" maxlength="50" disabled> <template slot="append">{{
form.nddw }}</template>
</el-input>
</div>
<div class="right">
<div class="right-title">{{ $t('page.business.zykgl.mjy.kcl') }}</div>
<el-input type="text" :value="form.kc" maxlength="50" disabled> <template slot="append">{{
form.kcdw }}</template> </el-input>
</div>
</div>
<div class="pal">
<div class="left">
<div class="left-title">{{ $t('page.business.zykgl.mjy.sxrq') }}</div>
<el-input type="text" :value="form.sxrq" maxlength="50" disabled />
</div>
<div class="right">
<div class="right-title">{{ $t('page.business.zykgl.mjy.cctj') }}</div>
<el-input type="text" :value="form.cctj" maxlength="50" disabled />
</div>
</div>
<div class="pal">
<div class="left">
<div class="left-title">{{ $t('page.business.zykgl.mjy.ccwz') }}</div>
<el-input type="text" :value="form.ccwz" maxlength="50" disabled />
</div>
<div class="right">
<div class="right-title">{{ $t('page.business.zykgl.mjy.zjzt') }}</div>
<el-select v-model="form.zjzt" disabled style="width: 100%;">
<el-option key="1" :label="$t('page.business.zykgl.zjzt.rk')" :value="1" />
<el-option key="3" :label="$t('page.business.zykgl.zjzt.yff')" :value="3" />
<el-option key="5" :label="$t('page.business.zykgl.zjzt.ysd')" :value="5" />
<el-option key="7" :label="$t('page.business.zykgl.zjzt.dgd')" :value="7" />
<el-option key="9" :label="$t('page.business.zykgl.zjzt.gd')" :value="9" />
<el-option key="11" :label="$t('page.business.zykgl.zjzt.djd')" :value="11" />
</el-select>
</div>
</div>
<div class="content-title">
<div class="line"></div>
<div class="subtitle"> 表单信息</div>
</div>
<div class="pal">
<div class="left">
<div class="left-title">{{ $t('page.business.zykgl.mjy.md') }}</div>
<el-input type="text" :value="form.xmMc" maxlength="50" disabled />
</div>
<div class="right">
<div class="right-title">{{ $t('page.business.zykgl.mjy.ssbd') }}</div>
<el-input type="text" :value="form.bdMc" maxlength="50" disabled />
</div>
</div>
<div class="pal">
<div class="left">
<div class="left-title">{{ $t('page.business.zykgl.mjy.bdssr') }}</div>
<el-input type="text" :value="form.bdssrMc" maxlength="50" disabled />
</div>
</div>
<div class="content-title">
<div class="line"></div>
<div class="subtitle"> 给药制剂台账</div>
</div>
<div class="pal">
<el-table :data="tzList" v-loading="loadingTz">
<el-table-column :label="$t('page.business.zykgl.mjy.syr')" align="center" prop="qmrMc" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('page.business.zykgl.mjy.lqghr')" align="center" :show-overflow-tooltip="true">
<template slot-scope="scope">
{{ scope.row.lqrMc }}{{ scope.row.ghrMc }}
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.ffjsr')" align="center" :show-overflow-tooltip="true">
<template slot-scope="scope">
{{ scope.row.ffrMc }}{{ scope.row.jsrMc }}
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.czlx')" align="center" prop="qmyy" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('page.business.zykgl.mjy.ffjsr')" align="center" :show-overflow-tooltip="true">
<template slot-scope="scope">
{{ scope.row.czl }}{{ scope.row.czldw }}
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.bzyy')" align="center" prop="remark" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('page.business.zykgl.mjy.ccsj')" align="center" prop="createTime" width="150px"/>
</el-table>
</div>
<div class="pal">
<pagination v-show="totalTz > 0" :total="totalTz" :page.sync="queryParamstZ.pageNum"
:limit.sync="queryParamstZ.pageSize" @pagination="getTzList" />
</div>
</div>
<div class="content-right">
<div class="content-title">
<div class="line"></div>
<div class="subtitle"> 稽查轨迹日志</div>
</div>
</div>
</div>
</div>
</el-dialog>
</template>
<script>
import { info, tzList } from "@/api/business/mjy/mjy"
export default {
name: "Xq",
data() {
return {
form: {},
tzList: [],
totalTz: 0,
loadingTz: true,
open: false,
queryParamstZ: {
mjyId: null,
pageNum: 1,
pageSize: 10
}
}
},
created() {
},
methods: {
cancel() {
this.open = false
this.$emit('callback')
},
getTzList() {
this.loadingTz = true
tzList(this.queryParamstZ).then(response => {
this.tzList = response.rows
this.totalTz = response.total
this.loadingTz = false
})
},
show(row) {
info({ id: row.id }).then(response => {
this.form = response.data
this.queryParamstZ.mjyId = row.id
this.getTzList()
this.open = true
})
}
}
}
</script>

+ 217
- 0
src/views/business/resource/mjy/comps/mjy/Ysff.vue View File

@ -0,0 +1,217 @@
G<template>
<div>
<!-- 钥匙发放弹窗 -->
<el-dialog :title="$t('page.business.zykgl.mjy.ysff')" :visible.sync="open" width="1200px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<div>
<el-row style="margin:10px 0px;">
<el-col :span="24">
<el-table :data="selectList" border>
<el-table-column :label="$t('page.business.zykgl.mjy.mc')" align="left" prop="mc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.bh')" align="left" prop="bh"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.ckl')" align="center">
<template slot-scope="scope">
{{ scope.row.ckl }}{{ scope.row.ckldw }}
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.ffzytj')" align="center" prop="ffzytj"
width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.ckmz')" align="center" prop="ckmz" width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.ckmzdw')" align="center" prop="ckmzdw"
width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.lqr1')" align="center" prop="lqr1Mc"
width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.lqr2')" align="center" prop="lqr2Mc"
width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.ffr1')" align="center" prop="ffr1Mc"
width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.ffr2')" align="center" prop="ffr2Mc"
width="150px" />
<el-table-column :label="$t('form.remark')" align="center" prop="ffbz" width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.md')" align="center" prop="ffxmMc"
width="150px" />
</el-table>
</el-col>
</el-row>
</div>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.zcg')" prop="zcgId">
<el-input type="text" v-model="form.zcgId" maxlength="50" :placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.qmyy')" prop="qmyy">
<el-input type="text" v-model="form.qmyy" maxlength="50" disabled
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item :label="$t('form.remark')" prop="remark">
<el-input type="text" v-model="form.remark" maxlength="20"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.lqr1')" prop="lqr1Id">
<el-input type="text" v-model="form.lqr1Id" maxlength="50"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="lqr1mm">
<el-input type="text" v-model="form.lqr1mm" maxlength="20"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.lqr2')" prop="lqr2Id">
<el-input type="text" v-model="form.lqr2Id" maxlength="50"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="lqr2mm">
<el-input type="text" v-model="form.lqr2mm" maxlength="20"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.business.zykgl.mjy.ffr')">
<el-input type="text" v-model="nickName" maxlength="50"
:placeholder="$t('form.placeholderInput')" disabled/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('form.password')" prop="ffrmm">
<el-input type="text" v-model="form.ffrmm" maxlength="20"
:placeholder="$t('form.placeholderInput')">
</el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="save">{{ $t('form.confirm') }}</el-button>
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { ysff } from "@/api/business/mjy/mjy"
import { mapGetters } from 'vuex'
export default {
name: "Ysff",
components: {},
data() {
return {
ids: [],
selectList: [],
open: false,
form: {},
rules: {
sdrmm: [{
required: true,
message: ' ',
trigger: 'blur'
}],
zcgId: [{
required: true,
message: ' ',
trigger: 'blur'
}],
lqr2mm:[{
required: true,
message: ' ',
trigger: 'blur'
}],
lqr1mm:[{
required: true,
message: ' ',
trigger: 'blur'
}],
lqr1Id:[{
required: true,
message: ' ',
trigger: 'blur'
}],
lqr2Id:[{
required: true,
message: ' ',
trigger: 'blur'
}],
ffrmm:[{
required: true,
message: ' ',
trigger: 'blur'
}],
}
}
},
computed: {
...mapGetters([
'nickName'
]),
},
created() {
},
methods: {
showBatch(val) {
this.reset()
this.isBatch = true
this.form.ids = val.map(item => item.id)
this.selectList = val
this.open = true
},
cancel() {
this.open = false
},
reset() {
this.form = {
ids: null,
qmyy: '钥匙发放',
zcgId: null,
sdrmm: null,
remark: null,
lqr1Id: null,
lqr2Id: null,
lqr1mm: null,
lqr2mm: null,
ffrId: null,
ffrmm: null,
}
this.resetForm("form")
},
save() {
this.$refs["form"].validate(valid => {
if (valid) {
let params = this.form
params.list = this.selectList
ysff(params).then(response => {
this.open = false
this.$emit('callback')
})
}
})
}
}
}
</script>

+ 426
- 0
src/views/business/resource/mjy/comps/mjyList.vue View File

@ -0,0 +1,426 @@
<template>
<div>
<!-- 列表 -->
<div>
<div class="app-container mjy">
<el-form :model="queryParams" ref="queryForm" class="search-area" size="small" :inline="true"
label-width="88px">
<!-- 名称 -->
<el-form-item :label="$t('page.business.zykgl.mjy.mc') + ':'">
<el-input v-model="queryParams.mc" clearable @change="handleQuery"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
<!-- 编号 -->
<el-form-item :label="$t('page.business.zykgl.mjy.bh') + ':'">
<el-input v-model="queryParams.bh" clearable @change="handleQuery"
:placeholder="$t('form.placeholderInput')" />
</el-form-item>
<!-- 借阅状态 -->
<el-form-item :label="$t('page.business.zykgl.mjy.jyzt') + ':'">
<el-select v-model="queryParams.jyzt" :placeholder="$t('form.placeholderSelect')" clearable
@change="handleQuery">
<el-option key="1" :label="$t('page.business.zykgl.jyzt.wjy')" value="1" />
<el-option key="3" :label="$t('page.business.zykgl.jyzt.djy')" value="3" />
<el-option key="5" :label="$t('page.business.zykgl.jyzt.jyz')" value="5" />
</el-select>
</el-form-item>
<!-- 制剂状态 -->
<el-form-item :label="$t('page.business.zykgl.mjy.zjzt') + ':'">
<el-select v-model="queryParams.zjzt" :placeholder="$t('form.placeholderSelect')" clearable
@change="handleQuery">
<el-option key="1" :label="$t('page.business.zykgl.zjzt.rk')" value="1" />
<el-option key="3" :label="$t('page.business.zykgl.zjzt.yff')" value="3" />
<el-option key="5" :label="$t('page.business.zykgl.zjzt.ysd')" value="5" />
<el-option key="7" :label="$t('page.business.zykgl.zjzt.dgd')" value="7" />
<el-option key="9" :label="$t('page.business.zykgl.zjzt.gd')" value="9" />
<el-option key="11" :label="$t('page.business.zykgl.zjzt.djd')" value="11" />
</el-select>
</el-form-item>
<!-- 失效日期 -->
<el-form-item :label="$t('page.business.zykgl.mjy.sxrq') + ':'">
<el-date-picker v-model="daterange" class="chat-histogram-daterange" type="daterange" range-separator="-"
:start-placeholder="$t('form.startDate')" :end-placeholder="$t('form.endDate')" value-format="yyyy-MM-dd"
@change="handleQuery" style="width: 250px;" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{ $t('form.search') }}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{ $t('form.reset') }}</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<!-- 批量发放 -->
<el-button type="primary" :disabled="multiple" @click="handlePlff"
v-hasPermi="['business:resource:mjy:ff']">{{
$t('page.business.zykgl.mjy.plff') }}</el-button>
</el-col>
<el-col :span="1.5">
<!-- 批量处置药剂 -->
<el-button type="primary" :disabled="multiple" @click="handlePlczyj"
v-hasPermi="['business:resource:mjy:czyj']">{{
$t('page.business.zykgl.mjy.plczyj') }}</el-button>
</el-col>
<el-col :span="1.5">
<!-- 批量处置容器 -->
<el-button type="primary" :disabled="multiple" @click="handlePlczrq"
v-hasPermi="['business:resource:mjy:czrq']">{{
$t('page.business.zykgl.mjy.plczrq') }}</el-button>
</el-col>
<el-col :span="1.5">
<!-- 钥匙发放 -->
<el-button type="primary" :disabled="multiple" @click="handleYsff"
v-hasPermi="['business:resource:mjy:ysff']">{{
$t('page.business.zykgl.mjy.ysff') }}</el-button>
</el-col>
<el-col :span="1.5">
<!-- 批量锁定 -->
<el-button type="primary" :disabled="multiple" @click="handlePlsd"
v-hasPermi="['business:resource:mjy:sd']">{{
$t('page.business.zykgl.mjy.plsd') }}</el-button>
</el-col>
<el-col :span="1.5">
<!-- 批量归档 -->
<el-button type="primary" :disabled="multiple" @click="handlePlgd"
v-hasPermi="['business:resource:mjy:gd']">{{
$t('page.business.zykgl.mjy.plgd') }}</el-button>
</el-col>
<el-col :span="1.5">
<!-- 导出 -->
<el-button type="primary" :disabled="multiple" @click="handleDc"
v-hasPermi="['business:resource:mjy:dc']">{{
$t('form.export') }}</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" :selectable="checkSelectable" />
<el-table-column :label="$t('page.business.zykgl.mjy.mc')" align="left" prop="mc"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.bh')" align="center" prop="bh"
:show-overflow-tooltip="true" />
<el-table-column :label="$t('page.business.zykgl.mjy.nd')" align="center">
<template slot-scope="scope">
{{ scope.row.nd }}{{ scope.row.nddw }}
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.kcl')" align="center">
<template slot-scope="scope">
{{ scope.row.kc }}{{ scope.row.kcdw }}
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.sxrq')" align="center" prop="sxrq" width="150px" />
<el-table-column :label="$t('page.business.zykgl.mjy.zcg')" align="center" prop="zcgMc" width="130px" />
<el-table-column :label="$t('page.business.zykgl.mjy.cctj')" align="center" prop="cctj" width="130px" />
<el-table-column :label="$t('page.business.zykgl.mjy.ccwz')" align="center" prop="ccwz" width="130px" />
<el-table-column :label="$t('page.business.zykgl.mjy.zjzt')" align="center" width="150px">
<template slot-scope="scope">
<span v-if="scope.row.zjzt == 1">{{ $t('page.business.zykgl.zjzt.rk') }}</span>
<span v-if="scope.row.zjzt == 3">{{ $t('page.business.zykgl.zjzt.yff') }}</span>
<span v-if="scope.row.zjzt == 5">{{ $t('page.business.zykgl.zjzt.ysd') }}</span>
<span v-if="scope.row.zjzt == 7">{{ $t('page.business.zykgl.zjzt.dgd') }}</span>
<span v-if="scope.row.zjzt == 9">{{ $t('page.business.zykgl.zjzt.gd') }}</span>
<span v-if="scope.row.zjzt == 11">{{ $t('page.business.zykgl.zjzt.djd') }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('page.business.zykgl.mjy.jyzt')" align="center" width="150px">
<template slot-scope="scope">
<span v-if="scope.row.jyzt == 1">{{ $t('page.business.zykgl.jyzt.wjy') }}</span>
<span v-if="scope.row.jyzt == 3">{{ $t('page.business.zykgl.jyzt.djy') }}</span>
<span v-if="scope.row.jyzt == 5">{{ $t('page.business.zykgl.jyzt.jyz') }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('form.operate')" fixed="right" align="center"
class-name="small-padding fixed-width" width="250px">
<template slot-scope="scope">
<template v-if="scope.row.zjzt == 1 || scope.row.zjzt == 3 || scope.row.zjzt == 5 || scope.row.zjzt == 9">
<!-- 详情 -->
<el-button size="mini" type="text" @click="handleXq(scope.row)"
v-hasPermi="['business:resource:mjy:list']">{{
$t('page.business.zykgl.mjy.detail') }}</el-button>
</template>
<template v-if="scope.row.zjzt == 1">
<!-- 发放 -->
<el-button size="mini" type="text" @click="handleFf(scope.row)"
v-hasPermi="['business:resource:mjy:ff']">{{
$t('page.business.zykgl.mjy.fafang') }}</el-button>
<!-- 处置药剂 -->
<el-button size="mini" type="text" @click="handleCzyj(scope.row)"
v-hasPermi="['business:resource:mjy:czyj']">{{
$t('page.business.zykgl.mjy.czyj') }}</el-button>
<!-- 处置容器 -->
<el-button size="mini" v-if="scope.row.rqzt == 1" type="text" @click="handleCzrq(scope.row)"
v-hasPermi="['business:resource:mjy:czrq']">{{
$t('page.business.zykgl.mjy.czrq') }}</el-button>
<!-- 编辑 -->
<el-button size="mini" v-if="scope.row.bjzt == 1" type="text" @click="handleBj(scope.row)"
v-hasPermi="['business:resource:mjy:bj']">{{
$t('form.edit') }}</el-button>
<!-- 修改库存 -->
<el-button size="mini" v-if="scope.row.kcbjzt == 1" type="text" @click="handleXgkc(scope.row)"
v-hasPermi="['business:resource:mjy:xgkc']">{{
$t('page.business.zykgl.mjy.xgkc') }}</el-button>
<!-- 锁定 -->
<el-button size="mini" type="text" @click="handleSd(scope.row)"
v-hasPermi="['business:resource:mjy:sd']">{{
$t('page.business.zykgl.mjy.lock') }}</el-button>
</template>
<template v-if="scope.row.bjzt == 3 && (scope.row.zjzt == 1 || scope.row.zjzt == 3)">
<!-- 审核编辑 -->
<el-button size="mini" type="text" @click="handleShbj(scope.row)"
v-hasPermi="['business:resource:mjy:shbj']">{{
$t('page.business.zykgl.mjy.shbj') }}</el-button>
</template>
<template v-if="scope.row.kcbjzt == 3 && (scope.row.zjzt == 1 || scope.row.zjzt == 3)">
<!-- 审核修改库存 -->
<el-button size="mini" type="text" @click="handleShxgkc(scope.row)"
v-hasPermi="['business:resource:mjy:shxgkc']">{{
$t('page.business.zykgl.mjy.shxgkc') }}</el-button>
</template>
<template v-if="scope.row.zjzt == 5">
<!-- 解锁 -->
<el-button size="mini" type="text" @click="handleJs(scope.row)"
v-hasPermi="['business:resource:mjy:js']">{{
$t('page.business.zykgl.mjy.unlock') }}</el-button>
<!-- 归档 -->
<el-button size="mini" type="text" @click="handleGd(scope.row)"
v-hasPermi="['business:resource:mjy:gd']">{{
$t('page.business.zykgl.mjy.guidang') }}</el-button>
</template>
<template v-if="scope.row.zjzt == 3">
<!-- 归还 -->
<el-button size="mini" type="text" @click="handleGh(scope.row)"
v-hasPermi="['business:resource:mjy:gh']">{{
$t('page.business.zykgl.mjy.guihuan') }}</el-button>
</template>
<template v-if="scope.row.zjzt == 9">
<!-- 解档 -->
<el-button size="mini" type="text" @click="handleJd(scope.row)"
v-hasPermi="['business:resource:mjy:jd']">{{
$t('page.business.zykgl.mjy.jiedang') }}</el-button>
<!-- 借阅 -->
<el-button size="mini" type="text" @click="handleJy(scope.row)"
v-hasPermi="['business:resource:mjy:jy']">{{
$t('page.business.zykgl.mjy.jieyue') }}</el-button>
</template>
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</div>
<!-- 锁定 -->
<Sd ref="Sd" @callback="handleQuery" />
<!-- 解锁 -->
<Js ref="Js" @callback="handleQuery" />
<!-- 归档 -->
<Gd ref="Gd" @callback="handleQuery" />
<!-- 解档 -->
<Jd ref="Jd" @callback="handleQuery" />
<!-- 编辑 -->
<Bj ref="Bj" @callback="handleQuery" />
<!-- 审核编辑 -->
<Shbj ref="Shbj" @callback="handleQuery" />
<!-- 修改库存 -->
<Xgkc ref="Xgkc" @callback="handleQuery" />
<!-- 审核修改库存 -->
<Shxgkc ref="Shxgkc" @callback="handleQuery" />
<!-- 借阅 -->
<Jy ref="Jy" @callback="handleQuery" />
<!-- 归还 -->
<Gh ref="Gh" @callback="handleQuery" />
<!-- 发放 -->
<Ff ref="Ff" @callback="handleQuery" />
<!-- 处置药剂 -->
<Czyj ref="Czyj" @callback="handleQuery" />
<!-- 处置容器 -->
<Czrq ref="Czrq" @callback="handleQuery" />
<!-- 钥匙发放 -->
<Ysff ref="Ysff" @callback="handleQuery" />
<!-- 详情 -->
<Xq ref="Xq" @callback="handleQuery" />
</div>
</div>
</template>
<script>
import { list } from "@/api/business/mjy/mjy"
import Sd from "./mjy/Sd";
import Js from "./mjy/Js";
import Gd from "./mjy/Gd";
import Jd from "./mjy/Jd";
import Xq from "./mjy/Xq";
import Bj from "./mjy/Bj";
import Shbj from "./mjy/Shbj";
import Xgkc from "./mjy/Xgkc";
import Shxgkc from "./mjy/Shxgkc";
import Jy from "./mjy/Jy";
import Gh from "./mjy/Gh";
import Ff from "./mjy/Ff";
import Czrq from "./mjy/Czrq";
import Czyj from "./mjy/Czyj";
import Ysff from "./mjy/Ysff";
export default {
name: "MjyList",
components: { Sd, Js, Gd, Xq, Jd, Bj, Shbj, Xgkc, Shxgkc, Jy, Gh, Czyj, Czrq, Ff, Ysff },
data() {
return {
daterange: [],
loading: true,
single: true,
multiple: true,
total: 0,
list: [],
//
selectList: [],
//
queryParams: {
pageNum: 1,
pageSize: 10,
mc: null,
jyzt: null,
zjzt: null,
bh: null,
startDate: null,
endDate: null,
},
}
},
created() {
this.getList()
},
methods: {
//
handleDc() {
},
//
handleYsff() {
this.$refs.Ysff.showBatch(this.selectList)
},
//
handlePlff() {
this.$refs.Ff.showBatch(this.selectList)
},
//
handleFf(row) {
this.$refs.Ff.show(row)
},
//
handleCzrq(row) {
this.$refs.Czrq.show(row)
},
//
handlePlczrq() {
this.$refs.Czrq.showBatch(this.selectList)
},
//
handleCzyj(row) {
this.$refs.Czyj.show(row)
},
//
handlePlczyj() {
this.$refs.Czyj.showBatch(this.selectList)
},
//
handleBj(row) {
this.$refs.Bj.show(row)
},
//
handleShbj(row) {
this.$refs.Shbj.show(row)
},
//
handleXgkc(row) {
this.$refs.Xgkc.show(row)
},
//
handleShxgkc(row) {
this.$refs.Shxgkc.show(row)
},
//
handleJy(row) {
this.$refs.Jy.show(row)
},
//
handleGh(row) {
this.$refs.Gh.show(row)
},
//
checkSelectable(row) {
return true;
},
//
handleXq(row) {
this.$refs.Xq.show(row)
},
//
handlePljs() {
this.$refs.Js.showBatch(this.selectList)
},
//
handleJs(row) {
this.$refs.Js.show(row)
},
//
handlePlgd() {
this.$refs.Gd.showBatch(this.selectList)
},
//
handleGd(row) {
this.$refs.Gd.show(row)
},
//
handleJd(row) {
this.$refs.Jd.show(row)
},
//
handlePlsd() {
this.$refs.Sd.showBatch(this.selectList)
},
//
handleSd(row) {
this.$refs.Sd.show(row)
},
//
getList() {
if (this.daterange != null && this.daterange.length > 0) {
this.queryParams.startDate = this.daterange[0]
this.queryParams.endDate = moment().add(this.daterange[1], 'days').format('YYYY-MM-DD');
} else {
this.queryParams.startDate = ''
this.queryParams.endDate = ''
}
this.loading = true
list(this.queryParams).then(response => {
this.list = response.rows
this.total = response.total
this.loading = false
})
},
//
handleQuery() {
this.queryParams.pageNum = 1
this.getList()
},
//
resetQuery() {
this.resetForm("queryForm")
this.handleQuery()
},
//
handleSelectionChange(selection) {
this.single = selection.length !== 1
this.multiple = !selection.length
this.selectList = selection
}
}
}
</script>
<style rel="stylesheet/scss" lang="scss">
.mjy {}
</style>

+ 38
- 0
src/views/business/resource/mjy/index.vue View File

@ -0,0 +1,38 @@
<template>
<div class="mjy">
<el-tabs v-model="activeName" type="border-card" >
<el-tab-pane label="麻精药管理" name="mjyList">
<mjyList />
</el-tab-pane>
<el-tab-pane label="发放回收记录" name="ffjlList">
<ffjlList />
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
import mjyList from "./comps/mjyList";
import ffjlList from "./comps/ffjlList";
export default {
name: "Mjy",
components: { mjyList, ffjlList },
data() {
return {
activeName: 'mjyList'
}
},
created() {
},
methods: {
}
}
</script>
<style rel="stylesheet/scss" lang="scss">
.mjy {
margin: 10px 10px;
}
</style>

Loading…
Cancel
Save