From 2c6707d61828222afb7e53f7d11e5e6eac78b3d3 Mon Sep 17 00:00:00 2001 From: wangsongsole Date: Wed, 31 Aug 2022 10:45:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=85=91=E6=8D=A2=E7=A0=81?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../exchangecode/exchangecodeAdd/index.jsx | 277 ++++-------------- src/pages/exchangecode/list/list.js | 3 +- 2 files changed, 60 insertions(+), 220 deletions(-) diff --git a/src/pages/exchangecode/exchangecodeAdd/index.jsx b/src/pages/exchangecode/exchangecodeAdd/index.jsx index e8e5bd9d..2398f6ab 100644 --- a/src/pages/exchangecode/exchangecodeAdd/index.jsx +++ b/src/pages/exchangecode/exchangecodeAdd/index.jsx @@ -40,7 +40,7 @@ import { Column2, rulesInfo, codeInfo, init } from "./utils" const initArray = (targetNum) => { return Array.from({ length: targetNum }, (_, index) => index) } - +let code_batch_id = "" export default class exchangeAdd extends React.Component { constructor(props) { super(props) @@ -49,6 +49,7 @@ export default class exchangeAdd extends React.Component { componentDidMount() { const isState = ~~sessionStorage.getItem("isState") /*复制1 编辑2 */ + code_batch_id = ~~sessionStorage.getItem("code_id") /* 兑换码id */ this.setState({ isState }) if (isState === 1) { /* 复制 */ @@ -63,7 +64,6 @@ export default class exchangeAdd extends React.Component { /* 编辑处理数据 */ editFunction() { - let code_batch_id = sessionStorage.getItem("code_id") let approval_id = sessionStorage.getItem("approval_id") let approval_status = sessionStorage.getItem("approval_status") if (Number(approval_id) > 0) { @@ -281,222 +281,70 @@ export default class exchangeAdd extends React.Component { /* 复制处理数据 */ copyFunction() { - let code_batch_id = sessionStorage.getItem("code_id") - let approval_id = sessionStorage.getItem("approval_id") - let approval_status = sessionStorage.getItem("approval_status") - /* 被复制得兑换码id */ - let copy_code_id = ~~sessionStorage.getItem("copy_code_id") - if (Number(approval_id) > 0) { - //此处为审核中 - getApprovalsInfo(approval_id) - .then((res) => { - handelResponse( - res, - (req, msg) => { - let resller_obj = { - id: req.reseller_id, - name: req.reseller_name, - company_name: req.company_name, - receive_email: req.receive_email - } + getCodesDetail(code_batch_id) + .then((res) => { + handelResponse( + res, + (req, msg) => { + let reqCopy = _.cloneDeep(req) + const resData = this.transFormData(reqCopy) + reqCopy.goods = resData + let codeInfo = { + code_name: reqCopy.title /* 兑换码名称 count++ */, + issued: reqCopy.quantity, + stock: reqCopy.stock, + describe: reqCopy.describe, + date_time: [reqCopy.begin_time, reqCopy.end_time], + range: reqCopy.goods + } - //获取分销商 - getReseller(req.reseller_id).then((res) => { - handelResponse(res, (req1, msg) => { - req1.receive_email = req1.contact_email[0] - this.setState({ reseller: req1 }) - this.setState({ phone_list: req1.contact_phone }) - this.setState({ email_list: req1.contact_email }) - this.setState({ - direct_reseller_id: req1.direct_reseller_id - }) + this.setState({ plan_time: reqCopy.plan.end_time }) + //获取分销商 + getReseller(reqCopy.plan.reseller_id).then((res) => { + handelResponse(res, (req1, msg) => { + req1.receive_email = req1.contact_email[0] + this.setState({ + reseller: req1, + phone_list: req1.contact_phone, + email_list: req1.contact_email, + direct_reseller_id: req1.direct_reseller_id }) }) + }) - this.setState({ reseller: resller_obj }) + this.setState({ isload: true, codeInfo: codeInfo }) + _.map(reqCopy.goods, (res) => { + res.checked = true + return res + }) + this.setState({ tempdata: reqCopy.goods || [] }) - req.update_product = [...this.transFormData1(req.update_product)] - req.new_product = [...this.transFormData1(req.new_product, true)] - - let codeInfo = { - code_name: req.title, - issued: req.quantity, - stock: req.stock, - describe: req.describe, - date_time: [req.begin_time, req.end_time], - range: req.update_product + let a1 = reqCopy.goods.map((item) => { + let obj = { + ...item, + in: true } + return obj + }) + sessionStorage.setItem("productData", JSON.stringify(a1)) + sessionStorage.setItem("knockGoldData", JSON.stringify(a1)) - if (req.new_product.length > 0) { - req.new_product = _.map(req.new_product, (item) => { - item.checked = false - return item - }) - codeInfo.range = codeInfo.range.concat(req.new_product) - } - - let new_ids = _.map(req.new_product, (o) => { - return o.only - }) - - this.setState({ new_product: new_ids }) - let delete_product = req.delete_product - let payment_direction = req.payment_direction - getCodesDetail(code_batch_id) - .then((res) => { - handelResponse( - res, - (req, msg) => { - codeInfo.stock = req.stock - this.setState({ plan_time: req.plan.end_time }) - let reqCopy = _.cloneDeep(req) - const resData = this.transFormData(reqCopy) - this.setState({ oldTable: resData }) - let deleteArr = [] - - for (let i = 0; i < delete_product.length; i++) { - let deleteData = resData.find( - (o) => o.only == delete_product[i] - ) - deleteData.checked = false - deleteArr.push(deleteData) - } - this.setState({ codeInfo: codeInfo }) - this.setState({ isload: true }) - codeInfo.range = codeInfo.range.concat(deleteArr) - let table = _.map(codeInfo.range, (res) => { - let obj = resData.find((o) => o.only == res.only) - - res.usage = obj ? obj.usage : 0 - res.stock = obj ? obj.stock : res.quantity - res.usage - res.checked = res.hasOwnProperty("checked") - ? res.checked - : true - if (approval_status == 7 && obj) { - res.checked = true - } - - return res - }) - - this.setState({ deleteProduct: [] }) - - this.setState({ tempdata: codeInfo.range }) - - let arr = [] - let temp = [] - _.map(codeInfo.range, (res) => { - let obj = {} - obj.key = res.only - obj.text = res.product_name - if (new_ids.indexOf(res.only) < 0) { - this.state.oldProduct.push(res.id) - } - if ( - table.find((o) => o.only == res.only).checked == true - ) { - temp.push(obj) - } - arr.push(obj) - return obj - }) - - this.setState({ rankoptions: arr }) - this.setState({ rank: temp }) - - if (payment_direction) { - let index = - this.state.payment_direction.indexOf( - payment_direction - ) - this.setState({ paytype: index + 1 }) - } - sessionStorage.setItem( - "productData", - JSON.stringify(codeInfo.range) - ) - sessionStorage.setItem( - "knockGoldData", - JSON.stringify(codeInfo.range) - ) - }, - (err) => {} - ) - }) - .catch((err) => {}) - }, - (err) => {} - ) - }) - .catch((err) => {}) - } else { - getCodesDetail(code_batch_id) - .then((res) => { - handelResponse( - res, - (req, msg) => { - let reqCopy = _.cloneDeep(req) - const resData = this.transFormData(reqCopy) - reqCopy.goods = resData - let codeInfo = { - code_name: reqCopy.title /* 兑换码名称 count++ */, - issued: reqCopy.quantity, - stock: reqCopy.stock, - describe: reqCopy.describe, - date_time: [reqCopy.begin_time, reqCopy.end_time], - range: reqCopy.goods - } - - this.setState({ plan_time: reqCopy.plan.end_time }) - //获取分销商 - getReseller(reqCopy.plan.reseller_id).then((res) => { - handelResponse(res, (req1, msg) => { - req1.receive_email = req1.contact_email[0] - this.setState({ reseller: req1 }) - this.setState({ phone_list: req1.contact_phone }) - this.setState({ email_list: req1.contact_email }) - this.setState({ - direct_reseller_id: req1.direct_reseller_id - }) - }) - }) - - this.setState({ codeInfo: codeInfo }) - this.setState({ isload: true }) - _.map(reqCopy.goods, (res) => { - res.checked = true - return res - }) - this.setState({ tempdata: reqCopy.goods || [] }) - - let a1 = reqCopy.goods.map((item) => { - let obj = { - ...item, - in: true - } - return obj - }) - sessionStorage.setItem("productData", JSON.stringify(a1)) - sessionStorage.setItem("knockGoldData", JSON.stringify(a1)) - - let arr = [] - _.map(reqCopy.goods, (res) => { - let obj = {} - obj.key = res.only - obj.text = res.product_name - obj.id = res.id - this.state.oldProduct.push(res.id) - arr.push(obj) - return obj - }) - this.setState({ rankoptions: arr }) - this.setState({ rank: arr }) - }, - (err) => {} - ) - }) - .catch((err) => {}) - } + let arr = [] + _.map(reqCopy.goods, (res) => { + let obj = {} + obj.key = res.only + obj.text = res.product_name + obj.id = res.id + this.state.oldProduct.push(res.id) + arr.push(obj) + return obj + }) + this.setState({ rankoptions: arr, rank: arr }) + }, + (err) => {} + ) + }) + .catch((err) => {}) } // 立减金 加款后 商品范围列表数据进行变动 @@ -647,14 +495,9 @@ export default class exchangeAdd extends React.Component { } buildData() { - let code_batch_id = sessionStorage.getItem("code_id") - let range = [] _.map(this.state.rank, (o) => { - // if(this.state.oldProduct.indexOf(o.key) < 0) - // { range.push(o.text) - // } }) let selectData = this.refs.tempdata.getSelectData() let addProduct = selectData.filter((o) => { @@ -760,7 +603,6 @@ export default class exchangeAdd extends React.Component { return } - let code_batch_id = sessionStorage.getItem("code_id") let { data } = this.buildData() putCodesBatch(code_batch_id, data).then((res) => { handelResponse( @@ -794,7 +636,6 @@ export default class exchangeAdd extends React.Component { Notify.error("还有图片上传中,不可提交") return } - let code_batch_id = sessionStorage.getItem("code_id") let { data, addProduct, updateProduct } = this.buildData() if ([...updateProduct, ...addProduct].length < 1) { diff --git a/src/pages/exchangecode/list/list.js b/src/pages/exchangecode/list/list.js index 1cc44d39..2ce60ed9 100644 --- a/src/pages/exchangecode/list/list.js +++ b/src/pages/exchangecode/list/list.js @@ -173,15 +173,14 @@ export default class acclist extends React.Component { JSON.stringify(param.keyBatch.plan) ) sessionStorage.setItem("keybatch_id", param.key_batch_id) - sessionStorage.setItem("copy_code_id", param.id) sessionStorage.setItem("key_reseller_id", param.keyBatch.plan.reseller_id) sessionStorage.setItem("approval_id", param.keyBatch.approval_id) } else if (type === 2) { activerou[0].pagetitle = "编辑" activerou[0].items[1].name = `编辑:${param.title}兑换码的商品范围列表` - sessionStorage.setItem("code_id", param.id) } + sessionStorage.setItem("code_id", param?.id) sessionStorage.setItem("isState", type) sessionStorage.setItem("breaknav", JSON.stringify(activerou)) sessionStorage.setItem("pathname2", "/home/exchangecode-exchangecodeAdd")