feat: 术士套包、定数包功能开发
parent
f8c3f714b8
commit
9cbb373439
@ -0,0 +1,430 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card>
|
||||
<el-form :model="filterQuery" label-width="100px" size="mini">
|
||||
<el-row>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="套包名称:" class="query-form-item">
|
||||
<el-input v-model="filterQuery.name" placeholder="请输入套包名称" clearable></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="套包编码:" class="query-form-item">
|
||||
<el-input v-model="filterQuery.code" placeholder="请输入套包编码" clearable></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="11" offset="1">
|
||||
<el-form-item style="">
|
||||
<el-button-group>
|
||||
<el-button type="primary" icon="el-icon-refresh" @click="onReset">重置</el-button>
|
||||
<el-button type="primary" icon="el-icon-search" @click="onSubmit">查询</el-button>
|
||||
<el-button type="primary" icon="el-icon-plus" @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="code" width="260"></el-table-column>
|
||||
<el-table-column label="套包名称" prop="name" 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="remark" width="260"></el-table-column>-->
|
||||
<el-table-column label="规格" prop="ggxh" width="260"></el-table-column>
|
||||
<el-table-column label="价格" prop="price" width="260">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.price == "null" ? "0.00":scope.row.price }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column label="单位" prop="unit" 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" fixed="right">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" size="small" @click.native.stop="handleModifyClick(scope.row)" :disabled="scope.row.status != 1">编辑</el-button>
|
||||
<el-button type="text" size="small" @click.native.stop="deleteDialog(scope.row)" :disabled="scope.row.status != 1" >删除</el-button>
|
||||
<el-button type="text" size="small" @click.native.stop="onSubmitSkSkProject(scope.row)" v-if="scope.row.status == 1">提交</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-row>
|
||||
<el-col :span="24">
|
||||
<el-button type="primary" style="float: right;margin-bottom: 12px;margin-right: 20px" size="small"
|
||||
icon="search" @click="selectProduct"
|
||||
v-if="this.delectQuery.id != null ">新增产品
|
||||
</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<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="200"></el-table-column>
|
||||
<el-table-column label="产品编码" prop="thirdId" width="200"></el-table-column>
|
||||
<el-table-column label="产品名称" prop="cpmctymc" width="200"></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: 100%"
|
||||
type='number'
|
||||
:disabled="scope.row.index !== selectedIndex"
|
||||
oninput="value=value.replace(/[^\d]/g,'')"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="价格" prop="price"></el-table-column>
|
||||
<el-table-column label="生产企业" prop="ylqxzcrbarmc"></el-table-column>
|
||||
<el-table-column label="注册/备案号" prop="zczbhhzbapzbh"></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>
|
||||
<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"
|
||||
:type="2"
|
||||
></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>-->
|
||||
|
||||
<el-dialog
|
||||
title="选入产品"
|
||||
:visible.sync="selectFormVisible"
|
||||
append-to-body
|
||||
:close-on-click-modal="false"
|
||||
:close-on-press-escape="false"
|
||||
width="80%"
|
||||
:before-close="closeProudDialog"
|
||||
v-if="selectFormVisible"
|
||||
>
|
||||
<destinySelectProduct
|
||||
:editQuery="editLogin"
|
||||
:closeDialog="closeProudDialog"
|
||||
></destinySelectProduct>
|
||||
</el-dialog>
|
||||
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
addModeldestiny,
|
||||
delectModeldestiny,
|
||||
filterDestinyDelect,
|
||||
getBasicDestinyfilter, delectModeldestinyProduct, downloadBasicProject, uploadModeldestinyProduct,submitSkSkProject
|
||||
} from "@/api/basic/basicDestinyRel";
|
||||
import destinyModelEdit from "@/views/basic/destiny/destinyModelEdit";
|
||||
import destinyModelSelectProduct from "@/views/basic/destiny/destinyModelSelectProduct";
|
||||
import destinySelectProduct from "@/views/basic/destiny/destinySelectProduct";
|
||||
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
editLogin: {
|
||||
id: null,
|
||||
status: null,
|
||||
cpmctymc: null,
|
||||
ids: [],
|
||||
page: 1,
|
||||
limit: 10,
|
||||
},
|
||||
filterQuery: {
|
||||
name: "",
|
||||
code: "",
|
||||
type: 2,
|
||||
page: 1,
|
||||
limit: 20
|
||||
},
|
||||
selectedIndex: '',
|
||||
editType: "",
|
||||
formVisible: false,
|
||||
selectFormVisible: false,
|
||||
loading: false,
|
||||
formName: "",
|
||||
total: 0,
|
||||
list: [],
|
||||
codeArray: [],
|
||||
editQuery: {},
|
||||
formMap: {
|
||||
"add": "新增术士套包",
|
||||
"edit": "编辑术士套包"
|
||||
},
|
||||
statusMap: {
|
||||
1: "草稿",
|
||||
2: "未提交",
|
||||
3: "已提交",
|
||||
},
|
||||
delectQuery: {
|
||||
id: null,
|
||||
status: null,
|
||||
page: 1,
|
||||
limit: 20
|
||||
},
|
||||
delectList: [],
|
||||
delectTotal: 0,
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
statusFilterType(status) {
|
||||
const statusMap = {
|
||||
5: 'warning',
|
||||
1: 'warning',
|
||||
6: 'danger',
|
||||
7: 'success'
|
||||
}
|
||||
return statusMap[status]
|
||||
},
|
||||
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.getList();
|
||||
this.selectedIndex = null
|
||||
this.$message({
|
||||
type: "success",
|
||||
message: "删除成功!",
|
||||
});
|
||||
} else {
|
||||
this.$message.error(response.message);
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
this.certLoading = false;
|
||||
});
|
||||
}).catch(() => {
|
||||
});
|
||||
},
|
||||
tableCountChange(row) {
|
||||
if (this.$isNotBlank(row)) {
|
||||
var query = {
|
||||
id: row.deId,
|
||||
count: row.count
|
||||
}
|
||||
uploadModeldestinyProduct(query).then((response) => {
|
||||
if (response.code === 20000) {
|
||||
this.getList();
|
||||
this.selectedIndex = null
|
||||
}
|
||||
}).catch(() => {
|
||||
});
|
||||
}
|
||||
},
|
||||
rowChange(val) {
|
||||
this.selectedIndex = val.index
|
||||
},
|
||||
selectProduct() {
|
||||
this.editLogin.id = this.delectQuery.id
|
||||
this.editLogin.status = this.delectQuery.status
|
||||
this.selectFormVisible = true;
|
||||
},
|
||||
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;
|
||||
},
|
||||
onSubmitSkSkProject(row){
|
||||
submitSkSkProject(row).then(res => {
|
||||
if (res.code == 20000) {
|
||||
this.getList();
|
||||
this.$message.success("提交成功!");
|
||||
} else {
|
||||
this.$message.error(res.message);
|
||||
}
|
||||
}).catch(() => {
|
||||
this.$message.error("提交失败!");
|
||||
});
|
||||
},
|
||||
deleteDialog(row) {
|
||||
this.$confirm("是否确定移除该套包?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning",
|
||||
}).then(() => {
|
||||
this.loading = true;
|
||||
delectModeldestiny(row).then(res => {
|
||||
if (res.code == 20000) {
|
||||
this.getList();
|
||||
this.$message({
|
||||
type: "success",
|
||||
message: "删除成功!",
|
||||
});
|
||||
} 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 = {}
|
||||
},
|
||||
closeProudDialog() {
|
||||
this.selectFormVisible = false;
|
||||
this.getList();
|
||||
this.filterDestinyDelect();
|
||||
},
|
||||
handleDetail(row) {
|
||||
this.delectQuery.id = row.id
|
||||
this.delectQuery.status = row.status
|
||||
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,destinySelectProduct
|
||||
}
|
||||
,
|
||||
created() {
|
||||
this.filterQuery.name = this.$route.query.cpmctymc;
|
||||
this.getList();
|
||||
}
|
||||
}
|
||||
;
|
||||
</script>
|
Loading…
Reference in New Issue