charles
2024-07-10 3f24fbc89959ec4aa9f3308e1af453e43d504ac5
src/views/systemSetting/workshopManage/index.vue
@@ -12,7 +12,9 @@
    </div>
    <div class="body-card">
      <div class="list-view">
        <TableCommonView :table-list="tableList" @selTableCol="selTableCol" @handleShow="handleShow"
        <TableCommonView :table-list="tableList"
                         :selectClassRow="selectRow"
                         @selTableCol="selTableCol"
          @tableRowClick="tableRowClick">
          <template slot="tableButton">
            <el-table-column label="操作" width="180">
@@ -20,7 +22,6 @@
                <el-button @click.stop="handleClick(scope.row, '查看')" type="text" size="small">查看</el-button>
                <el-button @click.stop="handleClick(scope.row, '修改')" type="text" size="small">修改</el-button>
                <el-button @click.stop="handleClick(scope.row, '删除')" type="text" size="small">删除</el-button>
              </template>
            </el-table-column>
          </template>
@@ -30,8 +31,40 @@
        <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" />
      </div>
    </div>
    <AddWorkshop ref="bomTypeDialog" @handleConfirmSave="handleConfirmSave" :workList="workList" title="添加节点类型" />
    <AddDataDictionaries :editDiaConfig="editConfig" />
    <div class="body-card1">
      <div class="bottom-tabs">
        <div
                class="tab-pane"
                @click="getTab(0)"
                :style="{
              background: TabsIndex == 0 ? '#2a78fb' : '#F1F3F8',
              color: TabsIndex == 0 ? '#fff' : '#666'
            }"
        >
          组别列表
        </div>
        <!--<div
                class="tab-pane"
                @click="getTab(1)"
                :style="{background: TabsIndex == 1 ? '#2a78fb' : '#F1F3F8',color: TabsIndex == 1 ? '#fff' : '#666'}"
        >
          单据追溯
        </div>-->
      </div>
      <div class="list-view">
        <TableCommonView :table-list="bottomTableList"
                         @selTableCol="selTableCol">
          <template slot="tableButton">
          </template>
        </TableCommonView>
      </div>
      <div class="btn-pager">
        <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" />
      </div>
    </div>
    <!--<AddWorkshop ref="bomTypeDialog" @handleConfirmSave="handleConfirmSave" :workList="workList" title="添加节点类型" />
    <AddDataDictionaries :editDiaConfig="editConfig" />-->
    <WorkshopDialog ref="workshopDialogRef" :edit-config="editConfig" @refresh="refresh"></WorkshopDialog>
  </div>
