| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891 |
- <template>
- <div >
- <el-button @click="editBtn" :type="disabled?'':'primary'" :disabled="disabled" size="mini">编 辑</el-button>
- <el-drawer size="40%" :with-header="false" append-to-body :visible.sync="drawer" v-if="form.sa_contractid">
- <p class="normal-title normal-panel" style="border-bottom:1px solid #cccccc;padding:16px">编辑{{$route.query.type == '框架' ? '经销商合作' : $route.query.type}}合同</p>
- <div class="container normal-panel">
- <!--合作协议-->
- <el-row v-if="$route.query.type == '框架'">
- <el-form :model="form" :rules="rules" ref="form" label-position="right" label-width="140px" size="small">
- <el-col :span="24">
- <el-form-item label="合同标题:" prop="title">
- <el-input type="text" size="small" v-model="form.title"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="经销商:" prop="enterprisename">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="agentVisible"
- width="400">
- <selectAgent ref="member" :param="agentListPrams" :radio="true" @onSelect="agentChange" @onCancel="agentVisible = false"></selectAgent>
- <el-input readonly type="text" slot="reference" size="small" @focus="showChange('agentVisible')" v-model="form.enterprisename"></el-input>
- </el-popover>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="业务员:" prop="salername">
- <el-input disabled type="text" size="small" v-model="form.salername"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="折扣(%):" prop="discountrate">
- <el-input type="text" size="small" v-model="form.discountrate"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="付款条件:" prop="paytype">
- <el-select v-model="form.paytype" placeholder="请选择">
- <el-option
- v-for="item in payTypeData"
- :key="item.value"
- :label="item.label"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="发货日期提醒(天):" prop="reminddays" >
- <el-input type="text" size="small" v-model="form.reminddays" placeholder="请输入发货日期提醒天数"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同有效期:" prop="begdate">
- <el-input style="display:none" v-model="form.begdate"></el-input>
- <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange"></time-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="签约日期:" prop="signdate">
- <el-date-picker
- v-model="form.signdate"
- type="date"
- value-format="yyyy-MM-dd"
- placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同模板:">
- <el-input disabled type="text" size="small" :value="$route.query.type == '框架' ? '经销合作' : $route.query.type"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同描述:" prop="remarks">
- <el-input type="textarea" size="small" v-model="form.remarks"></el-input>
- </el-form-item>
- </el-col>
- </el-form>
- </el-row>
- <!--经销项目-->
- <el-row v-if="$route.query.type == '经销项目'">
- <el-form :model="form" :rules="rules" ref="form" label-position="right" label-width="140px" size="small">
- <el-col :span="24">
- <el-form-item label="合同标题:" prop="title">
- <el-input type="text" size="small" v-model="form.title"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="经销商:" prop="enterprisename">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="agentVisible"
- width="400">
- <selectAgent ref="member" :param="agentListPrams" :radio="true" @onSelect="agentChange" @onCancel="agentVisible = false"></selectAgent>
- <el-input readonly type="text" slot="reference" size="small" @focus="showChange('agentVisible')" v-model="form.enterprisename"></el-input>
- </el-popover>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="项目名称:" prop="sa_projectid">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="projectVisible"
- width="600">
- <seleteProject ref="project" type="1" :sys_enterpriseid='form.sys_enterpriseid' @onSelect="projectChange" @onCanel="projectVisible=false"></seleteProject>
- <el-input readonly type="text" slot="reference" size="small" @focus="showChange('projectVisible')" v-model="form.projectname"></el-input>
- </el-popover>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="项目编号:" prop="">
- <el-input disabled type="text" size="small" v-model="form.projectnum" ></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="业务员:" prop="salername">
- <el-input disabled type="text" size="small" v-model="form.salername"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="折扣(%):" prop="discountrate" >
- <el-input type="text" size="small" v-model="form.discountrate" placeholder="请输入折扣"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="付款条件:" prop="paytype">
- <el-select v-model="form.paytype" placeholder="请选择">
- <el-option
- v-for="item in payTypeData"
- :key="item.value"
- :label="item.label"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="发货日期提醒(天):" prop="reminddays" >
- <el-input type="text" size="small" v-model="form.reminddays" placeholder="请输入发货日期提醒天数"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同有效期:" prop="begdate">
- <input type="text" style="display:none" v-model="form.begdate">
- <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange"></time-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="签约日期:" prop="signdate">
- <el-date-picker
- v-model="form.signdate"
- type="date"
- value-format="yyyy-MM-dd"
- placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="签约金额(元):">
- <el-input type="text" disabled size="small" placeholder="产品清单总额(自动计算)" v-model="form.signamount"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同模板:">
- <el-input disabled type="text" size="small" :value="$route.query.type == '框架' ? '经销合作' : $route.query.type"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同描述:" prop="hrid">
- <el-input type="textarea" size="small" v-model="form.remarks"></el-input>
- </el-form-item>
- </el-col>
- </el-form>
- </el-row>
- <!--直销项目-->
- <el-row v-if="$route.query.type == '直销项目'">
- <el-form :model="form" :rules="rules" ref="form" label-position="right" label-width="140px" size="small">
- <el-col :span="24">
- <el-form-item label="合同标题:" prop="title">
- <el-input type="text" size="small" v-model="form.title"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="客户" prop="enterprisename">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="accountVisible"
- width="400">
- <selectAgent ref="member" :param="agentListPrams" :radio="true" @onSelect="accountChange" @onCancel="accountVisible = false"></selectAgent>
- <el-input readonly type="text" slot="reference" size="small" @focus="showChange('accountVisible')" v-model="form.enterprisename"></el-input>
- </el-popover>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="项目:" prop="sa_projectid">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="projectVisible"
- width="600">
- <seleteProject ref="project" type="1" @onSelect="projectChange" @onCanel="projectVisible=false"></seleteProject>
- <el-input readonly type="text" slot="reference" size="small" @focus="showChange('projectVisible')" v-model="form.projectname"></el-input>
- </el-popover>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="项目地址:" prop="">
- <el-input disabled type="text" size="small" v-model="address"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="业务员:" prop="salername">
- <el-input disabled type="text" size="small" v-model="form.salername"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="折扣(%):" prop="discountrate" >
- <el-input type="text" size="small" v-model="form.discountrate" placeholder="请输入折扣"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="付款条件:" prop="paytype">
- <el-select v-model="form.paytype" placeholder="请选择">
- <el-option
- v-for="item in payTypeData"
- :key="item.value"
- :label="item.label"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="发货日期提醒(天):" prop="reminddays" >
- <el-input type="text" size="small" v-model="form.reminddays" placeholder="请输入发货日期提醒天数"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="收货人:" prop="projectname">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="receiptVisible"
- width="600">
- <seleteReceipt ref="receipt" type="1" @onSelect="receiptChange" @onCanel="receiptVisible = false"></seleteReceipt>
- <el-input readonly type="text" slot="reference" size="small" @focus="showChange('receiptVisible')" v-model="form.name"></el-input>
- </el-popover>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="收货人电话:" prop="">
- <el-input disabled type="text" size="small" v-model="form.phonenumber"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="签约日期:" prop="signdate">
- <el-date-picker
- v-model="form.signdate"
- value-format="yyyy-MM-dd"
- type="date"
- placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同有效期:" prop="begdate">
- <input type="text" style="display:none" v-model="form.begdate">
- <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange"></time-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="签约金额(元):">
- <el-input type="text" disabled size="small" placeholder="产品清单总额(自动计算)" v-model="form.signamount"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同模板:">
- <el-input disabled type="text" size="small" :value="$route.query.type == '框架' ? '经销合作' : $route.query.type"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同描述:" prop="hrid">
- <el-input type="textarea" size="small" v-model="form.remarks"></el-input>
- </el-form-item>
- </el-col>
- </el-form>
- </el-row>
- <!--工具使用协议-->
- <el-row v-if="$route.query.type == '工具借用'">
- <el-form :model="form" :rules="rules" ref="form" label-position="right" label-width="100px" size="small">
- <el-col :span="24">
- <el-form-item label="合同标题:" prop="title">
- <el-input type="text" size="small" v-model="form.title"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="客户" prop="enterprisename">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="accountVisible"
- width="400">
- <selectAgent ref="member" :param="agentListPrams" :radio="true" @onSelect="accountChange" @onCancel="accountVisible = false"></selectAgent>
- <el-input readonly type="text" slot="reference" size="small" @focus="showChange('accountVisible')" v-model="form.enterprisename"></el-input>
- </el-popover>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="业务员:" prop="salername">
- <el-input disabled type="text" size="small" v-model="form.salername"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="签约日期:" prop="signdate">
- <el-date-picker
- v-model="form.signdate"
- value-format="yyyy-MM-dd"
- type="date"
- placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同有效期:" prop="begdate">
- <input type="text" style="display:none" v-model="form.begdate">
- <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange"></time-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="单套价格(元):">
- <el-input type="text" readonly size="small" placeholder="系统自动计算" v-model="form.signamount"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同模板:">
- <el-input disabled type="text" size="small" :value="$route.query.type == '框架' ? '经销合作' : $route.query.type"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同描述:" prop="hrid">
- <el-input type="textarea" size="small" v-model="form.remarks"></el-input>
- </el-form-item>
- </el-col>
- </el-form>
- </el-row>
- <!--居间协议-->
- <el-row v-if="$route.query.type == '居间'">
- <el-form :model="form" :rules="rules" ref="form" label-position="right" label-width="135px" size="small">
- <el-col :span="24">
- <el-form-item label="合同标题:" prop="title">
- <el-input type="text" size="small" v-model="form.title"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="居间商:" prop="sys_enterpriseid">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="accountVisible"
- width="400">
- <selectAgent ref="member" :param="agentListPrams" :radio="true" @onSelect="accountChange" @onCancel="accountVisible = false"></selectAgent>
- <el-input readonly type="text" slot="reference" size="small" @focus="showChange('accountVisible')" v-model="form.enterprisename"></el-input>
- </el-popover>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="项目合同:" prop="ascription_title">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="concratVisible"
- width="600">
- <seleteProjectContract ref="projectContract" @onSelect="concratChange" @onCanel="concratVisible=false"></seleteProjectContract>
- <el-input readonly type="text" slot="reference" size="small" @focus="showChange('concratVisible')" v-model="form.ascription_title"></el-input>
- </el-popover>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="项目名称:" prop="sa_projectid">
- <el-input disabled type="text" size="small" v-model="form.projectname"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="项目编号:" prop="projectnum">
- <el-input disabled type="text" size="small" v-model="form.projectnum"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="业务员:" prop="salername">
- <el-input disabled type="text" size="small" v-model="form.salername"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="签约日期:" prop="signdate">
- <el-date-picker
- v-model="form.signdate"
- value-format="yyyy-MM-dd"
- type="date"
- placeholder="选择日期">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="计算方式">
- <el-radio-group v-model="form.calculatemodel">
- <el-radio :label="1">按订单金额比例计算</el-radio>
- <el-radio :label="2">按居间产品折扣计算</el-radio>
- </el-radio-group>
- </el-form-item>
- </el-col>
- <el-col :span="24" v-if="form.calculatemodel==1">
- <el-form-item label="订单金额比例(%):" prop="orderratio" >
- <el-input type="text" size="small" v-model.number="form.orderratio"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24" v-if="form.calculatemodel==2">
- <el-form-item label="居间产品折扣(%):" prop="productdiscount">
- <el-input type="text" size="small" v-model.number="form.productdiscount"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同有效期:" prop="begdate">
- <input type="text" style="display:none" v-model="form.begdate">
- <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange"></time-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同模板:">
- <el-input disabled type="text" size="small" :value="$route.query.type == '框架' ? '经销合作' : $route.query.type"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同描述:" prop="hrid">
- <el-input type="textarea" size="small" v-model="form.remarks"></el-input>
- </el-form-item>
- </el-col>
- </el-form>
- </el-row>
- </div>
- <div class="fixed__btn__panel">
- <el-button size="small" @click="onCancel" class="normal-btn-width">取 消</el-button>
- <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">确 定</el-button>
- </div>
- </el-drawer>
- </div>
- </template>
- <script>
- import selectPople from './selectSaler'
- import selectAgent from './selectAgent'
- import seleteProject from './seleteProject'
- import selectModel from './seleteModel'
- import TimeSelect from './TimeSelect'
- import seleteProjectContract from './seleteProjectContract'
- import seleteReceipt from './seleteReceipt'
- import { log } from '@antv/g2plot/lib/utils'
- export default {
- props:['data','disabled'],
- name: '',
- components:{selectPople,TimeSelect,seleteProject,selectAgent,selectModel,seleteProjectContract,seleteReceipt},
- data () {
- var checkNumber = (rule, value, callback) => {
- if (typeof +value != 'number') {
- return callback(new Error('请填写数字'));
- }
- callback()
- }
- var NumberSize = (rule, value, callback) => {
- if (+value > 100 || +value <= 1 && value) {
- return callback(new Error('折扣范围(1-100)'));
- }
- callback()
- }
- var checkTimer = (rule, value, callback) => {
- if (new Date(this.form.enddate).getTime() > new Date(value).getTime() && new Date(this.form.begdate).getTime() < new Date(value).getTime()) {
- callback()
- } {
- return callback(new Error('签约日期必须在合同有效期内'));
- }
- }
- return {
- drawer:false,
- agentVisible:false,
- salerVisible:false,
- projectVisible:false,
- accountVisible:false,
- modelVisible:false,
- concratVisible:false,
- receiptVisible:false,
- payTypeData:[],
- address:'',
- /* 新建居间项目时 所关联的居间商 */
- form: {
- "sa_contractid": 0,
- "sys_enterpriseid": "",
- "enterprisename":'',
- "projectname":'',
- "projectnum":'',
- "begdate": "",
- "enddate": "",
- "sa_projectid": "", //可选
- "type": "", //可选
- "discountrate": '', //可选
- "saler_hrid": '', //可选
- "signdate": "", //可选
- "signby": "", //可选
- "kickback": "", //可选
- "remarks": "", //可选
- "title": "",
- "signamount":'',
- "salername":'',
- "enterprisename":'',
- "sys_printmodelid": '',//可选
- "typemx":"",//可选
- "calculatemodel":1,
- "productdiscount":'',
- "orderratio":'',
- "ascription_title":'',
- 'ascription_contractid':'',
- 'name':'',
- "rec_contactsid":'',//收货联系人
- 'phonenumber':'',
- 'paytype':'',
- 'reminddays':''
- },
- rules: {
- title: [
- { required: true, message: '请填写标题', trigger: 'blur' },
- ],
- sys_enterpriseid: [
- { required: true, message: '请选择经销商', trigger: 'blur' },
- ],
- ascription_title: [
- { required: true, message: '请选择项目合同', trigger: 'change' },
- ],
- begdate: [
- { required: true, message: '请选择生效日期', trigger: 'blur' },
- ],
- sa_projectid: [
- { required: true, message: '请选择项目', trigger: 'change' },
- ],
- signamount: [
- { required: true, message: '请填写签约金额', trigger: 'change' },
- { validator:checkTimer, trigger:'change'}
- ],
- salername: [
- { required: true, message: '请选择业务员', trigger: 'change' },
- ],
- paytype: [
- { required: true, message: '请选择付款条件', trigger: 'change' },
- ],
- reminddays: [
- { required: true, message: '请设置发货日期提醒天数', trigger: 'blur' },
- ],
- enterprisename: [
- { required: true, message: '请选择', trigger: 'change' },
- ],
- signdate: [
- { required: true, message: '请填写签约时间', trigger: 'change' },
- ],
- productdiscount: [
- { message: '必须为数字', type:'number', trigger: 'change' },
- { required: true, message: '请填写折扣', trigger: 'blur' },
- ],
- orderratio: [
- { message: '必须为数字', type:'number', trigger: 'change' },
- { required: true, message: '请填写折扣', trigger: 'blur' },
- ],
- enterprisename: [
- { required: true, message: '请选择经销商', trigger: 'change' },
- ],
- discountrate: [
- { validator: checkNumber, trigger: 'blur'},
- { validator: NumberSize, trigger: 'blur'}
- ],
- },
-
- salerListParams: {
- "id": 20221122153902,
- "content": {
- "pageNumber": 1,
- "pageSize": 20,
- "where": {
- "condition": ""
- }
- },
- },
- agentListPrams: {
- "id": 20220920083901,
- "content": {
- "pageNumber": 1,
- "pageSize": 20,
- "where": {
- "condition": "",
- "type":1,
- }
- }
- },
- accountListPrams: {
- "id": 20220920083901,
- "content": {
- "pageNumber": 1,
- "pageSize": 20,
- "where": {
- "condition": "",
- "type":2,
- }
- }
- }
- };
- },
- computed: {
- },
- watch: {
- drawer (val) {
- if(!val) {
- this.showChange(false)
- } else {
- if(this.$refs.project) {
- this.$refs.project.params.content.type = this.$route.query.type == '经销项目' ? '2' : '1'
- this.$refs.project.queryEnterpriseArchives()
- }
- }
- }
- },
- created () {
- },
- mounted () {
- },
- methods: {
- editBtn () {
- this.form = Object.assign({},this.form,this.data)
- this.form.productdiscount = this.form.productdiscount * 100
- this.form.orderratio = this.form.orderratio * 100
- this.form.discountrate = this.form.discountrate * 100
- this.address = this.form.province + this.form.city + this.form.county + this.form.address
- this.drawer = true
- this.$nextTick(() => {
- this.$refs.timeSelect.time = [this.form.begdate,this.form.enddate]
- this.payTypeList()
- })
- console.log(this.form);
-
- },
- async onSubmit () {
- this.$refs.form.validate(async val => {
- if (val) {
- if(this.$route.query.type == '居间') {
- /* 当合同关系发生改变时 */
- if (this.form.sys_enterpriseid != this.data.sys_enterpriseid || this.form.ascription_contractid != this.data.ascription_contractid) {
- /* 项目商机中是否存在该居间商 */
- let isChange = this.$refs.projectContract.ENlist
- .find(item => item.sa_contractid == this.form.ascription_contractid).parties
- .some(item2 => item2.sys_enterpriseid == this.form.sys_enterpriseid),
- contract = this.$refs.projectContract.ENlist
- .find(item => item.sa_contractid == this.form.ascription_contractid)
- if (isChange) {
- this.$confirm('当前项目已存在此居间商,不可编辑','提示',{
- cancelButtonText:'取消',
- showConfirmButton:false
- }).then(() => {
- })
- } else {
- if (this.$route.query.type == '直销项目') {
- this.form.type = '项目'
- this.form.typemx = '直销'
- } else if (this.$route.query.type == '经销项目') {
- this.form.type = '项目'
- this.form.typemx = '经销'
- } else {
- this.form.type = this.$route.query.type
- }
- this.form.discountrate ? this.form.discountrate = (parseInt(this.form.discountrate) / 100).toFixed(4) : ''
- this.form.productdiscount ? this.form.productdiscount = (parseInt(this.form.productdiscount) / 100).toFixed(4) : ''
- this.form.orderratio ? this.form.orderratio = (parseInt(this.form.orderratio) / 100).toFixed(4) : ''
- let res = await this.$api.requested({
- "id":20221121185302,
- "content": this.form
- })
- this.tool.showMessage(res,() => {
- this.$refs.form.resetFields()
- this.drawer = false
- this.$emit('onSuccess')
- })
- }
-
- } else {
- this.form.orderratio ? this.form.orderratio = (parseInt(this.form.orderratio) / 100).toFixed(4) : ''
- this.form.productdiscount ? this.form.productdiscount = (parseInt(this.form.productdiscount) / 100).toFixed(4) : ''
- let res = await this.$api.requested({
- "id":20221121185302,
- "content": this.form
- })
- this.tool.showMessage(res,() => {
- this.$refs.form.resetFields()
- this.drawer = false
- this.$emit('onSuccess')
- })
- }
- } else {
- if (this.$route.query.type == '直销项目') {
- this.form.type = '项目'
- this.form.typemx = '直销'
- } else if (this.$route.query.type == '经销项目') {
- this.form.type = '项目'
- this.form.typemx = '经销'
- } else {
- this.form.type = this.$route.query.type
- }
- this.form.discountrate ? this.form.discountrate = (parseInt(this.form.discountrate) / 100).toFixed(4) : ''
- this.form.productdiscount ? this.form.productdiscount = (parseInt(this.form.productdiscount) / 100).toFixed(4) : ''
- this.form.orderratio ? this.form.orderratio = (parseInt(this.form.orderratio) / 100).toFixed(4) : ''
- let res = await this.$api.requested({
- "id":20221121185302,
- "content": this.form
- })
- this.tool.showMessage(res,() => {
- this.$refs.form.resetFields()
- this.drawer = false
- this.$emit('onSuccess')
- })
- }
- }
-
- })
- },
- showChange (key) {
- console.log(key,"编辑")
- this.agentVisible = false
- this.salerVisible = false
- this.projectVisible = false
- this.accountVisible = false
- this.modelVisible = false
- this.concratVisible = false
- /* key ? this[key] = true : ''
- if (key === 'projectVisible'){
- this.$refs.project.params.content.sys_enterpriseid = this.form.sys_enterpriseid
- this.$refs.project.queryEnterpriseArchives()
- this.$refs.form.validateField("enterprisename")
- this.$refs.form.validateField("sys_enterpriseid")
- }*/
- if (key === 'projectVisible'){
- if (this.form.sys_enterpriseid !== ''){
- console.log("执行",key)
- this.$refs.project.params.content.sys_enterpriseid = this.form.sys_enterpriseid
- this.$refs.project.queryEnterpriseArchives()
- key ? this[key] = true : ''
- }else {
- this.$refs.form.validateField("enterprisename")
- this.$refs.form.validateField("sys_enterpriseid")
- }
- }else if (key === 'receiptVisible'){
- if (this.form.sys_enterpriseid !== ''){
- this.$refs.receipt.params.content.sys_enterpriseid = this.form.sys_enterpriseid
- this.$refs.receipt.queryReceipts()
- key ? this[key] = true : ''
- }else {
- this.$refs.form.validateField("enterprisename")
- this.$refs.form.validateField("sys_enterpriseid")
- }
- }else {
- key ? this[key] = true : ''
- }
- },
- onCancel () {
- this.drawer = false
- this.$refs.form.resetFlieds()
- },
- agentChange (data) {
- this.form.sys_enterpriseid = data[0].sys_enterpriseid
- this.form.enterprisename = data[0].enterprisename
- this.agentVisible = false
- },
- salerChange (data) {
- this.form.saler_hrid = data[0].hrid
- this.form.salername = data[0].name
- this.salerVisible = false
- },
- projectChange (data) {
- if (this.$route.query.type == '直销项目' || this.$route.query.type == '经销项目') {
- this.$confirm('变更项目并保存后,将清空"产品清单"并重新拉取,确定执行吗?','提示',{
- "confirmButtonText":"确定",
- "cancelButtonText":"取消",
- "type":"warning"
- }).then (() => {
- this.form.projectname = data.projectname
- this.form.projectnum = data.projectnum
- this.form.sa_projectid = data.sa_projectid
- this.address = data.province + data.city + data.county + data.address
- this.projectVisible = false
- })
-
- }
- },
- receiptChange (data) {
- this.form.name = data.name
- this.form.phonenumber = data.phonenumber
- this.form.rec_contactsid = data.contactsid
- this.receiptVisible = false
- },
- accountChange (data) {
- this.form.enterprisename = data[0].enterprisename
- this.form.sys_enterpriseid = data[0].sys_enterpriseid
- this.accountVisible = false
- },
- centerChange (data) {
- this.form.enterprisename = data[0].enterprisename
- this.form.sys_enterpriseid = data[0].sys_enterpriseid
- this.agentVisible = false
- },
- modelChange (data) {
- this.form.modelname = data.modelname
- this.form.sys_printmodelid = data.sys_printmodelid
- this.modelVisible = false
- },
- concratChange (data) {
- this.form.ascription_title = data.projectname
- this.form.ascription_contractid = data.sa_contractid
- this.form.projectname = data.projectname
- this.form.projectnum = data.projectnum
- this.form.sa_projectid = data.sa_projectid
- this.concratVisible = false
- },
- clearTime () {
- this.form.begdate = ''
- this.form.enddate = ''
- },
- timeChange (time) {
- this.form.begdate = time[0]
- this.form.enddate = time[1]
- },
- /*获取付款条件*/
- async payTypeList(){
- const res = await this.$api.requested({
- id: "20230110100103",
- content: {
- pageNumber: 1,
- pageSize:50,
- where: {condition: ""},
- }
- })
- console.log(res,'res')
- this.payTypeData = res.data.map((item,index)=>{
- if (item.point === '订单审核'){
- return {
- label:item.ruleno + '\xa0 \xa0 \xa0 \xa0' + item.point + '\xa0 \xa0 \xa0 \xa0' + "立账额度" + (item.amountrate * 100) +'% ' + '\xa0 \xa0 \xa0 \xa0' + '后置天数' + item.days + '天',
- value:item.ruleno + '' + item.point + '' + "立账额度" + (item.amountrate * 100) +'% ' + '' + '后置天数' + item.days + '天',
- }
- }else {
- return {
- label:item.ruleno + '\xa0 \xa0 \xa0 \xa0' + item.point + '\xa0 \xa0 \xa0 \xa0' + '后置天数' + item.days + '天',
- value:item.ruleno + '' + item.point + '' + '后置天数' + item.days + '天',
- }
- }
- })
- /* res.data.forEach((item,index)=>{
- if (item.point === '订单审核'){
- this.payTypeData[index] = item.ruleno + ' ' + item.point + ' ' + "立账额度" + (item.amountrate * 100) +'% ' + '后置天数' + item.days
- }else {
- this.payTypeData[index] = item.ruleno + ' ' + item.point + ' ' + '后置天数' + item.days
- }
- })*/
- console.log(this.payTypeData,'处理后数据')
- }
- },
- };
- </script>
- <style scoped>
- * {
- box-sizing: border-box;
- }
- .header_info {
- background: #ffffff;
- padding: 16px 16px 0 16px;
- margin-bottom: 16px;
- }
- /deep/.el-select,.el-input,.el-date-editor {
- width: 100% !important;
- }
- </style>
|