From b51361558da5e1763bc37a0ca7195ce7bc5eb251 Mon Sep 17 00:00:00 2001 From: wujian <14790700720@163.com> Date: 星期一, 22 一月 2024 18:39:05 +0800 Subject: [PATCH] add生产报表-拧紧数据 --- jcdm-ui/src/views/main/om/productionOrde/index.vue | 462 ++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 293 insertions(+), 169 deletions(-) diff --git a/jcdm-ui/src/views/main/om/productionOrde/index.vue b/jcdm-ui/src/views/main/om/productionOrde/index.vue index 2910162..249fae6 100644 --- a/jcdm-ui/src/views/main/om/productionOrde/index.vue +++ b/jcdm-ui/src/views/main/om/productionOrde/index.vue @@ -2,12 +2,15 @@ <div class="app-container"> <el-card class="box-card"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> - <el-form-item label-width="80" label="鐢熶骇宸ュ崟鍙�" prop="workOrderNo"> - <el-input v-model="queryParams.workOrderNo" placeholder="璇疯緭鍏ョ敓浜у伐鍗曞彿" clearable @keyup.enter.native="handleQuery"/> + <el-form-item label-width="100" label="鐢熶骇閫氱煡鍗�" prop="productName"> + <el-input v-model="queryParams.productionNotice" placeholder="璇疯緭鍏ョ敓浜ч�氱煡鍗�" clearable @keyup.enter.native="handleQuery"/> </el-form-item> - <el-form-item label="浜у搧鍚嶇О" prop="productName"> - <el-input v-model="queryParams.productName" placeholder="璇疯緭鍏ヤ骇鍝佸悕绉�" clearable @keyup.enter.native="handleQuery"/> + <el-form-item label-width="80" label="鐢熶骇璁㈠崟" prop="workOrderNo"> + <el-input v-model="queryParams.workOrderNo" placeholder="璇疯緭鍏ョ敓浜ц鍗�" clearable @keyup.enter.native="handleQuery"/> </el-form-item> +<!-- <el-form-item label="浜у搧鍚嶇О" prop="productName">--> +<!-- <el-input v-model="queryParams.productName" placeholder="璇疯緭鍏ヤ骇鍝佸悕绉�" clearable @keyup.enter.native="handleQuery"/>--> +<!-- </el-form-item>--> <el-form-item label="宸ュ崟鐘舵��" prop="orderStatus"> <el-select v-model="queryParams.orderStatus" placeholder="璇烽�夋嫨宸ュ崟鐘舵��" clearable> <el-option @@ -27,23 +30,20 @@ <el-form-item style="margin-left: 14px" label="浜у搧缂栧彿" prop="productCode"> <el-input v-model="queryParams.productCode" placeholder="璇疯緭鍏ヤ骇鍝佺紪鍙�" clearable @keyup.enter.native="handleQuery"/> </el-form-item> - <el-form-item label="璁㈠崟缂栧彿" prop="salesOrderCode"> - <el-input v-model="queryParams.salesOrderCode" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�" clearable @keyup.enter.native="handleQuery"/> + <el-form-item label="鏈哄瀷" prop="typeZ"> + <el-input v-model="queryParams.typeZ" placeholder="璇疯緭鍏ユ満鍨�" clearable @keyup.enter.native="handleQuery"/> </el-form-item> - <el-form-item label="杞﹂棿缂栧彿" prop="workshopCode"> - <el-input v-model="queryParams.workshopCode" placeholder="璇疯緭鍏ヨ溅闂寸紪鍙�" clearable @keyup.enter.native="handleQuery"/> - </el-form-item> - <el-form-item label="浜х嚎缂栧彿" prop="lineCode"> - <el-input v-model="queryParams.lineCode" placeholder="璇疯緭鍏ヤ骇绾跨紪鍙�" clearable @keyup.enter.native="handleQuery"/> - </el-form-item> - <el-form-item style="margin-left: 7px" label-width="80" label="浜у搧BOM" prop="bomCode"> - <el-input v-model="queryParams.bomCode" placeholder="璇疯緭鍏ヤ骇鍝丅OM" clearable @keyup.enter.native="handleQuery"/> - </el-form-item> - <el-form-item label="宸ヨ壓娴佺▼" prop="routeCode"> - <el-input v-model="queryParams.routeCode" placeholder="璇疯緭鍏ュ伐鑹烘祦绋�" clearable @keyup.enter.native="handleQuery"/> - </el-form-item> - <el-form-item label="宸ヨ壓閰嶆柟" prop="recipeCode"> - <el-input v-model="queryParams.recipeCode" placeholder="璇疯緭鍏ュ伐鑹洪厤鏂�" clearable @keyup.enter.native="handleQuery"/> + <el-form-item label-width="130" label="閫氱煡鍗曠敓鎴愭棩鏈�" prop="dateConditions"> + <el-date-picker + v-model="queryParams.dateConditions" + type="datetimerange" + :picker-options="pickerOptions" + value-format="yyyy-MM-dd HH:mm:ss" + range-separator="鑷�" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + align="right"> + </el-date-picker> </el-form-item> </el-form> </el-card> @@ -92,31 +92,41 @@ v-hasPermi="['om:productionOrde:export']" >瀵煎嚭</el-button> </el-col> +<!-- <el-col :span="1.5">--> +<!-- <el-button--> +<!-- type="warning"--> +<!-- plain--> +<!-- icon="el-icon-upload2"--> +<!-- :disabled="move"--> +<!-- size="mini"--> +<!-- @click="moveUp(val => val, 'up')"--> +<!-- >涓婄Щ</el-button>--> +<!-- </el-col>--> +<!-- <el-col :span="1.5">--> +<!-- <el-button--> +<!-- type="warning"--> +<!-- plain--> +<!-- icon="el-icon-download"--> +<!-- size="mini"--> +<!-- :disabled="move"--> +<!-- @click="moveUp(val => val, 'down')"--> +<!-- >涓嬬Щ</el-button>--> +<!-- </el-col>--> <el-col :span="1.5"> <el-button - type="warning" + type="success" plain - icon="el-icon-upload2" - :disabled="move" + icon="el-icon-wind-power" size="mini" - @click="moveUp(val => val, 'up')" - >涓婄Щ</el-button> - </el-col> - <el-col :span="1.5"> - <el-button - type="warning" - plain - icon="el-icon-download" - size="mini" - :disabled="move" - @click="moveUp(val => val, 'down')" - >涓嬬Щ</el-button> + @click="getProductionNotice" + v-hasPermi="['om:productionOrde:receive']" + >鎺ユ敹</el-button> </el-col> <el-col :span="1.5"> <el-button type="primary" plain - icon="el-icon-createUpdate" + icon="el-icon-edit" size="mini" :disabled="single" @click="CreatehandleUpdate" @@ -129,87 +139,96 @@ <el-table border v-loading="loading" :data="productionOrdeList" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" align="center" /> - <el-table-column label="鐢熶骇宸ュ崟鍙�" width="160" align="center"> + <el-table-column label="鐢熶骇閫氱煡鍗曞彿" width="160" align="center" prop="productionNotice"> + </el-table-column> + <el-table-column label="鐢熶骇璁㈠崟" width="160" align="center"> <template slot-scope="scope"> - <router-link :to="{path: '/main/workReport-data/index/', query: {workOrderNo: scope.row.workOrderNo} }" class="link-type"> + <router-link :to="{path: '/main/orderScheduling-data/index/', query: {workOrderNo: scope.row.workOrderNo} }" class="link-type"> <span>{{ scope.row.workOrderNo }}</span> </router-link> </template> </el-table-column> - <el-table-column label="璁㈠崟缂栧彿" width="140" align="center" prop="salesOrderCode"> + <el-table-column label="鏈哄瀷" width="160" align="center" prop="typeZ"> </el-table-column> - <el-table-column label="浜у搧缂栧彿" width="140" align="center" prop="productCode"> + <el-table-column label="闇�姹傛暟閲�" align="center" prop="planQty"> </el-table-column> - <el-table-column label="浜у搧鍚嶇О" width="160" align="center" prop="productName"> + <el-table-column label="浜у搧缂栧彿" width="150" align="center" prop="productCode"> </el-table-column> - <el-table-column label="绉嶇被" width="160" align="center" prop="typeZ"> - </el-table-column> - <el-table-column label="瀹為檯鏁伴噺" width="160" align="center" prop="actualQty"> - </el-table-column> +<!-- <el-table-column label="瀹為檯鏁伴噺" width="160" align="center" prop="actualQty">--> +<!-- </el-table-column>--> <el-table-column label="宸ュ崟鐘舵��" align="center" prop="orderStatus"> <template slot-scope="scope"> <dict-tag :options="dict.type.order_state" :value="scope.row.orderStatus"/> </template> </el-table-column> - <el-table-column label="杞﹂棿缂栧彿" align="center" prop="workshopCode"> +<!-- <el-table-column label="宸ュ巶" align="center" prop="workshopCode">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="浠撳簱" align="center">--> +<!-- </el-table-column>--> + <el-table-column label="浜х嚎" align="center" prop="lineCode"> </el-table-column> - <el-table-column label="浜х嚎缂栧彿" align="center" prop="lineCode"> +<!-- <el-table-column label="璁㈠崟绫诲瀷" align="center">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="ZWS" align="center">--> +<!-- </el-table-column>--> + +<!-- <el-table-column label="宸ヨ壓娴佺▼" width="140" align="center" prop="routeCode">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="浜у搧BOM" width="140" align="center" prop="bomCode">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="宸ヨ壓閰嶆柟" width="140" align="center" prop="recipeCode">--> +<!-- </el-table-column>--> + +<!-- <el-table-column label="瀹為檯鏁伴噺" align="center" prop="actualQty">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="瀹為檯涓婄嚎鏁伴噺" width="100" align="center" prop="actualOnlineQty">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="闇�姹傛棩鏈�" align="center" prop="demandDate" width="180">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="璁″垝寮�濮嬫椂闂�" width="160" align="center" prop="planStartTime">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="璁″垝缁撴潫鏃堕棿" width="160" align="center" prop="planEndTime">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="瀹為檯寮�濮嬫椂闂�" width="160" align="center" prop="actualStartTime">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="瀹為檯缁撴潫鏃堕棿" width="160" align="center" prop="actualEndTime">--> +<!-- </el-table-column>--> + +<!-- <el-table-column width="160" label="鏇存柊鏃堕棿" align="center" prop="updateTime">--> +<!-- </el-table-column>--> + <el-table-column label="閫氱煡鍗曞埗鍗曚汉" width="80" align="center" prop="createUser"> </el-table-column> - <el-table-column label="宸ヨ壓娴佺▼" width="140" align="center" prop="routeCode"> + <el-table-column width="160" label="閫氱煡鐢熸垚鏃ユ湡" align="center" prop="createTime"> </el-table-column> - <el-table-column label="浜у搧BOM" width="140" align="center" prop="bomCode"> + <el-table-column label="鎴愬搧鎻忚堪" width="320" align="center" prop="productName"> </el-table-column> - <el-table-column label="宸ヨ壓閰嶆柟" width="140" align="center" prop="recipeCode"> - </el-table-column> - <el-table-column label="璁″垝鏁伴噺" align="center" prop="planQty"> - </el-table-column> - <el-table-column label="瀹為檯鏁伴噺" align="center" prop="actualQty"> - </el-table-column> - <el-table-column label="瀹為檯涓婄嚎鏁伴噺" width="100" align="center" prop="actualOnlineQty"> - </el-table-column> - <el-table-column label="闇�姹傛棩鏈�" align="center" prop="demandDate" width="180"> - </el-table-column> - <el-table-column label="璁″垝寮�濮嬫椂闂�" width="160" align="center" prop="planStartTime"> - </el-table-column> - <el-table-column label="璁″垝缁撴潫鏃堕棿" width="160" align="center" prop="planEndTime"> - </el-table-column> - <el-table-column label="瀹為檯寮�濮嬫椂闂�" width="160" align="center" prop="actualStartTime"> - </el-table-column> - <el-table-column label="瀹為檯缁撴潫鏃堕棿" width="160" align="center" prop="actualEndTime"> - </el-table-column> - <el-table-column width="160" label="鍒涘缓鏃堕棿" align="center" prop="createTime"> - </el-table-column> - <el-table-column width="160" label="鏇存柊鏃堕棿" align="center" prop="updateTime"> - </el-table-column> - <el-table-column label="鍒涘缓浜�" width="80" align="center" prop="createUser"> - </el-table-column> - <el-table-column label="淇敼浜�" width="80" align="center" prop="updateUser"> - </el-table-column> - <el-table-column label="澶囨敞" width="100" align="center" prop="remarks"> - </el-table-column> - <el-table-column label="娴佹按鍙�" align="center" prop="streamNumber"> - </el-table-column> - <el-table-column label="瀹㈡埛" width="80" align="center" prop="custom"> - </el-table-column> - <el-table-column fixed="right" width="350" label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> - <template slot-scope="scope"> - <!-- 宸ュ崟鐘舵�侊紙1鍒涘缓銆�2宸插彂甯冦��3鐢熶骇涓��4宸插喕缁撱��5宸插畬宸ャ��6宸插叧闂級 --> - <el-button type="success" :disabled="scope.row.orderStatus !== '1'" style="width: 72px" plain @click="handleCommand('3',scope.row.id)" size="mini"> - 寮�濮�</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '2' && scope.row.orderStatus !== '3'" v-if="scope.row.orderStatus !== '2'&& scope.row.orderStatus !== '4'" plain @click="handleCommand('4',scope.row.id)" type="warning" size="mini"> - 鍐荤粨</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '4'" v-if="scope.row.orderStatus === '4'" plain @click="handleCommand('3',scope.row.id)" type="warning" size="mini"> - 瑙e喕</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '1'" plain @click="handleCommand('6',scope.row.id)" v-if="scope.row.orderStatus === '1'||scope.row.orderStatus === '3'||scope.row.orderStatus === '4'||scope.row.orderStatus === '5'" type="danger" size="mini"> - 鍏抽棴</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini"> - 鍚敤</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus === '4'||scope.row.orderStatus === '6'" v-if="scope.row.orderStatus !== '5'" @click="handleCommand('5',scope.row.id)" type="success" size="mini"> - 瀹屾垚</el-button> - <el-button style="width: 72px" :disabled="scope.row.orderStatus === '5'" v-if="scope.row.orderStatus === '5'" type="success" size="mini">宸插畬宸�</el-button> <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini"> - 鍚敤</el-button> - </template> - </el-table-column> +<!-- <el-table-column label="淇敼浜�" width="80" align="center" prop="updateUser">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="澶囨敞" width="100" align="center" prop="remarks">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="娴佹按鍙�" align="center" prop="streamNumber">--> +<!-- </el-table-column>--> +<!-- <el-table-column label="瀹㈡埛" width="80" align="center" prop="custom">--> +<!-- </el-table-column>--> +<!-- <el-table-column fixed="right" width="350" label="鎿嶄綔" align="center" class-name="small-padding fixed-width">--> +<!-- <template slot-scope="scope">--> +<!-- <!– 宸ュ崟鐘舵�侊紙1鍒涘缓銆�2宸插彂甯冦��3鐢熶骇涓��4宸插喕缁撱��5宸插畬宸ャ��6宸插叧闂級 –>--> +<!-- <el-button type="success" :disabled="scope.row.orderStatus !== '1'" style="width: 72px" plain @click="handleCommand('3',scope.row.id)" size="mini">--> +<!-- 寮�濮�</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '2' && scope.row.orderStatus !== '3'" v-if="scope.row.orderStatus !== '2'&& scope.row.orderStatus !== '4'" plain @click="handleCommand('4',scope.row.id)" type="warning" size="mini">--> +<!-- 鍐荤粨</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '4'" v-if="scope.row.orderStatus === '4'" plain @click="handleCommand('3',scope.row.id)" type="warning" size="mini">--> +<!-- 瑙e喕</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '1'" plain @click="handleCommand('6',scope.row.id)" v-if="scope.row.orderStatus === '1'||scope.row.orderStatus === '3'||scope.row.orderStatus === '4'||scope.row.orderStatus === '5'" type="danger" size="mini">--> +<!-- 鍏抽棴</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini">--> +<!-- 鍚敤</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus === '4'||scope.row.orderStatus === '6'" v-if="scope.row.orderStatus !== '5'" @click="handleCommand('5',scope.row.id)" type="success" size="mini">--> +<!-- 瀹屾垚</el-button>--> +<!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus === '5'" v-if="scope.row.orderStatus === '5'" type="success" size="mini">宸插畬宸�</el-button> <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini">--> +<!-- 鍚敤</el-button>--> +<!-- </template>--> +<!-- </el-table-column>--> </el-table> </el-card> @@ -230,7 +249,7 @@ </span> <el-form ref="form" inline :model="form" :rules="rules" label-width="80px"> <el-form-item label="宸ュ崟鍙�" prop="workOrderNo"> - <el-input v-model="form.workOrderNo" placeholder="璇疯緭鍏ョ敓浜у伐鍗曞彿" /> + <el-input v-model="form.workOrderNo" placeholder="璇疯緭鍏ョ敓浜ц鍗�" /> </el-form-item> <el-form-item label="璁㈠崟缂栧彿" prop="salesOrderCode"> <el-input v-model="form.salesOrderCode" placeholder="璇疯緭鍏ヨ鍗曠紪鍙�" /> @@ -328,43 +347,30 @@ <i class="el-icon-s-order"></i> {{titleName}} </span> - <el-form ref="form" inline :model="form" :rules="CreateRules"label-width="80px"> - <el-form-item label="绉嶇被" prop="typeZ"> - <el-input disabled v-model="form.typeZ" placeholder="璇疯緭鍏ョ绫�" /> + <el-form ref="form" inline :model="form" :rules="CreateRules" label-width="100px"> + <el-form-item label="鏈哄瀷" prop="typeZ"> + <el-input disabled v-model="form.typeZ" placeholder="璇疯緭鍏ユ満鍨�" /> </el-form-item> - <el-form-item label="骞翠唤" prop="year"> - <el-select @change="changeYear(form.year)" v-model="form.year" placeholder="璇烽�夋嫨骞翠唤" clearable> - <el-option v-for="dict in dict.type.year" - :key="dict.value" - :label="dict.label" - :value="dict.value"/> - </el-select> + <el-form-item label="鏃ユ湡" prop="dateTime"> + <el-date-picker clearable + v-model="form.dateTime" + type="date" + value-format="yyyy-MM-dd" + placeholder="璇烽�夋嫨鏃ユ湡" @input="handleCodeChange"> + </el-date-picker> </el-form-item> - <el-form-item label="鏈堜唤" prop="month"> - <el-select @change="changeMonth(form.month)" v-model="form.month" placeholder="璇烽�夋嫨鏈堜唤" clearable> - <el-option v-for="dict in dict.type.month" - :key="dict.value" - :label="dict.label" - :value="dict.value"/> - </el-select> + <el-form-item class="hidden-form-item" label="鏃ユ湡瑙勫垯" prop="dateTimeRule"> + <el-input v-model="form.dateTimeRule"/> </el-form-item> - <el-form-item label="鏃ユ湡" prop="day"> - <el-select @change="changeDay(form.day)" v-model="form.day" placeholder="璇烽�夋嫨鏃ユ湡" clearable> - <el-option v-for="dict in dict.type.day" - :key="dict.value" - :label="dict.label" - :value="dict.value"/> - </el-select> + <el-form-item label="璧峰缂栧彿" prop="startCode"> + <el-input type="number" :maxlength="3" :pattern="'[0-9]{3}'" v-model="form.startCode" placeholder="璇疯緭鍏ヨ捣濮嬬紪鍙�" @input="handleCodeChange"/> </el-form-item> - <el-form-item label="鏁伴噺" prop="actualQty"> - <el-input disabled v-model="form.actualQty" placeholder="璇疯緭鍏ユ暟閲�" /> - </el-form-item> - <el-form-item label="缂栫爜" prop="adds"> - <el-input disabled v-model="form.adds" placeholder="璇风敓鎴愮紪鐮�" /> + <el-form-item label="璧锋缂栧彿" prop="startEndCode"> + <el-input type="textarea" disabled v-model="form.startEndCode"/> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="CreateSubmitForm">纭� 瀹�</el-button> + <el-button type="primary" @click="submitFormForBoxCode">纭� 瀹�</el-button> <el-button @click="cancel">鍙� 娑�</el-button> </div> </el-dialog> @@ -378,8 +384,17 @@ import { listProductBom } from "@/api/main/bs/ProductBom/ProductBom"; import { listTechnologyRoute} from "@/api/main/bs/technologyRoute/technologyRoute"; import ItemSelect from "@/components/itemSelect/single.vue"; -import { upDownMove, listProductionOrde, getProductionOrde, delProductionOrde, addProductionOrde, updateProductionOrde } from "@/api/main/om/productionOrde/productionOrde"; -import { listOrderScheduling, getOrderScheduling, delOrderScheduling, addOrderScheduling, updateOrderScheduling,generateNumbers } from "@/api/main/bs/orderScheduling/orderScheduling"; +import { addOrderSchedulingForBoxCode,getProductionNotice, upDownMove, listProductionOrde, getProductionOrde, delProductionOrde, addProductionOrde, updateProductionOrde } from "@/api/main/om/productionOrde/productionOrde"; +import { + listOrderScheduling, + getOrderScheduling, + delOrderScheduling, + addOrderScheduling, + updateOrderScheduling, + generateNumbers +} from "@/api/main/bs/orderScheduling/orderScheduling"; +import {listMaterial} from "@/api/main/bs/material/material"; +import {listModelNumber} from "@/api/main/bs/modelNumber/modelNumber"; export default { name: "ProductionOrde", @@ -442,6 +457,13 @@ typeZ: null, flag: null, adds:null, + productionNotice: null, + dateConditions: [], + }, + materialQueryParams: { + pageNum: 1, + pageSize: 10, + materialCode: null, }, // 琛ㄥ崟鍙傛暟 @@ -466,11 +488,45 @@ year: [ { required: true, message: "涓嶈兘涓虹┖", trigger: "blur" } ], + dateTime: [ + { required: true, message: "涓嶈兘涓虹┖", trigger: "blur" } + ], + startCode: [ + { required: true, message: "涓嶈兘涓虹┖", trigger: "blur" } + ], }, change: { day: '', month: '', year: '', + }, + markNo: '', + pickerOptions: { + shortcuts: [{ + text: '鏈�杩戜竴鍛�', + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); + picker.$emit('pick', [start, end]); + } + }, { + text: '鏈�杩戜竴涓湀', + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); + picker.$emit('pick', [start, end]); + } + }, { + text: '鏈�杩戜笁涓湀', + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); + picker.$emit('pick', [start, end]); + } + }] }, }; }, @@ -479,10 +535,55 @@ this.initWorkshop(); }, methods: { + //鏃ユ湡鎴栧紑濮嬬紪鍙疯緭鍏ユ椂 + handleCodeChange(data){ + let dateTime = this.form.dateTime; + let planQty = this.form.planQty; + let startCode = this.form.startCode + if(dateTime !== null && dateTime !== undefined + && startCode !== null && startCode !== undefined) { + let dateTimes = dateTime.split("-"); + let year = dateTimes[0]; + let month = dateTimes[1]; + let day = dateTimes[2]; + let dictYear = this.dict.type.year; + let dictMonth = this.dict.type.month; + let startCode = this.form.startCode + let dateTimeRule = ""; + + //骞� + for (let i = 0; i < dictYear.length; i++) { + if (year === dictYear[i].label) { + dateTimeRule = dictYear[i].value + // this.form.startEndCode = startEndCode; + } + } + //鏈� + for (let i = 0; i < dictMonth.length; i++) { + if (month === dictMonth[i].label) { + dateTimeRule = dateTimeRule + dictMonth[i].value; + } + } + //鏃� + dateTimeRule = dateTimeRule + day; + dateTimeRule = dateTimeRule + this.markNo; + this.form.dateTimeRule = dateTimeRule;//姝ゅ璧嬪�间笉鍔犳満鍨� + dateTimeRule = dateTimeRule + this.form.typeZ;//姝ゅ鍔犳満鍨嬶紝椤哄簭涓嶈兘棰犲�� + + //璧嬪�艰捣濮嬬紪鐮� + this.form.startEndCode = dateTimeRule + String(parseInt(startCode)).padStart(3, '0') + " " + dateTimeRule + String(parseInt(startCode) + parseInt(planQty)-1).padStart(3, '0') ; + } + }, + + getProductionNotice(){ + getProductionNotice(this.queryParams).then(response => { + + this.$modal.msgSuccess(response.msg); + this.queryParams = {} + this.getList(); + }); + }, //鏁扮粍鐢熸垚 - - - changeDay(day){ this.change.day = day; let adds =this.form.typeZ+this.change.year+this.change.month+this.change.day+this.form.actualQty; @@ -498,8 +599,6 @@ let adds =this.form.typeZ+this.change.year+this.change.month+this.change.day+this.form.actualQty; this.form.adds = adds }, - - moveUp(row, val){ console.log(val) const ids = row.id || this.ids @@ -646,7 +745,7 @@ this.initWorkshop(); this.reset(); this.open = true; - this.titleName = "娣诲姞鐢熶骇宸ュ崟"; + this.titleName = "娣诲姞鐢熶骇璁㈠崟"; }, /** 鍚屾鎸夐挳鎿嶄綔 */ CreatehandleUpdate(Row) { @@ -655,14 +754,17 @@ const id = Row.id || this.ids getProductionOrde(id).then(response => { console.log(response.data) + console.log(response.data.productCode) + this.materialQueryParams.materialCode = response.data.productCode; + listMaterial(this.materialQueryParams).then(response => { + this.markNo = response.rows[0].mark + this.form.typeL = response.rows[0].typeL; + }); this.form = response.data; this.Createopen = true; - this.titleName = "鐢熸垚璁㈠崟"; + this.titleName = "鐢熸垚绠变綋鏉$爜"; // return Array.from({ length: parseInt(this.actualQty) }, (_, index) => index + 1); }); - this.$modal.msgSuccess(Row.actualQty); - - }, /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdate(row) { @@ -673,7 +775,7 @@ console.log(response.data) this.form = response.data; this.open = true; - this.titleName = "淇敼鐢熶骇宸ュ崟"; + this.titleName = "淇敼鐢熶骇璁㈠崟"; }); }, /** 鎻愪氦鎸夐挳 */ @@ -696,10 +798,53 @@ } }); }, + + /** 鐢熸垚绠变綋鏉$爜鎻愪氦鎸夐挳 */ + submitFormForBoxCode() { + let startCode = parseInt(this.form.startCode); + let queryParams = { + model: this.form.typeZ, + modelDate: this.form.dateTimeRule, + } + if(startCode>999){ + this.$message.error('璧峰缂栧彿瓒呭嚭鏈�澶ц寖鍥达紝璇疯緭鍏�1-999鐨勬暟瀛楋紒'); + return; + }else if(startCode<1){ + this.$message.error('璧峰缂栧彿瓒呭嚭鏈�灏忚寖鍥达紝璇疯緭鍏�1-999鐨勬暟瀛楋紒'); + return; + } + listModelNumber(queryParams).then(response => { + if(response.rows.length === 0){ + this.saveBoxCode() + }else { + let maxNumValue = response.rows[0].maxnumValue; + if(startCode<=maxNumValue){ + this.$message.error('绠变綋鏉$爜閲嶅锛岃閲嶆柊杈撳叆璧峰缂栧彿锛�'); + }else { + this.saveBoxCode() + } + } + }); + }, + + saveBoxCode(){ + this.$refs["form"].validate(valid => { + if (valid) { + if (this.form.id != null) { + addOrderSchedulingForBoxCode(this.form).then(response => { + this.$modal.msgSuccess("淇濆瓨鎴愬姛"); + this.Createopen = false; + this.getList(); + }); + } + } + }); + }, + /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDelete(row) { const ids = row.id || this.ids; - this.$modal.confirm('鏄惁纭鍒犻櫎鐢熶骇宸ュ崟缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() { + this.$modal.confirm('鏄惁纭鍒犻櫎鐢熶骇璁㈠崟缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() { return delProductionOrde(ids); }).then(() => { this.getList(); @@ -712,33 +857,12 @@ ...this.queryParams }, `productionOrde_${new Date().getTime()}.xlsx`) }, - /** 鎻愪氦鎸夐挳 */ - CreateSubmitForm() { - this.$refs["form"].validate(valid => { - if (valid) { - if (this.form.orderNumber != null) { - updateOrderScheduling(this.form).then(response => { - this.$modal.msgSuccess("淇敼鎴愬姛"); - this.open = false; - this.getList(); - }); - } else { - addOrderScheduling(this.form).then(response => { - this.$modal.msgSuccess("鏂板鎴愬姛"); - this.open = false; - this.getList(); - }); - } - } - }); - }, } }; </script> <style lang="scss" scoped> -//::v-deep .el-dialog__header{ -// /*background-color: #f8f8f8;*/ -// background-color: #f8f8f9; -//} +.hidden-form-item { + display: none; +} </style> -- Gitblit v1.9.3