GeekFish 4 yıl önce
ebeveyn
işleme
3ee158b6bd

+ 37 - 0
src/api/baseManage/companyType.js

@@ -0,0 +1,37 @@
+import request from '@/utils/request'
+
+// 查询参数列表
+export function listCompanyType(data) {
+  return request({
+    url: '/system/customerCompanyType/list',
+    method: 'post',
+    data: data
+  })
+}
+
+//类型新增
+export function addCompanyType(data) {
+  return request({
+    url: '/system/customerCompanyType/save',
+    method: 'post',
+    data: data
+  })
+}
+
+//类型更新
+export function updateCompanyType(data) {
+  return request({
+    url: '/system/customerCompanyType/update',
+    method: 'post',
+    data: data
+  })
+}
+
+//类型删除
+export function delCompanyType(query) {
+  return request({
+    url: '/system/customerCompanyType/delete',
+    method: 'get',
+    params: query
+  })
+}

+ 46 - 0
src/api/customerManage/company.js

@@ -0,0 +1,46 @@
+import request from '@/utils/request'
+
+// 查询列表
+export function listCompany(data) {
+  return request({
+    url: '/system/web/company/searchByPage',
+    method: 'post',
+    data: data
+  })
+}
+
+//新增
+export function addCompany(data) {
+  return request({
+    url: '/system/web/company/add',
+    method: 'post',
+    data: data
+  })
+}
+
+//更新
+export function updateCompany(data) {
+  return request({
+    url: '/system/web/company/update',
+    method: 'post',
+    data: data
+  })
+}
+
+//类型删除
+export function delcompany(data) {
+  return request({
+    url: '/system/web/company/delete',
+    method: 'post',
+    data: data
+  })
+}
+
+//企业类型
+export function companyType(query) {
+  return request({
+    url: '/system/customerCompanyType/all',
+    method: 'get',
+    params: query
+  })
+}

+ 8 - 0
src/api/productManage/commodity.js

@@ -35,3 +35,11 @@ export function productAc(data) {
     data: data
   })
 }
+
+//已选择商品查看
+export function Listproduct(id) {
+  return request({
+    url: '/system/web/product/findByGoodsInfoGuid?goodsInfoGuid='+id,
+    method: 'post'
+  })
+}

+ 47 - 0
src/api/productManage/priceManage.js

@@ -0,0 +1,47 @@
+import request from '@/utils/request'
+
+// 查询列表
+export function listPrice(data) {
+  return request({
+    url: '/system/web/price/list',
+    method: 'post',
+    data: data
+  })
+}
+
+//新增
+export function addPrice(data) {
+  return request({
+    url: '/system/web/price/save',
+    method: 'post',
+    data: data
+  })
+}
+
+
+//类型删除
+export function delPrice(query) {
+  return request({
+    url: '/system/web/price/delete',
+    method: 'get',
+    params: query
+  })
+}
+
+//购买类别
+export function priceType(data) {
+  return request({
+    url: '/system/web/productType/all',
+    method: 'post',
+    data: data
+  })
+}
+
+//定价审核
+export function checkPrice(data) {
+  return request({
+    url: '/system/web/price/check',
+    method: 'post',
+    data: data
+  })
+}

+ 6 - 7
src/utils/index.js

@@ -5,15 +5,15 @@ import { parseTime } from './ruoyi'
  */
 export function formatDate(cellValue) {
   if (cellValue == null || cellValue == "") return "";
-  var date = new Date(cellValue) 
+  var date = new Date(cellValue)
   var year = date.getFullYear()
   var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1
-  var day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate() 
-  var hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours() 
-  var minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes() 
+  var day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate()
+  var hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours()
+  var minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()
   var seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()
   return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds
-}
+}
 
 /**
  * @param {number} time
@@ -330,7 +330,7 @@ export function makeMap(str, expectsLowerCase) {
     ? val => map[val.toLowerCase()]
     : val => map[val]
 }
- 
+
 export const exportDefault = 'export default '
 
 export const beautifierConf = {
@@ -387,4 +387,3 @@ export function camelCase(str) {
 export function isNumberStr(str) {
   return /^[+-]?(0|([1-9]\d*))(\.\d+)?$/g.test(str)
 }
- 

+ 4 - 1
src/views/bankCheck/bank/index.vue

@@ -173,7 +173,10 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
-      this.resetForm("queryForm");
+      this.queryParams = {
+        pageNo:1,
+        pageSize:10
+      }
       this.handleQuery();
     },
     /** 查看按钮操作 */

+ 4 - 1
src/views/bankCheck/farmer/index.vue

@@ -164,7 +164,10 @@ export default {
       this.getList();
     },
     resetQuery() {
-      this.resetForm("queryForm");
+      this.queryParams = {
+        pageNo:1,
+        pageSize:10
+      }
       this.handleQuery();
     }
   }

+ 193 - 0
src/views/baseManage/companyType/index.vue

