Sfoglia il codice sorgente

Merge branch 'master' of http://47.100.3.209:3000/gdc/yiliangyiyun-pc

zhangyuewww 3 anni fa
parent
commit
f04356c8bf

+ 9 - 3
src/api/V2/platformaudit/index.js

@@ -8,7 +8,13 @@ export const API_POST_TRANSACTIONINFORMATIONREVIEW = '/procurementPlanInfo/api/e
 export const API_GET_GRAINMERCHANT_LIST = '/identityAuthenticationInfo/selectIdentityAuthenticationInfoPc'
 //司机列表
 export const API_GET_DRIVER_LIST = '/driverViewInfo/selectDriverInfoPage'
-//交易信息列表
+//交易信息列表(采购)
 export const API_GET_TRANSACTIONINFORMATION_LIST = '/procurementPlanInfo/selectProcurementPlanInfo'
-//交易信息删除
-export const API_POST_DELETETRANSACTIONINFORMATION = '/procurementPlanInfo/api/deleteProcurementPlan'
+//交易信息删除(采购)
+export const API_POST_DELETETRANSACTIONINFORMATION = '/procurementPlanInfo/api/deleteProcurementPlan'
+//交易信息列表(销售)
+export const API_GET_SALE_LIST = '/salePlanInfo/selectSalePlanInfo'
+//交易信息删除(销售)
+export const API_POST_DELETESALE = '/salePlanInfo/api/deleteSalePlanInfo'
+//交易信息审核(销售)
+export const API_POST_SALEREVIEW = '/salePlanInfo/api/examine'

+ 1 - 1
src/api/V2/salesManagement/index.js

@@ -16,7 +16,7 @@ export const API_GET_SALE_ORDER_LIST = '/saleOrder/selectSaleOrder'
 export const API_POST_SALE_ORDER_DEAL = '/saleOrder/api/deal'
 //销售订单平仓
 export const API_POST_SALE_CLOSEPOSITION = '/saleOrder/api/closePosition'
-//销售订单审核编辑
+//销售订单审核
 export const API_POST_ADUIT_SALE = '/saleOrder/api/editSaleOrder'
 //销售订单合同编号下拉列表
 export const API_GET_ADUIT_CONTRACTNO = '/warehouseBaseInfo/selectContractNoList'

+ 2 - 1
src/lang/zh.js

@@ -583,7 +583,8 @@
     platformaudit: '平台审核',
     grainmerchantreview: '粮商审核',
     driverreview: '司机审核',
-    transactioninformationreview: '交易信息审核',
+    transactioninformationreview: '采购交易信息审核',
+    saletransactioninformationreview: '销售交易信息审核',
 
     // 采购模块
     procurement: '采购管理',

+ 11 - 2
src/model/platformaudit/index.js

@@ -7,7 +7,10 @@ import {
     API_GET_GRAINMERCHANT_LIST,
     API_GET_DRIVER_LIST,
     API_GET_TRANSACTIONINFORMATION_LIST,
-    API_POST_DELETETRANSACTIONINFORMATION
+    API_POST_DELETETRANSACTIONINFORMATION,
+    API_GET_SALE_LIST,
+    API_POST_DELETESALE,
+    API_POST_SALEREVIEW,
 } from '@/api/V2/platformaudit'
 // import { app } from 'electron'
 // 粮商审核
@@ -23,4 +26,10 @@ export const driverList = appRx.get(API_GET_DRIVER_LIST, errorCatcher, errorHand
 //交易信息列表
 export const transactionInformationList = appRx.get(API_GET_TRANSACTIONINFORMATION_LIST, errorCatcher, errorHandle, filter)
 // 交易信息删除
-export const deleteTransactionInformation = appRx.post(API_POST_DELETETRANSACTIONINFORMATION, errorCatcher, errorHandle, filter)
+export const deleteTransactionInformation = appRx.post(API_POST_DELETETRANSACTIONINFORMATION, errorCatcher, errorHandle, filter)
+//销售交易信息列表
+export const saleList = appRx.get(API_GET_SALE_LIST, errorCatcher, errorHandle, filter)
+// 销售交易信息删除
+export const deletesale = appRx.post(API_POST_DELETESALE, errorCatcher, errorHandle, filter)
+// 销售交易信息审核
+export const saleexamine = appRx.post(API_POST_SALEREVIEW, errorCatcher, errorHandle, filter)

+ 16 - 1
src/views/platformaudit/component/router/route.js

@@ -43,7 +43,7 @@ const platformauditRouter = {
         },
       },
 
-      //交易信息审核
+      //采购交易信息审核
       {
         path: 'transactioninformationreview',
         component: () =>
@@ -57,6 +57,21 @@ const platformauditRouter = {
           keepAlive: true
         },
       },
