# 基本模式
优先展示插槽,不写插槽展示tableTitle
列设置
暂无数据
共 0 条
- 10条/页
- 20条/页
- 50条/页
- 100条/页
无数据
- 1
<template>
<t-adaptive-page
:opts="opts"
@submit="conditionEnter"
tableTitle="工厂物料清单管理"
isCopy
:tablePageStyle="{ marginTop: 0 }"
columnSetting
:tableLoading="tableLoading"
:table="table"
:columns="table.columns"
:isShowPagination="isShowPagination"
>
<template #title>优先展示插槽,不写插槽展示tableTitle</template>
</t-adaptive-page>
</template>
<script>
import tableData from "./tableData.json";
export default {
name: "TTableMix",
data() {
return {
tableLoading: false,
queryData: {
likeCargoNo: null,
likeBookNo: null,
likeTransportNo: null,
likeCargoName: null,
workshopNum: null,
workshopNum1: null,
date: null,
},
isShowPagination: true, // 是否显示分页
table: {
currentPage: 1,
pageSize: 10,
total: 0,
firstColumn: { type: "index" },
data: [],
columns: [
{ prop: "factoryModelIdLabel", label: "工厂", minWidth: "100" },
{ prop: "materialTypeLabel", label: "物料分类", minWidth: "80" },
{ prop: "erpCodeJoin", label: "ERP物料编码", minWidth: "100" },
{ prop: "materialCode", label: "物料编码", minWidth: "100" },
{ prop: "materialName", label: "物料名称", minWidth: "160" },
{ prop: "materialSpecs", label: "规格", minWidth: "80" },
{ prop: "power", label: "功率", minWidth: "80" },
{
prop: "enableStatusLabel",
label: "状态",
minWidth: "80",
render: (text, record) => {
return (
<el-switch
active-value={1}
inactive-value={2}
v-model={record.enableStatus}
onChange={() => this.handleStatusChange(record)}
>
{text}
</el-switch>
);
},
},
{ prop: "materialPropertyLabel", label: "物料属性", minWidth: "80" },
{ prop: "baseUnit", label: "基本单位", minWidth: "80" },
{ prop: "singleWeight", label: "单重", minWidth: "80" },
{ prop: "shortRuleMore", label: "改余", minWidth: "80" },
{ prop: "shortRuleLess", label: "改损", minWidth: "80" },
{ prop: "materialSourceLabel", label: "数据来源", minWidth: "100" },
{ prop: "updateTime", label: "最后更新日期", minWidth: "100" },
{ prop: "updateBy", label: "最后更新人", minWidth: "100" },
],
operator: [
{
text: "查看",
fun: this.viewDetail,
},
{
text: "编辑",
fun: this.edit,
},
],
// 操作列样式
operatorConfig: {
fixed: "right", // 固定列表右边(left则固定在左边)
width: 160,
label: "操作",
},
},
ADDRESS_TYPES: [
{
label: "前纺一车间",
key: "W1",
},
{
label: "前纺二车间",
key: "W2",
},
{
label: "前纺三车间",
key: "W3",
},
],
ADDRESS_TYPES1: [
{
name: "前纺一车间",
id: "W1",
},
{
name: "前纺二车间",
id: "W2",
},
{
name: "前纺三车间",
id: "W3",
},
{
name: "前纺四车间",
id: "W4",
},
],
};
},
computed: {
opts() {
return {
workshopNum1: {
label: "t-select单选",
comp: "t-select",
bind: {
optionSource: this.ADDRESS_TYPES,
},
},
workshopNum: {
label: "t-select多选",
comp: "t-select",
span: 2,
bind: {
multiple: true,
optionSource: this.ADDRESS_TYPES1,
valueKey: "id",
labelKey: "name",
},
},
date: {
label: "日期范围",
comp: "el-date-picker",
span: 2,
bind: {
type: "daterange",
rangeSeparator: "-",
startPlaceholder: "开始日期",
endPlaceholder: "结束日期",
valueFormat: "yyyy-MM-dd",
},
},
likeCargoNo: {
label: "货源编号",
// span: 2,
comp: "el-input",
},
likeBookNo: {
label: "订单编号",
comp: "el-input",
},
likeTransportNo: {
label: "运单编号",
comp: "el-input",
},
likeCargoName: {
label: "货品名称",
comp: "el-input",
},
};
},
// 查询条件所需参数
getQueryData() {
const {
likeCargoNo,
likeBookNo,
likeTransportNo,
likeCargoName,
workshopNum,
workshopNum1,
date,
} = this.queryData;
return {
likeCargoNo,
likeBookNo,
likeTransportNo,
likeCargoName,
workshopNum,
workshopNum1,
beginDate: date && date[0] ? date[0] : null,
endDate: date && date[1] ? date[1] : null,
};
},
},
created() {
this.getData();
},
methods: {
// 获取table数据
async getData() {
this.tableLoading = true;
const res = await tableData;
if (res.success) {
this.table.data = res.data.records;
this.table.total = res.data.total;
setTimeout(() => {
this.tableLoading = false;
}, 3000);
}
},
viewDetail(row) {
console.log("点击table查看", row);
},
edit(row) {
console.log("点击table编辑", row);
},
// 点击查询按钮
conditionEnter(data) {
console.log("查询条件", data);
this.queryData = data;
console.log("最终条件", this.getQueryData);
},
},
};
</script>
显示代码
wocwin微信二维码
← 使用帮助 操作TTable取消复选功能 →