You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1825 lines
58 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. <template>
  2. <div class="customer-css">
  3. <!-- 查询时间和产品 -->
  4. <el-form :inline="true" label-position="top" label-width="100px" style="margin-top: 0px;">
  5. <el-row style="width: 780px;">
  6. <el-col :span="4">
  7. <el-form-item :label="'生产订单号:'">
  8. <el-input v-model="pageData.orderNo" class="customer-input-color-red" readonly="readonly" style="width: 100px"></el-input>
  9. </el-form-item>
  10. </el-col>
  11. <el-col :span="2" style="margin-left: -15px;">
  12. <el-form-item :label="'工序号:'">
  13. <el-input v-model="pageData.itemNo" class="customer-input-color-red" readonly="readonly" style="width: 80px"></el-input>
  14. </el-form-item>
  15. </el-col>
  16. <el-col :span="4" style="margin-left: 20px;">
  17. <el-form-item :label="'工序名称:'">
  18. <el-input v-model="pageData.itemDesc" class="customer-input-color-red" readonly="readonly" style="width: 100px"></el-input>
  19. </el-form-item>
  20. </el-col>
  21. <el-col :span="4" style="margin-left: -15px;">
  22. <el-form-item :label="'加工中心编码:'">
  23. <el-input v-model="pageData.workCenterNo" class="customer-input-color-red" readonly="readonly" style="width: 90px"></el-input>
  24. </el-form-item>
  25. </el-col>
  26. <el-col :span=4 style="margin-left: -25px;">
  27. <el-form-item :label="'加工中心名称:'">
  28. <el-input v-model="pageData.workCenterDesc" class="customer-input-color-red" readonly="readonly" style="width: 120px"></el-input>
  29. </el-form-item>
  30. </el-col>
  31. </el-row>
  32. <el-row style="width: 780px;">
  33. <el-col :span="4">
  34. <el-form-item :label="'产品编码:'">
  35. <el-input v-model="pageData.partNo" class="customer-input-color-red" readonly="readonly" style="width: 100px"></el-input>
  36. </el-form-item>
  37. </el-col>
  38. <el-col :span="6" style="margin-left: -15px;">
  39. <el-form-item :label="'产品名称:'">
  40. <el-input v-model="pageData.partDesc" class="customer-input-color-red" readonly="readonly" style="width: 185px"></el-input>
  41. </el-form-item>
  42. </el-col>
  43. <el-col :span="3" style="margin-left: 5px;">
  44. <el-form-item :label="'需求数量:'">
  45. <el-input v-model="pageData.qtyRequired" class="customer-input-color-red" readonly="readonly" style="width: 70px"></el-input>
  46. </el-form-item>
  47. </el-col>
  48. <el-col :span="3" style="margin-left: -20px;">
  49. <el-form-item :label="'已排产数量:'">
  50. <el-input v-model="pageData.qtyScheduled" class="customer-input-color-red" readonly="readonly" style="width: 70px"></el-input>
  51. </el-form-item>
  52. </el-col>
  53. <el-col :span="3" style="margin-left: -20px;">
  54. <el-form-item :label="'待排产数量:'">
  55. <el-input v-model="pageData.qtyToSchedule" class="customer-input-color-red" readonly="readonly" style="width: 70px"></el-input>
  56. </el-form-item>
  57. </el-col>
  58. </el-row>
  59. </el-form>
  60. <!-- 排产信息 -->
  61. <fieldset class="customer-field" style="margin-top: -85px; width: 140px; height: 95px; padding: 0.125em;">
  62. <legend>排产日期</legend>
  63. <el-form style="margin-left: 10px; height: 60px;">
  64. <el-row style="margin-top: 10px; width: 120px; height: 20px;">
  65. <el-col :span="18">
  66. <el-form-item>
  67. <el-date-picker class="el-time-width"
  68. style=""
  69. v-model="pageData.scheduleDate"
  70. value-format="yyyy-MM-dd">
  71. </el-date-picker>
  72. </el-form-item>
  73. </el-col>
  74. </el-row>
  75. <el-row style="margin-top: 20px; padding-bottom: 20px; width: 120px; height: 60px;">
  76. <el-col :span="24" style="margin-left: 5px;">
  77. <el-form-item :label="''">
  78. <el-checkbox v-model="pageData.specifiedTime" true-label="Y" false-label="N"
  79. style="margin-top: 0px; margin-right: -20px;"></el-checkbox>
  80. <el-time-picker
  81. format="HH:mm"
  82. arrow-control
  83. style="margin-top: -50px; width: 110px; height: 60px;"
  84. v-model="pageData.scheduleTime"
  85. value-format="HH:mm">
  86. </el-time-picker>
  87. </el-form-item>
  88. </el-col>
  89. </el-row>
  90. </el-form>
  91. </fieldset>
  92. <!-- 记录示意图 -->
  93. <fieldset style="margin-left: 730px; margin-top: -95px; width: 180px;">
  94. <legend>记录示意图</legend>
  95. <el-form :inline="true" label-position="top" label-width="100px" class="customer-card">
  96. <el-form-item :label="'已关闭,已达数量'">
  97. <el-card class="customer-el-card customer-el-card-pink"></el-card>
  98. </el-form-item>
  99. <el-form-item :label="'已关闭,未达数量'">
  100. <el-card class="customer-el-card customer-el-card-orange"></el-card>
  101. </el-form-item>
  102. <el-form-item :label="'未关闭,未达数量'">
  103. <el-card class="customer-el-card customer-el-card-blue"></el-card>
  104. </el-form-item>
  105. </el-form>
  106. </fieldset>
  107. <!-- 下面的页面 -->
  108. <fieldset class="customer-fieldset" style="margin-bottom: 0px; width: 100%;">
  109. <el-tabs v-model="activeTable" style="margin-top: 0px;"
  110. type="border-card" @tab-click="tabClick" class="customer-tab">
  111. <el-tab-pane label="排产" name="scheduling">
  112. <!-- 左边的边框 -->
  113. <fieldset class="customer-left-fieldset" style="width: 46%; margin-left: 0px; margin-top: 2px;">
  114. <legend>可用操作员</legend>
  115. <el-row>
  116. <el-col :span="8">
  117. <el-button class="customer-bun-mid" type="primary" @click="scheduleOperatorsBun"
  118. style="margin-left: 10px; margin-bottom: 5px;">
  119. 排产
  120. </el-button>
  121. </el-col>
  122. <el-col :span="8">
  123. <el-button class="customer-bun-mid" type="primary" @click="getOperatorList"
  124. style="margin-left: 10px; margin-bottom: 5px;">
  125. 刷新数据
  126. </el-button>
  127. </el-col>
  128. <el-col :span="8">
  129. <el-button class="customer-bun-max" type="primary" @click=""
  130. style="margin-left: 10px; margin-bottom: 5px;">
  131. 虚拟机台排产
  132. </el-button>
  133. </el-col>
  134. </el-row>
  135. <el-container>
  136. <el-main class="customer-left-main">
  137. <el-table class="customer-left-table"
  138. :height="tableHeight" :width="tableLeftWidth"
  139. :data="operatorList"
  140. border
  141. :cell-style="customerCellStyle" :cell-class-name="customerCellClassName"
  142. @row-click="setCurrentOperatorRow"
  143. @current-change="changeCurrentOperatorRow"
  144. highlight-current-row
  145. ref="operatorTable"
  146. v-loading="dataListLoading"
  147. style="margin-left: -15px; margin-top: -5px;">
  148. <el-table-column
  149. v-for="(item,index) in columnOperatorArray" :key="index"
  150. :sortable="item.columnSortable"
  151. :prop="item.columnProp"
  152. :header-align="item.headerAlign"
  153. :show-overflow-tooltip="item.showOverflowTooltip"
  154. :align="item.align"
  155. :fixed="item.fixed"
  156. :width="item.columnWidth"
  157. :label="item.columnLabel">
  158. <template slot-scope="scope">
  159. <!--<el-input type="number" class="table-input" align="right" @blur="checkValidQty(scope.row)"-->
  160. <el-input type="number" class="table-input" align="right" v-if="item.columnHidden"
  161. v-model="scope.row[item.columnProp]"></el-input>
  162. <span v-else>{{scope.row[item.columnProp]}}</span>
  163. <span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
  164. style="width: 100px; height: 80px"/></span>
  165. </template>
  166. </el-table-column>
  167. </el-table>
  168. </el-main>
  169. </el-container>
  170. </fieldset>
  171. <!-- 右边的边框 -->
  172. <fieldset class="customer-right-field">
  173. <legend>已排产记录</legend>
  174. <el-row>
  175. <el-col :span="4">
  176. <el-button class="customer-bun-mid" type="primary" @click="moveUpScheduleBun"
  177. style="margin-left: 10px; margin-bottom: 5px;">
  178. 上移
  179. </el-button>
  180. </el-col>
  181. <el-col :span="4">
  182. <el-button class="customer-bun-mid" type="primary" @click="moveDownScheduleBun"
  183. style="margin-left: 10px; margin-bottom: 5px;">
  184. 下移
  185. </el-button>
  186. </el-col>
  187. <el-col :span="4">
  188. <el-button class="customer-bun-mid" type="primary" @click="warnReScheduleConfirm"
  189. style="margin-left: 10px; margin-bottom: 5px;">
  190. 重新排产
  191. </el-button>
  192. </el-col>
  193. </el-row>
  194. <el-container>
  195. <el-main class="customer-right-main">
  196. <el-table class="customer-left-table"
  197. :height="tableHeight" :width="tableRightWidth"
  198. :data="orderScheduleList"
  199. border
  200. ref="scheduleTable"
  201. highlight-current-row
  202. :row-class-name="scheduleRowClassName"
  203. @row-click="setCurrentScheduleRow"
  204. @current-change="changeScheduleRow"
  205. @row-dblclick="warnCancelScheduleConfirm"
  206. v-loading="dataListLoading"
  207. style="margin-left: -15px; margin-top: -5px;">
  208. <el-table-column
  209. v-for="(item,index) in columnOrderScheduleArray" :key="index"
  210. :sortable="item.columnSortable"
  211. :prop="item.columnProp"
  212. :header-align="item.headerAlign"
  213. :show-overflow-tooltip="item.showOverflowTooltip"
  214. :align="item.align"
  215. :fixed="item.fixed"
  216. :width="item.columnWidth"
  217. :label="item.columnLabel">
  218. <template slot-scope="scope">
  219. <span v-if="!item.columnHidden"> {{ scope.row[item.columnProp] }}</span>
  220. <span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
  221. style="width: 100px; height: 80px"/></span>
  222. </template>
  223. </el-table-column>
  224. </el-table>
  225. </el-main>
  226. </el-container>
  227. </fieldset>
  228. </el-tab-pane>
  229. <el-tab-pane label="待排产清单" name="shop_order">
  230. <fieldset style="margin-left: 0px; margin-top: 2px;">
  231. <el-form :inline="true" label-position="top" style="margin-top: 5px;">
  232. <el-form-item :label="'录入日期'" style="margin-top: 0px;">
  233. <el-date-picker class="el-time-width"
  234. style=""
  235. v-model="searchData.enterTime1"
  236. value-format="yyyy-MM-dd">
  237. </el-date-picker>
  238. </el-form-item>
  239. <el-form-item :label="' '" style="margin-top: 0px;">
  240. <el-date-picker class="el-time-width"
  241. style=""
  242. v-model="searchData.enterTime2"
  243. value-format="yyyy-MM-dd">
  244. </el-date-picker>
  245. </el-form-item>
  246. <el-form-item :label="'要求完工日期'" style="margin-top: 0px;">
  247. <el-date-picker class="el-time-width"
  248. style=""
  249. v-model="searchData.needTime1"
  250. value-format="yyyy-MM-dd">
  251. </el-date-picker>
  252. </el-form-item>
  253. <el-form-item :label="' '" style="margin-top: 0px;">
  254. <el-date-picker class="el-time-width"
  255. style=""
  256. v-model="searchData.needTime2"
  257. value-format="yyyy-MM-dd">
  258. </el-date-picker>
  259. </el-form-item>
  260. <el-form-item :label="'产品编码'" style="margin-top: 0px;">
  261. <el-input v-model="searchData.partNo" style="width: 80px"></el-input>
  262. </el-form-item>
  263. <el-form-item :label="'生产订单'" style="margin-top: 0px;">
  264. <el-input v-model="searchData.orderNo" style="width: 80px"></el-input>
  265. </el-form-item>
  266. <el-form-item :label="''" style="margin-left: 5px;">
  267. <el-row>
  268. <el-col :span="24">
  269. <el-checkbox v-model="searchData.fulledFlag" class="customer-checkbox" true-label="Y" false-label="N" style=""
  270. label="查看已排满的工序"></el-checkbox>
  271. </el-col>
  272. <el-col :span="24" style="margin-top: 0px; ">
  273. <el-checkbox v-model="searchData.preScheduledFlag" class="customer-checkbox" true-label="Y" false-label="N" style="margin-top: 5px;"
  274. label="仅查看前道工序已排产的工序"></el-checkbox>
  275. </el-col>
  276. </el-row>
  277. </el-form-item>
  278. <el-form-item :label="''" style="margin-left: -100px; margin-top: 5px;">
  279. <el-button class="customer-bun-max" @click="getShopOrderList" type="primary">刷新排产清单
  280. </el-button>
  281. </el-form-item>
  282. <el-container>
  283. <el-main class="customer-left-main">
  284. <el-table class="customer-left-table"
  285. :height="tableHeight" :width="tableLeftWidth"
  286. :data="shopOrderList"
  287. border
  288. highlight-current-row
  289. v-loading="dataListLoading"
  290. @row-dblclick="startScheduleBun"
  291. style="margin-left: -15px; margin-top: -5px;">
  292. <el-table-column
  293. v-for="(item,index) in columnOrderArray" :key="index"
  294. :sortable="item.columnSortable"
  295. :prop="item.columnProp"
  296. :header-align="item.headerAlign"
  297. :show-overflow-tooltip="item.showOverflowTooltip"
  298. :align="item.align"
  299. :fixed="item.fixed"
  300. :width="item.columnWidth"
  301. :label="item.columnLabel">
  302. <template slot-scope="scope">
  303. <span v-if="!item.columnHidden"> {{ scope.row[item.columnProp] }}</span>
  304. <span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
  305. style="width: 100px; height: 80px"/></span>
  306. </template>
  307. </el-table-column>
  308. </el-table>
  309. </el-main>
  310. </el-container>
  311. </el-form>
  312. </fieldset>
  313. </el-tab-pane>
  314. </el-tabs>
  315. </fieldset>
  316. </div>
  317. </template>
  318. <script>
  319. import {
  320. getShopOrderListWithFqc,
  321. getOperatorListWithFqc,
  322. getOrderScheduleListWithFqc,
  323. scheduleFqcOperators,
  324. cancelSoSchedule,
  325. reScheduleWorkOrders,
  326. moveUpSchedule,
  327. moveDownSchedule
  328. } from '@/api/schedule/order_schedule_fqc.js'
  329. export default {
  330. data() {
  331. return {
  332. tableHeight: 0,
  333. tableLeftWidth: 0,
  334. tableRightWidth: 0,
  335. operatorIndex: 0,
  336. scheduleIndex: -1,
  337. activeTable: 'shop_order',
  338. modelFlag: false,
  339. modelInputFlag: true,
  340. currentRoutingRow: {},
  341. currentOperatorRow: {},
  342. currentScheduleRow: {},
  343. pageData: {
  344. site: this.$store.state.user.site,
  345. username: this.$store.state.user.name,
  346. orderNo: '',
  347. itemNo: '',
  348. itemDesc: '',
  349. workCenterNo: '',
  350. workCenterDesc: '',
  351. resourceId: '',
  352. qtyRequired: '',
  353. qtyScheduled: '',
  354. qtyToSchedule: '',
  355. scheduleDate: this.dayjs(new Date()).format('YYYY-MM-DD'),
  356. scheduleTime: '08:30',
  357. specifiedTime: 'Y',
  358. scheduleSeqNo: -1,
  359. planStartTime: ''
  360. },
  361. searchData: {
  362. site: this.$store.state.user.site,
  363. username: this.$store.state.user.name,
  364. orderNo: '',
  365. itemNo: '',
  366. workCenterNo: '',
  367. resourceId: '',
  368. enterTime1: '',
  369. enterTime2: '',
  370. needTime1: '',
  371. needTime2: '',
  372. waitTimes: 0,
  373. fulledFlag: 'N',
  374. preScheduledFlag: 'Y'
  375. },
  376. operatorList: [],
  377. shopOrderList: [],
  378. orderScheduleList: [],
  379. dataListLoading: false,
  380. columnOrderArray: [
  381. {
  382. userId: this.$store.state.user.name,
  383. functionId: 5304,
  384. serialNumber: '5304OrderOrderNo',
  385. tableId: "5304Order",
  386. tableName: "工单表",
  387. columnProp: "orderNo",
  388. headerAlign: "center",
  389. align: "center",
  390. columnLabel: "订单号",
  391. columnWidth: 80,
  392. columnHidden: false,
  393. columnImage: false,
  394. columnSortable: false,
  395. sortLv: 0,
  396. status: true,
  397. fixed: false
  398. },
  399. {
  400. userId: this.$store.state.user.name,
  401. functionId: 5304,
  402. serialNumber: '5304OrderItemNo',
  403. tableId: "5304Order",
  404. tableName: "工单表",
  405. columnProp: "itemNo",
  406. headerAlign: "center",
  407. align: "center",
  408. columnLabel: "工序号",
  409. columnWidth: 60,
  410. columnHidden: false,
  411. columnImage: false,
  412. columnSortable: false,
  413. sortLv: 0,
  414. status: true,
  415. fixed: false
  416. },
  417. {
  418. userId: this.$store.state.user.name,
  419. functionId: 5304,
  420. serialNumber: '5304OrderItemDesc',
  421. tableId: "5304Order",
  422. tableName: "工单表",
  423. columnProp: "itemDesc",
  424. headerAlign: "center",
  425. align: "center",
  426. columnLabel: "工序名称",
  427. columnWidth: 80,
  428. columnHidden: false,
  429. columnImage: false,
  430. columnSortable: false,
  431. sortLv: 0,
  432. status: true,
  433. fixed: false
  434. },
  435. {
  436. userId: this.$store.state.user.name,
  437. functionId: 5304,
  438. serialNumber: '5304OrderNeedDate',
  439. tableId: "5304Order",
  440. tableName: "工单表",
  441. columnProp: "needDate",
  442. headerAlign: "center",
  443. align: "center",
  444. columnLabel: "要求完工日期",
  445. columnWidth: 85,
  446. columnHidden: false,
  447. columnImage: false,
  448. columnSortable: false,
  449. sortLv: 0,
  450. status: true,
  451. fixed: false
  452. },
  453. {
  454. userId: this.$store.state.user.name,
  455. functionId: 5304,
  456. serialNumber: '5304OrderPartNo',
  457. tableId: "5304Order",
  458. tableName: "工单表",
  459. columnProp: "partNo",
  460. headerAlign: "center",
  461. align: "center",
  462. columnLabel: "产成品编码",
  463. columnWidth: 80,
  464. columnHidden: false,
  465. columnImage: false,
  466. columnSortable: false,
  467. sortLv: 0,
  468. status: true,
  469. fixed: false
  470. },
  471. {
  472. userId: this.$store.state.user.name,
  473. functionId: 5304,
  474. serialNumber: '5304OrderPartDesc',
  475. tableId: "5304Order",
  476. tableName: "工单表",
  477. columnProp: "partDesc",
  478. headerAlign: "center",
  479. align: "center",
  480. columnLabel: "产成品名称/规格",
  481. columnWidth: 185,
  482. columnHidden: false,
  483. columnImage: false,
  484. columnSortable: false,
  485. sortLv: 0,
  486. status: true,
  487. fixed: false
  488. },
  489. {
  490. userId: this.$store.state.user.name,
  491. functionId: 5304,
  492. serialNumber: '5304OrderSpec',
  493. tableId: "5304Order",
  494. tableName: "工单表",
  495. columnProp: "spec",
  496. headerAlign: "center",
  497. align: "center",
  498. columnLabel: "规格",
  499. columnWidth: 60,
  500. columnHidden: false,
  501. columnImage: false,
  502. columnSortable: false,
  503. sortLv: 0,
  504. status: true,
  505. fixed: false
  506. },
  507. {
  508. userId: this.$store.state.user.name,
  509. functionId: 5304,
  510. serialNumber: '5304OrderSite',
  511. tableId: "5304Order",
  512. tableName: "工单表",
  513. columnProp: "site",
  514. headerAlign: "center",
  515. align: "center",
  516. columnLabel: "规格",
  517. columnWidth: 60,
  518. columnHidden: false,
  519. columnImage: false,
  520. columnSortable: false,
  521. sortLv: 0,
  522. status: true,
  523. fixed: false
  524. },
  525. {
  526. userId: this.$store.state.user.name,
  527. functionId: 5304,
  528. serialNumber: '5304OrderWorkCenterNo',
  529. tableId: "5304Order",
  530. tableName: "工单表",
  531. columnProp: "workCenterNo",
  532. headerAlign: "center",
  533. align: "center",
  534. columnLabel: "加工中心",
  535. columnWidth: 80,
  536. columnHidden: false,
  537. columnImage: false,
  538. columnSortable: false,
  539. sortLv: 0,
  540. status: true,
  541. fixed: false
  542. },
  543. {
  544. userId: this.$store.state.user.name,
  545. functionId: 5304,
  546. serialNumber: '5304OrderNextItemNo',
  547. tableId: "5304Order",
  548. tableName: "工单表",
  549. columnProp: "nextItemNo",
  550. headerAlign: "center",
  551. align: "center",
  552. columnLabel: "下道工序",
  553. columnWidth: 80,
  554. columnHidden: false,
  555. columnImage: false,
  556. columnSortable: false,
  557. sortLv: 0,
  558. status: true,
  559. fixed: false
  560. },
  561. {
  562. userId: this.$store.state.user.name,
  563. functionId: 5304,
  564. serialNumber: '5304OrderNextItemDesc',
  565. tableId: "5304Order",
  566. tableName: "工单表",
  567. columnProp: "nextItemDesc",
  568. headerAlign: "center",
  569. align: "center",
  570. columnLabel: "下道工序名称",
  571. columnWidth: 80,
  572. columnHidden: false,
  573. columnImage: false,
  574. columnSortable: false,
  575. sortLv: 0,
  576. status: true,
  577. fixed: false
  578. },
  579. {
  580. userId: this.$store.state.user.name,
  581. functionId: 5304,
  582. serialNumber: '5304OrderNextScheduledFlag',
  583. tableId: "5304Order",
  584. tableName: "工单表",
  585. columnProp: "nextScheduledFlag",
  586. headerAlign: "center",
  587. align: "center",
  588. columnLabel: "下道工序已排产",
  589. columnWidth: 80,
  590. columnHidden: false,
  591. columnImage: false,
  592. columnSortable: false,
  593. sortLv: 0,
  594. status: true,
  595. fixed: false
  596. },
  597. {
  598. userId: this.$store.state.user.name,
  599. functionId: 5304,
  600. serialNumber: '5304OrderPreItemNo',
  601. tableId: "5304Order",
  602. tableName: "工单表",
  603. columnProp: "preItemNo",
  604. headerAlign: "center",
  605. align: "center",
  606. columnLabel: "上道工序",
  607. columnWidth: 80,
  608. columnHidden: false,
  609. columnImage: false,
  610. columnSortable: false,
  611. sortLv: 0,
  612. status: true,
  613. fixed: false
  614. },
  615. {
  616. userId: this.$store.state.user.name,
  617. functionId: 5304,
  618. serialNumber: '5304OrderPreItemDesc',
  619. tableId: "5304Order",
  620. tableName: "工单表",
  621. columnProp: "preItemDesc",
  622. headerAlign: "center",
  623. align: "center",
  624. columnLabel: "上道工序名称",
  625. columnWidth: 80,
  626. columnHidden: false,
  627. columnImage: false,
  628. columnSortable: false,
  629. sortLv: 0,
  630. status: true,
  631. fixed: false
  632. },
  633. {
  634. userId: this.$store.state.user.name,
  635. functionId: 5304,
  636. serialNumber: '5304OrderPreScheduledFlag',
  637. tableId: "5304Order",
  638. tableName: "工单表",
  639. columnProp: "preScheduledFlag",
  640. headerAlign: "center",
  641. align: "center",
  642. columnLabel: "上道工序已排产",
  643. columnWidth: 80,
  644. columnHidden: false,
  645. columnImage: false,
  646. columnSortable: false,
  647. sortLv: 0,
  648. status: true,
  649. fixed: false
  650. },
  651. {
  652. userId: this.$store.state.user.name,
  653. functionId: 5304,
  654. serialNumber: '5304OrderQtyReported',
  655. tableId: "5304Order",
  656. tableName: "工单表",
  657. columnProp: "qtyReported",
  658. headerAlign: "center",
  659. align: "center",
  660. columnLabel: "已报工数量",
  661. columnWidth: 80,
  662. columnHidden: false,
  663. columnImage: false,
  664. columnSortable: false,
  665. sortLv: 0,
  666. status: true,
  667. fixed: false
  668. },
  669. {
  670. userId: this.$store.state.user.name,
  671. functionId: 5304,
  672. serialNumber: '5304OrderScheduledFlag',
  673. tableId: "5304Order",
  674. tableName: "工单表",
  675. columnProp: "scheduledFlag",
  676. headerAlign: "center",
  677. align: "center",
  678. columnLabel: "是否排产",
  679. columnWidth: 80,
  680. columnHidden: false,
  681. columnImage: false,
  682. columnSortable: false,
  683. sortLv: 0,
  684. status: true,
  685. fixed: false
  686. },
  687. {
  688. userId: this.$store.state.user.name,
  689. functionId: 5304,
  690. serialNumber: '5304OrderLotSize',
  691. tableId: "5304Order",
  692. tableName: "工单表",
  693. columnProp: "lotSize",
  694. headerAlign: "center",
  695. align: "center",
  696. columnLabel: "订单量",
  697. columnWidth: 80,
  698. columnHidden: false,
  699. columnImage: false,
  700. columnSortable: false,
  701. sortLv: 0,
  702. status: true,
  703. fixed: false
  704. },
  705. {
  706. userId: this.$store.state.user.name,
  707. functionId: 5304,
  708. serialNumber: '5304OrderAvailResource',
  709. tableId: "5304Order",
  710. tableName: "工单表",
  711. columnProp: "availResource",
  712. headerAlign: "center",
  713. align: "center",
  714. columnLabel: "可用机台",
  715. columnWidth: 80,
  716. columnHidden: false,
  717. columnImage: false,
  718. columnSortable: false,
  719. sortLv: 0,
  720. status: true,
  721. fixed: false
  722. },
  723. {
  724. userId: this.$store.state.user.name,
  725. functionId: 5304,
  726. serialNumber: '5304OrderEnterDate',
  727. tableId: "5304Order",
  728. tableName: "工单表",
  729. columnProp: "enterDate",
  730. headerAlign: "center",
  731. align: "center",
  732. columnLabel: "录入日期",
  733. columnWidth: 80,
  734. columnHidden: false,
  735. columnImage: false,
  736. columnSortable: false,
  737. sortLv: 0,
  738. status: true,
  739. fixed: false
  740. },
  741. {
  742. userId: this.$store.state.user.name,
  743. functionId: 5304,
  744. serialNumber: '5304OrderScheduleToPlanTime',
  745. tableId: "5304Order",
  746. tableName: "工单表",
  747. columnProp: "scheduleToPlanTime",
  748. headerAlign: "center",
  749. align: "center",
  750. columnLabel: "计划时间",
  751. columnWidth: 80,
  752. columnHidden: false,
  753. columnImage: false,
  754. columnSortable: false,
  755. sortLv: 0,
  756. status: true,
  757. fixed: false
  758. },
  759. {
  760. userId: this.$store.state.user.name,
  761. functionId: 5304,
  762. serialNumber: '5304OrderCustomerName',
  763. tableId: "5304Order",
  764. tableName: "工单表",
  765. columnProp: "customerName",
  766. headerAlign: "center",
  767. align: "center",
  768. columnLabel: "客户名称",
  769. columnWidth: 80,
  770. columnHidden: false,
  771. columnImage: false,
  772. columnSortable: false,
  773. sortLv: 0,
  774. status: true,
  775. fixed: false
  776. },
  777. {
  778. userId: this.$store.state.user.name,
  779. functionId: 5304,
  780. serialNumber: '5304OrderMachRunFactor',
  781. tableId: "5304Order",
  782. tableName: "工单表",
  783. columnProp: "machRunFactor",
  784. headerAlign: "center",
  785. align: "center",
  786. columnLabel: "单位产出",
  787. columnWidth: 80,
  788. columnHidden: false,
  789. columnImage: false,
  790. columnSortable: false,
  791. sortLv: 0,
  792. status: true,
  793. fixed: false
  794. },
  795. {
  796. userId: this.$store.state.user.name,
  797. functionId: 5304,
  798. serialNumber: '5304OrderMachSetupTime',
  799. tableId: "5304Order",
  800. tableName: "工单表",
  801. columnProp: "machSetupTime",
  802. headerAlign: "center",
  803. align: "center",
  804. columnLabel: "调机时间",
  805. columnWidth: 80,
  806. columnHidden: false,
  807. columnImage: false,
  808. columnSortable: false,
  809. sortLv: 0,
  810. status: true,
  811. fixed: false
  812. },
  813. {
  814. userId: this.$store.state.user.name,
  815. functionId: 5304,
  816. serialNumber: '5304OrderFactorUnit',
  817. tableId: "5304Order",
  818. tableName: "工单表",
  819. columnProp: "factorUnit",
  820. headerAlign: "center",
  821. align: "center",
  822. columnLabel: "产出单位",
  823. columnWidth: 80,
  824. columnHidden: false,
  825. columnImage: false,
  826. columnSortable: false,
  827. sortLv: 0,
  828. status: true,
  829. fixed: false
  830. },
  831. {
  832. userId: this.$store.state.user.name,
  833. functionId: 5304,
  834. serialNumber: '5304OrderQtyScheduled',
  835. tableId: "5304Order",
  836. tableName: "工单表",
  837. columnProp: "qtyScheduled",
  838. headerAlign: "center",
  839. align: "center",
  840. columnLabel: "已排产数量",
  841. columnWidth: 80,
  842. columnHidden: false,
  843. columnImage: false,
  844. columnSortable: false,
  845. sortLv: 0,
  846. status: true,
  847. fixed: false
  848. },
  849. {
  850. userId: this.$store.state.user.name,
  851. functionId: 5304,
  852. serialNumber: '5304OrderQtyToSchedule',
  853. tableId: "5304Order",
  854. tableName: "工单表",
  855. columnProp: "qtyToSchedule",
  856. headerAlign: "center",
  857. align: "center",
  858. columnLabel: "待排产数量",
  859. columnWidth: 80,
  860. columnHidden: false,
  861. columnImage: false,
  862. columnSortable: false,
  863. sortLv: 0,
  864. status: true,
  865. fixed: false
  866. },
  867. {
  868. userId: this.$store.state.user.name,
  869. functionId: 5304,
  870. serialNumber: '5304OrderQtyScheduledPreOps',
  871. tableId: "5304Order",
  872. tableName: "工单表",
  873. columnProp: "qtyScheduledPreOps",
  874. headerAlign: "center",
  875. align: "center",
  876. columnLabel: "前道工序已排产数量",
  877. columnWidth: 80,
  878. columnHidden: false,
  879. columnImage: false,
  880. columnSortable: false,
  881. sortLv: 0,
  882. status: true,
  883. fixed: false
  884. },
  885. {
  886. userId: this.$store.state.user.name,
  887. functionId: 5304,
  888. serialNumber: '5304OrderCustPartNo',
  889. tableId: "5304Order",
  890. tableName: "工单表",
  891. columnProp: "custPartNo",
  892. headerAlign: "center",
  893. align: "center",
  894. columnLabel: "客户产品料号",
  895. columnWidth: 80,
  896. columnHidden: false,
  897. columnImage: false,
  898. columnSortable: false,
  899. sortLv: 0,
  900. status: true,
  901. fixed: false
  902. },
  903. {
  904. userId: this.$store.state.user.name,
  905. functionId: 5304,
  906. serialNumber: '5304OrderTimeRequired',
  907. tableId: "5304Order",
  908. tableName: "工单表",
  909. columnProp: "timeRequired",
  910. headerAlign: "center",
  911. align: "center",
  912. columnLabel: "待排产时间",
  913. columnWidth: 80,
  914. columnHidden: false,
  915. columnImage: false,
  916. columnSortable: false,
  917. sortLv: 0,
  918. status: true,
  919. fixed: false
  920. },
  921. {
  922. userId: this.$store.state.user.name,
  923. functionId: 5304,
  924. serialNumber: '5304OrderQtyApprovedPreOps',
  925. tableId: "5304Order",
  926. tableName: "工单表",
  927. columnProp: "qtyApprovedPreOps",
  928. headerAlign: "center",
  929. align: "center",
  930. columnLabel: "前道工序已报合格数",
  931. columnWidth: 80,
  932. columnHidden: false,
  933. columnImage: false,
  934. columnSortable: false,
  935. sortLv: 0,
  936. status: true,
  937. fixed: false
  938. },
  939. {
  940. userId: this.$store.state.user.name,
  941. functionId: 5304,
  942. serialNumber: '5304OrderPrePlanStartTime',
  943. tableId: "5304Order",
  944. tableName: "工单表",
  945. columnProp: "prePlanStartTime",
  946. headerAlign: "center",
  947. align: "center",
  948. columnLabel: "上道工序计划开工日期",
  949. columnWidth: 80,
  950. columnHidden: false,
  951. columnImage: false,
  952. columnSortable: false,
  953. sortLv: 0,
  954. status: true,
  955. fixed: false
  956. },
  957. {
  958. userId: this.$store.state.user.name,
  959. functionId: 5304,
  960. serialNumber: '5304OrderPrePlanFinishTime',
  961. tableId: "5304Order",
  962. tableName: "工单表",
  963. columnProp: "prePlanFinishTime",
  964. headerAlign: "center",
  965. align: "center",
  966. columnLabel: "上道工序计划完工日期",
  967. columnWidth: 80,
  968. columnHidden: false,
  969. columnImage: false,
  970. columnSortable: false,
  971. sortLv: 0,
  972. status: true,
  973. fixed: false
  974. },
  975. {
  976. userId: this.$store.state.user.name,
  977. functionId: 5304,
  978. serialNumber: '5304OrderEfficiency',
  979. tableId: "5304Order",
  980. tableName: "工单表",
  981. columnProp: "efficiency",
  982. headerAlign: "center",
  983. align: "center",
  984. columnLabel: "效率",
  985. columnWidth: 80,
  986. columnHidden: false,
  987. columnImage: false,
  988. columnSortable: false,
  989. sortLv: 0,
  990. status: true,
  991. fixed: false
  992. }
  993. ],
  994. columnOperatorArray: [
  995. {
  996. userId: this.$store.state.user.name,
  997. functionId: 5304,
  998. serialNumber: '5304OperatorOperatorId',
  999. tableId: "5304Operator",
  1000. tableName: "操作员表",
  1001. columnProp: "operatorId",
  1002. headerAlign: "center",
  1003. align: "center",
  1004. columnLabel: "员工编号",
  1005. columnWidth: 80,
  1006. columnHidden: false,
  1007. columnImage: false,
  1008. columnSortable: false,
  1009. sortLv: 0,
  1010. status: true,
  1011. fixed: false
  1012. },
  1013. {
  1014. userId: this.$store.state.user.name,
  1015. functionId: 5304,
  1016. serialNumber: '5304OperatorOperatorName',
  1017. tableId: "5304Operator",
  1018. tableName: "操作员表",
  1019. columnProp: "operatorName",
  1020. headerAlign: "center",
  1021. align: "center",
  1022. columnLabel: "员工姓名",
  1023. columnWidth: 80,
  1024. columnHidden: false,
  1025. columnImage: false,
  1026. columnSortable: false,
  1027. sortLv: 0,
  1028. status: true,
  1029. fixed: false
  1030. },
  1031. {
  1032. userId: this.$store.state.user.name,
  1033. functionId: 5304,
  1034. serialNumber: '5304OperatorLastScheduledTime',
  1035. tableId: "5304Operator",
  1036. tableName: "操作员表",
  1037. columnProp: "lastScheduledTime",
  1038. headerAlign: "center",
  1039. align: "center",
  1040. columnLabel: "最后排产时间",
  1041. columnWidth: 125,
  1042. columnHidden: false,
  1043. columnImage: false,
  1044. columnSortable: false,
  1045. sortLv: 0,
  1046. status: true,
  1047. fixed: false
  1048. },
  1049. {
  1050. userId: this.$store.state.user.name,
  1051. functionId: 5304,
  1052. serialNumber: '5304OperatorEfficiency',
  1053. tableId: "5304Operator",
  1054. tableName: "操作员表",
  1055. columnProp: "efficiency",
  1056. headerAlign: "center",
  1057. align: "center",
  1058. columnLabel: "效率",
  1059. columnWidth: 80,
  1060. columnHidden: false,
  1061. columnImage: false,
  1062. columnSortable: false,
  1063. sortLv: 0,
  1064. status: true,
  1065. fixed: false
  1066. },
  1067. {
  1068. userId: this.$store.state.user.name,
  1069. functionId: 5304,
  1070. serialNumber: '5304OperatorQtyToSchedule',
  1071. tableId: "5304Operator",
  1072. tableName: "操作员表",
  1073. columnProp: "qtyToSchedule",
  1074. headerAlign: "center",
  1075. align: "center",
  1076. columnLabel: "排产数量",
  1077. columnWidth: 80,
  1078. columnHidden: true,
  1079. columnImage: false,
  1080. columnSortable: false,
  1081. sortLv: 0,
  1082. status: true,
  1083. fixed: false
  1084. },
  1085. {
  1086. userId: this.$store.state.user.name,
  1087. functionId: 5304,
  1088. serialNumber: '5304OperatorCalendarId',
  1089. tableId: "5304Operator",
  1090. tableName: "操作员表",
  1091. columnProp: "calendarId",
  1092. headerAlign: "center",
  1093. align: "center",
  1094. columnLabel: "工作日历",
  1095. columnWidth: 80,
  1096. columnHidden: false,
  1097. columnImage: false,
  1098. columnSortable: false,
  1099. sortLv: 0,
  1100. status: true,
  1101. fixed: false
  1102. },
  1103. {
  1104. userId: this.$store.state.user.name,
  1105. functionId: 5304,
  1106. serialNumber: '5304OperatorVirturlFlag',
  1107. tableId: "5304Operator",
  1108. tableName: "操作员表",
  1109. columnProp: "virturlFlag",
  1110. headerAlign: "center",
  1111. align: "center",
  1112. columnLabel: "虚拟机台",
  1113. columnWidth: 80,
  1114. columnHidden: false,
  1115. columnImage: false,
  1116. columnSortable: false,
  1117. sortLv: 0,
  1118. status: true,
  1119. fixed: false
  1120. }
  1121. ],
  1122. columnOrderScheduleArray: [
  1123. {
  1124. userId: this.$store.state.user.name,
  1125. functionId: 5304,
  1126. serialNumber: '5304ScheduleScheduledSeqNo',
  1127. tableId: "5304Schedule",
  1128. tableName: "排产明细表",
  1129. columnProp: "scheduledSeqNo",
  1130. headerAlign: "center",
  1131. align: "center",
  1132. columnLabel: "排产序号",
  1133. columnWidth: 80,
  1134. columnHidden: false,
  1135. columnImage: false,
  1136. columnSortable: false,
  1137. sortLv: 0,
  1138. status: true,
  1139. fixed: false
  1140. },
  1141. {
  1142. userId: this.$store.state.user.name,
  1143. functionId: 5304,
  1144. serialNumber: '5304ScheduleQtyRequired',
  1145. tableId: "5304Schedule",
  1146. tableName: "排产明细表",
  1147. columnProp: "qtyRequired",
  1148. headerAlign: "center",
  1149. align: "center",
  1150. columnLabel: "待生产数量",
  1151. columnWidth: 80,
  1152. columnHidden: false,
  1153. columnImage: false,
  1154. columnSortable: false,
  1155. sortLv: 0,
  1156. status: true,
  1157. fixed: false
  1158. },
  1159. {
  1160. userId: this.$store.state.user.name,
  1161. functionId: 5304,
  1162. serialNumber: '5304SchedulePlanStartTime',
  1163. tableId: "5304Schedule",
  1164. tableName: "排产明细表",
  1165. columnProp: "planStartTime",
  1166. headerAlign: "center",
  1167. align: "center",
  1168. columnLabel: "计划开工时间",
  1169. columnWidth: 125,
  1170. columnHidden: false,
  1171. columnImage: false,
  1172. columnSortable: false,
  1173. sortLv: 0,
  1174. status: true,
  1175. fixed: false
  1176. },
  1177. {
  1178. userId: this.$store.state.user.name,
  1179. functionId: 5304,
  1180. serialNumber: '5304SchedulePlanFinishTime',
  1181. tableId: "5304Schedule",
  1182. tableName: "排产明细表",
  1183. columnProp: "planFinishTime",
  1184. headerAlign: "center",
  1185. align: "center",
  1186. columnLabel: "计划完工时间",
  1187. columnWidth: 125,
  1188. columnHidden: false,
  1189. columnImage: false,
  1190. columnSortable: false,
  1191. sortLv: 0,
  1192. status: true,
  1193. fixed: false
  1194. },
  1195. {
  1196. userId: this.$store.state.user.name,
  1197. functionId: 5304,
  1198. serialNumber: '5304ScheduleOrderNo',
  1199. tableId: "5304Schedule",
  1200. tableName: "排产明细表",
  1201. columnProp: "orderNo",
  1202. headerAlign: "center",
  1203. align: "center",
  1204. columnLabel: "订单号",
  1205. columnWidth: 80,
  1206. columnHidden: false,
  1207. columnImage: false,
  1208. columnSortable: false,
  1209. sortLv: 0,
  1210. status: true,
  1211. fixed: false
  1212. },
  1213. {
  1214. userId: this.$store.state.user.name,
  1215. functionId: 5304,
  1216. serialNumber: '5304ScheduleItemNo',
  1217. tableId: "5304Schedule",
  1218. tableName: "排产明细表",
  1219. columnProp: "itemNo",
  1220. headerAlign: "center",
  1221. align: "center",
  1222. columnLabel: "工序号",
  1223. columnWidth: 80,
  1224. columnHidden: false,
  1225. columnImage: false,
  1226. columnSortable: false,
  1227. sortLv: 0,
  1228. status: true,
  1229. fixed: false
  1230. },
  1231. {
  1232. userId: this.$store.state.user.name,
  1233. functionId: 5304,
  1234. serialNumber: '5304ScheduleRemark',
  1235. tableId: "5304Schedule",
  1236. tableName: "排产明细表",
  1237. columnProp: "remark",
  1238. headerAlign: "center",
  1239. align: "center",
  1240. columnLabel: "备注",
  1241. columnWidth: 80,
  1242. columnHidden: false,
  1243. columnImage: false,
  1244. columnSortable: false,
  1245. sortLv: 0,
  1246. status: true,
  1247. fixed: false
  1248. },
  1249. {
  1250. userId: this.$store.state.user.name,
  1251. functionId: 5304,
  1252. serialNumber: '5304SchedulePartNo',
  1253. tableId: "5304Schedule",
  1254. tableName: "排产明细表",
  1255. columnProp: "partNo",
  1256. headerAlign: "center",
  1257. align: "center",
  1258. columnLabel: "产品编码",
  1259. columnWidth: 80,
  1260. columnHidden: false,
  1261. columnImage: false,
  1262. columnSortable: false,
  1263. sortLv: 0,
  1264. status: true,
  1265. fixed: false
  1266. },
  1267. {
  1268. userId: this.$store.state.user.name,
  1269. functionId: 5304,
  1270. serialNumber: '5304ScheduleCustomerName',
  1271. tableId: "5304Schedule",
  1272. tableName: "排产明细表",
  1273. columnProp: "customerName",
  1274. headerAlign: "center",
  1275. align: "center",
  1276. columnLabel: "客户名称",
  1277. columnWidth: 80,
  1278. columnHidden: false,
  1279. columnImage: false,
  1280. columnSortable: false,
  1281. sortLv: 0,
  1282. status: true,
  1283. fixed: false
  1284. },
  1285. {
  1286. userId: this.$store.state.user.name,
  1287. functionId: 5304,
  1288. serialNumber: '5304ScheduleCustPartNo',
  1289. tableId: "5304Schedule",
  1290. tableName: "排产明细表",
  1291. columnProp: "custPartNo",
  1292. headerAlign: "center",
  1293. align: "center",
  1294. columnLabel: "客户产品料号",
  1295. columnWidth: 80,
  1296. columnHidden: false,
  1297. columnImage: false,
  1298. columnSortable: false,
  1299. sortLv: 0,
  1300. status: true,
  1301. fixed: false
  1302. },
  1303. {
  1304. userId: this.$store.state.user.name,
  1305. functionId: 5304,
  1306. serialNumber: '5304SchedulePartDesc',
  1307. tableId: "5304Schedule",
  1308. tableName: "排产明细表",
  1309. columnProp: "partDesc",
  1310. headerAlign: "center",
  1311. align: "center",
  1312. columnLabel: "产品名称",
  1313. columnWidth: 80,
  1314. columnHidden: false,
  1315. columnImage: false,
  1316. columnSortable: false,
  1317. sortLv: 0,
  1318. status: true,
  1319. fixed: false
  1320. },
  1321. {
  1322. userId: this.$store.state.user.name,
  1323. functionId: 5304,
  1324. serialNumber: '5304OrderSpec',
  1325. tableId: "5304Schedule",
  1326. tableName: "排产明细表",
  1327. columnProp: "spec",
  1328. headerAlign: "center",
  1329. align: "center",
  1330. columnLabel: "规格型号",
  1331. columnWidth: 80,
  1332. columnHidden: false,
  1333. columnImage: false,
  1334. columnSortable: false,
  1335. sortLv: 0,
  1336. status: true,
  1337. fixed: false
  1338. }
  1339. ],
  1340. }
  1341. },
  1342. mounted() {
  1343. this.$nextTick(() => {
  1344. this.tableHeight = (window.innerHeight - 270);
  1345. this.tableLeftWidth = ((window.innerWidth - 100) / 2) - 60;
  1346. this.tableRightWidth = ((window.innerWidth - 100) / 2) + 60;
  1347. });
  1348. //设置当前的动态高度
  1349. },
  1350. methods: {
  1351. //列表表格选择替换
  1352. tabClick(tab, event) {
  1353. let tabName = tab.name;
  1354. //区分两个页签
  1355. if(tabName == 'shop_order'){
  1356. //刷新当前的table
  1357. //this.getShopOrderList();
  1358. }else if(tabName == 'scheduling'){
  1359. //刷新刷新FQC员工
  1360. this.getOperatorList();
  1361. }
  1362. },
  1363. /*获取FQC工单信息*/
  1364. getShopOrderList() {
  1365. getShopOrderListWithFqc(this.searchData).then(({data}) => {
  1366. this.shopOrderList = data.rows;
  1367. })
  1368. },
  1369. /*获取FQC操作员信息*/
  1370. getOperatorList() {
  1371. getOperatorListWithFqc(this.searchData).then(({data}) => {
  1372. //设置列表
  1373. this.operatorList = data.rows;
  1374. //判断是否选中行
  1375. if(this.operatorIndex >= 0){
  1376. //设置选中行
  1377. this.$refs.operatorTable.setCurrentRow(this.operatorList[this.operatorIndex]);
  1378. //选中当前是的行
  1379. setTimeout(() =>{
  1380. //设置默认选中的人员
  1381. this.searchData.resourceId = this.operatorList[this.operatorIndex].operatorId;
  1382. this.pageData.resourceId = this.operatorList[this.operatorIndex].operatorId;
  1383. //刷新当前的派工单记录
  1384. this.getOrderScheduleList();
  1385. },500);
  1386. }
  1387. });
  1388. },
  1389. /*获取派工单的信息*/
  1390. getOrderScheduleList() {
  1391. getOrderScheduleListWithFqc(this.searchData).then(({data}) => {
  1392. this.orderScheduleList = data.rows;
  1393. //清空已经选好的行数据
  1394. this.currentSchedeRow = null;
  1395. //判断是否需要选中当前行
  1396. if (this.scheduleIndex >= 0) {
  1397. //选中当前是的行
  1398. this.$refs.scheduleTable.setCurrentRow(this.orderScheduleList[this.scheduleIndex]);
  1399. }
  1400. })
  1401. },
  1402. /*设置工艺的行*/
  1403. setCurrentRoutingRow(row, column, event) {
  1404. this.currentRoutingRow = row;
  1405. },
  1406. /*开始排产*/
  1407. startScheduleBun(row, column, event){
  1408. //设置页面参数
  1409. setTimeout(() =>{
  1410. this.pageData.orderNo = row.orderNo;
  1411. this.pageData.itemNo = row.itemNo;
  1412. this.pageData.itemDesc = row.itemDesc;
  1413. this.pageData.workCenterNo = row.workCenterNo;
  1414. this.pageData.workCenterDesc = '全检';
  1415. this.pageData.partNo = row.partNo;
  1416. this.pageData.partDesc = row.partDesc;
  1417. this.pageData.qtyRequired = row.lotSize;
  1418. this.pageData.qtyScheduled = row.qtyScheduled;
  1419. this.pageData.qtyToSchedule = row.qtyToSchedule;
  1420. //设置页签
  1421. this.activeTable = 'scheduling';
  1422. //刷新页签的参数
  1423. this.getOperatorList();
  1424. }, 500)
  1425. },
  1426. /*设置当前的操作员行*/
  1427. setCurrentOperatorRow(row, column, event) {
  1428. this.currentOperatorRow = JSON.parse(JSON.stringify(row));
  1429. //设置查询的条件
  1430. this.searchData.resourceId = row.operatorId;
  1431. this.pageData.resourceId = row.operatorId;
  1432. //刷新table
  1433. this.getOrderScheduleList();
  1434. },
  1435. /*当前值发生变化的时候修改*/
  1436. changeCurrentOperatorRow(row, oldRow){
  1437. //判断是否是获取焦点的事件
  1438. if(row){
  1439. this.currentOperatorRow = JSON.parse(JSON.stringify(row));
  1440. //设置当前的序号
  1441. //this.operatorIndex = row.index;
  1442. }
  1443. },
  1444. /*设置当前派工单行的下标*/
  1445. scheduleRowClassName({row, rowIndex}){
  1446. row.index = rowIndex;
  1447. },
  1448. /*添加定制的css类*/
  1449. customerCellClassName({row, column, rowIndex, columnIndex}) {
  1450. if(column.property == 'qtyToSchedule'){
  1451. return 'customer-number-cell';
  1452. }
  1453. },
  1454. /*添加定制的cess样式*/
  1455. customerCellStyle({row, column, rowIndex, columnIndex}) {
  1456. if(column.property == 'qtyToSchedule'){
  1457. return 'padding: 0px 0px;';
  1458. }
  1459. },
  1460. /*设置当前的派工单行*/
  1461. setCurrentScheduleRow(row, column, event) {
  1462. this.currentSchedeRow = JSON.parse(JSON.stringify(row));
  1463. //设置当前的序号
  1464. this.scheduleIndex = row.index;
  1465. },
  1466. /*当前值发生变化的时候修改*/
  1467. changeScheduleRow(row, oldRow){
  1468. //判断是否是获取焦点的事件
  1469. if(row){
  1470. this.currentScheduleRow = JSON.parse(JSON.stringify(row));
  1471. }
  1472. },
  1473. /*开始排产的操作*/
  1474. scheduleOperatorsBun() {
  1475. //循环判断是否存在需要排产
  1476. let scheduleOperators = [];
  1477. //处理需要排产的数据
  1478. for(let i = 0; i < this.operatorList.length; i++){
  1479. let tempOperator = this.operatorList[i];
  1480. if(parseFloat(tempOperator.qtyToSchedule) > 0){
  1481. scheduleOperators.push(tempOperator);
  1482. }
  1483. }
  1484. //判断是否存在需要排产的操作员
  1485. if(scheduleOperators.length == 0){
  1486. this.$message.error('暂无可排产的操作员!');
  1487. return false;
  1488. }
  1489. //处理参数
  1490. let postData = {'pageData': JSON.stringify(this.pageData), 'operatorList': JSON.stringify(scheduleOperators)}
  1491. //提交后台的数据
  1492. scheduleFqcOperators(postData).then(({data}) => {
  1493. if (data.code == 500) {
  1494. this.$message.error(data.msg);
  1495. } else {
  1496. this.$message.success(data.msg);
  1497. //刷新明FQC操作员
  1498. this.getOperatorList();
  1499. }
  1500. });
  1501. },
  1502. /*提示取消派工单*/
  1503. warnCancelScheduleConfirm(row, $event, column) {
  1504. //提示操作
  1505. this.$confirm('确实要取消该派工单吗?', '提示', {
  1506. confirmButtonText: '确认',
  1507. celButtonText: '取消',
  1508. type: 'warning'
  1509. }).then(() => {
  1510. //执行创建新卷的操作
  1511. this.cancelScheduleBun(row);
  1512. });
  1513. },
  1514. /*取消派工单的操作*/
  1515. cancelScheduleBun(scheduleRow) {
  1516. //设置参数
  1517. this.pageData.orderNo = scheduleRow.orderNo;
  1518. this.pageData.itemNo = scheduleRow.itemNo;
  1519. this.pageData.seqNo = scheduleRow.seqNo;
  1520. this.pageData.scheduledQty = scheduleRow.qtyRequired;
  1521. this.pageData.workCenterNo = scheduleRow.workCenterNo;
  1522. this.pageData.resourceId = scheduleRow.resourceId;
  1523. this.pageData.scheduleSeqNo = scheduleRow.scheduleSeqNo;
  1524. this.pageData.planStartTime = scheduleRow.planStartTime;
  1525. //取消排产
  1526. cancelSoSchedule(this.pageData).then(({data}) => {
  1527. if (data.code == 500) {
  1528. this.$message.error(data.msg);
  1529. } else {
  1530. this.$message.success(data.msg);
  1531. //刷新明细的报工页面
  1532. this.getOrderScheduleList();
  1533. }
  1534. });
  1535. },
  1536. /*提示是否重新排产*/
  1537. warnReScheduleConfirm() {
  1538. //提示操作
  1539. this.$confirm('确实要对排产清单中的未完成派工单进行排产吗?', '提示', {
  1540. confirmButtonText: '确认',
  1541. celButtonText: '取消',
  1542. type: 'warning'
  1543. }).then(() => {
  1544. //执行创建新卷的操作
  1545. this.reScheduleFqcOperator();
  1546. });
  1547. },
  1548. /*重新排产的方法*/
  1549. reScheduleFqcOperator() {
  1550. //设置重新排产的人员
  1551. this.pageData.resourceId = this.currentOperatorRow.operatorId;
  1552. reScheduleWorkOrders(this.pageData).then(({data}) => {
  1553. if (data.code == 500) {
  1554. this.$message.error(data.msg);
  1555. } else {
  1556. this.$message.success(data.msg);
  1557. //刷新明细的报工页面
  1558. this.getOrderScheduleList();
  1559. }
  1560. });
  1561. },
  1562. /*上移派工单*/
  1563. moveUpScheduleBun(){
  1564. //判断是否选择好了移动的行
  1565. let scheduleRow = this.currentScheduleRow;
  1566. if(null == scheduleRow || scheduleRow == ''){
  1567. this.$message.error('请先选择处理的行!');
  1568. return false;
  1569. }
  1570. //判断是否是第一行
  1571. if(scheduleRow.index == 0){
  1572. this.$message.error('已经是首行,无法继续上行!');
  1573. return false;
  1574. }
  1575. //请求的参数
  1576. let requestData = {'site': this.pageData.site,
  1577. 'workCenterNo': this.pageData.workCenterNo,
  1578. 'resourceId': this.pageData.resourceId,
  1579. 'scheduleSeqNo': scheduleRow.scheduledSeqNo};
  1580. //请求处理当前的参数
  1581. moveUpSchedule(requestData).then(({data}) => {
  1582. if(data.code == 500){
  1583. this.$message.error(data.msg);
  1584. }else{
  1585. this.$message.success(data.msg);
  1586. //重置当前行
  1587. this.scheduleIndex = this.scheduleIndex - 1;
  1588. //刷新派工单的数据
  1589. this.getOrderScheduleList();
  1590. }
  1591. });
  1592. },
  1593. /*上移派工单*/
  1594. moveDownScheduleBun(){
  1595. //判断是否选择好了移动的行
  1596. let scheduleRow = this.currentScheduleRow;
  1597. if(null == scheduleRow || scheduleRow == ''){
  1598. this.$message.error('请先选择处理的行!');
  1599. return false;
  1600. }
  1601. let countNums = this.orderScheduleList.length;
  1602. //判断是否是第一行
  1603. if(scheduleRow.index == countNums - 1){
  1604. this.$message.error('已经是末行,无法继续下行!');
  1605. return false;
  1606. }
  1607. //请求的参数
  1608. let requestData = {'site': this.pageData.site,
  1609. 'workCenterNo': this.pageData.workCenterNo,
  1610. 'resourceId': this.pageData.resourceId,
  1611. 'scheduleSeqNo': scheduleRow.scheduledSeqNo};
  1612. //请求处理当前的参数
  1613. moveDownSchedule(requestData).then(({data}) => {
  1614. if(data.code == 500){
  1615. this.$message.error(data.msg);
  1616. }else{
  1617. this.$message.success(data.msg);
  1618. //重置当前行
  1619. this.scheduleIndex = this.scheduleIndex + 1;
  1620. //刷新派工单的数据
  1621. this.getOrderScheduleList();
  1622. }
  1623. });
  1624. },
  1625. },
  1626. created() {
  1627. //查询工单的数据
  1628. //this.getShopOrderList();
  1629. //查询派工的数据
  1630. //this.getOrderScheduleList();
  1631. }
  1632. }
  1633. </script>
  1634. <!--当前页面的标签样式-->
  1635. <style scoped lang="scss">
  1636. /*针对el-card*/
  1637. .customer-card .el-form-item__content {
  1638. margin-top: -15px;
  1639. }
  1640. .customer-card .el-form-item {
  1641. height: 22px;
  1642. }
  1643. .customer-border .el-form-item__content {
  1644. margin-top: -30px;
  1645. }
  1646. /*全局年与日类型 宽度*/
  1647. div.el-time-width {
  1648. width: 100px !important;
  1649. }
  1650. /* 全局时间右边框*/
  1651. .customer-css input.el-input__inner {
  1652. height: 22px !important;
  1653. padding-right: 0px !important;
  1654. }
  1655. /* 控制el-card标签的数据*/
  1656. div.customer-el-card {
  1657. margin-left: 110px;
  1658. margin-top: -15px;
  1659. height: 20px;
  1660. width: 60px;
  1661. }
  1662. /* 颜色控制 */
  1663. div.customer-el-card-pink {
  1664. background: #FF00FF;
  1665. }
  1666. div.customer-el-card-orange {
  1667. background: #FFD700;
  1668. }
  1669. div.customer-el-card-blue {
  1670. background: #0000CD;
  1671. }
  1672. /*清掉样式*/
  1673. .el-radio + .el-radio {
  1674. margin-left: 0px;
  1675. }
  1676. /*当前按钮的通用样式*/
  1677. .customer-css .customer-bun-mid {
  1678. width: 60px;
  1679. text-align: center;
  1680. }
  1681. .customer-css .customer-bun-min {
  1682. width: 50px;
  1683. text-align: center;
  1684. }
  1685. .customer-css .customer-bun-max {
  1686. width: 85px;
  1687. text-align: center;
  1688. }
  1689. /*当前按钮的通用样式*/
  1690. .customer-css .el-button--medium {
  1691. padding: 5px 5px;
  1692. }
  1693. /*灰色的表格行背景颜色*/
  1694. .customer-css /deep/ tr.customer-row-gray {
  1695. background: #7e819e;
  1696. }
  1697. /*去掉悬浮的样式*/
  1698. .customer-css /deep/ tr:hover > td {
  1699. background-color: transparent !important;
  1700. }
  1701. .customer-css /deep/ tr.hover-row.current-row > td {
  1702. background-color: transparent !important;
  1703. }
  1704. .customer-css /deep/ tr.hover-row > td {
  1705. background-color: transparent !important;
  1706. }
  1707. /*添加主菜单和明细菜单的样式*/
  1708. .customer-css .customer-dropdown .el-button--primary {
  1709. padding: 2px;
  1710. font-size: 12px;
  1711. }
  1712. .el-dropdown-menu /deep/ li.customer-li {
  1713. font-size: 10px;
  1714. }
  1715. .el-input /deep/ .el-icon-time {
  1716. display: none;
  1717. }
  1718. /*左边的样式*/
  1719. .customer-css .customer-left-main {
  1720. width: calc(50vw - 360px) !important;
  1721. padding: 0px;
  1722. margin-left: -5px;
  1723. margin-right: -20px;
  1724. margin-bottom: -5px;
  1725. }
  1726. /* el-main的样式 */
  1727. .customer-css .customer-right-main {
  1728. width: calc(50vw - 240px) !important;
  1729. padding: 0px;
  1730. margin-left: -5px;
  1731. margin-right: -20px;
  1732. margin-bottom: -5px;
  1733. }
  1734. .customer-css .customer-left-table {
  1735. margin-top: -20px;
  1736. }
  1737. /*调整右边field的样式*/
  1738. .customer-css .customer-right-field {
  1739. margin-left: 46.2%;
  1740. margin-top: calc(-100vh + 223px);
  1741. width: 53.8%;
  1742. }
  1743. .customer-css /deep/ .el-tabs__content {
  1744. padding: 0px;
  1745. }
  1746. /*两个checkbox的样式*/
  1747. .customer-checkbox + .customer-checkbox {
  1748. margin-top: 20px;
  1749. }
  1750. /*统一的input内容颜色样式*/
  1751. .customer-input-color-red /deep/ .el-input__inner {
  1752. color: red;
  1753. }
  1754. /deep/ .customer-tab .el-tabs__content{
  1755. padding: 0px !important;
  1756. }
  1757. /*table中input*/
  1758. div.table-input /deep/ input.el-input__inner{
  1759. text-align: right;
  1760. }
  1761. </style>