+
+      //销售交易信息审核
+      {
+        path: 'saletransactioninformationreview',
+        component: () =>
+          import(/* webpackChunkName: "applDetail" */ '@/views/platformaudit/saletransactioninformationreview'),
+        name: 'saletransactioninformationreview',
+        meta: {
+          title: 'saletransactioninformationreview',
+          shortcutEntrance: 'saletransactioninformationreview',
+          module: 'warehouseManagement.warehouse.warehouseInfo',
+          permissicon: [],
+          keepAlive: true
+        },
+      },
     ],
 };
 export default platformauditRouter;  

+ 582 - 0
src/views/platformaudit/saletransactioninformationreview.vue

@@ -0,0 +1,582 @@
+<!--销售交易信息审核-->
+<template>
+  <div>
+    <BaseHeaderLayout :leftSpan="15">
+      <template slot="right">
+        <span style="width: 70px; display: inline-block; color: #8890b1"
+          >状态:</span
+        >
+        <ws-select
+          v-model="searchTypeText"
+          placeholder=""
+          class="typeselect"
+          @change="selectExamineType"
+          :value="searchType"
+        >
+          <ws-option
+            v-for="item in searchTypeList"
+            :key="item.value"
+            :label="item.value"
+            :value="item.value"
+            style="color: #8890b1"
+          />
+        </ws-select>
+        <ws-input
+          v-model="searchKeyWord"
+          placeholder="可按编号、发布企业和发布方查找"
+          clearable
+          maxlength="500"
+          type="input"
+        ></ws-input>
+        <ws-button class="find" type="primary" @click="lookUp()"
+          ><img
+            width="16"
+            height="16"
+            style="
+              vertical-align: text-top;
+              position: relative;
+              top: 0px;
+              left: -5px;
+            "
+            src="../../../public/img/sousuo.png"
+            alt=""
+        /></ws-button>
+        <!-- </div> -->
+      </template>
+    </BaseHeaderLayout>
+    <div class="container">
+      <el-table
+        class="wenzi"
+        :data="tranManagementList.records"
+        style="width: 100%"
+        height="780"
+      >
+        <el-table-column type="index" label="序号" width="50">
+          <template scope="scope">
+            <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
+            <span v-else>{{ scope.$index + 1 }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column prop="salePlanNo" label="编号" > </el-table-column>
+        <el-table-column prop="seller" label="发布企业/发布人" >
+        </el-table-column>
+        <el-table-column label="发布平台" > 
+          <template scope="scope">
+            <span v-if="scope.row.pcFlag==1">PC端</span>
+            <span v-else>移动端</span>
+          </template>
+        </el-table-column>
+        <el-table-column prop="goodsName" label="货名" > </el-table-column>
+        <el-table-column prop="plannedSaleVolume" label="重量(吨)" > </el-table-column>
+        <el-table-column prop="salePlanType" label="交易类型" > </el-table-column>
+        <el-table-column prop="basisPrice" label="基差(元/吨)" > </el-table-column>
+        <el-table-column prop="unitPrice" label="价格(元/吨)" > </el-table-column>
+        <el-table-column prop="sellerPhone" label="电话" > </el-table-column>
+        <el-table-column prop="updateDate" label="更新时间" width="140"> </el-table-column>
+        <el-table-column prop="" label="操作" width="180">
+          <template slot-scope="scope">
+            <div
+              class="record"
+              @click="nocomplete(scope.row)"
+              v-hasPermission="
+           `warehouseManagement.warehouse.warehouseInfoTask.View`
+          "
+            >查看</div>
+            <div
+              class="record"
+              @click="delivery(scope.row)"
+              v-hasPermission="
+           `transportationTask.transportation.transportationInfo.edit`
+          "
+            >编辑</div>
+            <div
+              class="record"
+              @click="deleteclick(scope.row)"
+              v-hasPermission="
+           `transportationTask.transportation.transportationInfo.delete`
+          "
+            >删除</div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="address" label="审核" >
+          <template slot-scope="scope">
+            <el-button
+              size="medium"
+              type="text"
+              class="record"
+              v-if="scope.row.statusFlag==1"
+              @click="reject(scope.row)"
+              >驳回</el-button
+            >
+            <el-button
+              size="medium"
+              type="text"
+              class="record"
+              v-if="scope.row.statusFlag==1"
+              @click="adopt(scope.row)"
+              >通过</el-button
+            >
+            <template v-else slot-scope="scope"> 
+            {{ scope.row.status}}
+          </template>
+          </template>
+        </el-table-column>
+      </el-table>
+      <el-pagination
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+        :current-page="currentPage"
+        :page-size="deptCircularPage.pageSize"
+        layout="total, sizes, prev, pager, next, jumper"
+        :total="deptBudgetTotal"
+      >
+      </el-pagination>
+    </div>
+  </div>
+</template>
+<script>
+import { saleList ,deletesale ,saleexamine} from '@/model/platformaudit/index'
+import Pagination from '@/components/Pagination'
+import WsUpload from '@/components/WsUpload'
+import { EventBus } from 'base-core-lib'
+import { billoperatehis } from '@/model/contarct/index'
+export default {
+  name: 'viewSpareMoney',
+  components: {
+    WsUpload,
+    Pagination,
+  },
+  watch: {
+    vesselId(val) {
+      this.getList()
+    },
+    isShow(val) {
+      this.showType = val
+    },
+  },
+  data() {
+    return {
+      //弹出框
+      dialogViewSpareMoney: false,
+      dialogApproveFormVisible: false,
+      // 船舶类型
+      monetaryKey: null,
+      // 表格显示数据
+      tableDate: [],
+
+      // 是否显示
+      showType: true,
+      // 年
+      year: '',
+      currentPage: 1,
+      pageSize: 10,
+      deptBudgetTotal: 0,
+      searchTypeText: '待审核',
+      searchKeyWord: '',
+      // 提交类型
+      submitType: true,
+      size: 10,
+      spanArr: [],
+      warehouseName: '',
+      searchType: 1,
+      startDate: null,
+      endDate: null,
+      compId: sessionStorage.getItem('ws-pf_compId'),
+      deptCircularPage: {},
+      tranManagementList: [],
+      deptBudgetList: {},
+      historyList: [],
+      inOutDate: [],
+      searchTypeList: [
+        { value: '待审核', type: 1 },
+        { value: '已通过', type: 2 },
+        { value: '全部', type: '' },
+      ],
+      salePlanInfo:{
+        id: '',
+        flag: '',
+      },
+      pickerBeginDateBefore: {
+        disabledDate: (time) => {
+          return time.getTime() > Date.now()
+        },
+      },
+      accessoryTFs: false,
+    }
+  },
+  activated() {
+    //cg.viewBudget
+    //cg.viewSpareMoney
+    // this.getVesselData();
+    this.getList()
+    this.showType = this.isShow
+  },
+  methods: {
+    getSpanArr(data) {
+      let that = this
+      //页面展示的数据,不一定是全部的数据,所以每次都清空之前存储的 保证遍历的数据是最新的数据。以免造成数据渲染混乱
+      that.spanArr = []
+      that.pos = 0
+      //遍历数据
+      data.forEach((item, index) => {
+        //判断是否是第一项
+
+        // if (index === 0) {
+        //   this.spanArr.push(1)
+        //   this.pos = 0
+        // } else {
+        //不是第一项时,就根据标识去存储
+        if (data[index].warehouseNumViewList.length > 1) {
+          // 查找到符合条件的数据时每次要把之前存储的数据+1
+          this.spanArr[this.pos] = data[index].warehouseNumViewList.length
+          this.spanArr.push(0)
+        } else {
+          // 没有符合的数据时,要记住当前的index
+          this.spanArr.push(1)
+          this.pos = index
+        }
+        // }
+      })
+    },
+    //删除
+    deleteclick(row) {
+      //cancelButtonClass: "btn-custom-cancel"
+      this.$confirm(`交易信息删除后不可恢复,是否确定删除?`, {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      })
+        .then(() => {
+          deletesale ({
+            id: row.id
+          })
+            .toPromise()
+            .then(response => {
+              this.getList()
+            })
+        })
+        .catch(() => {
+          return false
+        })
+    },
+    //查看//传参
+    nocomplete(row) {
+      this.$router.push({
+        name: 'salesPlanLook',
+        query: {
+          id: row.id,
+        },
+      })
+    },
+    //编辑
+     delivery(row) {
+      this.$router.push({
+        name: 'salesPlanEdit',
+        query: {
+          id: row.id,
+        },
+      })
+    },
+    //查找
+    lookUp() {
+      this.currentPage = 1
+      this.getList()
+    },
+    selectExamineType(e) {
+      for (var i = 0; i < this.searchTypeList.length; i++) {
+        if (this.searchTypeList[i].value == e) {
+          this.searchType = this.searchTypeList[i].type
+        }
+      }
+    },
+    //审核通过
+    adopt(row) {
+      this.salePlanInfo.id = row.id
+      this.salePlanInfo.flag = 1
+      this.$confirm(`确定通过该认证信息?`, '提示', {
+        confirmButtonText: '通过',
+        cancelButtonText: '取消',
+        type: 'warning',
+      })
+        .then(() => {
+          saleexamine( this.salePlanInfo )
+            .toPromise()
+            .then((response) => {
+              
+              this.$notify.success({
+                title: '成功',
+                message: '通过成功',
+              })
+              this.getList()
+            })
+            .catch((response) => {
+              console.log(response)
+              EventBus.$emit('error', response.message)
+            })
+        })
+        .catch(() => {
+          return false
+        })
+    },
+    //审核驳回
+    reject(row) {
+       this.salePlanInfo.id = row.id
+       this.salePlanInfo.flag = 2
+      this.$confirm(`确定驳回该认证信息?`, '提示', {
+        confirmButtonText: '驳回',
+        cancelButtonText: '取消',
+        type: 'warning',
+      })
+        .then(() => {
+          saleexamine(this.salePlanInfo)
+            .toPromise()
+            .then((response) => {
+              this.$notify.success({
+                title: '成功',
+                message: '驳回成功',
+              })
+              this.getList()
+            })
+            .catch((response) => {
+              console.log(response)
+              EventBus.$emit('error', response.message)
+            })
+        })
+        .catch(() => {
+          return false
+        })
+    },
+    dateFormat(fmt, date) {
+      let ret
+      const opt = {
+        'Y+': date.getFullYear().toString(), // 年
+        'm+': (date.getMonth() + 1).toString(), // 月
+        'd+': date.getDate().toString(), // 日
+        'H+': date.getHours().toString(), // 时
+        // "M+": date.getMinutes().toString(),         // 分
+        // "S+": date.getSeconds().toString()          // 秒
+        // 有其他格式化字符需求可以继续添加,必须转化成字符串
+      }
+      for (let k in opt) {
+        ret = new RegExp('(' + k + ')').exec(fmt)
+        if (ret) {
+          fmt = fmt.replace(
+            ret[1],
+            ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
+          )
+        }
+      }
+      return fmt
+    },
+    handleClose() {
+      this.accessoryTFs = false
+    },
+    handleSizeChange(val) {
+      console.log(`每页 ${val} 条`)
+      this.pageSize = val
+      this.getList()
+    },
+    handleCurrentChange(val) {
+      this.currentPage = val
+      console.log(`当前页: ${val}`)
+      this.getList()
+    },
+    //销售
+    sale() {
+      this.getList()
+    },
+    //销售列表
+    getList() {
+      saleList ({
+        compId: sessionStorage.getItem('ws-pf_compId'),
+        searchType: this.searchType,
+        currentPage: this.currentPage,
+        pageSize: this.pageSize,
+        searchKeyWord: this.searchKeyWord,
+      })
+        .toPromise()
+        .then((response) => {
+          this.tranManagementList = response
+          this.deptCircularPage.currentPage = response.current
+          this.deptCircularPage.pageSize = response.size
+          this.deptBudgetTotal = response.total
+        })
+    },
+    //更改状态
+    editClick(row) {
+      var status = ''
+      if (row.processStatus == '待执行' || row.processStatus == '已完成') {
+        status = '执行中'
+      } else if (row.processStatus == '执行中') {
+        status = '已完成'
+      }
+      this.$confirm(`是否将状态改为${status}`, {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning',
+      })
+        .then(() => {
+          alsostate({ id: row.id })
+            .toPromise()
+            .then((response) => {
+              this.$notify.success({
+                title: '成功',
+                message: '状态修改成功',
+              })
+              this.getList()
+            })
+            .catch((response) => {
+              // EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
+            })
+        })
+        .catch(() => {
+          return false
+        })
+    },
+    selecttaskType(e) {
+      for (var i = 0; i < this.taskTypeList.length; i++) {
+        if (this.taskTypeList[i].value == e) {
+          this.searchType = this.taskTypeList[i].type
+        }
+      }
+    },
+    fujian(row) {
+      if (
+        row.receiveAttachmentPath === null ||
+        row.receiveAttachmentPath === ''
+      ) {
+        EventBus.$emit(
+          'warning',
+          this.$t('system.noticeCircular.NoInformation')
+        )
+      } else {
+        this.accessoryTFs = true
+      }
+      this.appendixIdss = row.receiveAttachmentPath
+    },
+    // 关闭 dialog时 处理文件url 初始化upload组件
+    handleCloe() {
+      this.dialogViewSpareMoney = false
+    },
+    history(row) {
+      billoperatehis({ id: row.id })
+        .toPromise()
+        .then((response) => {
+          this.historyList = response
+        })
+    },
+  },
+}
+</script>
+<style lang="scss" scoped>
+.container {
+  width: 100%;
+  margin: 0 auto;
+}
+.vertical-text-left {
+  width: 62px;
+  text-align: right;
+}
+.el-button--primary {
+  background-color: #5878e8;
+  border-color: #5878e8;
+}
+.el-button--default {
+  color: #8890b1;
+  border-color: #e8eaf1;
+}
+/deep/.base_header_layout .grid-content.right .find.el-button--primary {
+  width: 30px;
+  margin-left: 0;
+  border-top-left-radius: 0px;
+  border-bottom-left-radius: 0px;
+}
+/deep/.findValue .el-input__inner {
+  border-top-right-radius: 0px;
+  border-bottom-right-radius: 0px;
+}
+//操作按钮
+.record,
+.adjustment {
+  display: inline-block;
+  color: #5878e8;
+  padding: 0 4px !important;
+  position: relative;
+  font-size: 14px;
+}
+.record:after {
+  position: absolute;
+  content: '';
+  display: block;
+  top: 5px;
+  right: -2px;
+  width: 1px;
+  height: 12px;
+  background: #e9ecf7;
+}
+//状态样式
+.executory,
+.inExecution,
+.done {
+  width: 6px;
+  height: 6px;
+  display: inline-block;
+  border-radius: 50%;
+  position: relative;
+  top: -1px;
+  font-size: 14px;
+}
+.executory {
+  background: #ff9f24;
+}
+.inExecution {
+  background: #5878e8;
+}
+.done {
+  background: #50cad4;
+}
+.putstorage.el-button--default,
+.deliverystorage.el-button--default {
+  border-color: #8890b1;
+  background-color: #fff;
+  color: #8890b1;
+}
+/deep/.el-table td,
+/deep/.el-table th.is-leaf {
+  border-right: 1px solid #e9ecf7;
+  text-align: center;
+}
+/deep/.el-table tr td:first-child,
+/deep/.el-table tr th.is-leaf:first-child {
+  border-left: 1px solid #e9ecf7;
+}
+.el-row {
+  height: 60px;
+}
+.base_header_layout .grid-content {
+  margin-top: 80px;
+}
+
+.el-input--small .el-input__inner {
+  margin-left: 20px;
+}
+.el-range-editor--small.el-input__inner {
+  height: 32px;
+  margin: 0 10px;
+}
+/deep/.el-pagination {
+  text-align: center;
+  white-space: nowrap;
+  padding: 2px 5px;
+  color: #303133;
+  font-weight: 700;
+  margin-bottom: 20px;
+}
+.el-select {
+  width: 30%;
+  margin-right: 10px;
+}
+/deep/.typeselect .el-input__inner {
+  color: #8890b1;
+}
+</style>

+ 8 - 43
src/views/platformaudit/transactioninformationreview.vue

@@ -1,23 +1,7 @@
-<!--交易信息审核-->
+<!--采购交易信息审核-->
 <template>
   <div>
     <BaseHeaderLayout :leftSpan="15">
-      <template slot="left">
-        <div class="purchase"><el-button
-          class="bg-bottom"
-          type="primary"
-          size="small"
-          @click="purchase()"
-          >采购</el-button
-        ></div>
-        <div class="sale"><el-button
-          class="bg-bottom"
-          type="primary"
-          size="small"
-          @click="sale()"
-          >销售</el-button
-        ></div>
-      </template>
       <template slot="right">
         <span style="width: 70px; display: inline-block; color: #8890b1"
           >状态:</span
@@ -83,7 +67,7 @@
           </template>
         </el-table-column>
         <el-table-column prop="goodsName" label="货名" > </el-table-column>
-        <el-table-column prop="weight" label="重量(吨)" > </el-table-column>
+        <el-table-column prop="plannedPurchaseVolume" label="重量(吨)" > </el-table-column>
         <el-table-column prop="procurementPlanType" label="交易类型" > </el-table-column>
         <el-table-column prop="basisPrice" label="基差(元/吨)" > </el-table-column>
         <el-table-column prop="unitPrice" label="价格(元/吨)" > </el-table-column>
@@ -397,6 +381,11 @@ export default {
       console.log(`当前页: ${val}`)
       this.getList()
     },
+    //采购
+    purchase() {
+      this.getList()
+    },
+    //采购列表
     getList() {
       transactionInformationList({
         compId: sessionStorage.getItem('ws-pf_compId'),
@@ -413,6 +402,7 @@ export default {
           this.deptBudgetTotal = response.total
         })
     },
+    //更改状态
     editClick(row) {
       var status = ''
       if (row.processStatus == '待执行' || row.processStatus == '已完成') {
@@ -464,12 +454,6 @@ export default {
       }
       this.appendixIdss = row.receiveAttachmentPath
     },
-    handleExamine(row) {
-      this.$router.push({
-        name: 'salesContractExamine',
-        query: { id: row.id },
-      })
-    },
     // 关闭 dialog时 处理文件url 初始化upload组件
     handleCloe() {
       this.dialogViewSpareMoney = false
@@ -481,22 +465,6 @@ export default {
           this.historyList = response
         })
     },
-    find() {
-      if (this.inOutDate != null) {
-        if (this.inOutDate.length != 0) {
-          this.startDate = this.dateFormat('YYYY-mm-dd', this.inOutDate[0])
-          this.endDate = this.dateFormat('YYYY-mm-dd', this.inOutDate[1])
-        } else {
-          this.startDate = ''
-          this.endDate = ''
-        }
-      } else {
-        this.startDate = ''
-        this.endDate = ''
-      }
-      this.currentPage = 1
-      this.getList()
-    },
   },
 }
 </script>
