|
@@ -0,0 +1,279 @@
|
|
|
+<template>
|
|
|
+ <zj-page-container>
|
|
|
+ <zj-page-fill>
|
|
|
+ <div style="box-sizing: border-box; padding:10px;">
|
|
|
+ <zj-form-container ref="formRef" :form-data="formData" :form-attributes="{ size: 'mini' }">
|
|
|
+ <zj-form-module title="客户信息" label-width="80px" :form-data="formData" :form-items="formItems" />
|
|
|
+ <zj-form-module title="商品信息" label-width="80px" :form-data="formData" :form-items="formItems2" />
|
|
|
+ </zj-form-container>
|
|
|
+ </div>
|
|
|
+ </zj-page-fill>
|
|
|
+ <div style="box-sizing: border-box; padding: 10px; text-align: right;">
|
|
|
+ <el-button type="primary" size="small" @click="queding">确定</el-button>
|
|
|
+ </div>
|
|
|
+ </zj-page-container>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import getLbsAmapRegion from "./getLbsAmapRegion.js"
|
|
|
+import ImageUpload from '@/components/file-upload'
|
|
|
+import editTable from '@/components/template/editTable.js'
|
|
|
+import { getClassifyList } from '@/api/goods'
|
|
|
+import { esGoodsList } from '@/api/commodityManagement'
|
|
|
+import { esOrderAdd } from '@/api/orderManagement'
|
|
|
+import { required, mobileRequired, mobile, httpUrl, email } from '@/components/template/rules_verify.js'
|
|
|
+import { esOrderDetail, esOrderRefund, esOrderPayPrice } from "@/api/orderManagement";
|
|
|
+import { getCompanyList } from "@/api/common";
|
|
|
+export default {
|
|
|
+ components: {ImageUpload},
|
|
|
+ mixins: [getLbsAmapRegion, editTable],
|
|
|
+ data(){
|
|
|
+ return {
|
|
|
+ formData: {
|
|
|
+
|
|
|
+ },
|
|
|
+ orderDetail:{
|
|
|
+
|
|
|
+ },
|
|
|
+ }
|
|
|
+ },
|
|
|
+ computed: {
|
|
|
+ formItems(){
|
|
|
+ return [{
|
|
|
+ name: 'el-radio',
|
|
|
+ options: [
|
|
|
+ { label: '现金支付', value: "CASH" },
|
|
|
+ { label: '转账支付', value: "TRANSFER" },
|
|
|
+ { label: '微信支付', value: "WECHAT" },
|
|
|
+ ],
|
|
|
+ md: 6,
|
|
|
+ attributes: { disabled: this.disabled },
|
|
|
+ formItemAttributes: { label: '支付方式', prop: 'payType', rules:[{ required: true, message: '请填写', trigger: 'blur' }] }
|
|
|
+ },{
|
|
|
+ name: 'el-radio',
|
|
|
+ options: [
|
|
|
+ { label: '现金支付', value: "CASH" },
|
|
|
+ { label: '转账支付', value: "TRANSFER" },
|
|
|
+ { label: '微信支付', value: "WECHAT" },
|
|
|
+ ],
|
|
|
+ md: 6,
|
|
|
+ attributes: { disabled: this.disabled },
|
|
|
+ formItemAttributes: { label: '支付方式', prop: 'payType', rules:[{ required: true, message: '请填写', trigger: 'blur' }] }
|
|
|
+ },{
|
|
|
+ name: 'el-input',
|
|
|
+ md: 24,
|
|
|
+ attributes: { disabled: this.disabled },
|
|
|
+ formItemAttributes: { label: '备注', prop: 'remark' }
|
|
|
+ }]
|
|
|
+ },
|
|
|
+ formItems2(){
|
|
|
+ return [{
|
|
|
+ name: 'slot-component',
|
|
|
+ md: 24,
|
|
|
+ formItemAttributes: {
|
|
|
+ label: '',
|
|
|
+ 'label-width': '0px',
|
|
|
+ prop: 'esOrderInfos',
|
|
|
+ rules: [{ required: true, message: '请填写', trigger: 'blur' }]
|
|
|
+ },
|
|
|
+ render: (h, { props, onInput }) => {
|
|
|
+ var { value } = props
|
|
|
+ return this.convertTableJson(
|
|
|
+ value,
|
|
|
+ [
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '商品分类',
|
|
|
+ prop: 'esCategoryId'
|
|
|
+ },
|
|
|
+ editRender: (h, { row, column, index }) => {
|
|
|
+ return (
|
|
|
+ <div class="redbordererr">
|
|
|
+ <el-form-item
|
|
|
+ label=""
|
|
|
+ label-width="0px"
|
|
|
+ prop={`esOrderInfos.${index}.${column.columnAttributes.prop}`}
|
|
|
+ rules={[{ required: true, message: '请填写', trigger: 'blur' }]}
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ disabled={true}
|
|
|
+ value={row[column.columnAttributes.prop]}
|
|
|
+ placeholder="请输入内容">
|
|
|
+ {this.classifyList.map((item, index_) => <el-option key={index_} label={item.name} value={item.categoryId}></el-option>)}
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ )
|
|
|
+ },
|
|
|
+ viewRender: (h, { row, column, index }) => {
|
|
|
+ return (
|
|
|
+ <div class="redbordererr">
|
|
|
+ <el-form-item
|
|
|
+ label=""
|
|
|
+ label-width="0px"
|
|
|
+ prop={`esOrderInfos.${index}.${column.columnAttributes.prop}`}
|
|
|
+ rules={[{ required: true, message: '请填写', trigger: 'blur' }]}
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ disabled={true}
|
|
|
+ value={row[column.columnAttributes.prop]}
|
|
|
+ placeholder="请输入内容">
|
|
|
+ {this.classifyList.map((item, index_) => <el-option key={index_} label={item.name} value={item.categoryId}></el-option>)}
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ )
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '商品名称',
|
|
|
+ prop: 'esGoodsId'
|
|
|
+ },
|
|
|
+ editRender: (h, { row, column, index }) => {
|
|
|
+ return (
|
|
|
+ <div class="redbordererr">
|
|
|
+ <el-form-item
|
|
|
+ label=""
|
|
|
+ label-width="0px"
|
|
|
+ prop={`esOrderInfos.${index}.${column.columnAttributes.prop}`}
|
|
|
+ rules={[{ required: true, message: '请填写', trigger: 'blur' }]}
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ value={row[column.columnAttributes.prop]}
|
|
|
+ placeholder="请输入内容">
|
|
|
+ {this.esGoodsList.map((item, index_) => <el-option key={index_} label={item.goodsName} value={item.id}></el-option>)}
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ )
|
|
|
+ },
|
|
|
+ viewRender: (h, { row, column, index }) => {
|
|
|
+ return (
|
|
|
+ <div class="redbordererr">
|
|
|
+ <el-form-item
|
|
|
+ label=""
|
|
|
+ label-width="0px"
|
|
|
+ prop={`esOrderInfos.${index}.${column.columnAttributes.prop}`}
|
|
|
+ rules={[{ required: true, message: '请填写', trigger: 'blur' }]}
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ disabled={true}
|
|
|
+ value={row[column.columnAttributes.prop]}
|
|
|
+ placeholder="请输入内容">
|
|
|
+ {this.esGoodsList.map((item, index_) => <el-option key={index_} label={item.goodsName} value={item.id}></el-option>)}
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ )
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '单位',
|
|
|
+ prop: 'unit'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '上架数量',
|
|
|
+ prop: 'sjNum'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '订单数量',
|
|
|
+ prop: 'num'
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '商品价格',
|
|
|
+ prop: 'goodsPrice'
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '金额',
|
|
|
+ prop: 'totalAmount'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '商品品牌',
|
|
|
+ prop: 'brandName'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '功率(W)',
|
|
|
+ prop: 'power'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '制造日期',
|
|
|
+ prop: 'productionTime'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ columnAttributes: {
|
|
|
+ label: '能效标识',
|
|
|
+ prop: 'energyLabel'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ {
|
|
|
+ isEdit: false,
|
|
|
+ isAdd: false,
|
|
|
+ isDel: false
|
|
|
+ },
|
|
|
+ {}
|
|
|
+ )
|
|
|
+ }
|
|
|
+ }]
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ detailsId: {
|
|
|
+ handler(newVal, oldVal) {
|
|
|
+ this.getEsOrderDetail()
|
|
|
+ },
|
|
|
+ deep: true,
|
|
|
+ immediate: true,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ created(){
|
|
|
+ getCompanyList().then(res=>{
|
|
|
+ console.log(res)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ getEsOrderDetail(){
|
|
|
+ esOrderDetail({
|
|
|
+ esOrderId: this.detailsId
|
|
|
+ }).then(res=>{
|
|
|
+ this.orderDetail = {
|
|
|
+ ...res.data
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ queding(){
|
|
|
+ this.$refs.formRef.validate((valid, invalidFields, errLabels) => {
|
|
|
+ if(valid){
|
|
|
+ esOrderAdd({
|
|
|
+ ...this.formData,
|
|
|
+ fileUrl: this.formData.fileUrl.map(item=>item.url).join(",")
|
|
|
+ }).then(res=>{
|
|
|
+ this.$message({ type: 'success', message: `成功!` })
|
|
|
+ this.$emit("removeTab")
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="scss" scoped>
|
|
|
+</style>
|