| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div> |
| | | <div class="body" :style="{height:mainHeight+'px'}"> |
| | | <!-- <div class="bodyTopButtonGroup" style="justify-content: space-between">--> |
| | | <!-- <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">æ°å¢</el-button>--> |
| | | <!-- <el-button icon="el-icon-download" @click="upload">导å
¥</el-button>--> |
| | | <!-- </div>--> |
| | | |
| | | <div |
| | | class="bodyTopFormGroup" |
| | | style="margin-top: 10px" |
| | | :style="{height:(mainHeight-20)+'px'}" |
| | | > |
| | | <div style="display: flex;align-items: center"> |
| | | <i |
| | | class="el-icon-s-operation" |
| | | :style="{color:$store.state.settings.theme,fontSize:'14px'}" |
| | | /> |
| | | <div style="font-size: 14px;margin-left: 5px;color: #a7a7a7"> |
| | | æ¥è¯¢é¡¹ |
| | | </div> |
| | | <!-- <div v-if="!isPermission" style="font-size: 14px;margin-left: 10px;color: red">--> |
| | | <!-- å½åç¨æ·å¨ERPç³»ç»ä¸ä¸åå¨ææªææï¼æ æ³å
¥åºæäº¤--> |
| | | <!-- </div>--> |
| | | </div> |
| | | <el-form |
| | | ref="form" |
| | | :model="form" |
| | | label-width="100px" |
| | | inline |
| | | style="display: flex;" |
| | | > |
| | | <div class="elForm" style="display: flex;flex-direction: column;justify-content: flex-start"> |
| | | <div style="display: flex"> |
| | | <el-form-item label="åæ®ç±»å" required style=" display: flex;"> |
| | | <el-select |
| | | v-model="form.documentType" |
| | | :popper-append-to-body="false" |
| | | filterable |
| | | style="width: 200px" |
| | | placeholder="è¯·éæ©" |
| | | @change="documentTypeChange" |
| | | > |
| | | <el-option |
| | | v-for="item in documentTypeArr" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="ç产车é´" required style=" display: flex;"> |
| | | <el-select |
| | | v-model="form.wkshopcode" |
| | | :popper-append-to-body="false" |
| | | filterable |
| | | style="width: 200px" |
| | | placeholder="è¯·éæ©" |
| | | @change="wkshopcodeChange" |
| | | > |
| | | <el-option |
| | | v-for="item in WorkShopArr" |
| | | :key="item.code" |
| | | :label="item.name" |
| | | :value="item.code" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item |
| | | v-if="form.documentType==='Y'" |
| | | label="ç产订å" |
| | | :required="form.documentType==='Y'" |
| | | style="display: flex;" |
| | | > |
| | | |
| | | <el-select |
| | | v-model="form.erpordercode" |
| | | :popper-append-to-body="false" |
| | | filterable |
| | | style="width: 200px" |
| | | placeholder="è¯·éæ©" |
| | | @change="getProductInHouseOrderSearch" |
| | | > |
| | | <el-option |
| | | v-for="item in erpordercodeArr" |
| | | :key="item.ordercode" |
| | | :label="item.ordercode" |
| | | :value="item.ordercode" |
| | | /> |
| | | </el-select> |
| | | |
| | | <!-- <el-input--> |
| | | <!-- v-model="form.erpordercode"--> |
| | | <!-- placeholder="请è¾å
¥"--> |
| | | <!-- style="width: 200px"--> |
| | | <!-- @input="getProductInHouseOrderSearch"--> |
| | | <!-- />--> |
| | | </el-form-item> |
| | | |
| | | <el-form-item |
| | | v-if="form.documentType==='N'" |
| | | label="ç产工å" |
| | | :required="form.documentType==='N'" |
| | | style=" display: flex;" |
| | | > |
| | | <el-select |
| | | v-model="form.mesordercode" |
| | | :popper-append-to-body="false" |
| | | filterable |
| | | style="width: 200px" |
| | | placeholder="è¯·éæ©" |
| | | @change="getProductInHouseOrderSearch" |
| | | > |
| | | <el-option |
| | | v-for="item in mesordercodeArr" |
| | | :key="item.ordercode" |
| | | :label="item.ordercode" |
| | | :value="item.ordercode" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item |
| | | v-if="form.documentType==='Y'" |
| | | label="ç产工å" |
| | | style=" display: flex;" |
| | | > |
| | | <el-input |
| | | v-model="form.mesordercode" |
| | | placeholder="请è¾å
¥" |
| | | style="width: 200px" |
| | | @input="getProductInHouseOrderSearch" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item |
| | | v-if="form.documentType==='Y'" |
| | | label="éå®è®¢å" |
| | | style="display: flex;" |
| | | > |
| | | <el-input |
| | | v-model="form.saleOrderCode" |
| | | readonly |
| | | style="width: 200px" |
| | | @change="getProductInHouseOrderSearch" |
| | | /> |
| | | <!-- disabled--> |
| | | </el-form-item> |
| | | </div> |
| | | |
| | | <div style="display: flex"> |
| | | <el-form-item label="产åç¼ç " style=" display: flex;"> |
| | | <el-input v-model="form.partcode" placeholder="请è¾å
¥" style="width: 200px" @change="getProductInHouseOrderSearch" /> |
| | | </el-form-item> |
| | | <el-form-item label="产ååç§°" style=" display: flex;"> |
| | | <el-input v-model="form.partname" style="width: 200px" placeholder="请è¾å
¥" @change="getProductInHouseOrderSearch" /> |
| | | </el-form-item> |
| | | <el-form-item label="产åè§æ ¼" style=" display: flex;"> |
| | | <el-input v-model="form.partspec" style="width: 200px" placeholder="请è¾å
¥" @change="getProductInHouseOrderSearch" /> |
| | | </el-form-item> |
| | | <el-form-item |
| | | label="工忥æ" |
| | | style=" display: flex;font-size: 14px;margin-top: 3px;margin-bottom: -3px" |
| | | > |
| | | <el-date-picker |
| | | v-model="form.paystartdate" |
| | | type="daterange" |
| | | range-separator="~" |
| | | class="timeMini" |
| | | size="mini" |
| | | style="width: 200px;display: flex;line-height: 34px;height: 34px;" |
| | | :clearable="false" |
| | | start-placeholder="å¼å§æ¥æ" |
| | | end-placeholder="ç»ææ¥æ" |
| | | @change="getProductInHouseOrderSearch" |
| | | /> |
| | | </el-form-item> |
| | | </div> |
| | | |
| | | </div> |
| | | <div |
| | | class="bodySearchReset" |
| | | > |
| | | <!-- :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}"--> |
| | | |
| | | <!-- <el-button type="primary" icon="el-icon-search" @click="search">æ¥è¯¢</el-button>--> |
| | | <el-button type="info" icon="el-icon-refresh" @click="reset">éç½®</el-button> |
| | | </div> |
| | | </el-form> |
| | | |
| | | <div style="display: flex;align-items: center"> |
| | | <i |
| | | class="el-icon-s-operation" |
| | | :style="{color:$store.state.settings.theme,fontSize:'14px'}" |
| | | /> |
| | | <div style="font-size: 14px;margin-left: 5px;color: #a7a7a7"> |
| | | 鿩项 |
| | | </div> |
| | | </div> |
| | | <el-form |
| | | ref="form" |
| | | :model="form" |
| | | label-width="100px" |
| | | inline |
| | | style="display: flex;" |
| | | > |
| | | <div class="elForm" style="justify-content: flex-start"> |
| | | <el-form-item label="åæ®æ¥æ" style=" display: flex;"> |
| | | <el-date-picker |
| | | v-model="form.lm_date" |
| | | style="width: 200px" |
| | | readonly |
| | | type="date" |
| | | placeholder="éæ©æ¥æ" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="åæ®ç¼å·" style=" display: flex;"> |
| | | <el-input |
| | | v-model="form.hbillno" |
| | | readonly |
| | | placeholder="请è¾å
¥" |
| | | style="width: 200px" |
| | | /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="å
¥åºä»åº" required style=" display: flex;"> |
| | | <el-select |
| | | v-model="form.stockcode" |
| | | :popper-append-to-body="false" |
| | | filterable |
| | | style="width: 200px" |
| | | placeholder="è¯·éæ©" |
| | | @change="stockcodeChange" |
| | | > |
| | | <el-option |
| | | v-for="item in stockcodeArr" |
| | | :key="item.code" |
| | | :label="item.name" |
| | | :value="item.code" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | </div> |
| | | <div |
| | | class="bodySearchReset" |
| | | :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}" |
| | | > |
| | | <el-button |
| | | |
| | | type="primary" |
| | | icon="el-icon-s-promotion" |
| | | :disabled="$store.state.app.buttonIsDisabled" |
| | | @click="submit" |
| | | >å
¥åºæäº¤ |
| | | </el-button> |
| | | <!-- <el-button type="info" icon="el-icon-refresh" @click="reset">éç½®</el-button>--> |
| | | </div> |
| | | </el-form> |
| | | <div style="display: flex;align-items: center"> |
| | | <i |
| | | class="el-icon-s-operation" |
| | | :style="{color:$store.state.settings.theme,fontSize:'14px'}" |
| | | /> |
| | | <div style="font-size: 14px;margin-left: 5px;color: #a7a7a7"> |
| | | ä¿¡æ¯æ |
| | | </div> |
| | | </div> |
| | | <div style="padding:0 10px;position: relative"> |
| | | <!-- <el-button--> |
| | | <!-- --> |
| | | <!-- type="primary"--> |
| | | <!-- style="position: absolute;right: 10px;top: 10px;z-index: 10"--> |
| | | <!-- icon="el-icon-s-promotion"--> |
| | | <!-- @click=""--> |
| | | <!-- >å
¥åºæäº¤--> |
| | | <!-- </el-button>--> |
| | | <el-tabs style="margin-top: 10px;" @tab-click="tabClick"> |
| | | <el-tab-pane label="æç»"> |
| | | <div class="elTableDiv" style="margin: 0 auto 10px;"> |
| | | <el-table |
| | | v-show="form.documentType==='Y'" |
| | | ref="tableDataRef" |
| | | class="tableFixed" |
| | | :data="tableDataDetail" |
| | | :height="(tableHeight-25)+'px'" |
| | | border |
| | | :row-class-name="tableRowClassName" |
| | | :style="{width: 100+'%',height:(tableHeight-25)+'px',}" |
| | | highlight-current-row |
| | | :header-cell-style="this.$headerCellStyle" |
| | | :cell-style="this.$cellStyle" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <!-- @cell-dblclick="cellDblclick"--> |
| | | <!-- @cell-click="cellClick"--> |
| | | <el-table-column |
| | | type="selection" |
| | | width="50" |
| | | fixed |
| | | /> |
| | | <el-table-column |
| | | type="index" |
| | | width="50" |
| | | fixed |
| | | label="åºå·" |
| | | /> |
| | | |
| | | <!-- <el-table-column--> |
| | | <!-- prop="stockcode"--> |
| | | <!-- label="ä»åº"--> |
| | | <!-- width="160"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <div>{{ row.stockcode ? stockcodeArr.find(i => i.code === row.stockcode).name : '/' }}</div>--> |
| | | <!-- <!– <div–>--> |
| | | <!-- <!– v-if="!(row.index === tabClickIndex && tabClickLabel === 'ä»åº')"–>--> |
| | | <!-- <!– >–>--> |
| | | <!-- <!– {{ row.stockcode ? stockcodeArr.find(i => i.code === row.stockcode).name : '/' }}–>--> |
| | | <!-- <!– </div>–>--> |
| | | <!-- <!– <el-select–>--> |
| | | <!-- <!– v-if="row.index === tabClickIndex && tabClickLabel === 'ä»åº'"–>--> |
| | | <!-- <!– v-model="row.stockcode"–>--> |
| | | <!-- <!– placeholder="è¯·éæ©"–>--> |
| | | <!-- <!– >–>--> |
| | | <!-- <!– <el-option–>--> |
| | | <!-- <!– v-for="item in stockcodeArr"–>--> |
| | | <!-- <!– :key="item.code"–>--> |
| | | <!-- <!– :label="item.name"–>--> |
| | | <!-- <!– :value="item.code"–>--> |
| | | <!-- <!– />–>--> |
| | | <!-- <!– </el-select>–>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column--> |
| | | <!-- prop="inbarcode"--> |
| | | <!-- label="å
¥åºæ¡ç "--> |
| | | <!-- width="160"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- />--> |
| | | <el-table-column |
| | | prop="m_po" |
| | | label="订åç¼å·" |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div v-if="row.m_po">{{ row.m_po }}</div> |
| | | <div v-else>/</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="wo_code" |
| | | label="å·¥åç¼å·" |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="partcode" |
| | | label="产åç¼ç " |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="partname" |
| | | label="产ååç§°" |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="partspec" |
| | | label="产åè§æ ¼" |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div v-if="row.partspec">{{ row.partspec }}</div> |
| | | <div v-else>/</div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="qty" |
| | | label="è®¢åæ°é" |
| | | min-width="95" |
| | | fixed="right" |
| | | show-tooltip-when-overflow |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div v-if="row.qty">{{ row.qty }}</div> |
| | | <div v-else>/</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="plan_qty" |
| | | label="工忰é" |
| | | min-width="95" |
| | | fixed="right" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="good_qty" |
| | | label="å®å·¥æ°é" |
| | | min-width="95" |
| | | fixed="right" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="inhouseqty" |
| | | label="å·²å
¥åºæ°é" |
| | | min-width="95" |
| | | fixed="right" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="stinhouseqty" |
| | | label="å¯å
¥åºæ°é" |
| | | min-width="130" |
| | | fixed="right" |
| | | > |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <el-input-number v-model="row.stinhouseqty" :min="0" :max="row.good_qty" size="small" />--> |
| | | <!-- </template>--> |
| | | </el-table-column> |
| | | </el-table> |
| | | <el-table |
| | | v-show="form.documentType==='N'" |
| | | ref="tableDataRef" |
| | | class="tableFixed" |
| | | :data="tableDataDetail" |
| | | :height="(tableHeight-25)+'px'" |
| | | border |
| | | :row-class-name="tableRowClassName" |
| | | :style="{width: 100+'%',height:(tableHeight-25)+'px',}" |
| | | highlight-current-row |
| | | :header-cell-style="this.$headerCellStyle" |
| | | :cell-style="this.$cellStyle" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column |
| | | type="selection" |
| | | width="50" |
| | | fixed |
| | | /> |
| | | <el-table-column |
| | | type="index" |
| | | width="50" |
| | | fixed |
| | | label="åºå·" |
| | | /> |
| | | |
| | | <!-- <el-table-column--> |
| | | <!-- prop="stockname"--> |
| | | <!-- label="ä»åº"--> |
| | | <!-- width="110"--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <div v-if="row.stockname">{{ row.stockname }}</div>--> |
| | | <!-- <div v-else>/</div>--> |
| | | <!-- </template>--> |
| | | |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column--> |
| | | <!-- prop="inbarcode"--> |
| | | <!-- label="å
¥åºæ¡ç "--> |
| | | <!-- width="160"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- />--> |
| | | <!-- <el-table-column--> |
| | | <!-- prop="m_po"--> |
| | | <!-- label="订åç¼å·"--> |
| | | <!-- width="160"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <div v-if="row.m_po">{{ row.m_po }}</div>--> |
| | | <!-- <div v-else>/</div>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <el-table-column |
| | | prop="wo_code" |
| | | label="å·¥åç¼å·" |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="partcode" |
| | | label="产åç¼ç " |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="partname" |
| | | label="产ååç§°" |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="partspec" |
| | | label="产åè§æ ¼" |
| | | width="160" |
| | | show-tooltip-when-overflow |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div v-if="row.stockname">{{ row.stockname }}</div> |
| | | <div v-else>/</div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <!-- <el-table-column--> |
| | | <!-- prop="qty"--> |
| | | <!-- label="è®¢åæ°é"--> |
| | | <!-- min-width="95"--> |
| | | <!-- fixed="right"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <div v-if="row.qty">{{ row.qty }}</div>--> |
| | | <!-- <div v-else>/</div>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <el-table-column |
| | | prop="plan_qty" |
| | | label="工忰é" |
| | | min-width="95" |
| | | fixed="right" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="good_qty" |
| | | label="å®å·¥æ°é" |
| | | min-width="95" |
| | | fixed="right" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="inhouseqty" |
| | | label="å·²å
¥åºæ°é" |
| | | min-width="95" |
| | | fixed="right" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="stinhouseqty" |
| | | label="å¯å
¥åºæ°é" |
| | | min-width="95" |
| | | fixed="right" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | </el-table> |
| | | </div> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="æ±æ»"> |
| | | <div class="elTableDiv" style="margin: 0 auto 10px;"> |
| | | <el-table |
| | | ref="tableDataRef" |
| | | class="tableFixed" |
| | | :data="tableDataSummary" |
| | | :height="(tableHeight-25)+'px'" |
| | | border |
| | | :row-class-name="tableRowClassName2" |
| | | :style="{width: 100+'%',height:(tableHeight-25)+'px',}" |
| | | highlight-current-row |
| | | :header-cell-style="this.$headerCellStyle" |
| | | :cell-style="this.$cellStyle" |
| | | > |
| | | <el-table-column |
| | | type="index" |
| | | width="50" |
| | | fixed |
| | | label="åºå·" |
| | | /> |
| | | <!-- <el-table-column--> |
| | | <!-- prop="stockcode"--> |
| | | <!-- label="ä»åº"--> |
| | | <!-- width="110"--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <div>{{ stockcodeArr.find(i => i.code === row.stockcode).name }}</div>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <div v-if="row.stockname">{{ row.stockname }}</div>--> |
| | | <!-- <div v-else>/</div>--> |
| | | <!-- </template>--> |
| | | |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column--> |
| | | <!-- prop="inbarcode"--> |
| | | <!-- label="å
¥åºæ¡ç "--> |
| | | <!-- width="160"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- />--> |
| | | <!-- <el-table-column--> |
| | | <!-- prop="m_po"--> |
| | | <!-- label="订åç¼å·"--> |
| | | <!-- width="160"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="{row}">--> |
| | | <!-- <div v-if="row.m_po">{{ row.m_po }}</div>--> |
| | | <!-- <div v-else>/</div>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column--> |
| | | <!-- prop="wo_code"--> |
| | | <!-- label="å·¥åç¼å·"--> |
| | | <!-- width="160"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- />--> |
| | | <el-table-column |
| | | prop="partcode" |
| | | label="产åç¼ç " |
| | | min-width="160" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="partname" |
| | | label="产ååç§°" |
| | | min-width="160" |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="partspec" |
| | | label="产åè§æ ¼" |
| | | min-width="160" |
| | | show-tooltip-when-overflow |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div v-if="row.stockname">{{ row.stockname }}</div> |
| | | <div v-else>/</div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="qty" |
| | | label="è®¢åæ°é" |
| | | min-width="95" |
| | | |
| | | show-tooltip-when-overflow |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div v-if="row.qty">{{ row.qty }}</div> |
| | | <div v-else>/</div> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- <el-table-column--> |
| | | <!-- prop="plan_qty"--> |
| | | <!-- label="工忰é"--> |
| | | <!-- min-width="95"--> |
| | | <!-- fixed="right"--> |
| | | <!-- show-tooltip-when-overflow--> |
| | | <!-- />--> |
| | | <el-table-column |
| | | prop="good_qty" |
| | | label="å®å·¥æ°é" |
| | | min-width="95" |
| | | |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="inhouseqty" |
| | | label="å·²å
¥åºæ°é" |
| | | min-width="95" |
| | | |
| | | show-tooltip-when-overflow |
| | | /> |
| | | <el-table-column |
| | | prop="stinhouseqty" |
| | | label="å¯å
¥åºæ°é" |
| | | min-width="95" |
| | | |
| | | show-tooltip-when-overflow |
| | | /> |
| | | </el-table> |
| | | </div> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | import { |
| | | ProductInHouseOrderCodeSearch, |
| | | ProductInHouseOrderSearch, ProductInHouseOrderSeave, |
| | | ProductInHouseWkshopOrder |
| | | } from '@/api/scgl' |
| | | import { getTPlusToken, handleDatetime, handleDatetime2 } from '@/utils/global' |
| | | import { |
| | | ErpUserSelect, |
| | | ErpWarehouseSelect, |
| | | ErpWkshopDepartmentSelect |
| | | } from '@/api/jcsz' |
| | | import { getCookie } from '@/utils/auth' |
| | | import Vue from 'vue' |
| | | import axios from 'axios' |
| | | |
| | | export default { |
| | | name: 'Zzjg', |
| | | components: {}, |
| | | data() { |
| | | return { |
| | | mainHeight: 0, |
| | | tableHeight: 0, |
| | | form: { |
| | | hbillno: '', // å
¥åºåå· |
| | | incbit: '', // æµæ°´å· |
| | | documentType: 'Y', // åæ®ç±»å |
| | | |
| | | wkshopcode: '', // çäº§è½¦é´ |
| | | erpordercode: '', // 订åç¼å· |
| | | mesordercode: '', // å·¥åç¼å· |
| | | partcode: '', // 产åç¼ç |
| | | partname: '', // 产ååç§° |
| | | partspec: '', // è§æ ¼åå· |
| | | orderdate: '', // 工忥æ |
| | | |
| | | saleOrderCode: '', // éå®è®¢å |
| | | lm_date: new Date(), // åæ®æ¥æ |
| | | stockcode: '' // å
¥åºä»åº |
| | | |
| | | }, |
| | | documentTypeArr: [ |
| | | { label: 'ææºå', value: 'Y' }, |
| | | { label: 'æ æºå', value: 'N' } |
| | | ], |
| | | tableDataDetail: [], // æç»è¡¨ |
| | | multipleSelection: [], |
| | | stockcodeArr: [], // å
¥åºä»åºæ°ç» |
| | | WorkShopArr: [], // çäº§è½¦é´æ°ç» |
| | | erpordercodeArr: [], // çäº§è®¢åæ°ç» |
| | | mesordercodeArr: [], // çäº§å·¥åæ°ç» |
| | | |
| | | tabClickIndex: null, // ç¹å»çåå
æ ¼ |
| | | tabClickLabel: '', // å½åç¹å»çåå |
| | | |
| | | tableDataSummary: [], // æ±æ»è¡¨ |
| | | |
| | | // isPermission: true, // æ¯å¦ææéå¯æäº¤ |
| | | |
| | | userArr: [] // ERPäººåæ°ç» |
| | | |
| | | } |
| | | }, |
| | | watch: {}, |
| | | created() { |
| | | this.getErpUserSelect() |
| | | }, |
| | | mounted() { |
| | | window.addEventListener('resize', this.getHeight) |
| | | this.getHeight() |
| | | |
| | | this.getWareHouseSelect() |
| | | this.getWorkShopSelect() |
| | | this.getProductInHouseOrderCodeSearch() |
| | | }, |
| | | methods: { |
| | | async getProductInHouseOrderCodeSearch() { |
| | | const { data: res } = await ProductInHouseOrderCodeSearch({ rightcode: '2064' }) |
| | | this.form.hbillno = res[0] |
| | | this.form.incbit = res[1] |
| | | }, |
| | | async getErpUserSelect() { |
| | | const { data: res } = await ErpUserSelect() |
| | | this.userArr = res |
| | | |
| | | // if (!res.map(i => i.name).includes(getCookie('username'))) { |
| | | // this.isPermission = false |
| | | // |
| | | // await this.$alert('å½åç¨æ·å¨ERPç³»ç»ä¸ä¸åå¨ææªææï¼æ æ³å
¥åºæäº¤', 'æç¤º', { |
| | | // confirmButtonText: 'ç¡®å®' |
| | | // }) |
| | | // } |
| | | }, |
| | | |
| | | // åæ®ç±»åæ¹å |
| | | documentTypeChange(val) { |
| | | this.form.erpordercode = '' |
| | | this.form.wkshopcode = '' |
| | | this.reset() |
| | | }, |
| | | // çäº§è½¦é´æ¹å |
| | | async wkshopcodeChange(val) { |
| | | this.form.erpordercode = '' |
| | | this.form.mesordercode = '' |
| | | this.form.saleOrderCode = '' |
| | | this.tableDataDetail = [] |
| | | this.tableDataSummary = [] |
| | | this.multipleSelection = [] |
| | | const data = { |
| | | ordertype: this.form.documentType, |
| | | wkshopcode: val |
| | | } |
| | | const { data: res } = await ProductInHouseWkshopOrder(data) |
| | | if (this.form.documentType === 'Y') { |
| | | this.erpordercodeArr = res |
| | | } else { |
| | | this.mesordercodeArr = res |
| | | } |
| | | }, |
| | | |
| | | async getProductInHouseOrderSearch() { |
| | | let tempDate = this.form.orderdate |
| | | if (tempDate.length > 0) { |
| | | tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1]) |
| | | } |
| | | const data = { |
| | | wkshopcode: this.form.wkshopcode, // çäº§è½¦é´ |
| | | erpordercode: this.form.erpordercode, // 订åç¼å· |
| | | mesordercode: this.form.mesordercode, // å·¥åç¼å· |
| | | partcode: this.form.partcode, // 产åç¼ç |
| | | partname: this.form.partname, // 产ååç§° |
| | | partspec: this.form.partspec, // è§æ ¼åå· |
| | | orderdate: tempDate// 工忥æ |
| | | } |
| | | const res = await ProductInHouseOrderSearch(data) |
| | | // this.tableDataDetail = res.data |
| | | |
| | | // æ ¹æ®åååè¿æ»¤ |
| | | this.tableDataDetail = res.data.filter(i => this.form.documentType === 'Y' ? i.m_po : !i.m_po) |
| | | |
| | | this.form.saleOrderCode = res.data[0].saleOrderCode |
| | | |
| | | this.$nextTick(() => { |
| | | this.$refs.tableDataRef.doLayout() |
| | | }) |
| | | }, |
| | | // è·åä»åºæ¥å£ |
| | | async getWareHouseSelect() { |
| | | const { data: res } = await ErpWarehouseSelect() |
| | | this.stockcodeArr = res |
| | | }, |
| | | // è·åæå±è½¦é´ |
| | | async getWorkShopSelect() { |
| | | const { data: res } = await ErpWkshopDepartmentSelect() |
| | | this.WorkShopArr = res |
| | | }, |
| | | |
| | | // éç½® |
| | | reset() { |
| | | this.form.wkshopcode = '' |
| | | this.form.erpordercode = '' |
| | | this.form.mesordercode = '' |
| | | this.form.partcode = '' |
| | | this.form.partname = '' |
| | | this.form.partspec = '' |
| | | this.form.orderdate = '' |
| | | this.form.stockcode = '' |
| | | |
| | | this.tableDataDetail = [] |
| | | this.tableDataSummary = [] |
| | | this.multipleSelection = [] |
| | | }, |
| | | |
| | | // è¡¨æ ¼åå
æ ¼åå» |
| | | cellDblclick(row, column, cell, event) { |
| | | switch (column.label) { |
| | | case 'ä»åº': |
| | | this.tabClickIndex = row.index |
| | | this.tabClickLabel = column.label |
| | | break |
| | | case 'å¯å
¥åºæ°é': |
| | | this.tabClickIndex = row.index |
| | | this.tabClickLabel = column.label |
| | | break |
| | | default: |
| | | return |
| | | } |
| | | }, |
| | | // è¡¨æ ¼åå»äºä»¶ |
| | | cellClick() { |
| | | this.tabClickLabel = '' |
| | | }, |
| | | // å
¥åºä»åºå¼æ¹å |
| | | stockcodeChange(val) { |
| | | this.tableDataDetail.forEach(i => { |
| | | i.stockcode = val |
| | | }) |
| | | }, |
| | | |
| | | // å¤ééä¸ |
| | | handleSelectionChange(val) { |
| | | this.multipleSelection = val |
| | | }, |
| | | |
| | | // tabç¹å» |
| | | tabClick(val) { |
| | | const partcodeArr = [...new Set(this.multipleSelection.map(i => i.partcode))]// æ°ç»å»é |
| | | const newData = [] |
| | | |
| | | partcodeArr.forEach(i => { |
| | | const t = this.multipleSelection.find(j => j.partcode === i) |
| | | let sum = 0 |
| | | const good_qty = this.multipleSelection.filter(j => j.partcode === i).map(j => parseFloat(j.good_qty)).reduce((pre, curr) => { |
| | | sum = pre + curr |
| | | return sum |
| | | }) |
| | | sum = 0 |
| | | const inhouseqty = this.multipleSelection.filter(j => j.partcode === i).map(j => parseFloat(j.inhouseqty)).reduce((pre, curr) => { |
| | | sum = pre + curr |
| | | return sum |
| | | }) |
| | | sum = 0 |
| | | const stinhouseqty = this.multipleSelection.filter(j => j.partcode === i).map(j => parseFloat(j.stinhouseqty)).reduce((pre, curr) => { |
| | | sum = pre + curr |
| | | return sum |
| | | }) |
| | | newData.push( |
| | | { |
| | | stockcode: t.stockcode, |
| | | partcode: t.partcode, |
| | | partname: t.partname, |
| | | partspec: t.partspec, |
| | | qty: t.qty, |
| | | good_qty, |
| | | inhouseqty, |
| | | stinhouseqty, |
| | | unitid: t.unitid, |
| | | unitname: t.unitname, |
| | | sourceVoucherDetailId: t.sbid, |
| | | saleOrderDetailId: t.saleOrderDetailId, |
| | | ManufactureOrderDetailId: t.sbid, |
| | | stck_id: t.stockcode ? this.stockcodeArr.find(i => i.code === t.stockcode).id : '', |
| | | SourceVoucherDetailIdByMergedFlow: t.sbid, |
| | | materiel_code: t.partcode, |
| | | warehouse: t.stockcode, |
| | | materiel_id: t.materiel_id |
| | | |
| | | } |
| | | ) |
| | | }) |
| | | this.tableDataSummary = newData |
| | | }, |
| | | |
| | | async submit() { |
| | | if (!this.form.stockcode) { |
| | | return this.$message.error('å
¥åºä»åºä¸è½ä¸ºç©ºï¼') |
| | | } |
| | | if (this.multipleSelection.length === 0) { |
| | | return this.$message.error('æªéæ©äº§åï¼') |
| | | } |
| | | |
| | | this.$store.state.app.buttonIsDisabled = true |
| | | await this.tabClick() |
| | | const openToken = await getTPlusToken() // è·åTPlus token |
| | | |
| | | // ææºå |
| | | if (this.form.documentType === 'Y') { |
| | | const RDRecordDetails = [] |
| | | this.tableDataSummary.forEach((i, index) => { |
| | | RDRecordDetails.push({ |
| | | Code: index + 1, // è¡å·ï¼ä»1å¼å§èªå¢é¿ |
| | | SourceVoucherId: this.tableDataDetail[0].mpoid, // æ¥æºåæ®çåæ®ID |
| | | BaseQuantity: i.stinhouseqty, // 主计éå使°é |
| | | SourceVoucherDetailId: i.sourceVoucherDetailId, // æ¥æºåæ®çå¯¹åºæç»ID |
| | | Inventory: { |
| | | Code: i.materiel_code // åè´§ç¼ç |
| | | }, |
| | | IdSourceVoucherType: 69 |
| | | }) |
| | | }) |
| | | const data = { |
| | | 'dto': { |
| | | 'Warehouse': { |
| | | 'Code': this.form.stockcode// ä»åºç¼ç |
| | | }, |
| | | 'Code': this.form.hbillno, // åæ®ç¼ç |
| | | 'IsModifiedCode': true, |
| | | 'BusiType': { |
| | | 'Code': '03'// ä¸å¡ç±»åç¼ç |
| | | }, |
| | | 'Department': { |
| | | 'Code': this.form.wkshopcode// é¨é¨ç¼ç |
| | | }, |
| | | 'VoucherDate': handleDatetime(new Date().getTime()), // åæ®æ¥æ |
| | | 'RdStyle': { |
| | | 'Code': '21'// åºåºç±»å«ç¼ç |
| | | }, |
| | | 'RDRecordDetails': RDRecordDetails, |
| | | // 'Clerk': { |
| | | // 'Code': this.userArr.find(i => i.name === getCookie('username')).code // ä¸å¡åcode |
| | | // // 'Code': '001' // ä¸å¡åcode |
| | | // // 'Name': getCookie('username') |
| | | // }, |
| | | 'ExternalCode': this.form.hbillno, |
| | | 'VoucherType': { |
| | | 'Code': 'ST1002' |
| | | } |
| | | } |
| | | } |
| | | const res = await axios.post(Vue.prototype.$chanjetBaseUrl + '/tplus/api/v2/ProductReceiveOpenApi/Create', |
| | | data, { |
| | | headers: { |
| | | 'openToken': openToken, |
| | | 'appKey': Vue.prototype.$AppKey, |
| | | 'appSecret': Vue.prototype.$AppSecret, |
| | | 'Content-Type': 'application/json' |
| | | } |
| | | } |
| | | ) |
| | | if (res.data.code === 0) { |
| | | this.multipleSelection.forEach(i => { |
| | | i.stockname = this.stockcodeArr.find(j => j.code === i.stockcode).name |
| | | i.id = this.stockcodeArr.find(j => j.code === i.stockcode).id |
| | | }) |
| | | |
| | | const head = { |
| | | rightcode: '2064', |
| | | hbillno: this.form.hbillno, |
| | | incbit: this.form.incbit, |
| | | wkshpcode: this.form.wkshopcode, |
| | | sourceVoucherId: this.form.documentType === 'Y' ? this.tableDataDetail[0].mpoid : '', |
| | | sourceVoucherCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | saleOrderId: this.tableDataDetail[0].saleOrderid, |
| | | saleOrderCode: this.tableDataDetail[0].saleOrderCode, |
| | | rdDirectionFlag: 1, |
| | | // makerid: this.userArr.find(i => i.name === getCookie('username')).id, |
| | | makerid: '', |
| | | maker: getCookie('username'), |
| | | accountingyear: new Date().getFullYear(), |
| | | VoucherYear: new Date().getFullYear(), |
| | | VoucherPeriod: new Date().getMonth() + 1, |
| | | ManufactureOrderCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | idbusitype: '03', |
| | | iddepartment: this.WorkShopArr.find(i => i.code === this.form.wkshopcode).id, |
| | | idrdstyle: 21, |
| | | idwarehouse: '', |
| | | voucherState: 181, |
| | | idvouchertype: 15, |
| | | voucherdate: handleDatetime(new Date().getTime()), |
| | | madedate: handleDatetime(new Date().getTime()), |
| | | createdtime: handleDatetime2(new Date().getTime()), |
| | | DataSource: '56133', |
| | | idsourcevouchertype: 69 |
| | | } |
| | | |
| | | const subsum = [] |
| | | this.tableDataSummary.forEach((i, index) => { |
| | | subsum.push({ |
| | | code: index.toString().padStart(4, '0'), |
| | | rownumber: index + 1, |
| | | arrivalQuantity: i.qty, |
| | | quantity: i.stinhouseqty, |
| | | compositionQuantity: i.stinhouseqty + i.unitname, |
| | | baseQuantity: i.stinhouseqty, |
| | | sourceVoucherId: this.form.documentType === 'Y' ? this.tableDataDetail[0].mpoid : '', |
| | | sourceVoucherCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | sourceVoucherDetailId: i.sourceVoucherDetailId, |
| | | idsourcevouchertype: 69, |
| | | saleOrderId: this.tableDataDetail[0].saleOrderid, |
| | | saleOrderCode: this.tableDataDetail[0].saleOrderCode, |
| | | saleOrderDetailId: i.saleOrderDetailId, |
| | | ManufactureOrderId: this.form.documentType === 'Y' ? this.tableDataDetail[0].mpoid : '', |
| | | ManufactureOrderCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | ManufactureOrderDetailId: i.ManufactureOrderDetailId, |
| | | idbusiTypeByMergedFlow: 3, |
| | | idinventory: i.materiel_id, |
| | | idbaseunit: i.unitid, |
| | | idunit: i.unitid, |
| | | idwarehouse: i.stck_id, |
| | | SourceVoucherIdByMergedFlow: this.tableDataDetail[0].mpoid, |
| | | SourceVoucherCodeByMergedFlow: this.tableDataDetail[0].m_po, |
| | | SourceVoucherDetailIdByMergedFlow: i.SourceVoucherDetailIdByMergedFlow, |
| | | idsourceVoucherTypeByMergedFlow: 69, |
| | | createdtime: handleDatetime2(new Date().getTime()), |
| | | DataSource: '56133', |
| | | materiel_code: i.materiel_code, |
| | | warehouse: i.warehouse |
| | | }) |
| | | }) |
| | | |
| | | const data = { |
| | | head, sub: this.multipleSelection, subsum |
| | | } |
| | | |
| | | const r1 = await ProductInHouseOrderSeave(data) |
| | | if (r1.code === '200') { |
| | | this.$message.success('å
¥åºæåï¼') |
| | | await this.getProductInHouseOrderCodeSearch() |
| | | await this.wkshopcodeChange(this.form.wkshopcode) |
| | | this.tableDataDetail = [] |
| | | this.tableDataSummary = [] |
| | | this.multipleSelection = [] |
| | | this.form.stockcode = '' |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | } |
| | | } else { |
| | | this.$message.error('å
¥åºå¤±è´¥ï¼') |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | } |
| | | } |
| | | |
| | | // æ æºå |
| | | if (this.form.documentType === 'N') { |
| | | const RDRecordDetails = [] |
| | | this.tableDataSummary.forEach((i, index) => { |
| | | RDRecordDetails.push({ |
| | | Code: index + 1, // è¡å·ï¼ä»1å¼å§èªå¢é¿ |
| | | Inventory: { |
| | | Code: i.materiel_code // åè´§ç¼ç |
| | | }, |
| | | BaseQuantity: i.stinhouseqty, // 主计éå使°é |
| | | SNObject: { |
| | | SnAccountDetails: [ |
| | | { |
| | | SNCode: index.toString().padStart(4, '0') |
| | | } |
| | | ] |
| | | } |
| | | }) |
| | | }) |
| | | const data = { |
| | | 'dto': { |
| | | 'IsModifiedCode': true, |
| | | 'ExternalCode': this.form.hbillno, |
| | | 'Code': this.form.hbillno, |
| | | 'VoucherType': { |
| | | 'Code': 'ST1002' |
| | | }, |
| | | 'VoucherDate': handleDatetime(new Date().getTime()), |
| | | 'BusiType': { |
| | | 'Code': '03' |
| | | }, |
| | | 'Warehouse': { |
| | | 'Code': this.form.stockcode |
| | | }, |
| | | 'Department': { |
| | | 'Code': this.form.wkshopcode, |
| | | 'Name': this.WorkShopArr.find(i => i.code === this.form.wkshopcode).name |
| | | }, |
| | | 'RDRecordDetails': RDRecordDetails |
| | | } |
| | | } |
| | | const res = await axios.post(Vue.prototype.$chanjetBaseUrl + '/tplus/api/v2/productReceive/Create', |
| | | data, { |
| | | headers: { |
| | | 'openToken': openToken, |
| | | 'appKey': Vue.prototype.$AppKey, |
| | | 'appSecret': Vue.prototype.$AppSecret, |
| | | 'Content-Type': 'application/json' |
| | | } |
| | | } |
| | | ) |
| | | |
| | | if (res.data === null) { |
| | | this.multipleSelection.forEach(i => { |
| | | i.stockname = this.stockcodeArr.find(j => j.code === i.stockcode).name |
| | | i.id = this.stockcodeArr.find(j => j.code === i.stockcode).id |
| | | }) |
| | | |
| | | const head = { |
| | | rightcode: '2064', |
| | | hbillno: this.form.hbillno, |
| | | incbit: this.form.incbit, |
| | | wkshpcode: this.form.wkshopcode, |
| | | sourceVoucherId: this.form.documentType === 'Y' ? this.tableDataDetail[0].mpoid : this.tableDataDetail[0].wo_id, |
| | | sourceVoucherCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | saleOrderId: this.tableDataDetail[0].saleOrderid, |
| | | saleOrderCode: this.tableDataDetail[0].saleOrderCode, |
| | | rdDirectionFlag: 1, |
| | | // makerid: this.userArr.find(i => i.name === getCookie('username')).id, |
| | | makerid: '', |
| | | maker: getCookie('username'), |
| | | accountingyear: new Date().getFullYear(), |
| | | VoucherYear: new Date().getFullYear(), |
| | | VoucherPeriod: new Date().getMonth() + 1, |
| | | ManufactureOrderCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | idbusitype: '03', |
| | | iddepartment: this.WorkShopArr.find(i => i.code === this.form.wkshopcode).id, |
| | | idrdstyle: 21, |
| | | idwarehouse: '', |
| | | voucherState: 181, |
| | | idvouchertype: 15, |
| | | voucherdate: handleDatetime(new Date().getTime()), |
| | | madedate: handleDatetime(new Date().getTime()), |
| | | createdtime: handleDatetime2(new Date().getTime()), |
| | | DataSource: '56133', |
| | | idsourcevouchertype: 69 |
| | | } |
| | | |
| | | const subsum = [] |
| | | this.tableDataSummary.forEach((i, index) => { |
| | | subsum.push({ |
| | | code: index.toString().padStart(4, '0'), |
| | | rownumber: index + 1, |
| | | arrivalQuantity: i.qty, |
| | | quantity: i.stinhouseqty, |
| | | compositionQuantity: i.stinhouseqty + i.unitname, |
| | | baseQuantity: i.stinhouseqty, |
| | | sourceVoucherId: this.form.documentType === 'Y' ? this.tableDataDetail[0].mpoid : '', |
| | | sourceVoucherCode: '', |
| | | sourceVoucherDetailId: i.sourceVoucherDetailId, |
| | | idsourcevouchertype: 69, |
| | | saleOrderId: this.tableDataDetail[0].saleOrderid, |
| | | saleOrderCode: this.tableDataDetail[0].saleOrderCode, |
| | | saleOrderDetailId: i.saleOrderDetailId, |
| | | ManufactureOrderId: this.form.documentType === 'Y' ? this.tableDataDetail[0].mpoid : '', |
| | | ManufactureOrderCode: this.form.documentType === 'Y' ? this.tableDataDetail[0].m_po : this.tableDataDetail[0].wo_code, |
| | | ManufactureOrderDetailId: i.ManufactureOrderDetailId, |
| | | idbusiTypeByMergedFlow: 3, |
| | | idinventory: i.materiel_id, |
| | | idbaseunit: i.unitid, |
| | | idunit: i.unitid, |
| | | idwarehouse: i.stck_id, |
| | | SourceVoucherIdByMergedFlow: this.tableDataDetail[0].mpoid, |
| | | SourceVoucherCodeByMergedFlow: this.tableDataDetail[0].m_po, |
| | | SourceVoucherDetailIdByMergedFlow: i.SourceVoucherDetailIdByMergedFlow, |
| | | idsourceVoucherTypeByMergedFlow: 69, |
| | | createdtime: handleDatetime2(new Date().getTime()), |
| | | DataSource: '56133', |
| | | materiel_code: i.materiel_code, |
| | | warehouse: i.warehouse |
| | | }) |
| | | }) |
| | | |
| | | const data = { |
| | | head, sub: this.multipleSelection, subsum |
| | | } |
| | | console.log(data, 2) |
| | | const r1 = await ProductInHouseOrderSeave(data) |
| | | if (r1.code === '200') { |
| | | this.$message.success('å
¥åºæåï¼') |
| | | await this.getProductInHouseOrderCodeSearch() |
| | | await this.wkshopcodeChange(this.form.wkshopcode) |
| | | this.tableDataDetail = [] |
| | | this.tableDataSummary = [] |
| | | this.multipleSelection = [] |
| | | this.form.stockcode = '' |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | } |
| | | } else { |
| | | this.$message.error('å
¥åºå¤±è´¥ï¼') |
| | | this.$store.state.app.buttonIsDisabled = false |
| | | } |
| | | } |
| | | }, |
| | | // è·å页é¢é«åº¦ |
| | | getHeight() { |
| | | this.$nextTick(() => { |
| | | this.mainHeight = window.innerHeight - 85 |
| | | this.tableHeight = this.mainHeight - 255 |
| | | this.$refs.tableDataRef.doLayout() |
| | | }) |
| | | }, |
| | | tableRowClassName({ row, rowIndex }) { |
| | | // ææ¯ä¸è¡çç´¢å¼æ¾è¿row |
| | | row.index = rowIndex |
| | | return 'custom-row' |
| | | }, |
| | | tableRowClassName2({ row, rowIndex }) { |
| | | return 'custom-row' |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <!--å
Œ
±é¡µé¢æ ·å¼--> |
| | | <style lang="scss" scoped> |
| | | $main_color: #42b983; |
| | | ::v-deep .el-range__icon { |
| | | line-height: 28px !important; |
| | | } |
| | | |
| | | ::v-deep .el-range-separator { |
| | | line-height: 28px !important; |
| | | } |
| | | |
| | | ::v-deep .el-range-input { |
| | | font-size: 14px; |
| | | } |
| | | |
| | | ::v-deep .el-range-separator { |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | } |
| | | |
| | | ::v-deep .el-button--text { |
| | | font-size: 14px; |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .el-icon-share, .el-icon-delete, .el-icon-edit-outline { |
| | | color: $main_color; |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .el-icon-edit-outline { |
| | | margin-right: 15px; |
| | | } |
| | | |
| | | ::v-deep .el-button--primary, .el-button--default, .el-button--info { |
| | | height: 34px; |
| | | display: flex; |
| | | align-items: center; |
| | | padding: 0 15px; |
| | | } |
| | | |
| | | ::v-deep .el-button--primary { |
| | | //background-color: $main_color !important; |
| | | } |
| | | |
| | | ::v-deep .el-button--default { |
| | | background-color: #f8f8fa; |
| | | border: none; |
| | | } |
| | | |
| | | ::v-deep .el-input__inner { |
| | | height: 34px; |
| | | line-height: 34px; |
| | | //color: #a7a7a7; |
| | | } |
| | | |
| | | ::v-deep .el-dialog__body { |
| | | padding: 20px 100px !important; |
| | | } |
| | | |
| | | ::v-deep .dialogVisibleRoles .el-dialog__body { |
| | | padding: 20px 20px !important; |
| | | } |
| | | |
| | | ::v-deep .importPickerClass .el-dialog__body { |
| | | padding: 20px 20px !important; |
| | | } |
| | | |
| | | ::v-deep .el-dialog__footer { |
| | | display: flex; |
| | | justify-content: flex-end; |
| | | } |
| | | |
| | | ::v-deep .el-table .caret-wrapper { |
| | | transform: scale(0.8); |
| | | } |
| | | |
| | | ::v-deep .cell { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | } |
| | | |
| | | ::v-deep .el-table::before { |
| | | height: 0; |
| | | } |
| | | |
| | | ::v-deep .el-table__body-wrapper { |
| | | background-color: #f8f8fa; |
| | | } |
| | | |
| | | ::v-deep .el-table__body .el-table__row.hover-row td { |
| | | background-color: #eaecef; |
| | | } |
| | | |
| | | ::v-deep .el-form--inline .el-form-item__label { |
| | | color: #a7a7a7; |
| | | } |
| | | |
| | | .body ::v-deep .el-divider { |
| | | border: 1px solid #eee; |
| | | width: 99%; |
| | | margin: 10px auto; |
| | | } |
| | | |
| | | .body ::v-deep .el-form-item { |
| | | margin-bottom: 0; |
| | | } |
| | | |
| | | .userDialogVisible ::v-deep .el-form-item { |
| | | margin-bottom: 0; |
| | | } |
| | | |
| | | ::v-deep .el-select__caret { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | |
| | | .tableFixed { |
| | | ::v-deep .el-table__fixed-right { |
| | | height: 100% !important; |
| | | } |
| | | |
| | | ::v-deep .el-table__fixed { |
| | | height: 100% !important; |
| | | } |
| | | } |
| | | |
| | | ::v-deep .el-tabs__item { |
| | | padding-right: 0; |
| | | } |
| | | </style> |
| | | <style> |
| | | |
| | | .el-table .custom-row { |
| | | background: #f8f8fa; |
| | | } |
| | | </style> |