</template>
@@ -41,23 +74,29 @@
import TableCommonView from '@/components/makepager/TableCommonView.vue'
import AddWorkshop from '@/views/systemSetting/workshopManage/components/addWorkshop.vue'
import pageMixin from "@/components/makepager/pager/mixin/pageMixin"
import WorkshopDialog from '@/views/systemSetting/workshopManage/components/workshopDialog.vue'
export default {
  name: "workshopManage",
  props: {},
  components: { TableCommonView, AddWorkshop, AddDataDictionaries },
  components: { TableCommonView, AddWorkshop, AddDataDictionaries,WorkshopDialog },
  mixins: [pageMixin],
  computed: {},
  computed: {
  },
  data() {
    return {
      selectRow:{},
      TabsIndex:0,
      bottomTableList:{},
      tableList: {},
      showCol: ["车间", "组别", "开始车号", "结束车号", "半车标志", "备注"],
      showCol: ["车间", "组别", "开始车号", "结束车号", "标志类型", "备注"],
      tableColumn: [
        // { label: "车间", prop: "workshopNumber",iconRight:"el-icon-setting"},
        { label: "车间", prop: "workshopName", },
        { label: "组别", prop: "groupNumber", },
        { label: "开始车号", prop: "startCarNumber" },
        { label: "结束车号", prop: "endCarNumber" },
        { label: "半车标志", prop: "carFlag", isCallMethod: true, getCallMethod: this.getStatusCarFlag },
        { label: "标志类型", prop: "carFlag", isCallMethod: true, getCallMethod: this.getStatusCarFlag },
        { label: "备注", prop: "notes", },
      ],
      // 类型
@@ -79,16 +118,22 @@
    this.getData()
  },
  methods: {
      refresh(){
        this.getData();
      },
    setTable() {
        const obj={
            selectIndex: true,
            tableInfomation: [],
            allcol: [],
            showcol: this.showCol,
            tableColumn: this.setColumnVisible(this.showCol, this.tableColumn)
        };
      // top 明细单列表
      this.tableList = {
        selectIndex: true,
        tableInfomation: [],
        allcol: [],
        showcol: this.showCol,
        tableColumn: this.setColumnVisible(this.showCol, this.tableColumn)
      }
      this.setTableList(this.tableList)
      this.tableList = {...obj};
      this.bottomTableList={...obj};
      this.setTableList(this.tableList);
      this.setTableList(this.bottomTableList);
    },
    setColumnVisible(showCol, tableColumn) {
      return tableColumn.map((ele) => {
@@ -100,7 +145,7 @@
    },
    setTableList(tableList) {
      tableList.allcol = tableList.tableColumn.filter((ele) => !ele.default).map((ele) => ele.label)
      this.searchOptions = []
      this.searchOptions = [];
      for (let i = 0; i < tableList.tableColumn.length; i++) {
        const label = tableList.tableColumn[i].label
        const value = tableList.tableColumn[i].prop
@@ -113,7 +158,8 @@
    },
    // 表格行点击
    tableRowClick(row) {
      console.log(row, "row")
        this.selectRow={...row};
        this.bottomTableList.tableInfomation=row.details||[];
    },
    // 搜索
    onFilterSearch(searchText) {
@@ -123,8 +169,12 @@
    },
    // 新增
    addBtnClick() {
      this.editConfig.infomitton = {}
      this.editConfig.dialogTitle = "新增"
      this.editConfig.infomitton = {
          carFlag:1,
          workshop:{}
      };
      this.editConfig.OperationType=1;
      this.editConfig.title = "新增";
      this.editConfig.visible = true
    },
    // 保存
@@ -133,10 +183,10 @@
    },
    // 刷新
    refreshClick() {
      this.getDataParams.keyWord = ""
      this.pagerOptions.currPage = 1
      this.pagerOptions.pageSize = 15
      this.$refs.searchRef.searchInput = ""
      this.getDataParams.keyWord = "";
      this.pagerOptions.currPage = 1;
      this.pagerOptions.pageSize = 15;
      this.$refs.searchRef.searchInput = "";
      this.getData()
    },
    // 打印
@@ -144,58 +194,65 @@
    // 删除
    delBtnClick() { },
    // 组别
    handleShow() {
 /*   handleShow() {
      this.$refs.bomTypeDialog.editDialogVisible = true;
    },
    },*/
    handleGetBomKindDictList() {
      // postGetBomKindDictList().then((res) => {
      //   this.workList = res.data;
      // });
    },
    handleConfirmSave(data) {
      console.log(data)
      // postSaveBomKindDict({ data: data }).then((res) => {
      //   if (res.code == 200) {
      //     this.$message({
      //       message: "操作成功!",
      //       type: "success",
      //     });
      //     this.$refs.bomTypeDialog.editDialogVisible = false;
      //     this.handleGetBomKindDictList();
      //   }
      // });
      console.log(data);
    },
    // 车间列表
    async getData() {
      await getWorkshopManageList({
        keyWord: this.getDataParams.keyWord,
        page: this.pagerOptions.currPage,
        pageSize: this.pagerOptions.pageSize
        pageSize: this.pagerOptions.pageSize,
        type:1
      }).then((res) => {
        this.tableList.tableInfomation = res.data
        this.pagerOptions.totalCount = res.total
      })
        if(res.data.length>0){
            this.bottomTableList.tableInfomation=res.data[0].details||[];
        }
      });
    },
    getStatusCarFlag(val) {
      if (val) {
        return val == 1 ? '左半车' : val == 2 ? '右半车' : val == 3 ? '全车结束' : '--'
      } else {
        return "--";
      }
     if(val===0){
         return '全车'
     }else{
         return '半车'
     }
    },
    handleClick(row, type) {
      if (type !== "删除") {
        this.editConfig.infomitton = {
          ...row,
          workshop:{
            number:row.workshopNumber,
            name:row.workshopName
            workshopNumber:row.workshopNumber,
            workshopName:row.workshopName
          }
        }
        };
        this.editConfig.infomitton.workshopId = row.ID
        this.editConfig.infomitton.workshopNumber = Number(this.editConfig.infomitton.workshopNumber)
        this.editConfig.dialogTitle = type
        this.editConfig.visible = true
        this.editConfig.title = type;
        if(type==='修改'){
            this.editConfig.OperationType=2
        }else{
            this.editConfig.OperationType=3
        }
        this.editConfig.visible = true;
        (row.details||[]).forEach((item,index)=>{
            if(index<row.details.length-1){
                item.noEdit=true;
            }else{
                item.noEdit=false;
            }
        });
        this.$refs['workshopDialogRef'].initBottomTableList(row.details||[]);
      } else if (type === "删除") {
        this.$confirm(`确认删除吗?`, '提示', {
          confirmButtonText: '确定',
@@ -235,19 +292,15 @@
    border-radius: 4px;
    background-color: #fff;
  }
  .body-card {
  .body-card,.body-card1 {
    margin: 0 30px;
    background-color: #fff;
    padding: 10px 15px;
    height: calc(100% - 180px);
    border-radius: 4px;
    .edit-save {
      display: flex;
      align-items: center;
      margin-bottom: 10px;
      .edit-save-icon {
        font-size: 24px;
        color: #5582f3;
@@ -261,6 +314,34 @@
      }
    }
  }
  .body-card{
    height: calc(100% - 440px);
  }
  .body-card1{
    margin-top: -50px;
      height: calc(100% - 500px);
      .bottom-tabs {
        height: 40px;
        line-height: 40px;
        background: white;
        display: flex;
        .tab-pane {
          width: 100px;
          margin-right: 20px;
          font-size: 14px !important;
          text-align: center;
          cursor: pointer;
          background: #2a78fb;
          border-top-left-radius: 20px;
          border-top-right-radius: 20px;
      }
    }
      padding-bottom: 100px;
    .btn-pager{
      position: relative;
      top: -5px;
    }
  }
}
.list-view {
@@ -271,7 +352,6 @@
.btn-pager {
  display: flex;
  margin-top: 10px;
  .page {
    margin-left: auto;
  }