From c3e3920e4e7fcda3dd986c00bb80188381e93015 Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期四, 18 四月 2024 09:59:50 +0800
Subject: [PATCH] Merge branch 'master' of https://gitee.com/a1536384743/erp_-override
---
north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue | 229 ++++++++++++++++++++++++++++++++------------------------
1 files changed, 131 insertions(+), 98 deletions(-)
diff --git a/north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue b/north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue
index 458c395..8b6da70 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue
@@ -1,118 +1,149 @@
<script lang="ts" setup>
-import { reactive, ref } from 'vue'
-import type { FormInstance, FormRules } from 'element-plus'
+import {onMounted, reactive, ref} from "vue";
+import {useRoute, useRouter} from "vue-router"
+import request from "@/utils/request"
+import {ElMessage} from "element-plus";
+import deepClone from "@/utils/deepClone"
+import { useI18n } from 'vue-i18n'
-const ruleFormRef = ref<FormInstance>()
+//璇█鑾峰彇
+const { t } = useI18n()
+const router = useRouter()
+const route = useRoute()
+let produceList = ref([])
-const checkAge = (rule: any, value: any, callback: any) => {
- if (!value) {
- return callback(new Error('Please input the age'))
- }
- setTimeout(() => {
- if (!Number.isInteger(value)) {
- callback(new Error('Please input digits'))
- } else {
- if (value < 18) {
- callback(new Error('Age must be greater than 18'))
- } else {
- callback()
+
+
+
+let ruleForm = ref({
+ id:0,
+ customerName: '',
+ grade: '',
+ moneyLimit: '',
+ address: '',
+ contact: '',
+ phone: ''
+
+})
+
+
+
+onMounted(()=>{
+
+ //鑾峰彇浼犺繃鏉ョ殑鏁版嵁杩涜鍒ゆ柇
+ const str = route.query.id
+ if (typeof str != 'undefined' && str != null && str !== '' && str !== '\n' && str !== '\r'){
+ ruleForm.value.id = Number(str)
+
+ request.post(`/customer/getSelectCustomer/1/100`,ruleForm.value).then((res) => {
+ if(res.code==200){
+ ruleForm.value=deepClone(res.data.data[0])
+
+ }else{
+ ElMessage.warning(res.msg)
+ router.push("/login")
}
- }
- }, 1000)
-}
-
-const validatePass = (rule: any, value: any, callback: any) => {
- if (value === '') {
- callback(new Error('Please input the password'))
- } else {
- if (ruleForm.checkPass !== '') {
- if (!ruleFormRef.value) return
- ruleFormRef.value.validateField('checkPass', () => null)
- }
- callback()
+ })
}
-}
-const validatePass2 = (rule: any, value: any, callback: any) => {
- if (value === '') {
- callback(new Error('Please input the password again'))
- } else if (value !== ruleForm.pass) {
- callback(new Error("Two inputs don't match!"))
- } else {
- callback()
- }
-}
-const ruleForm = reactive({
- pass: '',
- checkPass: '',
- age: '',
+
})
-const rules = reactive<FormRules<typeof ruleForm>>({
- pass: [{ validator: validatePass, trigger: 'blur' }],
- checkPass: [{ validator: validatePass2, trigger: 'blur' }],
- age: [{ validator: checkAge, trigger: 'blur' }],
-})
-const submitForm = (formEl: FormInstance | undefined) => {
- if (!formEl) return
- formEl.validate((valid) => {
- if (valid) {
- console.log('submit!')
- } else {
- console.log('error submit!')
- return false
+//淇濆瓨鎻愪氦
+const submitForm = () => {
+ //琛ㄥご鏁版嵁鏍¢獙
+ const customerName = ruleForm.value.customerName
+ if(customerName === null || customerName === undefined || customerName === ''){
+ ElMessage.error(t('customer.pleaseEnterTheCustomerName'))
+ return
+ }
+ const grade = ruleForm.value.grade
+ if(grade === null || grade === undefined || grade === ''){
+ ElMessage.error(t('customer.pleaseEnterCustomerLevel'))
+ return
+ }
+ const moneyLimit = ruleForm.value.moneyLimit
+ if(moneyLimit === null || moneyLimit === undefined || moneyLimit === ''){
+ ElMessage.error(t('customer.pleaseEnterTheAmountOfFunds'))
+ return
+ }
+ const address = ruleForm.value.address
+ if(address === null || address === undefined || address === ''){
+ ElMessage.error(t('customer.pleaseEnterTheContactAddress'))
+ return
+ }
+ const contact = ruleForm.value.contact
+ if(contact === null || contact === undefined || contact === ''){
+ ElMessage.error(t('customer.pleaseEnterTheContactPerson'))
+ return
+ }
+ const phone = ruleForm.value.phone
+ if(phone === null || phone === undefined || phone === ''){
+ ElMessage.error(t('customer.pleaseEnterTheContactPhoneNumber'))
+ return
+ }
+
+ let flowData = ref({
+ customer: ruleForm
+ })
+
+ request.post("/customer/insertCustomer", flowData.value).then((res) => {
+ if(res.code==200){
+ resetForm()
+ ElMessage.success(t('basicData.msg.saveSuccess'))
+ }else{
+ ElMessage.warning(res.msg)
+ router.push("/login")
}
})
-}
-const resetForm = (formEl: FormInstance | undefined) => {
- if (!formEl) return
- formEl.resetFields()
+}
+//閲嶇疆杈撳叆妗�
+const resetForm = () => {
+ ruleForm.value.customerName=""
+ ruleForm.value.grade=""
+ ruleForm.value.moneyLimit=""
+ ruleForm.value.address=""
+ ruleForm.value.contact=""
+ ruleForm.value.phone=""
}
</script>
<template>
<div class="main-div">
- <div class="div-form">
- <el-form
- ref="ruleFormRef"
- :model="ruleForm"
- status-icon
- :rules="rules"
- label-width="120px"
- class="demo-ruleForm"
- >
- <el-form-item label="瀹㈡埛鍚嶇О" prop="pass">
- <el-input v-model="ruleForm.pass" type="text" autocomplete="off" />
- </el-form-item>
- <el-form-item label="瀹㈡埛绛夌骇" prop="checkPass">
- <el-input
- v-model="ruleForm.checkPass"
- type="text"
- autocomplete="off"
- />
- </el-form-item>
- <el-form-item label="淇$敤棰濆害" prop="age">
- <el-input v-model.number="ruleForm.age" />
- </el-form-item>
- <el-form-item label="鍦板潃" prop="age">
- <el-input v-model.number="ruleForm.age" />
- </el-form-item>
- <el-form-item label="鑱旂郴浜�" prop="age">
- <el-input v-model.number="ruleForm.age" />
- </el-form-item>
- <el-form-item label="鑱旂郴鐢佃瘽" prop="age">
- <el-input v-model.number="ruleForm.age" />
- </el-form-item>
- <el-form-item>
- <el-button type="primary" @click="submitForm(ruleFormRef)"
- >淇濆瓨</el-button
- >
- <el-button @click="resetForm(ruleFormRef)">閲嶇疆</el-button>
- </el-form-item>
- </el-form>
+
+ <div class="order-primary" >
+ <el-row>
+ <el-col :span="2"><el-text>{{ $t('customer.customerName') }}:</el-text></el-col>
+ <el-col :span="5"><el-input style="font-size: large;color: #181818" v-model="ruleForm.customerName" ></el-input></el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="2"><el-text>{{ $t('customer.customerGrade') }}:</el-text></el-col>
+ <el-col :span="5"><el-input style="font-size: large;color: #181818" v-model="ruleForm.grade" ></el-input></el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="2"><el-text>{{ $t('customer.moneyLimit') }}:</el-text></el-col>
+ <el-col :span="5"><el-input style="font-size: large;color: #181818" v-model="ruleForm.moneyLimit" ></el-input></el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="2"><el-text>{{ $t('customer.address') }}:</el-text></el-col>
+ <el-col :span="5"><el-input style="font-size: large;color: #181818" v-model="ruleForm.address" ></el-input></el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="2"><el-text>{{ $t('customer.contacts') }}:</el-text></el-col>
+ <el-col :span="5"><el-input style="font-size: large;color: #181818" v-model="ruleForm.contact" ></el-input></el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="2"><el-text>{{ $t('customer.telephone') }}:</el-text></el-col>
+ <el-col :span="5"><el-input style="font-size: large;color: #181818" v-model="ruleForm.phone" ></el-input></el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="2"><el-button type="primary" @click="submitForm()">{{ $t('basicData.save') }}</el-button></el-col>
+ <el-col :span="2"><el-button @click="resetForm()">{{ $t('customer.resetting') }}</el-button></el-col>
+ </el-row>
</div>
+
</div>
@@ -126,8 +157,10 @@
}
.div-form{
- margin-left: 30%;
height:70%;
width: 40%;
}
+.el-row{
+ margin-bottom: 0.5rem;
+}
</style>
\ No newline at end of file
--
Gitblit v1.8.0