ソースを参照

图片上传ok

tanlie 1 ヶ月 前
コミット
112707fe01

+ 1 - 1
wishing-admin/.env.development

@@ -1,6 +1,6 @@
 NODE_ENV = 'development'
 VUE_APP_ENV = 'dev'
-VUE_APP_BASE_API = "http://localhost:9999/dgapi"
+VUE_APP_BASE_API = "http://192.168.1.7:8999/dgapi"
 VUE_APP_API_PREFIX = "/dgapi"
 VUE_APP_TITLE = "许愿树管理平台-开发环境"
 

+ 205 - 7
wishing-admin/src/views/wishing/tree/list.vue

@@ -8,7 +8,7 @@
       @searchFn='searchFn'
       @resetFn='resetFn'
       :moreOperation='false'
-      :addBtn='true'
+      @addFn="addFn"
     >
       <template slot='search'>
         <el-form-item label='手机号'>
@@ -19,14 +19,57 @@
         </el-form-item>
       </template>
     </baseTable>
+
+    <el-dialog width="900px" :title="formDialog.title" :visible.sync="formDialog.visible" :close-on-click-modal="false">
+      <el-form
+        ref="userForm"
+        size="small"
+        label-width="120px"
+        :model="formDialog.formData"
+        :rules="formDialog.formRules"
+      >
+        <el-row>
+          <el-form-item label="用户名" prop="username" v-if="formDialog.isAdd">
+            <el-input v-model.trim="formDialog.formData.username" />
+          </el-form-item>
+          <el-form-item label="姓名" prop="fullName">
+            <el-input v-model.trim="formDialog.formData.fullName" />
+          </el-form-item>
+          <el-form-item label="手机号码" prop="mobile">
+            <el-input v-model.trim="formDialog.formData.mobile" />
+          </el-form-item>
+          <el-form-item label="电子邮箱" prop="email">
+            <el-input v-model.trim="formDialog.formData.email" />
+          </el-form-item>
+          <el-form-item label='头像1' prop='avatar'>
+            <el-upload
+              class="avatar-uploader"
+              :action="upload.action"
+              :headers="upload.headers"
+              :show-file-list="false"
+              :on-success="handleSuccess"
+            >
+              <img v-if="imageUrl" :src="imageUrl" class="avatar" />
+                <i v-else class="el-icon-plus avatar-uploader-icon"></i>
+            </el-upload>
+          </el-form-item>
+        </el-row>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" :loading="formDialog.loading" @click="submitFn">确定</el-button>
+        <el-button @click="cancelFn">取消</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
 <script>
 import { queryTreePage } from '@api/wishing/tree';
+import { createUser, removeUser, updateUserDetail } from '@api/upms/api-user';
 
 export default {
   name: 'WishingTree',
+
   data() {
     return {
       tableHeader: [
@@ -78,17 +121,74 @@ export default {
           label: '创建时间',
           prop: 'createdAt',
           align: 'center'
-        },
-        {
-          label: '修改时间',
-          prop: 'createdAt',
-          align: 'center'
         }
       ],
       tableData: [],
       defaultSearch: {},
       searchParams: Object.assign({}, this.$search),
-      uploadParams: {}
+      upload: {
+        headers: { Authorization: `Bearer ${this.$store.getters.accessToken}` },
+        action: '/dgapi/upms/attachment/upload-file',
+        extraData: {}
+      },
+      imageUrl: '',
+      formDialog: {
+        title: '',
+        visible: false,
+        loading: false,
+        isAdd: false,
+        formData: {
+          id: 0,
+          username: '',
+          fullName: '',
+          email: '',
+          avatar: '',
+          coverImage: ''
+        },
+        defaultData: {
+          sex: '3',
+          attachDataList: []
+        },
+        formRules: {
+          username: [
+            {
+              required: true,
+              message: '请输入用户名',
+              trigger: 'blur'
+            }
+          ],
+          fullName: [{
+            required: true,
+            message: '请输入姓名',
+            trigger: 'blur'
+          }],
+          mobile: [
+            {
+              required: true,
+              message: '请输入手机号码',
+              trigger: 'blur'
+            },
+            {
+              len: 11,
+              message: '长度11个字符',
+              trigger: 'blur'
+            }
+          ],
+          email: [
+            {
+              required: false,
+              type: 'email',
+              message: '请输入正确的电子邮箱',
+              trigger: 'blur'
+            }
+          ],
+          roleIds: [{
+            required: true,
+            message: '请选择对应的角色',
+            trigger: 'change'
+          }]
+        }
+      }
     };
   },
   created() {
@@ -120,11 +220,109 @@ export default {
       let vm = this;
       vm.searchParams = Object.assign({}, vm.defaultSearch, this.$search);
       vm.searchFn();
+    },
+    addFn() {
+      let vm = this;
+      vm.formDialog.title = '新增';
+      vm.formDialog.visible = true;
+      vm.formDialog.loading = false;
+      vm.formDialog.isAdd = true;
+      vm.formDialog.formData = Object.assign({}, vm.formDialog.defaultData);
+    },
+    cancelFn() {
+      let vm = this;
+      vm.formDialog.visible = false;
+      vm.formDialog.loading = false;
+      vm.formDialog.isAdd = false;
+      vm.formDialog.formData = Object.assign({}, vm.formDialog.defaultData);
+      vm.$refs.userForm.resetFields();
+    },
+    submitFn() {
+      let vm = this;
+      vm.formDialog.loading = true;
+      vm.$refs.userForm.validate((valid) => {
+        if (!valid) {
+          vm.formDialog.loading = false;
+          return;
+        }
+        if (vm.formDialog.formData.id) {
+          let formData = vm.formDialog.formData;
+          updateUserDetail(formData).then(
+            (res) => {
+              vm.$message.success('修改成功');
+              vm.formDialog.visible = false;
+              vm.formDialog.loading = false;
+              vm.searchFn(true);
+            },
+            (error) => {
+              vm.$notify.error({
+                title: error.data.msg,
+                message: error.data.data
+              });
+              vm.formDialog.loading = false;
+            }
+          );
+        } else {
+          let formData = vm.formDialog.formData;
+          createUser(formData).then(
+            (res) => {
+              vm.$message.success('新增成功');
+              vm.formDialog.visible = false;
+              vm.formDialog.loading = false;
+              vm.searchFn(true);
+            },
+            (error) => {
+              vm.$notify.error({
+                title: error.data.msg,
+                message: error.data.data
+              });
+              vm.formDialog.loading = false;
+            }
+          );
+        }
+      });
+    },
+    delFn(row) {
+      let vm = this;
+      vm.$confirm('此操作将删除该记录, 是否继续?', '提示', {
+        type: 'warning'
+      }).then(() => {
+        let ids = [row.id];
+        removeUser({ ids: ids }).then(
+          (res) => {
+            vm.$message.success('删除成功');
+            vm.searchFn(true);
+          },
+          (error) => {
+            vm.$notify.error({
+              title: error.data.msg,
+              message: error.data.data
+            });
+          }
+        );
+      });
+    },
+    handleSuccess(res, file, fileList) {
+      console.log(res);
     }
   }
 };
 </script>
 
 <style scoped type="less">
