This commit is contained in:
hanchaobo
2024-02-05 18:22:21 +08:00
11 changed files with 2069 additions and 1829 deletions
+35
View File
@@ -86,3 +86,38 @@ export function queryCaseFlowInfo(data) {
data: data data: data
}) })
} }
// 根据机构id查询模板
export function getTemplate(data) {
return request({
url: `/deptIdentify/getTemplate`,
method: 'get',
params: data
})
}
// 根据身份证获取生日和性别
export function getInfoByIdCard(query) {
return request({
url: '/caseApplication/getInfoByIdCard',
method: 'get',
params: query
})
}
/** 新增案件 */
export function caseApplicationInsert(data) {
return request({
url: '/caseApplication/insert',
method: 'post',
data: data
})
}
// 修改立案申请接口
export function updateComfire(data) {
return request({
url: "/caseApplication/update",
method: "post",
data: data,
})
}
+220 -52
View File
@@ -12,11 +12,13 @@
<uni-forms-item label="案件标的:" name="caseSubjectAmount" label-width="120px" required> <uni-forms-item label="案件标的:" name="caseSubjectAmount" label-width="120px" required>
<uni-easyinput v-model="formData.caseSubjectAmount" type="text" placeholder="请输入案件标的" /> <uni-easyinput v-model="formData.caseSubjectAmount" type="text" placeholder="请输入案件标的" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="调解模板:" label-width="120px" required> <uni-forms-item label="模板:" name="templateId" label-width="120px" required
<uni-data-select></uni-data-select> :rules="[{'required': true,errorMessage: '模板不能为空'}]"
>
<uni-data-select :localdata="templateList" v-model="formData.templateId"></uni-data-select>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="申请人案件证据资料上传:" name="headImage" label-width="120px"> <uni-forms-item label="申请人案件证据资料上传:" name="headImage" label-width="120px">
<uni-file-picker ref="files" :auto-upload="false" @select="select" :limit='1' /> <uni-file-picker ref="files" file-mediatype="all" :auto-upload="false" @select="select" :limit='1' />
</uni-forms-item> </uni-forms-item>
<uni-section title="双方信息" type="line" padding></uni-section> <uni-section title="双方信息" type="line" padding></uni-section>
<uni-forms-item label="选择机构或自然人" label-width="120px" name="objectiJuris"> <uni-forms-item label="选择机构或自然人" label-width="120px" name="objectiJuris">
@@ -25,85 +27,145 @@
v-model="formData.affiliate.organizeFlag" v-model="formData.affiliate.organizeFlag"
@change='clearValidate'></uni-data-checkbox> @change='clearValidate'></uni-data-checkbox>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="申请人:" label-width="120px" required v-if="formData.affiliate.organizeFlag==0"> <uni-forms-item label="申请人:" name="affiliate.applicationName"
<uni-easyinput type="text" placeholder="请输入申请人名称" /> :rules="[{'required': true,errorMessage: '申请人不能为空'}]"
label-width="120px" required v-if="formData.affiliate.organizeFlag==0">
<uni-easyinput v-model="formData.affiliate.applicationName" type="text" placeholder="请输入申请人名称" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="申请人机构名称:" label-width="120px" required <uni-forms-item label="申请人机构名称:" name="affiliate.applicationName" label-width="120px"
:rules="[{'required': true,errorMessage: '申请人机构名称为空'}]" required
v-if="formData.affiliate.organizeFlag==1" v-if="formData.affiliate.organizeFlag==1"
> >
<uni-easyinput type="text" placeholder="请输入申请人机构名称" /> <uni-easyinput v-model="formData.affiliate.applicationName"
type="text" placeholder="请输入申请人机构名称" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="申请人身份证号码:" label-width="120px" required <uni-forms-item label="申请人身份证号码:" name="affiliate.code" label-width="120px" required
:rules="[
{'required': true,errorMessage: '申请人身份证号码为空'},
{pattern:'^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$',errorMessage:'申请人身份证格式错误'}
]"
v-if="formData.affiliate.organizeFlag==0" v-if="formData.affiliate.organizeFlag==0"
> >
<uni-easyinput type="text" placeholder="请输入申请人身份证号码" /> <uni-easyinput v-model="formData.affiliate.code" type="text" placeholder="请输入申请人身份证号码" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="统一社会信用代码:" label-width="120px" required <uni-forms-item label="统一社会信用代码:" name="affiliate.code" label-width="120px" required
:rules="[{'required': true,errorMessage: '统一社会信用代码为空'}]"
v-if="formData.affiliate.organizeFlag==1" v-if="formData.affiliate.organizeFlag==1"
> >
<uni-easyinput type="text" placeholder="请输入统一社会信用代码:" /> <uni-easyinput type="text" v-model="formData.affiliate.code" placeholder="请输入统一社会信用代码:" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="申请人邮箱:" label-width="120px" required> <uni-forms-item label="申请人邮箱:" name="affiliate.applicationEmail" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入申请人邮箱" /> :rules="[
{'required': true,errorMessage: '申请人邮箱不能为空'},
{pattern:'^\\S+?@\\S+?\\.\\S+?$',errorMessage:'邮箱格式不正确'}
]"
>
<uni-easyinput v-model="formData.affiliate.applicationEmail"
type="text" placeholder="请输入申请人邮箱" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="申请人电话:" label-width="120px" required> <uni-forms-item label="申请人电话:" name="affiliate.applicationPhone" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入申请人电话" /> :rules="[
{'required': true,errorMessage: '申请人电话不能为空'},
{pattern:'^[1][3,4,5,6,7,8,9][0-9]{9}$',errorMessage:'申请人电话格式不正确'}
]"
>
<uni-easyinput v-model="formData.affiliate.applicationPhone" type="text" placeholder="请输入申请人电话" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="法定代表人:" label-width="120px" required> <uni-forms-item label="法定代表人:" name="affiliate.compLegalPerson" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入法定代表人" /> :rules="[{'required': true,errorMessage: '法定代表人不能为空'}]"
>
<uni-easyinput v-model="formData.affiliate.compLegalPerson" type="text" placeholder="请输入法定代表人" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="申请人住所:" label-width="120px" required> <uni-forms-item label="申请人住所:" name="affiliate.applicantHome" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入申请人住所" /> :rules="[{'required': true,errorMessage: '申请人住所不能为空'}]"
>
<uni-easyinput v-model="formData.affiliate.applicantHome" type="text" placeholder="请输入申请人住所" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="申请人联系地址:" label-width="120px" required> <uni-forms-item label="申请人联系地址:" name="affiliate.applicantAddress" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入申请人联系地址" /> :rules="[{'required': true,errorMessage: '申请人联系地址不能为空'}]"
>
<uni-easyinput v-model="formData.affiliate.applicantAddress" type="text" placeholder="请输入申请人联系地址" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="代理人联系电话:" label-width="120px" v-if="formData.affiliate.organizeFlag==0"> <uni-forms-item label="代理人联系电话:" name="affiliate.contactTelphoneAgent" label-width="120px"
<uni-easyinput type="text" placeholder="请输入代理人联系电话" />
v-if="formData.affiliate.organizeFlag==0">
<uni-easyinput v-model="formData.affiliate.contactTelphoneAgent" type="text" placeholder="请输入代理人联系电话" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="代理人联系电话:" label-width="120px" required <uni-forms-item label="代理人联系电话:" name="affiliate.contactTelphoneAgent" label-width="120px" required
:rules="[
{'required': true,errorMessage: '代理人联系电话不能为空'},
{pattern:'^[1][3,4,5,6,7,8,9][0-9]{9}$',errorMessage:'代理人联系电话格式不正确'}
]"
v-if="formData.affiliate.organizeFlag==1" v-if="formData.affiliate.organizeFlag==1"
> >
<uni-easyinput type="text" placeholder="请输入代理人联系电话" /> <uni-easyinput v-model="formData.affiliate.contactTelphoneAgent" type="text" placeholder="请输入代理人联系电话" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="委托代理人姓名:" label-width="120px" v-if="formData.affiliate.organizeFlag==0"> <uni-forms-item label="委托代理人姓名:" name="affiliate.nameAgent" label-width="120px" v-if="formData.affiliate.organizeFlag==0">
<uni-easyinput type="text" placeholder="请输入委托代理人姓名" /> <uni-easyinput v-model="formData.affiliate.nameAgent" type="text" placeholder="请输入委托代理人姓名" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="委托代理人姓名:" label-width="120px" required <uni-forms-item label="委托代理人姓名:" name="affiliate.nameAgent" label-width="120px" required
:rules="[{'required': true,errorMessage: '委托代理人姓名不能为空'}]"
v-if="formData.affiliate.organizeFlag==1" v-if="formData.affiliate.organizeFlag==1"
> >
<uni-easyinput type="text" placeholder="请输入委托代理人姓名" /> <uni-easyinput v-model="formData.affiliate.nameAgent" type="text" placeholder="请输入委托代理人姓名" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="代理人邮箱:" label-width="120px" v-if="formData.affiliate.organizeFlag==0"> <uni-forms-item label="代理人邮箱:" name="affiliate.agentEmail" label-width="120px" v-if="formData.affiliate.organizeFlag==0">
<uni-easyinput type="text" placeholder="请输入代理人邮箱" /> <uni-easyinput v-model="formData.affiliate.agentEmail" type="text" placeholder="请输入代理人邮箱" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="代理人邮箱:" label-width="120px" required <uni-forms-item label="代理人邮箱:" name="affiliate.agentEmail" label-width="120px" required
:rules="[
{'required': true,errorMessage: '代理人邮箱不能为空'},
{pattern:'^\\S+?@\\S+?\\.\\S+?$',errorMessage:'邮箱格式不正确'}
]"
v-if="formData.affiliate.organizeFlag==1" v-if="formData.affiliate.organizeFlag==1"
> >
<uni-easyinput type="text" placeholder="请输入代理人邮箱" /> <uni-easyinput v-model="formData.affiliate.agentEmail" type="text" placeholder="请输入代理人邮箱" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="被申请人姓名:" label-width="120px" required> <uni-forms-item label="被申请人姓名:" name="affiliate.respondentName" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入被申请人姓名" /> :rules="[{'required': true,errorMessage: '被申请人姓名不能为空'}]"
>
<uni-easyinput v-model="formData.affiliate.respondentName" type="text" placeholder="请输入被申请人姓名" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="被申请人联系电话:" label-width="120px" required> <uni-forms-item label="被申请人联系电话:" name="affiliate.respondentPhone" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入被申请人联系电话" /> :rules="[
{'required': true,errorMessage: '被申请人联系电话不能为空'},
{pattern:'^[1][3,4,5,6,7,8,9][0-9]{9}$',errorMessage:'被申请人联系电话格式不正确'}
]"
>
<uni-easyinput v-model="formData.affiliate.respondentPhone" type="text" placeholder="请输入被申请人联系电话" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="被申请人身份证号:" label-width="120px" required> <uni-forms-item label="被申请人身份证号:" name="affiliate.respondentIdentityNum" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入被申请人身份证号" /> :rules="[
{'required': true,errorMessage: '被申请人身份证号不能为空'},
{pattern:'^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$',errorMessage:'被申请人身份证格式错误'}
]"
>
<uni-easyinput v-model="formData.affiliate.respondentIdentityNum" @blur="handleBlur" type="text" placeholder="请输入被申请人身份证号" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="被申请人性别" label-width="120px" required> <uni-forms-item label="被申请人性别" label-width="120px" required>
<uni-data-checkbox class='checkbox' <uni-data-checkbox class='checkbox'
:disabled='true'
v-model="formData.affiliate.respondentSex" v-model="formData.affiliate.respondentSex"
:localdata="respondentSexy"></uni-data-checkbox> :localdata="respondentSexy"></uni-data-checkbox>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="被申请人出生年月日" label-width="120px" > <uni-forms-item label="被申请人出生年月日" label-width="120px">
<uni-datetime-picker type="date" :clear-icon="false" /> <uni-datetime-picker v-model="formData.affiliate.respondentBirth" :disabled='true' type="date" :clear-icon="false" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="被申请人住所:" label-width="120px" required> <uni-forms-item label="被申请人住所:" name="affiliate.respondentHome" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入被申请人住所" /> :rules="[{'required': true,errorMessage: '被申请人住所不能为空'}]"
>
<uni-easyinput v-model="formData.affiliate.respondentHome" type="text" placeholder="请输入被申请人住所" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="被申请人邮箱:" label-width="120px" required> <uni-forms-item label="被申请人邮箱:" name="affiliate.respondentEmail" label-width="120px" required
<uni-easyinput type="text" placeholder="请输入被申请人住所" /> :rules="[
{'required': true,errorMessage: '被申请人邮箱不能为空'},
{pattern:'^\\S+?@\\S+?\\.\\S+?$',errorMessage:'邮箱格式不正确'}
]"
>
<uni-easyinput v-model="formData.affiliate.respondentEmail" type="text" placeholder="请输入被申请人邮箱" />
</uni-forms-item> </uni-forms-item>
</uni-forms> </uni-forms>
<view class="determine" style="text-align: center;"> <view class="determine" style="text-align: center;">
@@ -119,6 +181,11 @@
</template> </template>
<script> <script>
import {getTemplate,getInfoByIdCard,caseApplicationInsert,updateComfire} from '../../../api/handlecase/index.js'
import {
getToken
} from '@/utils/auth'
import config from '@/config'
export default { export default {
data() { data() {
return { return {
@@ -126,9 +193,12 @@
affiliate:{ affiliate:{
organizeFlag: 0, organizeFlag: 0,
respondentSex: 0, respondentSex: 0,
}
}, },
columnValueList: [],
caseAttachList: [],
},
tempFilePaths: null,
templateList:[],
objectiJurisArr: [{ objectiJurisArr: [{
text: '自然人', text: '自然人',
value: 0 value: 0
@@ -150,7 +220,7 @@
rules:[ rules:[
{ {
required: true, required: true,
errorMessage: '请输入申请人调解请求', errorMessage: '申请人调解请求不能为空',
}, },
], ],
}, },
@@ -158,7 +228,7 @@
rules:[ rules:[
{ {
required: true, required: true,
errorMessage: '请输入事实和理由', errorMessage: '事实和理由不能空',
}, },
], ],
}, },
@@ -166,10 +236,19 @@
rules:[ rules:[
{ {
required: true, required: true,
errorMessage: '请输入案件标的', errorMessage: '案件标的不能为空',
}, },
], ],
},
respondentEmail:{
rules:[
{
required: true,
errorMessage: '邮箱不能为空',
} }
],
},
} }
} }
@@ -177,20 +256,109 @@
}, },
methods:{ methods:{
clearValidate(val){ clearValidate(val){
this.$refs["form"].clearValidate()
}, },
submitReasont(){ submitReasont(){
this.$refs.form.validate().then(res=>{ this.$refs.form.validate().then(res=>{
this.insertFn(this.formData)
}).catch(err =>{ }).catch(err =>{
}) })
}, },
/** 获取裁决书模板 */
getTemplateFn(data) {
getTemplate(data).then((res) => {
//this.templateList = res.rows;
res.rows.forEach(item=>{
this.templateList.push({value:item.id,text:item.temName})
})
});
},
// 被申请人获取性别喝出生年月
handleBlur(){
let idCards = {
idCard: this.formData.affiliate.respondentIdentityNum,
};
getInfoByIdCard(idCards).then(res=>{
this.formData.affiliate.respondentSex = Number(res.respondentSex);
this.formData.affiliate.respondentBirth = res.respondentBirth;
})
},
// 新增案件
insertFn(data) {
caseApplicationInsert(data).then((res) => {
uni.showToast({
title: '成功',
icon: 'none',
duration: 1000
})
uni.navigateBack({
delta: 1
})
});
},
//修改案件
modifyData(data) {
updateComfire(data).then((res) => {
uni.showToast({
title: '成功',
icon: 'none',
duration: 1000
})
uni.navigateBack({
delta: 1
})
});
},
// 文件上传
select(e) {
this.tempFilePaths = e.tempFilePaths;
// loading
uni.showLoading({
title: '上传中'
});
uni.uploadFile({
url: config.baseUrlTJ + "/common/upload",
filePath: this.tempFilePaths[0],
header: {
Authorization: getToken() || '',
},
formData: {
annexType: 2,
id: this.formData.id
},
name: 'file',
success: (res) => {
let result = JSON.parse(res.data)
this.formData.caseAttachList.push({
annexId: result.annexId,
});
console.log(result.annexId)
uni.showToast({
title: '上传成功',
icon: 'none',
duration: 1000
})
uni.hideLoading();
},
fail: (err) => {
uni.showToast({
title: '上传失败',
icon: 'none',
duration: 1000
})
uni.hideLoading()
}
})
},
cencalBut(){ cencalBut(){
uni.navigateBack({ uni.navigateBack({
delta: 1 delta: 1
}) })
} }
},
onLoad(data) {
this.getTemplateFn()
} }
} }
+4
View File
@@ -1,3 +1,7 @@
## 1.0.6(2024-01-06)
- 新增 微信小程序不再调用chooseImage,而是调用chooseMedia
## 1.0.5(2024-01-03)
- 新增 上传文件至云存储携带本地文件名称
## 1.0.4(2023-03-29) ## 1.0.4(2023-03-29)
- 修复 手动上传删除一个文件后不能再上传的bug - 修复 手动上传删除一个文件后不能再上传的bug
## 1.0.3(2022-12-19) ## 1.0.3(2022-12-19)
@@ -11,6 +11,27 @@ function chooseImage(opts) {
extension extension
} = opts } = opts
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
// #ifdef MP-WEIXIN
uni.chooseMedia({
count,
sizeType,
sourceType,
mediaType: ['image'],
extension,
success(res) {
res.tempFiles.forEach(item => {
item.path = item.tempFilePath;
})
resolve(normalizeChooseAndUploadFileRes(res, 'image'));
},
fail(res) {
reject({
errMsg: res.errMsg.replace('chooseImage:fail', ERR_MSG_FAIL),
});
},
})
// #endif
// #ifndef MP-WEIXIN
uni.chooseImage({ uni.chooseImage({
count, count,
sizeType, sizeType,
@@ -25,6 +46,8 @@ function chooseImage(opts) {
}); });
}, },
}); });
// #endif
}); });
} }
@@ -191,6 +191,10 @@
default () { default () {
return ['album', 'camera'] return ['album', 'camera']
} }
},
provider: {
type: String,
default: '' // 默认上传到 unicloud 内置存储 extStorage 扩展存储
} }
}, },
data() { data() {
@@ -331,7 +335,6 @@
* 选择文件 * 选择文件
*/ */
choose() { choose() {
if (this.disabled) return if (this.disabled) return
if (this.files.length >= Number(this.limitLength) && this.showType !== 'grid' && this.returnType === if (this.files.length >= Number(this.limitLength) && this.showType !== 'grid' && this.returnType ===
'array') { 'array') {
@@ -418,6 +421,13 @@
if (!this.autoUpload || this.noSpace) { if (!this.autoUpload || this.noSpace) {
res.tempFiles = [] res.tempFiles = []
} }
res.tempFiles.forEach((fileItem, index) => {
this.provider && (fileItem.provider = this.provider);
const fileNameSplit = fileItem.name.split('.')
const ext = fileNameSplit.pop()
const fileName = fileNameSplit.join('.').replace(/[\s\/\?<>\\:\*\|":]/g, '_')
fileItem.cloudPath = fileName + '_' + Date.now() + '_' + index + '.' + ext
})
}, },
/** /**
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "uni-file-picker", "id": "uni-file-picker",
"displayName": "uni-file-picker 文件选择上传", "displayName": "uni-file-picker 文件选择上传",
"version": "1.0.4", "version": "1.0.6",
"description": "文件选择上传组件,可以选择图片、视频等任意文件并上传到当前绑定的服务空间", "description": "文件选择上传组件,可以选择图片、视频等任意文件并上传到当前绑定的服务空间",
"keywords": [ "keywords": [
"uni-ui", "uni-ui",
File diff suppressed because one or more lines are too long