@@ -0,0 +1,193 @@
+<template>
+  <div class="app-container">
+      <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
+        <el-form-item prop="phonenumber">
+          <el-input
+            v-model="queryParams.typeName"
+            placeholder="请输入类别名称"
+            clearable
+            size="small"
+            style="width: 240px"
+            @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"
+          >新增企业类型</el-button>
+        </el-col>
+        <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+      </el-row>
+      <el-table v-loading="loading" :data="list">
+        <el-table-column label="序号" type="index" width="50" align="center" />
+        <el-table-column label="类型名称" align="center" prop="typeName" />
+        <el-table-column label="类型说明" align="center" prop="typeDesc" :show-overflow-tooltip="true" />
+        <el-table-column label="修改时间" align="center" prop="createTime" width="160">
+          <template slot-scope="scope">
+            <span>{{ parseTime(scope.row.modifiedTime) }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="操作"
+          align="center"
+          width="280"
+          class-name="small-padding fixed-width"
+        >
+          <template slot-scope="scope">
+            <el-button
+              size="mini"
+              type="primary"
+              icon="el-icon-view"
+              @click="handleView(scope.row)"
+            >查看</el-button>
+            <el-button
+              size="mini"
+              type="success"
+              icon="el-icon-edit"
+              @click="handleEdit(scope.row)"
+            >编辑</el-button>
+            <el-button
+              size="mini"
+              type="danger"
+              @click="handleDelete(scope.row)"
+              icon="el-icon-delete"
+            >删除</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <pagination
+        v-show="total>0"
+        :total="total"
+        :page.sync="queryParams.pageNo"
+        :limit.sync="queryParams.pageSize"
+        @pagination="getList"
+      />
+      <add-mobiel
+      			v-if="modal.visibleModal"
+      			:title="modal.title"
+      			:action="modal.action"
+      			:visible="modal.visibleModal"
+      			:selectRow="modal.selectRow"
+      			@closeModal="closeModal">
+      		</add-mobiel>
+  </div>
+</template>
+<script>
+import { listCompanyType , delCompanyType } from "@/api/baseManage/companyType";
+import addMobiel from './modal/addMobiel'
+export default {
+  name: "companyType",
+  components: {
+    addMobiel
+  },
+  data() {
+    return {
+      // 遮罩层
+      loading: false,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 表格数据
+      list: null,
+      // 状态数据字典
+      statusOptions: [],
+      // 表单参数
+      form: {},
+      //弹出层
+      modal:{
+        action:'',
+        title:'',
+        visibleModal:false,
+        selectRow:null
+      },
+      // 查询参数
+      queryParams: {
+        pageNo: 1,
+        pageSize: 10
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询产婆类别列表 */
+    getList() {
+      this.loading = true;
+      listCompanyType(this.queryParams).then(res => {
+          if(res.retHead.errCode == 0){
+            this.list = res.retBody
+            this.total = res.retHead.total;
+          }
+          this.loading = false;
+        }
+      );
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNo = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.queryParams = {
+        pageNo:1,
+        pageSize:10,
+      }
+      this.handleQuery();
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+        this.modal.visibleModal = true
+        this.modal.title = '新增企业类型'
+        this.modal.action = 'add'
+    },
+    /** 查看按钮操作 */
+    handleView(item){
+        this.modal.visibleModal = true
+        this.modal.title = '企业类型详情'
+        this.modal.action = 'view'
+        this.modal.selectRow = item
+    },
+    /** 查看按钮操作 */
+    handleEdit(item){
+        this.modal.visibleModal = true
+        this.modal.title = '编辑企业类型'
+        this.modal.action = 'edit'
+        this.modal.selectRow = item
+    },
+    /** 删除按钮操作 */
+    handleDelete(item) {
+      console.log(item)
+      let params = {
+        guid:item.guid
+      }
+      this.$confirm('是否确认删除该数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return delCompanyType(params);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        }).catch(function() {});
+    },
+    //窗口关闭
+    closeModal(flag = false){
+      this.modal.visibleModal = false
+      flag && this.getList()
+    }
+  }
+};
+</script>

+ 191 - 0
src/views/baseManage/companyType/modal/addMobiel.vue

@@ -0,0 +1,191 @@
+<template>
+  <el-dialog
+    :title="modalTitle"
+    :visible.sync="modalVisible"
+    :width="formLabelWidth"
+    top="2vh"
+    @close="handleCancel">
+    <div class="mobile">
+        <el-form label-width="90px" :model="form" :rules="rules" ref="from" class="from">
+            <el-form-item label="类型名称:" prop="typeName">
+                <el-input type="text" v-model="form.typeName" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+            <el-form-item label="类型值:">
+                <el-input type="text" v-model="form.typeVal" :disabled="true" placeholder="类别值后台自动生成"></el-input>
+            </el-form-item>
+            <el-form-item label="描述:">
+                <el-input type="textarea"
+                          :rows="3"
+                          v-model="form.typeDesc"
+                          :disabled="limit.isRead"></el-input>
+            </el-form-item>
+        </el-form>
+    </div>
+    <div slot="footer" class="dialog-footer">
+      <el-button @click="handleCancel">取 消</el-button>
+      <el-button type="primary" @click="submit" v-if="!limit.isRead">确 定</el-button>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+import { addCompanyType , updateCompanyType } from "@/api/baseManage/companyType";
+export default {
+  name: 'addMobiel',
+  props: {
+    visible: {
+      type: Boolean,
+      default: false
+    },
+    title: {
+      type: String,
+      default: 'title'
+    },
+    action: {
+      type: String,
+      default: 'add'
+    },
+    selectRow: {
+      type: Object,
+      default:null
+    }
+  },
+  watch: {
+    visible(newVal, oldVal) {
+      this.modalVisible = newVal;
+    },
+    title(newVal, oldVal) {
+      this.modalTitle = newVal;
+    },
+    action(newVal, oldVal) {
+      this.modalAction = newVal;
+    },
+    selectRow(newVal, oldVal) {
+      this.modalSelectRow = newVal;
+    }
+  },
+  data() {
+    return {
+      modalTitle: this.title,
+      modalVisible: this.visible,
+      modalAction: this.action,
+      modalSelectRow: this.selectRow,
+      formLabelWidth: '624px',
+      //窗口权限
+      limit: {
+        isRead: false, //是否只读
+        isAdd: false //是否可写
+      },
+      //验证
+      rules: {
+        typeName: [{ required: true, message: '类型名称不能为空!', trigger: 'blur' }]
+      },
+      //属性
+      inputVisible: false,
+      inputValue:'',
+      //表单
+      form: {
+        productTypeExpansions:[]
+      }
+    };
+  },
+  created() {
+    console.log(this.modalSelectRow)
+    switch (this.modalAction) {
+      case 'add':
+        this.limit.isAdd = true;
+        break;
+      case 'edit':
+        this.limit.isAdd = true;
+        this.form = Object.assign({},this.modalSelectRow)
+        break;
+      case 'view':
+        this.limit.isRead = true;
+        this.form = Object.assign({},this.modalSelectRow)
+        break;
+      default:
+        break;
+    }
+  },
+  methods: {
+    //表单提交
+    submit() {
+      this.$refs.from.validate(valid => {
+        if (valid) {
+          let params = Object.assign({},this.form)
+          console.log(params)
+          if(this.modalAction === 'add'){
+            addCompanyType(params).then(res => {
+                if (res.retHead.errCode === 0) {
+                  this.msgSuccess("操作成功");
+                  this.modalVisible = false
+                 	this.$emit('closeModal', true);
+                }
+            });
+          }else{
+            updateCompanyType(params).then(res => {
+                if (res.retHead.errCode === 0) {
+                  this.msgSuccess("操作成功");
+                  this.modalVisible = false
+                 	this.$emit('closeModal', true);
+                }
+            });
+          }
+        } else {
+          return false;
+        }
+      });
+    },
+    //窗口关闭
+    handleCancel() {
+      this.$emit('closeModal', false);
+    }
+  }
+};
+</script>
+
+<style lang="scss" scoped>
+
+  .el-tag + .el-tag {
+      margin-left: 10px;
+    }
+    .button-new-tag {
+      margin-left: 10px;
+      height: 32px;
+      line-height: 30px;
+      padding-top: 0;
+      padding-bottom: 0;
+    }
+    .input-new-tag {
+      width: 90px;
+      margin-left: 10px;
+      vertical-align: bottom;
+    }
+
+  .hc-box{
+    border:1px solid #e9e9e9;
+    margin-bottom:20px;
+    .hc-box-header{
+        height:40px;
+        line-height:40px;
+        background:#fafafa;
+        font-weight:bold;
+        color:#333;
+        padding:0 15px;
+        .action{
+          margin-left:10px;
+          color:#304FFE
+        }
+    }
+  }
+  .add{
+    .hc-box-wrap{
+      padding:15px 30px 15px 0;
+    }
+  }
+  .taskList{
+    .hc-box-wrap{
+      padding:15px;
+    }
+  }
+</style>

+ 4 - 1
src/views/baseManage/productType/index.vue

@@ -141,7 +141,10 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
-      this.resetForm("queryForm");
+      this.queryParams = {
+        pageNo:1,
+        pageSize:10
+      }
       this.handleQuery();
     },
     /** 新增按钮操作 */

+ 4 - 1
src/views/belongToSubject/area/index.vue

@@ -136,7 +136,10 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
-      this.resetForm("queryForm");
+      this.queryParams = {
+        pageNo:1,
+        pageSize:10
+      }
       this.handleQuery();
     },
     /** 新增按钮操作 */

+ 4 - 1
src/views/belongToSubject/org/index.vue

@@ -228,7 +228,10 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
-      this.resetForm("queryForm");
+      this.queryParams = {
+        pageNo:1,
+        pageSize:10
+      }
       this.handleQuery();
     },
     /** 新增按钮操作 */

+ 4 - 1
src/views/belongToSubject/people/index.vue

@@ -244,7 +244,10 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
-      this.resetForm("queryForm");
+      this.queryParams = {
+        pageNo:1,
+        pageSize:10
+      }
       this.handleQuery();
     },
     /** 新增按钮操作 */

+ 262 - 0
src/views/customerManage/company/index.vue