@@ -608,9 +576,6 @@ export default {
   width: 30%;
   margin-right: 10px;
 }
-.sale {
-  margin-left: 50px;
-}
 /deep/.typeselect .el-input__inner {
   color: #8890b1;
 }

+ 3 - 2
src/views/purchasingManagement/purchaseOrderList.vue

@@ -182,7 +182,7 @@
                   </el-form-item>
                   <el-form-item label="成交日期" prop="submissionDate" :label-width="formLabelWidth" class="deal">
                     <ws-date-picker
-                      v-model="clinchdeal.dealDate"
+                      v-model="clinchdeal1.dealDate"
                       type="date"
                       placeholder="请选择成交日期"
                       value-format="yyyy-MM-dd"
@@ -669,6 +669,7 @@ dialogImageUrl:"",
     makeabargain(item){
         this.dialogFormVisible1 = true
         this.clinchdeal.id=item.id
+        this.clinchdeal.commonId=item.commonId
     },
     deletehandle(item){
       this.$confirm(`采购订单删除后不可恢复,是否确定删除?`, {
@@ -919,7 +920,7 @@ dialogImageUrl:"",
         type: 'warning'
       })
       .then(() => {
-      chengList({transactionRecord:this.clinchdeal1,id:this.clinchdeal.id,compId:sessionStorage.getItem('ws-pf_compId'),dealDate:this.clinchdeal.dealDate})
+      chengList({transactionRecord:this.clinchdeal1,id:this.clinchdeal.id,commonId:this.clinchdeal.commonId,compId:sessionStorage.getItem('ws-pf_compId')})
         .toPromise()
         .then((response) => {
           this.$message.success('成交成功')

+ 1 - 1
src/views/salesManagement/salesPlanList.vue

@@ -7,7 +7,7 @@
       <template slot="right">
         <ws-input
           v-model="searchKeyWord"
-          placeholder="可按采购计划编号和标题查找"
+          placeholder="可按销售计划编号和标题查找"
           clearable
           maxlength="500"
           type="input"

+ 95 - 53
src/views/salesManagement/salesPlanOrderList.vue

@@ -269,7 +269,7 @@
           <el-button
             v-if="scope.row.status == '已通过' || scope.row.status == '已成交'"
             class="record"
-            @click="dialogFormVisible1 = true"
+            @click="makeabargain(scope.row)"
             >成交</el-button
           >
           <!-- 补充定金 -->
@@ -325,20 +325,21 @@
       layout="total, sizes, prev, pager, next, jumper"
       :total="deptBudgetTotal"
     ></el-pagination>
+    <!--成交-->
     <el-dialog
       width="30%"
       title="成交"
       :visible.sync="dialogFormVisible1"
       :append-to-body="true"
     >
-      <el-form ref="warehouseList" :model="warehouseList">
+      <el-form ref="warehouseList">
         <el-form-item
           label="成交价(元/吨)"
           prop="transactionPrice"
           :label-width="formLabelWidth"
         >
           <el-input
-            v-model="warehouseList.transactionPrice"
+            v-model="clinchdeal1.transactionPrice"
             autocomplete="off"
             placeholder="请输入成交价"
             class="deal"
@@ -350,7 +351,7 @@
           :label-width="formLabelWidth"
         >
           <el-input
-            v-model="warehouseList.transactionsNumber"
+            v-model="clinchdeal1.turnover"
             autocomplete="off"
             placeholder="请输入成交量"
             class="deal"
@@ -362,7 +363,7 @@
           :label-width="formLabelWidth"
         >
           <el-input
-            v-model="warehouseList.basis"
+            v-model="clinchdeal1.basis"
             autocomplete="off"
             placeholder="请输入基差"
             class="deal"
@@ -375,7 +376,7 @@
           class="deal"
         >
           <ws-date-picker
-            v-model="deptBudgetList.submissionDate"
+            v-model="clinchdeal1.dealDate"
             type="date"
             placeholder="请选择成交日期"
             value-format="yyyy-MM-dd"
@@ -385,9 +386,10 @@
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button @click="dialogFormVisible1 = false">取 消</el-button>
-        <el-button type="primary" @click="submit()">确 定</el-button>
+        <el-button type="primary" @click="chengjiao()">确 定</el-button>
       </div>
     </el-dialog>
+    <!-- 补充定金 -->
     <el-dialog
       width="40%"
       title="补充定金"
@@ -416,6 +418,7 @@
         <el-button type="primary" @click="replenish">确 定</el-button>
       </div>
     </el-dialog>
+    <!-- 平仓 -->
     <el-dialog
       width="40%"
       title="平仓"
@@ -424,12 +427,19 @@
     >
       <el-form class="closeposition">
         <el-form-item label="成交价格(元/吨)" prop="transactionPrice">
-          <el-select
-            v-model="closePositionList1.transactionPrice"
-            autocomplete="off"
-            placeholder="请输入成交价"
-            class="deal"
-          ></el-select>
+           <ws-select
+              v-model="closePositionList1.transactionPrice"
+              placeholder
+              class="deal"
+              placeholder="请输入成交价"
+            >
+              <ws-option
+                v-for="item in transactionRecordList"
+                :key="item.constKey"
+                :label="item.transactionPrice"
+                :value="item.transactionPrice"
+              />
+            </ws-select>
         </el-form-item>
         <el-form-item label="可平仓数量(吨)" prop="openPosition">
           <el-input
@@ -456,7 +466,7 @@
         </el-form-item>
         <el-form-item label="平仓基差(元/吨)" prop="closingBasis">
           <el-input
-            v-model="closePositionList1.closingBasis"
+            v-model="closePositionList1.basis"
             autocomplete="off"
             placeholder="请输入平仓基差"
             class="deal"
@@ -487,7 +497,7 @@
         >
       </div>
     </el-dialog>
-
+    <!-- 审核 -->
     <el-dialog
       width="40%"
       title="审核"
@@ -600,6 +610,7 @@
         <el-button type="primary" @click="aduitconfirm">通过</el-button>
       </div>
     </el-dialog>
+    <!-- 客户信息 -->
     <el-dialog
       width="30%"
       title="客户信息"
@@ -674,6 +685,7 @@
         <el-button @click="dialogFormVisible8 = false">取 消</el-button>
       </div>
     </el-dialog>
+    <!-- 成交记录 -->
     <el-dialog
       width="40%"
       title="成交记录"
@@ -706,6 +718,7 @@
         <el-table-column prop="dealDate" label="成交日期"> </el-table-column>
       </el-table>
     </el-dialog>
+    <!--改价记录-->
     <el-dialog
       width="30%"
       title="改价记录"
@@ -775,6 +788,8 @@ export default {
       },
       formLabelWidth: '120px',
       basischange: false,
+      clinchdeal:{},
+      clinchdeal1:{},
       barWidth: 0,
       barHeight: 0,
       retioX: 1,
@@ -819,7 +834,7 @@ export default {
       submitType: true,
       size: 10,
       spanArr: [],
-      contractNo: '',
+      // contractNo: '',
       customerlist: {},
       packingTypeList: [],
       inOutTaskNo: '',
@@ -827,6 +842,7 @@ export default {
       deptCircularPage: {},
       warehouseList: [],
       deptBudgetList: {},
+      transactionRecordList:{},
       pcFlag: 1,
       invoiceList: [],
       contractNolist: [],
@@ -859,6 +875,31 @@ export default {
     this.showType = this.isShow
   },
   methods: {
+    handle(item){
+         this.$confirm(`状态修改为已完成后不可再进行交易操作,是否确定修改?`, {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+          type: 'warning',
+        })
+          .then(() => {
+            editStatus({id:item.id,flag:2}).toPromise()
+            .then(response => {
+            this.$message.success('修改成功')
+            this.getList()
+            }).catch(req => {
+              this.$message.success('修改失败')
+            })
+          })
+    },
+    makeabargain(item){
+      this.dialogFormVisible1 = true
+      this.clinchdeal.id=item.id
+      this.clinchdeal.contractNo=item.contractNo
+      this.clinchdeal.goodsName=item.goodsName
+      this.clinchdeal.planId=item.planId
+      this.clinchdeal.buyer=item.buyer
+      this.clinchdeal.commonId=item.commonId
+    },
     deletehandle(item) {
       this.$confirm(`销售订单删除后不可恢复,是否确定删除?`, {
         confirmButtonText: '确定',
@@ -876,21 +917,27 @@ export default {
           })
       })
     },
-    closepositionconfirm() {
-      closePositionList(this.closePositionList1)
-        .toPromise()
-        .then((response) => {
-          this.$message.success('修改基差成功')
+    closepositionconfirm(){
+      this.closePositionList1.compId=sessionStorage.getItem('ws-pf_compId')
+      closePositionList(this.closePositionList1).toPromise()
+        .then(response => {
+          this.$message.success('平仓成功')
           this.getList()
-        })
-        .catch((req) => {
-          this.$message.success('修改基差失败')
+        }).catch(req => {
+          this.$message.warning('平仓失败')
         })
     },
-    cloaeposition1(item) {
+    cloaeposition1(item){
       this.dialogFormVisible2 = true
-      this.$set(this.closePositionList1, 'id', item.id)
-      this.$set(this.closePositionList1, 'openPosition', item.openPosition)
+      this.$set(this.closePositionList1,'id',item.id)
+      this.transactionRecordList=item.transactionRecordList
+      this.$set(this.closePositionList1,'openPosition',item.openPosition)
+      this.$set(this.closePositionList1,'transactionsNumber',item.transactionsNumber)
+      this.$set(this.closePositionList1,'contractNo',item.contractNo)
+      this.$set(this.closePositionList1,'planId',item.planId)
+      this.$set(this.closePositionList1,'closeRate',item.closeRate)
+      this.$set(this.closePositionList1,'seller',item.seller)
+      this.$set(this.closePositionList1,'commonId',item.commonId)
     },
     changebasis(item) {
       editStatus({ basis: this.basis, id: item.id, flag: 3 })
@@ -1073,18 +1120,13 @@ export default {
         cancelButtonText: '取消',
         type: 'warning',
       }).then(() => {
-        console.log(this.aduitlist)
         aduitsale(this.aduitlist)
-          .toPromise()
-          .then((response) => {
-            console.log(response)
               .toPromise()
-              .then((response) => {
-                this.$message.success('审核成功')
-                this.$router.push({ path: 'tranManagementWarehouseInOuttask' })
-              })
-          })
-      })
+              .then(response => {
+              this.$message.success('审核成功')
+              this.getList()
+            })
+        })
     },
     Changepricerecord(item) {
       this.dialogFormVisible5 = true
@@ -1115,8 +1157,8 @@ export default {
     },
 
     //成交
-    submit() {
-      if (!this.warehouseList.transactionPrice) {
+    chengjiao() {
+      if (!this.clinchdeal1.transactionPrice) {
         this.$message({
           message: '成交价不能为空',
           type: 'warning',
@@ -1128,19 +1170,19 @@ export default {
         confirmButtonText: '确定',
         type: 'warning',
       }).then(() => {
-        console.log(23456678790)
-        chengList(this.warehouseList)
-          .toPromise()
-          .then((response) => {
-            this.$message.success('添加成功')
-
-            // this.$router.go(-1)
-          })
-          .catch(() => {
-            console.log(1111111111)
-            return false
-          })
+        chengList({transactionRecord:this.clinchdeal1,id:this.clinchdeal.id,compId:sessionStorage.getItem('ws-pf_compId'),
+        contractNo:this.clinchdeal.contractNo,planId:this.clinchdeal.planId,goodsName:this.clinchdeal.goodsName,buyer:this.clinchdeal.buyer,commonId:this.clinchdeal.commonId})
+        .toPromise()
+        .then((response) => {
+          this.$message.success('成交成功')
+         this.dialogFormVisible1 = false
+          // this.$router.go(-1)
+        })
+        .catch(() => {
+          return false
+        })
       })
+      
     },
     selectpackingType(e) {
       for (var i = 0; i < this.packingTypeList.length; i++) {
@@ -1157,7 +1199,6 @@ export default {
       }
     },
     getList() {
-      console.log(123456)
       detailsList({
         compId: sessionStorage.getItem('ws-pf_compId'),
         currentPage: this.currentPage,
@@ -1170,6 +1211,7 @@ export default {
         .then((response) => {
           for (var i = 0; i < response.records.length; i++) {
             response.records[i].basischange = false
+            response.records[i].openPosition=response.records[i].cumulativeTurnover-response.records[i].closedPosition-response.records[i].stockInQuantity
           }
           this.warehouseList = response
           this.deptCircularPage.currentPage = response.current
@@ -1191,7 +1233,7 @@ export default {
       // 合同编号
       aduitcontractno({
         compId: sessionStorage.getItem('ws-pf_compId'),
-        flag: 0,
+        flag: 1,
       })
         .toPromise()
         .then((response) => {