| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277 |
- <template>
- <div>
- <el-button size="mini" type="text" @click="addBtn" v-if="data" :disabled="disabled">{{
- $t('添 加 子 级 工 序')
- }}</el-button>
- <el-button size="mini" type="primary" @click="addBtn" :disabled="disabled" v-else>{{ $t('添 加') }}</el-button>
- <el-drawer append-to-body :visible.sync="dialogFormVisible" size="70%">
- <div slot="title" style="font-size: 15px">{{ $t('添加工序') }}</div>
- <div class="drawer__panel">
- <el-input
- style="width: 250px; margin-bottom: 10px"
- size="small"
- :placeholder="$t('请输入搜索内容')"
- clearable
- @clear="getOrderList((params.content.pageNumber = 1))"
- v-model="params.content.where.condition"
- @keyup.enter.native="getOrderList((params.content.pageNumber = 1))"
- ></el-input>
- <selectTable
- @selectChange="selectChange"
- v-if="dialogFormVisible"
- idName="sc_workpresetid"
- ref="table"
- v-model="result"
- :layout="tablecols"
- :data="orderList"
- :custom="true"
- height="500px"
- @upDateData="upDateData"
- >
- <template v-slot:customcol="scope">
- <div
- v-if="scope.column.columnname == 'fileupload'"
- :style="
- scope.column.data.fileupload
- ? scope.column.data.fileupload == 1
- ? 'color:green'
- : 'color:red'
- : 'color:#333333'
- "
- >
- {{
- scope.column.data.fileupload
- ? scope.column.data.fileupload == 1
- ? $t('非必填')
- : $t('必填')
- : $t('无')
- }}
- </div>
- <div
- v-else-if="scope.column.columnname == 'additem'"
- :style="
- scope.column.data.additem
- ? scope.column.data.additem == 1
- ? 'color:green'
- : 'color:red'
- : 'color:#333333'
- "
- >
- {{
- scope.column.data.additem
- ? scope.column.data.additem == 1
- ? $t('非必填')
- : $t('必填')
- : $t('无')
- }}
- </div>
- <div
- v-else-if="scope.column.columnname == 'formcheck'"
- :style="scope.column.data.formcheck == 1 ? 'color:green' : 'color:red'"
- >
- {{ scope.column.data.formcheck == 1 ? $t('是') : $t('否') }}
- </div>
- <div
- v-else-if="scope.column.columnname == 'panorama'"
- :style="
- scope.column.data.panorama
- ? scope.column.data.panorama == 1
- ? 'color:green'
- : 'color:red'
- : 'color:#333333'
- "
- >
- {{
- scope.column.data.panorama
- ? scope.column.data.panorama == 1
- ? $t('非必填')
- : $t('必填')
- : $t('无')
- }}
- </div>
- <div
- v-else-if="scope.column.columnname == 'passcheck'"
- :style="
- scope.column.data.passcheck
- ? scope.column.data.passcheck == 1
- ? 'color:green'
- : 'color:red'
- : 'color:#333333'
- "
- >
- {{
- scope.column.data.passcheck
- ? scope.column.data.passcheck == 1
- ? $t('非必填')
- : $t('必填')
- : $t('无')
- }}
- </div>
- <div
- v-else-if="scope.column.columnname == 'signature'"
- :style="
- scope.column.data.signature
- ? scope.column.data.signature == 1
- ? 'color:green'
- : 'color:red'
- : 'color:#333333'
- "
- >
- {{
- scope.column.data.signature
- ? scope.column.data.signature == 1
- ? $t('非必填')
- : $t('必填')
- : $t('无')
- }}
- </div>
- <div
- v-else-if="scope.column.columnname == 'servicenode'"
- :style="scope.column.data.servicenode == 1 ? 'color:green' : 'color:red'"
- >
- {{ scope.column.data.servicenode == 1 ? $t('是') : $t('否') }}
- </div>
- <div v-else>
- {{
- scope.column.data[[scope.column.columnname]]
- ? scope.column.data[[scope.column.columnname]]
- : '--'
- }}
- </div>
- </template>
- </selectTable>
- <div class="container normal-panel" style="text-align: right">
- <el-pagination
- style="text-align: right"
- background
- small
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
- :current-page="params.content.pageNumber"
- :page-size="params.content.pageSize"
- layout="total, prev, pager, next, jumper"
- :total="total"
- >
- </el-pagination>
- </div>
- </div>
- <div class="fixed__btn__panel">
- <el-button size="small" @click="dialogFormVisible = false" class="normal-btn-width">{{
- $t('取 消')
- }}</el-button>
- <el-button
- size="small"
- type="primary"
- @click="onSubmit"
- :disabled="isLength"
- class="normal-btn-width"
- >{{ $t('确 定') }}</el-button
- >
- </div>
- </el-drawer>
- </div>
- </template>
- <script>
- import selectTable from '@/components/selectTable/index';
- export default {
- name: 'add',
- props: ['data', 'disabled'],
- components: { selectTable },
- data() {
- return {
- result: [],
- selectArr: [],
- isLength: true,
- dialogFormVisible: false,
- orderList: [],
- tablecols: [],
- total: 0,
- params: {
- id: 2026051416494002,
- content: {
- pageNumber: 1,
- pageSize: 20,
- where: {
- condition: '',
- },
- },
- },
- };
- },
- created() {},
- watch: {
- dialogFormVisible(val) {
- if (!val) {
- this.$refs.table.allArr = [];
- }
- },
- },
- methods: {
- addBtn() {
- this.dialogFormVisible = true;
- this.getOrderList();
- this.tablecols = this.tool.tabelCol(this.$route.name).serviceWorkItemTable.tablecols;
- },
- async onSubmit() {
- let data = this.$refs.table.allArr.map((item) => {
- console.log('this.data', this.data);
- return {
- sc_workorder_template_worksid: 0,
- parentid: this.data ? this.data.sc_workorder_template_worksid : 0,
- sc_workpresetid: item.sc_workpresetid,
- sequence: '1',
- };
- });
- let res = await this.$api.requested({
- id: '2026051514394802',
- content: {
- sc_workorder_templateid: this.$route.query.id,
- workinfos: data,
- },
- });
- this.tool.showMessage(res, () => {
- this.$emit('onSuccess');
- this.dialogFormVisible = false;
- });
- },
- async getOrderList() {
- let res = await this.$api.requested(this.params);
- console.log(res.data);
- this.orderList = res.data;
- this.total = res.total;
- console.log(res);
- },
- selectChange(data) {
- console.log(data);
- this.selectArr = data;
- this.isLength = data.length < 1;
- },
- upDateData(data) {
- this.selectArr = data;
- this.isLength = data.length < 1;
- },
- handleSizeChange(val) {
- // console.log(`每页 ${val} 条`);
- this.params.content.pageSize = val;
- this.getOrderList();
- },
- handleCurrentChange(val) {
- // console.log(`当前页: ${val}`);
- this.params.content.pageNumber = val;
- this.getOrderList();
- },
- },
- };
- </script>
- <style scoped>
- .dialog-footer {
- margin-top: 0;
- }
- .el-select {
- width: 100%;
- }
- </style>
|