| | |
| | | size="small" |
| | | /> |
| | | </div> |
| | | <div class="serch_box"> |
| | | <div class="serchb">å
¨å±æç´¢</div> |
| | | <!-- <div class="serch_box"> |
| | | <div class="serchb"> |
| | | <el-select |
| | | v-model="queryForm.selectType" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | style="width: 100%; height: 100%; font-size: 0.15rem" |
| | | > |
| | | <el-option |
| | | v-for="item in selectoptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </div> |
| | | <input |
| | | v-model="queryForm.selectName" |
| | | v-model="queryForm.selectInput" |
| | | placeholder="请è¾å
¥å
³é®è¯æç´¢" |
| | | style="border-left: 0.06rem solid #e2e2e2" |
| | | /> |
| | | </div> |
| | | <el-button type="primary" size="small" style="margin-left: 0.98rem" |
| | | </div> --> |
| | | <el-button |
| | | type="primary" |
| | | size="small" |
| | | style="margin-left: 0.98rem; height: 2rem" |
| | | @click="handleQuery" |
| | | >æ¥è¯¢</el-button |
| | | > |
| | | <el-button size="small">éç½®</el-button> |
| | | <el-button size="small" @click="resetQuery" style="height: 2rem" |
| | | >éç½®</el-button |
| | | > |
| | | </div> |
| | | <div class="btns"> |
| | | <div style="display: flex; align-items: center"> |
| | |
| | | >æå¨è·å</el-button |
| | | > |
| | | <el-button |
| | | @click="dialogVisible = true" |
| | | @click="importDialogVisible = true" |
| | | size="small" |
| | | style="width: 5.5rem; height: 2rem; font-size: 0.88rem" |
| | | >æ¹é导å
¥</el-button |
| | |
| | | <el-button |
| | | size="small" |
| | | style="width: 5.5rem; height: 2rem; font-size: 0.88rem" |
| | | @click="printExcel" |
| | | >æ¹é导åº</el-button |
| | | > |
| | | <el-button |
| | | @click="deleteAll" |
| | | size="small" |
| | | style="width: 5.5rem; height: 2rem; font-size: 0.88rem" |
| | | >æ¹éå é¤</el-button |
| | |
| | | <div style="margin-top: 1rem; height: 100%"> |
| | | <el-table |
| | | :data="tableData" |
| | | height="500" |
| | | style="width: 100%" |
| | | :header-cell-style="{ |
| | | background: 'rgba(250,250,250,1)', |
| | |
| | | fontSize: '0.88rem', |
| | | height: '3rem', |
| | | }" |
| | | @select="SelectionChange" |
| | | > |
| | | <el-table-column type="selection" align="center" /> |
| | | <el-table-column prop="address" label="车å" align="center" /> |
| | | <el-table-column prop="date" label="车ç»" align="center" /> |
| | | <el-table-column prop="name" label="è¡é" align="center" /> |
| | | <el-table-column prop="address" label="车å¢å·ä½ç½®" align="center" /> |
| | | <el-table-column prop="address" label="è½¬åæ¶ä½ç½®" align="center" /> |
| | | <el-table-column prop="address" label="æ£ä¿®çç»" align="center" /> |
| | | <el-table-column prop="address" label="ä»»å¡ç¶æ" align="center" /> |
| | | <el-table-column prop="address" label="æ£ä¿®æ¥æ" align="center" /> |
| | | <el-table-column prop="address" label="åå»ºæ¥æ" align="center" /> |
| | | <el-table-column prop="address" label="æä½" align="center"> |
| | | <template #default=""> |
| | | <el-button size="small" type="text" @click="Send" |
| | | <el-table-column type="selection" align="center" min-width="1%" /> |
| | | <el-table-column |
| | | prop="trainKind" |
| | | label="车å" |
| | | align="center" |
| | | min-width="2%" |
| | | /> |
| | | <el-table-column |
| | | prop="trainNum" |
| | | label="车ç»" |
| | | align="center" |
| | | min-width="2%" |
| | | /> |
| | | <el-table-column |
| | | prop="track" |
| | | label="è¡é" |
| | | align="center" |
| | | min-width="2%" |
| | | /> |
| | | <el-table-column |
| | | prop="coachNum" |
| | | label="车å¢å·ä½ç½®" |
| | | align="center" |
| | | min-width="2%" |
| | | /> |
| | | <el-table-column |
| | | prop="bogie" |
| | | label="è½¬åæ¶ä½ç½®" |
| | | align="center" |
| | | min-width="2%" |
| | | /> |
| | | <el-table-column |
| | | prop="processDept" |
| | | label="æ£ä¿®çç»" |
| | | align="center" |
| | | min-width="3%" |
| | | /> |
| | | <el-table-column |
| | | prop="taskstatus" |
| | | label="ä»»å¡ç¶æ" |
| | | align="center" |
| | | min-width="3%" |
| | | > |
| | | <template #default="scope"> |
| | | <span style="color: #ff5400" v-if="scope.row.taskstatus == 0" |
| | | >å¾
派工</span |
| | | > |
| | | <span style="color: #c4ccd5" v-if="scope.row.taskstatus == 1" |
| | | >已派工</span |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="address" |
| | | label="æ£ä¿®æ¥æ" |
| | | align="center" |
| | | min-width="3%" |
| | | /> |
| | | <el-table-column |
| | | prop="createTime" |
| | | label="åå»ºæ¥æ" |
| | | align="center" |
| | | min-width="3%" |
| | | /> |
| | | <el-table-column label="æä½" align="center" min-width="3%"> |
| | | <template #default="scope"> |
| | | <el-button |
| | | :disabled="scope.row.taskstatus == 1" |
| | | size="small" |
| | | type="text" |
| | | @click="Send(scope.row)" |
| | | >派任å¡</el-button |
| | | > |
| | | <el-button size="small" type="text" @click="delt">ç¼è¾</el-button> |
| | | <!-- <el-button size="small" type="text" @click="delt">ç¼è¾</el-button> --> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | size="small" |
| | | background |
| | | layout="prev, pager, next" |
| | | :total="1" |
| | | :current-page="pageQuery.page" |
| | | :page-size="pageQuery.rows" |
| | | :total="pageTotal" |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | /> |
| | | </div> |
| | | </div> |
| | |
| | | v-model="dialogVisible1" |
| | | title="" |
| | | width="60%" |
| | | :before-close="handleClose" |
| | | @close="handleClose(ruleFormRef)" |
| | | style="margin-top: 15.625rem" |
| | | > |
| | | <template #title> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-form :model="form" label-width="auto" label-position="top"> |
| | | <el-form |
| | | :model="form" |
| | | label-width="auto" |
| | | label-position="top" |
| | | :rules="rules" |
| | | ref="ruleFormRef" |
| | | :hide-required-asterisk="true" |
| | | > |
| | | <el-row :gutter="20"> |
| | | <el-col :span="8"> |
| | | <el-form-item> |
| | | <el-form-item prop="trainKind"> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | | <span style="color: red; margin-right: 0.2rem">*</span> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-input size="small" v-model="form.name" placeholder="请è¾å
¥" /> |
| | | <el-input |
| | | size="small" |
| | | v-model="form.trainKind" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item> |
| | | <el-form-item prop="trainNum"> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | | <span style="color: red; margin-right: 0.2rem">*</span> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-input size="small" v-model="form.name" placeholder="请è¾å
¥" /> |
| | | <el-input |
| | | size="small" |
| | | v-model="form.trainNum" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item> |
| | | <el-form-item prop="track"> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | | <span style="color: red; margin-right: 0.2rem">*</span> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-input size="small" v-model="form.name" placeholder="请è¾å
¥" /> |
| | | <el-input |
| | | size="small" |
| | | v-model="form.track" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="20"> |
| | | <el-col :span="8"> |
| | | <el-form-item> |
| | | <el-form-item prop="coachNum"> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | | <span style="color: red; margin-right: 0.2rem">*</span> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-input size="small" v-model="form.name" placeholder="请è¾å
¥" /> |
| | | <el-input |
| | | size="small" |
| | | v-model="form.coachNum" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item> |
| | | <el-form-item prop="bogie"> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | | <span style="color: red; margin-right: 0.2rem">*</span> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-input size="small" v-model="form.name" placeholder="请è¾å
¥" /> |
| | | <el-input |
| | | size="small" |
| | | v-model="form.bogie" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item> |
| | | <el-form-item prop="processDept"> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | | <span style="color: red; margin-right: 0.2rem">*</span> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-input size="small" v-model="form.name" placeholder="请è¾å
¥" /> |
| | | <el-input |
| | | size="small" |
| | | v-model="form.processDept" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | <el-button |
| | | size="small" |
| | | type="primary" |
| | | @click="dialogVisible1 = false" |
| | | @click="AddNJinfomclick(ruleFormRef)" |
| | | style="height: 2rem; font-size: 0.88rem" |
| | | > |
| | | 确认 |
| | |
| | | v-model="SenddialogVisible" |
| | | title="" |
| | | width="60%" |
| | | :before-close="handleClose" |
| | | @close="handleClose(sendformRef)" |
| | | top="2%" |
| | | > |
| | | <template #title> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-form :model="form" label-width="auto" label-position="top"> |
| | | <el-form |
| | | :model="sendform" |
| | | label-width="auto" |
| | | label-position="top" |
| | | :rules="rules" |
| | | ref="sendformRef" |
| | | > |
| | | <el-form-item> |
| | | <template #label> |
| | | <div style="display: flex; align-items: flex-end"> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.templateID" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | @change="getTemplate" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in temopitions" |
| | | :key="item.templateID" |
| | | :label="item.templateName" |
| | | :value="item.templateID" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-input size="small" v-model="form.name" placeholder="请è¾å
¥" /> |
| | | <el-input |
| | | size="small" |
| | | v-model="sendform.templateName" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-input size="small" v-model="form.name" placeholder="请è¾å
¥" /> |
| | | <el-input |
| | | size="small" |
| | | v-model="sendform.jiShuYuan" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-input size="small" v-model="form.name" placeholder="请è¾å
¥" /> |
| | | <el-input |
| | | size="small" |
| | | v-model="sendform.gongZhang" |
| | | placeholder="请è¾å
¥" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.zhiJianYuan_Dq" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in UerTypeoptions.quality" |
| | | :key="item.userTrueName" |
| | | :label="item.userTrueName" |
| | | :value="item.userTrueName" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.zhiJianYuan_Lc" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in UerTypeoptions.quality" |
| | | :key="item.userTrueName" |
| | | :label="item.userTrueName" |
| | | :value="item.userTrueName" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.zhiJianYuan_Dg" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in UerTypeoptions.quality" |
| | | :key="item.userTrueName" |
| | | :label="item.userTrueName" |
| | | :value="item.userTrueName" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.liJu_Dq" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in UerTypeoptions.electric" |
| | | :key="item.userTrueName" |
| | | :label="item.userTrueName" |
| | | :value="item.userTrueName" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.fuZhu_Dq" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in UerTypeoptions.electric" |
| | | :key="item.userTrueName" |
| | | :label="item.userTrueName" |
| | | :value="item.userTrueName" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.liJu_Lc" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in UerTypeoptions.mechanical" |
| | | :key="item.userTrueName" |
| | | :label="item.userTrueName" |
| | | :value="item.userTrueName" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.fuZhu_Lc" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in UerTypeoptions.mechanical" |
| | | :key="item.userTrueName" |
| | | :label="item.userTrueName" |
| | | :value="item.userTrueName" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.liJu_Dg" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in UerTypeoptions.trench" |
| | | :key="item.userTrueName" |
| | | :label="item.userTrueName" |
| | | :value="item.userTrueName" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | <el-select v-model="value" placeholder="è¯·éæ©" size="small"> |
| | | <el-select |
| | | v-model="sendform.fuZhu_Dg" |
| | | placeholder="è¯·éæ©" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | v-for="item in UerTypeoptions.trench" |
| | | :key="item.userTrueName" |
| | | :label="item.userTrueName" |
| | | :value="item.userTrueName" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-button |
| | | size="small" |
| | | type="primary" |
| | | @click="SenddialogVisible = false" |
| | | @click="savesublit(sendformRef)" |
| | | style="height: 2rem; font-size: 0.88rem" |
| | | > |
| | | ä¿å模æ¿å¹¶æäº¤ |
| | |
| | | <el-button |
| | | size="small" |
| | | type="primary" |
| | | @click="SenddialogVisible = false" |
| | | @click="sublit(sendformRef)" |
| | | style="height: 2rem; font-size: 0.88rem" |
| | | > |
| | | æäº¤ |
| | |
| | | </el-dialog> |
| | | |
| | | <!-- æ¹é导å
¥å¼¹åºæ¡ --> |
| | | <el-dialog |
| | | <!-- <el-dialog |
| | | v-model="dialogVisible" |
| | | title="" |
| | | width="60%" |
| | | :before-close="handleClose" |
| | | @close="handleClose" |
| | | style="margin-top: 15.625rem" |
| | | > |
| | | <template #title> |
| | |
| | | > |
| | | </div> |
| | | </template> |
| | | </el-dialog> --> |
| | | |
| | | <el-dialog v-model="importDialogVisible"> |
| | | <UploadExcel |
| | | @importExcelAfter="importExcelAfter" |
| | | url="/api/NjTask/Import" |
| | | :template="{ |
| | | url: '/api/NjTask/DownLoadTemplate', |
| | | fileName: '任塿¨¡æ¿', |
| | | }" |
| | | /> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | <script setup> |
| | | import { ref, reactive } from "vue"; |
| | | import { ref, reactive, onMounted } from "vue"; |
| | | import { useRouter } from "vue-router"; |
| | | import { |
| | | GetPageData, |
| | | AddNJinfom, |
| | | Submit, |
| | | Submtandsave, |
| | | GetTemplate, |
| | | GetTemplateList, |
| | | Delete, |
| | | ExportApi, |
| | | } from "@/api/newapi/NjTask"; |
| | | import { GetUerType } from "@/api/user"; |
| | | import { formatTime } from "@/utils/index.js"; |
| | | import { ElMessage } from "element-plus"; |
| | | import UploadExcel from "@/components/basic/UploadExcel.vue"; |
| | | |
| | | const router = useRouter(); |
| | | const queryForm = reactive({ |
| | | const obj = { |
| | | selectName: "", |
| | | selectTime: [], // æ¶é´èå´ |
| | | selectType: "", |
| | | selectInput: "", |
| | | }; |
| | | const queryForm = ref({ |
| | | selectName: "", |
| | | selectTime: [], // æ¶é´èå´ |
| | | selectType: "", |
| | | selectInput: "", |
| | | }); |
| | | |
| | | const tableData = ref([]); |
| | | |
| | | const UerTypeoptions = ref({ |
| | | quality: [], //è´¨æ£ |
| | | electric: [], //çµæ° |
| | | mechanical: [], //æºæ¢° |
| | | trench: [], //å°æ² |
| | | }); |
| | | const rules = reactive({ |
| | | bogie: [{ required: true, message: "请è¾å
¥è½¬åæ¶", trigger: "blur" }], |
| | | coachNum: [{ required: true, message: "请è¾å
¥è½¦å¢å·", trigger: "blur" }], |
| | | processDept: [{ required: true, message: "请è¾å
¥æ£ä¿®çç»", trigger: "blur" }], |
| | | track: [{ required: true, message: "请è¾å
¥è¡é", trigger: "blur" }], |
| | | trainKind: [{ required: true, message: "请è¾å
¥è½¦å", trigger: "blur" }], |
| | | trainNum: [{ required: true, message: "请è¾å
¥è½¦ç»å·", trigger: "blur" }], |
| | | }); |
| | | const ruleFormRef = ref(); |
| | | const options = ref([]); |
| | | const props = { multiple: true }; |
| | | |
| | | const table = ref(false); |
| | | const form = reactive({}); |
| | | |
| | | function cancelClick() { |
| | | table.value = false; |
| | | } |
| | | function confirmClick() { |
| | | table.value = false; |
| | | } |
| | | const selectoptions = reactive([ |
| | | { label: "车å", value: "trainkind" }, |
| | | { label: "车ç»", value: "trainNum" }, |
| | | { label: "è¡é", value: "track" }, |
| | | { label: "æ£ä¿®çç»", value: "processkept" }, |
| | | ]); |
| | | const form = ref({ |
| | | bogie: "", //è½¬åæ¶ |
| | | coachNum: "", //è½¦å¢ |
| | | processDept: "", //æ£ä¿®çç» |
| | | track: "", //è¡é |
| | | trainKind: "", //车å |
| | | trainNum: "", //车ç»å· |
| | | createTime: formatTime(new Date()), //å建æ¶é´ |
| | | }); |
| | | const sendform = ref({}); |
| | | const importDialogVisible = ref(false); |
| | | //ç嬿件ä¸ä¼ æåçåè° |
| | | const importExcelAfter = () => { |
| | | importDialogVisible.value = false; |
| | | initData(); |
| | | }; |
| | | //æ°å»ºä»»å¡ä¿¡æ¯ |
| | | const AddNJinfomclick = async (formEl) => { |
| | | if (!formEl) return; |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | AddNJinfom(form.value).then((res) => { |
| | | if (res.code == 0) { |
| | | ElMessage({ |
| | | message: "å建æå", |
| | | type: "success", |
| | | }); |
| | | dialogVisible1.value = false; |
| | | } |
| | | }); |
| | | } else { |
| | | console.log("error submit!", fields); |
| | | } |
| | | }); |
| | | }; |
| | | //å é¤ |
| | | const dialogVisible1 = ref(false); |
| | | //æ´¾ä»»å¡ |
| | | const SenddialogVisible = ref(false); |
| | | const sendformRef = ref(); |
| | | //æäº¤ |
| | | const sublit = async (formEl) => { |
| | | let data = { |
| | | njtakeid: sendform.value.nJtaskID, |
| | | takename: sendform.value.takeName, |
| | | jishuyuan: sendform.value.jiShuYuan, |
| | | zhijianyuan_lc: sendform.value.zhiJianYuan_Lc, |
| | | zhijianyuan_dg: sendform.value.zhiJianYuan_Dg, |
| | | zhijianyuan_dq: sendform.value.zhiJianYuan_Dq, |
| | | gongzhang: sendform.value.gongZhang, |
| | | liju_lc: sendform.value.liJu_Lc, |
| | | fuzhu_lc: sendform.value.fuZhu_Lc, |
| | | liju_dg: sendform.value.liJu_Dg, |
| | | fuzhu_dg: sendform.value.fuZhu_Dg, |
| | | liju_dq: sendform.value.liJu_Dq, |
| | | fuzhu_dq: sendform.value.fuZhu_Dq, |
| | | }; |
| | | if (!formEl) return; |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | Submit(data).then((res) => { |
| | | ElMessage({ |
| | | message: res.message, |
| | | type: "success", |
| | | }); |
| | | SenddialogVisible.value = false; |
| | | }); |
| | | } else { |
| | | console.log("error submit!", fields); |
| | | } |
| | | }); |
| | | }; |
| | | //æäº¤ä¿å |
| | | const savesublit = async (formEl) => { |
| | | let data = { |
| | | tpid: sendform.value.templateID, |
| | | njtakeid: sendform.value.nJtaskID, |
| | | takename: sendform.value.takeName, |
| | | jishuyuan: sendform.value.jiShuYuan, |
| | | zhijianyuan_lc: sendform.value.zhiJianYuan_Lc, |
| | | zhijianyuan_dg: sendform.value.zhiJianYuan_Dg, |
| | | zhijianyuan_dq: sendform.value.zhiJianYuan_Dq, |
| | | gongzhang: sendform.value.gongZhang, |
| | | liju_lc: sendform.value.liJu_Lc, |
| | | fuzhu_lc: sendform.value.fuZhu_Lc, |
| | | liju_dg: sendform.value.liJu_Dg, |
| | | fuzhu_dg: sendform.value.fuZhu_Dg, |
| | | liju_dq: sendform.value.liJu_Dq, |
| | | fuzhu_dq: sendform.value.fuZhu_Dq, |
| | | }; |
| | | if (!formEl) return; |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | Submtandsave(data).then((res) => { |
| | | ElMessage({ |
| | | message: res.message, |
| | | type: "success", |
| | | }); |
| | | SenddialogVisible.value = false; |
| | | }); |
| | | } else { |
| | | console.log("error submit!", fields); |
| | | } |
| | | }); |
| | | }; |
| | | //æ¹é导å
¥ |
| | | const dialogVisible = ref(false); |
| | | const printExcel = () => { |
| | | // æ¥è¯¢æ¡ä»¶ |
| | | const startTime = formatTime(queryForm.selectTime[0]); |
| | | const endTime = formatTime(queryForm.selectTime[1]); |
| | | const filter = [ |
| | | { |
| | | name: queryForm.selectType, |
| | | value: queryForm.selectInput, |
| | | displayType: "String", |
| | | }, |
| | | |
| | | { name: "createTime", value: startTime, displayType: "ThanOrEqual" }, |
| | | { name: "createTime", value: endTime, displayType: "LessOrEqual" }, |
| | | ]; |
| | | ExportApi({ |
| | | ...pageQuery.value, |
| | | filter, |
| | | }); |
| | | }; |
| | | //æ¹é导å
¥æ°æ® |
| | | const gridtableData = ref([]); |
| | | //æ´¾ä»»å¡æ¹æ³ |
| | | const Send = () => { |
| | | const Send = (val) => { |
| | | SenddialogVisible.value = true; |
| | | sendform.value = { ...val }; |
| | | getTemplateList(); |
| | | GetUerType().then((res) => { |
| | | UerTypeoptions.value.quality = res.data.filter( |
| | | (item) => item.roleId != 1 && item.roleId == 2 |
| | | ); |
| | | UerTypeoptions.value.electric = res.data.filter( |
| | | (item) => item.roleId != 1 && item.roleId == 3 |
| | | ); |
| | | UerTypeoptions.value.mechanical = res.data.filter( |
| | | (item) => item.roleId != 1 && item.roleId == 4 |
| | | ); |
| | | UerTypeoptions.value.trench = res.data.filter( |
| | | (item) => item.roleId != 1 && item.roleId == 5 |
| | | ); |
| | | }); |
| | | }; |
| | | //å 餿¹æ³ |
| | | const delt = () => { |
| | | dialogVisible1.value = true; |
| | | }; |
| | | //æ¹éå é¤ |
| | | const ids = ref([]); |
| | | const SelectionChange = (val) => { |
| | | ids.value = []; |
| | | ids.value = val.map((item) => item.id); |
| | | }; |
| | | const deleteAll = () => { |
| | | if (ids.value.length == 0) { |
| | | ElMessage({ message: "è¯·éæ©è¦å é¤çæ°æ®", type: "error" }); |
| | | return; |
| | | } |
| | | Delete(ids.value).then((res) => { |
| | | ElMessage({ message: "å 餿å", type: "success" }); |
| | | initData(); |
| | | }); |
| | | }; |
| | | const temopitions = ref([]); |
| | | //è·åæææ¨¡æ¿ |
| | | const getTemplateList = () => { |
| | | GetTemplateList({ |
| | | page: 1, |
| | | rows: 1000, |
| | | total: 1000, |
| | | tableName: "string", |
| | | sort: "string", |
| | | order: "string", |
| | | wheres: "string", |
| | | export: true, |
| | | value: "string", |
| | | filter: [ |
| | | { |
| | | name: "string", |
| | | value: "string", |
| | | displayType: "string", |
| | | }, |
| | | ], |
| | | }).then((res) => { |
| | | temopitions.value = res.rows; |
| | | }); |
| | | }; |
| | | //è·å模æ¿å
容 |
| | | const getTemplate = () => { |
| | | GetTemplate(sendform.value.templateID).then((res) => { |
| | | sendform.value = { ...sendform.value, ...res.data[0] }; |
| | | }); |
| | | }; |
| | | |
| | | //å页请æ±åæ° |
| | | const pageQuery = ref({ |
| | | page: 1, //å½åé¡µé¢ |
| | | rows: 10, //æ¯é¡µæ¾ç¤ºæ¡æ° |
| | | order: "createTime", //æåºæ¹å¼ |
| | | sort: "desc", //æåºå段 |
| | | wheres: "", //æ¡ä»¶æ¥è¯¢ |
| | | }); |
| | | |
| | | //å页页é¢å¤§å°æ¹å |
| | | const handleSizeChange = (val) => { |
| | | pageQuery.value.rows = val; |
| | | initData(); |
| | | }; |
| | | |
| | | //å页页颿¹å |
| | | const handleCurrentChange = (val) => { |
| | | pageQuery.value.page = val; |
| | | initData(); |
| | | }; |
| | | const pageTotal = ref(0); |
| | | const initData = () => { |
| | | // æ¥è¯¢æ¡ä»¶ |
| | | const startTime = formatTime(queryForm.value.selectTime[0]); |
| | | const endTime = formatTime(queryForm.value.selectTime[1]); |
| | | const filter = [ |
| | | { |
| | | name: queryForm.value.selectType, |
| | | value: queryForm.value.selectInput, |
| | | displayType: "String", |
| | | }, |
| | | { name: "createtime", value: startTime, displayType: "ThanOrEqual" }, |
| | | { name: "createtime", value: endTime, displayType: "LessOrEqual" }, |
| | | ]; |
| | | GetPageData({ |
| | | ...pageQuery.value, |
| | | filter, |
| | | }).then((res) => { |
| | | tableData.value = res.rows; |
| | | pageTotal.value = res.total; |
| | | }); |
| | | }; |
| | | |
| | | //æ°æ®æ£ç´¢äºä»¶ |
| | | const handleQuery = () => { |
| | | pageQuery.value.page = 1; |
| | | initData(); |
| | | }; |
| | | const resetQuery = () => { |
| | | queryForm.value = Object.assign({}, obj); |
| | | pageQuery.value.page = 1; |
| | | initData(); |
| | | }; |
| | | //é置表å |
| | | const handleClose = (formEl) => { |
| | | if (!formEl) return; |
| | | formEl.resetFields(); |
| | | }; |
| | | onMounted(() => { |
| | | initData(); |
| | | }); |
| | | </script> |
| | | <style lang="scss" scoped> |
| | | .Taskmanagement { |
| | |
| | | width: 6.88rem; |
| | | height: 2rem; |
| | | text-align: center; |
| | | border: 0.06rem solid rgba(222, 222, 222, 1); |
| | | border-radius: 0.25rem 0 0 0.25rem; |
| | | |
| | | font-size: 0.75rem; |
| | | display: flex; |
| | | align-items: center; |