| | |
| | | responseType: "blob", |
| | | }); |
| | | } |
| | | |
| | | // äºæ¬¡æ¥æ£/è¿ææ¥æ£æ°å¢/ç¼è¾ |
| | | export function addIfsInventory(query) { |
| | | return request({ |
| | | url: "/ifsInventoryQuantity/addIfsInventory", |
| | | method: "post", |
| | | data: query, |
| | | }); |
| | | } |
| | | |
| | | // äºæ¬¡æ¥æ£/è¿ææ¥æ£å é¤ |
| | | export function ifsInventoryQuantityDelIfsInventory(query) { |
| | | return request({ |
| | | url: "/ifsInventoryQuantity/delIfsInventory", |
| | | method: "delete", |
| | | params: query, |
| | | }); |
| | | } |
| | |
| | | .lims-table .highlight-danger-row-border td:last-child { |
| | | border-right: 4px solid #f56c6c; |
| | | } |
| | | |
| | | >>>.is-disabled { |
| | | color: #C0C4CC !important; |
| | | } |
| | | </style> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <el-dialog :close-on-click-modal="false" :title="title" :visible.sync="declareDialogVisible" width="800px" |
| | | @close="resetFormData"> |
| | | <el-form ref="declareObj" :inline="true" :model="declareObj" :rules="declareObjRules" label-width="130px" |
| | | label-position="right"> |
| | | <el-form-item class="declareObj-form-item" label="订åå·:" prop="orderNo"> |
| | | <el-input v-model="declareObj.orderNo" 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" 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" 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" class="addObj-info" clearable placeholder="" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="ä¾åºåç¼å·:" prop="supplierId"> |
| | | <el-input v-model="declareObj.supplierId" 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" 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 class="declareObj-form-item" label="åºä½å·:" prop="locationNo"> |
| | | <el-input v-model="declareObj.locationNo" class="addObj-info" clearable size="small"></el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item 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" clearable class="addObj-info" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="è¿ææ¶é´ï¼" prop="expirationTime"> |
| | | <el-date-picker v-model="declareObj.expirationTime" type="date" placeholder="éæ©æ¥æ" size="small" |
| | | format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 100%;"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="ä¾åºåæ¹å·:" prop="supplierNumber"> |
| | | <el-input v-model="declareObj.supplierNumber" clearable class="addObj-info" size="small"></el-input> |
| | | </el-form-item> |
| | | <el-form-item class="declareObj-form-item" label="æ¥æ£ç±»å:" prop="inspectionType"> |
| | | <el-select v-model="declareObj.inspectionType" clearable class="addObj-info" size="small" placeholder="è¯·éæ©æ¥æ£ç±»å" |
| | | disabled> |
| | | <el-option v-for="item in dict.type.inspection_type" :key="item.value" :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-row> |
| | | <el-button @click="resetFormData">å æ¶</el-button> |
| | | <el-button :loading="submitDeclareLoading" type="primary" @click="submitDeclare">ç¡®è®¤æ¥æ£</el-button> |
| | | </el-row> |
| | | </span> |
| | | </el-dialog> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | | addIfsInventory |
| | | } from "@/api/business/materialInspection"; |
| | | export default { |
| | | props: ['title'], |
| | | dicts: ["inspection_type"], |
| | | data() { |
| | | return { |
| | | submitDeclareLoading: false, |
| | | declareDialogVisible: false, |
| | | declareObj: {}, |
| | | 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' } |
| | | ], |
| | | inspectionType: [ |
| | | { required: true, message: 'è¯·å¡«åæ¥æ£ç±»å', trigger: 'change' } |
| | | ], |
| | | }, |
| | | } |
| | | }, |
| | | methods: { |
| | | resetFormData() { |
| | | this.$refs['declareObj'].resetFields(); |
| | | this.declareDialogVisible = false |
| | | }, |
| | | submitDeclare() { |
| | | this.$refs['declareObj'].validate((valid) => { |
| | | if (valid) { |
| | | this.submitDeclareLoading = true |
| | | addIfsInventory(this.declareObj).then(res => { |
| | | this.submitDeclareLoading = false |
| | | if (res.code === 200) { |
| | | this.declareDialogVisible = false |
| | | this.$message.success('æäº¤æå') |
| | | this.$emit('refreshTable') |
| | | } |
| | | }).catch(err => { |
| | | console.log(err) |
| | | this.submitDeclareLoading = false |
| | | }) |
| | | } else { |
| | | console.log('error submit!!'); |
| | | return false; |
| | | } |
| | | }); |
| | | }, |
| | | open(type, row) { |
| | | if (row) { |
| | | this.declareObj = row; |
| | | } else { |
| | | this.declareObj = {} |
| | | this.declareObj.inspectionType = String(type) |
| | | } |
| | | this.declareDialogVisible = true |
| | | }, |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style></style> |
| | |
| | | </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="æ¡ä»¶" min-width="140" prop="radius" show-overflow-tooltip></el-table-column> |
| | | <el-table-column label="è¯éªæ¡ä»¶" min-width="140" prop="radius" show-overflow-tooltip></el-table-column> |
| | | <el-table-column label="è¯éªæ¹æ³" min-width="120" prop="methodS" show-overflow-tooltip> |
| | | <template slot="header" slot-scope="scope"> |
| | | <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px"> |
| | |
| | | <el-form-item label="æ¥æ£ç±»å" prop="inspectionType"> |
| | | <el-select v-model="entity.inspectionType" clearable placeholder="è¯·éæ©" size="small" @change="refreshTable" |
| | | style="width: 100%"> |
| | | <el-option label="åè¾
æ" value="åè¾
æ"></el-option> |
| | | <el-option label="å
æ" value="å
æ"></el-option> |
| | | <!-- <el-option label="åè¾
æ" value="åè¾
æ"></el-option> |
| | | <el-option label="å
æ" value="å
æ"></el-option> --> |
| | | <el-option v-for="item in dict.type.inspection_type" :key="item.value" :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | |
| | | @click="handleOut">导åº</el-button> |
| | | <!-- <el-button v-if="tabIndex === 0" size="small" type="primary" @click="copper">éææä¸å</el-button> --> |
| | | <el-button v-if="tabIndex !== 0" size="small" type="primary" @click="openPrint">æ ç¾æå°</el-button> |
| | | <el-button v-if="tabIndex === 0" size="small" type="primary" |
| | | @click="opendeclareDialog(2, 'äºæ¬¡æ¥æ£')">äºæ¬¡æ¥æ£</el-button> |
| | | <el-button v-if="tabIndex === 0" size="small" type="primary" |
| | | @click="opendeclareDialog(3, 'è¿ææ¥æ£')">è¿ææ¥æ£</el-button> |
| | | </div> |
| | | </div> |
| | | <!--å¾
ä¸å--> |
| | |
| | | <!-- :sonLaboratory="'åè¾
æ'" :state="state"--> |
| | | <!-- :typeSource="typeSource"--> |
| | | <!-- @goback="goback" @refreshView="refreshView"/>--> |
| | | <!-- è¿ææ¥æ£/äºæ¬¡æ¥æ£ --> |
| | | <declareDialog ref="declareDialog" :title="declareTitle" @refreshTable="refreshTable" /> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | revokeInspectionReport, |
| | | updateEntrustCode |
| | | } from "@/api/business/rawMaterialOrder"; |
| | | import { getWarehouseSubmit } from "@/api/business/materialInspection"; |
| | | import { getWarehouseSubmit, ifsInventoryQuantityDelIfsInventory } from "@/api/business/materialInspection"; |
| | | import { mapGetters } from "vuex"; |
| | | import declareDialog from './components/declareDialog.vue' |
| | | // import Inspection from "../do/b1-inspect-order-plan/Inspection.vue"; |
| | | |
| | | export default { |
| | | name: "MaterialOrder", |
| | | dicts: ["inspection_type"], |
| | | // import å¼å
¥çç»ä»¶éè¦æ³¨å
¥å°å¯¹è±¡ä¸æè½ä½¿ç¨ |
| | | components: { limsTable, DownFileDialog, FilesLookVisible, DataLookVisible, ShowInfo, PrintDialog }, |
| | | components: { limsTable, DownFileDialog, FilesLookVisible, DataLookVisible, ShowInfo, PrintDialog, declareDialog }, |
| | | data() { |
| | | // è¿éåæ¾æ°æ® |
| | | return { |
| | | inspectionTypeList: [], |
| | | declareTitle: '', |
| | | tableData: [], |
| | | tableLoading: false, |
| | | column: [ |
| | | { label: 'æ¹å·', prop: 'updateBatchNo' }, |
| | | { label: 'é¶ä»¶å·', prop: 'partNo' }, |
| | | { label: 'é¶ä»¶æè¿°', prop: 'partDesc' }, |
| | | { label: 'æ¥æ£ç±»å', prop: 'inspectionType' }, |
| | | { |
| | | label: 'æ¥æ£ç±»å', prop: 'inspectionType', |
| | | dataType: 'tag', |
| | | label: 'ç©æç±»å', |
| | | prop: 'isExpire', |
| | | formatData: (params) => { |
| | | if (params == 1) { |
| | | return 'è¿æç©æ' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.label |
| | | } |
| | | }, |
| | | formatType: (params) => { |
| | | if (params == 1) { |
| | | return 'info' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.raw.listClass |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | label: 'è¿ææ¶é´', |
| | | prop: 'expirationTime', |
| | | }, |
| | | { label: 'æµè¾¾çéè´æ°é', prop: 'qtyArrived' }, |
| | | { label: 'åä½', prop: 'buyUnitMeas' }, |
| | |
| | | type: 'text', |
| | | clickFun: (row) => { |
| | | this.exemption(row); |
| | | }, |
| | | }, |
| | | { |
| | | name: 'å é¤', |
| | | type: 'text', |
| | | clickFun: (row) => { |
| | | this.$confirm("æ¯å¦å é¤è¯¥æ¡æ°æ®?", "æç¤º", { |
| | | confirmButtonText: "ç¡®å®", |
| | | cancelButtonText: "åæ¶", |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | ifsInventoryQuantityDelIfsInventory({ id: row.id }).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$message.success("å 餿å"); |
| | | this.refreshTable() |
| | | } |
| | | }); |
| | | }) |
| | | .catch(() => { }); |
| | | }, |
| | | disabled: (row) => { |
| | | return !row.inspectionType || row.inspectionType < 2 |
| | | }, |
| | | }, |
| | | { |
| | | name: 'ç¼è¾', |
| | | type: 'text', |
| | | clickFun: (row) => { |
| | | this.declareTitle = row.inspectionType == 2 ? 'äºæ¬¡æ¥æ£' : 'è¿ææ¥æ£' |
| | | this.$refs.declareDialog.open(row.inspectionType, row) |
| | | }, |
| | | disabled: (row) => { |
| | | return !row.inspectionType || row.inspectionType < 2 |
| | | }, |
| | | }, |
| | | // { |
| | |
| | | { label: 'æ ·ååå·', prop: 'sampleModel' }, |
| | | { label: 'æ£éªäºº', prop: 'userName' }, |
| | | { label: 'ä¸åæ¶é´', prop: 'sendTime' }, |
| | | { label: 'æ¥æ£ç±»å', prop: 'inspectionType' }, |
| | | { |
| | | label: 'æ¥æ£ç±»å', prop: 'inspectionType', |
| | | dataType: 'tag', |
| | | label: 'ç©æç±»å', |
| | | prop: 'isExpire', |
| | | formatData: (params) => { |
| | | if (params == 1) { |
| | | return 'è¿æç©æ' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.label |
| | | } |
| | | }, |
| | | formatType: (params) => { |
| | | if (params == 1) { |
| | | return 'info' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.raw.listClass |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | label: 'è¿ææ¶é´', |
| | | prop: 'expirationTime', |
| | | }, |
| | | { label: 'æµè¾¾çéè´æ°é', prop: 'qtyArrived' }, |
| | | { label: 'åä½', prop: 'buyUnitMeas' }, |
| | |
| | | }, |
| | | { label: 'æ ·ååå·', prop: 'sampleModel' }, |
| | | { label: 'æ£éªäºº', prop: 'userName' }, |
| | | { label: 'æ¥æ£ç±»å', prop: 'inspectionType' }, |
| | | { |
| | | label: 'æ¥æ£ç±»å', prop: 'inspectionType', |
| | | dataType: 'tag', |
| | | label: 'ç©æç±»å', |
| | | prop: 'isExpire', |
| | | formatData: (params) => { |
| | | if (params == 1) { |
| | | return 'è¿æç©æ' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.label |
| | | } |
| | | }, |
| | | formatType: (params) => { |
| | | if (params == 1) { |
| | | return 'info' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.raw.listClass |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | label: 'è¿ææ¶é´', |
| | | prop: 'expirationTime', |
| | | }, |
| | | { label: 'åä½', prop: 'buyUnitMeas' }, |
| | | { label: 'æ¥æ¶æ¶é´', prop: 'receiverDate' }, |
| | |
| | | }, |
| | | { label: 'æ ·ååå·', prop: 'sampleModel' }, |
| | | { label: 'æ£éªäºº', prop: 'userName' }, |
| | | { label: 'æ¥æ£ç±»å', prop: 'inspectionType' }, |
| | | { |
| | | label: 'æ¥æ£ç±»å', prop: 'inspectionType', |
| | | dataType: 'tag', |
| | | label: 'ç©æç±»å', |
| | | prop: 'isExpire', |
| | | formatData: (params) => { |
| | | if (params == 1) { |
| | | return 'è¿æç©æ' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.label |
| | | } |
| | | }, |
| | | formatType: (params) => { |
| | | if (params == 1) { |
| | | return 'info' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.raw.listClass |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | label: 'è¿ææ¶é´', |
| | | prop: 'expirationTime', |
| | | }, |
| | | { label: 'åä½', prop: 'buyUnitMeas' }, |
| | | { label: 'æ¥æ¶æ¶é´', prop: 'receiverDate' }, |
| | |
| | | }, |
| | | { label: 'æ ·ååå·', prop: 'sampleModel' }, |
| | | { label: 'æ£éªäºº', prop: 'userName' }, |
| | | { label: 'æ¥æ£ç±»å', prop: 'inspectionType' }, |
| | | { |
| | | dataType: 'tag', |
| | | label: 'ç©æç±»å', |
| | | prop: 'isExpire', |
| | | label: 'æ¥æ£ç±»å', prop: 'inspectionType', dataType: 'tag', |
| | | formatData: (params) => { |
| | | if (params == 1) { |
| | | return 'è¿æç©æ' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.label |
| | | } |
| | | }, |
| | | formatType: (params) => { |
| | | if (params == 1) { |
| | | return 'info' |
| | | } else { |
| | | return null |
| | | let obj = this.inspectionTypeList.find(m => m.value == params) |
| | | if (obj) { |
| | | return obj.raw.listClass |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | label: 'è¿ææ¶é´', |
| | | prop: 'expirationTime', |
| | | }, |
| | | { label: 'åä½', prop: 'buyUnitMeas' }, |
| | | { label: 'æ¥æ¶æ¶é´', prop: 'receiverDate' }, |
| | |
| | | }, |
| | | mounted() { |
| | | this.refreshTable() |
| | | this.inspectionTypeList = this.dict.type.inspection_type; |
| | | }, |
| | | activated() { |
| | | this.refreshTable() |
| | |
| | | } |
| | | return '' |
| | | }, |
| | | opendeclareDialog(type, title) { |
| | | this.declareTitle = title |
| | | this.$refs.declareDialog.open(type) |
| | | } |
| | | }, |
| | | } |
| | | </script> |
| | |
| | | </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="æ¡ä»¶" min-width="140" prop="radius" show-overflow-tooltip> |
| | | <el-table-column label="è¯éªæ¡ä»¶" min-width="140" prop="radius" show-overflow-tooltip> |
| | | <template slot-scope="scope"> |
| | | <el-input v-if="(active == 1 || tabIndex == 4) && (isAskOnlyRead || isSpecial)" v-model="scope.row.radius" |
| | | :autosize="{ minRows: 1, maxRows: 3 }" clearable placeholder="æ¡ä»¶" size="small" type="textarea" |
| | | :autosize="{ minRows: 1, maxRows: 3 }" clearable placeholder="è¯éªæ¡ä»¶" size="small" type="textarea" |
| | | @change="e => requestChange(e, scope.row, 'radius')"> |
| | | </el-input> |
| | | <span v-else>{{ scope.row.radius }}</span> |