Althars123 1 vuosi sitten
vanhempi
commit
3c452bc32b

+ 1 - 1
.env.development

@@ -2,7 +2,7 @@
 ENV = 'development'
 
 # 若依管理系统/开发环境
-VUE_APP_BASE_API = 'http://43.138.76.6:8080/xxgl-admin/'
+VUE_APP_BASE_API = /dev-api'
 
 # 路由懒加载
 VUE_CLI_BABEL_TRANSPILE_MODULES = true

+ 53 - 0
src/api/order/info.js

@@ -0,0 +1,53 @@
+import request from '@/utils/request'
+
+// 查询订单列表
+export function listInfo(query) {
+  return request({
+    url: '/order/info/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询订单详细
+export function getInfo(id) {
+  return request({
+    url: '/order/info/' + id,
+    method: 'get'
+  })
+}
+
+// 新增订单
+export function addInfo(data) {
+  return request({
+    url: '/order/info',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改订单
+export function updateInfo(data) {
+  return request({
+    url: '/order/info',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除订单
+export function delInfo(id) {
+  return request({
+    url: '/order/info/' + id,
+    method: 'delete'
+  })
+}
+
+// 导出订单
+export function exportInfo(query) {
+  return request({
+    url: '/order/info/export',
+    method: 'get',
+    params: query
+  })
+}

+ 53 - 0
src/api/order/items.js

@@ -0,0 +1,53 @@
+import request from '@/utils/request'
+
+// 查询订单详情列表
+export function listItems(query) {
+  return request({
+    url: '/order/items/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询订单详情详细
+export function getItems(id) {
+  return request({
+    url: '/order/items/' + id,
+    method: 'get'
+  })
+}
+
+// 新增订单详情
+export function addItems(data) {
+  return request({
+    url: '/order/items',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改订单详情
+export function updateItems(data) {
+  return request({
+    url: '/order/items',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除订单详情
+export function delItems(id) {
+  return request({
+    url: '/order/items/' + id,
+    method: 'delete'
+  })
+}
+
+// 导出订单详情
+export function exportItems(query) {
+  return request({
+    url: '/order/items/export',
+    method: 'get',
+    params: query
+  })
+}

+ 550 - 0
src/views/order/info/index.vue

@@ -0,0 +1,550 @@
+<template>
+  <div class="app-container">
+    <!--<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">-->
+      <!--<el-form-item label="生产单号" prop="orderNo">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.orderNo"-->
+          <!--placeholder="请输入生产单号"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="业务员" prop="businessName">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.businessName"-->
+          <!--placeholder="请输入业务员"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="图纸" prop="picture">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.picture"-->
+          <!--placeholder="请输入图纸"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="动力" prop="power">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.power"-->
+          <!--placeholder="请输入动力"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="发电机" prop="fdj">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.fdj"-->
+          <!--placeholder="请输入发电机"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="割板" prop="cuttingBoard">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.cuttingBoard"-->
+          <!--placeholder="请输入割板"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="压型" prop="yaxing">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.yaxing"-->
+          <!--placeholder="请输入压型"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="壳体冷作" prop="ketilengzuo">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.ketilengzuo"-->
+          <!--placeholder="请输入壳体冷作"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="地盘冷作" prop="dipanlengzuo">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.dipanlengzuo"-->
+          <!--placeholder="请输入地盘冷作"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="喷塑" prop="penSu">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.penSu"-->
+          <!--placeholder="请输入喷塑"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="组装" prop="zuzhuang">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.zuzhuang"-->
+          <!--placeholder="请输入组装"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="接线" prop="jiexian">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.jiexian"-->
+          <!--placeholder="请输入接线"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="试机" prop="shiji">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.shiji"-->
+          <!--placeholder="请输入试机"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="包装" prop="baozhuang">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.baozhuang"-->
+          <!--placeholder="请输入包装"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="订单备注" prop="remarkOrder">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.remarkOrder"-->
+          <!--placeholder="请输入订单备注"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="完成日期" prop="finishTime">-->
+        <!--<el-date-picker clearable size="small" style="width: 200px"-->
+          <!--v-model="queryParams.finishTime"-->
+          <!--type="date"-->
+          <!--value-format="yyyy-MM-dd"-->
+          <!--placeholder="选择完成日期">-->
+        <!--</el-date-picker>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item label="生产计划备注" prop="remarkItems">-->
+        <!--<el-input-->
+          <!--v-model="queryParams.remarkItems"-->
+          <!--placeholder="请输入生产计划备注"-->
+          <!--clearable-->
+          <!--size="small"-->
+          <!--@keyup.enter.native="handleQuery"-->
+        <!--/>-->
+      <!--</el-form-item>-->
+      <!--<el-form-item>-->
+        <!--<el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>-->
+        <!--<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>-->
+      <!--</el-form-item>-->
+    <!--</el-form>-->
+
+    <!--<el-row :gutter="10" class="mb8">-->
+      <!--<el-col :span="1.5">-->
+        <!--<el-button-->
+          <!--type="primary"-->
+          <!--icon="el-icon-plus"-->
+          <!--size="mini"-->
+          <!--@click="handleAdd"-->
+          <!--v-hasPermi="['order:info:add']"-->
+        <!--&gt;新增</el-button>-->
+      <!--</el-col>-->
+      <!--<el-col :span="1.5">-->
+        <!--<el-button-->
+          <!--type="success"-->
+          <!--icon="el-icon-edit"-->
+          <!--size="mini"-->
+          <!--:disabled="single"-->
+          <!--@click="handleUpdate"-->
+          <!--v-hasPermi="['order:info:edit']"-->
+        <!--&gt;修改</el-button>-->
+      <!--</el-col>-->
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['order:info:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['order:info:export']"
+        >导出</el-button>
+      </el-col>
+	  <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    <!--</el-row>-->
+
+    <el-table v-loading="loading" :data="infoList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="id" align="center" prop="id" />
+      <el-table-column label="生产单号" align="center" prop="orderNo" />
+      <el-table-column label="生产单号" align="center" :show-overflow-tooltip="true">
+        <template slot-scope="scope">
+          <router-link :to="'/dict/type/data/' + scope.row.id" class="link-type">
+            <span>{{ scope.row.orderNo }}</span>
+          </router-link>
+        </template>
+      </el-table-column>
+      <el-table-column label="业务员" align="center" prop="businessName" />
+      <el-table-column label="图纸" align="center" prop="picture" />
+      <el-table-column label="动力" align="center" prop="power" />
+      <el-table-column label="发电机" align="center" prop="fdj" />
+      <el-table-column label="割板" align="center" prop="cuttingBoard" />
+      <el-table-column label="压型" align="center" prop="yaxing" />
+      <el-table-column label="壳体冷作" align="center" prop="ketilengzuo" />
+      <el-table-column label="地盘冷作" align="center" prop="dipanlengzuo" />
+      <el-table-column label="喷塑" align="center" prop="penSu" />
+      <el-table-column label="组装" align="center" prop="zuzhuang" />
+      <el-table-column label="接线" align="center" prop="jiexian" />
+      <el-table-column label="试机" align="center" prop="shiji" />
+      <el-table-column label="包装" align="center" prop="baozhuang" />
+      <el-table-column label="订单备注" align="center" prop="remarkOrder" />
+      <el-table-column label="订单状态" align="center" prop="status" />
+      <el-table-column label="完成日期" align="center" prop="finishTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.finishTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="生产计划备注" align="center" prop="remarkItems" />
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['order:info:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['order:info:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改订单对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="生产单号" prop="orderNo">
+          <el-input v-model="form.orderNo" placeholder="请输入生产单号" />
+        </el-form-item>
+        <el-form-item label="业务员" prop="businessName">
+          <el-input v-model="form.businessName" placeholder="请输入业务员" />
+        </el-form-item>
+        <el-form-item label="图纸" prop="picture">
+          <el-input v-model="form.picture" placeholder="请输入图纸" />
+        </el-form-item>
+        <el-form-item label="动力" prop="power">
+          <el-input v-model="form.power" placeholder="请输入动力" />
+        </el-form-item>
+        <el-form-item label="发电机" prop="fdj">
+          <el-input v-model="form.fdj" placeholder="请输入发电机" />
+        </el-form-item>
+        <el-form-item label="割板" prop="cuttingBoard">
+          <el-input v-model="form.cuttingBoard" placeholder="请输入割板" />
+        </el-form-item>
+        <el-form-item label="压型" prop="yaxing">
+          <el-input v-model="form.yaxing" placeholder="请输入压型" />
+        </el-form-item>
+        <el-form-item label="壳体冷作" prop="ketilengzuo">
+          <el-input v-model="form.ketilengzuo" placeholder="请输入壳体冷作" />
+        </el-form-item>
+        <el-form-item label="地盘冷作" prop="dipanlengzuo">
+          <el-input v-model="form.dipanlengzuo" placeholder="请输入地盘冷作" />
+        </el-form-item>
+        <el-form-item label="喷塑" prop="penSu">
+          <el-input v-model="form.penSu" placeholder="请输入喷塑" />
+        </el-form-item>
+        <el-form-item label="组装" prop="zuzhuang">
+          <el-input v-model="form.zuzhuang" placeholder="请输入组装" />
+        </el-form-item>
+        <el-form-item label="接线" prop="jiexian">
+          <el-input v-model="form.jiexian" placeholder="请输入接线" />
+        </el-form-item>
+        <el-form-item label="试机" prop="shiji">
+          <el-input v-model="form.shiji" placeholder="请输入试机" />
+        </el-form-item>
+        <el-form-item label="包装" prop="baozhuang">
+          <el-input v-model="form.baozhuang" placeholder="请输入包装" />
+        </el-form-item>
+        <el-form-item label="订单备注" prop="remarkOrder">
+          <el-input v-model="form.remarkOrder" placeholder="请输入订单备注" />
+        </el-form-item>
+        <el-form-item label="完成日期" prop="finishTime">
+          <el-date-picker clearable size="small" style="width: 200px"
+            v-model="form.finishTime"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="选择完成日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="生产计划备注" prop="remarkItems">
+          <el-input v-model="form.remarkItems" placeholder="请输入生产计划备注" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listInfo, getInfo, delInfo, addInfo, updateInfo, exportInfo } from "@/api/order/info";
+
+export default {
+  name: "Info",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 订单表格数据
+      infoList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        orderNo: null,
+
+        businessName: null,
+
+        picture: null,
+
+        power: null,
+
+        fdj: null,
+
+        cuttingBoard: null,
+
+        yaxing: null,
+
+        ketilengzuo: null,
+
+        dipanlengzuo: null,
+
+        penSu: null,
+
+        zuzhuang: null,
+
+        jiexian: null,
+
+        shiji: null,
+
+        baozhuang: null,
+
+        remarkOrder: null,
+
+        status: null,
+
+        finishTime: null,
+
+        remarkItems: null,
+
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询订单列表 */
+    getList() {
+      this.loading = true;
+      listInfo(this.queryParams).then(response => {
+        this.infoList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+
+        orderNo: null,
+
+        businessName: null,
+
+        createTime: null,
+
+        picture: null,
+
+        power: null,
+
+        fdj: null,
+
+        cuttingBoard: null,
+
+        yaxing: null,
+
+        ketilengzuo: null,
+
+        dipanlengzuo: null,
+
+        penSu: null,
+
+        zuzhuang: null,
+
+        jiexian: null,
+
+        shiji: null,
+
+        baozhuang: null,
+
+        remarkOrder: null,
+
+        status: 0,
+
+        finishTime: null,
+
+        remarkItems: null,
+
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加订单";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getInfo(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改订单";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateInfo(this.form).then(response => {
+              this.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addInfo(this.form).then(response => {
+              this.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$confirm('是否确认删除订单编号为"' + ids + '"的数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return delInfo(ids);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        })
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$confirm('是否确认导出所有订单数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return exportInfo(queryParams);
+        }).then(response => {
+          this.download(response.data);
+        })
+    }
+  }
+};
+</script>

+ 562 - 0
src/views/order/items/index.vue

@@ -0,0 +1,562 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="生产单号" prop="orderNo">
+        <el-input
+          v-model="queryParams.orderNo"
+          placeholder="请输入生产单号"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="机组型号" prop="unitModel">
+        <el-input
+          v-model="queryParams.unitModel"
+          placeholder="请输入机组型号"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="频率(Hz)" prop="rate">
+        <el-input
+          v-model="queryParams.rate"
+          placeholder="请输入频率(Hz)"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="电压(V)" prop="voltage">
+        <el-input
+          v-model="queryParams.voltage"
+          placeholder="请输入电压(V)"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="机组功率(kw)" prop="unitPowerKw">
+        <el-input
+          v-model="queryParams.unitPowerKw"
+          placeholder="请输入机组功率(kw)"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="机组功率(kva)" prop="unitPowerKva">
+        <el-input
+          v-model="queryParams.unitPowerKva"
+          placeholder="请输入机组功率(kva)"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="机组备用功率(kw)" prop="unitPowerKwSpare">
+        <el-input
+          v-model="queryParams.unitPowerKwSpare"
+          placeholder="请输入机组备用功率(kw)"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="机组备用功率(kva)" prop="unitPowerKvaSpare">
+        <el-input
+          v-model="queryParams.unitPowerKvaSpare"
+          placeholder="请输入机组备用功率(kva)"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="柴油机型号" prop="dieselEngineModel">
+        <el-input
+          v-model="queryParams.dieselEngineModel"
+          placeholder="请输入柴油机型号"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="发电机型号" prop="fjd">
+        <el-input
+          v-model="queryParams.fjd"
+          placeholder="请输入发电机型号"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="控制器型号" prop="controllerModel">
+        <el-input
+          v-model="queryParams.controllerModel"
+          placeholder="请输入控制器型号"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="水套加热器" prop="heater">
+        <el-input
+          v-model="queryParams.heater"
+          placeholder="请输入水套加热器"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="ats" prop="ats">
+        <el-input
+          v-model="queryParams.ats"
+          placeholder="请输入ats"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="断路器" prop="breaker">
+        <el-input
+          v-model="queryParams.breaker"
+          placeholder="请输入断路器"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="电瓶" prop="battery">
+        <el-input
+          v-model="queryParams.battery"
+          placeholder="请输入电瓶"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="机壳颜色" prop="color">
+        <el-input
+          v-model="queryParams.color"
+          placeholder="请输入机壳颜色"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="数量" prop="number">
+        <el-input
+          v-model="queryParams.number"
+          placeholder="请输入数量"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="零售价" prop="priceRetail">
+        <el-input
+          v-model="queryParams.priceRetail"
+          placeholder="请输入零售价"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="采购价" prop="pricePurchase">
+        <el-input
+          v-model="queryParams.pricePurchase"
+          placeholder="请输入采购价"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          icon="el-icon-plus"
+          size="mini"
+          @click="handleAdd"
+          v-hasPermi="['order:items:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="single"
+          @click="handleUpdate"
+          v-hasPermi="['order:items:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['order:items:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['order:items:export']"
+        >导出</el-button>
+      </el-col>
+	  <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="itemsList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="${comment}" align="center" prop="id" />
+      <el-table-column label="生产单号" align="center" prop="orderNo" />
+      <el-table-column label="机组型号" align="center" prop="unitModel" />
+      <el-table-column label="频率(Hz)" align="center" prop="rate" />
+      <el-table-column label="电压(V)" align="center" prop="voltage" />
+      <el-table-column label="机组功率(kw)" align="center" prop="unitPowerKw" />
+      <el-table-column label="机组功率(kva)" align="center" prop="unitPowerKva" />
+      <el-table-column label="机组备用功率(kw)" align="center" prop="unitPowerKwSpare" />
+      <el-table-column label="机组备用功率(kva)" align="center" prop="unitPowerKvaSpare" />
+      <el-table-column label="柴油机型号" align="center" prop="dieselEngineModel" />
+      <el-table-column label="发电机型号" align="center" prop="fjd" />
+      <el-table-column label="控制器型号" align="center" prop="controllerModel" />
+      <el-table-column label="水套加热器" align="center" prop="heater" />
+      <el-table-column label="ats" align="center" prop="ats" />
+      <el-table-column label="断路器" align="center" prop="breaker" />
+      <el-table-column label="电瓶" align="center" prop="battery" />
+      <el-table-column label="机壳颜色" align="center" prop="color" />
+      <el-table-column label="数量" align="center" prop="number" />
+      <el-table-column label="零售价" align="center" prop="priceRetail" />
+      <el-table-column label="采购价" align="center" prop="pricePurchase" />
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['order:items:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['order:items:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改订单详情对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="生产单号" prop="orderNo">
+          <el-input v-model="form.orderNo" placeholder="请输入生产单号" />
+        </el-form-item>
+        <el-form-item label="机组型号" prop="unitModel">
+          <el-input v-model="form.unitModel" placeholder="请输入机组型号" />
+        </el-form-item>
+        <el-form-item label="频率(Hz)" prop="rate">
+          <el-input v-model="form.rate" placeholder="请输入频率(Hz)" />
+        </el-form-item>
+        <el-form-item label="电压(V)" prop="voltage">
+          <el-input v-model="form.voltage" placeholder="请输入电压(V)" />
+        </el-form-item>
+        <el-form-item label="机组功率(kw)" prop="unitPowerKw">
+          <el-input v-model="form.unitPowerKw" placeholder="请输入机组功率(kw)" />
+        </el-form-item>
+        <el-form-item label="机组功率(kva)" prop="unitPowerKva">
+          <el-input v-model="form.unitPowerKva" placeholder="请输入机组功率(kva)" />
+        </el-form-item>
+        <el-form-item label="机组备用功率(kw)" prop="unitPowerKwSpare">
+          <el-input v-model="form.unitPowerKwSpare" placeholder="请输入机组备用功率(kw)" />
+        </el-form-item>
+        <el-form-item label="机组备用功率(kva)" prop="unitPowerKvaSpare">
+          <el-input v-model="form.unitPowerKvaSpare" placeholder="请输入机组备用功率(kva)" />
+        </el-form-item>
+        <el-form-item label="柴油机型号" prop="dieselEngineModel">
+          <el-input v-model="form.dieselEngineModel" placeholder="请输入柴油机型号" />
+        </el-form-item>
+        <el-form-item label="发电机型号" prop="fjd">
+          <el-input v-model="form.fjd" placeholder="请输入发电机型号" />
+        </el-form-item>
+        <el-form-item label="控制器型号" prop="controllerModel">
+          <el-input v-model="form.controllerModel" placeholder="请输入控制器型号" />
+        </el-form-item>
+        <el-form-item label="水套加热器" prop="heater">
+          <el-input v-model="form.heater" placeholder="请输入水套加热器" />
+        </el-form-item>
+        <el-form-item label="ats" prop="ats">
+          <el-input v-model="form.ats" placeholder="请输入ats" />
+        </el-form-item>
+        <el-form-item label="断路器" prop="breaker">
+          <el-input v-model="form.breaker" placeholder="请输入断路器" />
+        </el-form-item>
+        <el-form-item label="电瓶" prop="battery">
+          <el-input v-model="form.battery" placeholder="请输入电瓶" />
+        </el-form-item>
+        <el-form-item label="机壳颜色" prop="color">
+          <el-input v-model="form.color" placeholder="请输入机壳颜色" />
+        </el-form-item>
+        <el-form-item label="数量" prop="number">
+          <el-input v-model="form.number" placeholder="请输入数量" />
+        </el-form-item>
+        <el-form-item label="零售价" prop="priceRetail">
+          <el-input v-model="form.priceRetail" placeholder="请输入零售价" />
+        </el-form-item>
+        <el-form-item label="采购价" prop="pricePurchase">
+          <el-input v-model="form.pricePurchase" placeholder="请输入采购价" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listItems, getItems, delItems, addItems, updateItems, exportItems } from "@/api/order/items";
+
+export default {
+  name: "Items",
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 订单详情表格数据
+      itemsList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        orderNo: null,
+
+        unitModel: null,
+
+        rate: null,
+
+        voltage: null,
+
+        unitPowerKw: null,
+
+        unitPowerKva: null,
+
+        unitPowerKwSpare: null,
+
+        unitPowerKvaSpare: null,
+
+        dieselEngineModel: null,
+
+        fjd: null,
+
+        controllerModel: null,
+
+        heater: null,
+
+        ats: null,
+
+        breaker: null,
+
+        battery: null,
+
+        color: null,
+
+        number: null,
+
+        priceRetail: null,
+
+        pricePurchase: null,
+
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询订单详情列表 */
+    getList() {
+      this.loading = true;
+      listItems(this.queryParams).then(response => {
+        this.itemsList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+
+        orderNo: null,
+
+        unitModel: null,
+
+        rate: null,
+
+        voltage: null,
+
+        unitPowerKw: null,
+
+        unitPowerKva: null,
+
+        unitPowerKwSpare: null,
+
+        unitPowerKvaSpare: null,
+
+        dieselEngineModel: null,
+
+        fjd: null,
+
+        controllerModel: null,
+
+        heater: null,
+
+        ats: null,
+
+        breaker: null,
+
+        battery: null,
+
+        color: null,
+
+        number: null,
+
+        priceRetail: null,
+
+        pricePurchase: null,
+
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加订单详情";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getItems(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改订单详情";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateItems(this.form).then(response => {
+              this.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addItems(this.form).then(response => {
+              this.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$confirm('是否确认删除订单详情编号为"' + ids + '"的数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return delItems(ids);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        })
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      const queryParams = this.queryParams;
+      this.$confirm('是否确认导出所有订单详情数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return exportItems(queryParams);
+        }).then(response => {
+          this.download(response.data);
+        })
+    }
+  }
+};
+</script>

+ 254 - 36
src/views/price/manage/hz50/index.vue

@@ -10,6 +10,9 @@
       >
         <el-row>
           <el-col :span="24">
+            <el-form-item label-width="auto"  prop="accessory">
+              <template slot="label"> <div class="label">机组搜索:</div> </template>
+            </el-form-item>
             <el-form-item
               label-width="auto"
               label="机组功率(kw)区间"
@@ -58,15 +61,6 @@
               >
               </el-input>
             </el-form-item>
-          </el-col>
-
-          <!-- <el-col :span="12">
-  </el-col> -->
-          <!-- <el-col :span="24">
-
-
-          </el-col> -->
-          <el-col :span="24">
             <el-form-item label="品牌" prop="brand">
               <el-select
                 v-model="queryParams.brand"
@@ -83,14 +77,31 @@
                 ></el-option>
               </el-select>
             </el-form-item>
+            <el-form-item>
+              <el-button
+                type="cyan"
+                icon="el-icon-search"
+                size="mini"
+                @click="handleQuery"
+              >搜索</el-button
+              >
+              <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+              >重置</el-button
+              >
+            </el-form-item>
+          </el-col>
 
-            <el-form-item label-width="auto" label="配件" prop="accessory">
+          <el-col :span="24">
+            <el-form-item label-width="auto"  prop="accessory">
+              <template slot="label"> <div class="label">零件搭配:</div> </template>
+            </el-form-item>
+            <el-form-item label-width="auto" label="静音/开架" prop="accessory">
               <el-select v-model="computedQuery.accessory">
                 <el-option key="1" value="mutePrice" label="静音机壳"></el-option>
                 <el-option key="2" value="openPrice" label="开架"></el-option>
               </el-select>
             </el-form-item>
-            <el-form-item label-width="auto" label="AST" prop="unitPowerKvaMax">
+            <el-form-item label-width="auto" label="ATS" prop="unitPowerKvaMax">
               <el-select v-model="computedQuery.isHaveAst">
                 <el-option key="1" :value="true" label="有"></el-option>
                 <el-option key="2" :value="false" label="无"></el-option>
@@ -116,20 +127,19 @@
                 ></el-option>
               </el-select>
             </el-form-item>
-            <el-form-item>
-              <el-button
-                type="cyan"
-                icon="el-icon-search"
-                size="mini"
-                @click="handleQuery"
-                >搜索</el-button
-              >
-              <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
-                >重置</el-button
-              >
+            <el-form-item label="发电机品牌" prop="fadianji" label-width="120">
+              <el-select v-model="computedQuery.fadianji" placeholder="请选择发电机品牌" clearable size="small">
+                <el-option
+                  v-for="item in fadianjiOptions"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value">
+                </el-option>
+              </el-select>
             </el-form-item>
           </el-col>
         </el-row>
+
       </el-form>
 
       <el-row :gutter="10" class="mb8">
@@ -199,6 +209,15 @@
             >
           </el-upload>
         </el-col>
+        <el-col :span="1.5">
+            <el-button
+              type="primary"
+              icon="el-icon-right"
+              :disabled="multiple"
+              size="mini"
+              @click="handleAddItems"
+            >添加到订单</el-button>
+        </el-col>
         <right-toolbar
           :showSearch.sync="showSearch"
           @queryTable="getList"
@@ -216,6 +235,7 @@
         <el-table-column type="selection" width="40" align="center" />
 
         <el-table-column
+          :key="0"
           fixed
           :width="tableColumnWidthSmall"
           label="机组型号"
@@ -223,6 +243,7 @@
           prop="unitModel"
         />
         <el-table-column
+          :key="1"
           fixed
           :width="tableColumnWidthMini"
           label="机组功率(kw)"
@@ -230,6 +251,7 @@
           prop="unitPowerKw"
         />
         <el-table-column
+          :key="2"
           fixed
           :width="tableColumnWidthMini"
           label="机组功率备用(kw)"
@@ -237,6 +259,7 @@
           prop="unitPowerKwSpare"
         />
         <el-table-column
+          :key="3"
           fixed
           :width="tableColumnWidthMini"
           label="机组功率(kva)"
@@ -244,6 +267,7 @@
           prop="unitPowerKva"
         />
         <el-table-column
+          :key="4"
           fixed
           :width="tableColumnWidthMini"
           label="机组功率备用(kva)"
@@ -251,30 +275,35 @@
           prop="unitPowerKvaSpare"
         />
         <el-table-column
+          :key="5"
           :width="tableColumnWidthMini"
           label="频率(Hz)"
           align="center"
           prop="rate"
         />
         <el-table-column
+          :key="6"
           :width="tableColumnWidthSmall"
           label="柴油机型号"
           align="center"
           prop="dieselEngineModel"
         />
         <el-table-column
+          :key="7"
           :width="'100px'"
           label="品牌"
           align="center"
           prop="brand"
         />
         <el-table-column
+          :key="8"
           :width="tableColumnWidthMini"
           label="转速"
           align="center"
           prop="speed"
         />
         <el-table-column
+          :key="9"
           :width="tableColumnWidthMini"
           v-hasPermi="['price:info:list:powerPrice']"
           v-if="checkPermissions(['price:info:list:powerPrice'])"
@@ -284,77 +313,105 @@
         />
 
         <el-table-column
+          :key="10"
           :width="tableColumnWidthSmall"
           label="发电机型号(仿斯坦福)"
           align="center"
+          v-if="computedQuery.fadianji==0"
           prop="generatorModelFstf"
         />
         <el-table-column
+          :key="11"
           :width="tableColumnWidthMini"
           label="发电机价格(仿斯坦福)"
-          v-if="checkPermissions(['price:info:list:generatorPrice'])"
+          v-if="checkPermissions(['price:info:list:generatorPrice'])&&computedQuery.fadianji==0"
           v-hasPermi="['price:info:list:generatorPrice']"
           align="center"
           prop="generatorPriceFstf"
         />
         <el-table-column
+          :key="12"
           :width="tableColumnWidthSmall"
+          v-if="computedQuery.fadianji==1"
           label="发电机型号(利来森马)"
           align="center"
           prop="generatorModelLlsm"
         />
         <el-table-column
+          :key="13"
           :width="tableColumnWidthMini"
           label="发电机价格(利来森马)"
-          v-if="checkPermissions(['price:info:list:generatorPrice'])"
+          v-if="checkPermissions(['price:info:list:generatorPrice'])&&computedQuery.fadianji==1"
           v-hasPermi="['price:info:list:generatorPrice']"
           align="center"
           prop="generatorPriceLlsm"
         />
         <el-table-column
+          :key="14"
           :width="tableColumnWidthSmall"
+          v-if="computedQuery.fadianji==2"
           label="发电机型号(美迪奥)"
           align="center"
           prop="generatorModelMda"
         />
         <el-table-column
+          :key="15"
           :width="tableColumnWidthMini"
           label="发电机价格(美迪奥)"
-          v-if="checkPermissions(['price:info:list:generatorPrice'])"
+          v-if="checkPermissions(['price:info:list:generatorPrice'])&&computedQuery.fadianji==2"
           v-hasPermi="['price:info:list:generatorPrice']"
           align="center"
           prop="generatorPriceMda"
         />
         <el-table-column
+          :key="16"
           :width="tableColumnWidthSmall"
+          v-if="computedQuery.fadianji==3"
           label="发电机型号(马拉松)"
           align="center"
           prop="generatorModelMls"
         />
         <el-table-column
+          :key="17"
           :width="tableColumnWidthMini"
           label="发电机价格(马拉松)"
-          v-if="checkPermissions(['price:info:list:generatorPrice'])"
+          v-if="checkPermissions(['price:info:list:generatorPrice'])&&computedQuery.fadianji==3"
           v-hasPermi="['price:info:list:generatorPrice']"
           align="center"
           prop="generatorPriceMls"
         />
         <el-table-column
+          :key="18"
           :width="tableColumnWidthSmall"
+          v-if="computedQuery.fadianji==4"
           label="发电机型号(斯坦福)"
           align="center"
           prop="generatorModelStf"
         />
         <el-table-column
+          :key="19"
           :width="tableColumnWidthMini"
           label="发电机价格(斯坦福)"
-          v-if="checkPermissions(['price:info:list:generatorPrice'])"
+          v-if="checkPermissions(['price:info:list:generatorPrice'])&&computedQuery.fadianji==4"
           v-hasPermi="['price:info:list:generatorPrice']"
           align="center"
           prop="generatorPriceStf"
         />
+        <el-table-column
+          :key="21"
+          :width="tableColumnWidthMini"
+          label="静音/开架"
+          align="center"
+          v-hasPermi="['price:info:list:mutePrice']"
+          prop="mutePrice"
+        ><template slot-scope="scope">
+          <span>{{ computedQuery.accessory =="mutePrice"? "静音机壳":"开架" }}</span>
+        </template>
+          </el-table-column>
+
 
         <el-table-column
+          :key="22"
           :width="tableColumnWidthMini"
           v-if="
             computedQuery.accessory == 'mutePrice' &&
@@ -367,6 +424,7 @@
         />
 
         <el-table-column
+          :key="23"
           :width="tableColumnWidthMini"
           v-if="
             computedQuery.accessory == 'openPrice' &&
@@ -379,6 +437,7 @@
         />
 
         <el-table-column
+          :key="24"
           :width="tableColumnWidthMini"
           v-if="computedQuery.isHaveAst"
           label="ATS型号"
@@ -386,6 +445,7 @@
           prop="atsModel"
         />
         <el-table-column
+          :key="25"
           :width="tableColumnWidthMini"
           v-if="
             computedQuery.isHaveAst &&
@@ -397,12 +457,14 @@
           prop="atsPrice"
         />
         <el-table-column
+          :key="26"
           :width="tableColumnWidthMini"
           label="电瓶型号"
           align="center"
           prop="batteryModel"
         />
         <el-table-column
+          :key="27"
           :width="tableColumnWidthMini"
           label="电瓶价格"
           v-hasPermi="['price:info:list:batteryPrice']"
@@ -411,6 +473,7 @@
           prop="batteryPrice"
         />
         <el-table-column
+          :key="28"
           :width="tableColumnWidthMini"
           label="控制器型号"
           align="center"
@@ -421,6 +484,7 @@
           </template>
         </el-table-column>
         <el-table-column
+          :key="29"
           :width="tableColumnWidthMini"
           v-hasPermi="['price:info:list:controllerPrice']"
           v-if="checkPermissions(['price:info:list:controllerPrice'])"
@@ -434,6 +498,8 @@
         </el-table-column>
 
         <el-table-column
+          :key="30"
+          v-if="computedQuery.fadianji==0"
           class-name="bg-lightpink"
           :width="tableColumnWidthMini"
           label="合计含税成本(仿斯坦福)"
@@ -447,6 +513,8 @@
           </template>
         </el-table-column>
         <el-table-column
+          :key="31"
+          v-if="computedQuery.fadianji==1"
           class-name="bg-lightblue"
           :width="tableColumnWidthMini"
           label="合计含税成本(利来森马)"
@@ -459,6 +527,8 @@
           </template>
         </el-table-column>
         <el-table-column
+          :key="32"
+          v-if="computedQuery.fadianji==2"
           class-name="bg-lightcyan"
           :width="tableColumnWidthMini"
           label="合计含税成本(美迪奥)"
@@ -471,6 +541,8 @@
           </template>
         </el-table-column>
         <el-table-column
+          :key="33"
+          v-if="computedQuery.fadianji==3"
           class-name="bg-lightskyblue"
           :width="tableColumnWidthMini"
           label="合计含税成本(马拉松)"
@@ -483,6 +555,8 @@
           </template>
         </el-table-column>
         <el-table-column
+          :key="34"
+          v-if="computedQuery.fadianji==4"
           class-name="bg-lightgoldenrodyellow"
           :width="tableColumnWidthMini"
           label="合计含税成本(斯坦福)"
@@ -495,6 +569,7 @@
           </template>
         </el-table-column>
         <el-table-column
+          :key="35"
           width="100px"
           v-if="computedQuery.accessory == 'openPrice'"
           label="开架尺寸(长/宽/高/重量)"
@@ -502,6 +577,7 @@
           prop="openParms"
         />
         <el-table-column
+          :key="36"
           :width="'100px'"
           v-if="computedQuery.accessory == 'mutePrice'"
           label="静音尺寸(长/宽/高/重量)"
@@ -509,16 +585,8 @@
           prop="muteParms"
         />
 
-        <!-- <el-table-column :width="tableColumnWidthMini" label="静音尺寸" align="center" prop="muteLong" />
-        <el-table-column :width="tableColumnWidthMini" label="静音尺寸" align="center" prop="muteWidth" />
-        <el-table-column :width="tableColumnWidthMini" label="静音尺寸" align="center" prop="muteHigh" />
-        <el-table-column :width="tableColumnWidthMini" label="开架尺寸" align="center" prop="openLong" />
-        <el-table-column :width="tableColumnWidthMini" label="开架尺寸" align="center" prop="openWidth" />
-        <el-table-column :width="tableColumnWidthMini" label="开架尺寸" align="center" prop="openHigh" />
-        <el-table-column :width="tableColumnWidthMini" label="CKD尺寸" align="center" prop="ckdLong" />
-        <el-table-column :width="tableColumnWidthMini" label="CKD尺寸" align="center" prop="ckdWidth" />
-        <el-table-column :width="tableColumnWidthMini" label="CKD尺寸" align="center" prop="ckdHigh" /> -->
         <el-table-column
+          :key="37"
           :width="tableColumnWidthMini"
           width="180px"
           label="操作"
@@ -561,6 +629,10 @@
         </el-table-column>
       </el-table>
 
+
+
+
+
       <pagination
         v-show="total > 0"
         :total="total"
@@ -569,6 +641,63 @@
         @pagination="getList"
       />
 
+<div v-if="itemList.length>0">
+  <p align="center">订单详情</p>
+  <el-row :gutter="10" class="mb8">
+    <el-col :span="1.5">
+      <el-button
+        type="danger"
+        icon="el-icon-delete"
+        size="mini"
+        :disabled="itemMultiple"
+        @click="handleDelete"
+      >删除</el-button
+      >
+    </el-col>
+    <el-col :span="1.5">
+      <el-button
+        type="primary"
+        icon="el-icon-right"
+        :disabled="multiple"
+        size="mini"
+        @click="createOrder"
+      >生成订单</el-button>
+    </el-col>
+  </el-row>
+
+  <el-table
+    fit
+    size="mini"
+    :row-style="{ height: '25px' }"
+    v-loading="loading"
+    :data="itemList"
+    @selection-change="handleItemSelectionChange"
+  >
+    <!--<el-table-column type="selection" width="55" align="center" />-->
+    <!--<el-table-column label="生产单号" align="center" prop="orderNo" />-->
+    <el-table-column type="selection" width="40" align="center" />
+    <el-table-column label="机组型号" align="center" prop="unitModel" />
+    <el-table-column label="频率(Hz)" align="center" prop="rate" />
+    <el-table-column label="电压(V)" align="center" prop="voltage" />
+    <el-table-column label="机组功率(kw)" align="center" prop="unitPowerKw" />
+    <el-table-column label="机组功率(kva)" align="center" prop="unitPowerKva" />
+    <el-table-column label="机组备用功率(kw)" align="center" prop="unitPowerKwSpare" />
+    <el-table-column label="机组备用功率(kva)" align="center" prop="unitPowerKvaSpare" />
+    <el-table-column label="柴油机型号" align="center" prop="dieselEngineModel" />
+    <el-table-column label="发电机型号" align="center" prop="fjd" />
+    <el-table-column label="控制器型号" align="center" prop="controllerModel" />
+    <el-table-column label="水套加热器" align="center" prop="heater" />
+    <el-table-column label="ATS" align="center" prop="ats" />
+    <el-table-column label="断路器" align="center" prop="breaker" />
+    <el-table-column label="电瓶" align="center" prop="battery" />
+    <el-table-column label="静音/开架" align="center" prop="muteOrOpen" />
+    <el-table-column label="机壳颜色" align="center" prop="color" />
+    <el-table-column label="数量" align="center" prop="number" />
+    <el-table-column label="零售价" align="center" prop="priceRetail" />
+    <el-table-column label="采购价" align="center" prop="pricePurchase" />
+  </el-table>
+</div>
+
       <!-- 添加或修改报价对话框 -->
       <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
         <el-form ref="form" :model="form" :rules="rules" label-width="80px">
@@ -812,6 +941,7 @@
     getFieldName,
   } from "@/api/price/managehz50";
   import { listInfo as controllerListInfo } from "@/api/price/controller";
+  import { addInfo as addOrderInfo} from "@/api/order/info";
   import { getToken } from "@/utils/auth";
   import { mapGetters } from "vuex";
   let computedQuery = {
@@ -819,6 +949,7 @@
     isHaveAst: true,
     controllerPrice: null,
     controllerModel: null,
+    fadianji:0
   };
   const controllerPriceValidator = (rule, value, callBack) => {
     console.log(computedQuery.controllerPrice && computedQuery.controllerModel);
@@ -832,6 +963,22 @@
     name: "Info",
     data() {
       return {
+        fadianjiOptions:[{
+          value: 0,
+          label: '仿斯坦福'
+        }, {
+          value: 1,
+          label: '利来森马'
+        }, {
+          value: 2,
+          label: '美迪奥'
+        }, {
+          value: 3,
+          label: '马拉松'
+        }, {
+          value: 4,
+          label: '斯坦福'
+        }],
         controllerModel: "",
         controllerPrice: 0,
         token: getToken(),   uploadUrl:process.env.VUE_APP_BASE_API,
@@ -842,16 +989,23 @@
         loading: false,
         // 选中数组
         ids: [],
+        // 选中数组
+        itemids: [],
         // 非单个禁用
         single: true,
         // 非多个禁用
         multiple: true,
+        itemMultiple: true,
         // 显示搜索条件
         showSearch: true,
         // 总条数
         total: 0,
         // 报价表格数据
         infoList: [],
+
+        // 订单详情数据
+        itemList: [],
+
         // 控制器列表
         controllerList: [],
         // 弹出层标题
@@ -959,6 +1113,7 @@
     },
     created() {
       this.getControllerList();
+       this.getList();
 
       this.getSearchOption();
     },
@@ -1074,6 +1229,15 @@
         };
         this.resetForm("form");
       },
+      createOrder(){
+
+        addOrderInfo(this.itemList).then((response) => {
+          this.msgSuccess("订单创建成功,请到订单管理查看");
+          this.itemList=[];
+      });
+      },
+
+
       /** 搜索按钮操作 */
       handleQuery() {
         this.$refs["queryForm"].validate((valid) => {
@@ -1101,6 +1265,10 @@
         this.single = selection.length !== 1;
         this.multiple = !selection.length;
       },
+      handleItemSelectionChange(selection) {
+        this.itemids = selection.map((item) => item.id);
+        this.itemMultiple = !selection.length;
+      },
       /** 新增按钮操作 */
       handleAdd() {
         this.reset();
@@ -1136,6 +1304,53 @@
             }
           }
         });
+      },
+      handleAddItems(){
+        const ids =  this.ids;
+        for(var i = 0 ; i< ids.length;i++){
+          var itemid = ids[i];
+          var infoList = this.infoList;
+         // console.log(infoList);
+          for(var j =0;j <infoList.length;j++){
+            var info = infoList[j];
+            if (itemid == info.id){
+                this.addItem(info,this.itemList);
+            }
+          }
+        }
+
+      },
+
+      addItem(info,list){
+        var item ={};
+        console.log(info.unitModel);
+        item.unitModel= info.unitModel;
+        item.rate= info.rate;
+        item.unitPowerKw= info.unitPowerKw;
+        item.unitPowerKva= info.unitPowerKva;
+        item.unitPowerKwSpare= info.unitPowerKwSpare;
+        item.unitPowerKvaSpare= info.unitPowerKvaSpare;
+        item.dieselEngineModel= info.dieselEngineModel;
+        item.number= 1;
+        item.ats= computedQuery.isHaveAst?info.atsModel:"无";
+        item.muteOrOpen= computedQuery.accessory=='mutePrice'?"静音机壳":"开架";
+        item.controllerModel= computedQuery.controllerModel;
+        if (computedQuery.fadianji ==0){
+          item.fjd= info.generatorModelFstf;
+        }else if (computedQuery.fadianji ==1){
+          item.fjd= info.generatorModelLlsm;
+        }else if(computedQuery.fadianji ==2){
+          item.fjd= info.generatorModelMda;
+        }else if(computedQuery.fadianji ==3){
+          item.fjd= info.generatorModelMls;
+        }else if(computedQuery.fadianji ==4){
+          item.fjd= info.generatorModelStf;
+        }
+
+        item.unitModel= info.unitModel;
+        list.push(item);
+
+
       },
       /** 删除按钮操作 */
       handleDelete(row) {
@@ -1187,4 +1402,7 @@
   .bg-lightgoldenrodyellow {
     background: lightgoldenrodyellow;
   }
+    .label{
+      color: red
+    }
   </style>

+ 1 - 1
vue.config.js

@@ -34,7 +34,7 @@ module.exports = {
     proxy: {
       // detail: https://cli.vuejs.org/config/#devserver-proxy
       [process.env.VUE_APP_BASE_API]: {
-        target: `http://localhost:8080`,
+        target: `http://localhost:8082`,
         changeOrigin: true,
         pathRewrite: {
           ['^' + process.env.VUE_APP_BASE_API]: ''