| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820 |
- <template>
- <div>
- <!-- <p class="normal-title normal-panel" style="line-height:32px;padding-left:16px;border-bottom:1px solid #eeeeee">新建合同</p> -->
- <div>
- <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" style="padding-bottom:0">
- <!--合作协议-->
- <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="agentVisible"
- width="500">
- <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="">
- <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="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="合同模板:" prop="">
- <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="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="agentVisible"
- width="500">
- <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="projectname">
- <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" v-model="form.projectname" @focus="showChange('projectVisible')"></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="">
- <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="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="签约金额(元):" prop="signamount">
- <el-input type="text" size="small" placeholder="系统自动计算" disabled v-model="form.signamount"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同模板:" prop="">
- <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="sys_enterpriseid">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="accountVisible"
- width="500">
- <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="projectname">
- <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="">
- <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="receiptName">
- <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.receiptName"></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="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"
- 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="signamount">
- <el-input type="text" placeholder="系统自动计算" disabled size="small" v-model="form.signamount"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="合同模板:" prop="">
- <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="500">
- <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="">
- <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="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"
- 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="">
- <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="合同模板:" prop="">
- <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="enterprisename">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="agentVisible"
- width="500">
- <selectAgent ref="member" :type="false" :param="agentListPrams" :radio="true" @onSelect="centerChange" @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="ascription_title">
- <el-popover
- placement="bottom"
- trigger="manual"
- v-model="concratVisible"
- width="600">
- <seleteProjectContract ref="project" @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="projectname">
- <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="">
- <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="">
- <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="合同模板:" prop="">
- <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>
- <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>
- </div>
- </template>
- <script>
- import {mapGetters} from 'vuex'
- import selectPople from './selectSaler'
- import selectAgent from './selectAgent'
- import seleteProject from './seleteProject'
- import seleteProjectContract from './seleteProjectContract'
- import TimeSelect from './TimeSelect'
- import selectModel from './seleteModel'
- import seleteReceipt from './seleteReceipt'
- export default {
- 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 {
- agentVisible:false,
- salerVisible:false,
- projectVisible:false,
- accountVisible:false,
- modelVisible:false,
- concratVisible:false,
- receiptVisible:false,
- modelList:[],
- /* 新建居间项目时 所关联的居间商 */
- centerEnterpriseList:[],
- address:'',
- form: {
- "sa_contractid": 0,
- "sys_enterpriseid": "",
- "projectname":'',
- "projectnum":'',
- "begdate": "",
- "enddate": "",
- "sa_projectid": "", //可选
- "type": "", //可选
- "discountrate": '', //可选
- "saler_hrid": JSON.parse(window.sessionStorage.getItem('active_account')).hrid, //可选
- "signdate": "", //可选
- "signby": "", //可选
- "remarks": "", //可选
- "title": "",
- "signamount":'',
- "salername":JSON.parse(window.sessionStorage.getItem('active_account')).name,
- "enterprisename":'',
- "sys_printmodelid": '',//可选
- "typemx":"",//可选
- "modelname":"",
- "calculatemodel":'1',
- "productdiscount":'',
- "orderratio":'',
- "ascription_title":'',
- 'ascription_contractid':'',
- 'receiptName':'',
- "rec_contactsid":'',//收货联系人
- 'phonenumber':'',
- 'paytype':'123'
- },
- rules: {
- title: [
- { required: true, message: '请填写标题', trigger: 'blur' },
- ],
- sys_enterpriseid: [
- { required: true, message: '请选择客户', trigger: 'change' },
- ],
- ascription_title: [
- { required: true, message: '请选择项目合同', trigger: 'change' },
- ],
- begdate: [
- { required: true, message: '请选择生效日期', trigger: 'blur' },
- ],
- projectname: [
- { required: true, message: '请选择项目', trigger: 'change' },
- ],
- receiptName: [
- { required: true, message: '请选择收货人', trigger: 'change' },
- ],
- salername: [
- { required: true, message: '请选择业务员', trigger: 'change' },
- ],
- 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' },
- ],
- salername: [
- { 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":'',
- }
- }
- },
- };
- },
- computed: {
- ...mapGetters({
- DrawerShow:'DrawerShow'
- })
- },
- watch: {
- 'DrawerShow': {
- handler (val) {
- if (!val) {
- this.showChange(false)
- if (this.$refs.form) this.$refs.form.resetFields()
- this.$refs.timeSelect.time = ''
-
-
- } else {
- if(this.$refs.member) this.$refs.member.listData()
- if(this.$refs.project) {
- this.$refs.project.params.content.type = this.$route.query.type == '经销项目' ? '2' : '1'
- console.log(this.$refs.project.params.content.type,'项目类型');
-
- this.$refs.project.queryEnterpriseArchives()
- }
- }
-
- },
- immediate:true,
- }
- },
- created () {
- this.form = {
- "sa_contractid": 0,
- "sys_enterpriseid": "",
- "projectname":'',
- "projectnum":'',
- "begdate": "",
- "enddate": "",
- "sa_projectid": "", //可选
- "type": "", //可选
- "discountrate": '', //可选
- "saler_hrid": JSON.parse(window.sessionStorage.getItem('active_account')).hrid, //可选
- "signdate": "", //可选
- "signby": "", //可选
- "remarks": "", //可选
- "title": "",
- "signamount":'',
- "salername":JSON.parse(window.sessionStorage.getItem('active_account')).name,
- "enterprisename":'',
- "sys_printmodelid": '',//可选
- "typemx":"",//可选
- "modelname":"",
- "calculatemodel":'1',
- "productdiscount":'',
- "orderratio":'',
- "ascription_title":'',
- 'ascription_contractid':'',
- 'receiptName':'',
- "rec_contactsid":'',//收货联系人
- 'phonenumber':'',
- 'paytype':'123'
- }
- },
- methods: {
- async onSubmit () {
- this.$refs.form.validate(async val => {
- if (val) {
- /* 居间新建 */
- if (this.$route.query.type == '居间') {
- let is = this.centerEnterpriseList.some(item => item.sys_enterpriseid == this.form.sys_enterpriseid)
- if (is) {
- 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 = (this.form.discountrate / 100).toFixed(4) : ''
- this.form.productdiscount ? this.form.productdiscount = (this.form.productdiscount / 100).toFixed(4) : ''
- this.form.orderratio ? this.form.orderratio = (this.form.orderratio / 100).toFixed(4) : ''
- let res = await this.$api.requested({
- "id":20221121185302,
- "content": this.form
- })
- this.tool.showMessage(res,() => {
- console.log(res.data);
- this.$store.dispatch('DrawerShowChange',false)
- this.$store.dispatch('changeDetailDrawer',true)
- this.$router.push({path:'/contractDetail',query:{type:this.$route.query.type,id:res.data.sa_contractid,rowindex:res.data.rowindex}})
- })
- }
- } 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 = (this.form.discountrate / 100).toFixed(4) : ''
- this.form.productdiscount ? this.form.productdiscount = (this.form.productdiscount / 100).toFixed(4) : ''
- this.form.orderratio ? this.form.orderratio = (this.form.orderratio / 100).toFixed(4) : ''
- let res = await this.$api.requested({
- "id":20221121185302,
- "content": this.form
- })
- this.tool.showMessage(res,() => {
- console.log(res.data);
- this.$store.dispatch('DrawerShowChange',false)
- this.$store.dispatch('changeDetailDrawer',true)
- this.$router.push({path:'/contractDetail',query:{type:this.$route.query.type,id:res.data.sa_contractid,rowindex:res.data.rowindex}})
- })
- }
-
- }
- })
- },
- onCancel () {
- this.$store.dispatch('DrawerShowChange',false)
- this.form = {
- "sa_contractid": 0,
- "sys_enterpriseid": "",
- "projectname":'',
- "projectnum":"",
- "begdate": "",
- "enddate": "",
- "sa_projectid": "", //可选
- "type": "", //可选
- "discountrate": '', //可选
- "saler_hrid": JSON.parse(window.sessionStorage.getItem('active_account')).hrid, //可选
- "signdate": "", //可选
- "signby": "", //可选
- "remarks": "", //可选
- "title": "",
- "signamount":'',
- "salername":JSON.parse(window.sessionStorage.getItem('active_account')).name,
- "enterprisename":'',
- "sys_printmodelid": '',//可选
- "typemx":"",//可选
- "modelname":"",
- "calculatemodel":'1',
- "productdiscount":'',
- "orderratio":'',
- "ascription_title":'',
- 'ascription_contractid':'',
- 'receiptName':'',
- "rec_contactsid":'',//收货联系人
- 'phonenumber':''
- }
- },
- showChange (key) {
- this.agentVisible = false
- this.salerVisible = false
- this.projectVisible = false
- this.accountVisible = false
- this.modelVisible = false
- this.concratVisible = false
- this.receiptVisible = false
- console.log(key,"key的值")
- if (key === 'projectVisible'){
- if (this.form.sys_enterpriseid !== ''){
- 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 : ''
- }
- },
- 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.saler_name = data[0].name
- this.salerVisible = false
- },
- projectChange (data) {
- 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.receiptName = 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
- },
- concratChange (data) {
- console.log(data,"输出")
- this.centerEnterpriseList = data.parties
- 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
- },
- modelChange (data) {
- this.form.modelname = data.modelname
- console.log(this.form.modelname);
-
- this.form.sys_printmodelid = data.sys_printmodelid
- this.modelVisible = false
- },
- clearTime () {
- this.form.begdate = ''
- this.form.enddate = ''
- },
- timeChange (time) {
- this.form.begdate = time[0]
- this.form.enddate = time[1]
- },
- async getModelList () {
- let res = await this.$api.requested({
- "id": 20221121155801,
- "content": {
- "pageNumber": 1,
- "pageSize": 999999,
- "where":{
- "condition":""
- }
- }
- })
- this.modelList = res.data
- console.log(this.modelList);
- }
- },
- };
- </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>
|