loulijun2021
2023-06-06 3a9c0a33f8358cd81542994701436fbc99def3da
1.生产入库调用畅捷通接口入库
已修改4个文件
114 ■■■■■ 文件已修改
src/api/basicInfo.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/global.js 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/produceManager/productWarehouse.vue 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/basicInfo.js
@@ -41,3 +41,11 @@
    method: 'get'
  })
}
// 获取AppTicket
export function AppTicketSelect() {
  return request({
    url: 'Message/AppTicketSelect',
    method: 'get'
  })
}
src/main.js
@@ -43,6 +43,10 @@
Vue.prototype.$headerCellStyle = headerCellStyle() // 设置全局表头样式
Vue.prototype.$cellStyle = cellStyle() // 设置全局表体样式
Vue.prototype.$chanjetBaseUrl = 'https://openapi.chanjet.com'
Vue.prototype.$AppKey = 'Umm1gS5q'
Vue.prototype.$AppSecret = 'FFAD54C4FBF9AAF1AFA33BBF3DF52752'
// import 'lib-flexible' // 阿里可伸缩布局方案
// import 'lib-flexible-computer'
src/utils/global.js
@@ -1,4 +1,7 @@
import { NewEncodingRules } from '@/api/systemSettings'
import { AppTicketSelect } from '@/api/basicInfo'
import axios from 'axios'
import Vue from 'vue'
// 全局主要颜色
export function getGlobalColor() {
@@ -50,6 +53,7 @@
  // return `${y}-${m}-${d}  ${hh}:${mm}:${ss}   ${week}`
  return `${y}-${m}-${d}  ${hh}:${mm}:${ss}`
}
// 时间处理函数   返回 时分
export function handleDatetime3(value) {
  const dt = new Date(value)
@@ -98,3 +102,24 @@
    }
  }
}
// 获取token 用于请求畅捷通接口
export async function getTPlusToken() {
  const r1 = await AppTicketSelect()
  const r2 = r1.data[0]
  Vue.prototype.$AppKey = r2.appKey
  Vue.prototype.$AppSecret = r2.appSecret
  const data = {
    appTicket: r2.AppTicket,
    certificate: r2.certificate
  }
  const r3 = await axios.post(Vue.prototype.$chanjetBaseUrl + '/v1/common/auth/selfBuiltApp/generateToken',
    data, {
      headers: {
        'appKey': Vue.prototype.$AppKey,
        'appSecret': Vue.prototype.$AppSecret,
        'Content-Type': 'application/json'
      }
    })
  return r3.data.value.accessToken
}
src/views/produceManager/productWarehouse.vue
@@ -249,7 +249,8 @@
              icon="el-icon-s-promotion"
              @click="submit"
            >入库提交</el-button>
            >入库提交
            </el-button>
            <!--            <el-button v-waves type="info" icon="el-icon-refresh" @click="reset">重置</el-button>-->
          </div>
        </el-form>
@@ -689,9 +690,15 @@
  ProductInHouseOrderSearch, ProductInHouseOrderSeave,
  ProductInHouseWkshopOrder
} from '@/api/produceManager'
import { handleDatetime, handleDatetime2 } from '@/utils/global'
import { ErpUserSelect, ErpWarehouseSelect, ErpWkshopDepartmentSelect } from '@/api/basicInfo'
import { getTPlusToken, handleDatetime, handleDatetime2 } from '@/utils/global'
import {
  ErpUserSelect,
  ErpWarehouseSelect,
  ErpWkshopDepartmentSelect
} from '@/api/basicInfo'
import { getCookie } from '@/utils/auth'
import Vue from 'vue'
import axios from 'axios'
export default {
  name: 'Zzjg',
@@ -985,8 +992,70 @@
      this.tableDataSummary = newData.flat()
    },
    async  submit() {
      await this.tabClick()
      // const openToken = await getTPlusToken() // 获取TPlus   token
      const openToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJpc3YiLCJpc3MiOiJjaGFuamV0IiwidXNlcklkIjoiMzkwNTU0MDg2NTMwMjYxIiwib3JnSWQiOiIxMjM0OTc5MDE3MjIxMDM3IiwiYWNjZXNzX3Rva2VuIjoiYmstOGIwNDUxNzEtMDk5Yy00ODFlLTgyZDEtY2Q5NWQ2MjUzZGUwIiwiYXVkIjoiaXN2IiwibmJmIjoxNjg2MDQ3NTgyLCJhcHBJZCI6IjU4Iiwic2NvcGUiOiJhdXRoX2FsbCIsImlkIjoiNjA5Y2ZhYzItNzZmOC00NzJiLWI2NGEtMDg1NmRjMWZmYTg4IiwiZXhwIjoxNjg2NTY1OTgyLCJpYXQiOjE2ODYwNDc1ODIsIm9yZ0FjY291bnQiOiJ1dXhicGtzbTBibmgifQ.slZ_ix3DoGBX2WUX1TOiwe7jCEqDHf9Kc-Gn6cVCFZk'
      // 有源单
      const RDRecordDetails = []
      this.tableDataSummary.forEach((i, index) => {
        RDRecordDetails.push({
          Code: index + 1, // 行号,从1开始自增长
          SourceVoucherId: this.tableDataDetail[0].mpoid, // 来源单据的单据ID
          BaseQuantity: i.stinhouseqty, // 主计量单位数量
          SourceVoucherDetailId: i.sourceVoucherDetailId, // 来源单据的对应明细ID
          Inventory: {
            Code: i.materiel_code // 存货编码
          },
          IdSourceVoucherType: 69
        })
      })
      const data = {
        'dto': {
          'Warehouse': {
            'Code': '03'// 仓库编码
          },
          'Code': this.form.hbillno, // 单据编码
          'IsModifiedCode': true,
          'BusiType': {
            'Code': '03'// 业务类型编码
          },
          'Department': {
            'Code': this.form.wkshopcode// 部门编码
          },
          'VoucherDate': handleDatetime(new Date().getTime()), // 单据日期
          'RdStyle': {
            'Code': '21'// 出库类别编码
          },
          'RDRecordDetails': RDRecordDetails,
          'Clerk': {
            'Code': this.userArr.find(i => i.name === getCookie('username')).code // 业务员code
          },
          'ExternalCode': this.form.hbillno,
          'VoucherType': {
            'Code': 'ST1002'
          }
        }
      }
      const res = await axios.post(Vue.prototype.$chanjetBaseUrl + '/tplus/api/v2/ProductReceiveOpenApi/Create',
        data, {
          headers: {
            'openToken': openToken,
            'appKey': Vue.prototype.$AppKey,
            'appSecret': Vue.prototype.$AppSecret,
            'Content-Type': 'application/json'
          }
        }
      )
      if (res.data.code === 0) {
        this.$message.success('入库成功!')
      // 再加一些入库成功之后的逻辑
      }
    },
    // 入库提交
    submit() {
    submit2() {
      this.tabClick()
      this.$confirm('是否确认提交?', '提示', {