luojie 4 weeks ago
parent
commit
fe2b0c302b
9 changed files with 195 additions and 25 deletions
  1. +16
    -0
      src/api/business/storageLocation/storageLocation.js
  2. +1
    -9
      src/components/Template/StepComponents/qxwdx/qxjz.vue
  3. +8
    -4
      src/components/Template/StepComponents/ry/jd.vue
  4. +2
    -2
      src/views/business/comps/template/comps/dl/DL023.vue
  5. +1
    -1
      src/views/business/comps/template/comps/yp/YP002.vue
  6. +26
    -2
      src/views/business/comps/template/comps/yp/YP005.vue
  7. +5
    -2
      src/views/business/resource/yq/list.vue
  8. +126
    -0
      src/views/business/storageLocation/comps/detail.vue
  9. +10
    -5
      src/views/business/storageLocation/list.vue

+ 16
- 0
src/api/business/storageLocation/storageLocation.js View File

@ -21,4 +21,20 @@ export function storageLocation_edit(data) {
method: 'post', method: 'post',
data: data data: data
}) })
}
export function storageLocation_info(query) {
return request({
url: '/system/business/storageLocation/info',
method: 'get',
params: query
})
}
export function jcgj_list(query) {
return request({
url: '/system/business/storageLocation/jcgj/list',
method: 'get',
params: query
})
} }

+ 1
- 9
src/components/Template/StepComponents/qxwdx/qxjz.vue View File

@ -66,7 +66,7 @@ export default {
compareTo: "yjhj", compareTo: "yjhj",
}, },
text6: { text6: {
label: this.sn==='qxqy'?"条件下暂存":"条件下静置,即稳定性",
label: this.sn==='qxqy'?"条件下暂存,作为":"条件下静置,即稳定性",
type: "text", type: "text",
}, },
} }
@ -93,14 +93,6 @@ export default {
fillType: "actFill", fillType: "actFill",
otherCode: "ccwzOther", otherCode: "ccwzOther",
} }
config[0].config.text8 = {
type: "text",
label: "作为",
}
config[0].config.yp = {
type: "input",
fillType: "actFill",
}
config[0].config.text9 = { config[0].config.text9 = {
type: "text", type: "text",
label: "样品。", label: "样品。",

+ 8
- 4
src/components/Template/StepComponents/ry/jd.vue View File

@ -51,7 +51,8 @@ export default {
}, },
yjwd: { yjwd: {
type: "select", type: "select",
options: this.getDictOptions("business_wddw"),
options: this.getDictOptions("business_cctj"),
multiple: true,
fillType: "preFill", fillType: "preFill",
otherCode: "yjwdOther", otherCode: "yjwdOther",
}, },
@ -67,7 +68,8 @@ export default {
}, },
sjwd: { sjwd: {
type: "select", type: "select",
options: this.getDictOptions("business_wddw"),
options: this.getDictOptions("business_cctj"),
multiple: true,
fillType: "actFill", fillType: "actFill",
otherCode: "sjwdOther", otherCode: "sjwdOther",
compareTo: "yjwd", compareTo: "yjwd",
@ -162,7 +164,8 @@ export default {
}, },
yjwd: { yjwd: {
type: "select", type: "select",
options: this.getDictOptions("business_wddw"),
options: this.getDictOptions("business_cctj"),
multiple: true,
fillType: "preFill", fillType: "preFill",
otherCode: "yjwdOther", otherCode: "yjwdOther",
}, },
@ -178,7 +181,8 @@ export default {
}, },
sjwd: { sjwd: {
type: "select", type: "select",
options: this.getDictOptions("business_wddw"),
options: this.getDictOptions("business_cctj"),
multiple: true,
fillType: "actFill", fillType: "actFill",
otherCode: "sjwdOther", otherCode: "sjwdOther",
compareTo: "yjwd", compareTo: "yjwd",

+ 2
- 2
src/views/business/comps/template/comps/dl/DL023.vue View File

@ -189,7 +189,7 @@ export default {
subKey: 'zskssj', subKey: 'zskssj',
buttonName: 'template.dl.dl023.ksButton', buttonName: 'template.dl.dl023.ksButton',
disabled: true, disabled: true,
subDisabled: false
subDisabled: this.fillType !== 'actFill'
}, },
zsjssj: { zsjssj: {
label: 'template.dl.dl023.zsjssj', label: 'template.dl.dl023.zsjssj',
@ -200,7 +200,7 @@ export default {
subKey: 'zsjssj', subKey: 'zsjssj',
buttonName: 'template.dl.dl023.jsButton', buttonName: 'template.dl.dl023.jsButton',
disabled: true, disabled: true,
subDisabled: false
subDisabled: this.fillType !== 'actFill'
}, },
} }
} }

+ 1
- 1
src/views/business/comps/template/comps/yp/YP002.vue View File

