¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <div> |
| | | <el-row class="title"> |
| | | <el-col :span="12" style="text-align: left;">åæææ¥æ£</el-col> |
| | | <el-col :span="12" style="text-align: right;"> |
| | | <el-button v-show="tabIndex === 4" :loading="outLoading" size="medium" type="primary" @click="handleDown">导åº</el-button> |
| | | <el-button v-if="isShowIFS && tabIndex === 0" :loading="btnLoading" size="small" type="primary" @click="openIFS">è·åIFS订å</el-button> |
| | | <el-button v-if="tabIndex === 0" size="small" type="primary" @click="declareS">æ¥æ£</el-button> |
| | | <el-button v-if="tabIndex === 0" size="small" type="primary" @click="addDeclare">æ°å¢æ¥æ£ä¿¡æ¯</el-button> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | <div class="search"> |
| | | <el-form :model="componentData" ref="componentData" size="small" :inline="true"> |
| | | <el-row> |
| | | <el-form-item label="æ¹å·" prop="menuName"> |
| | | <el-input v-model="componentData.entity.updateBatchNo" clearable placeholder="请è¾å
¥" |
| | | size="small" |
| | | @keyup.enter.native="refreshTable"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="é¶ä»¶å·" prop="menuName"> |
| | | <el-input v-model="componentData.entity.partNo" clearable placeholder="请è¾å
¥" |
| | | size="small" |
| | | @keyup.enter.native="refreshTable"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="é¶ä»¶æè¿°" prop="menuName"> |
| | | <el-input v-model="componentData.entity.partDesc" clearable placeholder="请è¾å
¥" |
| | | size="small" |
| | | @keyup.enter.native="refreshTable"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="ä¾åºå" prop="menuName" v-if="(tabIndex === 3 || tabIndex === 4)"> |
| | | <el-input v-model="componentData.entity.supplierName" clearable placeholder="请è¾å
¥" |
| | | size="small" |
| | | @keyup.enter.native="refreshTable"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <!-- <div class="search_thing" style="padding-left: 30px;">--> |
| | | <el-button v-if="tabIndex === 3 || tabIndex === 4" :icon="!more?'el-icon-arrow-down':'el-icon-arrow-up'" style="color: #3A7BFA;" type="text" @click="more=!more">{{!more?'æ´å¤':'æ¶èµ·'}}</el-button> |
| | | <el-button size="small" icon="el-icon-search" type="primary" @click="refreshTable()">æ¥ è¯¢</el-button> |
| | | <el-button size="small" @click="refresh()" icon="el-icon-refresh">é ç½®</el-button> |
| | | <!-- </div>--> |
| | | </el-row> |
| | | <el-row> |
| | | <el-form-item label="æ£éªç¶æ" prop="menuName" v-if="(tabIndex === 3 || tabIndex === 4) && more"> |
| | | <el-select v-model="componentData4.entity.inspectStatus" clearable |
| | | size="small" style="width: 100%;" @change="refreshTable()"> |
| | | <el-option v-for="(a, i) in queryStatusList" :key="i" :label="a.label" :value="a.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="ä¸åæ¶é´" prop="menuName" v-if="(tabIndex === 3 || tabIndex === 4) && more"> |
| | | <el-date-picker |
| | | v-model="entity.date" |
| | | end-placeholder="ç»ææ¥æ" |
| | | format="yyyy-MM-dd" |
| | | placeholder="éæ©æ¥æ" |
| | | range-separator="è³" |
| | | size="small" |
| | | start-placeholder="å¼å§æ¥æ" |
| | | style="width: 100%;" |
| | | type="daterange" |
| | | value-format="yyyy-MM-dd"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="å§æç¼å·" prop="menuName" v-if="(tabIndex === 3 || tabIndex === 4) && more"> |
| | | <el-input v-model="componentData4.entity.entrustCode" clearable placeholder="请è¾å
¥" |
| | | size="small" |
| | | @keyup.enter.native="refreshTable"> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-row> |
| | | </el-form> |
| | | </div> |
| | | <div class="table"> |
| | | <ul class="tab"> |
| | | <li v-for="(m,i) in tabList" :key="m.value" :class="{active:m.value===tabIndex}" @click="handleTab(m,i)">{{m.label}}</li> |
| | | </ul> |
| | | <!-- å¾
æ¥æ£--> |
| | | <ValueTable v-show="tabIndex === 0" :key="'a'+ upIndex" |
| | | ref="ValueTable" |
| | | :componentData="componentData" |
| | | :style="getStyle()" |
| | | :tableRowClassName="changeRowClass" |
| | | :url="getWarehouseSubmitApi()" /> |
| | | <!-- å¾
ä¸å--> |
| | | <ValueTable v-show="tabIndex === 1" :key="'b'+ upIndex" |
| | | ref="ValueTable1" |
| | | :componentData="componentData1" |
| | | :style="getStyle()" |
| | | :tableRowClassName="changeRowClass" |
| | | :url="getWarehouseSubmitApi()" /> |
| | | <!-- 已宿å表--> |
| | | <!-- <ValueTable v-show="tabIndex === 3" :key="'c'+ upIndex"--> |
| | | <!-- ref="ValueTable2"--> |
| | | <!-- :componentData="componentData2"--> |
| | | <!-- :style="getStyle()"--> |
| | | <!-- :url="$api.materialInspection.getIfsByFinish" />--> |
| | | <!-- <!– å
¨é¨–>--> |
| | | <!-- <ValueTable v-show="tabIndex === 4" :key="'d'+ upIndex"--> |
| | | <!-- ref="ValueTable4"--> |
| | | <!-- :componentData="componentData4"--> |
| | | <!-- :style="getStyle()"--> |
| | | <!-- :url="$api.materialInspection.getIfsByAll" />--> |
| | | </div> |
| | | <!-- æ¹éæ¥æ£ --> |
| | | <el-dialog :visible.sync="declareDialogSVisible" title="ç¡®è®¤æ¥æ£" width="30%"> |
| | | <p style="font-size:16px;color:#333333">æ¯å¦ç¡®è®¤æ¥æ£éæ©çæ°æ®ï¼</p> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-row> |
| | | <el-button @click="declareDialogSVisible = false">å æ¶</el-button> |
| | | <el-button :loading="submitDeclareLoading" type="primary" @click="submitDeclareS">ç¡® å®</el-button> |
| | | </el-row> |
| | | </span> |
| | | </el-dialog> |
| | | <!-- ç¡®è®¤æ¥æ£ --> |
| | | <el-dialog :close-on-click-modal="false" :title="declareType === 'add' ? 'æ°å¢æ¥æ£ä¿¡æ¯' : 'åæææ¥æ£'" |
| | | :visible.sync="declareDialogVisible" |
| | | width="62%" @close="resetForm"> |
| | | <el-form ref="declareObj" :inline="true" :model="declareObj" :rules="declareObjRules" label-width="130px" style="display: flex;flex-wrap: wrap;"> |
| | | <el-form-item class="declareObj-form-item" label="订åå·:" prop="orderNo"> |
| | | <el-input v-model="declareObj.orderNo" :disabled="declareType !== 'add'" class="addObj-info" clearable placeholder="" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="é¶ä»¶å·:" prop="partNo"> |
| | | <el-input v-model="declareObj.partNo" :disabled="declareType !== 'add'" class="addObj-info" clearable placeholder="" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="é¶ä»¶æè¿°:" prop="partDesc"> |
| | | <el-input v-model="declareObj.partDesc" :disabled="declareType !== 'add'" class="addObj-info" clearable placeholder="" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="æµè¾¾çéè´æ°é:" prop="qtyArrived"> |
| | | <el-input v-model="declareObj.qtyArrived" :disabled="declareType !== 'add'" class="addObj-info" clearable placeholder="" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item v-if="declareType !== 'add'" class="declareObj-form-item" label="ä¾åºåç¼å·:" prop="supplierId"> |
| | | <el-input v-model="declareObj.supplierId" :disabled="declareType !== 'add'" class="addObj-info" clearable placeholder="" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="ä¾åºååç§°:" prop="supplierName"> |
| | | <el-input v-model="declareObj.supplierName" :disabled="declareType !== 'add'" class="addObj-info" clearable placeholder="" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="æ¹å·:" prop="updateBatchNo"> |
| | | <el-input v-model="declareObj.updateBatchNo" class="addObj-info" clearable size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item v-if="declareType !== 'add'" class="declareObj-form-item" label="åºä½å·:" prop="locationNo"> |
| | | <el-input v-model="declareObj.locationNo" :disabled="declareType !== 'add'" class="addObj-info" clearable size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item v-if="declareType !== 'add'" class="declareObj-form-item" label="æ¥æ¶æ¶é´:" prop="receiverDate"> |
| | | <el-input v-model="declareObj.receiverDate" class="addObj-info" clearable disabled size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="åä½:" prop="buyUnitMeas"> |
| | | <el-input v-model="declareObj.buyUnitMeas" :disabled="declareType !== 'add'" class="addObj-info" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="ç©æç±»åï¼" prop="isExpire"> |
| | | <el-select v-model="declareObj.isExpire" prop="isExpire" |
| | | :disabled="declareType !== 'add'" |
| | | clearable size="small"> |
| | | <el-option :value="1" label="è¿æç©æ"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-row> |
| | | <el-button @click="resetForm">å æ¶</el-button> |
| | | <el-button :loading="submitDeclareLoading" type="primary" @click="submitDeclare">ç¡® å®</el-button> |
| | | </el-row> |
| | | </span> |
| | | </el-dialog> |
| | | <!-- å 餿¥æ£ --> |
| | | <el-dialog :visible.sync="deleteVisible" title="确认å é¤" width="30%"> |
| | | <p style="font-size:16px;color:#333333">æ¯å¦ç¡®è®¤å é¤ï¼</p> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-row> |
| | | <el-button @click="deleteVisible = false">å æ¶</el-button> |
| | | <el-button :loading="deleteLoading" type="primary" @click="submitDelete">ç¡® å®</el-button> |
| | | </el-row> |
| | | </span> |
| | | </el-dialog> |
| | | <!-- æ¤éæ¥æ£ --> |
| | | <el-dialog :visible.sync="declareDialogVisible1" title="æ¥æ£æ¤é" width="30%"> |
| | | <p style="font-size:16px;color:#333333">æ¹å·<span |
| | | style="color:#34BD66">{{insOrderRow.updateBatchNo}}</span>çä¿¡æ¯æ¯å¦<span style="color: #FF4902">æ¤éæ¥æ£</span></p> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-row> |
| | | <el-button @click="declareDialogVisible1 = false">å æ¶</el-button> |
| | | <el-button :loading="upLoad" type="primary" @click="submitDeclare1">ç¡® å®</el-button> |
| | | </el-row> |
| | | </span> |
| | | </el-dialog> |
| | | <!--æ°æ®æ¥çå¼¹æ¡--> |
| | | <data-look-visible v-if="dataDialogVisible" ref="dataDialogVisible" |
| | | :dataDialogVisible="dataDialogVisible" |
| | | :dataLookInfo="dataLookInfo" @closeDataLook="closeDataLook"></data-look-visible> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import ValueTable from "@/components/Table/value-table.vue"; |
| | | import DataLookVisible from "@/components/rawMaterialInspection/dataLookVisible.vue"; |
| | | import {getUser} from "@/api/system/user"; |
| | | import {getWarehouseSubmit} from '@/api/business/materialInspection' |
| | | |
| | | export default { |
| | | // import å¼å
¥çç»ä»¶éè¦æ³¨å
¥å°å¯¹è±¡ä¸æè½ä½¿ç¨ |
| | | components: {DataLookVisible, ValueTable}, |
| | | data() { |
| | | // è¿éåæ¾æ°æ® |
| | | return { |
| | | entity: { |
| | | date: null |
| | | }, |
| | | more:false, |
| | | isShowIFS: false, |
| | | declareObj: { |
| | | id: null, |
| | | orderNo: '', // 订åå· |
| | | partNo: '', // é¶ä»¶å· |
| | | partDesc: '', // é¶ä»¶æè¿° |
| | | qtyArrived: '', // æµè¾¾çéè´æ°é |
| | | supplierId: '', // ä¾åºåç¼å· |
| | | supplierName: '', // ä¾åºååç§° |
| | | updateBatchNo: '', // æ¹å· |
| | | locationNo: '', // åºä½å· |
| | | receiverDate: '', // æ¥æ¶æ¶é´ |
| | | buyUnitMeas: '', // åä½ |
| | | isExpire: '', // åä½ |
| | | }, |
| | | componentData: { // è¡¨æ ¼æ°æ® |
| | | entity: { |
| | | updateBatchNo: null, |
| | | partNo: null, |
| | | partDesc: null, |
| | | supplierName: null, |
| | | isInspect: 0, |
| | | }, |
| | | isIndex: true, |
| | | showSelect: true, |
| | | select: true, |
| | | selectMethod: 'selectMethod', |
| | | do: [ |
| | | { |
| | | font: 'æ¥æ£', |
| | | type: 'text', |
| | | method: 'declare' |
| | | }, |
| | | { |
| | | font: 'å é¤', |
| | | type: 'text', |
| | | method: 'deleteMaterial' |
| | | } |
| | | ], |
| | | tagField: { |
| | | isExpire: { |
| | | select: [{ |
| | | value: 1, |
| | | label: 'è¿æç©æ', |
| | | type: 'warning' |
| | | }] |
| | | } |
| | | }, |
| | | selectField: {}, |
| | | requiredAdd: [], |
| | | requiredUp: [] |
| | | }, |
| | | declareDialogVisible1: false, |
| | | upLoad: false, |
| | | componentData1: { |
| | | entity: { |
| | | updateBatchNo: null, |
| | | partDesc: null, |
| | | state: 0, |
| | | isInspect: 1, |
| | | partNo: null, |
| | | supplierName: null, |
| | | }, |
| | | isIndex: true, |
| | | showSelect: false, |
| | | select: false, |
| | | selectMethod:'selectMethod', |
| | | do: [ |
| | | { |
| | | font: 'æ¤éæ¥æ£', |
| | | type: 'text', |
| | | method: 'cancelDeclare', |
| | | }, |
| | | ], |
| | | tagField: { |
| | | isExpire: { |
| | | select: [{ |
| | | value: 1, |
| | | label: 'è¿æç©æ', |
| | | type: 'warning' |
| | | }] |
| | | }, |
| | | }, |
| | | selectField: {}, |
| | | requiredAdd: [], |
| | | requiredUp: [] |
| | | }, |
| | | componentData2: { |
| | | entity: { |
| | | orderBy: { |
| | | field: 'sendTime', |
| | | order: 'desc' |
| | | }, |
| | | updateBatchNo: null, |
| | | partNo: null, |
| | | partDesc: null, |
| | | supplierName: null, |
| | | beginDeclareDate: null, |
| | | endDeclareDate: null, |
| | | }, |
| | | isIndex: true, |
| | | showSelect: true, |
| | | select: true, |
| | | selectMethod:'selectMethod', |
| | | do: [ |
| | | { |
| | | id: 'dataLook', |
| | | font: 'æ°æ®æ¥ç', |
| | | type: 'text', |
| | | method: 'handleDataLook', |
| | | } |
| | | ], |
| | | tagField: { |
| | | inspectStatus: { |
| | | select: [{ |
| | | value: 0, |
| | | label: 'æ£éªä¸', |
| | | type: 'warning' |
| | | },{ |
| | | value: 1, |
| | | label: 'åæ ¼', |
| | | type: 'success' |
| | | },{ |
| | | value: 2, |
| | | label: 'ä¸åæ ¼', |
| | | type: 'danger' |
| | | },{ |
| | | value: 3, |
| | | label: 'æªä¸å', |
| | | type: 'info' |
| | | },{ |
| | | value: 3, |
| | | label: 'è®©æ¥æ¾è¡', |
| | | type: '' |
| | | }] |
| | | }, |
| | | isExemption: { |
| | | select: [{ |
| | | value: 1, |
| | | label: 'å
æ£', |
| | | type: 'success' |
| | | }] |
| | | }, |
| | | isExpire: { |
| | | select: [{ |
| | | value: 1, |
| | | label: 'è¿æç©æ', |
| | | type: 'warning' |
| | | }] |
| | | }, |
| | | }, |
| | | selectField: {}, |
| | | requiredAdd: [], |
| | | requiredUp: [], |
| | | needSort: ['sendTime', 'receiverDate', 'declareDate'] |
| | | }, |
| | | componentData4: { |
| | | entity: { |
| | | orderBy: { |
| | | field: 'id', |
| | | order: 'desc' |
| | | }, |
| | | updateBatchNo: null, |
| | | partNo: null, |
| | | partDesc: null, |
| | | supplierName: null, |
| | | inspectStatus: null, |
| | | beginDeclareDate: null, |
| | | endDeclareDate: null, |
| | | }, |
| | | isIndex: true, |
| | | showSelect: true, |
| | | select: true, |
| | | selectMethod:'selectMethod', |
| | | do: [ |
| | | { |
| | | id: 'dataLook', |
| | | font: 'æ°æ®æ¥ç', |
| | | type: 'text', |
| | | method: 'handleDataLook', |
| | | }, |
| | | { |
| | | id: '', |
| | | font: 'æ¾è¡', |
| | | type: 'text', |
| | | method: 'goPass', |
| | | disabFun: (row, index) => { |
| | | return row.inspectStatus != 2 |
| | | } |
| | | }, |
| | | { |
| | | id: '', |
| | | font: 'æåå
¥åº', |
| | | type: 'text', |
| | | method: 'advancedGodown', |
| | | disabFun: (row, index) => { |
| | | return row.inspectStatus != 0 && row.inspectStatus != 3 |
| | | } |
| | | } |
| | | ], |
| | | tagField: { |
| | | inspectStatus: { |
| | | select: [{ |
| | | value: 0, |
| | | label: 'æ£éªä¸', |
| | | type: 'warning' |
| | | },{ |
| | | value: 1, |
| | | label: 'åæ ¼', |
| | | type: 'success' |
| | | },{ |
| | | value: 2, |
| | | label: 'ä¸åæ ¼', |
| | | type: 'danger' |
| | | },{ |
| | | value: 3, |
| | | label: 'æªä¸å', |
| | | type: 'info' |
| | | },{ |
| | | value: 4, |
| | | label: 'è®©æ¥æ¾è¡', |
| | | type: '' |
| | | }] |
| | | }, |
| | | isExemption: { |
| | | select: [{ |
| | | value: 1, |
| | | label: 'å
æ£', |
| | | type: 'success' |
| | | }] |
| | | }, |
| | | isExpire: { |
| | | select: [{ |
| | | value: 1, |
| | | label: 'è¿æç©æ', |
| | | type: 'warning' |
| | | }] |
| | | }, |
| | | }, |
| | | selectField: {}, |
| | | requiredAdd: [], |
| | | requiredUp: [], |
| | | needSort: ['sendTime', 'receiverDate', 'declareDate'] |
| | | }, |
| | | upIndex: 0, |
| | | multipleSelection: [], |
| | | entityCopy: {}, |
| | | currentId: null, |
| | | btnLoading: false, // è·åIFS订åæé®loading |
| | | insOrderRow: {}, |
| | | declareDialogVisible: false, // ç¡®è®¤æ¥æ£å¼¹æ¡ |
| | | submitDeclareLoading: false, // æäº¤æ¥æ£å¼¹æ¡æé®loading |
| | | declareDialogSVisible: false, |
| | | declareObjRules: { |
| | | orderNo: [ |
| | | { required: false, message: '请填å订åå·', trigger: 'blur' } |
| | | ], |
| | | partNo: [ |
| | | { required: true, message: '请填åé¶ä»¶å·', trigger: 'blur' } |
| | | ], |
| | | partDesc: [ |
| | | { required: true, message: '请填åé¶ä»¶æè¿°', trigger: 'blur' } |
| | | ], |
| | | qtyArrived: [ |
| | | { required: false, message: 'è¯·å¡«åæµè¾¾çéè´æ°é', trigger: 'blur' } |
| | | ], |
| | | supplierName: [ |
| | | { required: true, message: '请填åä¾åºååç§°', trigger: 'blur' } |
| | | ], |
| | | updateBatchNo: [ |
| | | { required: true, message: 'è¯·å¡«åæ¹å·', trigger: 'blur' } |
| | | ], |
| | | locationNo: [ |
| | | { required: false, message: '请填ååºä½å·', trigger: 'blur' } |
| | | ], |
| | | buyUnitMeas: [ |
| | | { required: false, message: '请填ååä½', trigger: 'blur' } |
| | | ], |
| | | }, |
| | | tabList: [ |
| | | { |
| | | label: 'å¾
æ¥æ£', |
| | | value: 0 |
| | | }, |
| | | { |
| | | label: 'å¾
ä¸å', |
| | | value: 1 |
| | | }, |
| | | { |
| | | label: '已宿', |
| | | value: 3 |
| | | }, |
| | | { |
| | | label: 'å
¨é¨', |
| | | value: 4 |
| | | } |
| | | ], |
| | | tabIndex: 0, |
| | | deleteVisible: false, // å 餿¥æ£å¼¹æ¡ |
| | | deleteLoading: false, // å 餿¥æ£æé® |
| | | entityCopy1: {}, |
| | | entityCopy2: {}, |
| | | entityCopy4: {}, |
| | | dataDialogVisible: false, // æ°æ®æ¥çå¼¹æ¡ |
| | | dataLookInfo: {}, // æ°æ®æ¥çå¼¹æ¡æ°æ® |
| | | declareType: '', // æä½æ¥æ£çç±»å |
| | | queryStatusList: [ |
| | | {label: 'æ£éªä¸', value: 0}, |
| | | {label: 'åæ ¼', value: 1}, |
| | | {label: 'ä¸åæ ¼', value: 2}, |
| | | {label: 'æªä¸å', value: 3}, |
| | | {label: 'è®©æ¥æ¾è¡', value: 4}, |
| | | ], |
| | | outLoading:false |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.entityCopy = this.HaveJson(this.componentData.entity) |
| | | this.entityCopy1 = this.HaveJson(this.componentData1.entity) |
| | | this.entityCopy2 = this.HaveJson(this.componentData2.entity) |
| | | this.entityCopy4 = this.HaveJson(this.componentData4.entity) |
| | | this.getPower() |
| | | }, |
| | | // æ¹æ³éå |
| | | methods: { |
| | | // æå¼æ¤éæ¥æ£å¼¹æ¡ |
| | | cancelDeclare (row) { |
| | | this.declareDialogVisible1 = true |
| | | this.insOrderRow = row |
| | | }, |
| | | // æäº¤æ¤éæ¥æ£ç³è¯· |
| | | submitDeclare1 () { |
| | | this.$axios.post(this.$api.rawMaterialOrder.revokeInspectionReport, { |
| | | id: this.insOrderRow.id |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.declareDialogVisible1 = false |
| | | this.refreshTable('page') |
| | | this.$message.success("æ¤éæ¥æ£æå") |
| | | } |
| | | }).catch(err => { |
| | | console.log(err) |
| | | }) |
| | | }, |
| | | // 忢tabè¡¨æ ¼ |
| | | handleTab(m, i) { |
| | | this.tabIndex = m.value; |
| | | this.componentData.entity.isInspect = this.tabIndex |
| | | if (this.tabIndex === 0) { |
| | | this.componentData.do = [ |
| | | { |
| | | font: 'æ¥æ£', |
| | | type: 'text', |
| | | method: 'declare' |
| | | }, |
| | | { |
| | | font: 'å é¤', |
| | | type: 'text', |
| | | method: 'deleteMaterial' |
| | | } |
| | | ] |
| | | } else if (this.tabIndex === 1) { |
| | | this.componentData.do = [] |
| | | } |
| | | this.refreshTable() |
| | | }, |
| | | // è·åæé |
| | | getPower() { |
| | | let power = JSON.parse(sessionStorage.getItem('power')) |
| | | let getIFS = false |
| | | for (var i = 0; i < power.length; i++) { |
| | | if (power[i].menuMethod == 'getIfsOrder') { // è·åIFSçæé |
| | | getIFS = true |
| | | } |
| | | } |
| | | this.isShowIFS = getIFS |
| | | }, |
| | | // æ¥è¯¢åè° |
| | | refreshTable(e) { |
| | | if (this.tabIndex === 0) { |
| | | this.componentData.entity.isInspect = this.tabIndex |
| | | this.$refs.ValueTable.selectList(e) |
| | | } else if (this.tabIndex === 1) { |
| | | this.componentData1.entity.updateBatchNo = this.componentData.entity.updateBatchNo |
| | | this.componentData1.entity.partNo = this.componentData.entity.partNo |
| | | this.componentData1.entity.partDesc = this.componentData.entity.partDesc |
| | | this.componentData1.entity.supplierName = this.componentData.entity.supplierName |
| | | this.$refs['ValueTable1'].selectList(e) |
| | | } else if (this.tabIndex === 3) { |
| | | this.componentData2.entity.updateBatchNo = this.componentData.entity.updateBatchNo |
| | | this.componentData2.entity.partNo = this.componentData.entity.partNo |
| | | this.componentData2.entity.partDesc = this.componentData.entity.partDesc |
| | | this.componentData2.entity.supplierName = this.componentData.entity.supplierName |
| | | this.componentData2.entity.inspectStatus = this.componentData4.entity.inspectStatus |
| | | if (this.entity.date !== null) { |
| | | this.componentData2.entity.beginDeclareDate = this.entity.date[0] + ' 00:00:00' |
| | | this.componentData2.entity.endDeclareDate = this.entity.date[1] + ' 23:59:59' |
| | | } else { |
| | | this.componentData2.entity.beginDeclareDate = '' |
| | | this.componentData2.entity.endDeclareDate = '' |
| | | } |
| | | this.$refs['ValueTable2'].selectList(e) |
| | | }else { |
| | | this.componentData4.entity.updateBatchNo = this.componentData.entity.updateBatchNo |
| | | this.componentData4.entity.partNo = this.componentData.entity.partNo |
| | | this.componentData4.entity.partDesc = this.componentData.entity.partDesc |
| | | this.componentData4.entity.supplierName = this.componentData.entity.supplierName |
| | | if (this.entity.date !== null) { |
| | | this.componentData4.entity.beginDeclareDate = this.entity.date[0] + ' 00:00:00' |
| | | this.componentData4.entity.endDeclareDate = this.entity.date[1] + ' 23:59:59' |
| | | } else { |
| | | this.componentData4.entity.beginDeclareDate = '' |
| | | this.componentData4.entity.endDeclareDate = '' |
| | | } |
| | | this.$refs['ValueTable4'].selectList(e) |
| | | } |
| | | }, |
| | | // éç½® |
| | | refresh() { |
| | | this.entity.date = null |
| | | this.componentData.entity = this.HaveJson(this.entityCopy) |
| | | if (this.tabIndex === 0) { |
| | | this.componentData.entity = this.HaveJson(this.entityCopy) |
| | | } else if (this.tabIndex === 1) { |
| | | this.componentData1.entity = this.HaveJson(this.entityCopy1) |
| | | } else if (this.tabIndex === 3) { |
| | | this.componentData2.entity = this.HaveJson(this.entityCopy2) |
| | | this.componentData4.entity = this.HaveJson(this.entityCopy4) |
| | | } else { |
| | | this.componentData4.entity = this.HaveJson(this.entityCopy4) |
| | | } |
| | | this.refreshTable() |
| | | }, |
| | | // æ°æ®æ¥ç |
| | | handleDataLook(row) { |
| | | this.dataDialogVisible = true; |
| | | this.dataLookInfo = row |
| | | }, |
| | | // ç´æ¥æ¾è¡ |
| | | goPass (row) { |
| | | this.$confirm('æ¯å¦æ¾è¡å½åæ°æ®?', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | this.$axios.post(this.$api.materialInspection.concessionRelease+'?ifsInventoryId='+row.id).then(res => { |
| | | if (res.code === 200) { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: 'æ¾è¡æå!' |
| | | }); |
| | | this.refresh() |
| | | } |
| | | }) |
| | | }).catch(() => { |
| | | this.$message({ |
| | | type: 'error', |
| | | message: 'æ¾è¡å¤±è´¥' |
| | | }); |
| | | }); |
| | | }, |
| | | // æåå
¥åº |
| | | advancedGodown (row) { |
| | | this.$confirm('å½ååæææ¯å¦æåå
¥åº?', 'æç¤º', { |
| | | confirmButtonText: 'ç¡®å®', |
| | | cancelButtonText: 'åæ¶', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | this.$axios.post(this.$api.materialInspection.advancedGodown+'?ifsInventoryId='+row.id).then(res => { |
| | | if (res.code === 200) { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: 'æä½æå!' |
| | | }); |
| | | this.refresh() |
| | | } |
| | | }) |
| | | }).catch(() => { |
| | | this.$message({ |
| | | type: 'error', |
| | | message: 'æä½å¤±è´¥' |
| | | }); |
| | | }); |
| | | }, |
| | | // å
³éæ°æ®æ¥çå¼¹æ¡ |
| | | closeDataLook () { |
| | | this.dataDialogVisible = false |
| | | }, |
| | | // æå¨æ¥æ£ |
| | | addDeclare () { |
| | | this.clear() |
| | | this.declareDialogVisible = true |
| | | this.declareType = 'add' |
| | | }, |
| | | declareS () { |
| | | if (this.multipleSelection.length > 0) { |
| | | this.declareDialogSVisible = true |
| | | } else { |
| | | this.$message.error('è¯·éæ©éè¦æ¥æ£çæ°æ®') |
| | | } |
| | | }, |
| | | submitDeclareS () { |
| | | let ids = [] |
| | | this.multipleSelection.forEach(item => { |
| | | ids.push(item.id) |
| | | }) |
| | | this.declareDialogSVisible = true |
| | | this.$axios.post(this.$api.rawMaterialOrder.inspectionReport, { |
| | | ids: ids |
| | | }, { |
| | | headers: { |
| | | 'Content-Type': 'application/json' |
| | | } |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.declareDialogSVisible = false |
| | | this.$message.success('æ¥æ£æå') |
| | | this.refresh() |
| | | } |
| | | this.submitDeclareLoading = false |
| | | }).catch(err => { |
| | | this.submitDeclareLoading = false |
| | | console.log(err) |
| | | }) |
| | | }, |
| | | // æå¼æ¥æ£ç¡®è®¤å¼¹æ¡ |
| | | declare(row) { |
| | | this.declareObj = {...row} |
| | | this.declareDialogVisible = true |
| | | this.declareType = 'edit' |
| | | }, |
| | | // æäº¤æ¥æ£ |
| | | submitDeclare () { |
| | | if (this.declareType === 'add') { |
| | | this.$refs['declareObj'].validate((valid) => { |
| | | if (valid) { |
| | | this.$axios.post(this.$api.rawMaterialOrder.addIfsInventoryQuantity, |
| | | this.declareObj |
| | | , { |
| | | headers: { |
| | | 'Content-Type': 'application/json' |
| | | } |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.declareDialogVisible = false |
| | | this.$message.success('æ¥æ£æå') |
| | | this.refresh() |
| | | } |
| | | }).catch(err => { |
| | | console.log(err) |
| | | }) |
| | | } else { |
| | | console.log('error submit!!'); |
| | | return false; |
| | | } |
| | | }); |
| | | } else { |
| | | this.$refs['declareObj'].validate((valid) => { |
| | | if (valid) { |
| | | this.$axios.post(this.$api.rawMaterialOrder.inspectionReportOne, { |
| | | id: this.declareObj.id, |
| | | updateBatchNo: this.declareObj.updateBatchNo |
| | | }, { |
| | | headers: { |
| | | 'Content-Type': 'application/json' |
| | | } |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.declareDialogVisible = false |
| | | this.$message.success('æ¥æ£æå') |
| | | this.refresh() |
| | | } |
| | | }).catch(err => { |
| | | console.log(err) |
| | | }) |
| | | } else { |
| | | console.log('error submit!!'); |
| | | return false; |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | resetForm () { |
| | | this.$refs['declareObj'].resetFields(); |
| | | this.declareDialogVisible = false |
| | | }, |
| | | // æå¼å é¤å¼¹æ¡ |
| | | deleteMaterial (row) { |
| | | this.deleteVisible = true |
| | | this.deleteInfo = row |
| | | }, |
| | | // 确认å é¤ |
| | | submitDelete () { |
| | | this.deleteLoading = true |
| | | this.$axios.post(this.$api.rawMaterialOrder.delIfsInventory + '?id=' + this.deleteInfo.id).then(res => { |
| | | if (res.code === 200) { |
| | | this.deleteVisible = false |
| | | this.$message.success('å 餿å') |
| | | this.refresh() |
| | | } |
| | | this.deleteLoading = false |
| | | }).catch(err => { |
| | | console.log(err) |
| | | this.deleteLoading = false |
| | | }) |
| | | }, |
| | | // è¡¨æ ¼éæ©æ¹æ³ |
| | | selectMethod(val) { |
| | | this.multipleSelection = val |
| | | }, |
| | | // è·åIFSæé®åè° |
| | | openIFS() { |
| | | this.btnLoading = true |
| | | this.$axios.post(this.$api.materialInspection.getIfsOrder).then(res => { |
| | | if (res.code === 200) { |
| | | this.refresh() |
| | | } |
| | | this.btnLoading = false |
| | | }).catch(err => { |
| | | this.btnLoading = false |
| | | console.log(err) |
| | | }) |
| | | }, |
| | | changeRowClass({row, rowIndex}) { |
| | | if (row.isFirst == 1) { |
| | | return 'highlight-danger-row-border' |
| | | } |
| | | return '' |
| | | }, |
| | | getStyle() { |
| | | return 'height: calc(100% - ' + (this.more ? '94' : '44') + 'px)' |
| | | }, |
| | | getWarehouseSubmitApi () { |
| | | const row = {} |
| | | getWarehouseSubmit(row).then(response => { |
| | | |
| | | }) |
| | | }, |
| | | // å
¨é¨å¯¼åº |
| | | handleDown(){ |
| | | let entity = {...this.componentData4.entity} |
| | | delete entity.orderBy |
| | | this.outLoading = true |
| | | this.$axios.post(this.$api.rawMaterialOrder.rawAllExport,{ |
| | | entity:entity |
| | | },{ |
| | | headers: { |
| | | 'Content-Type': 'application/json' |
| | | } |
| | | ,responseType: "blob"}).then(res => { |
| | | this.outLoading = false |
| | | this.$message.success('å¯¼åºæå') |
| | | const blob = new Blob([res],{ type: 'application/octet-stream' }); |
| | | const url = URL.createObjectURL(blob); |
| | | const link = document.createElement('a'); |
| | | link.href = url; |
| | | link.download = 'åæææ£æµä¿¡æ¯å¯¼åº.xlsx'; |
| | | link.click(); |
| | | }) |
| | | }, |
| | | clear() { |
| | | this.declareObj = { |
| | | id: null, |
| | | orderNo: '', // 订åå· |
| | | partNo: '', // é¶ä»¶å· |
| | | partDesc: '', // é¶ä»¶æè¿° |
| | | qtyArrived: '', // æµè¾¾çéè´æ°é |
| | | supplierId: '', // ä¾åºåç¼å· |
| | | supplierName: '', // ä¾åºååç§° |
| | | updateBatchNo: '', // æ¹å· |
| | | locationNo: '', // åºä½å· |
| | | receiverDate: '', // æ¥æ¶æ¶é´ |
| | | buyUnitMeas: '', // åä½ |
| | | isExpire: '', // åä½ |
| | | } |
| | | } |
| | | }, |
| | | } |
| | | </script> |
| | | |
| | | <style scoped lang="scss"> |
| | | .app-container { |
| | | padding-top: 0; |
| | | } |
| | | .title { |
| | | height: 60px; |
| | | line-height: 60px; |
| | | } |
| | | |
| | | .tab { |
| | | list-style-type: none; |
| | | display: flex; |
| | | margin-bottom: 12px; |
| | | margin-top: 0; |
| | | padding-left: 0; |
| | | } |
| | | |
| | | .tab li { |
| | | line-height: 24px; |
| | | padding: 6px 14px; |
| | | font-size: 14px; |
| | | color: #333333; |
| | | border: 1px solid #EEEEEE; |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .tab li:nth-child(1) { |
| | | border-radius: 8px 0 0 8px; |
| | | } |
| | | |
| | | .tab li:nth-child(4) { |
| | | border-radius: 0 8px 8px 0; |
| | | } |
| | | |
| | | .tab li.active { |
| | | border-color: #3A7BFA; |
| | | color: #3A7BFA; |
| | | } |
| | | </style> |