| | |
| | | <i class="el-icon-s-tools"></i> |
| | | <span>动作</span> |
| | | </span> |
| | | <el-button v-if="showEdit" plain size="mini" style="margin-left: 15px" @click="editClick">编辑</el-button> |
| | | <el-button |
| | | v-if="showEdit" |
| | | plain |
| | | size="mini" |
| | | style="margin-left: 15px" |
| | | @click="editClick" |
| | | >编辑</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | <!-- 内容 --> |
| | |
| | | v-for="item in productOptions" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="{ value: item.id, label: item.name, unit: item.unit }" |
| | | :value="{ |
| | | value: item.id, |
| | | label: item.name, |
| | | unit: item.unit, |
| | | }" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | |
| | | style="width: 90%" |
| | | :disabled="!showFooter" |
| | | > |
| | | <el-option v-for="item in toLocationOptions" :key="item.id" :label="item.name" :value="item.id"> |
| | | <el-option |
| | | v-for="item in toLocationOptions" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | style="width: 90%" |
| | | :disabled="!showFooter" |
| | | > |
| | | <el-option v-for="item in toLocationOptions" :key="item.id" :label="item.name" :value="item.id"> |
| | | <el-option |
| | | v-for="item in toLocationOptions" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | </el-form> |
| | | <!-- 尾 --> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" size="small" @click="saveClick('form')" :disabled="!showFooter">保存</el-button> |
| | | <el-button size="small" @click="editConfig.visible = false">取消</el-button> |
| | | <el-button |
| | | type="primary" |
| | | size="small" |
| | | @click="saveClick('form')" |
| | | :disabled="!showFooter" |
| | | >保存</el-button |
| | | > |
| | | <el-button size="small" @click="editConfig.visible = false" |
| | | >取消</el-button |
| | | > |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getProductList } from "@/api/product/product" |
| | | import { getLocationList } from "@/api/overview/overview" |
| | | import { addDisuse, finishDisuse } from "@/api/operate/scrap" |
| | | import { getProductList } from "@/api/product/product"; |
| | | import { getLocationList } from "@/api/overview/overview"; |
| | | import { addDisuse, finishDisuse, updateScrap } from "@/api/operate/scrap"; |
| | | export default { |
| | | name: "AddScrapDialog", |
| | | props: { |
| | |
| | | return { |
| | | visible: false, |
| | | title: "新建", |
| | | infomation: {} |
| | | } |
| | | } |
| | | } |
| | | infomation: {}, |
| | | }; |
| | | }, |
| | | }, |
| | | }, |
| | | components: {}, |
| | | computed: {}, |
| | |
| | | editConfig: this.editCommonConfig, |
| | | rules: { |
| | | // 产品,数量必填 |
| | | productName: [{ required: true, message: "请选择产品", trigger: "change" }], |
| | | productName: [ |
| | | { required: true, message: "请选择产品", trigger: "change" }, |
| | | ], |
| | | amount: [{ required: true, message: "请输入数量", trigger: "blur" }], |
| | | fromLocationId: [{ required: true, message: "请选择源位置", trigger: "change" }], |
| | | toLocationId: [{ required: true, message: "请选择报废位置", trigger: "change" }], |
| | | sourceNumber: [{ required: true, message: "请输入来源单据", trigger: "blur" }] |
| | | fromLocationId: [ |
| | | { required: true, message: "请选择源位置", trigger: "change" }, |
| | | ], |
| | | toLocationId: [ |
| | | { required: true, message: "请选择报废位置", trigger: "change" }, |
| | | ], |
| | | sourceNumber: [ |
| | | { required: true, message: "请输入来源单据", trigger: "blur" }, |
| | | ], |
| | | }, |
| | | memberOptions: [], |
| | | productOptions: [], |
| | |
| | | list: [ |
| | | { label: "草稿", status: "todo", value: 1 }, |
| | | { label: "就绪", status: "todo", value: 3 }, |
| | | { label: "完成", status: "todo", value: 4 } |
| | | { label: "完成", status: "todo", value: 4 }, |
| | | ], |
| | | showEdit: false, // 是否显示编辑按钮 |
| | | showFooter: false, // 是否显示取消保存 |
| | | currentState: "todo", // 当前状态 |
| | | unit: "", |
| | | showButton: true, |
| | | isValidateClick: false // 验证是否显示 |
| | | } |
| | | isValidateClick: false, // 验证是否显示 |
| | | }; |
| | | }, |
| | | created() { |
| | | this.setBottonView() |
| | | this.getProductList() |
| | | this.getLocationList() |
| | | this.unit = this.editConfig.infomation.unit || "" |
| | | this.setBottonView(); |
| | | this.getProductList(); |
| | | this.getLocationList(); |
| | | this.unit = this.editConfig.infomation.unit || ""; |
| | | }, |
| | | methods: { |
| | | // 产品 |
| | | async getProductList() { |
| | | await getProductList({ |
| | | page: 1, |
| | | pageSize: 100 |
| | | pageSize: 100, |
| | | }).then((res) => { |
| | | // console.log(res.data) |
| | | if (res.code === 200) { |
| | | if (res.data && res.data.length > 0) { |
| | | this.productOptions = res.data |
| | | this.productOptions = res.data; |
| | | } |
| | | } |
| | | }) |
| | | }); |
| | | }, |
| | | // 获取仓库位置列表 |
| | | async getLocationList() { |
| | | await getLocationList({ |
| | | keyWord: "", |
| | | page: 0, |
| | | pageSize: 0 |
| | | pageSize: 0, |
| | | }).then((res) => { |
| | | console.log(res) |
| | | console.log(res); |
| | | if (res.code === 200) { |
| | | this.toLocationOptions = res.data |
| | | this.toLocationOptions = res.data; |
| | | } |
| | | }) |
| | | }); |
| | | }, |
| | | // 设置删除/打印/编辑是否显示 |
| | | setBottonView() { |
| | | if (this.editConfig.title === "新建"||this.editConfig.title==="编辑") { |
| | | this.showButton = false |
| | | this.showEdit = false |
| | | this.showFooter = true |
| | | this.isValidateClick = false |
| | | if ( |
| | | this.editConfig.title === "新建" || |
| | | this.editConfig.title === "编辑" |
| | | ) { |
| | | this.showButton = false; |
| | | this.showEdit = false; |
| | | this.showFooter = true; |
| | | this.isValidateClick = false; |
| | | } else if (this.editConfig.infomation.status === 4) { |
| | | this.showButton = false |
| | | this.showEdit = false |
| | | this.showFooter = false |
| | | this.isValidateClick = false |
| | | this.showButton = false; |
| | | this.showEdit = false; |
| | | this.showFooter = false; |
| | | this.isValidateClick = false; |
| | | } else { |
| | | this.showButton = true |
| | | this.showEdit = false |
| | | this.showFooter = false |
| | | this.isValidateClick = true |
| | | this.showButton = true; |
| | | this.showEdit = false; |
| | | this.showFooter = false; |
| | | this.isValidateClick = true; |
| | | } |
| | | if (this.editConfig.title === "新建") { |
| | | this.list[0].status = "active" |
| | | this.list[0].status = "active"; |
| | | } else { |
| | | this.list.map((item) => { |
| | | if (item.value === this.editConfig.infomation.status) { |
| | | item.status = "active" |
| | | item.status = "active"; |
| | | } else { |
| | | item.status = "todo" |
| | | item.status = "todo"; |
| | | } |
| | | }) |
| | | }); |
| | | } |
| | | }, |
| | | // 关闭 |
| | | handleClose() { |
| | | this.editConfig.visible = false |
| | | this.editConfig.visible = false; |
| | | }, |
| | | // 编辑 |
| | | editClick() { |
| | | this.showEdit = false |
| | | this.showFooter = true |
| | | this.showEdit = false; |
| | | this.showFooter = true; |
| | | }, |
| | | // 保存 |
| | | saveClick(formName) { |
| | | this.$refs[formName].validate((valid) => { |
| | | if (valid) { |
| | | this.editConfig.infomation.productId = this.productId |
| | | this.editConfig.infomation.productName = this.productName |
| | | this.editConfig.infomation.unit = this.unit |
| | | addDisuse({ |
| | | ...this.editConfig.infomation |
| | | }).then((res) => { |
| | | console.log(res) |
| | | this.editConfig.visible = false |
| | | if (res.code === 200) { |
| | | this.$message.success("添加成功") |
| | | this.$parent.getData() |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | if (this.editCommonConfig.title === "新建") { |
| | | this.$refs[formName].validate((valid) => { |
| | | if (valid) { |
| | | this.editConfig.infomation.productId = this.productId; |
| | | this.editConfig.infomation.productName = this.productName; |
| | | this.editConfig.infomation.unit = this.unit; |
| | | addDisuse({ |
| | | ...this.editConfig.infomation, |
| | | }).then((res) => { |
| | | console.log(res); |
| | | this.editConfig.visible = false; |
| | | if (res.code === 200) { |
| | | this.$message.success("添加成功"); |
| | | this.$parent.getData(); |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | } else if (this.editCommonConfig.title === "编辑") { |
| | | this.$refs[formName].validate((valid) => { |
| | | if (valid) { |
| | | this.editConfig.infomation.productId = this.productId; |
| | | this.editConfig.infomation.productName = this.productName; |
| | | this.editConfig.infomation.unit = this.unit; |
| | | updateScrap({ |
| | | amount:this.editConfig.infomation.amount, //数量 |
| | | baseOperationType: 1, |
| | | fromLocationId: this.editConfig.infomation.fromLocationId, |
| | | id: this.editConfig.infomation.id, |
| | | number: this.editConfig.infomation.number, |
| | | operationDate:this.editConfig.infomation.operationDate, |
| | | productId: this.editConfig.infomation.productId, |
| | | sourceNumber: this.editConfig.infomation.sourceNumber, |
| | | status: this.editConfig.infomation.status, |
| | | toLocationId: this.editConfig.infomation.toLocationId, |
| | | }).then((res) => { |
| | | console.log(res); |
| | | this.editConfig.visible = false; |
| | | if (res.code === 200) { |
| | | this.$message.success("修改成功"); |
| | | this.$parent.getData(); |
| | | } |
| | | }); |
| | | } |
| | | console.log(this.editConfig.infomation, "看看是啥"); |
| | | }); |
| | | } |
| | | }, |
| | | // 选择产品 |
| | | selProductChange(val) { |
| | | this.unit = val.unit |
| | | this.productName = val.label |
| | | this.productId = val.value |
| | | this.unit = val.unit; |
| | | this.productName = val.label; |
| | | this.productId = val.value; |
| | | }, |
| | | // 验证 |
| | | async validateClick() { |
| | | console.log(this.editConfig.infomation.id, "xxx"); |
| | | await finishDisuse(this.editConfig.infomation.id).then((res) => { |
| | | console.log(res) |
| | | this.editConfig.visible = false |
| | | console.log(res); |
| | | this.editConfig.visible = false; |
| | | if (res.code === 200) { |
| | | this.$message.success("验证成功") |
| | | this.$parent.getData() |
| | | this.$message.success("验证成功"); |
| | | this.$parent.getData(); |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | | |
| | | <!-- Add "scoped" attribute to limit CSS to this component only --> |