@@ -0,0 +1,262 @@
+<template>
+  <div class="app-container">
+      <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
+        <el-form-item>
+          <el-select v-model="queryParams.customerType" placeholder="客户类型" clearable size="small">
+            <el-option
+              v-for="dict in companyTypeOptions"
+              :key="dict.guid"
+              :label="dict.typeName"
+              :value="dict.guid"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item>
+          <el-input
+            v-model="queryParams.companyName"
+            placeholder="企业名称"
+            clearable
+            size="small"
+            style="width: 240px"
+            @keyup.enter.native="handleQuery"
+          />
+        </el-form-item>
+        <el-form-item>
+          <el-input
+            v-model="queryParams.orgCode"
+            placeholder="组织机构代码"
+            clearable
+            size="small"
+            style="width: 240px"
+            @keyup.enter.native="handleQuery"
+          />
+        </el-form-item>
+        <el-form-item>
+          <el-input
+            v-model="queryParams.pid"
+            placeholder="证件号"
+            clearable
+            size="small"
+            style="width: 240px"
+            @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"
+          >新增企业</el-button>
+        </el-col>
+        <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+      </el-row>
+      <el-table v-loading="loading" :data="list">
+        <el-table-column label="序号" type="index" width="50" align="center" />
+        <el-table-column label="企业账号" align="center" prop="account" />
+        <el-table-column label="企业类型" align="center" prop="companyType" :formatter="statusFormat" />
+        <el-table-column label="企业昵称" align="center" prop="companyName" />
+        <el-table-column label="组织机构代码" align="center" prop="orgCode" />
+        <el-table-column label="联系人" align="center" prop="principals" />
+        <el-table-column label="电话" align="center" prop="phone" />
+        <el-table-column label="邮箱" align="center" prop="email" />
+        <el-table-column
+          label="操作"
+          align="center"
+          width="280"
+          class-name="small-padding fixed-width"
+        >
+          <template slot-scope="scope">
+            <el-button
+              size="mini"
+              type="primary"
+              icon="el-icon-view"
+              @click="handleView(scope.row)"
+            >查看</el-button>
+            <el-button
+              size="mini"
+              type="success"
+              icon="el-icon-edit"
+              @click="handleEdit(scope.row)"
+            >编辑</el-button>
+            <el-button
+              size="mini"
+              type="danger"
+              @click="handleDelete(scope.row)"
+              icon="el-icon-delete"
+            >删除</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <pagination
+        v-show="total>0"
+        :total="total"
+        :page.sync="queryParams.pageNo"
+        :limit.sync="queryParams.pageSize"
+        @pagination="getList"
+      />
+      <add-mobiel
+      			v-if="modal.visibleModal"
+      			:title="modal.title"
+      			:action="modal.action"
+      			:visible="modal.visibleModal"
+      			:selectRow="modal.selectRow"
+      			@closeModal="closeModal">
+      		</add-mobiel>
+  </div>
+</template>
+
+<script>
+import { listCompany , delcompany , companyType } from "@/api/customerManage/company";
+import addMobiel from './modal/addMobiel'
+export default {
+  name: "company",
+  components: {
+    addMobiel
+  },
+  data() {
+    return {
+      // 遮罩层
+      loading: false,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 表格数据
+      list: null,
+      // 状态数据字典
+      companyTypeOptions: [],
+      // 表单参数
+      form: {},
+      //弹出层
+      modal:{
+        action:'',
+        title:'',
+        visibleModal:false,
+        selectRow:null
+      },
+      // 查询参数
+      queryParams: {
+        pageNo: 1,
+        pageSize: 10
+      }
+    };
+  },
+  created() {
+    this.getCompanyType();
+  },
+  mounted() {
+    this.getList();
+  },
+  methods: {
+    /** 企业类型列表 */
+    getCompanyType(){
+      companyType().then(res => {
+          if(res.retHead.errCode == 0){
+            this.companyTypeOptions = res.retBody
+          }
+        }
+      );
+    },
+    /** 查询列表 */
+    getList() {
+      this.loading = true;
+      listCompany(this.queryParams).then(res => {
+          if(res.retHead.errCode == 0){
+            this.list = res.retBody
+            this.total = res.retHead.total;
+          }
+          this.loading = false;
+        }
+      );
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNo = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      // this.resetForm("queryForm");
+      this.queryParams = {
+        pageNo:1,
+        pageNo:10
+      }
+      this.handleQuery();
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+        this.modal.visibleModal = true
+        this.modal.title = '企业添加'
+        this.modal.action = 'add'
+    },
+    /** 查看按钮操作 */
+    handleView(item){
+        this.modal.visibleModal = true
+        this.modal.title = '企业详情'
+        this.modal.action = 'view'
+        this.modal.selectRow = item
+    },
+    /** 查看按钮操作 */
+    handleEdit(item){
+        this.modal.visibleModal = true
+        this.modal.title = '企业编辑'
+        this.modal.action = 'edit'
+        this.modal.selectRow = item
+    },
+    /** 删除按钮操作 */
+    handleDelete(item) {
+      let params = {
+        "customerInfoForm":{
+            "guid":item.fkCustomerId
+        },
+        "customerCompanyInfoForm":{
+            "companyName":item.companyName,
+            "guid":item.guid,
+            "orgCode":item.orgCode,
+            "principals":item.principals,
+            "phone":item.phone,
+            "email":item.email,
+            "companyAddress":item.companyAddress,
+            "companyImages":item.companyImages
+        }
+      }
+      this.$confirm('是否确认删除该数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return delcompany(params);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        }).catch(function() {});
+    },
+    // 字典状态字典翻译
+    statusFormat(row, column) {
+      return this.selectCompanyLabel(this.companyTypeOptions, row.companyType);
+    },
+    selectCompanyLabel(datas, value) {
+    	var actions = [];
+    	Object.keys(datas).some((key) => {
+    		if (datas[key].guid == ('' + value)) {
+    			actions.push(datas[key].typeName);
+    			return true;
+    		}
+    	})
+    	return actions.join('');
+    },
+    //窗口关闭
+    closeModal(flag = false){
+      this.modal.visibleModal = false
+      flag && this.getList()
+    }
+  }
+};
+</script>

+ 297 - 0
src/views/customerManage/company/modal/addMobiel.vue

@@ -0,0 +1,297 @@
+<template>
+  <el-dialog
+    :title="modalTitle"
+    :visible.sync="modalVisible"
+    :width="formLabelWidth"
+    top="2vh"
+    @close="handleCancel">
+    <div class="mobile">
+        <el-form label-width="90px" :model="form" :rules="rules" ref="from" class="from">
+            <el-form-item label="企业类型:" prop="customerType">
+                <el-select v-model="form.customerInfoForm.companyType" :disabled="limit.isRead" placeholder="客户类型" clearable size="small">
+                  <el-option
+                    v-for="dict in companyTypeOptions"
+                    :key="dict.guid"
+                    :label="dict.typeName"
+                    :value="dict.guid"
+                  />
+                </el-select>
+            </el-form-item>
+            <el-form-item label="企业名称:">
+                <el-input type="text" v-model="form.customerCompanyInfoForm.companyName" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+            <el-form-item label="机构代码证:">
+                <el-input type="text" v-model="form.customerCompanyInfoForm.orgCode" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+            <el-form-item label="联系人:">
+                <el-input type="text" v-model="form.customerCompanyInfoForm.principals" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+            <el-form-item label="电话:">
+                <el-input type="text" v-model="form.customerCompanyInfoForm.phone" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+            <el-form-item label="邮箱:">
+                <el-input type="text" v-model="form.customerCompanyInfoForm.email" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+            <el-form-item label="企业地址:">
+                <el-input type="text" v-model="form.customerCompanyInfoForm.companyAddress" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+            <el-divider content-position="left">企业图片</el-divider>
+            <div class="uploadImg">
+               <el-upload
+                 v-if="!limit.isRead"
+                 accept=".jpg, .png"
+                 :headers="upload.headers"
+                 :action="upload.url"
+                 :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress"
+                 :on-success="handleFileSuccess"
+                 :file-list="fileList">
+                 <el-button size="small" type="primary">点击上传</el-button>
+                 <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
+               </el-upload>
+               <ul class="uploadImgList">
+                 <li v-for="(item,index) in form.customerCompanyInfoForm.companyImages" :key="index">
+                   <img :src="imgRequest + item + '?imageView2/1/w/200/h/200'">
+                   <span class="del" @click="handelImgRemove(index)" v-if="!limit.isRead"><i class="el-icon-delete-solid"></i></span>
+                 </li>
+               </ul>
+            </div>
+        </el-form>
+    </div>
+    <div slot="footer" class="dialog-footer">
+      <el-button @click="handleCancel">取 消</el-button>
+      <el-button type="primary" @click="submit" v-if="!limit.isRead">确 定</el-button>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+import { getToken } from "@/utils/auth";
+import { deepClone } from '@/utils/index'
+import { addCompany , updateCompany , companyType } from "@/api/customerManage/company";
+export default {
+  name: 'addMobiel',
+  props: {
+    visible: {
+      type: Boolean,
+      default: false
+    },
+    title: {
+      type: String,
+      default: 'title'
+    },
+    action: {
+      type: String,
+      default: 'add'
+    },
+    selectRow: {
+      type: Object,
+      default:null
+    }
+  },
+  watch: {
+    visible(newVal, oldVal) {
+      this.modalVisible = newVal;
+    },
+    title(newVal, oldVal) {
+      this.modalTitle = newVal;
+    },
+    action(newVal, oldVal) {
+      this.modalAction = newVal;
+    },
+    selectRow(newVal, oldVal) {
+      this.modalSelectRow = newVal;
+    }
+  },
+  data() {
+    return {
+      modalTitle: this.title,
+      modalVisible: this.visible,
+      modalAction: this.action,
+      modalSelectRow: this.selectRow,
+      formLabelWidth: '1024px',
+      //窗口权限
+      limit: {
+        isRead: false, //是否只读
+        isAdd: false //是否可写
+      },
+      upload: {
+        // 是否禁用上传
+        isUploading: false,
+        // 设置上传的请求头部
+        headers: { Authorization: "Bearer " + getToken() },
+        // 上传的地址
+        url: process.env.VUE_APP_BASE_API + "/system/upload/fileImg",
+      },
+      companyTypeOptions: [],
+      fileList:[],
+      //验证
+      rules: {
+        typeName: [{ required: true, message: '类别名称不能为空!', trigger: 'blur' }]
+      },
+      //表单
+      form: {
+        customerCompanyInfoForm:{
+          companyImages:[]
+        },
+        customerInfoForm:{
+          companyType:''
+        }
+      }
+    };
+  },
+  created() {
+    //客户状态字典
+    this.getCompanyType();
+    switch (this.modalAction) {
+      case 'add':
+        this.limit.isAdd = true;
+        break;
+      case 'edit':
+        this.limit.isAdd = true;
+        this.initDatas(this.modalSelectRow)
+        break;
+      case 'view':
+        this.limit.isRead = true;
+        this.initDatas(this.modalSelectRow)
+        break;
+      default:
+        break;
+    }
+  },
+  methods: {
+    /** 企业类型列表 */
+    getCompanyType(){
+      companyType().then(res => {
+          if(res.retHead.errCode == 0){
+            this.companyTypeOptions = res.retBody
+          }
+        }
+      );
+    },
+    //数据初始化
+    initDatas(datas){
+      this.form = {
+        customerCompanyInfoForm:{
+          companyAddress: datas.companyAddress,
+          companyImages: datas.companyImages.split(';'),
+          companyName: datas.companyName,
+          email: datas.email,
+          guid:datas.guid,
+          orgCode: datas.orgCode,
+          phone: datas.phone,
+          principals: datas.principals,
+        },
+        customerInfoForm:{
+          companyType:datas.companyType
+        }
+      }
+    },
+    //表单提交
+    submit() {
+      this.$refs.from.validate(valid => {
+        if (valid) {
+          let params = deepClone(this.form)
+          params.customerCompanyInfoForm.companyImages = params.customerCompanyInfoForm.companyImages.join(';')
+          console.log(params)
+          if(this.modalAction === 'add'){
+            addCompany(params).then(res => {
+                if (res.retHead.errCode === 0) {
+                  this.msgSuccess("操作成功");
+                  this.modalVisible = false
+                 	this.$emit('closeModal', true);
+                }
+            });
+          }else{
+            updateCompany(params).then(res => {
+                if (res.retHead.errCode === 0) {
+                  this.msgSuccess("操作成功");
+                  this.modalVisible = false
+                 	this.$emit('closeModal', true);
+                }
+            });
+          }
+        } else {
+          return false;
+        }
+      });
+    },
+    // 文件上传中处理
+    handleFileUploadProgress(event, file, fileList) {
+       this.upload.isUploading = true;
+    },
+    // 上传成功处理
+    handleFileSuccess(response, file, fileList){
+       this.fileList = []
+       this.form.customerCompanyInfoForm.companyImages.push(response.retBody)
+       this.upload.isUploading = false;
+    },
+    // 图片删除
+    handelImgRemove(i){
+      this.form.customerCompanyInfoForm.companyImages.splice(i,1)
+    },
+    //窗口关闭
+    handleCancel() {
+      this.$emit('closeModal', false);
+    }
+  }
+};
+</script>
+
+<style lang="scss" scoped>
+  .hc-box{
+    border:1px solid #e9e9e9;
+    margin-bottom:20px;
+    .hc-box-header{
+        height:40px;
+        line-height:40px;
+        background:#fafafa;
+        font-weight:bold;
+        color:#333;
+        padding:0 15px;
+        .action{
+          margin-left:10px;
+          color:#304FFE
+        }
+    }
+  }
+  .uploadImg{
+    padding:0 30px 30px 30px;
+    .uploadImgList{
+      list-style:none;
+      margin:0;
+      padding:15px 0;
+      display:flex;
+      flex-flow: row;
+      li{
+        position:relative;
+        border:1px solid #ddd;
+        border-radius:6px;
+        width:120px;
+        height:120px;
+        margin-right:13px;
+        img{
+          width:100%;
+          height:100%;
+          border-radius:6px;
+        }
+        .del{
+          display:none;
+          position:absolute;
+          top: -9px;
+          right: -9px;
+          cursor:pointer;
+          i{
+            font-size:20px;
+            color:red;
+          }
+        }
+        &:hover{
+          .del{
+            display:block;
+          }
+        }
+      }
+    }
+  }
+</style>

+ 42 - 4
src/views/customerManage/customer/index.vue

@@ -1,10 +1,40 @@
 <template>
   <div class="app-container">
       <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
+        <el-form-item prop="phonenumber">
+        <el-select v-model="queryParams.customerType" placeholder="客户类型" clearable size="small">
+          <el-option
+            v-for="dict in peopleTypeOptions"
+            :key="dict.dictValue"
+            :label="dict.dictLabel"
+            :value="dict.dictValue"
+          />
+        </el-select>
+        </el-form-item>
+        <el-form-item prop="phonenumber">
+          <el-input
+            v-model="queryParams.account"
+            placeholder="客户账号"
+            clearable
+            size="small"
+            style="width: 240px"
+            @keyup.enter.native="handleQuery"
+          />
+        </el-form-item>
+        <el-form-item prop="phonenumber">
+          <el-input
+            v-model="queryParams.customerName"
+            placeholder="客户名称"
+            clearable
+            size="small"
+            style="width: 240px"
+            @keyup.enter.native="handleQuery"
+          />
+        </el-form-item>
         <el-form-item prop="phonenumber">
           <el-input
-            v-model="queryParams.condition"
-            placeholder="请输入类别名称"
+            v-model="queryParams.phone"
+            placeholder="绑定手机号"
             clearable
             size="small"
             style="width: 240px"
@@ -111,7 +141,7 @@ export default {
       // 表格数据
       list: null,
       // 状态数据字典
-      statusOptions: [],
+      peopleTypeOptions: [],
       // 表单参数
       form: {},
       //弹出层
@@ -129,6 +159,10 @@ export default {
     };
   },
   created() {
+    //申请状态字典
+    this.getDicts("customerManage_peopleType").then(response => {
+      this.peopleTypeOptions = response.data;
+    });
     this.getList();
   },
   methods: {
@@ -151,7 +185,11 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
-      this.resetForm("queryForm");
+      // this.resetForm("queryForm");
+      this.queryParams = {
+        pageNo:1,
+        pageSize:10
+      }
       this.handleQuery();
     },
     /** 查看按钮操作 */

+ 17 - 15
src/views/customerManage/customer/modal/addMobiel.vue

@@ -20,28 +20,37 @@
                     <el-input type="text" v-model="form.customerName" :disabled="limit.isRead"></el-input>
                 </el-form-item>
                 <el-form-item label="性别:">
-                    {{form.sex}}
-                    <el-radio-group v-model="form.sex">
-                       <el-radio :label="item.dictValue" :disabled="limit.isRead" v-for="(item,index) in sexOptions">{{item.dictLabel}}</el-radio>
+                    <el-radio-group v-model="form.sex" :disabled="limit.isRead">
+                       <el-radio :label="1">男</el-radio>
+                       <el-radio :label="0">女</el-radio>
                     </el-radio-group>
                 </el-form-item>
                 <el-form-item label="绑定手机:">
                     <el-input type="text" v-model="form.phone" :disabled="limit.isRead"></el-input>
                 </el-form-item>
                 <el-form-item label="绑定微信:">
-                    <el-input type="text" v-model="form.methodology" :disabled="limit.isRead"></el-input>
+                    <el-input type="text" v-model="form.wxId" :disabled="limit.isRead"></el-input>
                 </el-form-item>
                 <el-form-item label="企业认证:">
-                    <el-input type="text" v-model="form.methodology" :disabled="limit.isRead"></el-input>
+                    <el-radio-group v-model="form.isCompany" :disabled="limit.isRead">
+                       <el-radio :label="1">是</el-radio>
+                       <el-radio :label="0">否</el-radio>
+                    </el-radio-group>
                 </el-form-item>
                 <el-form-item label="个人认证:">
-                    <el-input type="text" v-model="form.methodology" :disabled="limit.isRead"></el-input>
+                    <el-radio-group v-model="form.isValidate" :disabled="limit.isRead">
+                       <el-radio :label="1">是</el-radio>
+                       <el-radio :label="0">否</el-radio>
+                    </el-radio-group>
                 </el-form-item>
                 <el-form-item label="注册时间:">
-                    <el-input type="text" v-model="form.methodology" :disabled="limit.isRead"></el-input>
+                    <el-input type="text" v-model="form.createTime" :disabled="limit.isRead"></el-input>
                 </el-form-item>
                 <el-form-item label="用户状态:">
-                    <el-input type="text" v-model="form.methodology" :disabled="limit.isRead"></el-input>
+                    <el-radio-group v-model="form.isEnable" :disabled="limit.isRead">
+                       <el-radio :label="1">启用</el-radio>
+                       <el-radio :label="0">禁用</el-radio>
+                    </el-radio-group>
                 </el-form-item>
             </el-form>
     </div>
@@ -94,8 +103,6 @@ export default {
       modalAction: this.action,
       modalSelectRow: this.selectRow,
       formLabelWidth: '1024px',
-      //字典
-      sexOptions:[],
       //窗口权限
       limit: {
         isRead: false, //是否只读
@@ -108,11 +115,6 @@ export default {
     };
   },
   created() {
-    // console.log(this.selectRow)
-    this.getDicts("system_sex").then(response => {
-      this.sexOptions = response.data;
-    });
-    console.log(this.modalSelectRow)
     switch (this.modalAction) {
       case 'view':
         this.limit.isRead = true;

+ 3 - 3
src/views/monitor/job/index.vue

@@ -108,14 +108,14 @@
         <template slot-scope="scope">
           <el-button
             size="mini"
-            type="text"
+            type="el-icon-edit"
             icon="el-icon-caret-right"
             @click="handleRun(scope.row)"
             v-hasPermi="['monitor:job:changeStatus']"
           >执行一次</el-button>
           <el-button
             size="mini"
-            type="text"
+            type="primary"
             icon="el-icon-view"
             @click="handleView(scope.row)"
             v-hasPermi="['monitor:job:query']"
@@ -473,4 +473,4 @@ export default {
     }
   }
 };
-</script>
+</script>

+ 1 - 1
src/views/monitor/online/index.vue

@@ -47,7 +47,7 @@
         <template slot-scope="scope">
           <el-button
             size="mini"
-            type="text"
+            type="primary"
             icon="el-icon-delete"
             @click="handleForceLogout(scope.row)"
             v-hasPermi="['monitor:online:forceLogout']"

+ 2 - 1
src/views/order/baseOrder/index.vue

@@ -173,7 +173,8 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
-      this.resetForm("queryForm");
+      // this.resetForm("queryForm");
+      this.dateRange = null
       this.queryParams = {
         pageNo: 1,
         pageSize: 10

+ 39 - 3
src/views/productManage/commodity/index.vue

@@ -94,10 +94,16 @@
         <el-table-column
           label="操作"
           align="center"
-          width="120"
+          width="170"
           class-name="small-padding fixed-width"
         >
           <template slot-scope="scope">
+            <el-button
+              size="mini"
+              type="primary"
+              @click="handleView(scope.row)"
+              icon="el-icon-delete"
+            >详情</el-button>
             <el-button
               size="mini"
               type="danger"
@@ -114,13 +120,25 @@
         :limit.sync="queryParams.pageSize"
         @pagination="getList"
       />
+      <add-mobiel
+      			v-if="modal.visibleModal"
+      			:title="modal.title"
+      			:action="modal.action"
+      			:visible="modal.visibleModal"
+      			:selectRow="modal.selectRow"
+      			@closeModal="closeModal">
+      		</add-mobiel>
   </div>
 </template>
 
 <script>
 import { listProduct ,listProductType , delProduct ,productAc} from "@/api/productManage/commodity";
+import addMobiel from './modal/addMobiel'
 export default {
   name: "commodity",
+  components:{
+    addMobiel
+  },
   data() {
     return {
       // 遮罩层
@@ -131,6 +149,13 @@ export default {
       total: 0,
       // 表格数据
       list: null,
+      //弹出层
+      modal:{
+        action:'',
+        title:'',
+        visibleModal:false,
+        selectRow:null
+      },
       // 商品类型
       productTypelist: [],
       productStatus:[
@@ -210,7 +235,13 @@ export default {
       }else{
         this.msgError("请先选择你想要操作的商品!")
       }
-      console.log(status)
+    },
+    /*商品查看*/
+    handleView(item){
+      this.modal.visibleModal = true
+      this.modal.title = '商品详情'
+      this.modal.action = 'view'
+      this.modal.selectRow = item
     },
     /** 删除按钮操作 */
     handleDelete(item) {
@@ -230,7 +261,12 @@ export default {
             this.msgSuccess("删除成功");
           }).catch(function() {});
       }
-    }
+    },
+    /*窗口关闭*/
+    closeModal(flag = false){
+      this.modal.visibleModal = false
+      flag && this.getList()
+    },
   }
 };
 </script>

+ 213 - 0
src/views/productManage/commodity/modal/addMobiel.vue

@@ -0,0 +1,213 @@
+<template>
+  <el-dialog
+    :title="modalTitle"
+    :visible.sync="modalVisible" :width="formLabelWidth" top="2vh" @close="handleCancel">
+    <div class="mobile">
+        <el-form label-width="90px" :model="form" :rules="rules" ref="from" class="from">
+          <el-form-item label="碳汇量:" prop="carbonVal">
+            <el-input type="text" v-model="form.carbonVal" :disabled="limit.isRead"></el-input>
+          </el-form-item>
+          <el-form-item label="认购期:" prop="goodsSaleDate">
+             <el-date-picker
+                v-model="form.goodsSaleDate"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                :disabled="limit.isRead"
+                type="date"
+                placeholder="选择日期">
+            </el-date-picker>
+          </el-form-item>
+          <el-form-item label="销售方式">
+            <el-radio-group v-model="form.saleType" :disabled="limit.isRead">
+              <el-radio v-for="(item,index) in saleTypeList" :label="item.val">{{item.label}}</el-radio>
+            </el-radio-group>
+          </el-form-item>
+          <el-form-item label="销售价格:" prop="price">
+            <el-input type="number" v-model="form.price" :disabled="limit.isRead"></el-input>
+          </el-form-item>
+          <el-form-item label="商品用途:" prop="goodsUse">
+           <el-checkbox-group v-model="form.goodsUse" :disabled="limit.isRead">
+               <el-checkbox
+                  v-for="(item,index) in goodsUseList"
+                  :label="item.val">{{item.lable}}</el-checkbox>
+           </el-checkbox-group>
+          </el-form-item>
+          <el-form-item label="销售对象:" prop="saleTargets">
+            <el-checkbox-group v-model="form.saleTargets" :disabled="limit.isRead">
+                <el-checkbox
+                   v-for="(item,index) in saleTargetsList"
+                   :label="item.val">{{item.lable}}</el-checkbox>
+            </el-checkbox-group>
+          </el-form-item>
+        </el-form>
+        <el-table
+            :data="productList"
+            height="350"
+            border
+            style="width: 100%">
+            <el-table-column label="序号" type="index" width="50" align="center" />
+            <el-table-column prop="productCode" label="产品编码" align="center"></el-table-column>
+            <el-table-column prop="productName" label="产品名称" align="center"></el-table-column>
+            <el-table-column label="帮扶区域" align="center"  width="160">
+              <template slot-scope="scope">
+                {{scope.row.povertyArea.areaAddress}}
+              </template>
+            </el-table-column>
+            <el-table-column label="帮扶主体" align="center"  width="160">
+              <template slot-scope="scope">
+                {{scope.row.productBelongs[0].farmerInfo.farmerName}}
+              </template>
+            </el-table-column>
+            <el-table-column prop="carbonSink" label="碳汇量" align="center"></el-table-column>
+            <el-table-column prop="modifiedTime" label="创建时间" align="center"></el-table-column>
+          </el-table>
+    </div>
+    <div slot="footer" class="dialog-footer">
+      <el-button @click="handleCancel">取 消</el-button>
+      <el-button type="primary" @click="submit" v-if="!limit.isRead">确 定</el-button>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+import { Listproduct } from "@/api/productManage/commodity";
+export default {
+  name: 'addMobiel',
+  props: {
+    visible: {
+      type: Boolean,
+      default: false
+    },
+    title: {
+      type: String,
+      default: 'title'
+    },
+    selectRow: {
+      type: Object,
+      default:null
+    },
+    action: {
+      type: String,
+      default: 'add'
+    }
+  },
+  watch: {
+    visible(newVal, oldVal) {
+      this.modalVisible = newVal;
+    },
+    title(newVal, oldVal) {
+      this.modalTitle = newVal;
+    },
+    action(newVal, oldVal) {
+      console.log(newVal)
+      this.modalAction = newVal;
+    },
+    selectRow(newVal, oldVal) {
+      this.modalSelectRow = newVal;
+    }
+  },
+  data() {
+    return {
+      modalTitle: this.title,
+      modalVisible: this.visible,
+      modalSelectRow: this.selectRow,
+      modalAction:this.action,
+      formLabelWidth: '1024px',
+      //窗口权限
+      limit: {
+        isRead: false, //是否只读
+        isAdd: false //是否可写
+      },
+      //验证
+      // rules: {
+      //   carbonVal: [{ required: true, message: '碳汇量不能为空!', trigger: 'blur' }],
+      //   goodsSaleDate: [{ required: true, message: '认购期不能为空!', trigger: 'blur' }],
+      //   price: [{ required: true, message: '销售价格不能为空!', trigger: 'blur' }],
+      //   goodsUse: [{ required: true, message: '商品用途不能为空!', trigger: 'blur' }],
+      //   saleTargets: [{ required: true, message: '销售对象不能为空!', trigger: 'blur' }]
+      // },
+      //销售方式
+      saleTypeList:[
+        {
+          label:"按整体销售",
+          val:'1'
+        },
+        {
+          label:"按公斤销售",
+          val:'2'
+        }
+      ],
+      //商品用途
+      goodsUseList:[
+        {
+          lable:'履约',
+          val:'1'
+        },
+        {
+          lable:'中和',
+          val:'2'
+        },
+        {
+          lable:'普惠',
+          val:'3'
+        }
+      ],
+      //销售对象
+      saleTargetsList:[
+        {
+          lable:'自然人',
+          val:'1'
+        },
+        {
+          lable:'履约企业',
+          val:'2'
+        },
+        {
+          lable:'认证企业',
+          val:'3'
+        }
+      ],
+      productList:[],
+      //表单
+      form: {}
+    };
+  },
+  created() {
+    switch (this.modalAction) {
+      case 'add':
+        this.limit.isAdd = true;
+        break;
+      case 'edit':
+        this.limit.isAdd = true;
+        break;
+      case 'view':
+        this.limit.isRead = true;
+        let datas = Object.assign({},this.modalSelectRow)
+        this.form = datas
+        this.form.goodsUse = datas.goodsUse.split(';')
+        this.form.saleTargets = datas.saleTargets.split(';')
+        this.getProductList(this.form.guid)
+        break;
+      default:
+        break;
+    }
+  },
+  methods: {
+    getProductList(id){
+      Listproduct(id).then(res => {
+          if(res.retHead.errCode == 0){
+            this.productList = res.retBody
+          }
+        }
+      );
+    },
+    //窗口关闭
+    handleCancel() {
+      this.$emit('closeModal', false);
+    }
+  }
+};
+</script>
+
+<style lang="scss" scoped>
+
+</style>

+ 252 - 0
src/views/productManage/priceManage/index.vue

@@ -0,0 +1,252 @@
+<template>
+  <div class="app-container">
+      <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
+        <el-form-item>
+          <el-select v-model="queryParams.fkProductType" placeholder="定价类目" clearable size="small">
+            <el-option
+              v-for="dict in priceTypeOptions"
+              :key="dict.guid"
+              :label="dict.typeName"
+              :value="dict.guid"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item>
+          <el-select v-model="queryParams.checkState" placeholder="定价状态" clearable size="small">
+            <el-option key="0" label="待审核" value="0"/>
+            <el-option key="1" label="审核通过" value="1"/>
+            <el-option key="2" label="审核未通过" value="2"/>
+          </el-select>
+        </el-form-item>
+        <el-form-item>
+            <el-date-picker
+              v-model="queryParams.checkTime"
+              value-format="yyyy-MM-dd"
+              type="date"
+              placeholder="定价日期">
+            </el-date-picker>
+        </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"
+          >新增定价</el-button>
+        </el-col>
+        <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+      </el-row>
+      <el-table v-loading="loading" :data="list">
+        <el-table-column label="序号" type="index" width="50" align="center" />
+        <el-table-column label="定价类目" align="center" prop="typeName" />
+        <el-table-column label="价格(元/kg)" align="center" prop="price" />
+        <el-table-column label="备注说明" align="center" prop="checkRemark" />
+        <el-table-column label="定价日期" align="center" prop="modifiedTime" />
+        <el-table-column label="定价状态" align="center"  width="160">
+          <template slot-scope="scope">
+            <span v-if="scope.row.checkState == 0">待审核</span>
+            <span v-else-if="scope.row.checkState == 1">审核通过</span>
+            <span v-else="scope.row.checkState">审核未通过</span>
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="操作"
+          align="center"
+          width="280"
+          class-name="small-padding fixed-width"
+        >
+          <template slot-scope="scope">
+            <el-button
+              size="mini"
+              type="warning"
+              v-if="scope.row.checkState == 0"
+              @click="handleCheck(scope.row)"
+            >审核</el-button>
+            <!-- <el-button
+              size="mini"
+              type="primary"
+              icon="el-icon-view"
+              @click="handleView(scope.row)"
+            >查看</el-button> -->
+            <el-button
+              size="mini"
+              type="danger"
+              @click="handleDelete(scope.row)"
+              icon="el-icon-delete"
+            >删除</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <pagination
+        v-show="total>0"
+        :total="total"
+        :page.sync="queryParams.pageNo"
+        :limit.sync="queryParams.pageSize"
+        @pagination="getList"
+      />
+      <add-mobiel
+      			v-if="modal.add.visibleModal"
+      			:title="modal.add.title"
+      			:action="modal.add.action"
+      			:visible="modal.add.visibleModal"
+      			:selectRow="modal.add.selectRow"
+      			@closeAddModal="closeAddModal">
+      		</add-mobiel>
+      <check-mobiel
+        v-if="modal.check.visibleModal"
+        :title="modal.check.title"
+        :action="modal.check.action"
+        :visible="modal.check.visibleModal"
+        :selectRow="modal.check.selectRow"
+        @closeCheckModal="closeCheckModal">
+      </check-mobiel>
+  </div>
+</template>
+
+<script>
+import { listPrice , delPrice , priceType } from "@/api/productManage/priceManage";
+import addMobiel from './modal/addMobiel'
+import checkMobiel from './modal/checkMobiel'
+export default {
+  name: "company",
+  components: {
+    addMobiel,
+    checkMobiel
+  },
+  data() {
+    return {
+      // 遮罩层
+      loading: false,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 表格数据
+      list: null,
+      // 状态数据字典
+      priceTypeOptions: [],
+      // 表单参数
+      form: {},
+      //弹出层
+      modal:{
+        add:{
+          action:'',
+          title:'',
+          visibleModal:false,
+          selectRow:null
+        },
+        check:{
+          action:'',
+          title:'',
+          visibleModal:false,
+          selectRow:null
+        }
+      },
+      // 查询参数
+      queryParams: {
+        pageNo: 1,
+        pageSize: 10
+      }
+    };
+  },
+  created() {
+    this.getPriceType();
+    this.getList();
+  },
+  methods: {
+    /** 定价类型列表 */
+    getPriceType(){
+      priceType({}).then(res => {
+          if(res.retHead.errCode == 0){
+            this.priceTypeOptions = res.retBody
+          }
+        }
+      );
+    },
+    /** 查询列表 */
+    getList() {
+      this.loading = true;
+      listPrice(this.queryParams).then(res => {
+          if(res.retHead.errCode == 0){
+            this.list = res.retBody
+            this.total = res.retHead.total;
+          }
+          this.loading = false;
+        }
+      );
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNo = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.queryParams = {
+        pageNo: 1,
+        pageSize: 10
+      }
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+        this.modal.add.visibleModal = true
+        this.modal.add.title = '新增定价'
+        this.modal.add.action = 'add'
+    },
+    /** 审核按钮操作 */
+    handleCheck(item){
+        this.modal.check.visibleModal = true
+        this.modal.check.title = '定价审核'
+        this.modal.check.action = 'add'
+        this.modal.check.selectRow = item
+    },
+    /** 查看按钮操作 */
+    // handleView(item){
+    //     this.modal.visibleModal = true
+    //     this.modal.title = '定价详情'
+    //     this.modal.action = 'view'
+    //     this.modal.selectRow = item
+    // },
+    /** 查看按钮操作 */
+    // handleEdit(item){
+    //     this.modal.visibleModal = true
+    //     this.modal.title = '定价编辑'
+    //     this.modal.action = 'edit'
+    //     this.modal.selectRow = item
+    // },
+    /** 删除按钮操作 */
+    handleDelete(item) {
+      let params = {
+          guid:item.guid
+      }
+      this.$confirm('是否确认删除该数据项?', "警告", {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning"
+        }).then(function() {
+          return delPrice(params);
+        }).then(() => {
+          this.getList();
+          this.msgSuccess("删除成功");
+        }).catch(function() {});
+    },
+    //窗口关闭
+    closeAddModal(flag = false){
+      this.modal.add.visibleModal = false
+      flag && this.getList()
+    },
+    closeCheckModal(flag = false){
+      this.modal.check.visibleModal = false
+      flag && this.getList()
+    }
+  }
+};
+</script>

+ 179 - 0
src/views/productManage/priceManage/modal/addMobiel.vue

@@ -0,0 +1,179 @@
+<template>
+  <el-dialog
+    :title="modalTitle"
+    :visible.sync="modalVisible"
+    :width="formLabelWidth"
+    top="2vh"
+    @close="handleCancel">
+    <div class="mobile">
+        <el-form label-width="90px" :model="form" :rules="rules" ref="from" class="from">
+            <el-form-item label="价格:" prop="price">
+                <el-input type="text" v-model="form.price" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+            <el-form-item label="购买类别:" prop="checklist">
+              <el-checkbox-group v-model="form.checklist" @change="selectType">
+                  <el-checkbox
+                    v-for="(item,index) in priceTypelist"
+                    :label="item.guid + ':' +item.typeName"
+                    :key="item.guid"
+                    >{{item.typeName}}</el-checkbox>
+              </el-checkbox-group>
+            </el-form-item>
+            <el-form-item label="备注说明:">
+                <el-input type="textarea" v-model="form.checkRemark" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+        </el-form>
+    </div>
+    <div slot="footer" class="dialog-footer">
+      <el-button @click="handleCancel">取 消</el-button>
+      <el-button type="primary" @click="submit" v-if="!limit.isRead">确 定</el-button>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+import { addPrice , priceType } from "@/api/productManage/priceManage";
+export default {
+  name: 'addMobiel',
+  props: {
+    visible: {
+      type: Boolean,
+      default: false
+    },
+    title: {
+      type: String,
+      default: 'title'
+    },
+    action: {
+      type: String,
+      default: 'add'
+    },
+    selectRow: {
+      type: Object,
+      default:null
+    }
+  },
+  watch: {
+    visible(newVal, oldVal) {
+      this.modalVisible = newVal;
+    },
+    title(newVal, oldVal) {
+      this.modalTitle = newVal;
+    },
+    action(newVal, oldVal) {
+      this.modalAction = newVal;
+    },
+    selectRow(newVal, oldVal) {
+      this.modalSelectRow = newVal;
+    }
+  },
+  data() {
+    return {
+      modalTitle: this.title,
+      modalVisible: this.visible,
+      modalAction: this.action,
+      modalSelectRow: this.selectRow,
+      formLabelWidth: '1024px',
+      //窗口权限
+      limit: {
+        isRead: false, //是否只读
+        isAdd: false //是否可写
+      },
+      priceTypelist:[],
+      //验证
+      rules: {
+        price: [{ required: true, message: '订价不能为空!', trigger: 'blur' }],
+        checklist: [{ required: true, message: '购买类别不能为空!', trigger: 'blur' }],
+      },
+      //表单
+      form: {
+        checklist:[]
+      }
+    };
+  },
+  created() {
+    this.getPriceType();
+    switch (this.modalAction) {
+      case 'add':
+        this.limit.isAdd = true;
+        break;
+      case 'edit':
+        this.limit.isAdd = true;
+        // this.initDatas(this.modalSelectRow)
+        break;
+      case 'view':
+        this.limit.isRead = true;
+        // this.initDatas(this.modalSelectRow)
+        break;
+      default:
+        break;
+    }
+  },
+  methods: {
+    /** 定价类别列表 */
+    getPriceType(){
+      priceType({}).then(res => {
+          if(res.retHead.errCode == 0){
+            this.priceTypelist = res.retBody
+          }
+        }
+      );
+    },
+    /*选择类型*/
+    selectType(val){
+        this.checkValues = [];
+        this.checkLabels= [];
+        val.forEach(item=>{
+          const value = item.split(':')[0];
+          const label= item.split(':')[1];
+          this.checkValues.push(value);
+          this.checkLabels.push(label);
+        });
+    },
+    //表单提交
+    submit() {
+      this.$refs.from.validate(valid => {
+        if (valid) {
+          let params = Object.assign({},this.form)
+          params.fkProductType = this.checkValues.join(',')
+          params.typeName = this.checkLabels.join(',')
+          delete params.checklist
+          console.log(params)
+          addPrice(params).then(res => {
+              if (res.retHead.errCode === 0) {
+                this.msgSuccess("操作成功");
+                this.modalVisible = false
+                this.$emit('closeAddModal', true);
+              }
+          });
+        } else {
+          return false;
+        }
+      });
+    },
+    //窗口关闭
+    handleCancel() {
+      this.$emit('closeAddModal', false);
+    }
+  }
+};
+</script>
+
+<style lang="scss" scoped>
+  .hc-box{
+    border:1px solid #e9e9e9;
+    margin-bottom:20px;
+    .hc-box-header{
+        height:40px;
+        line-height:40px;
+        background:#fafafa;
+        font-weight:bold;
+        color:#333;
+        padding:0 15px;
+        .action{
+          margin-left:10px;
+          color:#304FFE
+        }
+    }
+  }
+</style>

+ 142 - 0
src/views/productManage/priceManage/modal/checkMobiel.vue

@@ -0,0 +1,142 @@
+<template>
+  <el-dialog
+    :title="modalTitle"
+    :visible.sync="modalVisible"
+    :width="formLabelWidth"
+    top="2vh"
+    @close="handleCancel">
+    <div class="mobile">
+        <el-form label-width="90px" :model="form" :rules="rules" ref="from" class="from">
+            <el-form-item label="审核状态:" prop="checkState">
+              <el-radio-group v-model="form.checkState">
+                <el-radio label="1">审核通过</el-radio>
+                <el-radio label="2">审核未通过</el-radio>
+              </el-radio-group>
+            </el-form-item>
+            <el-form-item label="备注说明:" prop="checkRemark" v-if="form.checkState == 2">
+                <el-input type="textarea" v-model="form.checkRemark" :disabled="limit.isRead"></el-input>
+            </el-form-item>
+        </el-form>
+    </div>
+    <div slot="footer" class="dialog-footer">
+      <el-button @click="handleCancel">取 消</el-button>
+      <el-button type="primary" @click="submit" v-if="!limit.isRead">确 定</el-button>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+import { checkPrice } from "@/api/productManage/priceManage";
+export default {
+  name: 'checkMobiel',
+  props: {
+    visible: {
+      type: Boolean,
+      default: false
+    },
+    title: {
+      type: String,
+      default: 'title'
+    },
+    action: {
+      type: String,
+      default: 'add'
+    },
+    selectRow: {
+      type: Object,
+      default:null
+    }
+  },
+  watch: {
+    visible(newVal, oldVal) {
+      this.modalVisible = newVal;
+    },
+    title(newVal, oldVal) {
+      this.modalTitle = newVal;
+    },
+    action(newVal, oldVal) {
+      this.modalAction = newVal;
+    },
+    selectRow(newVal, oldVal) {
+      this.modalSelectRow = newVal;
+    }
+  },
+  data() {
+    return {
+      modalTitle: this.title,
+      modalVisible: this.visible,
+      modalAction: this.action,
+      modalSelectRow: this.selectRow,
+      formLabelWidth: '624px',
+      //窗口权限
+      limit: {
+        isRead: false, //是否只读
+        isAdd: false //是否可写
+      },
+      priceTypelist:[],
+      //验证
+      rules: {
+        checkState: [{ required: true, message: '审核状态不能为空!', trigger: 'blur' }],
+        checkRemark: [{ required: true, message: '备注不能为空!', trigger: 'blur' }],
+      },
+      //表单
+      form: {
+        checkState:'1'
+      }
+    };
+  },
+  created() {
+    switch (this.modalAction) {
+      case 'add':
+        this.limit.isAdd = true;
+        break;
+      default:
+        break;
+    }
+  },
+  methods: {
+    //表单提交
+    submit() {
+      this.$refs.from.validate(valid => {
+        if (valid) {
+          let params = Object.assign({},this.form)
+          params.guid = this.modalSelectRow.guid
+          console.log(params)
+          checkPrice(params).then(res => {
+              if (res.retHead.errCode === 0) {
+                this.msgSuccess("操作成功");
+                this.modalVisible = false
+                this.$emit('closeCheckModal', true);
+              }
+          });
+        } else {
+          return false;
+        }
+      });
+    },
+    //窗口关闭
+    handleCancel() {
+      this.$emit('closeCheckModal', false);
+    }
+  }
+};
+</script>
+
+<style lang="scss" scoped>
+  .hc-box{
+    border:1px solid #e9e9e9;
+    margin-bottom:20px;
+    .hc-box-header{
+        height:40px;
+        line-height:40px;
+        background:#fafafa;
+        font-weight:bold;
+        color:#333;
+        padding:0 15px;
+        .action{
+          margin-left:10px;
+          color:#304FFE
+        }
+    }
+  }
+</style>

+ 6 - 5
src/views/productManage/productInfo/modal/addMobiel.vue

@@ -378,6 +378,7 @@ export default {
       }
       detailProduct(params).then(res => {
           if(res.retHead.errCode == 0){
+            console.log(res.retBody)
             this.form = res.retBody
             this.form.productImgs = res.retBody.productImgs.split(';')
             this.productAuxlist = res.retBody.productExpansions
@@ -385,18 +386,18 @@ export default {
                 console.log("productBelongs")
                 this.activeHelpType = 0
                 this.activeTabField =  tableHeader.singleUser
-                this.selecLinksTable = res.retBody.productBelong
-                this.form.productBelongs = res.retBody.productBelong
+                this.selecLinksTable = res.retBody.productBelong === null ? [] : res.retBody.productBelong
+                this.form.productBelongs = res.retBody.productBelong === null ? [] : res.retBody.productBelong
                 this.form.collectiveFarmerForm = []
             }else{
                 console.log("collectiveFarmerForm")
                 this.activeHelpType = 1
                 this.activeTabField =  tableHeader.gatherUser
-                this.selecLinksTable = res.retBody.collectiveFarmer
-                this.form.collectiveFarmerForm = res.retBody.collectiveFarme
+                this.selecLinksTable = res.retBody.collectiveFarmer === null ? [] : res.retBody.collectiveFarmer
+                this.form.collectiveFarmerForm = res.retBody.collectiveFarmer === null ? [] : res.retBody.collectiveFarmer
                 this.form.productBelongs = []
             }
-            console.log(this.form)
+            console.log("this.form:",this.form)
           }
       });
     },

+ 1 - 2
src/views/system/operlog/index.vue

@@ -121,7 +121,7 @@
         <template slot-scope="scope">
           <el-button
             size="mini"
-            type="text"
+            type="primary"
             icon="el-icon-view"
             @click="handleView(scope.row,scope.index)"
             v-hasPermi="['system:operlog:query']"
@@ -307,4 +307,3 @@ export default {
   }
 };
 </script>
-

+ 3 - 2
vue.config.js

@@ -35,11 +35,12 @@ module.exports = {
       // detail: https://cli.vuejs.org/config/#devserver-proxy
       [process.env.VUE_APP_BASE_API]: {
         // target: `http://172.16.90.94:21998`,
-        // target: `http://bobo.hw.hongweisoft.com/lymcq`,
+        target: `http://bobo.hw.hongweisoft.com/lymcq`,
         // target: `http://172.16.90.64:21998`,
         // target: `http://172.16.90.102:21998`, //qiubo
         // target: `http://172.16.90.110:21998`, //lql
-        target: `http://172.16.90.8:21998`, //zdd
+        // target: `http://172.16.90.8:21998`, //zdd
+        // target: `http://47.108.214.98:21998`, //online
         changeOrigin: true,
         pathRewrite: {
           ['^' + process.env.VUE_APP_BASE_API]: ''