@ -143,7 +143,7 @@ export default {
subKey:"jssjButton", subKey:"jssjButton",
buttonName:"template.yp.yp002.hqsj", buttonName:"template.yp.yp002.hqsj",
disabled:true, disabled:true,
subDisabled:false
subDisabled:this.fillType !== 'actFill'
}, },
} }
}, },

+ 26
- 2
src/views/business/comps/template/comps/yp/YP005.vue View File

@ -178,7 +178,7 @@ export default {
bodyThirdFillType:"actFill", bodyThirdFillType:"actFill",
width: 280, width: 280,
bodyDisabled:true, bodyDisabled:true,
bodySubDisabled:false,
bodySubDisabled:this.fillType !== 'actFill',
}] }]
}, },
}, },
@ -193,13 +193,37 @@ export default {
methods: { methods: {
// //
handleClickButton(key,rowIndex,colIndex,e,data){ handleClickButton(key,rowIndex,colIndex,e,data){
let content = this.getFilledFormData();
let tableList = content.stepTableFormData
let qxsj = tableList[rowIndex].qxsj
let timeArr = qxsj?qxsj.split('~'):['','']
if(key === "exportBtn"){ if(key === "exportBtn"){
this.currentRowIndex = rowIndex; this.currentRowIndex = rowIndex;
this.$refs.ImportExcelDialog.show() this.$refs.ImportExcelDialog.show()
} }
if(key === "startBtn"){ if(key === "startBtn"){
let startTime = moment().format("YYYY/MM/DD HH:mm")
timeArr[0] = startTime
this.$refs.tableRef.updateDataSourceByRowIndex(rowIndex,{ this.$refs.tableRef.updateDataSourceByRowIndex(rowIndex,{
qxsj: moment().format("YYYY/MM/DD HH:mm"),
qxsj: timeArr.join('~'),
})
// this.$nextTick(() => {
// //
// const params = {
// type: "fieldChanged",
// newRecord: null,
// resourceList: null,
// }
// EventBus.$emit('onModifyRecord', params,)
// })
}
if(key === "endBtn"){
debugger
let endTime = moment().format("YYYY/MM/DD HH:mm")
timeArr[1] = endTime
this.$refs.tableRef.updateDataSourceByRowIndex(rowIndex,{
qxsj: timeArr.join('~'),
}) })
// this.$nextTick(() => { // this.$nextTick(() => {

+ 5
- 2
src/views/business/resource/yq/list.vue View File

@ -149,7 +149,8 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('form.signerPsw')" prop="qmrmm"> <el-form-item :label="$t('form.signerPsw')" prop="qmrmm">
<el-input v-model="form.qmrmm" autocomplete="off" auto-complete="new-password" show-password
<div class="sbzdtcma"> <input type="text"></div>
<el-input v-model="form.qmrmm" show-password
:placeholder="$t('form.placeholderInput')" type="password" maxlength="20" /> :placeholder="$t('form.placeholderInput')" type="password" maxlength="20" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -213,7 +214,8 @@ export default {
}, },
// //
form: { form: {
'qmyy': this.$t('page.form.add')
'qmyy': this.$t('page.form.add'),
qmrmm: null,
}, },
// //
rules: { rules: {
@ -290,6 +292,7 @@ export default {
wc: null, wc: null,
ccwz: null, ccwz: null,
fzdd: null, fzdd: null,
qmrmm: null,
qmyy: this.$t('page.business.resource.yq.xzyq'), qmyy: this.$t('page.business.resource.yq.xzyq'),
} }
this.resetForm('form') this.resetForm('form')

+ 126
- 0
src/views/business/storageLocation/comps/detail.vue View File

@ -0,0 +1,126 @@
<template>
<div class="app-container">
<!-- 详情弹窗 -->
<el-dialog :title="$t('form.detail')" :visible.sync="open" width="800px" append-to-body
:close-on-click-modal="false">
<el-form ref="form" :model="form" label-width="120px">
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.system.storageLocation.fzdd')" prop="location">
<el-input v-model="form.location" disabled :placeholder="$t('form.placeholderInput')" maxlength="50" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.system.storageLocation.sbmc')" prop="name">
<el-input v-model="form.name" disabled :placeholder="$t('form.placeholderInput')" maxlength="50" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.system.storageLocation.fzhj')" prop="shelfPlacement">
<el-input v-model="form.shelfPlacement" disabled :placeholder="$t('form.placeholderInput')" maxlength="50" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.system.storageLocation.wc')" prop="compartment">
<el-input v-model="form.compartment" disabled :placeholder="$t('form.placeholderInput')" maxlength="50" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item :label="$t('page.system.storageLocation.ssbm')" prop="deptId">
<el-input v-model="form.deptName" disabled :placeholder="$t('form.placeholderInput')" maxlength="50" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item :label="$t('page.system.storageLocation.zt')" prop="status">
<el-select v-model="form.status" :placeholder="$t('form.placeholderSelect')" disabled style="width: 100%;">
<el-option key="1" :label="$t('page.system.storageLocation.no')" :value="1" />
<el-option key="10" :label="$t('page.system.storageLocation.yes')" :value="10" />
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-table v-loading="loading" :data="qmList">
<el-table-column :label="$t('form.signer')" align="center" prop="qmrMc" />
<el-table-column :label="$t('form.qmyy')" align="center" prop="jcmc" />
<el-table-column :label="$t('form.signTime')" align="center" prop="createTime" />
<el-table-column :label="$t('page.business.resource.yq.xgnr')" align="center">
<template slot-scope="scope">
<div v-for="(pitem, pindex) in scope.row.jcnrList" :key="pindex">
{{ pitem.name }}{{ pitem.value }}
</div>
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" />
<div slot="footer" class="dialog-footer">
<el-button @click="cancel">{{ $t('form.cancel') }}</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { storageLocation_info, jcgj_list } from '@/api/business/storageLocation/storageLocation'
export default {
name: "StorageLocationDetail",
components: {
},
data() {
return {
loading: true,
open: false,
form: {},
//
qmList: [],
//
total: 0,
queryParams: {
pageNum: 1,
pageSize: 10,
id: '',
},
}
},
created() {
},
methods: {
cancel() {
this.open = false
},
show(row) {
storageLocation_info({ id: row.id }).then((response) => {
this.form = response.data
this.open = true
})
this.saveSimpleLog({name:row.bh,nameEn:row.bh,jcmc:'存储位置详情',jcmcEn:'Storage Location Detail'})
this.queryParams.id = row.id
jcgj_list(this.queryParams).then((response) => {
this.qmList = response.rows
this.qmList.forEach(item => {
if (item.jcnr) {
item.jcnrList = JSON.parse(item.jcnr)
//item.jcnr = Object.entries(JSON.parse(item.jcnr)).map(([key, value]) => `${key}:${value}`).join('\r\n');
} else {
item.jcnrList = []
}
})
this.total = response.total
this.loading = false
})
},
getList() {
}
}
}
</script>

+ 10
- 5
src/views/business/storageLocation/list.vue View File

@ -114,7 +114,8 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('form.signerPsw')" prop="qmrmm"> <el-form-item :label="$t('form.signerPsw')" prop="qmrmm">
<el-input v-model="form.qmrmm" autocomplete="off" auto-complete="new-password" show-password
<div class="sbzdtcma"> <input type="text"></div>
<el-input v-model="form.qmrmm" show-password
:placeholder="$t('form.placeholderInput')" type="password" maxlength="20" /> :placeholder="$t('form.placeholderInput')" type="password" maxlength="20" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -126,19 +127,21 @@
</div> </div>
</el-dialog> </el-dialog>
<StorageLocationDetail ref="storageLocationDetail"/>
</div> </div>
</template> </template>
<script> <script>
import { storageLocation_list, storageLocation_add } from '@/api/business/storageLocation/storageLocation'
import { storageLocation_list, storageLocation_add, storageLocation_edit } from '@/api/business/storageLocation/storageLocation'
import BusinessSelect from '@/views/business/comps/select/BusinessSelect'; import BusinessSelect from '@/views/business/comps/select/BusinessSelect';
import SelectDept from '@/views/business/comps/select/SelectDept'; import SelectDept from '@/views/business/comps/select/SelectDept';
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import SelectStorageLocation from '@/views/business/comps/select/SelectStorageLocation' import SelectStorageLocation from '@/views/business/comps/select/SelectStorageLocation'
import StorageLocationDetail from './comps/detail'
export default { export default {
name: 'StorageLocation', name: 'StorageLocation',
components: { BusinessSelect, SelectDept, SelectStorageLocation },
components: { BusinessSelect, SelectDept, SelectStorageLocation, StorageLocationDetail },
data() { data() {
return { return {
@ -170,7 +173,8 @@ export default {
}, },
// //
form: { form: {
'qmyy': this.$t('page.form.add')
'qmyy': this.$t('page.form.add'),
qmrmm: null,
}, },
// //
rules: { rules: {
@ -238,6 +242,7 @@ export default {
wc: null, wc: null,
ccwz: null, ccwz: null,
fzdd: null, fzdd: null,
qmrmm: null,
qmyy: this.$t('page.system.storageLocation.addStroageLocation'), qmyy: this.$t('page.system.storageLocation.addStroageLocation'),
} }
this.resetForm('form') this.resetForm('form')
@ -269,7 +274,7 @@ export default {
this.title = this.$t('form.edit') this.title = this.$t('form.edit')
}, },
handleDetail(row) { handleDetail(row) {
this.$refs.YqDetail.show(row)
this.$refs.storageLocationDetail.show(row)
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {

Loading…
Cancel
Save