|
@@ -14,17 +14,26 @@
|
|
<div class="explain-tit">
|
|
<div class="explain-tit">
|
|
<span>1</span>准备导入
|
|
<span>1</span>准备导入
|
|
</div>
|
|
</div>
|
|
- <ul>
|
|
|
|
|
|
+ <ul v-if="!isTotalFlag">
|
|
<li>1) 导入的Excel文件中必须包含名为“产品编码”、“数量”、“出库仓库”的列,且名称必须相同</li>
|
|
<li>1) 导入的Excel文件中必须包含名为“产品编码”、“数量”、“出库仓库”的列,且名称必须相同</li>
|
|
<li>2) 除了“产品编码”、“数量”、“出库仓库”三列,其他列可自定义,不影响数据导入</li>
|
|
<li>2) 除了“产品编码”、“数量”、“出库仓库”三列,其他列可自定义,不影响数据导入</li>
|
|
<li>3) 如果导入的产品已经存在,则不会导入该行</li>
|
|
<li>3) 如果导入的产品已经存在,则不会导入该行</li>
|
|
- <li v-if="uploadParams&&uploadParams.salesPromoSn">4) 导入的活动产品必须是活动规则中的产品 </li>
|
|
|
|
|
|
+ <li v-if="uploadParams.salesPromoSn">4) 导入的活动产品必须是活动规则中的产品 </li>
|
|
<li>
|
|
<li>
|
|
<a :href="filePath" style="margin: 5px 0 0;display: block;">
|
|
<a :href="filePath" style="margin: 5px 0 0;display: block;">
|
|
<a-icon type="download" style="padding-right: 5px;" />下载导入模板
|
|
<a-icon type="download" style="padding-right: 5px;" />下载导入模板
|
|
</a>
|
|
</a>
|
|
</li>
|
|
</li>
|
|
</ul>
|
|
</ul>
|
|
|
|
+ <ul v-else>
|
|
|
|
+ <li>1) 导入的Excel文件中必填项为"销售单号"、"产品编码",需填写系统上已完结的销售单与该销售单内未参与促销活动、未被累计且符合当前促销规则的产品。</li>
|
|
|
|
+ <li>2) 错误项忽略不能导入,正确项可直接导入。</li>
|
|
|
|
+ <li>
|
|
|
|
+ <a :href="fileOtherPath" style="margin: 5px 0 0;display: block;">
|
|
|
|
+ <a-icon type="download" style="padding-right: 5px;" />下载导入模板
|
|
|
|
+ </a>
|
|
|
|
+ </li>
|
|
|
|
+ </ul>
|
|
</div>
|
|
</div>
|
|
<div class="explain-item">
|
|
<div class="explain-item">
|
|
<div class="explain-tit">
|
|
<div class="explain-tit">
|
|
@@ -38,7 +47,7 @@
|
|
:maxNums="1"
|
|
:maxNums="1"
|
|
fileType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel"
|
|
fileType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel"
|
|
uploadType="attach"
|
|
uploadType="attach"
|
|
- :action="attachAction"
|
|
|
|
|
|
+ :action="!isTotalFlag?attachAction:attachOtherAction"
|
|
:uploadParams="uploadParams"
|
|
:uploadParams="uploadParams"
|
|
upText="添加文件"
|
|
upText="添加文件"
|
|
@change="changeImport"></Upload>
|
|
@change="changeImport"></Upload>
|
|
@@ -64,17 +73,20 @@
|
|
</div>
|
|
</div>
|
|
<!-- 导入 -->
|
|
<!-- 导入 -->
|
|
<chooseImportModal :openModal="openImportModal" :paramsData="paramsData" @close="handleClose" @ok="hanldeOk" />
|
|
<chooseImportModal :openModal="openImportModal" :paramsData="paramsData" @close="handleClose" @ok="hanldeOk" />
|
|
|
|
+ <!-- 导入累计产品 -->
|
|
|
|
+ <chooseImportTotalModal :openModal="openTotalImportModal" :paramsData="paramsData" @close="handleClose" @ok="hanldeOk" />
|
|
</a-modal>
|
|
</a-modal>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
import { commonMixin } from '@/utils/mixin'
|
|
import { commonMixin } from '@/utils/mixin'
|
|
import ChooseImportModal from './chooseImportModal.vue'
|
|
import ChooseImportModal from './chooseImportModal.vue'
|
|
|
|
+import chooseImportTotalModal from './chooseImportTotalModal.vue'
|
|
import { Upload } from '@/components'
|
|
import { Upload } from '@/components'
|
|
export default {
|
|
export default {
|
|
name: 'SalesImportGuideModal',
|
|
name: 'SalesImportGuideModal',
|
|
mixins: [commonMixin],
|
|
mixins: [commonMixin],
|
|
- components: { ChooseImportModal, Upload },
|
|
|
|
|
|
+ components: { ChooseImportModal, chooseImportTotalModal, Upload },
|
|
props: {
|
|
props: {
|
|
openModal: { // 弹框显示状态
|
|
openModal: { // 弹框显示状态
|
|
type: Boolean,
|
|
type: Boolean,
|
|
@@ -85,7 +97,9 @@ export default {
|
|
return {
|
|
return {
|
|
isShow: this.openModal, // 是否打开弹框
|
|
isShow: this.openModal, // 是否打开弹框
|
|
openImportModal: false, // 导入
|
|
openImportModal: false, // 导入
|
|
|
|
+ openTotalImportModal: false, // 导入累计弹窗
|
|
attachAction: process.env.VUE_APP_API_BASE_URL + '/sales/detail/importParse', // 解析地址
|
|
attachAction: process.env.VUE_APP_API_BASE_URL + '/sales/detail/importParse', // 解析地址
|
|
|
|
+ attachOtherAction: process.env.VUE_APP_API_BASE_URL + '/sales/detail/importBorrow', // 解析地址
|
|
paramsData: null, // 参数数据
|
|
paramsData: null, // 参数数据
|
|
uploadParams: { // 上传参数
|
|
uploadParams: { // 上传参数
|
|
salesBillSn: '',
|
|
salesBillSn: '',
|
|
@@ -93,18 +107,27 @@ export default {
|
|
promoProductClz: ''
|
|
promoProductClz: ''
|
|
},
|
|
},
|
|
exportLoading: false,
|
|
exportLoading: false,
|
|
- filePath: location.protocol + '//' + location.host + '/templ/销售导入产品模板.xlsx', // 模板文件地址
|
|
|
|
- curRowData: null
|
|
|
|
|
|
+ // 模板文件地址
|
|
|
|
+ filePath: location.protocol + '//' + location.host + '/templ/销售导入产品模板.xlsx',
|
|
|
|
+ fileOtherPath: location.protocol + '//' + location.host + '/templ/销售产品模板.xlsx',
|
|
|
|
+ curRowData: null,
|
|
|
|
+ isTotalFlag: false // 是否是累计产品
|
|
}
|
|
}
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
pageInit (params, row) {
|
|
pageInit (params, row) {
|
|
this.curRowData = row
|
|
this.curRowData = row
|
|
|
|
+ this.isTotalFlag = params.promoProductClz === 'BORROW_GATE' || params.promoProductClz === 'BORROW_REGULAR'
|
|
|
|
+ // 判断是否是累计产品导入
|
|
|
|
+ if (params.promoProductClz === 'BORROW_GATE' || params.promoProductClz === 'BORROW_REGULAR') {
|
|
|
|
+ params.promoProductClz = params.promoProductClz.split('_')[1]
|
|
|
|
+ }
|
|
this.uploadParams = params
|
|
this.uploadParams = params
|
|
},
|
|
},
|
|
// 下一步
|
|
// 下一步
|
|
handlerNextStep () {
|
|
handlerNextStep () {
|
|
if (this.paramsData) {
|
|
if (this.paramsData) {
|
|
|
|
+ this[!this.isTotalFlag ? 'openImportModal' : 'openTotalImportModal'] = true
|
|
this.openImportModal = true
|
|
this.openImportModal = true
|
|
} else {
|
|
} else {
|
|
this.$message.warning('添加文件后再进行下一步操作!')
|
|
this.$message.warning('添加文件后再进行下一步操作!')
|