+.avatar-uploader .avatar {
+  width: 178px;
+  height: 178px;
+  display: block;
+}
 
+.avatar-uploader-icon {
+  font-size: 28px;
+  color: #8c939d;
+  width: 178px;
+  height: 178px;
+  line-height: 178px;
+  text-align: center;
+  border: 2px dashed #d9d9d9;
+}
 </style>

+ 0 - 38
wishing-platform/platform-entity/platform-entity-upms/src/test/java/cn/qinys/AppTest.java

@@ -1,38 +0,0 @@
-package cn.qinys;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-/**
- * Unit test for simple App.
- */
-public class AppTest 
-    extends TestCase
-{
-    /**
-     * Create the test case
-     *
-     * @param testName name of the test case
-     */
-    public AppTest( String testName )
-    {
-        super( testName );
-    }
-
-    /**
-     * @return the suite of tests being tested
-     */
-    public static Test suite()
-    {
-        return new TestSuite( AppTest.class );
-    }
-
-    /**
-     * Rigourous Test :-)
-     */
-    public void testApp()
-    {
-        assertTrue( true );
-    }
-}

+ 0 - 38
wishing-platform/platform-entity/platform-entity-wishing/src/test/java/cn/qinys/AppTest.java

@@ -1,38 +0,0 @@
-package cn.qinys;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-/**
- * Unit test for simple App.
- */
-public class AppTest 
-    extends TestCase
-{
-    /**
-     * Create the test case
-     *
-     * @param testName name of the test case
-     */
-    public AppTest( String testName )
-    {
-        super( testName );
-    }
-
-    /**
-     * @return the suite of tests being tested
-     */
-    public static Test suite()
-    {
-        return new TestSuite( AppTest.class );
-    }
-
-    /**
-     * Rigourous Test :-)
-     */
-    public void testApp()
-    {
-        assertTrue( true );
-    }
-}

+ 3 - 0
wishing-platform/platform-entity/platform-entity-wishing/target/maven-archiver/pom.properties

@@ -0,0 +1,3 @@
+artifactId=platform-entity-wishing
+groupId=cn.qinys
+version=1.0.0-SNAPSHOT

+ 3 - 0
wishing-platform/platform-entity/platform-entity-wishing/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@@ -0,0 +1,3 @@
+cn\qinys\platform\entity\wishing\BaseEntity.class
+cn\qinys\platform\entity\wishing\WishingTree.class
+cn\qinys\platform\entity\wishing\WishingUser.class

+ 3 - 0
wishing-platform/platform-entity/platform-entity-wishing/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@@ -0,0 +1,3 @@
+G:\许愿树\wishing-platform\platform-entity\platform-entity-wishing\src\main\java\cn\qinys\platform\entity\wishing\BaseEntity.java
+G:\许愿树\wishing-platform\platform-entity\platform-entity-wishing\src\main\java\cn\qinys\platform\entity\wishing\WishingTree.java
+G:\许愿树\wishing-platform\platform-entity\platform-entity-wishing\src\main\java\cn\qinys\platform\entity\wishing\WishingUser.java

