修改一二级程度bug

zhairh
郑明梁 3 years ago
parent ba166ea6bc
commit 617b728178

@ -35,7 +35,7 @@
<el-select v-model="inputQuery.action" placeholder="请选择" clearable> <el-select v-model="inputQuery.action" placeholder="请选择" clearable>
<el-option <el-option
v-for="item in busTypes" v-for="item in busTypes"
:key="item.localAction" :key="item.action"
:label="item.name" :label="item.name"
:value="item.localAction"> :value="item.localAction">
<span style="float: left">{{ item.localName }}</span> <span style="float: left">{{ item.localName }}</span>
@ -167,7 +167,6 @@ export default {
action: [ action: [
{required: true, message: "请输入扫码单据类型", trigger: "blur"} {required: true, message: "请输入扫码单据类型", trigger: "blur"}
], ],
entrustInv: [ entrustInv: [
{required: true, message: "请输入委托验收人仓库", trigger: "blur"} {required: true, message: "请输入委托验收人仓库", trigger: "blur"}
], ],
@ -199,17 +198,6 @@ export default {
this.localTypes = []; this.localTypes = [];
}); });
}, },
getStorage() {
this.storageList = [];
filterAll()
.then((response) => {
this.storageList = response.data || [];
this.findSubInvByInv();
this.getEntrustStorage();
})
.catch(() => {
});
},
findSubInvByInv() { findSubInvByInv() {
this.subInvList = []; this.subInvList = [];
@ -227,36 +215,21 @@ export default {
}, },
findEntrustSubInvByInv() { findEntrustSubInvByInv(code) {
this.entrustSubInvList = []; this.entrustSubInvList = [];
let query = { let query = {
code: this.inputQuery.invWarehouseCode, code: this.inputQuery.invWarehouseCode,
}; };
filterSub(query) filterSub(query)
.then((response) => { .then((response) => {
this.entrustSubInvList = response.data || []; this.entrustSubInvList = response.data || [];
this.entrustSubInvChange(); this.entrustSubInvChange(code);
}) })
.catch(() => { .catch(() => {
}); });
}, },
getEntrustStorage() {
this.entrustStorageList = [];
let nextQuery = {pcode: this.inputQuery.curInv};
filterNext(nextQuery)
.then((response) => {
this.entrustStorageList = response.data || [];
this.findEntrustSubInvByInv();
})
.catch(() => {
});
},
getOrderType() { getOrderType() {
let query = { let query = {
locSubInvCode: this.inputQuery.invWarehouseCode locSubInvCode: this.inputQuery.invWarehouseCode
} }
@ -266,30 +239,24 @@ export default {
}) })
}, },
invChange() {
this.findSubInvByInv();
this.inputQuery.invWarehouseCode = null;
this.$set(this.inputQuery, "entrustUser", "");
this.$set(this.inputQuery, "entrustInv", "");
this.getEntrustStorage();
},
subInvChange() { subInvChange() {
this.getOrderType(); this.getOrderType();
}, },
entrustInvChange(code) {
entrustInvChange() { this.inputQuery.curInv= this.subInvList.find(item => item.code == code).parentId
this.inputQuery.entrustSubInv = null; this.$set(this.inputQuery, "action", "");
this.$set(this.inputQuery, "entrustSubInv", "");
this.getOrderType();
this.findEntrustSubInvByInv(); this.findEntrustSubInvByInv();
}, },
entrustSubInvChange() { entrustSubInvChange(code) {
this.inputQuery.entrustInv= this.entrustSubInvList.find(item => item.code == code).parentId
let query = { let query = {
code: this.inputQuery.entrustSubInv, code: this.inputQuery.entrustSubInv,
} }
// //
warehouseUserList(query).then((res) => { warehouseUserList(query).then((res) => {
this.entrustUserArray = []; this.entrustUserArray = [];
@ -316,9 +283,11 @@ export default {
created() { created() {
this.findSubInvByInv();
if(this.inputQuery.entrustSubInv!=null && this.inputQuery.entrustSubInv!=undefined){
this.findEntrustSubInvByInv(this.inputQuery.entrustSubInv);
}
this.getList();
this.getStorage();
// if (this.$isNotBlank(this.inputQuery.entrustInv)) { // if (this.$isNotBlank(this.inputQuery.entrustInv)) {
// this.findEntrustSubInvByInv(); // this.findEntrustSubInvByInv();

@ -1074,7 +1074,7 @@ export default {
thirdId: row.thirdId, thirdId: row.thirdId,
isUseDy: row.isUseDy, isUseDy: row.isUseDy,
}; };
this.checked = row.isUseDy == 1;
let ttquery = { let ttquery = {
uuid: row.uuid, uuid: row.uuid,

@ -188,7 +188,8 @@ export default {
this.loading = true; this.loading = true;
this.query.orderIdFk = this.idQuery.orderIdFk; this.query.orderIdFk = this.idQuery.orderIdFk;
let query = { let query = {
orderIdFk: this.idQuery.orderIdFk orderIdFk: this.idQuery.orderIdFk,
code:this.query.code
} }
/* this.query.batchNo = this.idQuery.batchNo; /* this.query.batchNo = this.idQuery.batchNo;
this.query.supId = this.idQuery.supId; this.query.supId = this.idQuery.supId;

@ -196,18 +196,18 @@
v-if="selectProductVisible" v-if="selectProductVisible"
:append-to-body='true' :append-to-body='true'
> >
<stockOrderNewSelectProduct <purPlanOrderSelectProduct
:closeDialog="closeDialogC2" :closeDialog="closeDialogC2"
:data="thisData" :data="thisData"
:purType="1" :purType="1"
></stockOrderNewSelectProduct> ></purPlanOrderSelectProduct>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
<script> <script>
import draggable from "vuedraggable"; import draggable from "vuedraggable";
import stockOrderNewSelectProduct from "../warehouse/stockOrderNewSelectProduct"; import purPlanOrderSelectProduct from "../purchase/purPlanOrderSelectProduct";
import {inserThrOrderWeb, delApplyDetail, listApplyDetail} from "@/api/purchase/purApply"; import {inserThrOrderWeb, delApplyDetail, listApplyDetail} from "@/api/purchase/purApply";
import {filterAllByUser} from "@/api/basic/invWarehouse"; import {filterAllByUser} from "@/api/basic/invWarehouse";
import {filterSubByInv} from "@/api/basic/invSubWarehouse"; import {filterSubByInv} from "@/api/basic/invSubWarehouse";
@ -277,7 +277,7 @@ export default {
}, },
components: { components: {
draggable, draggable,
stockOrderNewSelectProduct, purPlanOrderSelectProduct,
}, },
methods: { methods: {
saveOrder(status) { saveOrder(status) {

@ -84,7 +84,7 @@
<el-col :span="7"> <el-col :span="7">
<el-form-item prop="locStorageCode"> <el-form-item prop="locStorageCode">
<el-select v-model="formData.invWarehouseCode" auto-complete="" @change="setLocStorageCode" filterable placeholder="采购库信息" style="width: 100%" <el-select v-model="formData.invWarehouseCode" auto-complete="" @change="setLocStorageCode" filterable placeholder="采购库信息" style="width: 100%"
clearable> clearable>
<el-option <el-option
v-for="item in subInvList" v-for="item in subInvList"
@ -98,10 +98,6 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row :gutter="20" style="margin-top: -10px">
<el-col :span="3"> <el-col :span="3">
<div class="ao-text"> <div class="ao-text">
<span>采购说明</span> <span>采购说明</span>
@ -112,7 +108,9 @@
<el-input v-model="formData.remark" auto-complete="off" type="textarea" autosize></el-input> <el-input v-model="formData.remark" auto-complete="off" type="textarea" autosize></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row :gutter="20" style="margin-top: -10px">
<el-col :span="3" v-show="formData.status==4"> <el-col :span="3" v-show="formData.status==4">
<div class="ao-text"> <div class="ao-text">
<span>拒绝原因</span> <span>拒绝原因</span>
@ -241,11 +239,11 @@
v-if="selectProductVisible" v-if="selectProductVisible"
:append-to-body='true' :append-to-body='true'
> >
<stockOrderNewSelectProduct <purPlanOrderSelectProduct
:closeDialog="closeDialogC2" :closeDialog="closeDialogC2"
:purType="1" :purType="1"
:data="thisData" :data="thisData"
></stockOrderNewSelectProduct> ></purPlanOrderSelectProduct>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
@ -268,7 +266,7 @@
<script> <script>
import draggable from "vuedraggable"; import draggable from "vuedraggable";
import stockOrderNewSelectProduct from "../warehouse/stockOrderNewSelectProduct"; import purPlanOrderSelectProduct from "../purchase/purPlanOrderSelectProduct";
import {inserThrOrderWeb, delApplyDetail, listApplyDetail} from "@/api/purchase/purPlan"; import {inserThrOrderWeb, delApplyDetail, listApplyDetail} from "@/api/purchase/purPlan";
import {filterAllByUser} from "@/api/basic/invWarehouse"; import {filterAllByUser} from "@/api/basic/invWarehouse";
import {filterSubByInv} from "@/api/basic/invSubWarehouse"; import {filterSubByInv} from "@/api/basic/invSubWarehouse";
@ -342,7 +340,7 @@ export default {
components: { components: {
SelectApplyListDialog, SelectApplyListDialog,
draggable, draggable,
stockOrderNewSelectProduct, purPlanOrderSelectProduct,
}, },
methods: { methods: {
saveOrder(status) { saveOrder(status) {
@ -415,7 +413,7 @@ export default {
this.selectProductVisible = true; this.selectProductVisible = true;
}, },
setLocStorageCode(obj){ setLocStorageCode(obj){
 this.formData.locStorageCode= this.subInvList.find(item => item.code == obj).parentId; this.formData.locStorageCode= this.subInvList.find(item => item.code == obj).parentId;
}, },
selectApply() { selectApply() {

@ -0,0 +1,447 @@
<template>
<div>
<el-card class="el-card">
<div>
<el-form :inline="true" :model="listQuery" size="mini">
<el-row style="margin-top: 15px;width: 1000px">
<el-form-item class="query-form-item">
<el-input v-model="listQuery.udiCode"
style="width: 600px"
placeholder="请扫描或输入UDI码"
clearable="true"
@keyup.enter.native="keyup_submit($event)"></el-input>
</el-form-item>
</el-row>
<el-row>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.unionCode" placeholder="DI/医保编码/商品条码"
clearable="true"></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.cpmctymc" placeholder="产品通用名" clearable="true"></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.ggxh" placeholder="规格型号" clearable="true"></el-input>
</el-form-item>
</el-row>
<el-row>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.ylqxzcrbarmc" placeholder="生产企业/注册备案人"
clearable="true"></el-input>
</el-form-item>
<el-form-item class="query-form-item">
<el-input v-model="listQuery.thrPiId" placeholder="第三方产品编码" clearable="true"></el-input>
</el-form-item>
<el-form-item>
<el-button-group>
<el-button type="primary" icon="el-icon-refresh" @click="onReset"></el-button>
<el-button type="primary" icon="search" @click="search"></el-button>
<el-button type="primary" icon="search" @click="confirmSelect"></el-button>
</el-button-group>
</el-form-item>
</el-row>
</el-form>
<el-table
:data="dataList"
style="width: 100%"
highlight-current-row="false"
v-loading="loading"
:row-class-name="tableRowClassName"
@current-change="handleChange"
ref="multipleTable"
>
<!-- <el-table-column-->
<!-- type="selection"-->
<!-- width="55">-->
<!-- </el-table-column>-->
<el-table-column label width="45">
<template slot-scope="scope">
<el-radio :label="scope.row.id" v-model="radioCheck"><span></span></el-radio>
</template>
</el-table-column>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column
label="最小销售产品标识"
prop="nameCode"
width="140"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="产品编码"
prop="thirdId"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="医疗器械注册人"
prop="ylqxzcrbarmc"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="产品通用名"
prop="cpmctymc"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="规格型号"
prop="ggxh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="注册/备案凭证"
prop="zczbhhzbapzbh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="器械类别"
prop="qxlb"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="配送企业"
prop="companyName"
show-overflow-tooltip
></el-table-column>
<el-table-column label="操作" fixed="right" width="160">
<template slot-scope="scope">
<el-button
type="text"
size="small"
@click.native.stop="handleDetailClick(scope.row)"
>详情
</el-button
>
</template>
</el-table-column>
</el-table>
<el-pagination
:page-size="listQuery.limit"
@current-change="handleErpPageChange"
layout="prev, pager, next"
:total="pageTotal"
:current-page="listQuery.page"
></el-pagination>
</div>
</el-card>
<el-dialog
title="耗材字典详情"
:visible.sync="udiRlDetailVisible"
width="85%"
:close-on-click-modal="false"
:close-on-press-escape="false"
append-to-body
v-if="udiRlDetailVisible"
>
<udiRlDetailDialog :editQuery="currentRow"></udiRlDetailDialog>
</el-dialog>
<el-dialog title="请选择对应的资质证书" :visible.sync="dialogFormVisible" append-to-body width="40%">
<el-form :model="form">
<el-form-item label="" prop="isGive">
<el-radio-group v-model="currentCert">
<el-radio :label="item" :key="item" v-for="item in certList">{{ item }}</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="selectCert"> </el-button>
<el-button @click="dialogFormVisible = false"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
getStockOrderDetailInstrumentById,
stockOrderDetailFilterProduct
} from "../../api/warehouse/stockOrder";
import store from "../../store";
import udiRlDetailDialog from "./../basic/UdiRlDetailDialog";
export default {
name: "stockOrderNewSelectProduct",
props: {
data: {
type: Object,
required: true,
},
closeDialog: {
type: Function,
required: true,
},
purType: {
type: Object,
required: true,
},
},
data() {
return {
listQuery: {
udiCode: "",
unionCode: "",
cpmctymc: "",
ggxh: "",
ylqxzcrbarmc: "",
thrPiId: "",
page: 1,
limit: 10,
},
combineQuery: {
thirdId: "",
relId: "",
erpName: "",
keys: [],
},
ids: [],
radioCheck: null,
dataList: [],
pageTotal: 1,
total: 1,
currentRow: null,
loading: false,
udiRlDetailVisible: false,
thirdSys: [],
thirdSysFk: null,
busTypes: [],
actDateRange: [],
pickerOptions: {
shortcuts: [
{
text: "最近一周",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近一个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit("pick", [start, end]);
},
},
{
text: "最近三个月",
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit("pick", [start, end]);
},
},
],
},
orderEditor: false,
orderId: "",
currentCert: null,
certList: [],
dialogFormVisible: false,
multipleSelection: null,
};
},
methods: {
onReset() {
// this.$router.push({
// path: "",
// });
this.listQuery = {
udiCode: "",
unionCode: "",
cpmctymc: "",
ggxh: "",
ylqxzcrbarmc: "",
thrPiId: "",
page: 1,
limit: 10,
},
this.getList();
},
tableRowClassName({row}) {
if (row.checked) return "warning-row";
return "";
},
checkSelectable(row) {
return !row.check;
},
handleCurrentChange(val) {
this.unionQuery.page = val;
this.getList();
},
handleChange(val) {
this.radioCheck = val.id;
this.currentRow = val;
this.multipleSelection = val
},
handleDetailClick(row) {
this.currentRow = row;
this.udiRlDetailVisible = true;
},
handleErpPageChange(val) {
this.listQuery.page = val;
this.getList();
},
keyup_submit(event) {
this.listQuery.page = 1;
this.getList();
event.target.select();
},
search() {
this.listQuery.page = 1;
this.getList();
},
getList() {
this.loading = true;
this.listQuery.customerId = store.getters.customerId;
if(this.listQuery.customerId==110 && this.data.formData!=null && this.data.formData!=undefined){
this.listQuery.companyName=this.data.formData.corpName
}
if(this.listQuery.customerId!=110 && this.data!=null && this.data!=undefined){
this.listQuery.companyName=this.data.corpName
}
stockOrderDetailFilterProduct(this.listQuery)
.then((response) => {
this.loading = false;
if (response.code === 20000) {
this.dataList = response.data.list || [];
this.pageTotal = response.data.total || 0;
} else {
this.$message.error(response.message);
this.dataList = [];
this.pageTotal = 0;
}
})
.catch(() => {
this.loading = false;
this.dataList = [];
this.pageTotal = 0;
});
},
intentBack() {
this.closeDialog();
},
confirmSelect() {
if (this.multipleSelection == null) {
this.$message.error('未选择产品');
return;
}
if (this.ids.length > 0) {
for (var i = 0; i < this.ids.length; i++) {
if (this.ids[i] == this.multipleSelection.rlId) {
this.$message.error("该产品已录入!");
return
}
}
}
let str = this.multipleSelection.zczbhhzbapzbh;
if (str.search(",") != -1) {
this.currentCert = null;
this.certList = str.split(',');
this.dialogFormVisible = true;
} else {
this.combine();
}
},
combine() {
let ids = [];
let data = {
relId: this.multipleSelection.rlId,
supId: this.multipleSelection.customerId,
zczbhhzbapzbh: this.multipleSelection.zczbhhzbapzbh,
}
ids.push(data);
this.loading = true;
let tQuery = {
datas: ids,
stockOrderLists: this.data.stockOrderLists,
purType: this.purType
};
getStockOrderDetailInstrumentById(tQuery).then((response) => {
this.loading = false;
if (response.code === 20000) {
this.closeDialog(response.data);
} else {
if (response.code == 601) {
this.$alert(response.message, "提示", {
confirmButtonText: "确定",
});
} else
this.$message.error(response.message);
}
}).catch(() => {
this.loading = false;
});
},
selectCert() {
if (this.currentCert == null) {
this.$message.error("请先选择对应的注册证!");
} else {
this.multipleSelection.zczbhhzbapzbh = this.currentCert;
this.combine();
}
},
},
components: {udiRlDetailDialog},
created() {
if (this.$isNotBlank(this.data)) {
// this.listQuery.nameCode = this.data.udi;
// if (this.data.billType != null) {
// this.listQuery.billType = this.data.billType;
// } else
// this.listQuery.billType = this.data.formData.billType;
// if (this.data.formData != null) {
// this.listQuery.corpId = this.data.formData.corpId;
// }
// this.orderEditor = this.data.orderEditor;
// this.orderId = this.data.orderId;
this.ids = [];
if (this.data.stockOrderLists.length > 0) {
for (var i = 0; i < this.data.stockOrderLists.length; i++) {
this.ids.push(this.data.stockOrderLists[i].productId);
}
}
}
this.getList();
},
};
</script>
<style scoped>
.query-form-item {
display: block !important;
margin-right: 10px;
margin-bottom: 5px;
}
div /deep/ .el-table .warning-row {
background: #bebebe;
}
div /deep/ .el-table .success-row {
background: #ffffff;
}
</style>

File diff suppressed because it is too large Load Diff

@ -70,13 +70,13 @@
<el-col :span="2"> <el-col :span="2">
<div class="ao-text"> <div class="ao-text">
<span>当前</span> <span>当前</span>
</div> </div>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item prop="invWarehouseCode"> <el-form-item prop="invWarehouseCode">
<el-select v-model="formData.invWarehouseCode" placeholder="当前库信息" <el-select v-model="formData.invWarehouseCode" placeholder="当前库信息"
:disabled="corpOrderIdDisabled" @change="findSubStorageMethod" filterable> :disabled="corpOrderIdDisabled" @change="findSubStorageMethod" filterable>
<el-option <el-option
v-for="item in subInvList" v-for="item in subInvList"

@ -145,13 +145,13 @@
<el-col :span="3"> <el-col :span="3">
<div class="ao-text"> <div class="ao-text">
<span>当前</span> <span>当前</span>
</div> </div>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
<el-form-item prop="invWarehouseCode"> <el-form-item prop="invWarehouseCode">
<el-select v-model="formData.invWarehouseCode" filterable placeholder="当前库信息" <el-select v-model="formData.invWarehouseCode" filterable placeholder="当前库信息"
:disabled="codeArray.length>0" :disabled="codeArray.length>0"
@change="subStorageChange" @change="subStorageChange"
clearable> clearable>

@ -515,15 +515,15 @@ export default {
newSpDistributionVisible: false, newSpDistributionVisible: false,
isSp: store.getters.customerId, isSp: store.getters.customerId,
detailFormRules: { detailFormRules: {
batchNo: [ // batchNo: [
{required: true, message: "请输入批次号", trigger: "blur"} // {required: true, message: "", trigger: "blur"}
], // ],
productDate: [ // productDate: [
{required: true, message: "请输入生产日期", trigger: "blur"} // {required: true, message: "", trigger: "blur"}
], // ],
expireDate: [ // expireDate: [
{required: true, message: "请输入失效日期", trigger: "blur"} // {required: true, message: "", trigger: "blur"}
], // ],
sweepCount: [ sweepCount: [
{required: true, message: "请输入扫码数量", trigger: "blur"} {required: true, message: "请输入扫码数量", trigger: "blur"}
] ]

@ -305,9 +305,10 @@ export default {
this.loading = true; this.loading = true;
this.listQuery.customerId = store.getters.customerId; this.listQuery.customerId = store.getters.customerId;
if(this.listQuery.customerId==110){ if(this.listQuery.customerId==110 && this.data.formData!=null && this.data.formData!=undefined){
this.listQuery.companyName=this.data.formData.corpName this.listQuery.companyName=this.data.formData.corpName
}else{ }
if(this.listQuery.customerId!=110 && this.data!=null && this.data!=undefined){
this.listQuery.companyName=this.data.corpName this.listQuery.companyName=this.data.corpName
} }

Loading…
Cancel
Save