2 Commits

Author SHA1 Message Date
史典卓
1cd5363723 flat:暂存 2025-08-05 18:28:07 +08:00
史典卓
e698f0624f flat: yic 2025-05-06 16:13:25 +08:00
13 changed files with 2636 additions and 2375 deletions

View File

@@ -33,8 +33,13 @@ export async function uploadFile(file) {
'Authorization': `Basic ${Base64.encode(`${website.clientId}:${website.clientSecret}`)}`, 'Authorization': `Basic ${Base64.encode(`${website.clientId}:${website.clientSecret}`)}`,
} }
header[website.tokenName] = "bearer " + token header[website.tokenName] = "bearer " + token
// 馆陶替换url
let url = `/api/jobslink-api/resource/file/save?bussinessType=5`
if (url.startsWith('/api')) {
url = url.replace(/^\/api/, '/api/gt');
}
uni.uploadFile({ uni.uploadFile({
url: `${baseUrl}/api/jobslink-api/resource/file/save?bussinessType=5`, url: baseUrl + url,
header, header,
filePath: file.url, filePath: file.url,
// formData: formdata, // formData: formdata,

View File

@@ -79,7 +79,7 @@
{ {
"path": "pages/project/newProject", "path": "pages/project/newProject",
"style": { "style": {
"navigationBarTitleText": "馆陶县灵活就业平台", "navigationBarTitleText": "宜昌市灵活就业平台",
"navigationBarBackgroundColor": "#FFFFFF", "navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": true "enablePullDownRefresh": true
} }

File diff suppressed because it is too large Load Diff

View File

@@ -31,13 +31,14 @@
</view> </view>
<view class="conatiner_card"> <view class="conatiner_card">
<view class="row blod fs_34">馆陶县智慧就业市场</view> <view class="row blod fs_34">宜昌市智慧就业市场</view>
<view class="row color_666 fs_30 marT_30"> <view class="row color_666 fs_30 marT_30">
<u-icon style="margin-right: 10rpx;" name="calendar" color="#666666" size="16"></u-icon>营业时间 <u-icon style="margin-right: 10rpx" name="calendar" color="#666666" size="16"></u-icon>
营业时间
</view> </view>
<view class="row color_666 fs_30">上午9:00-12:00 下午14:00-18:00</view> <view class="row color_666 fs_30">上午9:00-12:00 下午14:00-18:00</view>
<view class="row color_666 fs_30 marT_30"> <view class="row color_666 fs_30 marT_30">
<u-icon style="margin-right: 10rpx;" name="map" color="#666666" size="16"></u-icon> <u-icon style="margin-right: 10rpx" name="map" color="#666666" size="16"></u-icon>
四川省德阳市旌阳区天山南路1段108号 四川省德阳市旌阳区天山南路1段108号
<!-- <u-icon style="margin-left: 10rpx;" name="arrow-right" color="#666666" size="16"></u-icon> --> <!-- <u-icon style="margin-left: 10rpx;" name="arrow-right" color="#666666" size="16"></u-icon> -->
</view> </view>
@@ -64,164 +65,161 @@
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {};
},
} methods: {},
}, };
methods: {
}
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@function designTo($num) { @function designTo($num) {
@return ($num / 620rpx) * 750rpx @return ($num / 620rpx) * 750rpx;
}
@for $i from 10 to 60 {
.fs_#{$i} {
font-size: #{$i}rpx;
} }
}
@for $i from 10 to 60 { @for $i from 1 to 60 {
.fs_#{$i} { .marT_#{$i} {
font-size : #{$i}rpx; margin-top: #{$i}rpx;
}
} }
}
@for $i from 1 to 60 { .color_666 {
.marT_#{$i} { color: #666666;
margin-top : #{$i}rpx; }
}
}
.color_666 { .bold {
color: #666666; font-weight: bold;
} }
.bold { image {
font-weight: bold; width: 100%;
} height: 100%;
}
image { .app_container {
width: 100%; background-color: #f3f4f8;
height: 100%; min-height: calc(100vh - var(--window-top) - var(--status-bar-height) - var(--window-bottom));
}
.app_container { .container_head {
background-color: #f3f4f8; min-height: 300rpx;
min-height: calc(100vh - var(--window-top) - var(--status-bar-height) - var(--window-bottom)); padding: 28rpx;
background: linear-gradient(to bottom, rgba(69, 112, 250, 1), rgba(69, 112, 250, 0));
.container_head { .row {
min-height: 300rpx; display: flex;
padding: 28rpx; align-content: center;
background: linear-gradient(to bottom, rgba(69, 112, 250, 1), rgba(69, 112, 250, .0)); justify-content: space-between;
.row { .head_left {
color: #ffffff;
display: flex; display: flex;
align-content: center; align-items: flex-start;
justify-content: space-between; flex-direction: column;
.head_left { .left_title {
color: #FFFFFF; }
.left_content {
height: designTo(87rpx);
width: designTo(313rpx);
background-color: rgba(69, 104, 252, 0.4);
border-radius: 20rpx;
margin-top: 20rpx;
display: flex; display: flex;
align-items: flex-start; justify-content: space-around;
flex-direction: column; align-items: center;
flex-wrap: nowrap;
.left_title {} .content_item {
text-align: center;
.left_content { white-space: nowrap;
height: designTo(87rpx);
width: designTo(313rpx);
background-color: rgba(69, 104, 252, 0.4);
border-radius: 20rpx;
margin-top: 20rpx;
display: flex;
justify-content: space-around;
align-items: center;
flex-wrap: nowrap;
.content_item {
text-align: center;
white-space: nowrap;
}
} }
} }
.head_right {
width: designTo(220rpx);
height: designTo(148rpx);
border-radius: 20rpx;
overflow: hidden;
}
} }
.broadcast { .head_right {
margin-top: designTo(65rpx); width: designTo(220rpx);
height: designTo(77rpx); height: designTo(148rpx);
background-color: rgba(244, 230, 224, 1);
border-radius: 20rpx; border-radius: 20rpx;
display: flex; overflow: hidden;
justify-content: space-between;
align-items: center;
padding: 0 24rpx;
.cast-l {
font-size: 32rpx;
display: flex;
}
} }
} }
.conatiner_card { .broadcast {
margin: 28rpx; margin-top: designTo(65rpx);
background-color: #FFFFFF; height: designTo(77rpx);
height: fit-content; background-color: rgba(244, 230, 224, 1);
border-radius: 20rpx; border-radius: 20rpx;
padding: designTo(28rpx);
.row {
display: flex;
align-items: center;
}
.column {
padding: 10rpx 20rpx;
border-radius: 40rpx;
background-color: #f3f4f8;
}
}
.container_chioe {
position: fixed;
bottom: 0;
left: 0;
right: 0;
display: flex; display: flex;
justify-content: space-around; justify-content: space-between;
align-items: center; align-items: center;
background-color: #FFFFFF; padding: 0 24rpx;
height: designTo(108rpx);
padding: 0 28rpx designTo(30rpx) 28rpx;
.chioe_share { .cast-l {
font-size: 32rpx;
display: flex; display: flex;
align-items: center;
flex-direction: column;
justify-content: center;
}
.chioe_btn {
color: #FFFFFF;
background: linear-gradient(to right, #fbaf1a, #fbaf1a);
height: designTo(66rpx);
width: designTo(228rpx);
text-align: center;
line-height: designTo(66rpx);
border-radius: designTo(33rpx);
}
.btn_Blue {
background: linear-gradient(to right, #95aefb, #4b74f7);
} }
} }
} }
.conatiner_card {
margin: 28rpx;
background-color: #ffffff;
height: fit-content;
border-radius: 20rpx;
padding: designTo(28rpx);
.row {
display: flex;
align-items: center;
}
.column {
padding: 10rpx 20rpx;
border-radius: 40rpx;
background-color: #f3f4f8;
}
}
.container_chioe {
position: fixed;
bottom: 0;
left: 0;
right: 0;
display: flex;
justify-content: space-around;
align-items: center;
background-color: #ffffff;
height: designTo(108rpx);
padding: 0 28rpx designTo(30rpx) 28rpx;
.chioe_share {
display: flex;
align-items: center;
flex-direction: column;
justify-content: center;
}
.chioe_btn {
color: #ffffff;
background: linear-gradient(to right, #fbaf1a, #fbaf1a);
height: designTo(66rpx);
width: designTo(228rpx);
text-align: center;
line-height: designTo(66rpx);
border-radius: designTo(33rpx);
}
.btn_Blue {
background: linear-gradient(to right, #95aefb, #4b74f7);
}
}
}
</style> </style>

View File

@@ -12,7 +12,7 @@
</view> </view>
<view class="navPosition" @click="navTo('/pages/project/map')"> <view class="navPosition" @click="navTo('/pages/project/map')">
<u-icon name="map" color="#2979ff" size="16"></u-icon> <u-icon name="map" color="#2979ff" size="16"></u-icon>
<view class="positionText">馆陶县地图服务</view> <view class="positionText">宜昌市地图服务</view>
<u-icon name="arrow-right" color="#666666" size="14"></u-icon> <u-icon name="arrow-right" color="#666666" size="14"></u-icon>
</view> </view>
<view class="content"> <view class="content">

View File

@@ -16,33 +16,84 @@
<u-form-item label="法人身份证号" labelWidth="100" prop="masterIdentity" borderBottom ref="item1"> <u-form-item label="法人身份证号" labelWidth="100" prop="masterIdentity" borderBottom ref="item1">
<u--input v-model="formData.masterIdentity" placeholder="请输入法人身份证号"></u--input> <u--input v-model="formData.masterIdentity" placeholder="请输入法人身份证号"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="所在地区" labelWidth="100" prop="cityId" borderBottom ref="item1" <u-form-item
@click="showAddress = true; hideKeyboard()"> label="所属机构"
<PickerList placeholder="请选择所在地区" :columns="dic.addressColumn" :visibel="showAddress" labelWidth="100"
v-model="formData.cityId" @cancel="showAddress = false"> prop="cityId"
</PickerList> borderBottom
ref="item1"
@click="
showAddress = true;
hideKeyboard();
"
>
<PickerList
placeholder="请选择所属机构"
:columns="dic.addressColumn"
:visibel="showAddress"
v-model="formData.cityId"
@cancel="showAddress = false"
></PickerList>
</u-form-item> </u-form-item>
<u-form-item label="详细地址" labelWidth="100" prop="companyAddress" borderBottom ref="item1"> <u-form-item label="详细地址" labelWidth="100" prop="companyAddress" borderBottom ref="item1">
<u--input v-model="formData.companyAddress" placeholder="请输入详细地址"></u--input> <u--input v-model="formData.companyAddress" placeholder="请输入详细地址"></u--input>
</u-form-item> </u-form-item>
<u-form-item label="用工单位性质" labelWidth="100" prop="nature" borderBottom ref="item1" <u-form-item
@click="showJobCompanyNature = true; hideKeyboard()"> label="用工单位性质"
<PickerList placeholder="请选择企业性质" :columns="[xzDic]" :visibel="showJobCompanyNature" labelWidth="100"
labelName="dictValue" valueName="dictKey" v-model="formData.nature" prop="nature"
@cancel="showJobCompanyNature = false"> borderBottom
</PickerList> ref="item1"
@click="
showJobCompanyNature = true;
hideKeyboard();
"
>
<PickerList
placeholder="请选择企业性质"
:columns="[xzDic]"
:visibel="showJobCompanyNature"
labelName="dictValue"
valueName="dictKey"
v-model="formData.nature"
@cancel="showJobCompanyNature = false"
></PickerList>
</u-form-item> </u-form-item>
<u-form-item label="所属行业" labelWidth="100" prop="tradeId" borderBottom ref="item1" <u-form-item
@click="showjobCompanyIndustry = true; hideKeyboard()"> label="所属行业"
<PickerList placeholder="请选择所属行业" :columns="dic.tradeArr" labelName="name" valueName="id" labelWidth="100"
:visibel="showjobCompanyIndustry" v-model="formData.tradeId" prop="tradeId"
@cancel="showjobCompanyIndustry = false"> borderBottom
</PickerList> ref="item1"
@click="
showjobCompanyIndustry = true;
hideKeyboard();
"
>
<PickerList
placeholder="请选择所属行业"
:columns="dic.tradeArr"
labelName="name"
valueName="id"
:visibel="showjobCompanyIndustry"
v-model="formData.tradeId"
@cancel="showjobCompanyIndustry = false"
></PickerList>
</u-form-item> </u-form-item>
<u-form-item label="用工单位介绍" labelWidth="100" labelPosition="top" prop="companyDesc" borderBottom <u-form-item
ref="item1"> label="用工单位介绍"
<u--textarea v-model="formData.companyDesc" placeholder="请输入用工单位介绍" count labelWidth="100"
maxlength="200"></u--textarea> labelPosition="top"
prop="companyDesc"
borderBottom
ref="item1"
>
<u--textarea
v-model="formData.companyDesc"
placeholder="请输入用工单位介绍"
count
maxlength="200"
></u--textarea>
</u-form-item> </u-form-item>
</view> </view>
<view class="card"> <view class="card">
@@ -59,17 +110,23 @@
<view class="card_title">证件资料</view> <view class="card_title">证件资料</view>
<view class="card_content"> <view class="card_content">
<u-form-item labelWidth="100" prop="identityUrl4Id"> <u-form-item labelWidth="100" prop="identityUrl4Id">
<UploadIdNumber v-model="formData.identityUrl4Id" contentStyle="marginTop: 30rpx" <UploadIdNumber
backImg="/static/img/idcard.png"> v-model="formData.identityUrl4Id"
</UploadIdNumber> contentStyle="marginTop: 30rpx"
backImg="/static/img/idcard.png"
></UploadIdNumber>
</u-form-item> </u-form-item>
<u-form-item labelWidth="100" prop="identityUrl5Id"> <u-form-item labelWidth="100" prop="identityUrl5Id">
<UploadIdNumber v-model="formData.identityUrl5Id" backImg="/static/img/backidcard1.png"> <UploadIdNumber
</UploadIdNumber> v-model="formData.identityUrl5Id"
backImg="/static/img/backidcard1.png"
></UploadIdNumber>
</u-form-item> </u-form-item>
<u-form-item labelWidth="100" prop="authUrlId"> <u-form-item labelWidth="100" prop="authUrlId">
<UploadIdNumber v-model="formData.authUrlId" backImg="/static/img/businessLicense.jpg"> <UploadIdNumber
</UploadIdNumber> v-model="formData.authUrlId"
backImg="/static/img/businessLicense.jpg"
></UploadIdNumber>
</u-form-item> </u-form-item>
</view> </view>
</view> </view>
@@ -84,153 +141,149 @@
</template> </template>
<script> <script>
import UploadIdNumber from './uploadIdNumber.vue'; import UploadIdNumber from './uploadIdNumber.vue';
import dic from '@/common/dic.js' import dic from '@/common/dic.js';
import PickerList from './pickerList.vue'; import PickerList from './pickerList.vue';
import { import { addInviteCompanyAuth, getInviteCompanyAuthInfo, getDictionary2 } from '@/api/userrecruit.js';
addInviteCompanyAuth, import { mapState } from 'vuex';
getInviteCompanyAuthInfo, const rules = {
getDictionary2 comname: {
} from '@/api/userrecruit.js' type: 'string',
import { required: true,
mapState message: '请输入用工单位',
} from 'vuex' trigger: ['change'],
const rules = { },
comname: { companyTid: {
type: 'string', type: 'string',
required: true, required: true,
message: '请输入用工单位', max: 18,
trigger: ['change'] min: 18,
message: '请输入18位统一信用代码',
trigger: ['change'],
},
masterName: {
type: 'string',
required: true,
message: '请输入法人姓名',
trigger: ['change'],
},
masterIdentity: {
type: 'string',
required: true,
pattern: /^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[Xx\d]$/,
message: '请输入法人身份证号',
trigger: ['change'],
},
cityId: {
type: 'string',
required: true,
message: '请选择所在地区',
trigger: ['change'],
},
companyAddress: {
type: 'string',
required: true,
message: '请输入详细地址',
trigger: ['change'],
},
nature: {
type: 'string',
required: true,
message: '请选择企业性质',
trigger: ['change'],
},
tradeId: {
type: 'string',
required: true,
message: '请选择行业',
trigger: ['change'],
},
companyDesc: {
type: 'string',
min: 20,
required: true,
message: '请输入企业介绍最少20个字符',
trigger: ['change'],
},
manager: {
type: 'string',
required: true,
message: '请输入联系人',
trigger: ['change'],
},
telphone: {
type: 'string',
required: true,
pattern: /^1[3-9]{1}[0-9]{9}$/,
message: '请输入手机号码',
trigger: ['change'],
},
identityUrl4Id: {
type: 'string',
required: true,
message: '请上传法人身份证(人像)',
trigger: ['change'],
},
identityUrl5Id: {
type: 'string',
required: true,
message: '请上传法人身份证(国徽)',
trigger: ['change'],
},
authUrlId: {
type: 'string',
required: true,
message: '请上传企业营业执照',
trigger: ['change'],
},
};
export default {
components: {
UploadIdNumber,
PickerList,
},
data() {
return {
showAddress: false,
showJobCompanyNature: false,
showjobCompanyIndustry: false,
dic,
xzDic: [],
formData: {},
rules,
};
},
onLoad(options) {
if (options.reviewStatus === '9') {
this.getInfo();
}
this.getDictInfo();
},
computed: {
...mapState({
authInfo: (state) => state.auth.authInfo,
userInfo: (state) => state.user.userInfo,
}),
},
created() {
this.formData.manager = this.authInfo.realName;
this.formData.idNumber = this.authInfo.idNumber;
},
methods: {
hideKeyboard() {
uni.hideKeyboard();
}, },
companyTid: { async submit() {
type: 'string', let params = {
required: true, ...this.formData,
max: 18, nature: Number(this.formData.nature),
min: 18, cityId: Number(this.formData.cityId),
message: '请输入18位统一信用代码', tradeId: Number(this.formData.tradeId),
trigger: ['change']
},
masterName: {
type: 'string',
required: true,
message: '请输入法人姓名',
trigger: ['change']
},
masterIdentity: {
type: 'string',
required: true,
pattern: /^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[Xx\d]$/,
message: '请输入法人身份证号',
trigger: ['change']
},
cityId: {
type: 'string',
required: true,
message: '请选择所在地区',
trigger: ['change']
},
companyAddress: {
type: 'string',
required: true,
message: '请输入详细地址',
trigger: ['change']
},
nature: {
type: 'string',
required: true,
message: '请选择企业性质',
trigger: ['change']
},
tradeId: {
type: 'string',
required: true,
message: '请选择行业',
trigger: ['change']
},
companyDesc: {
type: 'string',
min: 20,
required: true,
message: '请输入企业介绍最少20个字符',
trigger: ['change']
},
manager: {
type: 'string',
required: true,
message: '请输入联系人',
trigger: ['change']
},
telphone: {
type: 'string',
required: true,
pattern: /^1[3-9]{1}[0-9]{9}$/,
message: '请输入手机号码',
trigger: ['change']
},
identityUrl4Id: {
type: 'string',
required: true,
message: '请上传法人身份证(人像)',
trigger: ['change']
},
identityUrl5Id: {
type: 'string',
required: true,
message: '请上传法人身份证(国徽)',
trigger: ['change']
},
authUrlId: {
type: 'string',
required: true,
message: '请上传企业营业执照',
trigger: ['change']
},
}
export default {
components: {
UploadIdNumber,
PickerList
},
data() {
return {
showAddress: false,
showJobCompanyNature: false,
showjobCompanyIndustry: false,
dic,
xzDic: [],
formData: {},
rules
}; };
}, const _this = this;
onLoad(options) { this.$refs.formOne
if (options.reviewStatus === '9') { .validate()
this.getInfo() .then(async (res) => {
}
this.getDictInfo()
},
computed: {
...mapState({
authInfo: (state) => state.auth.authInfo,
userInfo: (state) => state.user.userInfo
}),
},
created() {
this.formData.manager = this.authInfo.realName
this.formData.idNumber = this.authInfo.idNumber
},
methods: {
hideKeyboard() {
uni.hideKeyboard()
},
async submit() {
let params = {
...this.formData,
nature: Number(this.formData.nature),
cityId: Number(this.formData.cityId),
tradeId: Number(this.formData.tradeId),
}
const _this = this
this.$refs.formOne.validate().then(async (res) => {
let params = { let params = {
..._this.formData, ..._this.formData,
nature: Number(_this.formData.nature), nature: Number(_this.formData.nature),
@@ -238,73 +291,74 @@
tradeId: Number(_this.formData.tradeId), tradeId: Number(_this.formData.tradeId),
manager: _this.authInfo.realName, manager: _this.authInfo.realName,
idNumber: _this.authInfo.idNumber, idNumber: _this.authInfo.idNumber,
companyName: dic.addressColumn[0].filter((item) => item.value == _this companyName: dic.addressColumn[0].filter((item) => item.value == _this.formData.cityId)[0]
.formData.cityId)[0].label .label,
} };
console.log(params) console.log(params);
let resData = await addInviteCompanyAuth(params) let resData = await addInviteCompanyAuth(params);
if (resData.data.code === 200) { if (resData.data.code === 200) {
uni.navigateBack(1) uni.navigateBack(1);
_this.$api.sleep(1000).then(() => { _this.$api.sleep(1000).then(() => {
_this.$api.msg('已完成企业信息认证') _this.$api.msg('已完成企业信息认证');
}) });
} }
}).catch(errors => { })
.catch((errors) => {
if (/[\u4e00-\u9fff]/.test(errors.message)) { if (/[\u4e00-\u9fff]/.test(errors.message)) {
_this.$api.msg(errors.message) _this.$api.msg(errors.message);
} }
}) });
}, },
async getInfo() { async getInfo() {
let params = { let params = {
idNumber: this.authInfo.idNumber idNumber: this.authInfo.idNumber,
} };
let resData = await getInviteCompanyAuthInfo(params) let resData = await getInviteCompanyAuthInfo(params);
if (resData.data.code === 200) { if (resData.data.code === 200) {
console.log(resData.data.data) console.log(resData.data.data);
this.formData = { this.formData = {
...resData.data.data, ...resData.data.data,
nature: String(resData.data.data.nature), nature: String(resData.data.data.nature),
cityId: String(resData.data.data.cityId), cityId: String(resData.data.data.cityId),
tradeId: String(resData.data.data.tradeId), tradeId: String(resData.data.data.tradeId),
} };
}
},
reset() {
const _this = this
uni.showModal({
content: '重置将清空表单,确定重置吗?',
success() {
_this.formData = {}
},
})
},
async getDictInfo() {
let resData = await getDictionary2()
if (resData.data.code === 200) {
this.xzDic = resData.data.data
}
} }
}, },
} reset() {
const _this = this;
uni.showModal({
content: '重置将清空表单,确定重置吗?',
success() {
_this.formData = {};
},
});
},
async getDictInfo() {
let resData = await getDictionary2();
if (resData.data.code === 200) {
this.xzDic = resData.data.data;
}
},
},
};
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.content { .content {
padding: 24rpx; padding: 24rpx;
.card { .card {
.card_title { .card_title {
font-weight: bold; font-weight: bold;
margin-top: 20rpx; margin-top: 20rpx;
} }
.card_content { .card_content {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
}
} }
} }
}
</style> </style>

View File

@@ -1,77 +1,86 @@
<template> <template>
<view class="content_upload" :style="contentStyle"> <view class="content_upload" :style="contentStyle">
<u-upload :fileList="ImgUrl" @afterRead="afterRead" :deletable="true" @delete="deletePic" name="6" :maxCount="1" <u-upload
:width="width" :height="height"> :fileList="ImgUrl"
<image :src="backImg" :style="`width: ${width}px;height: ${height}px;`"></image> @afterRead="afterRead"
<image class="iconimg" src="/static/img/Takingpictures.png" :deletable="true"
:style="`width: ${width/4}px;height: ${width/4}px;`"></image> @delete="deletePic"
name="6"
:maxCount="1"
:width="width"
:height="height"
>
<image :src="backImg" :style="{ width: width + 'px', height: height + 'px' }"></image>
<image
class="iconimg"
src="/static/img/Takingpictures.png"
:style="{ width: width / 4 + 'px', height: height / 4 + 'px' }"
></image>
</u-upload> </u-upload>
</view> </view>
</template> </template>
<script> <script>
import { import { uploadFile } from '@/api/upload.js';
uploadFile export default {
} from '@/api/upload.js' name: 'UploadIdNumber',
export default { props: {
name: 'UploadIdNumber', backImg: {
props: { type: String,
backImg: { require: true,
type: String,
require: true,
},
value: {
type: String,
default: null
},
width: {
type: Number,
default: 280
},
height: {
type: Number,
default: 150
},
contentStyle: {
type: String,
default: ''
}
}, },
computed: { value: {
ImgUrl(val) { type: String,
return this.value ? [{ default: null,
name: 'img.jpg',
url: this.value
}] : []
}
}, },
methods: { width: {
afterRead({ type: Number,
file, default: 280,
index, },
name height: {
}) { type: Number,
// this.$emit("input", file); default: 150,
uploadFile(file).then((url) => { },
this.$emit("input", url); contentStyle: {
}) type: String,
}, default: '',
deletePic() { },
this.$emit("input", null); },
}, computed: {
} ImgUrl(val) {
} return this.value
? [
{
name: 'img.jpg',
url: this.value,
},
]
: [];
},
},
methods: {
afterRead({ file, index, name }) {
// this.$emit("input", file);
uploadFile(file).then((url) => {
this.$emit('input', url);
});
},
deletePic() {
this.$emit('input', null);
},
},
};
</script> </script>
<style scoped> <style scoped>
.content_upload { .content_upload {
position: relative; position: relative;
} }
.iconimg { .iconimg {
position: absolute; position: absolute;
left: 50%; left: 50%;
top: 50%; top: 50%;
transform: translate(-50%, -50%); transform: translate(-50%, -50%);
} }
</style> </style>

File diff suppressed because it is too large Load Diff

View File

@@ -308,7 +308,7 @@
<view <view
class="addressinfo" class="addressinfo"
@click="selectMap" @click="selectMap"
:style="`fontSize: 15px;color: ${info.address ? '#333333' : '#c0c4cc'}`" :style="{ fontSize: '15px', color: info.address ? '#333333' : '#c0c4cc' }"
> >
{{ info.address || '请选择' }} {{ info.address || '请选择' }}
</view> </view>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

View File

@@ -86,6 +86,10 @@ async function DoAjax(options, config = {}) {
if (baseUrl) { if (baseUrl) {
options.url = baseUrl + options.url options.url = baseUrl + options.url
} }
// 馆陶替换url
if (options.url.startsWith('/api')) {
options.url = options.url.replace(/^\/api/, '/api/gt');
}
options = Object.assign({}, options, { options = Object.assign({}, options, {
header header
}); });

View File

@@ -11,7 +11,7 @@ module.exports = {
target: 'http://39.98.44.136:80', target: 'http://39.98.44.136:80',
ws: true, ws: true,
pathRewrite: { pathRewrite: {
'^/api': '/' '^/api': '/api'
} }
}, },
'/qq/map': { '/qq/map': {