|
@@ -2,50 +2,96 @@
|
|
|
<div>
|
|
|
<div class="groupedit">
|
|
|
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
|
|
|
- <el-form-item label="活销售报价号" prop="name">
|
|
|
- <el-input v-model="ruleForm.name"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="本团成单人" prop="region">
|
|
|
- <el-select v-model="ruleForm.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="本团成单人" prop="region">
|
|
|
- <el-select v-model="ruleForm.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="本团成单人" prop="region">
|
|
|
- <el-select v-model="ruleForm.region" placeholder="请选择活动区域">
|
|
|
- <el-option label="区域一" value="shanghai"></el-option>
|
|
|
- <el-option label="区域二" value="beijing"></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="即时配送" prop="delivery">
|
|
|
- <el-switch v-model="ruleForm.delivery"></el-switch>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="活动性质" prop="type">
|
|
|
- <el-checkbox-group v-model="ruleForm.type">
|
|
|
- <el-checkbox label="美食/餐厅线上活动" name="type"></el-checkbox>
|
|
|
- <el-checkbox label="地推活动" name="type"></el-checkbox>
|
|
|
- <el-checkbox label="线下主题活动" name="type"></el-checkbox>
|
|
|
- <el-checkbox label="单纯品牌曝光" name="type"></el-checkbox>
|
|
|
- </el-checkbox-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="特殊资源" prop="resource">
|
|
|
- <el-radio-group v-model="ruleForm.resource">
|
|
|
- <el-radio label="线上品牌商赞助"></el-radio>
|
|
|
- <el-radio label="线下场地免费"></el-radio>
|
|
|
- </el-radio-group>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="活动形式" prop="desc">
|
|
|
- <el-input type="textarea" v-model="ruleForm.desc"></el-input>
|
|
|
- </el-form-item>
|
|
|
+ <div class="required-box">
|
|
|
+ <el-form-item label-width="120px" label="销售报价号:">
|
|
|
+ <el-input :readonly="true" el-input v-model="ruleForm.quotenum"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="本团成单人:" prop="person">
|
|
|
+ <el-select v-model="ruleForm.person" placeholder="请选择本团成单人 ">
|
|
|
+ <el-option v-for="(item,index) in personarr" :key="index" :label="item.cnName" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="客户级别:" prop="grades">
|
|
|
+ <el-select v-model="ruleForm.grades" placeholder="请选择客户级别">
|
|
|
+ <el-option v-for="(item,index) in gradearr" :key="index" :label="item.name" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="团组类型:" prop="OP">
|
|
|
+ <el-select class="op-type" v-model="ruleForm.OP" placeholder="请选择团组类型">
|
|
|
+ <el-option v-for="(item,index) in OPtype" :key="index" :label="item.name" :value="item.id"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="团组名称:" prop="groupname">
|
|
|
+ <el-input el-input v-model="ruleForm.groupname"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="客户名称:" prop="customername">
|
|
|
+ <el-input el-input v-model="ruleForm.customername"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="客户单位:" prop="customerunits">
|
|
|
+ <el-input el-input v-model="ruleForm.customerunits"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="出访国家:" prop="countriesvisited">
|
|
|
+ <el-input el-input v-model="ruleForm.countriesvisited"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="出访时间:" prop="visitingtime">
|
|
|
+ <el-date-picker type="date" placeholder="选择日期" v-model="ruleForm.visitingtime" style="width: 100%;"></el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="出访天数:" prop="numdays">
|
|
|
+ <el-input el-input v-model="ruleForm.numdays"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="出访人数:" prop="numperson">
|
|
|
+ <el-input el-input v-model="ruleForm.numperson"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="合同时间:" prop="contracttime">
|
|
|
+ <el-date-picker type="date" placeholder="选择日期" v-model="ruleForm.contracttime" style="width: 100%;"></el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div class="advance-box">
|
|
|
+ <el-form-item label-width="120px" label="于出访时间前" prop="occasion">
|
|
|
+ <el-input style="width: 100px;" el-input v-model="ruleForm.occasion"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="98px" label="日支付款项:" prop="payments">
|
|
|
+ <el-input el-input v-model="ruleForm.payments"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <span style="margin-bottom: 22px;display: inline-block;color: #606266;font-size: 14px;">(预付款,请输入RMB)</span>
|
|
|
+ </div>
|
|
|
+ <el-form>
|
|
|
+ <el-form-item label-width="120px" label="出访目的:">
|
|
|
+ <el-input type="textarea" v-model="ruleForm.purposevisit"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="特殊需求:">
|
|
|
+ <el-input type="textarea" v-model="ruleForm.specialneeds"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="其他需求:">
|
|
|
+ <el-input type="textarea" v-model="ruleForm.otherneeds"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <el-form class="approval-box">
|
|
|
+ <el-form-item label-width="160px" label="出国任务审批部门名称:">
|
|
|
+ <el-input el-input v-model="ruleForm.approvalname"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="批件文号:">
|
|
|
+ <el-input el-input v-model="ruleForm.approvalnumber1"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="130px" label="政治审查部门名称:">
|
|
|
+ <el-input el-input v-model="ruleForm.censorshipdepartment"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="批件文号:">
|
|
|
+ <el-input el-input v-model="ruleForm.approvalnumber2"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <el-form>
|
|
|
+ <el-form-item label-width="120px" label="备注:">
|
|
|
+ <el-input type="textarea" v-model="ruleForm.remark"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label-width="120px" label="手机号:">
|
|
|
+ <el-input type="textarea" v-model="ruleForm.phonenumber"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
<el-form-item>
|
|
|
<el-button type="primary" @click="submitForm('ruleForm')">立即创建</el-button>
|
|
|
- <el-button @click="resetForm('ruleForm')">重置</el-button>
|
|
|
+ <el-button @click="resetForm('ruleForm')">重 置</el-button>
|
|
|
+ <el-button @click="resetForm('ruleForm')">返 回</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</div>
|
|
@@ -56,42 +102,84 @@
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
+ editid:'',
|
|
|
+ token:'',
|
|
|
ruleForm: {
|
|
|
- name: '',
|
|
|
- region: '',
|
|
|
- date1: '',
|
|
|
- date2: '',
|
|
|
- delivery: false,
|
|
|
- type: [],
|
|
|
- resource: '',
|
|
|
- desc: ''
|
|
|
+ quotenum:'',
|
|
|
+ groupname: '',
|
|
|
+ customername: '',
|
|
|
+ customerunits:'',
|
|
|
+ countriesvisited:'',
|
|
|
+ visitingtime:'',
|
|
|
+ contracttime:'',
|
|
|
+ numdays:'',
|
|
|
+ numperson:'',
|
|
|
+ occasion:'',
|
|
|
+ payments:'',
|
|
|
+ purposevisit: '',
|
|
|
+ specialneeds:'',
|
|
|
+ otherneeds:'',
|
|
|
+ approvalname:'',
|
|
|
+ approvalnumber1:'',
|
|
|
+ approvalnumber2:'',
|
|
|
+ censorshipdepartment:'',
|
|
|
+ remark:'',
|
|
|
+ phonenumber:'',
|
|
|
+ OP:'',
|
|
|
+ grades:'',
|
|
|
+ person:''
|
|
|
},
|
|
|
+ personarr:[],
|
|
|
+ gradearr:[],
|
|
|
+ OPtype:[],
|
|
|
rules: {
|
|
|
- name: [
|
|
|
- { required: true, message: '请输入活动名称', trigger: 'blur' },
|
|
|
- { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
|
|
|
+ groupname: [
|
|
|
+ { required: true, message: '请输入团组名称', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ customername: [
|
|
|
+ { required: true, message: '请输入客户名称', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ customerunits:[
|
|
|
+ { required: true, message: '请输入客户单位', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ countriesvisited:[
|
|
|
+ { required: true, message: '请输入出访国家', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ person: [
|
|
|
+ { required: true, message: '请选择成团人', trigger: 'change' }
|
|
|
+ ],
|
|
|
+ grades:[
|
|
|
+ { required: true, message: '请选择级别', trigger: 'change' }
|
|
|
],
|
|
|
- region: [
|
|
|
- { required: true, message: '请选择活动区域', trigger: 'change' }
|
|
|
+ OP:[
|
|
|
+ { required: true, message: '请选择类型', trigger: 'change' }
|
|
|
],
|
|
|
- date1: [
|
|
|
+ visitingtime: [
|
|
|
{ type: 'date', required: true, message: '请选择日期', trigger: 'change' }
|
|
|
],
|
|
|
- date2: [
|
|
|
+ contracttime: [
|
|
|
{ type: 'date', required: true, message: '请选择时间', trigger: 'change' }
|
|
|
],
|
|
|
- type: [
|
|
|
- { type: 'array', required: true, message: '请至少选择一个活动性质', trigger: 'change' }
|
|
|
+ numdays:[
|
|
|
+ { required: true, message: '请输入出访天数', trigger: 'blur' },
|
|
|
+ {pattern:"^\\d+$",message: "请输入正整数",trigger: "blur"}
|
|
|
],
|
|
|
- resource: [
|
|
|
- { required: true, message: '请选择活动资源', trigger: 'change' }
|
|
|
+ numperson:[
|
|
|
+ { required: true, message: '请输入出访人数', trigger: 'blur' },
|
|
|
+ {pattern:"^\\d+$",message: "请输入正整数",trigger: "blur"}
|
|
|
],
|
|
|
- desc: [
|
|
|
- { required: true, message: '请填写活动形式', trigger: 'blur' }
|
|
|
+ occasion:[
|
|
|
+ { required: true, message: '请输入出天数', trigger: 'blur' },
|
|
|
+ {pattern:"^\\d+$",message: "请输入正整数",trigger: "blur"}
|
|
|
+ ],
|
|
|
+ payments:[
|
|
|
+ { required: true, message: '请输入出款额', trigger: 'blur' },
|
|
|
+ {pattern:"^\\d+(\\.\\d+)?$",message: "请输入正浮点数或整数",trigger: "blur"}
|
|
|
]
|
|
|
}
|
|
|
};
|
|
|
- },methods: {
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
submitForm(formName) {
|
|
|
this.$refs[formName].validate((valid) => {
|
|
|
if (valid) {
|
|
@@ -104,7 +192,97 @@ export default {
|
|
|
},
|
|
|
resetForm(formName) {
|
|
|
this.$refs[formName].resetFields();
|
|
|
- }
|
|
|
+ },
|
|
|
+ getdown(){
|
|
|
+ var url="/api/Groups/GroupEditBasicSource"
|
|
|
+ var that=this
|
|
|
+ this.$axios({
|
|
|
+ method: 'post',
|
|
|
+ url:url,
|
|
|
+ headers:{
|
|
|
+ Authorization:'Bearer '+this.token
|
|
|
+ },
|
|
|
+ data:{
|
|
|
+ portType: 1,
|
|
|
+ }
|
|
|
+ }).then(function(res){
|
|
|
+ if(res.data.code==200){
|
|
|
+ that.personarr=res.data.data.userData;
|
|
|
+ that.gradearr=res.data.data.teamLevData;
|
|
|
+ that.OPtype=res.data.data.teamTypeData;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ getSalesQuoteNo(){
|
|
|
+ var url="/api/Groups/GetGroupSalesQuoteNo"
|
|
|
+ var that=this
|
|
|
+ if(this.editid==undefined){
|
|
|
+ this.$axios({
|
|
|
+ method: 'post',
|
|
|
+ url:url,
|
|
|
+ headers:{
|
|
|
+ Authorization:'Bearer '+this.token
|
|
|
+ },
|
|
|
+ }).then(function(res){
|
|
|
+ if(res.data.code==200){
|
|
|
+ that.ruleForm.quotenum=res.data.data.salesQuoteNo;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getGroupInfo(){
|
|
|
+ var url="/api/Groups/GetGroupInfo"
|
|
|
+ var that=this
|
|
|
+ var datagroup
|
|
|
+ if(this.editid!=undefined){
|
|
|
+ this.$axios({
|
|
|
+ method: 'post',
|
|
|
+ url:url,
|
|
|
+ headers:{
|
|
|
+ Authorization:'Bearer '+this.token
|
|
|
+ },
|
|
|
+ data:{
|
|
|
+ portType:1,
|
|
|
+ id:that.editid
|
|
|
+ }
|
|
|
+ }).then(function(res){
|
|
|
+ if(res.data.code==200){
|
|
|
+ datagroup=res.data.data;
|
|
|
+ console.log(datagroup)
|
|
|
+ that.ruleForm.quotenum=datagroup.salesQuoteNo;
|
|
|
+ that.ruleForm.groupname=datagroup.teamName;
|
|
|
+ that.ruleForm.customername=datagroup.clientName;
|
|
|
+ that.ruleForm.customerunits=datagroup.clientUnit;
|
|
|
+ that.ruleForm.countriesvisited=datagroup.visitCountry.replaceAll("|","、");
|
|
|
+ that.ruleForm.visitingtime=new Date(datagroup.visitDate.split(' ')[0]);
|
|
|
+ that.ruleForm.numdays=datagroup.visitDays+"";
|
|
|
+ that.ruleForm.numperson=datagroup.visitPNumber+"";
|
|
|
+ that.ruleForm.contracttime=new Date(datagroup.tontractTime.split(' ')[0]);
|
|
|
+ that.ruleForm.payments=datagroup.paymentMoney+'';
|
|
|
+ that.ruleForm.occasion=datagroup.payDay+'';
|
|
|
+ that.ruleForm.purposevisit=datagroup.visitPurpose;
|
|
|
+ that.ruleForm.specialneeds=datagroup.specialNeeds;
|
|
|
+ that.ruleForm.otherneeds=datagroup.otherNeeds;
|
|
|
+ that.ruleForm.approvalname=datagroup.cgrwspbmmc;
|
|
|
+ that.ruleForm.approvalnumber1=datagroup.cgrwspwh;
|
|
|
+ that.ruleForm.censorshipdepartment=datagroup.zzscbmmc;
|
|
|
+ that.ruleForm.approvalnumber2=datagroup.zzscspwh;
|
|
|
+ that.ruleForm.remark=datagroup.remark;
|
|
|
+ that.ruleForm.phonenumber=datagroup.tellPhone;
|
|
|
+ that.ruleForm.OP=datagroup.teamDid;
|
|
|
+ that.ruleForm.grades=datagroup.teamLevSId;
|
|
|
+ that.ruleForm.person=datagroup.jietuanOperator;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mounted(){
|
|
|
+ this.editid=this.$route.query.id;
|
|
|
+ this.token=JSON.parse(localStorage.getItem('userinif')).token;
|
|
|
+ this.getSalesQuoteNo();
|
|
|
+ this.getdown();
|
|
|
+ this.getGroupInfo();
|
|
|
}
|
|
|
}
|
|
|
</script>
|
|
@@ -114,4 +292,29 @@ export default {
|
|
|
border-radius: 10px;
|
|
|
padding: 20px;
|
|
|
}
|
|
|
+ .required-box{
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ justify-content: space-between;
|
|
|
+ }
|
|
|
+ .required-box>div{
|
|
|
+ width: 30%;
|
|
|
+ }
|
|
|
+ .required-box .el-select{
|
|
|
+ width: 100%;
|
|
|
+ }
|
|
|
+ .approval-box{
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ }
|
|
|
+ .approval-box>div{
|
|
|
+ width: 23%;
|
|
|
+ }
|
|
|
+ .approval-box>div:nth-child(1){
|
|
|
+ width: 30%;
|
|
|
+ }
|
|
|
+ .advance-box{
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ }
|
|
|
</style>>
|