| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916 |
- <?php
- use common\helpers\ComponentHelper;
- $diyPath = dirname(__DIR__) . '/components';
- ComponentHelper::loadComponentView('cloud_inventory_goods_select', $diyPath);
- ComponentHelper::loadComponentView('com-dialog-select');
- ComponentHelper::loadComponentView('com-select-cat');
- ComponentHelper::loadComponentView('com-image');
- ComponentHelper::loadComponentView('free-goods-choice', $diyPath);
- ComponentHelper::loadComponentView('com-rich-text');
- ?>
- <div id="app" v-cloak>
- <el-card class="box-card" v-loading="loading" shadow="never" style="border:0;min-width: 1500px;" body-style="background-color: #f3f3f3;padding: 10px 0 0;">
- <div slot="header">
- <div>
- <span>基础设置</span>
- </div>
- </div>
- <div class="form_box">
- <el-tabs v-model="activeName" type="card">
- <el-tab-pane label="基础设置" name="first">
- <el-form :model="ruleForm" size="small" ref="ruleForm" label-width="150px">
- <el-card shadow="never">
- <div slot="header">
- <div>
- <span>基础设置</span>
- </div>
- </div>
- <div>
- <el-row>
- <el-col :span="16">
- <el-form-item label="启用云库存" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_enable" :active-value="1" :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- <el-form-item v-if="is_install_wangdiantong == 1" label="旺店通发货" style="margin-bottom: 10px">
- <el-switch v-model="settingData.is_enable_wangdiantong" :active-value="1" :inactive-value="0">
- </el-switch>
- <p style="color: #999999">开启当前开关那么用户提货到线下的订单均有旺店通进行发货处理</p>
- </el-form-item>
- <el-form-item label="允许限时补货" style="margin-bottom: 10px">
- <div>
- <el-switch
- v-model="settingData.is_time_limit_fill"
- :active-value="1"
- :inactive-value="0"
- >
- </el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启允许限时补货,下级用户在上级没有库存的情况下补货,设置上级补货时限
- </div>
- </el-form-item>
- <el-form-item label="是否显示我的设置" style="margin-bottom: 10px">
- <div>
- <el-switch
- v-model="settingData.is_show_setting"
- :active-value="1"
- :inactive-value="0"
- >
- </el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启后,前端显示我的设置
- </div>
- </el-form-item>
- <el-form-item label="前端用户库存权限" style="margin-bottom: 10px" v-if="settingData.is_show_setting">
- <div>
- <el-switch
- v-model="settingData.is_show_stock_permission"
- :active-value="1"
- :inactive-value="0"
- >
- </el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启后,支持配置控制我的库存是否允许被下级买货或补货扣除
- </div>
- </el-form-item>
- <el-form-item prop="temp_fill_time" label="补货限时" v-if="settingData.is_time_limit_fill">
- <el-col :span="8" style="width: 100%;">
- <el-input v-model="settingData.fill_hour"
- type="number" style="width: 200px;">
- <template slot="append">小时</template>
- </el-input>
- <div class="tips-text" style="line-height: 24px;">
- 当代理商库存不足时,给他通知库存预警,及时补货。如不及时补货,则扣去上级代理商库存。
- </div>
- </el-col>
- </el-form-item>
- <el-form-item label="奖励分配" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.bonus" label="platform">平台</el-radio>
- <el-radio v-model="settingData.bonus" label="payment">从货款中扣除</el-radio>
- </template>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 奖励分配选择由平台或者上级代理给奖励,奖励包含平级奖,越级奖。
- </div>
- </el-form-item>
- <el-form-item label="补货奖励" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.fill_bonus" label="0">平台</el-radio>
- <el-radio v-model="settingData.fill_bonus" label="1">从货款中扣除</el-radio>
- </template>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 补货奖励选择由平台或者上级代理给奖励
- </div>
- </el-form-item>
- <el-form-item label="下级送名额" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.is_give_quota" :label="1">开启</el-radio>
- <el-radio v-model="settingData.is_give_quota" :label="0">关闭</el-radio>
- </template>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 升级代理商是否赠送代理商名额
- </div>
- </el-form-item>
- <el-form-item label="扣产品" style="margin-bottom: 10px" v-if="settingData.is_give_quota==1">
- <div>
- <template>
- <el-switch v-model="settingData.is_deduct_goods" :active-value="1" :inactive-value="0"></el-switch>
- </template>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 赠送名额是否扣除对应名额产品
- </div>
- </el-form-item>
- <el-form-item label="消息通知" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_notice" :active-value="1" :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- <el-form-item label="同步分销商奖励" style="margin-bottom: 10px;" >
- <div>
- <el-switch v-model="settingData.is_sync_distribution_level" :active-value="1" :inactive-value="0">
- </el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启即享受分销商的分润,不是同步升级
- </div>
- </el-form-item>
- <el-form-item label="同步股东分红" style="margin-bottom: 10px;" >
- <div>
- <el-switch v-model="settingData.is_sync_boss_bonus" :active-value="1" :inactive-value="0">
- </el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启后,向平台补货,可享受股东分红
- </div>
- </el-form-item>
- <el-form-item label="自取订单区域分红" style="margin-bottom: 10px;" >
- <div>
- <el-switch v-model="settingData.is_sync_area_reward" :active-value="1" :inactive-value="0">
- </el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启即享受区域管理的分润
- </div>
- </el-form-item>
- <el-form-item label="扣除分佣" >
- <template v-for="(item,index) in settingData.deduction_commission_arr">
- <el-switch v-model="item.is_open" :active-value="1" :inactive-value="0" ></el-switch>
- {{item.title}}
-
- </template>
- </el-form-item>
- <el-form-item label="升级礼包升级商品扣货逻辑" style="margin-bottom: 10px;width:600px;" label-width="150" class="myFormItem">
- <div>
- <template>
- <el-radio v-model="settingData.upgrade_bag_product_deduction" :label="0">上级代理</el-radio>
- <el-radio v-model="settingData.upgrade_bag_product_deduction" :label="1">指定等级代理</el-radio>
- </template>
- </div>
- </el-form-item>
- <el-form-item label="指定等级代理" style="margin-bottom: 10px" v-if="settingData.upgrade_bag_product_deduction==1">
- <div>
- <template>
- <el-select v-model="settingData.upgrade_bag_product_deduction_level" placeholder="请选择指定等级代理">
- <el-option
- v-for="item in level_list"
- :key="item.level"
- :label="item.name"
- :value="item.level"
- >
- </el-option>
- </el-select>
- </template>
- </div>
- </el-form-item>
- <el-form-item label="升级礼包赠送库存从上级代理扣除" style="margin-bottom: 10px;width:300px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.level_up_give_stock_by_parent" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <br/>
- <el-form-item label="扣库存按补货" v-if="settingData.level_up_give_stock_by_parent>0" >
- <div>
- <el-switch v-model="settingData.level_up_give_stock_by_parent_type" :active-value="1" :inactive-value="0" @change="levelUpGiveStockByParentType"></el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启:升级礼包赠送库存从上级代理扣除,按代理商补货操作逻辑(如同会员在前端h5执行补货操作),生成补货单。<br/>
- 关闭:升级礼包赠送库存从上级代理扣除,不生成补货单,被扣库存会员的库存数量必须大于等于赠送的库存数量,才能完成扣库存,货款按礼包支付金额结算。
- </div>
- </el-form-item>
- <el-form-item label="是否开启补货升级礼包商品,升级限制" style="margin-bottom: 10px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.upgrade_bag_product_up_limit" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
-
-
- 开启后,通过补货途径购买升级礼包商品,不进行升级
- </div>
- </el-form-item>
- <el-form-item label="开启货款不计入佣金" style="margin-bottom: 10px;width:300px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.payment_is_not_in_commission" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <br/>
- <el-form-item label="拿货价计入货款,差价计入佣金"
- style="margin-bottom: 10px;width:300px;" label-width="150"
- class="myFormItem"
- v-if="settingData.payment_is_not_in_commission==1">
- <div>
- <el-switch v-model="settingData.profit_in_commission"
- :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <br/>
- <el-form-item label="是否开启货款提现" style="margin-bottom: 10px;width:300px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.payment_withdraw" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <br/>
- <el-form-item label="货款提现手续费" v-if="settingData.payment_withdraw==1">
- <el-input class="member-money" v-model="settingData.payment_withdraw_poundage" placeholder="" onInput="value=toNumber(value,2)"
- style="width: 150px">
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- <el-form-item label="提现方式" prop="settingData.withdraw_cash_type" v-if="settingData.payment_withdraw==1">
- <el-col :span="12">
- <el-checkbox-group v-model="settingData.withdraw_cash_type">
- <el-checkbox v-for="(value, key) in withdraw_way" :key="key" :label="key">{{value}}</el-checkbox>
- </el-checkbox-group>
- <div class="tips-text"></div>
- </el-col>
- </el-form-item>
- <el-form-item label="是否开启货款转余额" style="margin-bottom: 10px;width:300px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.payment_to_balance" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <br/>
- <el-form-item label="转余额手续费" v-if="settingData.payment_to_balance==1">
- <el-input class="member-money" v-model="settingData.payment_to_balance_poundage" placeholder="" onInput="value=toNumber(value,2)"
- style="width: 150px">
- <template slot="append">%</template>
- </el-input>
- </el-form-item>
- <el-form-item label="升级礼包扣除分佣" v-if="settingData.level_up_give_stock_by_parent_type==0&&settingData.level_up_give_stock_by_parent>0">
- <div>
- <el-switch v-model="settingData.level_up_give_deduction_commission_arr" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启后,由上级获得货款云仓代理,就需要承担云仓升级礼包的团队分红的奖金,如果是平台获得货款就由平台来承担奖励
- </div>
- </el-form-item>
- <br/>
- <el-form-item label="补货差价" >
- <div>
- <el-switch v-model="settingData.fill_price_difference" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 补货时,代理有货,拿货款;无货,拿补货差价;奖励分配、补货奖励,选择从货款中扣除时,该奖励从差价扣除
- </div>
- </el-form-item>
- <el-form-item label="会员买货差价" >
- <div>
- <el-switch v-model="settingData.buy_price_difference" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 会员买货时,代理有货,拿货款;无货,拿进货差价
- </div>
- </el-form-item>
- <el-form-item label="差价结算类型" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.price_difference_type" :label="0">首个代理拿差价</el-radio>
- <el-radio v-model="settingData.price_difference_type" :label="1">所有代理拿差价</el-radio>
- <el-radio v-model="settingData.price_difference_type" :label="2">
- 校验有代理库存
- </el-radio>
- </template>
- </div>
- </el-form-item>
- <el-form-item label="货款差价" v-if="settingData.price_difference_type==2">
- <div>
- <el-switch v-model="settingData.payment_for_goods_price_difference"
- :active-value="1"
- :inactive-value="0"></el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启,差价修改为结算货款者还可拿到差价
- </div>
- </el-form-item>
- <el-form-item label="差价平级奖">
- <div>
- <el-switch v-model="settingData.is_difference_equal" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <el-form-item label="差价平级奖紧缩" v-if="settingData.is_difference_equal == 1">
- <div>
- <el-switch v-model="settingData.is_find_equal" :active-value="1"
- :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <el-form-item label="差价平级奖分配" style="margin-bottom: 10px" v-if="settingData.is_difference_equal == 1">
- <div>
- <template>
- <el-radio v-model="settingData.difference_equal_type" :label="0">平台</el-radio>
- <el-radio v-model="settingData.difference_equal_type" :label="1">差价</el-radio>
- </template>
- </div>
- </el-form-item>
- <el-form-item label="同步渠道分红等级" style="margin-bottom: 10px;" >
- <div>
- <el-switch v-model="settingData.is_sync_agent_level" :active-value="1" :inactive-value="0">
- </el-switch>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 开启,渠道分红升级后,云库存代理等级权重与之相同,云库存代理也能升级
- </div>
- </el-form-item>
- <el-form-item prop="compute_delay_day" label="货款结算方式">
- <el-col :span="8" style="width: 100%;">
- <el-radio-group v-model="settingData.compute_type" size="small">
- <el-radio :label="0" border>订单完成后</el-radio>
- <el-radio :label="1" border>订单支付后</el-radio>
- </el-radio-group>
- <div class="input-number-box">
- <span>延时</span>
- <el-input-number size="small" v-model="settingData.compute_delay_day" :step="1" step-strictly :min="0" :max="30" label="延时天数"></el-input-number>
- <span>天后结算</span>
- </div>
- </el-col>
- <div class="tips-text" style="line-height: 24px;">
- 默认“0”天表示“不延时结算/立即结算”,“订单完成后/订单支付后”结算方式只针对“用户买货订单”,补货订单“支付后”即“订单完成”
- </div>
- </el-form-item>
- <el-form-item label="购买二二复制商品" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.buy_double_copy_goods_dec_cloud_stock_goods" :label="0">设置数量</el-radio>
- <el-radio v-model="settingData.buy_double_copy_goods_dec_cloud_stock_goods" :label="1">购买件数</el-radio>
- </template>
- </div>
- <div class="tips-text" style="line-height: 24px;">
- 购买二二复制商品,扣云库存数量:购买件数,即扣库存数量,按订单对应商品购买数量,否则按设置数量
- </div>
- </el-form-item>
- <el-form-item label="赠送方案赠送商品时间" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.gift_plan_give_type" :label="0">订单完成</el-radio>
- <el-radio v-model="settingData.gift_plan_give_type" :label="1">支付完成</el-radio>
- </template>
- </div>
- <div class="tips-text" style="line-height: 24px; color: red">
-
-
- 请谨慎使用,防止用户退款场景
- </div>
- </el-form-item>
- <el-form-item label="平级奖结算周期" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.settlement_cycle_of_equal_prize"
- :label="0">立即结算
- </el-radio>
- <el-radio v-model="settingData.settlement_cycle_of_equal_prize"
- :label="1">周
- </el-radio>
- <el-radio v-model="settingData.settlement_cycle_of_equal_prize"
- :label="2">月
- </el-radio>
- </template>
- </div>
- <div class="tips-text" style="line-height: 24px; color: #baabab">
- 1.只控制上级配货和下级补货产生的平级奖的结算周期,不控制差价平级奖<br/>
- 2.按周进行结算,则自然周的星期一00:00进行结算。<br/>
- 3.按月进行结算,则每个月的1号00:00进行结算
-
- </div>
- </el-form-item>
- <el-form-item label="越级奖按照补货者的等级去进行奖励" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_by_buy_agent_level" :active-value="1" :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- </el-card>
- </el-form>
- <el-button :loading="btnLoading" class="button-item" type="primary" style="margin-top: 24px;"
- @click="saveFun" size="small">保存
- </el-button>
- </el-tab-pane>
- <el-tab-pane label="补货奖励" name="second">
- <el-form :model="ruleForm" size="small" ref="ruleForm" label-width="100px">
- <el-card shadow="never">
- <div slot="header">
- <div>
- <span>个人团队补货奖励设置</span>
- </div>
- </div>
- <div>
- <el-row>
- <el-col :span="16">
- <el-form-item label="奖励方式" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.award_proportion_reward_type" :label="0">实时统计结算</el-radio>
- <el-radio v-model="settingData.award_proportion_reward_type" :label="1">阶梯清零结算</el-radio>
- </template>
- </div>
- </el-form-item>
- <el-form-item label="清零方式" style="margin-bottom: 10px" v-if="settingData.award_proportion_reward_type == 1">
- <div>
- <template>
- <el-radio v-model="settingData.award_proportion_clear_type" :label="0">年度</el-radio>
- </template>
- </div>
- </el-form-item>
- <el-form-item label="代理等级">
- <el-select v-model="settingData.cloud_stock_level_arr" multiple placeholder="请选择代理等级">
- <el-option
- v-for="item in level_list"
- :key="item.level"
- :label="item.name"
- :value="item.level"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="分红池等级">
- <el-select v-model="settingData.cloud_stock_bonus_level_arr" multiple placeholder="请选择分红池等级">
- <el-option
- v-for="item in bonus_level_list"
- :key="item.level"
- :label="item.name"
- :value="item.level"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="云仓商品">
- <div style="display: inline-block;">
- <div flex="cross:center">
- <div style="margin-left: 10px;">
- <free-goods-choice :multiple="true" @selected="goodsSelect2"
- title="商品选择">
- <el-button type="primary">选择商品</el-button>
- </free-goods-choice>
- </div>
- </div>
- </div>
- </el-form-item>
- <el-form-item :label-width="formLabelWidth" v-if="team_reward_goods_list.length>0">
- <template >
- <div style="color: #ff4544;">最多可添加99个商品</div>
- <div class="table-body" style="padding-left: 0;padding-top: 0;">
- <template>
- <el-table :data="team_reward_goods_list" border style="width: 100%">
- <el-table-column type="index" label="序号" width="50"></el-table-column>
- <el-table-column prop="id" label="商品id" width="100"></el-table-column>
- <el-table-column prop="name,cover_pic" label="商品名称" >
- <template slot-scope="scope">
- <div flex="box:first">
- <div style="padding-right: 10px;">
- <com-image mode="aspectFill" :src="scope.row.cover_pic"></com-image>
- </div>
- <div flex="cross:top cross:center">
- {{scope.row.name}}
- </div>
- </div>
- </template>
- </el-table-column>
- <el-table-column label="操作" width="100">
- <template slot-scope="scope">
- <el-button @click="deleteGoods2(scope.$index)" size="mini">删除</el-button>
- </template>
- </el-table-column>
- </el-table>
- </template>
- </div>
- </template>
- </el-form-item>
- <el-form-item label="计算方式" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.award_proportion_calculate_type" :label="0">按数量统计结算</el-radio>
- <el-radio v-model="settingData.award_proportion_calculate_type" :label="1">按业绩统计结算</el-radio>
- </template>
- </div>
- </el-form-item>
- <el-form-item label="个人团队补货奖励">
- <el-form-item v-for="(item,index) in settingData.award_proportion" :key='index' class="coupon-item" style="display: flex;align-items: center;">
- <el-input type="number" :min="0" class="member-money" v-model="item.num" placeholder="" style="width: 400px">
- <template slot="prepend">出货量达到</template>
- <template v-if="settingData.award_proportion_calculate_type == 1" slot="append">元</template>
- <template v-else slot="append">支</template>
- </el-input>
- <el-input type="number" :min="0" :max="100" class="member-money" v-model="item.money" placeholder="" style="width: 260px;">
- <template slot="prepend">奖励</template>
- <template v-if="settingData.award_proportion_calculate_type == 1" slot="append">%</template>
- <template v-else slot="append">元/每支</template>
- </el-input>
- <el-button v-if="settingData.award_proportion.length>1" size="mini" type="danger"
- icon="el-icon-close" circle
- @click="delItem(index)"></el-button>
- </el-form-item>
- </el-form-item>
- <el-form-item>
- <el-button v-if="settingData.award_proportion && settingData.award_proportion.length<36" style="margin-bottom: 10px;" type="primary" size="small" @click="addCouponItem">添加奖励区间
- </el-button>
- </el-form-item>
- <el-form-item label="统计平级两层的盒数算阶梯" style="margin-bottom: 10px;width:300px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.is_equal_2_step" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <el-form-item label="结算方式" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.award_proportion_settlement_type" :label="0">月</el-radio>
- <el-radio v-model="settingData.award_proportion_settlement_type" :label="1">季度</el-radio>
- <!-- <el-radio v-model="settingData.award_proportion_settlement_type" :label="2">年度</el-radio> -->
- </template>
- </div>
- </el-form-item>
- <el-form-item label="升级礼包赠送的商品计算补货盒数" style="margin-bottom: 10px;width:300px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.is_upgrade_bag_give_goods" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <!-- <el-form-item label="仅向平台补货计算业绩" style="margin-bottom: 10px;width:300px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.award_proportion_by_platform" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item> -->
- </el-col>
- </el-row>
- </div>
- </el-card>
- </el-form>
- <el-button :loading="btnLoading" class="button-item" type="primary" style="margin-top: 24px;"
- @click="saveFun" size="small">保存
- </el-button>
- </el-tab-pane>
- <el-tab-pane label="云仓配货" name="seven">
- <el-form :model="ruleForm" size="small" ref="ruleForm" label-width="200px">
- <el-form-item label="云仓配货是否触发平级奖" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_trigger_level_award" :active-value="1"
- :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- <el-form-item label="是否开启云仓配货协议" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_show_agreement_content" :active-value="1"
- :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- <el-form-item label="协议内容" label-width="200px" prop="content">
- <com-rich-text v-model="settingData.agreement_content"></com-rich-text>
- </el-form-item>
- </el-form>
- <el-button :loading="btnLoading" class="button-item" type="primary" style="margin-top: 24px;"
- @click="saveFun" size="small">保存
- </el-button>
- </el-tab-pane>
- <el-tab-pane label="分红池" name="three">
- <el-form :model="ruleForm" size="small" ref="ruleForm" label-width="100px">
- <el-card shadow="never">
- <div slot="header">
- <div>
- <span>分红池</span>
- </div>
- </div>
- <div>
- <el-row>
- <el-col :span="16">
- <el-form-item label="结算方式" style="margin-bottom: 10px">
- <div>
- <template>
- <el-radio v-model="settingData.pool_settlement_type" :label="0">月</el-radio>
- <el-radio v-model="settingData.pool_settlement_type" :label="1">季度</el-radio>
- </template>
- </div>
- </el-form-item>
- <el-form-item label="升级礼包赠送的商品计算补货盒数" style="margin-bottom: 10px;width:300px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.is_upgrade_bag_give_goods_pool" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- <el-form-item label="叠加分红" style="margin-bottom: 10px;width:300px;" label-width="150" class="myFormItem">
- <div>
- <el-switch v-model="settingData.is_superposition" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- </el-card>
- </el-form>
- <el-button :loading="btnLoading" class="button-item" type="primary" style="margin-top: 24px;"
- @click="saveFun" size="small">保存
- </el-button>
- </el-tab-pane>
- <el-tab-pane label="短信模板" name="four">
- <el-table
- stripe
- :data="list"
- style="width: 600px"
- v-loading="loading">
- <el-table-column
- align="center"
- prop="temp_name"
- label="短信模板名称"
- min-width="200">
- </el-table-column>
- <el-table-column
- align="center"
- label="操作"
- min-width="200"
- >
- <template slot-scope="scope">
- <el-button circle size="mini" type="text" @click="editClick(scope.row)">
- <el-tooltip class="item" effect="dark" content="编辑" placement="top">
- <img src="resources/img/mall/edit.png" alt="">
- </el-tooltip>
- </el-button>
- </template>
- </el-table-column>
- </el-table>
- </el-tab-pane>
- <el-tab-pane label="更多设置" name="five">
- <el-form :model="ruleForm" size="small" ref="ruleForm" label-width="155px">
- <el-card shadow="never">
- <div slot="header">
- <div>
- <span>随机减设置</span>
- </div>
- </div>
- <div>
- <el-row>
- <el-col :span="16">
- <div class="condition">
- <el-form-item label="是否启用条件" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_enable_rand_fee" :active-value="1" :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- <template v-if="settingData.is_enable_rand_fee == 1">
- <el-form-item label="订单满" v-for="(item, key) in settingData.rand_condition" :key=""key>
- <el-col :span="4">
- <el-form-item>
- <el-input oninput="value=value.replace(/[^0-9.]/g,'')" placeholder="请输入内容" v-model="item.total_price">
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="1">减</el-col>
- <el-col :span="4">
- <el-form-item>
- <el-input oninput="value=value.replace(/[^0-9.]/g,'')" type="text" v-model="item.rand_min" placeholder="">
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="1">~</el-col>
- <el-col :span="4">
- <el-form-item>
- <el-input oninput="value=value.replace(/[^0-9.]/g,'')" type="text" v-model="item.rand_max" placeholder="">
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="2">
- <span @click="delCondition(key)" class="del-condition">删除</span>
- </el-col>
- <br/>
- <div class="tips-text" style="line-height: 24px;">
- 可设置阶梯式减免区间
- </div>
- </el-form-item>
- <el-form-item label="">
- <el-button class="button-item" type="primary" @click="addCondition" size="small" v-if="addBtn">添加条件</el-button>
- <br/>
- <div class="tips-text" style="line-height: 24px;">
- 增加新规则
- </div>
- </el-form-item>
- </template>
- </div>
- </el-col>
- </el-row>
- </div>
- </el-card>
- <el-card shadow="never">
- <div slot="header">
- <div>
- <span>运费设置</span>
- </div>
- </div>
- <div>
- <el-row>
- <el-col :span="16">
- <div class="condition">
- <el-form-item label="是否启用运费" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_enable_freight_charges" :active-value="1" :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- </div>
- </el-col>
- </el-row>
- </div>
- </el-card>
- <el-card shadow="never">
- <div slot="header">
- <div>
- <span>自提订单设置</span>
- </div>
- </div>
- <div>
- <el-row>
- <el-col :span="16">
- <div class="condition">
- <el-form-item label="是否启用订单商品限制" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_enable_order_num_limit"
- :active-value="1"
- :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- </div>
- </el-col>
- </el-row>
- <el-row v-if="settingData.is_enable_order_num_limit">
- <div class="condition">
- <el-form-item label="数量或重量限制" style="margin-bottom: 10px">
- <div style="display: flex;">
- <p>同一笔自提订单的商品超过</p>
- <el-input style="width: 250px; margin: 0 10px;"
- v-model="settingData.order_limit_num"
- type="number"
- @blur="settingData.order_limit_num = returnNumberFormatByType(settingData.order_limit_type, settingData.order_limit_num)">
- <template slot="append">
- <el-select style="width: 100px;"
- v-model="settingData.order_limit_type">
- <el-option label="kg"
- :value="1">
- </el-option>
- <el-option label="件"
- :value="2">
- </el-option>
- </el-select>
- </template>
- </el-input>
- <p>时,则无法提交,显示“下单失败”</p>
- </div>
- </el-form-item>
- </div>
- </el-row>
- <el-row>
- <el-col :span="16">
- <div class="condition">
- <el-form-item label="是否隐藏修改地址" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_show_update_address"
- :active-value="1"
- :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- </div>
- </el-col>
- </el-row>
- </div>
- </el-card>
- <el-card shadow="never">
- <div slot="header">
- <div>
- <span>买货设置</span>
- </div>
- </div>
- <div>
- <el-row>
- <el-col :span="16">
- <div class="condition">
- <el-form-item label="会员买货扣除库存方式" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_buy_type"
- :active-value="1"
- :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- </div>
- </el-col>
- </el-row>
- <el-row v-if="settingData.is_buy_type == 1">
- <div class="condition">
- <el-form-item label="" style="margin-bottom: 10px">
- <el-radio-group v-model="settingData.buy_type">
- <el-radio :label="1">实付金额</el-radio>
- <el-radio :label="2">成本价</el-radio>
- </el-radio-group>
- </el-form-item>
- </div>
- </el-row>
- <el-row>
- <el-col :span="16">
- <div class="condition">
- <el-form-item label="是否跳过等级不扣库存" style="margin-bottom: 10px">
- <div>
- <el-switch v-model="settingData.is_jump_level"
- :active-value="1"
- :inactive-value="0">
- </el-switch>
- </div>
- </el-form-item>
- </div>
- </el-col>
- </el-row>
- <el-row v-if="settingData.is_jump_level == 1">
- <div class="condition">
- <el-form-item label="选择跳过的等级" style="margin-bottom: 10px">
- <el-select v-model="settingData.jump_level" multiple placeholder="请选择">
- <el-option
- v-for="item in level_list"
- :key="item.level"
- :label="item.name"
- :value="item.level">
- </el-option>
- </el-select>
- </el-form-item>
- </div>
- </el-row>
- </div>
- </el-card>
- </el-form>
- <el-button :loading="btnLoading" class="button-item" type="primary" style="margin-top: 24px;"
- @click="saveFun" size="small">保存
- </el-button>
- </el-tab-pane>
- <el-tab-pane label="页面配置" name="six">
- <el-container class="page-container" >
- <el-aside width="200px" style="background-color: rgb(238, 241, 246)">
- <div class="sidebar">
- <h1 class="title">页面标题</h1>
- <el-menu :default-active="pageType" @select="handleSelect">
- <el-menu-item index="1">云库存首页</el-menu-item>
- <el-menu-item index="2">我的库存</el-menu-item>
- </el-menu>
- </div>
- </el-aside>
- <!-- 云库存首页 -->
- <el-container class="page-box" v-if="pageType==1">
- <div class="page-preview" >
- <div class="tips-text">提示:预览效果仅供参考,请以实际效果为准</div>
- <div class="preview-box" style="background-image: url('/resources/addons/CloudStock/index.png');" >
- <div class="summary-empty" v-if="showSummaryList" >已隐藏</div>
- <div class="stats-summary" v-if="summaryList.length" >
- <div
- class="draggableContent"
- @mousedown="startDrag"
- @mouseup="stopDrag"
- @mousemove="dragging"
- @mouseleave="stopDrag"
- ref="draggableContent">
- <div class="stat-item"
- v-for="item in summaryList" >
- <div class="stat-label">{{ item.title }}</div>
- <div class="stat-value">100</div>
- </div>
- </div>
- <!-- 指示点 -->
- <div class="indicator" v-if="summaryList.length>3">
- <div class="indeic-1"></div>
- <div class="indeic-2"></div>
- </div>
- </div>
- </div>
- </div>
- <div class="page-style">
- <h1 class="title">云库存首页</h1>
- <draggable :list="arrangeConfig" :animation="300" :animation="300" @start="start" @end="onEnd">
- <div class="setting-item" v-for="(item, index) in arrangeConfig" :key="index">
- <div class="cell">
- <span class="cell-label">{{item.name}}</span>
- <el-input v-model="item.title" placeholder="输入名称" maxlength="6" show-word-limit></el-input>
- </div>
- <div class="cell">
- <span class="cell-label">是否展示</span>
- <el-switch v-model="item.is_show" active-value="1" inactive-value="0"></el-switch>
- </div>
- </div>
-
- </draggable>
-
- </div>
- </el-container>
- <!-- 我的库存 -->
- <el-container class="page-box" v-if="pageType==2">
- <div class="page-preview" >
- <div class="tips-text">提示:预览效果仅供参考,请以实际效果为准</div>
- <div class="preview-box" style="background-image: url('/resources/addons/CloudStock/myInventory.png');">
- <div class="tab-empty" v-if="!settingData.is_show_cloud_stock_partition">
- 已隐藏
- </div>
- <div class="item-btns flex">
- <div class="btn-self" v-for="item in btnsList">
- {{item.title}}
- </div>
- </div>
- </div>
- </div>
- <div class="page-style">
- <h1 class="title">我的库存</h1>
- <div class="cell" >
- <span>开启云库存商品分区展示(复购商品和升级礼包商品)</span>
- <el-switch v-model="settingData.is_show_cloud_stock_partition" :active-value="1" :inactive-value="0"></el-switch>
- </div>
- <div class="setting-item" v-for="(item, index) in btnsConfig" :key="index">
- <div class="cell">
- <span class="cell-label">{{item.name}}</span>
- <el-input v-model="item.title" placeholder="输入名称" maxlength="5" show-word-limit></el-input>
- </div>
- <div class="cell">
- <span class="cell-label">是否展示</span>
- <el-switch v-model="item.is_show" active-value="1" inactive-value="0"></el-switch>
- </div>
- </div>
- </div>
- </el-container>
- </el-container>
- <el-button :loading="btnLoading" class="button-item" type="primary" style="margin-top: 24px;"
- @click="saveFun" size="small">保存
- </el-button>
- </el-tab-pane>
- </el-tabs>
- </div>
- </el-card>
- <el-dialog
- title="编辑"
- center
- :visible.sync="smsDialogVisible"
- width="30%">
- <el-form label-width="80px" v-loading = 'loading2'>
- <el-form-item label="模板id" required>
- <el-input v-model.trim="detailData.temp_id"></el-input>
- </el-form-item>
- <el-form-item label="模板内容" required>
- <el-input v-model.trim="detailData.temp_content"></el-input>
- </el-form-item>
- <el-form-item label="模板key">
- <el-input v-model="detailData.sms_key" :disabled="true"></el-input>
- </el-form-item>
- <el-form-item label="模板名称">
- <el-input v-model="detailData.temp_name" :disabled="true"></el-input>
- </el-form-item>
- </el-form>
- <span slot="footer" class="dialog-footer">
- <el-button @click="smsDialogVisible = false">取 消</el-button>
- <el-button type="primary" @click="saveFun2" :loading="btnLoading">保 存</el-button>
- </span>
- </el-dialog>
- </div>
- <script src="/resources/js/Sortable.min.js"></script>
- <script src="<?= Yii::$app->request->baseUrl ?>/resources/unpkg/vuedraggable@2.18.1/dist/vuedraggable.umd.min.js"></script>
- <script>
-
- const app = new Vue({
- el: '#app',
- data() {
- return {
- isDragging: false,
- lastMouseX: 0,
- scrollStartX: 0,
- scrollLeft: 0,
- loading: false,
- btnLoading: false,
- ruleForm: {
- is_enable: 0,
- equal_level:0,
- is_allow_temp_fill:1,
- temp_fill_time:0,
- compute_time:0,
- fill_sms: {
- "template_id":"",
- "template_variable_id":"",
- "template_variable_num":"",
- "template_variable_duration":""
- },
- is_can_pick_free: 0,
- is_deduction_commission: 0,
- is_deduction_agent_commission: 0,
- is_deduction_area_commission: 0,
- is_deduction_distribution_commission: 0,
- is_deduction_double_commission: 0,
- deduction_commission_arr:{},
- },
- activeName:"six",
- jiangLiRadio:"1",
- dialogVisible:false,
- chooseDate:'',
- level_list:[],
- bonus_level_list:[],
- pageCount:0,
- dialogVisible2:false,
- selectId:0,
- smsDialogVisible:false,
- current_sms_key:'',
- detailData:{},
- loading2:false,
- settingData:{
- is_enable:1,
- is_enable_wangdiantong: 0,
- is_time_limit_fill:1,
- bonus:'payment',
- fill_bonus:0,
- is_give_quota:1,
- is_deduct_goods:0,
- is_notice:1,
- is_sync_distribution_level:0,
- is_sync_agent_level:0,
- is_sync_boss_bonus:0,
- is_sync_area_reward:1,
- fill_hour:0,
- compute_type: 0,
- compute_delay_day: 0,
- level_up_give_stock_by_parent:0,
- level_up_give_stock_by_parent_type:0,
- fill_price_difference:0,
- buy_price_difference:0,
- price_difference_type:0,
- is_difference_equal:0,
- is_find_equal: 0,
- difference_equal_type:0,
- is_equal_2_step:0,
- award_proportion_settlement_type:0,
- is_upgrade_bag_give_goods:0,
- is_upgrade_bag_give_goods_pool:0,
- is_superposition:0,
- pool_settlement_type:0,
- cloud_stock_level:'',
- award_proportion : [
- {
- num : 0.00,
- money : 0.00,
- },
- ],
- team_reward_goods_id:[],
- level_up_give_deduction_commission_arr:0,
- award_proportion_reward_type:0,
- award_proportion_by_platform:0,
- award_proportion_calculate_type:0,
- award_proportion_clear_type:0,
- cloud_stock_bonus_level_arr:[],
- cloud_stock_level_arr:[],
- is_enable_rand_fee:0,
- rand_condition:[{}],
- is_enable_freight_charges:0,
- buy_double_copy_goods_dec_cloud_stock_goods:0,
- is_enable_order_num_limit: 0,
- is_show_update_address: 0,
- order_limit_num: 0,
- order_limit_type: 1,
- upgrade_bag_product_deduction:0,
- upgrade_bag_product_deduction_level:'',
- upgrade_bag_product_up_limit:0,
- payment_is_not_in_commission:0,
- profit_in_commission: 0,
- payment_withdraw:0,
- payment_withdraw_poundage:0,
- payment_to_balance:0,
- payment_to_balance_poundage:0,
- withdraw_cash_type:[],
- cloud_stock_index:[],//云库存首页
- my_cloud_stock:[],//我的库存
- is_show_cloud_stock_partition:0,//开启云库存商品分区展示(复购商品和升级礼包商品
- gift_plan_give_type:0,//赠送方案赠送商品时间
- agreement_content: "",
- is_show_agreement_content: 0,
- is_trigger_level_award: 0,
- settlement_cycle_of_equal_prize: 0,
- payment_for_goods_price_difference: 0,
- is_buy_type: 0,
- buy_type: 1,
- is_jump_level: 0,
- jump_level: [],
- },
- list:[],
- team_reward_goods_list:[],
- formLabelWidth: '150px',
- addBtn: true,
- rules: {
- },
- is_install_wangdiantong: <?= $is_install_wangdiantong ?>,
- withdraw_way:{},
- // 页面配置数据
- pageType:"1",
- is_tabs:false,
- arrangeConfig: [
- {
- name:'云仓库存',
- title: '云仓库存',
- code: 'agent_stock_goods_amount',
- is_show: "1"
- },
- {
- name:'待结算货款',
- title: '待结算货款',
- code: 'agent_frozen_price',
- is_show:"1"
- },
- {
- name: '已结算收益',
- title: '已结算收益',
- code: 'agent_price',
- is_show: "1"
- },
- {
- name:'云仓待结货款',
- title: '云仓待结货款',
- code: 'cloud_warehouse_frozen_price',
- is_show: "1"
- },
- {
- name:'已结算货款',
- title: '云仓已结货款',
- code: 'cloud_warehouse_price',
- is_show: "1"
- },
- {
- name: '待结算平级奖',
- title: '待结算平级奖',
- code: 'pending_level_reward',
- is_show: "0"
- },
- {
- name: '已结算平级奖',
- title: '已结算平级奖',
- code: 'settled_level_reward',
- is_show: "0"
- },
- {
- name: '差价利润',
- title: '差价利润',
- code: 'price_difference',
- is_show: "0"
- },
- {
- name: '流失金额',
- title: '流失金额',
- code: 'forfeited_amount',
- is_show: "0"
- }
- ],
- btnsConfig:[{
- name:'库存明细',
- title: '库存明细',
- code: 'inventory_details',
- is_show: "1"
- },{
- name:'补货',
- title: '补货',
- code: 'replenish',
- is_show: "1"
- },{
- name:'云仓配货',
- title: '云仓配货',
- code: 'distribution',
- is_show: "1"
- },{
- name:'提货到线下',
- title: '提货到线下',
- code: 'pick_up_goods',
- is_show: "1"
- }]
- }
- },
- computed:{
-
- summaryList() {
- const arr=this.arrangeConfig.filter(item=>{
- return item.is_show!=='0'
- })
- console.log(arr);
- return arr
- },
- showSummaryList(){
- const allVisible = this.arrangeConfig.every(item => {
- return item.is_show === '0'; // 检查每个项的 is_show 是否等于 1
- });
- console.log(allVisible);
- return allVisible; // 返回布尔值
- },
- btnsList() {
- return this.btnsConfig.filter(item=>item.is_show==1)
- },
- showBtnsList(){
- const allVisible = this.btnsConfig.every(item => {
- return item.is_show === '0'; // 检查每个项的 is_show 是否等于 1
- });
- console.log(allVisible);
- return allVisible; // 返回布尔值
- },
- },
- mounted: function () {
- this.loadData();
- this.getList();
- },
- methods: {
- onEnd(e) {
- this.$emit("change-move", {
- newIndex: e.newIndex,
- list: this.arrangeConfig
- })
- this.duration = 0
- },
- start(e){
- console.log(e);
- this.duration = 300
- },
- startDrag(event) {
- this.isDragging = true; // 开始拖动
- this.lastMouseX = event.clientX; // 记录鼠标初始位置
- this.scrollStartX = this.$refs.draggableContent.scrollLeft; // 记录当前滚动位置
- this.$refs.draggableContent.style.cursor = 'grabbing'; // 更改鼠标样式
- },
- stopDrag() {
- this.isDragging = false; // 停止拖动
- this.$refs.draggableContent.style.cursor = 'grab'; // 恢复鼠标样式
- },
- dragging(event) {
- if (!this.isDragging) return; // 如果没有拖动状态则不处理
- const deltaX = event.clientX - this.lastMouseX; // 计算鼠标移动的距离
- this.$refs.draggableContent.scrollLeft = this.scrollStartX - deltaX; // 更新滚动位置
- },
- loadData() {
- this.loading = true;
- request({
- params: {
- r: 'cloud-stock/setting/index',
- },
- method: 'get'
- }).then(e => {
- this.loading = false;
- if (e.data.code == 0) {
- if(e.data.data){
- if(e.data.data!=''){
- this.settingData = e.data.data;
- this.withdraw_way = e.data.data.withdraw_way;
- this.settingData.fill_bonus = this.settingData.fill_bonus.toString();
- this.team_reward_goods_list = e.data.data.team_reward_goods_list;
- this.level_list = e.data.data.level_list;
- this.bonus_level_list = e.data.data.bonus_level_list;
- if(!this.settingData.bonus){
- this.settingData.bonus = 'payment'
- }
- if(this.settingData.cloud_stock_index){
- if (JSON.parse(this.settingData.cloud_stock_index).length<this.arrangeConfig.length) {
- let arr=[{
- name: '待结算平级奖',
- title: '待结算平级奖',
- code: 'pending_level_reward',
- is_show: "0"
- },
- {
- name: '已结算平级奖',
- title: '已结算平级奖',
- code: 'settled_level_reward',
- is_show: "0"
- },
- {
- name: '差价利润',
- title: '差价利润',
- code: 'price_difference',
- is_show: "0"
- },
- {
- name: '流失金额',
- title: '流失金额',
- code: 'forfeited_amount',
- is_show: "0"
- }]
- this.arrangeConfig=[...JSON.parse(this.settingData.cloud_stock_index),...arr]
- }else{
- this.arrangeConfig=JSON.parse(this.settingData.cloud_stock_index)
-
- }
-
- } else {
-
- this.arrangeConfig = JSON.parse(this.settingData.cloud_stock_index)
- }
- this.arrangeConfig.forEach((item, key) => {
- if (item.title == '云仓已结货款') {
- this.arrangeConfig[key].name = '已结算货款';
- }
- });
- if(this.settingData.my_cloud_stock){
- this.btnsConfig = JSON.parse(this.settingData.my_cloud_stock)
- }
- }
- }
- }
- }).catch(e => {
- this.loading = false;
- })
- },
- saveFun(){
- if(this.settingData.is_time_limit_fill == 1 && this.settingData.fill_hour <=0 ){
- return this.$message.error('请输入正确的补货时限');
- }
- if(this.settingData.award_proportion_reward_type == 0 && this.settingData.award_proportion_calculate_type == 1){
- return this.$message.error('实时统计结算不可选择按业绩统计结算');
- }
- if(this.settingData.is_enable_rand_fee == 1){
- if(this.settingData.rand_condition.length > 0){
- let max = 0;
- try{
- this.settingData.rand_condition.forEach((item, key) => {
- item.rand_min = parseFloat(item.rand_min);
- item.rand_max = parseFloat(item.rand_max);
- item.total_price = parseFloat(item.total_price);
- if(item.rand_min > item.rand_max){
- throw new Error('随机减开始金额请勿大于结束金额');
- }
- if(item.rand_max > item.total_price){
- throw new Error('随机减金额请勿大于订单金额');
- }
- if(max > item.total_price){
- throw new Error('随机减订单金额请设置递增');
- }
- max = item.total_price;
- });
- }catch(e){
- this.$message.error(e.message);
- return
- }
- }else{
- this.$message.error('请设置随机减条件');
- return
- }
- }
- this.settingData.cloud_stock_index = this.arrangeConfig
- this.settingData.my_cloud_stock = this.btnsConfig
- this.btnLoading = true;
- request({
- params: {
- r: 'cloud-stock/setting/index',
- },
- method: 'post',
- data: this.settingData
- }).then(e => {
- this.btnLoading = false;
- if (e.data.code == 0) {
- this.$message.success(e.data.msg);
- } else {
- this.$message.error(e.data.msg);
- }
- }).catch(e => {
- this.$message.error(e);
- this.btnLoading = false;
- })
- },
- store(formName) {
- this.$refs[formName].validate((valid) => {
- if (valid) {
- this.btnLoading = true;
- request({
- params: {
- r: 'cloud-stock/setting/index',
- },
- method: 'post',
- data: this.ruleForm
- }).then(e => {
- this.btnLoading = false;
- if (e.data.code == 0) {
- this.$message.success(e.data.msg);
- } else {
- this.$message.error(e.data.msg);
- }
- }).catch(e => {
- this.$message.error(e);
- this.btnLoading = false;
- })
- } else {
- this.btnLoading = false;
- console.log('error submit!!');
- return false;
- }
- });
- },
- pagination(currentPage) {
- },
- getList() {
- let self = this;
- self.loading = true;
- request({
- params: {
- r: 'cloud-stock/setting/sms-list'
- },
- method: 'get',
- }).then(e => {
- self.loading = false;
- if(e.data.code == 0){
- self.list = e.data.data;
- }
- }).catch(e => {
- console.log(e);
- });
- },
- editClick(row){
- this.current_sms_key = row.sms_key;
- this.smsDialogVisible = true;
- this.getDetail();
- },
- getDetail(){
- this.loading2 = true;
- request({
- params: {
- r: 'cloud-stock/setting/get-sms-detail',
- sms_key:this.current_sms_key
- },
- method: 'get',
- }).then(e => {
- this.loading2 = false;
- if(e.data.code == 0){
- this.detailData = e.data.data;
- }
- }).catch(e => {
- console.log(e);
- });
- },
- saveFun2(){
- if(this.detailData.temp_id == '' || this.detailData.temp_content == ''){
- return this.$message.error('请填入模板id和模板内容');
- }
- this.btnLoading = true;
- request({
- params: {
- r: 'cloud-stock/setting/sms-save'//短信模板更新
- },
- method: 'post',
- data: {
- id:this.detailData.id,
- sms_key:this.detailData.sms_key,
- temp_content:this.detailData.temp_content,
- temp_id:this.detailData.temp_id,
- temp_name:this.detailData.temp_name
- }
- }).then(response => {
- this.btnLoading = false;
- if (response.data.code == 0) {
- this.$message.success('保存成功');
- this.smsDialogVisible = false;
- } else {
- this.$message.error(response.data.msg);
- }
- }).catch(response => {
- this.edit.btnLoading = false;
- });
- },
- // 0.1 点击添加奖励比例
- addCouponItem(){
- let flag = true;
- this.settingData.award_proportion.forEach((item, index)=>{
- if(index>0 && this.settingData.award_proportion[index-1].num*1>=item.num*1){
- this.$message.error('出货量设置只能递增');
- flag = false
- return
- }
- if(index>0 && this.settingData.award_proportion[index-1].money*1>=item.money*1){
- this.$message.error('奖励比例设置只能递增');
- flag = false
- return
- }
- })
- if(!flag) return
- let award_proportion = JSON.parse(JSON.stringify(this.settingData.award_proportion));
- let item = {money : 0.00,proportion : 0.00,};
- award_proportion.push(item);
- this.settingData.award_proportion = award_proportion;
- },
- // 点击删除某一item
- delItem(index){
- let award_proportion = JSON.parse(JSON.stringify(this.settingData.award_proportion));
- award_proportion.splice(index, 1);
- this.settingData.award_proportion = award_proportion;
- },
- goodsSelect2(param) {
- for (let j in param) {
- let item = param[j];
- if (this.settingData.team_reward_goods_id&&this.settingData.team_reward_goods_id.length >= 99) {
- this.$message.error('指定商品不能大于99个');
- return;
- }
- let flag = true;
- for (let i in this.settingData.team_reward_goods_id) {
- if (this.settingData.team_reward_goods_id[i] == item.goods_id) {
- flag = false;
- break;
- }
- }
- if (flag) {
- this.settingData.team_reward_goods_id.push(item.goods_id);
- this.team_reward_goods_list.push({
- id: item.goods_id,
- name: item.goods_name,
- cover_pic: item.cover_pic,
- });
- }
- }
- },
- deleteGoods2(index) {
- this.team_reward_goods_list.splice(index, 1);
- this.settingData.team_reward_goods_id.splice(index, 1);
- },
- levelUpGiveStockByParentType(value){
- if(value==1){
- this.settingData.level_up_give_deduction_commission_arr=0;
- }
- },
- // 添加条件
- addCondition() {
- if (this.settingData.rand_condition.length >= 10) {
- return
- }
- this.settingData.rand_condition.push({
- total_price:0,
- rand_min:0,
- rand_max:0,
- })
- },
- // 删除条件
- delCondition(key) {
- let condition = this.settingData.rand_condition.filter((item, index) => {
- return index != key
- })
- this.settingData.rand_condition = condition
- },
- keepTwoDecimalPlaces(num) {
- return Math.round(num * 100) / 100;
- },
- returnNumberFormatByType(type, value) {
- let res = 0;
- if (type == 1) {
- res = Math.abs(this.keepTwoDecimalPlaces(value))
- } else if (type == 2) {
- res = Math.abs(parseInt(value))
- }
- return res
- },
- handleSelect(key, keyPath) {
- this.pageType = key
- }
- }
- });
- </script>
- <style lang="scss" scoped>
- .form_box {
- /* background-color: #f3f3f3;
- padding: 0 0 20px; */
- background-color: #fff;
- padding:20px;
- }
- .button-item {
- margin-top: 12px;
- padding: 9px 25px;
- }
- .el-input-group__append {
- background-color: #fff;
- color: #353535;
- }
- .el-card__body{
- padding: 0;
- }
- .el-card{
- border: none;
- }
- .el-table thead{
- font-size: 14px;
- color: #333;
- }
- /* .el-table__footer-wrapper, .el-table__header-wrapper{
- border-bottom: 1.4px solid #D6D6D6;
- } */
- .dialogClass .el-dialog__body{
- padding-bottom: 0;
- }
- .el-date-editor .el-range-separator{/* 设置选择日期框的中间的 ‘至’ 的宽度 */
- width: 8%;
- }
- /* .myFormItem .el-form-item__label{
- font-size: 12px;
- } */
- .el-input-group__append {
- background-color: #fff;
- color: #353535;
- }
- .condition {
- margin-top: 20px;
- }
- .condition .el-col-1 {
- text-align: center;
- /* margin-left: 50px !important; */
- }
- .condition .el-col-2 {
- text-align: center;
- /* margin-left: 50px !important; */
- }
- .del-condition {
- cursor: pointer;
- }
- .condition .el-form-item {
- margin-bottom: 8px !important;
- }
- .input-number-box{
- margin-left: 38px;
- display: inline-block;
- }
- .input-number-box .el-input-number{
- margin: 0 8px;
- }
- .input-number-box,.input-number-box span{
- vertical-align: middle;
- }
- /* 页面配置样式 */
-
- .page-container {
- display: flex;
- background-color: #f5f5f5;
- border: 1px solid #eee;
- .title {
- margin-top: 0;
- margin-bottom: 24px;
- }
- .sidebar {
- width: 200px;
- background-color: #ffffff;
- padding: 20px 0 ;
- height: 100%;
- .title {
- padding-left: 20px;
- }
- .el-menu {
- border: none;
- .is-active {
- background-color: rgba(64, 158, 255, 0.1);
- }
- }
- }
- .page-box {
- display: flex;
- }
- .page-preview {
- flex: 1;
- display: flex;
- flex-direction: column;
- align-items: center;
- margin-top: 40px;
- .tips-text {
- margin-bottom: 12px;
- }
- .preview-box {
- width: 430px;
- height: 890px;
- position: relative;
- /* 云库存首页 */
- .summary-empty {
- background-color: rgba(0, 0, 0, 0.2);
- position: absolute;
- margin: 16px;
- padding: 38px 24px;
- top: 155px;
- left: 23px;
- width: 358px;
- border-radius: 10px;
- text-align: center;
- }
- .stats-summary {
-
- position: absolute;
- margin: 16px;
- padding: 23px 24px;
- top: 155px;
- left: 23px;
- width: 358px;
- .draggableContent{
- display: flex;
- width: 310px;
- overflow-x: auto; /* 允许横向滚动 */
- -webkit-user-select: none; /* Safari */
- -moz-user-select: none; /* Firefox */
- -ms-user-select: none; /* Internet Explorer/Edge */
- user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */
- }
- /* 隐藏滚动条 */
- .draggableContent::-webkit-scrollbar {
- width: 0; /* Chrome Safari */
- height: 0;
- }
-
- .draggableContent {
- -ms-overflow-style: none; /* IE和Edge */
- scrollbar-width: none; /* Firefox */
- }
-
- .stat-item {
- width: calc(100% / 3);
- text-align: center;
- display: flex;
- flex-direction: column;
- flex-shrink: 0;
- }
- .stat-value {
- font-size: 19px;
- font-weight: bold;
- margin-top: 6px;
- }
- .stat-label {
- font-size: 12px;
- color: #000;
- }
- }
- /* 指示点 */
- .indicator {
- display: flex;
- justify-content: center;
- position: absolute;
- bottom: 6px;
- left: 0;
- right: 0;
- }
- .indicator > div {
- width: 14px;
- height: 3px;
- background: #C7C7C7;
- border-radius: 2px 2px 2px 2px;
- }
- .indeic-2 {
- margin-left:4px;
- opacity: 0.4;
- }
- /* 我的库存 */
- .tab-empty {
- position: absolute;
- background-color: #cccccc;
- text-align: center;
- height: 40px;
- width: 391px;
- top: 219px;
- left: 17px;
- line-height: 40px;
- }
-
- .item-btns {
- position: absolute;
- top: 522px;
- left: 36px;
- width: 355px;
- display: flex;
- justify-content: end;
- align-items: center;
- padding-top: 6px;
- .btn-self+.btn-self {
- margin-left: 16px;
- }
- .btn-self {
- width: 77px;
- line-height: 28px;
- font-size: 12px;
- border: 1px solid #4985E9;
- color: #4985E9;
- border-radius: 20px;
- text-align: center;
- }
- }
- }
-
- }
- .page-style {
- padding: 20px 40px;
- background: #FFF;
- height: 100%;
- width: 500px;
- .setting-item {
- margin-bottom: 15px;
- padding: 40px 40px 16px 40px;
- background-color: #F6F6F6;
- border-radius: 5px;
-
- }
- .cell+.cell {
-
- }
- .cell {
- display: flex;
- align-items: center;
- white-space: nowrap;
- margin-bottom: 24px;
- }
- .cell-label {
- width: 90px;
- padding-right: 12px;
- flex-shrink: 0;
- text-align: end;
- }
- }
- }
- /* 页面配置样式 end */
- </style>
|