Merge branch 'dev' into ywj_dev
# Conflicts: # .env.production # src/views/basic/busType/bussinessTypeModify.vuedev
commit
85cfa41118
@ -0,0 +1,88 @@
|
|||||||
|
import axios from "@/utils/request";
|
||||||
|
|
||||||
|
export function getBasicDestinyfilter(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/filter",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function addModeldestiny(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/addModeldestiny",
|
||||||
|
method: "post",
|
||||||
|
data: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function editModeldestiny(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/editModeldestiny",
|
||||||
|
method: "post",
|
||||||
|
data: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function delectModeldestiny(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/delectModeldestiny",
|
||||||
|
method: "post",
|
||||||
|
data: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function filterDestinyProduct(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/product/filter",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function addModeldestinyProduct(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/addModeldestinyProduct",
|
||||||
|
method: "post",
|
||||||
|
data: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function filterDestinyDelect(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/filterDestinyDelect",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function delectModeldestinyProduct(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/delectModeldestinyProduct",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function uploadModeldestinyProduct(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/uploadModeldestinyProduct",
|
||||||
|
method: "post",
|
||||||
|
data: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function addDestinyProcess(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/addDestinyProcess",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,58 @@
|
|||||||
|
import axios from '@/utils/request'
|
||||||
|
|
||||||
|
|
||||||
|
export function addDestinyDelect(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/addDestinyDelect",
|
||||||
|
method: "post",
|
||||||
|
data: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function filterDestinyDelect(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/filterDestinyProcessDelect",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function filterDestinyProcess(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/filterDestinyProcess",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function checkDestinyProcess(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/checkDestinyProcess",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function filterDestinyProcessCode(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/filterDestinyProcessCode",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function delectDestinyProcess(query) {
|
||||||
|
return axios({
|
||||||
|
url: "/udiwms/basic/destiny/model/delectDestinyProcess",
|
||||||
|
method: "get",
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,455 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-card>
|
||||||
|
<el-button-group style="display: flex">
|
||||||
|
<el-button type="primary" @click.native="submitUpload()" style="margin: 0 60px 10px auto; height: 35px"
|
||||||
|
:loading="loading">提交
|
||||||
|
</el-button>
|
||||||
|
</el-button-group>
|
||||||
|
<el-form :model="filterQuery" class="query-form" size="mini" label-width="120px" v-show="showSearch">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="唯一编码:">
|
||||||
|
<el-input v-model="filterQuery.destinyNo" :disabled="true" placeholder="请输入唯一编码"
|
||||||
|
clearable></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="单据号:">
|
||||||
|
<el-input v-model="filterQuery.billNo" :disabled="true" placeholder="请输入单据号" clearable></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="单据时间:">
|
||||||
|
<el-input v-model="filterQuery.billDate" :disabled="true" placeholder="请输入单据时间"
|
||||||
|
clearable></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="当前仓库:">
|
||||||
|
<el-select v-model="filterQuery.invCode" placeholder="当前仓库" filterable style="width: 100%" clearable>
|
||||||
|
<el-option
|
||||||
|
v-for="item in invList"
|
||||||
|
:key="item.code"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.code">
|
||||||
|
<span style="float: left">{{ item.name }}</span>
|
||||||
|
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.warehouseName }}</span>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<el-form-item label="备注:">
|
||||||
|
<el-input v-model="filterQuery.remark" placeholder="请输入当前仓库" clearable></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="18">
|
||||||
|
<el-form-item class="query-form-item" label="扫码录入:">
|
||||||
|
<el-input
|
||||||
|
id="inputer"
|
||||||
|
@focus="getInputFocus($event)"
|
||||||
|
@keypress.enter.native="addCode($event)"
|
||||||
|
ref='inputRef'
|
||||||
|
style="ime-mode:disabled"
|
||||||
|
type="tel"
|
||||||
|
v-model="filterQuery.code"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="2">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
@click.native.stop="addCode()"
|
||||||
|
style="margin-left: 15px"
|
||||||
|
>添加
|
||||||
|
</el-button>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
|
||||||
|
<div class="top-right-btn">
|
||||||
|
<el-button-group style="display:flex;">
|
||||||
|
<el-button type="primary" icon="el-icon-plus" @click="addDestiny">选入定数包</el-button>
|
||||||
|
</el-button-group>
|
||||||
|
</div>
|
||||||
|
<el-divider style="margin: 15px"></el-divider>
|
||||||
|
|
||||||
|
|
||||||
|
<el-tabs type="border-card" style="margin-top: 50px">
|
||||||
|
<el-tab-pane label="定数包详情">
|
||||||
|
<destiny-process-delect
|
||||||
|
:billNo="this.filterQuery.billNo"
|
||||||
|
:destinyProcessCodeShow="destinyProcessDelectShow"
|
||||||
|
v-if="destinyProcessDelectShow"
|
||||||
|
></destiny-process-delect>
|
||||||
|
</el-tab-pane>
|
||||||
|
<el-tab-pane label="扫码详情">
|
||||||
|
<destiny-process-code
|
||||||
|
:billNo="this.filterQuery.billNo"
|
||||||
|
:destinyProcessCodeShow="destinyProcessCodeShow"
|
||||||
|
v-if="destinyProcessCodeShow"
|
||||||
|
></destiny-process-code>
|
||||||
|
</el-tab-pane>
|
||||||
|
</el-tabs>
|
||||||
|
</el-card>
|
||||||
|
<el-dialog
|
||||||
|
title="选入定数包"
|
||||||
|
:visible.sync="orderMutiVisible"
|
||||||
|
:before-close="close"
|
||||||
|
width="60%"
|
||||||
|
append-to-body
|
||||||
|
v-if="orderMutiVisible"
|
||||||
|
@close='closeDialog'
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
:close-on-press-escape="false"
|
||||||
|
>
|
||||||
|
<destinyModel
|
||||||
|
:closeDialog="closeDialog"
|
||||||
|
></destinyModel>
|
||||||
|
</el-dialog>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import destinyModel from "@/views/basic/destiny/destinyModel";
|
||||||
|
import {delectMuti, detailMuti, filterList, selectMutiDetailList, selectMutiList} from "@/api/inout/orderMuti";
|
||||||
|
import {parseTime} from "@/utils/coTools";
|
||||||
|
import destinyProcessCode from "@/views/basic/destiny/destinyProcessCode";
|
||||||
|
import destinyProcessDelect from "@/views/basic/destiny/destinyProcessDelect";
|
||||||
|
import {findInvByUser} from "@/api/system/invSubWarehouse";
|
||||||
|
import {addDestinyDelect, checkDestinyProcess} from "@/api/inout/ioDestinyProcess";
|
||||||
|
import {addDestinyProcess} from "@/api/basic/basicDestinyRel";
|
||||||
|
import {delCorps} from "@/api/thrsys/thrCorps";
|
||||||
|
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "ioOrderMuti",
|
||||||
|
props: {
|
||||||
|
editQuery: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
closeDialogpr: {
|
||||||
|
type: Function,
|
||||||
|
required: true,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
showSearch: true,
|
||||||
|
filterQuery: {
|
||||||
|
destinyNo: '',
|
||||||
|
billNo: null,
|
||||||
|
billDate: null,
|
||||||
|
invCode: null,
|
||||||
|
remark: null,
|
||||||
|
code: null,
|
||||||
|
status: 0,
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
},
|
||||||
|
inputQuery: {
|
||||||
|
curInv: null,
|
||||||
|
fromCorp: "",
|
||||||
|
targetAction: null,
|
||||||
|
remark: null,
|
||||||
|
updateTime: null,
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
loading: false,
|
||||||
|
list: [],
|
||||||
|
formName: 1,
|
||||||
|
destinyProcessCodeShow: false,
|
||||||
|
destinyProcessDelectShow: false,
|
||||||
|
formMap: {
|
||||||
|
1: "新增使用出库",
|
||||||
|
2: "编辑使用出库",
|
||||||
|
},
|
||||||
|
statusMap: {
|
||||||
|
0: "草稿",
|
||||||
|
1: "未审核",
|
||||||
|
},
|
||||||
|
invList: [],
|
||||||
|
orderMutiVisible: false,
|
||||||
|
destinyId: null,
|
||||||
|
actDateRange: [],
|
||||||
|
detailList: [],
|
||||||
|
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]);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
statusFilterType(status) {
|
||||||
|
const statusMap = {
|
||||||
|
0: "warning",
|
||||||
|
1: "warning",
|
||||||
|
2: "danger",
|
||||||
|
3: "success",
|
||||||
|
};
|
||||||
|
return statusMap[status];
|
||||||
|
},
|
||||||
|
onReset() {
|
||||||
|
this.filterQuery = {
|
||||||
|
udiCode: null,
|
||||||
|
orderIdFk: null,
|
||||||
|
relIdFk: null,
|
||||||
|
mark: null,
|
||||||
|
status: 0,
|
||||||
|
cpmctymc: null,
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
}
|
||||||
|
this.actDateRange = []
|
||||||
|
this.getList();
|
||||||
|
this.detailList = []
|
||||||
|
},
|
||||||
|
onSubmit() {
|
||||||
|
this.filterQuery.page = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
handleCurrentChange(val) {
|
||||||
|
this.filterQuery.page = val.page;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
closeDialog(row) {
|
||||||
|
this.destinyId = row;
|
||||||
|
var query = {
|
||||||
|
destinyNo: this.filterQuery.destinyNo,
|
||||||
|
billNo: this.filterQuery.billNo,
|
||||||
|
billDate: this.filterQuery.billDate,
|
||||||
|
invCode: this.filterQuery.invCode,
|
||||||
|
remark: this.filterQuery.remark,
|
||||||
|
destinyId: this.destinyId,
|
||||||
|
}
|
||||||
|
addDestinyDelect(query).then((response) => {
|
||||||
|
if (response.code == 20000) {
|
||||||
|
this.orderMutiVisible = false;
|
||||||
|
this.destinyProcessDelectShow = false;
|
||||||
|
this.destinyProcessCodeShow = false;
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.destinyProcessCodeShow = true;
|
||||||
|
this.destinyProcessDelectShow = true;
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
}
|
||||||
|
}).catch(() => {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
});
|
||||||
|
|
||||||
|
},
|
||||||
|
hideSearch() {
|
||||||
|
this.showSearch = !this.showSearch;
|
||||||
|
},
|
||||||
|
getInputFocus(event) {
|
||||||
|
event.currentTarget.select();
|
||||||
|
},
|
||||||
|
addDestiny() {
|
||||||
|
if (this.filterQuery.invCode == null) {
|
||||||
|
this.$message.error("请先选择当前仓库!");
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (this.destinyProcessCodeShow == true) {
|
||||||
|
this.$confirm("此操作将永久删除扫码信息, 是否继续?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
}).then(() => {
|
||||||
|
this.orderMutiVisible = true;
|
||||||
|
})
|
||||||
|
}else{
|
||||||
|
this.orderMutiVisible = true;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
editDialog(row) {
|
||||||
|
this.formName = 2;
|
||||||
|
this.inputQuery = row;
|
||||||
|
this.orderMutiVisible = true;
|
||||||
|
}
|
||||||
|
,
|
||||||
|
getList() {
|
||||||
|
if (this.actDateRange != null) {
|
||||||
|
this.filterQuery.startDate = this.actDateRange[0];
|
||||||
|
this.filterQuery.endDate = this.actDateRange[1];
|
||||||
|
} else {
|
||||||
|
this.filterQuery.startDate = null;
|
||||||
|
this.filterQuery.endDate = null;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
|
selectMutiList(this.filterQuery)
|
||||||
|
.then((response) => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = response.data.list || [];
|
||||||
|
this.total = response.data.total || 0;
|
||||||
|
this.detailList = []
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = [];
|
||||||
|
this.total = 0;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
,
|
||||||
|
deleteDialog(row) {
|
||||||
|
delectMuti(row)
|
||||||
|
.then((response) => {
|
||||||
|
if (response.code == 20000) {
|
||||||
|
this.getList()
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
,
|
||||||
|
handleDetail(row) {
|
||||||
|
selectMutiDetailList({mutiIdFk: row.id}).then((response) => {
|
||||||
|
if (response.code == 20000) {
|
||||||
|
this.detailList = response.data || [];
|
||||||
|
this.inputQuery.useCount = this.detailList.length
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
,
|
||||||
|
addCode() {
|
||||||
|
if (this.filterQuery.invCode == null) {
|
||||||
|
this.$message.error("请先选择当前仓库!");
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (this.filterQuery.code == null) {
|
||||||
|
this.$message.error("请先扫码!");
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var query = {
|
||||||
|
code: this.filterQuery.code,
|
||||||
|
billNo: this.filterQuery.billNo
|
||||||
|
}
|
||||||
|
checkDestinyProcess(query).then((response) => {
|
||||||
|
if (response.code == 20000) {
|
||||||
|
this.destinyProcessDelectShow = false;
|
||||||
|
this.destinyProcessCodeShow = false;
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.destinyProcessCodeShow = true;
|
||||||
|
this.destinyProcessDelectShow = true;
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
}
|
||||||
|
}).catch(() => {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
,
|
||||||
|
submitUpload() {
|
||||||
|
var query = {
|
||||||
|
billNo: this.filterQuery.billNo
|
||||||
|
}
|
||||||
|
addDestinyProcess(query).then((response) => {
|
||||||
|
if (response.code == 20000) {
|
||||||
|
this.closeDialogpr()
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
,
|
||||||
|
generateUUID() {
|
||||||
|
// 获取时间戳
|
||||||
|
let date = (new Date()).valueOf();
|
||||||
|
// 生成的随机机器码
|
||||||
|
let txt = '1234567890';
|
||||||
|
// 机器码有多少位
|
||||||
|
let len = 13;
|
||||||
|
// 定义空变量用来接收机器码
|
||||||
|
let pwd = '';
|
||||||
|
for (let i = 0; i < len; i++) {
|
||||||
|
// 循环机器码位数随机填充
|
||||||
|
pwd += txt.charAt(Math.floor(Math.random() * txt.length));
|
||||||
|
}
|
||||||
|
// 相加生成唯一ID
|
||||||
|
return date + pwd;
|
||||||
|
}
|
||||||
|
,
|
||||||
|
//获取当前仓库
|
||||||
|
findCurInvs() {
|
||||||
|
this.invList = [];
|
||||||
|
findInvByUser()
|
||||||
|
.then((response) => {
|
||||||
|
this.invList = response.data || [];
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
});
|
||||||
|
}
|
||||||
|
,
|
||||||
|
},
|
||||||
|
components: {destinyModel, destinyProcessCode, destinyProcessDelect},
|
||||||
|
created() {
|
||||||
|
if (this.$isBlank(this.editQuery.billNo)) {
|
||||||
|
let date = new Date();
|
||||||
|
this.filterQuery.billNo =
|
||||||
|
parseTime(date, "{y}{m}{d}{h}{i}{s}") +
|
||||||
|
Math.ceil(Math.random() * 89 + 10);
|
||||||
|
this.filterQuery.billDate = parseTime(
|
||||||
|
date,
|
||||||
|
"{y}-{m}-{d} {h}:{i}:{s}"
|
||||||
|
);
|
||||||
|
this.filterQuery.destinyNo = this.generateUUID();
|
||||||
|
} else {
|
||||||
|
this.filterQuery = this.editQuery
|
||||||
|
this.destinyProcessDelectShow = true
|
||||||
|
this.destinyProcessCodeShow = true
|
||||||
|
}
|
||||||
|
|
||||||
|
this.getList();
|
||||||
|
this.findCurInvs();
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,263 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-card>
|
||||||
|
<el-form :model="filterQuery" label-width="100px" size="mini">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-form-item label="模板名称:" class="query-form-item">
|
||||||
|
<el-input v-model="filterQuery.name" placeholder="请输入模板名称"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-form-item label="模板编码:" class="query-form-item">
|
||||||
|
<el-input v-model="filterQuery.code" placeholder="请输入模板编码"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<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="onSubmit">查询</el-button>
|
||||||
|
<el-button type="primary" icon="search" @click="handleAddClick">新增</el-button>
|
||||||
|
</el-button-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
|
||||||
|
<el-table v-loading="loading" :data="list" @current-change="handleDetail" border highlight-current-row
|
||||||
|
style="width: 100%">
|
||||||
|
<el-table-column label="序号" type="index"></el-table-column>
|
||||||
|
<el-table-column label="模板编码" prop="name" width="260"></el-table-column>
|
||||||
|
<el-table-column label="模板名称" prop="code" width="260"></el-table-column>
|
||||||
|
<el-table-column label="备注" prop="remark" width="260"></el-table-column>
|
||||||
|
<el-table-column label="创建人" prop="createByName" width="260"></el-table-column>
|
||||||
|
<el-table-column label="创建时间" prop="createTime" width="260"></el-table-column>
|
||||||
|
<el-table-column label="操作" width="220">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button type="text" size="small" @click.native.stop="handleModifyClick(scope.row)">编辑</el-button>
|
||||||
|
<el-button type="text" size="small" @click.native.stop="deleteDialog(scope.row)">删除</el-button>
|
||||||
|
<el-button type="text" size="small" @click.native.stop="selectDialog(scope.row)">选入产品</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
<pagination
|
||||||
|
v-show="total>0"
|
||||||
|
:total="total"
|
||||||
|
:limit.sync="filterQuery.limit"
|
||||||
|
:page.sync="filterQuery.page"
|
||||||
|
@pagination="handleCurrentChange"
|
||||||
|
></pagination>
|
||||||
|
</el-card>
|
||||||
|
|
||||||
|
<el-card>
|
||||||
|
<el-table v-loading="loading" :data="delectList" border highlight-current-row style="width: 100%">
|
||||||
|
<el-table-column label="序号" type="index"></el-table-column>
|
||||||
|
<el-table-column label="产品DI" prop="nameCode" width="260"></el-table-column>
|
||||||
|
<el-table-column label="产品编码" prop="thirdId" width="260"></el-table-column>
|
||||||
|
<el-table-column label="产品名称" prop="cpmctymc" width="260"></el-table-column>
|
||||||
|
<el-table-column label="规格型号" prop="ggxh"></el-table-column>
|
||||||
|
<el-table-column label="计量单位" prop="measname"></el-table-column>
|
||||||
|
<el-table-column label="数量" prop="count"></el-table-column>
|
||||||
|
<el-table-column label="生产企业" prop="ylqxzcrbarmc"></el-table-column>
|
||||||
|
<el-table-column label="注册/备案号" prop="certCode"></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<pagination
|
||||||
|
v-show="delectTotal>0"
|
||||||
|
:total="delectTotal"
|
||||||
|
:limit.sync="delectQuery.limit"
|
||||||
|
:page.sync="delectQuery.page"
|
||||||
|
@pagination="handleCurrentDelectChange"
|
||||||
|
></pagination>
|
||||||
|
</el-card>
|
||||||
|
|
||||||
|
<el-dialog
|
||||||
|
:title="formMap[formName]"
|
||||||
|
:visible.sync="formVisible"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
:close-on-press-escape="false"
|
||||||
|
width="40%"
|
||||||
|
:before-close="closeDialog"
|
||||||
|
v-if="formVisible"
|
||||||
|
>
|
||||||
|
<destinyModelEdit
|
||||||
|
:editQuery="editQuery"
|
||||||
|
:closeDialog="closeDialog"
|
||||||
|
></destinyModelEdit>
|
||||||
|
</el-dialog>
|
||||||
|
|
||||||
|
<el-dialog
|
||||||
|
title="选入产品"
|
||||||
|
:visible.sync="selectFormVisible"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
:close-on-press-escape="false"
|
||||||
|
width="80%"
|
||||||
|
:before-close="closeDialog"
|
||||||
|
v-if="selectFormVisible"
|
||||||
|
>
|
||||||
|
<destinyModelSelectProduct
|
||||||
|
:editQuery="editQuery"
|
||||||
|
:codeArray="codeArray"
|
||||||
|
:closeDialog="closeDialog"
|
||||||
|
></destinyModelSelectProduct>
|
||||||
|
</el-dialog>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {
|
||||||
|
addModeldestiny,
|
||||||
|
delectModeldestiny,
|
||||||
|
filterDestinyDelect,
|
||||||
|
getBasicDestinyfilter
|
||||||
|
} from "@/api/basic/basicDestinyRel";
|
||||||
|
import destinyModelEdit from "@/views/basic/destiny/destinyModelEdit";
|
||||||
|
import destinyModelSelectProduct from "@/views/basic/destiny/destinyModelSelectProduct";
|
||||||
|
|
||||||
|
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
filterQuery: {
|
||||||
|
name: "",
|
||||||
|
code: "",
|
||||||
|
type: 2,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
},
|
||||||
|
editType: "",
|
||||||
|
formVisible: false,
|
||||||
|
selectFormVisible: false,
|
||||||
|
loading: false,
|
||||||
|
formName: "",
|
||||||
|
total: 0,
|
||||||
|
list: [],
|
||||||
|
codeArray: [],
|
||||||
|
editQuery: {},
|
||||||
|
formMap: {
|
||||||
|
"add": "新增定数包模板",
|
||||||
|
"edit": "编辑定数包模板"
|
||||||
|
},
|
||||||
|
delectQuery: {
|
||||||
|
id: null,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
},
|
||||||
|
delectList: [],
|
||||||
|
delectTotal: 0,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onReset() {
|
||||||
|
this.$router.push({
|
||||||
|
path: ""
|
||||||
|
});
|
||||||
|
this.filterQuery = {
|
||||||
|
name: "",
|
||||||
|
code: "",
|
||||||
|
type: 2,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
};
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
onSubmit() {
|
||||||
|
this.$router.push({
|
||||||
|
path: "",
|
||||||
|
});
|
||||||
|
this.filterQuery.page = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
getBasicDestinyfilter(this.filterQuery).then(response => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = response.data.list || [];
|
||||||
|
this.total = response.data.total || 0;
|
||||||
|
}).catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = [];
|
||||||
|
this.total = 0;
|
||||||
|
this.roles = [];
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handleCurrentChange(val) {
|
||||||
|
this.filterQuery.page = val.page;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
handleCurrentDelectChange(val) {
|
||||||
|
this.delectQuery.page = val.page;
|
||||||
|
this.filterDestinyDelect()
|
||||||
|
},
|
||||||
|
handleAddClick() {
|
||||||
|
this.formName = "add";
|
||||||
|
this.formVisible = true;
|
||||||
|
},
|
||||||
|
handleModifyClick(row) {
|
||||||
|
this.formName = "edit";
|
||||||
|
this.formVisible = true;
|
||||||
|
this.editQuery = row;
|
||||||
|
},
|
||||||
|
deleteDialog(row) {
|
||||||
|
delectModeldestiny(row).then(res => {
|
||||||
|
if (res.code == 20000) {
|
||||||
|
this.getList();
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.message);
|
||||||
|
}
|
||||||
|
}).catch(() => {
|
||||||
|
this.$message.error("删除失败!");
|
||||||
|
});
|
||||||
|
},
|
||||||
|
selectDialog(row) {
|
||||||
|
this.selectFormVisible = true;
|
||||||
|
this.editQuery = row;
|
||||||
|
},
|
||||||
|
closeDialog() {
|
||||||
|
this.formVisible = false;
|
||||||
|
this.selectFormVisible = false;
|
||||||
|
this.getList();
|
||||||
|
this.delectList=[]
|
||||||
|
this.editQuery = {}
|
||||||
|
},
|
||||||
|
handleDetail(row) {
|
||||||
|
this.delectQuery.id = row.id
|
||||||
|
this.filterDestinyDelect()
|
||||||
|
},
|
||||||
|
filterDestinyDelect() {
|
||||||
|
filterDestinyDelect(this.delectQuery)
|
||||||
|
.then((response) => {
|
||||||
|
this.loading = false;
|
||||||
|
if (response.code === 20000) {
|
||||||
|
this.delectList = response.data.list || [];
|
||||||
|
this.delectTotal = response.data.total || 0;
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
this.delectList = [];
|
||||||
|
this.delectTotal = 0;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
this.delectList = [];
|
||||||
|
this.delectTotal = 0;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
}
|
||||||
|
,
|
||||||
|
mounted() {
|
||||||
|
}
|
||||||
|
,
|
||||||
|
components: {
|
||||||
|
destinyModelEdit, destinyModelSelectProduct
|
||||||
|
}
|
||||||
|
,
|
||||||
|
created() {
|
||||||
|
this.getList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
;
|
||||||
|
</script>
|
@ -0,0 +1,145 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-card>
|
||||||
|
<el-form :model="filterQuery" label-width="100px" size="mini">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-form-item label="模板名称:" class="query-form-item">
|
||||||
|
<el-input v-model="filterQuery.name" placeholder="请输入模板名称"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-form-item label="模板编码:" class="query-form-item">
|
||||||
|
<el-input v-model="filterQuery.code" placeholder="请输入模板编码"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<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="onSubmit">查询</el-button>
|
||||||
|
<el-button type="primary" icon="search" @click="combine">选入</el-button>
|
||||||
|
</el-button-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
|
||||||
|
<el-table :data="list" border highlight-current-row style="width: 100%" >
|
||||||
|
<el-table-column width="50">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-radio v-model="radio" :label="scope.row.id" @change.native.stop="showRow(scope.row.id)"><span></span></el-radio>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="序号" type="index"></el-table-column>
|
||||||
|
<el-table-column label="模板编码" prop="name" ></el-table-column>
|
||||||
|
<el-table-column label="模板名称" prop="code" ></el-table-column>
|
||||||
|
<el-table-column label="备注" prop="remark" ></el-table-column>
|
||||||
|
<el-table-column label="创建人" prop="createByName" ></el-table-column>
|
||||||
|
<el-table-column label="创建时间" prop="createTime" ></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
<pagination
|
||||||
|
v-show="total>0"
|
||||||
|
:total="total"
|
||||||
|
:limit.sync="filterQuery.limit"
|
||||||
|
:page.sync="filterQuery.page"
|
||||||
|
@pagination="handleCurrentChange"
|
||||||
|
></pagination>
|
||||||
|
</el-card>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {
|
||||||
|
addModeldestiny,
|
||||||
|
delectModeldestiny,
|
||||||
|
filterDestinyDelect,
|
||||||
|
getBasicDestinyfilter
|
||||||
|
} from "@/api/basic/basicDestinyRel";
|
||||||
|
import destinyModelEdit from "@/views/basic/destiny/destinyModelEdit";
|
||||||
|
import destinyModelSelectProduct from "@/views/basic/destiny/destinyModelSelectProduct";
|
||||||
|
import {isBlank} from "@/utils/strUtil";
|
||||||
|
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
closeDialog: {
|
||||||
|
type: Function,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
filterQuery: {
|
||||||
|
name: "",
|
||||||
|
code: "",
|
||||||
|
type: 2,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
destinyId:null,
|
||||||
|
radio:null,
|
||||||
|
list: [],
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onReset() {
|
||||||
|
this.$router.push({
|
||||||
|
path: ""
|
||||||
|
});
|
||||||
|
this.filterQuery = {
|
||||||
|
name: "",
|
||||||
|
code: "",
|
||||||
|
type: 2,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
};
|
||||||
|
this.getList();
|
||||||
|
this.destinyId=null
|
||||||
|
},
|
||||||
|
onSubmit() {
|
||||||
|
this.$router.push({
|
||||||
|
path: "",
|
||||||
|
});
|
||||||
|
this.filterQuery.page = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
getBasicDestinyfilter(this.filterQuery).then(response => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = response.data.list || [];
|
||||||
|
this.total = response.data.total || 0;
|
||||||
|
}).catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = [];
|
||||||
|
this.total = 0;
|
||||||
|
this.roles = [];
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handleCurrentChange(val) {
|
||||||
|
this.filterQuery.page = val.page;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
showRow (row) {
|
||||||
|
this.destinyId= row
|
||||||
|
},
|
||||||
|
combine(){
|
||||||
|
if(isBlank(this.destinyId)){
|
||||||
|
return this.$message.error("请先选择定数包!");
|
||||||
|
}
|
||||||
|
this.closeDialog(this.destinyId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,
|
||||||
|
mounted() {
|
||||||
|
}
|
||||||
|
,
|
||||||
|
created() {
|
||||||
|
this.getList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
;
|
||||||
|
</script>
|
@ -0,0 +1,113 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-form :model="editLogin" label-width="30%">
|
||||||
|
<el-card>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="18">
|
||||||
|
<div class="text item">
|
||||||
|
<el-form-item label="模板名称" prop="unitId">
|
||||||
|
<el-input v-model="editLogin.name" placeholder="请输入模板名称" style="width: 100%"
|
||||||
|
size="small"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="18">
|
||||||
|
<div class="text item">
|
||||||
|
<el-form-item label="模板编号" prop="unitId">
|
||||||
|
<el-input v-model="editLogin.code" placeholder="请输入模板编号" style="width: 100%"
|
||||||
|
size="small"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="18">
|
||||||
|
<div class="text item">
|
||||||
|
<el-form-item label="备注" prop="unitId">
|
||||||
|
<el-input type="textarea" :rows="3" v-model="editLogin.remark" placeholder="请输入备注"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<div style="text-align: center; margin-top: 10px;">
|
||||||
|
<el-button type="primary" size="small" icon="search" @click="onModifySubmit">提交</el-button>
|
||||||
|
<el-button type="primary" size="small" icon="search" @click="closeDialog">取消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-card>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
|
||||||
|
import {addModeldestiny,editModeldestiny} from "@/api/basic/basicDestinyRel";
|
||||||
|
import {isBlank} from "@/utils/strUtil";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'bindPlatformModel',
|
||||||
|
props: {
|
||||||
|
closeDialog: {
|
||||||
|
type: Function,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
editQuery: {
|
||||||
|
type: Object,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
editLogin: {
|
||||||
|
id: null,
|
||||||
|
name: null,
|
||||||
|
code: null,
|
||||||
|
remark: null,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onModifySubmit() {
|
||||||
|
if (this.editLogin.id != null) {
|
||||||
|
editModeldestiny(this.editLogin).then(res => {
|
||||||
|
if (res.code == 20000) {
|
||||||
|
this.closeDialog();
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.message);
|
||||||
|
}
|
||||||
|
}).catch(() => {
|
||||||
|
this.$message.error("编辑失败!");
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
addModeldestiny(this.editLogin).then(res => {
|
||||||
|
if (res.code == 20000) {
|
||||||
|
this.closeDialog();
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.message);
|
||||||
|
}
|
||||||
|
}).catch(() => {
|
||||||
|
this.$message.error("提交失败!");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
if(isBlank(this.editQuery.id)){
|
||||||
|
this.editLogin = {}
|
||||||
|
}else {
|
||||||
|
this.editLogin = this.editQuery
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,222 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-form :model="editLogin" label-width="120px">
|
||||||
|
<el-card>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="6">
|
||||||
|
<div class="text item">
|
||||||
|
<el-form-item label="产品名称" prop="unitId">
|
||||||
|
<el-input v-model="editLogin.cpmctymc" placeholder="请输入产品名称" style="width: 100%"
|
||||||
|
size="small"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="11" style="margin-left: 20px">
|
||||||
|
<el-button type="primary" size="small" icon="search" @click="onModifySelect">查询</el-button>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-divider style="margin: 15px"></el-divider>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-button type="primary" style="float: right;margin-bottom: 12px;margin-right: 20px" size="small"
|
||||||
|
icon="search" @click="selectProduct">选入产品
|
||||||
|
</el-button>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
|
||||||
|
<el-table v-loading="loading" :data="list" border highlight-current-row style="width: 100%">
|
||||||
|
<el-table-column label="序号" type="index"></el-table-column>
|
||||||
|
<el-table-column label="产品DI" prop="nameCode" width="260"></el-table-column>
|
||||||
|
<el-table-column label="产品编码" prop="thirdId" width="260"></el-table-column>
|
||||||
|
<el-table-column label="产品名称" prop="cpmctymc" width="260"></el-table-column>
|
||||||
|
<el-table-column label="规格型号" prop="ggxh"></el-table-column>
|
||||||
|
<el-table-column label="计量单位" prop="measname"></el-table-column>
|
||||||
|
<el-table-column label="数量" prop="count">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-input size="small" v-model="scope.row.count"
|
||||||
|
placeholder="请输入数量" style="width: 80%"
|
||||||
|
type='number'
|
||||||
|
:disabled="scope.row.index !== selectedIndex"
|
||||||
|
oninput="value=value.replace(/[^\d]/g,'')"></el-input>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="生产企业" prop="ylqxzcrbarmc"></el-table-column>
|
||||||
|
<el-table-column label="注册/备案号" prop="certCode"></el-table-column>
|
||||||
|
<el-table-column label="操作" width="220">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button type="text" size="small" :disabled="scope.row.index === selectedIndex"
|
||||||
|
@click.native.stop="rowChange(scope.row)">编辑
|
||||||
|
</el-button>
|
||||||
|
<el-button type="text" size="small" :disabled="scope.row.index !== selectedIndex" @click.stop="true"
|
||||||
|
@click.native="tableCountChange(scope.row)">保存
|
||||||
|
</el-button>
|
||||||
|
<el-button type="text" size="small" @click.native.stop="delectModifyClick(scope.row)">移除</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</el-card>
|
||||||
|
</el-form>
|
||||||
|
<pagination
|
||||||
|
v-show="total>0"
|
||||||
|
:total="total"
|
||||||
|
:page.sync="editLogin.page"
|
||||||
|
:limit.sync="editLogin.limit"
|
||||||
|
@pagination="handleErpPageChange"
|
||||||
|
|
||||||
|
></pagination>
|
||||||
|
|
||||||
|
<el-dialog
|
||||||
|
title="选入产品详情"
|
||||||
|
:visible.sync="selectFormVisible"
|
||||||
|
append-to-body
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
:close-on-press-escape="false"
|
||||||
|
width="80%"
|
||||||
|
:before-close="closeDialog"
|
||||||
|
v-if="selectFormVisible"
|
||||||
|
>
|
||||||
|
<destinySelectProduct
|
||||||
|
:editQuery="editLogin"
|
||||||
|
:closeDialog="closeProudDialog"
|
||||||
|
></destinySelectProduct>
|
||||||
|
</el-dialog>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
|
||||||
|
import {
|
||||||
|
addModeldestiny,
|
||||||
|
editModeldestiny,
|
||||||
|
filterDestinyDelect,
|
||||||
|
delectModeldestinyProduct, uploadModeldestinyProduct
|
||||||
|
} from "@/api/basic/basicDestinyRel";
|
||||||
|
import {isBlank} from "@/utils/strUtil";
|
||||||
|
import destinySelectProduct from "@/views/basic/destiny/destinySelectProduct";
|
||||||
|
import {deleteCompanyCert} from "@/api/purchase/companyCert";
|
||||||
|
import {updateDetail} from "@/api/purchase/purApply";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'destinyModelSelectProduct',
|
||||||
|
props: {
|
||||||
|
closeDialog: {
|
||||||
|
type: Function,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
editQuery: {
|
||||||
|
type: Object,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
editLogin: {
|
||||||
|
id: null,
|
||||||
|
cpmctymc: null,
|
||||||
|
ids: [],
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
selectedIndex: '',
|
||||||
|
loading: false,
|
||||||
|
list: [],
|
||||||
|
selectFormVisible: false
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
selectProduct() {
|
||||||
|
this.selectFormVisible = true;
|
||||||
|
},
|
||||||
|
closeProudDialog() {
|
||||||
|
this.selectFormVisible = false;
|
||||||
|
this.filterDestinyDelect();
|
||||||
|
},
|
||||||
|
filterDestinyDelect() {
|
||||||
|
filterDestinyDelect(this.editLogin)
|
||||||
|
.then((response) => {
|
||||||
|
this.loading = false;
|
||||||
|
if (response.code === 20000) {
|
||||||
|
console.log(response)
|
||||||
|
this.list = response.data.list || [];
|
||||||
|
this.total = response.data.total || 0;
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
this.list = [];
|
||||||
|
this.total = 0;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = [];
|
||||||
|
this.total = 0;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
onModifySelect() {
|
||||||
|
this.filterDestinyDelect();
|
||||||
|
},
|
||||||
|
handleErpPageChange(val) {
|
||||||
|
this.editLogin.page = val.page;
|
||||||
|
this.filterDestinyDelect();
|
||||||
|
},
|
||||||
|
delectModifyClick(row) {
|
||||||
|
this.$confirm("是否删除?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
}).then(() => {
|
||||||
|
this.loading = true;
|
||||||
|
let tquery = {
|
||||||
|
id: row.deId
|
||||||
|
};
|
||||||
|
delectModeldestinyProduct(tquery)
|
||||||
|
.then((response) => {
|
||||||
|
this.loading = false;
|
||||||
|
if (response.code === 20000) {
|
||||||
|
this.filterDestinyDelect();
|
||||||
|
this.$message({
|
||||||
|
type: "success",
|
||||||
|
message: "删除成功!",
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
this.certLoading = false;
|
||||||
|
});
|
||||||
|
}).catch(() => {
|
||||||
|
});
|
||||||
|
},
|
||||||
|
rowChange(val) {
|
||||||
|
this.selectedIndex = val.index
|
||||||
|
},
|
||||||
|
tableCountChange(row) {
|
||||||
|
if (this.$isNotBlank(row)) {
|
||||||
|
var query = {
|
||||||
|
id: row.deId,
|
||||||
|
count: row.count
|
||||||
|
}
|
||||||
|
uploadModeldestinyProduct(query);
|
||||||
|
this.selectedIndex = null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
destinySelectProduct
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
if (!isBlank(this.editQuery.id)) {
|
||||||
|
this.editLogin.id = this.editQuery.id
|
||||||
|
this.filterDestinyDelect();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,265 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-card>
|
||||||
|
<el-form :model="filterQuery" label-width="100px" size="mini">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-form-item label="单据号:" class="query-form-item">
|
||||||
|
<el-input v-model="filterQuery.name" placeholder="请输入模板名称"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-form-item label="单前仓库:" class="query-form-item">
|
||||||
|
<el-input v-model="filterQuery.code" placeholder="请输入模板编码"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4">
|
||||||
|
<el-form-item label="单据时间:" class="query-form-item">
|
||||||
|
<el-input v-model="filterQuery.code" placeholder="请输入模板编码"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="8">
|
||||||
|
<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="onSubmit">查询</el-button>
|
||||||
|
<el-button type="primary" icon="search" @click="handleAddClick">新增</el-button>
|
||||||
|
</el-button-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
|
||||||
|
<el-table v-loading="loading" :data="list" @current-change="handleDetail" border highlight-current-row
|
||||||
|
style="width: 100%">
|
||||||
|
<el-table-column label="序号" type="index"></el-table-column>
|
||||||
|
<el-table-column label="单据号" prop="billNo" width="260"></el-table-column>
|
||||||
|
<el-table-column label="唯一编码" prop="destinyNo" width="260"></el-table-column>
|
||||||
|
<el-table-column label="当前仓库" prop="invName" width="260"></el-table-column>
|
||||||
|
<el-table-column label="单据时间" prop="billDate" width="260"></el-table-column>
|
||||||
|
<el-table-column label="状态" prop="status" show-overflow-tooltip>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-tag :type="statusFilterType(scope.row.status)">{{ statusMap[scope.row.status] }}</el-tag>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="创建人" prop="createName" width="260"></el-table-column>
|
||||||
|
<el-table-column label="创建时间" prop="createTime" width="260"></el-table-column>
|
||||||
|
<el-table-column label="操作" width="220">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button type="text" size="small" :disabled="scope.row.status==2" @click.native.stop="handleModifyClick(scope.row)">编辑</el-button>
|
||||||
|
<el-button type="text" size="small" @click.native.stop="deleteDialog(scope.row)">删除</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
<pagination
|
||||||
|
v-show="total>0"
|
||||||
|
:total="total"
|
||||||
|
:limit.sync="filterQuery.limit"
|
||||||
|
:page.sync="filterQuery.page"
|
||||||
|
@pagination="handleCurrentChange"
|
||||||
|
></pagination>
|
||||||
|
</el-card>
|
||||||
|
|
||||||
|
<!-- <el-card>-->
|
||||||
|
<!-- <el-table v-loading="loading" :data="delectList" border highlight-current-row style="width: 100%">-->
|
||||||
|
<!-- <el-table-column label="序号" type="index"></el-table-column>-->
|
||||||
|
<!-- <el-table-column label="产品DI" prop="nameCode" width="260"></el-table-column>-->
|
||||||
|
<!-- <el-table-column label="产品编码" prop="thirdId" width="260"></el-table-column>-->
|
||||||
|
<!-- <el-table-column label="产品名称" prop="cpmctymc" width="260"></el-table-column>-->
|
||||||
|
<!-- <el-table-column label="规格型号" prop="ggxh"></el-table-column>-->
|
||||||
|
<!-- <el-table-column label="计量单位" prop="measname"></el-table-column>-->
|
||||||
|
<!-- <el-table-column label="数量" prop="count"></el-table-column>-->
|
||||||
|
<!-- <el-table-column label="生产企业" prop="ylqxzcrbarmc"></el-table-column>-->
|
||||||
|
<!-- <el-table-column label="注册/备案号" prop="certCode"></el-table-column>-->
|
||||||
|
<!-- </el-table>-->
|
||||||
|
<!-- <pagination-->
|
||||||
|
<!-- v-show="delectTotal>0"-->
|
||||||
|
<!-- :total="delectTotal"-->
|
||||||
|
<!-- :limit.sync="delectQuery.limit"-->
|
||||||
|
<!-- :page.sync="delectQuery.page"-->
|
||||||
|
<!-- @pagination="handleCurrentDelectChange"-->
|
||||||
|
<!-- ></pagination>-->
|
||||||
|
<!-- </el-card>-->
|
||||||
|
|
||||||
|
<el-dialog
|
||||||
|
:title="formMap[formName]"
|
||||||
|
:visible.sync="formVisible"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
:close-on-press-escape="false"
|
||||||
|
width="80%"
|
||||||
|
:before-close="closeDialog"
|
||||||
|
v-if="formVisible"
|
||||||
|
>
|
||||||
|
<addDestinyProcess
|
||||||
|
:editQuery="editQuery"
|
||||||
|
:closeDialogpr="closeDialog"
|
||||||
|
></addDestinyProcess>
|
||||||
|
</el-dialog>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {
|
||||||
|
delectModeldestiny,
|
||||||
|
filterDestinyDelect,
|
||||||
|
getBasicDestinyfilter
|
||||||
|
} from "@/api/basic/basicDestinyRel";
|
||||||
|
import addDestinyProcess from "@/views/basic/destiny/addDestinyProcess";
|
||||||
|
import {delectDestinyProcess, filterDestinyProcess} from "@/api/inout/ioDestinyProcess";
|
||||||
|
|
||||||
|
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
filterQuery: {
|
||||||
|
name: "",
|
||||||
|
code: "",
|
||||||
|
type: 2,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
},
|
||||||
|
editType: "",
|
||||||
|
formVisible: false,
|
||||||
|
loading: false,
|
||||||
|
formName: "",
|
||||||
|
total: 0,
|
||||||
|
list: [],
|
||||||
|
codeArray: [],
|
||||||
|
editQuery: {},
|
||||||
|
formMap: {
|
||||||
|
"add": "新增定数包模板",
|
||||||
|
"edit": "编辑定数包模板"
|
||||||
|
},
|
||||||
|
statusMap: {
|
||||||
|
0: "草稿",
|
||||||
|
1: "未提交",
|
||||||
|
2: "已提交",
|
||||||
|
},
|
||||||
|
delectQuery: {
|
||||||
|
id: null,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
},
|
||||||
|
delectList: [],
|
||||||
|
delectTotal: 0,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onReset() {
|
||||||
|
this.$router.push({
|
||||||
|
path: ""
|
||||||
|
});
|
||||||
|
this.filterQuery = {
|
||||||
|
name: "",
|
||||||
|
code: "",
|
||||||
|
type: 2,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
};
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
statusFilterType(status) {
|
||||||
|
const statusMap = {
|
||||||
|
0: "warning",
|
||||||
|
1: "warning",
|
||||||
|
2: "danger",
|
||||||
|
3: "success",
|
||||||
|
};
|
||||||
|
return statusMap[status];
|
||||||
|
},
|
||||||
|
onSubmit() {
|
||||||
|
this.$router.push({
|
||||||
|
path: "",
|
||||||
|
});
|
||||||
|
this.filterQuery.page = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
filterDestinyProcess(this.filterQuery).then(response => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = response.data.list || [];
|
||||||
|
this.total = response.data.total || 0;
|
||||||
|
}).catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = [];
|
||||||
|
this.total = 0;
|
||||||
|
this.roles = [];
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handleCurrentChange(val) {
|
||||||
|
this.filterQuery.page = val.page;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
handleCurrentDelectChange(val) {
|
||||||
|
this.delectQuery.page = val.page;
|
||||||
|
this.filterDestinyDelect()
|
||||||
|
},
|
||||||
|
handleAddClick() {
|
||||||
|
this.formName = "add";
|
||||||
|
this.formVisible = true;
|
||||||
|
},
|
||||||
|
handleModifyClick(row) {
|
||||||
|
this.formName = "edit";
|
||||||
|
this.formVisible = true;
|
||||||
|
this.editQuery = row;
|
||||||
|
},
|
||||||
|
deleteDialog(row) {
|
||||||
|
delectDestinyProcess(row).then(res => {
|
||||||
|
if (res.code == 20000) {
|
||||||
|
this.getList();
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.message);
|
||||||
|
}
|
||||||
|
}).catch(() => {
|
||||||
|
this.$message.error("删除失败!");
|
||||||
|
});
|
||||||
|
},
|
||||||
|
closeDialog() {
|
||||||
|
this.formVisible = false;
|
||||||
|
this.getList();
|
||||||
|
this.delectList=[]
|
||||||
|
this.editQuery = {}
|
||||||
|
},
|
||||||
|
handleDetail(row) {
|
||||||
|
this.delectQuery.id = row.id
|
||||||
|
this.filterDestinyDelect()
|
||||||
|
},
|
||||||
|
filterDestinyDelect() {
|
||||||
|
filterDestinyDelect(this.delectQuery)
|
||||||
|
.then((response) => {
|
||||||
|
this.loading = false;
|
||||||
|
if (response.code === 20000) {
|
||||||
|
this.delectList = response.data.list || [];
|
||||||
|
this.delectTotal = response.data.total || 0;
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
this.delectList = [];
|
||||||
|
this.delectTotal = 0;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
this.delectList = [];
|
||||||
|
this.delectTotal = 0;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
}
|
||||||
|
,
|
||||||
|
mounted() {
|
||||||
|
}
|
||||||
|
,
|
||||||
|
components: {
|
||||||
|
addDestinyProcess
|
||||||
|
}
|
||||||
|
,
|
||||||
|
created() {
|
||||||
|
this.getList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
;
|
||||||
|
</script>
|
@ -0,0 +1,101 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-table v-loading="loading" :data="list" border highlight-current-row style="width: 100%">
|
||||||
|
<el-table-column label="序号" type="index"></el-table-column>
|
||||||
|
<el-table-column label="UDI码" prop="code" width="260"></el-table-column>
|
||||||
|
<el-table-column label="产品DI" prop="nameCode" width="260"></el-table-column>
|
||||||
|
<el-table-column label="产品名称" prop="cpmctymc" width="260"></el-table-column>
|
||||||
|
<el-table-column label="规格型号" prop="ggxh"></el-table-column>
|
||||||
|
<el-table-column label="批次号" prop="batchNo"></el-table-column>
|
||||||
|
<el-table-column label="生产日期" prop="productDate" width="100"></el-table-column>
|
||||||
|
<el-table-column label="失效日期" prop="expireDate" width="100"></el-table-column>
|
||||||
|
<el-table-column label="序列号" prop="serialNo"></el-table-column>
|
||||||
|
<el-table-column label="扫码数量" prop="count"></el-table-column>
|
||||||
|
<el-table-column label="实际数量" prop="reCount"></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {filterDestinyDelect, filterDestinyProduct, getBasicDestinyfilter} from "@/api/basic/basicDestinyRel";
|
||||||
|
import addDestinyProcess from "@/views/basic/destiny/addDestinyProcess";
|
||||||
|
import {filterDestinyProcessCode} from "@/api/inout/ioDestinyProcess";
|
||||||
|
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "destinyProcessCode",
|
||||||
|
props: {
|
||||||
|
billNo: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
destinyProcessCodeShow: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
filterQuery: {
|
||||||
|
name: "",
|
||||||
|
code: "",
|
||||||
|
type: 2,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
},
|
||||||
|
loading: false,
|
||||||
|
list: [],
|
||||||
|
total: 0
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onReset() {
|
||||||
|
this.$router.push({
|
||||||
|
path: ""
|
||||||
|
});
|
||||||
|
this.filterQuery = {
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
};
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
onSubmit() {
|
||||||
|
this.$router.push({
|
||||||
|
path: "",
|
||||||
|
});
|
||||||
|
this.filterQuery.page = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
this.filterQuery.billNo = this.billNo
|
||||||
|
filterDestinyProcessCode(this.filterQuery).then(response => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = response.data.list || [];
|
||||||
|
this.total = response.data.total || 0;
|
||||||
|
}).catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = [];
|
||||||
|
this.total = 0;
|
||||||
|
this.roles = [];
|
||||||
|
});
|
||||||
|
},
|
||||||
|
}
|
||||||
|
,
|
||||||
|
mounted() {
|
||||||
|
}
|
||||||
|
,
|
||||||
|
components: {
|
||||||
|
addDestinyProcess
|
||||||
|
}
|
||||||
|
,
|
||||||
|
|
||||||
|
created() {
|
||||||
|
if(this.destinyProcessCodeShow==true){
|
||||||
|
this.getList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
;
|
||||||
|
</script>
|
@ -0,0 +1,97 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-table v-loading="loading" :data="list" border highlight-current-row style="width: 100%">
|
||||||
|
<el-table-column label="序号" type="index"></el-table-column>
|
||||||
|
<el-table-column label="产品DI" prop="nameCode" width="260"></el-table-column>
|
||||||
|
<el-table-column label="产品编码" prop="thirdId" width="260"></el-table-column>
|
||||||
|
<el-table-column label="产品名称" prop="cpmctymc" width="260"></el-table-column>
|
||||||
|
<el-table-column label="规格型号" prop="ggxh"></el-table-column>
|
||||||
|
<el-table-column label="计量单位" prop="measname"></el-table-column>
|
||||||
|
<el-table-column label="单据数量" prop="count"></el-table-column>
|
||||||
|
<el-table-column label="扫码数量" prop="reCount"></el-table-column>
|
||||||
|
<el-table-column label="生产企业" prop="ylqxzcrbarmc"></el-table-column>
|
||||||
|
<el-table-column label="注册/备案号" prop="certCode"></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
import addDestinyProcess from "@/views/basic/destiny/addDestinyProcess";
|
||||||
|
import {filterDestinyDelect} from "@/api/inout/ioDestinyProcess";
|
||||||
|
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "destinyProcessDelect",
|
||||||
|
props: {
|
||||||
|
billNo: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
destinyProcessCodeShow: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
filterQuery: {
|
||||||
|
name: "",
|
||||||
|
code: "",
|
||||||
|
type: 2,
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
},
|
||||||
|
loading: false,
|
||||||
|
list: [],
|
||||||
|
total: 0
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onReset() {
|
||||||
|
this.$router.push({
|
||||||
|
path: ""
|
||||||
|
});
|
||||||
|
this.filterQuery = {
|
||||||
|
page: 1,
|
||||||
|
limit: 20
|
||||||
|
};
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
onSubmit() {
|
||||||
|
this.$router.push({
|
||||||
|
path: "",
|
||||||
|
});
|
||||||
|
this.filterQuery.page = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
this.filterQuery.billNo = this.billNo
|
||||||
|
filterDestinyDelect(this.filterQuery).then(response => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = response.data || [];
|
||||||
|
}).catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
this.list = [];
|
||||||
|
});
|
||||||
|
},
|
||||||
|
}
|
||||||
|
,
|
||||||
|
mounted() {
|
||||||
|
}
|
||||||
|
,
|
||||||
|
|
||||||
|
components: {
|
||||||
|
addDestinyProcess
|
||||||
|
}
|
||||||
|
,
|
||||||
|
created() {
|
||||||
|
if(this.destinyProcessCodeShow==true){
|
||||||
|
this.getList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
;
|
||||||
|
</script>
|
@ -0,0 +1,339 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-card class="el-card">
|
||||||
|
<el-form :model="listQuery" label-width="120px" v-show="showSearch">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="18">
|
||||||
|
<el-form-item label="UDI码:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.udiCode" style="width: 96%" placeholder="请扫描或输入UDI码" clearable="true"
|
||||||
|
@keyup.enter.native="keyup_submit($event)"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="拼音简写:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.pinyinInitial" @input="search" style="width: 100%" placeholder="请输入物资拼音简写"
|
||||||
|
clearable="true"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="第三方物资编码:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.thrPiId" style="width: 100%" placeholder="第三方物资编码"
|
||||||
|
clearable="true"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="分类编码:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.flbm" style="width: 100%" placeholder="请输入分类编码"
|
||||||
|
clearable="true"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="供应商:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.companyName" style="width: 100%" placeholder="请输入供应商"
|
||||||
|
clearable="true"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="物品编码:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.unionCode" style="width: 100%" placeholder="请输入DI/医保编码/商品条码"
|
||||||
|
clearable="true"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="产品通用名:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.cpmctymc" style="width: 100%" placeholder="请输入产品通用名"
|
||||||
|
clearable="true"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="规格型号:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.ggxh" style="width: 100%" placeholder="请输入规格型号" clearable="true"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="生产企业:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.manufactory" style="width: 100%" placeholder="请输入生产企业/注册备案人"
|
||||||
|
clearable="true"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="物资分类:" class="query-form-item">
|
||||||
|
<el-input v-model="listQuery.category" style="width: 100%" placeholder="请输入物资分类名称"
|
||||||
|
clearable="true"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="top-right-btn">
|
||||||
|
<el-button-group style="display:flex;">
|
||||||
|
<el-button icon="el-icon-view" type="primary" @click="hideSearch">显示/隐藏搜索栏</el-button>
|
||||||
|
<el-button type="primary" icon="el-icon-refresh" @click="onReset">重置</el-button>
|
||||||
|
<el-button type="primary" icon="el-icon-search" @click="search">查询</el-button>
|
||||||
|
<el-button type="primary" icon="el-icon-plus" @click="confirmSelect">确定</el-button>
|
||||||
|
</el-button-group>
|
||||||
|
</div>
|
||||||
|
<el-divider style="margin: 15px"></el-divider>
|
||||||
|
|
||||||
|
<el-table :data="dataList" style="width: 100%" v-loading="loading" border highlight-current-row
|
||||||
|
@selection-change="handleSelectionChange" ref="multipleTable">
|
||||||
|
<el-table-column type="selection" :reserve-selection="true"></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"></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>
|
||||||
|
|
||||||
|
<pagination
|
||||||
|
v-show="pageTotal>0"
|
||||||
|
:total="pageTotal"
|
||||||
|
:page.sync="listQuery.page"
|
||||||
|
:limit.sync="listQuery.limit"
|
||||||
|
@pagination="handleErpPageChange"
|
||||||
|
|
||||||
|
></pagination>
|
||||||
|
</el-card>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {filterCompanyProductplanRelevance, filterCompanyProductRelevance} from "../../../api/basic/udiRlSuptRelevance";
|
||||||
|
import {addApplyDetail, addApply} from "../../../api/purchase/purApply";
|
||||||
|
import store from "../../../store";
|
||||||
|
import udiRlDetailDialog from "./../../purchase/purApply/purUdiRlDetailDialog";
|
||||||
|
import {finProductSet} from "@/api/param/systemParamConfig";
|
||||||
|
import {addModeldestinyProduct, filterDestinyDelect, filterDestinyProduct} from "@/api/basic/basicDestinyRel";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "stockOrderNewSelectProduct",
|
||||||
|
props: {
|
||||||
|
closeDialog: {
|
||||||
|
type: Function,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
editQuery: {
|
||||||
|
type: Object,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
codeArray: {
|
||||||
|
type: Object,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
showSearch: true,
|
||||||
|
listQuery: {
|
||||||
|
purType: null,
|
||||||
|
udiCode: null,
|
||||||
|
unicode: null,
|
||||||
|
cpmctymc: null,
|
||||||
|
ggxh: null,
|
||||||
|
ylqxzcrbarmc: null,
|
||||||
|
thrPiId: null,
|
||||||
|
pinyinInitial: null,
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
},
|
||||||
|
combineQuery: {
|
||||||
|
thirdId: "",
|
||||||
|
relId: "",
|
||||||
|
erpName: "",
|
||||||
|
keys: [],
|
||||||
|
},
|
||||||
|
ids: [],
|
||||||
|
lists: [],
|
||||||
|
radioCheck: null,
|
||||||
|
dataList: [],
|
||||||
|
pageTotal: 1,
|
||||||
|
total: 1,
|
||||||
|
currentRow: null,
|
||||||
|
loading: false,
|
||||||
|
udiRlDetailVisible: false,
|
||||||
|
thirdSys: [],
|
||||||
|
thirdSysFk: null,
|
||||||
|
busTypes: [],
|
||||||
|
actDateRange: [],
|
||||||
|
tQuery: {
|
||||||
|
productId: "",
|
||||||
|
productName: "",
|
||||||
|
count: "",
|
||||||
|
orderIdFk: "",
|
||||||
|
supId: "",
|
||||||
|
},
|
||||||
|
productRemarkSet: {},
|
||||||
|
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 = {
|
||||||
|
purType: null,
|
||||||
|
udiCode: null,
|
||||||
|
unicode: null,
|
||||||
|
cpmctymc: null,
|
||||||
|
ggxh: null,
|
||||||
|
ylqxzcrbarmc: null,
|
||||||
|
thrPiId: null,
|
||||||
|
page: 1,
|
||||||
|
limit: 10
|
||||||
|
}
|
||||||
|
this.multipleSelection = [];
|
||||||
|
this.radioCheck = null;
|
||||||
|
this.currentRow = null;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
hideSearch() {
|
||||||
|
this.showSearch = !this.showSearch;
|
||||||
|
},
|
||||||
|
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.page;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
keyup_submit(event) {
|
||||||
|
this.listQuery.page = 1;
|
||||||
|
this.getList();
|
||||||
|
event.target.select();
|
||||||
|
},
|
||||||
|
search() {
|
||||||
|
this.listQuery.page = 1;
|
||||||
|
this.getList();
|
||||||
|
},
|
||||||
|
handleSelectionChange(val) {
|
||||||
|
this.lists = [];
|
||||||
|
for (var i = 0; i < val.length; i++) {
|
||||||
|
this.lists.push(val[i].id)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getList() {
|
||||||
|
this.loading = true;
|
||||||
|
this.listQuery.id = this.editQuery.id
|
||||||
|
filterDestinyProduct(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;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
confirmSelect() {
|
||||||
|
if (this.lists == null) {
|
||||||
|
this.$message.error('未选择产品');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.combine();
|
||||||
|
},
|
||||||
|
combine() {
|
||||||
|
this.loading = true;
|
||||||
|
addModeldestinyProduct({pId:this.editQuery.id,list:this.lists}).then((response) => {
|
||||||
|
this.loading = false;
|
||||||
|
if (response.code === 20000) {
|
||||||
|
this.closeDialog(response.data);
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.message);
|
||||||
|
}
|
||||||
|
}).catch(() => {
|
||||||
|
this.loading = false;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
components: {udiRlDetailDialog},
|
||||||
|
|
||||||
|
created() {
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
.query-form-item {
|
||||||
|
display: block !important;
|
||||||
|
margin-right: 1px;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div /deep/ .el-table .warning-row {
|
||||||
|
background: #bebebe;
|
||||||
|
}
|
||||||
|
|
||||||
|
div /deep/ .el-table .success-row {
|
||||||
|
background: #ffffff;
|
||||||
|
}
|
||||||
|
</style>
|
Loading…
Reference in New Issue