edit.vue 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. <template>
  2. <div>
  3. <el-button size="mini" type="primary" @click="onShow(dialogVisible = true)">{{$t('编 辑')}}</el-button>
  4. <el-drawer
  5. :title="$t(`编辑业务员`)"
  6. :visible.sync="dialogVisible"
  7. :wrapperClosable="false"
  8. size="600px"
  9. direction="rtl"
  10. append-to-body
  11. :show-close="false"
  12. @close="onClose">
  13. <div class="drawer__panel">
  14. <el-row>
  15. <el-form :model="form" :rules="rules" ref="form" label-position="right" :label-width="tool.onlyZh('75px')" size="small">
  16. <el-row>
  17. <el-col :span="12">
  18. <el-form-item :label="$t(`业务员`)+':'" prop="hrid">
  19. <selectMenber ref="selectMenber" @selectMenber="selectMenber"></selectMenber>
  20. </el-form-item>
  21. </el-col>
  22. <el-col :span="12">
  23. <el-form-item :label="$t(`手机号`)+':'" prop="phonenumber">
  24. <el-input v-model="form.phonenumber" :placeholder="$t(`手机号`)" disabled></el-input>
  25. </el-form-item>
  26. </el-col>
  27. <el-col :span="12">
  28. <el-form-item :label="$t(`汇报对象`)+':'" prop="reporthrname">
  29. <el-input v-model="form.reporthrname" :placeholder="$t(`汇报对象`)" disabled></el-input>
  30. </el-form-item>
  31. </el-col>
  32. <el-col :span="12">
  33. <el-form-item :label="$t(`编号`)+':'" prop="hrcode">
  34. <el-input v-model="form.hrcode" :placeholder="$t(`编号`)" disabled></el-input>
  35. </el-form-item>
  36. </el-col>
  37. <el-col :span="12">
  38. <el-form-item :label="$t(`邮箱`)+':'" prop="email">
  39. <el-input v-model="form.email" :placeholder="$t(`邮箱`)" disabled></el-input>
  40. </el-form-item>
  41. </el-col>
  42. <el-col :span="12">
  43. <el-form-item :label="$t(`部门`)+':'" prop="depname">
  44. <el-input v-model="form.depname" :placeholder="$t(`部门`)" disabled></el-input>
  45. </el-form-item>
  46. </el-col>
  47. </el-row>
  48. <el-row>
  49. <el-col :span="12">
  50. <el-form-item :label="$t(`区域`)+':'" prop="areaname">
  51. <!-- <el-input v-model="form.areaname" :placeholder="$t(`区域`)" ></el-input>-->
  52. <areaList :areaname="form.areaname" @selectArea="selectArea" ref="areaList"></areaList>
  53. </el-form-item>
  54. </el-col>
  55. <el-col :span="15">
  56. <el-form-item :label="$t(`最低授权折扣`)+'(%):'" prop="discountrate" :label-width="tool.onlyZh('132px')">
  57. <el-input v-model="form.discountrate" :placeholder="$t(`最低授权折扣`)" @change="discountrateChange(form.discountrate)"></el-input>
  58. </el-form-item>
  59. </el-col>
  60. <el-col :span="24">
  61. <el-form-item prop="iseditprice" :label-width="tool.onlyZh('132px')">
  62. <!-- <el-input v-model="form.discountrate" :placeholder="$t(`请输入最低授权折扣`)" @change="discountrateChange(form.discountrate)"></el-input> -->
  63. <el-checkbox :true-label="1" :false-label="0" v-model="form.iseditprice">{{ $t('是否可编辑订单价格') }}</el-checkbox>
  64. </el-form-item>
  65. </el-col>
  66. </el-row>
  67. </el-form>
  68. </el-row>
  69. </div>
  70. <div class="fixed__btn__panel">
  71. <el-button size="small" @click="onClose" class="normal-btn-width">{{$t('取 消')}}</el-button>
  72. <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">{{$t('确 定')}}</el-button>
  73. </div>
  74. </el-drawer>
  75. </div>
  76. </template>
  77. <script>
  78. import selectMenber from '@/components/selectMenber/index.vue'
  79. import areaList from "@/HManagement/marketing2/saler/area/modules/areaListNew";
  80. export default {
  81. name: "edit",
  82. props:["data"],
  83. components:{
  84. selectMenber,
  85. areaList
  86. },
  87. data(){
  88. return {
  89. dialogVisible:false,
  90. form:{
  91. "sa_saleareaid":'',
  92. "hrid":''
  93. },
  94. rules:{
  95. discountrate:[
  96. { required: true, message: this.$t('请输入最低授权折扣'), trigger: 'blur' },
  97. { pattern:/^[0-9]+\.{0,1}[0-9]{0,2}$/,message: this.$t('只能输入数值'),trigger: 'blur'},
  98. ]
  99. }
  100. }
  101. },
  102. methods:{
  103. onShow(){
  104. this.form = Object.assign({},this.form,this.data)
  105. this.form.discountrate = Math.round((this.form.discountrate*100)*100)/100
  106. this.$nextTick(() => {
  107. console.log(this.$refs)
  108. this.$refs.selectMenber.value.name = this.data.name
  109. });
  110. },
  111. onClose(){
  112. this.dialogVisible = false
  113. this.$refs.form.resetFields()
  114. /* this.$refs.selectMenber.value.name = ''
  115. this.$refs.selectMenber.value.hrid = ''*/
  116. this.form = {
  117. "sa_saleareaid":'',
  118. "hrid":'',
  119. "discountrate":''
  120. }
  121. },
  122. selectMenber (data) {
  123. console.log(data)
  124. this.form = Object.assign({},this.form,data)
  125. },
  126. onSubmit(){
  127. console.log(this.form)
  128. this.$refs.form.validate(async(valid) =>{
  129. if (!valid) return false
  130. this.form.discountrate = (this.form.discountrate/100).toFixed(4)
  131. const res = await this.$api.requested({
  132. "id": 20221011144703,
  133. "content": this.form
  134. })
  135. if (res.code == 0){
  136. this.form.discountrate = Math.round((this.form.discountrate*100)*100)/100
  137. }
  138. this.tool.showMessage(res,()=>{
  139. this.dialogVisible = false
  140. this.$refs.form.resetFields()
  141. this.$emit('onSuccess')
  142. })
  143. })
  144. },
  145. discountrateChange(val){
  146. if (val < 0){
  147. this.form.discountrate = 1
  148. }else if(val > 100){
  149. this.form.discountrate = 100
  150. }else {
  151. this.form.discountrate = Math.round(val * 100)/100
  152. }
  153. },
  154. selectArea(val){
  155. console.log(val,'选择的')
  156. this.form.areaname = val.label
  157. this.form.sa_saleareaid = val.sa_saleareaid
  158. }
  159. }
  160. }
  161. </script>
  162. <style>
  163. </style>