Просмотр исходного кода

chore: auto bump version and changelog [skip ci]

iwt 3 недель назад
Родитель
Сommit
7859cbb171

+ 1 - 1
cfc-web/.last_build_commit

@@ -1 +1 @@
-225d8d058572c08614f389c3ef01d4616552afab
+888d60724e4a1fb2ee71bb9540b06a9a61da7cef

+ 1 - 1
cfc-web/package.json

@@ -1,6 +1,6 @@
 {
   "name": "cfc-web",
-  "version": "1.0.1764",
+  "version": "1.0.1765",
   "private": true,
   "scripts": {
     "dev": "vue-cli-service serve",

+ 9 - 0
cfc-web/public/CHANGELOG-v1.0.md

@@ -4,6 +4,15 @@
 
 ---
 
+## v1.0.1765 (2026-10-22)
+
+### 新功能
+- 补齐通知通道实现与降级策略
+
+### 样式
+- C-16 PlanManagement/ReportManagement/SpecialPriceManage/ButlerAudit/supply-system-Form 内联 style 归零
+
+
 ## v1.0.1764 (2026-10-22)
 
 ### 新功能

+ 10 - 1
cfc-web/public/CHANGELOG.md

@@ -1,6 +1,6 @@
 # 更新日志
 
-> 当前版本: v1.0.1764
+> 当前版本: v1.0.1765
 
 ## 历史版本
 
@@ -8,6 +8,15 @@
 
 ---
 
+## v1.0.1765 (2026-10-22)
+
+### 新功能
+- 补齐通知通道实现与降级策略
+
+### 样式
+- C-16 PlanManagement/ReportManagement/SpecialPriceManage/ButlerAudit/supply-system-Form 内联 style 归零
+
+
 ## v1.0.1764 (2026-10-22)
 
 ### 新功能

+ 174 - 0
cfc-web/src/views/admin/org/Form.vue

@@ -0,0 +1,174 @@
+<template>
+  <div class="org-form">
+    <el-card>
+      <PageHeader slot="header" :title="isEdit ? '编辑组织' : '新建组织'">
+        <el-button size="mini" @click="$router.push('/org')">返回</el-button>
+      </PageHeader>
+
+      <el-form ref="form" :model="form" :rules="rules" label-width="120px">
+        <el-form-item label="组织名称" prop="name">
+          <el-input v-model="form.name" placeholder="请输入组织名称" maxlength="128"></el-input>
+        </el-form-item>
+
+        <el-form-item label="组织类型" prop="type">
+          <el-select v-model="form.type" placeholder="请选择组织类型" style="width: 100%">
+            <el-option label="企业" value="enterprise"></el-option>
+            <el-option label="机构" value="institution"></el-option>
+            <el-option label="其他" value="other"></el-option>
+          </el-select>
+        </el-form-item>
+
+        <el-form-item label="组织编号" prop="code">
+          <el-input v-model="form.code" placeholder="留空自动生成" maxlength="64"></el-input>
+          <span slot="append" class="el-form-item__error" style="font-size:12px;color:#909399">为空时服务端自动生成(ORG+6位随机)</span>
+        </el-form-item>
+
+        <el-form-item label="联系人姓名" prop="contactName">
+          <el-input v-model="form.contactName" placeholder="请输入联系人姓名" maxlength="64"></el-input>
+        </el-form-item>
+
+        <el-form-item label="联系人电话" prop="contactPhone">
+          <el-input v-model="form.contactPhone" placeholder="请输入联系人电话" maxlength="32"></el-input>
+        </el-form-item>
+
+        <el-form-item label="组织简介" prop="description">
+          <el-input v-model="form.description" placeholder="请输入组织简介" type="textarea" :rows="4"></el-input>
+        </el-form-item>
+
+        <!-- 仅新建时显示管理员账号创建区域 -->
+        <el-divider v-if="!isEdit" content-position="left">管理员账号创建</el-divider>
+        <el-form-item v-if="!isEdit" label="管理员手机号" prop="adminPhone">
+          <el-input v-model="form.adminPhone" placeholder="请输入管理员手机号" maxlength="20"></el-input>
+        </el-form-item>
+        <el-form-item v-if="!isEdit" label="管理员真实姓名" prop="adminRealName">
+          <el-input v-model="form.adminRealName" placeholder="请输入管理员真实姓名" maxlength="64"></el-input>
+        </el-form-item>
+
+        <el-form-item>
+          <el-button type="primary" :loading="saving" @click="handleSubmit">{{ isEdit ? '保存修改' : '创建' }}</el-button>
+          <el-button @click="$router.push('/org')">取消</el-button>
+        </el-form-item>
+      </el-form>
+    </el-card>
+
+    <el-dialog title="操作成功" :visible.sync="successDialogVisible" width="400px" :close-on-click-modal="false">
+      <div style="text-align:center;padding:10px 0">
+        <i class="el-icon-success" style="color: var(--adm-success);font-size:32px"></i>
+        <p style="margin:12px 0 0;font-size:16px;color: var(--adm-text-88)">{{ isEdit ? '保存成功' : '创建成功' }}</p>
+      </div>
+      <div slot="footer">
+        <el-button v-if="!isEdit" type="primary" @click="handleContinue">继续添加</el-button>
+        <el-button @click="handleClose">返回列表</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { orgCreate, orgUpdate, orgDetail } from '@/api/org'
+
+export default {
+  name: 'OrgForm',
+  data() {
+    return {
+      form: {
+        id: null,
+        name: '',
+        type: 'enterprise',
+        code: '',
+        contactName: '',
+        contactPhone: '',
+        description: '',
+        adminPhone: '',
+        adminRealName: ''
+      },
+      rules: {
+        name: [
+          { required: true, message: '请输入组织名称', trigger: 'blur' }
+        ],
+        type: [
+          { required: true, message: '请选择组织类型', trigger: 'change' }
+        ],
+        adminPhone: [
+          { required: true, message: '请输入管理员手机号', trigger: 'blur' },
+          { pattern: /^1[3-9]\d{9}$/, message: '手机号格式不正确', trigger: 'blur' }
+        ],
+        adminRealName: [
+          { required: true, message: '请输入管理员真实姓名', trigger: 'blur' }
+        ]
+      },
+      saving: false,
+      successDialogVisible: false
+    }
+  },
+  computed: {
+    isEdit() {
+      return !!this.$route.params.id
+    }
+  },
+  created() {
+    if (this.isEdit) {
+      this.loadDetail(this.$route.params.id)
+    }
+  },
+  methods: {
+    async loadDetail(id) {
+      try {
+        const res = await orgDetail({ id })
+        if (res.data) {
+          this.form = {
+            id: res.data.id,
+            name: res.data.name || '',
+            type: res.data.type || 'enterprise',
+            code: res.data.code || '',
+            contactName: res.data.contactName || '',
+            contactPhone: res.data.contactPhone || '',
+            description: res.data.description || '',
+            adminPhone: '',
+            adminRealName: ''
+          }
+        }
+      } catch (e) {
+        this.$message.error('加载失败')
+      }
+    },
+    async handleSubmit() {
+      this.$refs.form.validate(async (valid) => {
+        if (!valid) return
+        this.saving = true
+        try {
+          if (this.isEdit) {
+            await orgUpdate(this.form)
+          } else {
+            const res = await orgCreate(this.form)
+            if (res.data && res.data.adminUser) {
+              this.$message.success('创建成功,管理员账号已同步创建')
+            }
+          }
+          this.$message.success(this.isEdit ? '保存成功' : '创建成功')
+          this.successDialogVisible = true
+        } catch (e) {
+          this.$message.error('操作失败')
+        } finally {
+          this.saving = false
+        }
+      })
+    },
+    handleContinue() {
+      this.successDialogVisible = false
+      this.form = { id: null, name: '', type: 'enterprise', code: '', contactName: '', contactPhone: '', description: '', adminPhone: '', adminRealName: '' }
+    },
+    handleClose() {
+      this.successDialogVisible = false
+      this.$router.push('/org')
+    }
+  }
+}
+</script>
+
+<style scoped>
+.org-form {
+  padding: 20px;
+  max-width: 700px;
+}
+</style>