addMessage.vue 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. /*
  2. 添加信息
  3. author:zsy
  4. date:2023-2-17
  5. */
  6. <template>
  7. <div class="add-message">
  8. <el-form
  9. :model="ruleForm"
  10. ref="ruleForm"
  11. label-width="100px"
  12. class="demo-ruleForm"
  13. :rules="rules"
  14. >
  15. <el-form-item label="用户名称" prop="uname">
  16. <el-input v-model="ruleForm.uname"></el-input>
  17. </el-form-item>
  18. <el-form-item label="地址" prop="addressid">
  19. <el-select v-model="ruleForm.addressid" placeholder="请选择">
  20. <el-option
  21. v-for="item in addressData"
  22. :key="item.addressid"
  23. :label="item.addressname"
  24. :value="item.addressid"
  25. >
  26. </el-option>
  27. </el-select>
  28. </el-form-item>
  29. <el-form-item label="等级" prop="levelid">
  30. <el-select v-model="ruleForm.levelid" placeholder="请选择">
  31. <el-option
  32. v-for="item in levelData"
  33. :key="item.jrid"
  34. :label="item.levelname"
  35. :value="item.jrid"
  36. >
  37. </el-option>
  38. </el-select>
  39. </el-form-item>
  40. <el-form-item label="电话号码" prop="tel">
  41. <el-input v-model="ruleForm.tel"></el-input>
  42. </el-form-item>
  43. <!-- <el-form-item label="添加头像" prop="tcoin">
  44. <el-upload
  45. class="avatar-uploader"
  46. action="https://39.105.160.25:4000/getMessageA"
  47. :on-success="handleAvatarSuccess"
  48. name="sfile"
  49. >
  50. <img v-if="imageUrl" :src="imageUrl" class="avatar" />
  51. <i v-else class="el-icon-plus avatar-uploader-icon"></i>
  52. </el-upload>
  53. </el-form-item> -->
  54. <el-form-item>
  55. <el-button type="primary" @click="updateForm('ruleForm')" v-if="isUpdate"
  56. >修改</el-button
  57. >
  58. <el-button type="primary" @click="submitForm('ruleForm')" v-else
  59. >提交</el-button
  60. >
  61. <el-button @click="resetForm('ruleForm')">重置</el-button>
  62. </el-form-item>
  63. </el-form>
  64. </div>
  65. </template>
  66. <script>
  67. import { getLocation } from "@/api/location";
  68. import { getLevel } from "@/api/level";
  69. import {addMessage,showMessage,upMessage} from '@/api/message'
  70. export default {
  71. data() {
  72. return {
  73. isUpdate:false,
  74. ruleForm: {
  75. uname: "",
  76. addressid: "",
  77. leveid: "",
  78. tel: "",
  79. },
  80. rules: {},
  81. addressData: [],
  82. levelData: [],
  83. };
  84. },
  85. methods: {
  86. //获取地址列表
  87. getLocationList() {
  88. getLocation().then((res) => {
  89. this.addressData = res.data;
  90. console.log(this.addressData);
  91. });
  92. },
  93. //获取等级列表
  94. getLevelList() {
  95. getLevel().then((res) => {
  96. this.levelData = res.data;
  97. console.log(this.levelData);
  98. });
  99. },
  100. // //图片上传成功的事件
  101. // handleAvatarSuccess(response) {
  102. // console.log(this.response)
  103. // // this.imageUrl = URL.createObjectURL(file.raw);
  104. // },
  105. submitForm(formName) {
  106. this.$refs[formName].validate((valid) => {
  107. if (valid) {
  108. addMessage({
  109. uname: this.ruleForm.uname,
  110. addressid: this.ruleForm.addressid,
  111. levelid: this.ruleForm.levelid,
  112. tel: this.ruleForm.tel,
  113. })
  114. .then((res) => {
  115. this.$message({
  116. type: "success",
  117. message: res.message,
  118. });
  119. this.$refs[formName].resetFields();
  120. this.$router.push("/message/messageList");
  121. })
  122. .catch((err) => {
  123. console.log(err);
  124. });
  125. } else {
  126. console.log("error submit!!");
  127. return false;
  128. }
  129. });
  130. },
  131. resetForm(formName) {
  132. this.$refs[formName].resetFields();
  133. },
  134. //根据id获取信息
  135. showMessageList(id){
  136. console.log(id)
  137. showMessage({
  138. id: id
  139. }).then((res)=>{
  140. console.log(res.data[0])
  141. // this.ruleForm = res.data[0]
  142. let _data = res.data[0]
  143. this.ruleForm = {
  144. uname: _data.jrname,
  145. addressid: _data.jraddressesid,
  146. levelid: _data.jrlevel,
  147. tel: _data.jrtel
  148. }
  149. }).catch((err)=>{
  150. console.log(err)
  151. })
  152. },
  153. //修改信息
  154. updateForm(formName) {
  155. this.$refs[formName].validate((valid) => {
  156. if (valid) {
  157. upMessage({
  158. id: this.$route.query.id,
  159. uname: this.ruleForm.uname,
  160. addressid: this.ruleForm.addressid,
  161. levelid: this.ruleForm.levelid,
  162. tel: this.ruleForm.tel,
  163. })
  164. .then((res) => {
  165. this.$message({
  166. type: "success",
  167. message: res.message,
  168. });
  169. this.$refs[formName].resetFields();
  170. this.$router.push("/message/messageList");
  171. })
  172. .catch((err) => {
  173. console.log(err);
  174. });
  175. } else {
  176. console.log("error submit!!");
  177. return false;
  178. }
  179. });
  180. }
  181. },
  182. created() {
  183. this.getLocationList();
  184. this.getLevelList();
  185. this.showMessageList()
  186. // console.log(this.$route.query.id)
  187. if(this.$route.query.id){
  188. let _id = this.$route.query.id
  189. this.showMessageList(_id),
  190. this.isUpdate = true
  191. }
  192. },
  193. };
  194. </script>
  195. <style>
  196. </style>