BIN
wishing-platform/platform-entity/platform-entity-wishing/target/platform-entity-wishing-1.0.0-SNAPSHOT.jar


+ 35 - 0
wishing-platform/platform-gateway/src/main/resources/application-dev.yml

@@ -0,0 +1,35 @@
+spring:
+  cloud:
+    nacos:
+      discovery:
+        server-addr: 192.168.1.7:8848
+        namespace: a62810f4-be60-4973-8bd0-8199d19526ef
+        username: nacos
+        password: h8zG&mehJ#.s7V
+        group: wishing
+
+  datasource:
+    username: root
+    password: "@@qinys12346.."
+    url: jdbc:mysql://192.168.1.7:3306/gateway?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8
+    driver-class-name: com.mysql.cj.jdbc.Driver
+    type: com.alibaba.druid.pool.DruidDataSource
+
+
+  data:
+    redis:
+      host: 192.168.1.7
+      port: 6379
+      password: "XinchanR@2022###"
+      database: 0
+
+mybatis-plus:
+  configuration:
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+    map-underscore-to-camel-case: true
+  global-config:
+    db-config:
+      logic-delete-field: deleted
+      logic-delete-value: 1
+      logic-not-delete-value: 0
+

+ 1 - 1
wishing-platform/platform-gateway/src/main/resources/application.yml

@@ -1,5 +1,5 @@
 server:
-  port: 9999
+  port: 8999
 spring:
   application:
     name: wishing-gateway

+ 36 - 0
wishing-platform/platform-service/platform-service-admin/src/main/resources/application-dev.yml

@@ -0,0 +1,36 @@
+logging:
+  level:
+    cn.qinys.platform: debug
+spring:
+  cloud:
+    nacos:
+      discovery:
+        server-addr: 192.168.1.7:8848
+        namespace: a62810f4-be60-4973-8bd0-8199d19526ef
+        username: nacos
+        password: h8zG&mehJ#.s7V
+        group: wishing
+
+  data:
+    redis:
+      host: 192.168.1.7
+      port: 6379
+      password: "XinchanR@2022###"
+      database: 3
+
+  datasource:
+    username: root
+    password: "@@qinys12346.."
+    url: jdbc:mysql://192.168.1.7:3306/wishing_tree?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8
+    driver-class-name: com.mysql.cj.jdbc.Driver
+
+mybatis-plus:
+  configuration:
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+    map-underscore-to-camel-case: true
+  mapper-locations: classpath*:com/ctsi/platform/mobile/*/mapper/xml/*.xml
+  global-config:
+    db-config:
+      logic-delete-field: deleted
+      logic-delete-value: 1
+      logic-not-delete-value: 0

+ 1 - 0
wishing-platform/platform-service/platform-service-admin/src/main/resources/application-local.yml

@@ -10,6 +10,7 @@ spring:
         username: nacos
         password: h8zG&mehJ#.s7V
         group: wishing
+        ip: 192.168.1.8
 
   data:
     redis:

+ 1 - 1
wishing-platform/platform-service/platform-service-upms/src/main/java/cn/qinys/platform/upms/api/controller/AttachmentController.java

@@ -33,7 +33,7 @@ public class AttachmentController {
      * @param file
      * @return
      */
-    @PostMapping("upload-file")
+    @PostMapping("/upload-file")
     public Result<AttachmentDTO> uploadFileAttachment(@RequestParam("file") MultipartFile file) {
         AttachmentDTO res = attachmentService.uploadFileAttachment(file);
         return new Result<>(ResultCodeEnum.SUCCESS, res);

+ 47 - 0
wishing-platform/platform-service/platform-service-upms/src/main/resources/application-dev.yml

@@ -0,0 +1,47 @@
+logging:
+  level:
+    cn.qinys.platform: debug
+spring:
+  cloud:
+    nacos:
+      discovery:
+        server-addr: 192.168.1.7:8848
+        namespace: a62810f4-be60-4973-8bd0-8199d19526ef
+        username: nacos
+        password: h8zG&mehJ#.s7V
+        group: wishing
+
+  data:
+    redis:
+      host: 192.168.1.7
+      port: 6379
+      password: "XinchanR@2022###"
+      database: 3
+
+  datasource:
+    username: root
+    password: "@@qinys12346.."
+    url: jdbc:mysql://192.168.1.7:3306/wishing_upms?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8
+    driver-class-name: com.mysql.cj.jdbc.Driver
+
+mybatis-plus:
+  configuration:
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+    map-underscore-to-camel-case: true
+  mapper-locations: classpath*:com/ctsi/platform/mobile/*/mapper/xml/*.xml
+  global-config:
+    db-config:
+      logic-delete-field: deleted
+      logic-delete-value: 1
+      logic-not-delete-value: 0
+
+system:
+  base-url: https://wish.qinys.cn/dgapi/upms/ext/file/
+  file-directory: /file/
+
+
+sms:
+  debug: true
+  username: xcgsqwhxgl
+  pwd: rJi51O
+  url: http://218.65.241.103:9088/services/WebServiceSoap?wsdl