|
@@ -1,461 +1,463 @@
|
|
|
<template>
|
|
|
<view>
|
|
|
- <view class="overlay" v-if="showfx" @click="showwx">
|
|
|
- <image style="height: 100%;width: 100%;" src="/static/img/zz.png"></image>
|
|
|
- </view>
|
|
|
+ <cu-custom bgColor="bg-blue" :isBack="true" v-if="title == '问题诉求情况'">
|
|
|
+ <block slot="backText">返回</block>
|
|
|
+ <block slot="content">问题诉求情况</block>
|
|
|
+ </cu-custom>
|
|
|
|
|
|
-
|
|
|
- <view :class="['custom-header', { 'is-back': isBack }, bgColor]">
|
|
|
- <view class="back-container" @click="handleBack">
|
|
|
- <view class="back-text">返回</view>
|
|
|
- </view>
|
|
|
- <view class="content-container">
|
|
|
- <view class="content-text">{{title}}</view>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
-
|
|
|
-
|
|
|
- <!-- <swiper class="swiper" circular :indicator-dots="true" :autoplay="true" :interval="3000" :duration="800">
|
|
|
- <swiper-item v-for="(item, index) in swiperList" :key="index">
|
|
|
- <image :src="item.url" class="swiper-item"></image>
|
|
|
- </swiper-item>
|
|
|
- </swiper> -->
|
|
|
-
|
|
|
- <form class="cu-list menu">
|
|
|
+ <form @submit="formSubmit" class="cu-list menu">
|
|
|
|
|
|
<view class="titlebg2">
|
|
|
<view class="titlet1" ></view>
|
|
|
- <view class="titlet2" >发布企业</view>
|
|
|
+ <view class="titlet2" >企业信息</view>
|
|
|
</view>
|
|
|
|
|
|
- <view class="show1">
|
|
|
-
|
|
|
- <view class="textbg">
|
|
|
- <view class="text1">
|
|
|
- 企业名称
|
|
|
- </view>
|
|
|
- <view class="text2" >
|
|
|
- {{inputForm.des5}}
|
|
|
- </view>
|
|
|
- </view>
|
|
|
-
|
|
|
- <view class="textbg">
|
|
|
- <view class="text1">
|
|
|
- 供需类型
|
|
|
- </view>
|
|
|
- <view class="text2" :class="inputForm.des1 === '需' ? 'text33' : 'text44'" >
|
|
|
- {{inputForm.des1}}
|
|
|
- </view>
|
|
|
- </view>
|
|
|
-
|
|
|
- <view class="textbg">
|
|
|
- <view class="text1">
|
|
|
- 发布时间
|
|
|
- </view>
|
|
|
- <view class="text2" >
|
|
|
- {{inputForm.updateDate}}
|
|
|
- </view>
|
|
|
+
|
|
|
+ <view class="textbg">
|
|
|
+ <view class="text12">
|
|
|
+ 企业名称
|
|
|
</view>
|
|
|
+ <view class="text22">
|
|
|
+ {{inputForm.name}}
|
|
|
+ </view>
|
|
|
</view>
|
|
|
-
|
|
|
- <view class="titlebg2">
|
|
|
- <view class="titlet1" ></view>
|
|
|
- <view class="titlet2" >供需基本信息</view>
|
|
|
- </view>
|
|
|
-
|
|
|
|
|
|
<view class="textbg">
|
|
|
<view class="text12">
|
|
|
- {{t1}}
|
|
|
+ 属地
|
|
|
</view>
|
|
|
<view class="text22">
|
|
|
- {{inputForm.des2}}
|
|
|
+ {{inputForm.des1}}
|
|
|
</view>
|
|
|
</view>
|
|
|
|
|
|
<view class="textbg">
|
|
|
<view class="text12">
|
|
|
- {{t2}}
|
|
|
+ 企业负责人
|
|
|
</view>
|
|
|
<view class="text22">
|
|
|
- {{inputForm.des3}}
|
|
|
+ {{inputForm.lxr}}
|
|
|
</view>
|
|
|
</view>
|
|
|
|
|
|
<view class="textbg">
|
|
|
<view class="text12">
|
|
|
- {{t3}}
|
|
|
+ 负责人号码
|
|
|
</view>
|
|
|
- <view class="text221">
|
|
|
- {{inputForm.des4}}
|
|
|
+ <view class="text22">
|
|
|
+ {{inputForm.phone}}
|
|
|
</view>
|
|
|
</view>
|
|
|
|
|
|
<view style="height: 30rpx;background-color: white;"></view>
|
|
|
|
|
|
- <view class="titlebg2" v-if="swiperList.length>0" >
|
|
|
+ <view class="titlebg2" style="margin-top:10rpx ;">
|
|
|
<view class="titlet1" ></view>
|
|
|
- <view class="titlet2" >图文详情</view>
|
|
|
+ <view class="titlet2" >挂钩干部</view>
|
|
|
</view>
|
|
|
|
|
|
- <view v-for="(item, index) in swiperList" :key="index" style="width: 100%;">
|
|
|
- <image :src="item.url" mode="widthFix" style="width: 100%;" >
|
|
|
- </image>
|
|
|
+ <view class="textbg">
|
|
|
+ <view class="text12">
|
|
|
+ 姓名
|
|
|
+ </view>
|
|
|
+ <view class="text22">
|
|
|
+ {{inputForm.bz5}}
|
|
|
+ </view>
|
|
|
</view>
|
|
|
|
|
|
-
|
|
|
-
|
|
|
+ <view style="height: 30rpx;background-color: white;"></view>
|
|
|
|
|
|
- <view style="height: 40rpx;"></view>
|
|
|
+ <view class="titlebg2" style="margin-top:10rpx ;">
|
|
|
+ <view class="titlet1" ></view>
|
|
|
+ <view class="titlet2" >主要问题诉求</view>
|
|
|
+ </view>
|
|
|
+
|
|
|
+
|
|
|
+ <view v-for="(item, index2) in questionList">
|
|
|
+
|
|
|
+ <view style="display: flex;background-color: #ffffff;justify-content: space-between; align-items: center;">
|
|
|
+ <view class="titlebb">
|
|
|
+ 问题{{index2+1}}
|
|
|
+ </view>
|
|
|
+ <!-- <icon v-if="index2!=0" @click="del(index2)" type="cancel" style="padding-right: 15rpx;padding-top: 5rpx;padding-left: 100rpx;"></icon> -->
|
|
|
+ </view>
|
|
|
+
|
|
|
+
|
|
|
+ <view class="input1">
|
|
|
+ <view class="title">
|
|
|
+ 问题名称
|
|
|
+ </view>
|
|
|
+ <input v-model="item.qname" placeholder="请填写问题名称" disabled="true" ></input>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <view class="cu-form-group margin-top">
|
|
|
+ <view class="title">
|
|
|
+ 问题类型
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <view class="input2">{{item.qtype||'请选择问题类型'}}</view>
|
|
|
+
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <view class="cu-form-group margin-top" v-if="item.t1!=''">
|
|
|
+ <view class="title">
|
|
|
+ {{item.t1}}
|
|
|
+ </view>
|
|
|
+ <input style="width: 200rpx;" v-model="item.gaps" :placeholder="item.t1s" disabled="true"></input>{{item.t1d}}
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <view class="cu-form-group margin-top" style="border-bottom: 3px solid #eee;">
|
|
|
+ <view class="title">
|
|
|
+ 问题描述
|
|
|
+ </view>
|
|
|
+ <textarea v-model="item.des" placeholder="请填写问题描述" disabled="true" ></textarea>
|
|
|
+ </view>
|
|
|
+ <!-- 挂钩干部 -->
|
|
|
+ <view class="cu-form-group margin-top" v-if="roleIds=='1910141956174053377'" >
|
|
|
+ <view class="title">
|
|
|
+ 问题处理
|
|
|
+ </view>
|
|
|
+ <radio-group @change="(e) => radioChange(e, index2)" class="radiog">
|
|
|
+ <label class="uni-list-cell uni-list-cell-pd" v-for="(item3, index3) in dels" :key="item3">
|
|
|
+ <view>
|
|
|
+ <radio :value="item3" :checked="index3 === item.current" />
|
|
|
+ </view>
|
|
|
+ <view style="padding-left: 15rpx;">{{item3}}</view>
|
|
|
+ </label>
|
|
|
+ </radio-group>
|
|
|
+ </view>
|
|
|
+ <!-- 大走访办公室 -->
|
|
|
+ <view class="cu-form-group margin-top" v-if="roleIds=='1910175386924417025'" >
|
|
|
+ <view class="title">
|
|
|
+ 问题处理
|
|
|
+ </view>
|
|
|
+ <radio-group @change="(e) => radioChange(e, index2)" class="radiog">
|
|
|
+ <label class="uni-list-cell uni-list-cell-pd" v-for="(item3, index3) in dels2" :key="item3">
|
|
|
+ <view>
|
|
|
+ <radio :value="item3" :checked="index3 === item.current" />
|
|
|
+ </view>
|
|
|
+ <view style="padding-left: 15rpx;">{{item3}}</view>
|
|
|
+ </label>
|
|
|
+ </radio-group>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <view class="cu-form-group margin-top">
|
|
|
+ <view class="title">
|
|
|
+ 预计办结时间
|
|
|
+ </view>
|
|
|
+ <picker mode="date" class="title2" @change="(e) => onDateChange(e, index2)" >
|
|
|
+ <view class="input2">{{item.finishdate||'请选择'}}</view>
|
|
|
+ </picker>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <view class="cu-form-group margin-top" >
|
|
|
+ <view class="title">
|
|
|
+ 处理意见
|
|
|
+ </view>
|
|
|
+ <textarea v-model="item.delyj" placeholder="请填写处理意见" ></textarea>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <!-- <view class="cu-form-group2 margin-top" style="border-bottom: 3px solid #eee;">
|
|
|
+ <view class="title">
|
|
|
+ 附件:
|
|
|
+ </view>
|
|
|
+ <button @click="addfj" style="height: 30px;width: 240rpx;margin-left: 55rpx;" class="cu-btn block bg-blue margin-tb-sm lg">+上传附件</button>
|
|
|
+ </view>
|
|
|
+ <view v-for="(item3, index3) in item.fj">
|
|
|
+ <view style="display: flex;background-color: #ffffff;justify-content: space-between; align-items: center;">
|
|
|
+ <view class="titlebb">
|
|
|
+ {{item3.fjname}}
|
|
|
+ </view>
|
|
|
+ <icon @click="del(index3)" type="cancel" style="padding-right: 15rpx;padding-top: 5rpx;padding-left: 100rpx;"></icon>
|
|
|
+ </view>
|
|
|
+ </view> -->
|
|
|
+
|
|
|
+
|
|
|
+ <view class="cu-form-group margin-top" style="border-bottom: 3px solid #eee;">
|
|
|
+ <uni-file-picker style="margin-bottom: 10px;" limit="3" ref="picFile" v-model="item.fj"
|
|
|
+ fileMediatype="all" mode="grid" title="附件上传" :auto-upload="autoUpload" @select="select"
|
|
|
+ @progress="progress" @success="success" @fail="fail" @delete="deleteFile"
|
|
|
+ :imageStyles="imageStyles" :disabled="ischeck">
|
|
|
+ </uni-file-picker>
|
|
|
+ </view>
|
|
|
+
|
|
|
+
|
|
|
|
|
|
+ </view>
|
|
|
|
|
|
- <view class="padding-xl" v-if="isadmin&&inputForm.des6=='1'">
|
|
|
- <button @click="sharezz" class="cu-btn block bg-blue margin-tb-sm lg">分享此企业账号</button>
|
|
|
+ <!-- <view style="width: 400rpx;margin-left: 20rpx;">
|
|
|
+ <button @click="addp" style="height: 30px;" class="cu-btn block bg-blue margin-tb-sm lg">+增加问题</button>
|
|
|
+ </view> -->
|
|
|
+
|
|
|
+ <view style="height: 40rpx;"></view>
|
|
|
+ <view class="flexC" >
|
|
|
+ <button @click="save" class="bt1 block margin-tb-sm lg">暂存</button>
|
|
|
+ <button form-type="submit" class="bt1 cu-btn block bg-blue margin-tb-sm lg">提交</button>
|
|
|
</view>
|
|
|
+ <view style="height: 40rpx;"></view>
|
|
|
</form>
|
|
|
</view>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+ var graceChecker = require("@/common/graceChecker.js");
|
|
|
+ import revenueListService from '@/api/revenue/revenueListService'
|
|
|
import loginService from '@/api/auth/loginService.js'
|
|
|
- import { wxShare } from "@/common/wxutils.js";
|
|
|
+ import * as $auth from "../../common/auth"
|
|
|
export default {
|
|
|
onShow() {
|
|
|
- //this.$auth.checkLogin()
|
|
|
+ this.$auth.checkLogin()
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
- title: '产品供需详情',
|
|
|
- isBack: true, // 是否显示返回按钮
|
|
|
- backText: '返回', // 返回按钮的文本
|
|
|
- bgColor: 'bg-blue', // 背景颜色
|
|
|
- autoUpload: false,
|
|
|
- swiperList: [],
|
|
|
+ title: '问题诉求情况',
|
|
|
+ roleIds:'',
|
|
|
inputForm: {
|
|
|
- id: '',
|
|
|
+ id:'',
|
|
|
name: '',
|
|
|
industry: '',
|
|
|
+ lxr: '',
|
|
|
+ phone: '',
|
|
|
+
|
|
|
+ bz1: '',
|
|
|
+ bz2: '',
|
|
|
+ bz3: '',
|
|
|
+ bz4: '',
|
|
|
+ bz5: '',
|
|
|
+ bz6: '',
|
|
|
+
|
|
|
des1: '',
|
|
|
des2: '',
|
|
|
des3: '',
|
|
|
des4: '',
|
|
|
- des5: '',
|
|
|
- des6: '',
|
|
|
- des7: '',
|
|
|
- des8: '',
|
|
|
- des9: '',
|
|
|
- updateDate: '',
|
|
|
+ des6: '',
|
|
|
+ des10: '',
|
|
|
},
|
|
|
- t1: '产品名称',
|
|
|
- t2: '产品产能',
|
|
|
+ t1: '可供产品',
|
|
|
+ t1s: '请填写可供产品',
|
|
|
+ t2: '可供数量',
|
|
|
+ t2s: '请填写可供数量',
|
|
|
t3: '详细描述',
|
|
|
- text1:'',
|
|
|
- text2:'',
|
|
|
- parkList: [],
|
|
|
+ t3s: '请填写详细描述',
|
|
|
+
|
|
|
+ autoUpload: false,
|
|
|
+ picLists: [],
|
|
|
+ picUrl: [],
|
|
|
+ imageStyles: {
|
|
|
+ width: 90,
|
|
|
+ height: 90
|
|
|
+ },
|
|
|
+ parkList: [ "用工人才", "资金需求", "土地厂房", "订单及配套", "政策兑现", "创新及品牌", "审批手续", "水电气供应", "安全环保消防", "其他(需详细说明)"],
|
|
|
+ questionList:[{qname:"",qtype:"",qTypeindex:"",gaps:"",des:"",t1:"",t1s:""}],
|
|
|
+ dels:["办结","反馈大走访活动办","正在办理","难以化解","持续跟踪","提请会办"],
|
|
|
+ dels2:["办结","交办"],
|
|
|
+ index:0,
|
|
|
ischeck: false,
|
|
|
- isLogin:"",
|
|
|
- username:"",
|
|
|
- isadmin:false,
|
|
|
- lyIndex: '',
|
|
|
- showLYList: [],
|
|
|
- showfx:false,
|
|
|
}
|
|
|
},
|
|
|
created() {
|
|
|
},
|
|
|
- mounted() {
|
|
|
-
|
|
|
+ mounted() {
|
|
|
},
|
|
|
- onLoad(query) {
|
|
|
- this.isLogin=this.$auth.checkisLogin();
|
|
|
- this.username=this.$auth.getUserInfo();
|
|
|
- if(this.username!=undefined&&this.username!=''&&this.username!=null&&this.isLogin!=null){
|
|
|
- if(this.username.loginName=='admin'){
|
|
|
- this.isadmin=true;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (query && query.ischeck) {
|
|
|
- this.ischeck = true
|
|
|
- }
|
|
|
- if (query && query.id && !query.ischeck) {
|
|
|
- this.title = "修改企业信息";
|
|
|
- }
|
|
|
- this.getComById(query)
|
|
|
+ async onLoad(query) {
|
|
|
|
|
|
+ if(query.ischeck!=undefined&&query.ischeck=='1'){
|
|
|
+ //查看
|
|
|
+ this.ischeck=true;
|
|
|
+ let data2 = await loginService.getdzfQuestionqueryById({id:query.id})
|
|
|
+
|
|
|
+ this.inputForm.id = data2.data.id;
|
|
|
+ this.inputForm.name = data2.data.qyName;
|
|
|
+ this.inputForm.des1 = data2.data.des1;
|
|
|
+ this.inputForm.lxr = data2.data.qyFzr;
|
|
|
+ this.inputForm.phone = data2.data.phone;
|
|
|
+ this.inputForm.bz5 = data2.data.officer;
|
|
|
+ this.questionList=data2.data.dzfQuestionDetilDTOList;
|
|
|
+
|
|
|
+
|
|
|
+ this.roleIds= $auth.getUserInfo().roleIds;
|
|
|
+ console.log(this.roleIds);
|
|
|
+
|
|
|
|
|
|
+ }else{
|
|
|
+ //新增
|
|
|
+ let data2 = await loginService.queryByUserName()
|
|
|
+ this.inputForm = this.recover(this.inputForm, data2.data)
|
|
|
+ this.inputForm.id="";
|
|
|
+ }
|
|
|
|
|
|
},
|
|
|
methods: {
|
|
|
- getParkList(query) {
|
|
|
- loginService.list({
|
|
|
- current: 1,
|
|
|
- size: 1000000,
|
|
|
- }).then(({
|
|
|
- data
|
|
|
- }) => {
|
|
|
- this.parkList = data.records.map((item) => {
|
|
|
- return {
|
|
|
- label: item.buildingName,
|
|
|
- value: item.id
|
|
|
- }
|
|
|
- })
|
|
|
- this.showLYList = this.parkList.map(item => item.label)
|
|
|
- if (query && query.id) {
|
|
|
- loginService.queryByIdPro(query.id).then(({
|
|
|
- data
|
|
|
- }) => {
|
|
|
- this.inputForm = this.recover(this.inputForm, data)
|
|
|
- this.lyIndex = this.parkList.findIndex(item => item.value == this.inputForm.des1)
|
|
|
- console.log(this.lyIndex, '=====================>lyIndex')
|
|
|
- }).catch((e) => {
|
|
|
-
|
|
|
- })
|
|
|
-
|
|
|
- }
|
|
|
- }).catch(e => {
|
|
|
- console.log(e)
|
|
|
- })
|
|
|
- },
|
|
|
-
|
|
|
- handleBack() {
|
|
|
- // 返回逻辑,比如跳转至上一页
|
|
|
- this.$router.go(-1);
|
|
|
- console.log('返回按钮被点击');
|
|
|
+ onDateChange(e,index2) {
|
|
|
+ this.$set(this.questionList[index2], 'finishdate', e.detail.value);
|
|
|
},
|
|
|
- showwx() {
|
|
|
- this.showfx=false;
|
|
|
+ radioChange: function(evt,index2) {
|
|
|
+ for (let i = 0; i < this.dels.length; i++) {
|
|
|
+ if (this.dels[i] === evt.detail.value) {
|
|
|
+ this.questionList[index2].current = i;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
},
|
|
|
-
|
|
|
- getComById(query) {
|
|
|
- loginService.queryByIdPro(query.id).then(({
|
|
|
- data
|
|
|
- }) => {
|
|
|
- //未登录
|
|
|
- // if(this.isLogin==null){
|
|
|
- // console.log('未登录')
|
|
|
- // //不做处理后台已做处理
|
|
|
-
|
|
|
- if(data.des1=='1'){
|
|
|
- data.des1="供"
|
|
|
- }else{
|
|
|
- data.des1="需"
|
|
|
- }
|
|
|
- this.setData(data);
|
|
|
- // }else{
|
|
|
- // this.setData(data);
|
|
|
- // }
|
|
|
-
|
|
|
- }).catch((e) => {
|
|
|
+ addfj(){
|
|
|
|
|
|
- })
|
|
|
},
|
|
|
-
|
|
|
-
|
|
|
- //账号分享
|
|
|
- sharezz(){
|
|
|
- var that=this;
|
|
|
- setTimeout(function() {
|
|
|
- that.showfx=true;
|
|
|
- console.log("1"+ this.showfx);
|
|
|
- }, 500); // 2000毫秒后执行
|
|
|
-
|
|
|
- loginService.getloginstr(this.inputForm.phone).then(({
|
|
|
- data
|
|
|
- }) => {
|
|
|
- //未登录
|
|
|
- if(data.Id=='0'){
|
|
|
- uni.showModal({
|
|
|
- title: '您无权限分享账号,请联系管!',
|
|
|
- showCancel: true,
|
|
|
- success: (res) => {
|
|
|
-
|
|
|
- }
|
|
|
- });
|
|
|
-
|
|
|
- }else{
|
|
|
-
|
|
|
- this.weixin(data);
|
|
|
-
|
|
|
- // const textArea = document.createElement("textarea");
|
|
|
- // textArea.value = 'https://miniapp.huidutech.com.cn/yd_qycpfbH5/#/pages/index/index?loginid='+data.Id;
|
|
|
- // document.body.appendChild(textArea);
|
|
|
- // textArea.focus();
|
|
|
- // textArea.select();
|
|
|
- // try {
|
|
|
- // document.execCommand('copy');
|
|
|
- // uni.showModal({
|
|
|
- // title: '已将登录链接复制到剪切板,直接打开微信好友粘贴分享!',
|
|
|
- // showCancel: true,
|
|
|
- // success: (res) => {
|
|
|
-
|
|
|
- // }
|
|
|
- // });
|
|
|
- // } catch (err) {
|
|
|
- // console.error('Could not copy text', err);
|
|
|
- // uni.showModal({
|
|
|
- // title: '当前不支持分享功能!',
|
|
|
- // showCancel: true,
|
|
|
- // success: (res) => {
|
|
|
-
|
|
|
- // }
|
|
|
- // });
|
|
|
- // } finally {
|
|
|
- // document.body.removeChild(textArea);
|
|
|
- // }
|
|
|
- }
|
|
|
-
|
|
|
- }).catch((e) => {
|
|
|
-
|
|
|
- })
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ addp(){
|
|
|
+ this.questionList.push({qname:"",qtype:"",qTypeindex:"",gaps:"",des:"",t1:"",t1s:""})
|
|
|
|
|
|
},
|
|
|
+ del(index2){
|
|
|
+ this.questionList.splice(index2, 1);
|
|
|
+ },
|
|
|
|
|
|
-
|
|
|
- async weixin(data) {
|
|
|
+ bindPickerChange: function(e,index2) {
|
|
|
+ if(e.detail.value==0){
|
|
|
+ this.questionList[index2].t1='缺口数';
|
|
|
+ this.questionList[index2].t1s= '请填写缺口数';
|
|
|
+ this.questionList[index2].t1d= '人';
|
|
|
|
|
|
+ }else if(e.detail.value==1){
|
|
|
+ this.questionList[index2].t1='缺口数';
|
|
|
+ this.questionList[index2].t1s= '请填写缺口数';
|
|
|
+ this.questionList[index2].t1d= '万元';
|
|
|
|
|
|
- try {
|
|
|
-
|
|
|
- if ( data) {
|
|
|
- //微信加签
|
|
|
- var obj = {
|
|
|
- appId: data.appid,
|
|
|
- nonceStr: data.nonceStr,
|
|
|
- signature: data.signature,
|
|
|
- timestamp: data.timestamp,
|
|
|
- Id: data.Id,
|
|
|
- }
|
|
|
- //分享数据,这段主要是为了在hash模式下分享出去的链接不被浏览器截取,保证完全把链接分享出去(link的链接可以自己拼,无须与当前页面的后缀参数之类的内容完全一致)
|
|
|
- let shareData = {
|
|
|
- title: '‘都企供需’线上平台',
|
|
|
- desc: '点击直接登录',
|
|
|
- imgUrl: 'https://miniapp.huidutech.com.cn/yd_qycpfbH5/static/img/titlebg.jpg',
|
|
|
- link: 'https://miniapp.huidutech.com.cn/yd_qycpfbH5/#/pages/index/index?loginid='+data.Id + "&t=" + data.timestamp + "&Content=1", // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
|
|
|
-
|
|
|
- };
|
|
|
+ }else if(e.detail.value==2){
|
|
|
+ this.questionList[index2].t1='缺口数';
|
|
|
+ this.questionList[index2].t1s= '请填写缺口数';
|
|
|
+ this.questionList[index2].t1d= '';
|
|
|
|
|
|
- //引用
|
|
|
- wxShare(obj, shareData);
|
|
|
-
|
|
|
- } else {
|
|
|
- uni.showModal({
|
|
|
- title: '获取sdk参数失败!',
|
|
|
- showCancel: true,
|
|
|
- success: (res) => {
|
|
|
-
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
- } catch (err) {
|
|
|
- //
|
|
|
- } finally {
|
|
|
- //
|
|
|
- }
|
|
|
- },
|
|
|
-
|
|
|
-
|
|
|
- setData(data){
|
|
|
- this.inputForm = this.recover(this.inputForm, data)
|
|
|
-
|
|
|
-
|
|
|
- if(this.inputForm.des1=='供'){
|
|
|
- this.t1='可供产品';
|
|
|
- this.t2= '可供数量';
|
|
|
}else{
|
|
|
- this.t1='需求名称';
|
|
|
- this.t2= '需求数量';
|
|
|
- }
|
|
|
-
|
|
|
+ this.questionList[index2].t1='';
|
|
|
+ this.questionList[index2].t1s= '';
|
|
|
+ this.questionList[index2].t1d= '';
|
|
|
+ }
|
|
|
|
|
|
- let pics=this.inputForm.des6.split(",");
|
|
|
- console.log(pics)
|
|
|
- pics.forEach(item => {
|
|
|
- if(item!=''){
|
|
|
- this.swiperList.push({
|
|
|
- 'url': "http://47.97.69.114:8089/yd_qycpfbWeb/"+item,
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
- })
|
|
|
+ this.questionList[index2].qTypeindex = e.detail.value;
|
|
|
+ this.questionList[index2].qtype=this.parkList[e.detail.value]
|
|
|
|
|
|
- console.log(this.swiperList)
|
|
|
-
|
|
|
},
|
|
|
|
|
|
- goToCompany(companyName) {
|
|
|
- //https://www.qcc.com/web/search?key=
|
|
|
-
|
|
|
- window.open("https://www.qcc.com/web/search?key="+companyName);
|
|
|
- //window.location.href = `https://www.qcc.com/company/${encodeURIComponent(companyName)}`;
|
|
|
+ // 获取上传进度
|
|
|
+ progress(e) {
|
|
|
+ console.log('上传进度:', e)
|
|
|
},
|
|
|
-
|
|
|
- call1(){
|
|
|
-
|
|
|
- // uni.navigateTo({
|
|
|
- // url: '/pages/index/AudioToWord'
|
|
|
- // })
|
|
|
-
|
|
|
- // uni.navigateTo({
|
|
|
- // url: '/pages/comList/comList'
|
|
|
- // })
|
|
|
-
|
|
|
- //未登录
|
|
|
- if(this.isLogin==null){
|
|
|
- uni.showModal({
|
|
|
- title: '您还未登录,是否跳转登录页面?',
|
|
|
- showCancel: true,
|
|
|
+ // 上传成功
|
|
|
+ success(e) {
|
|
|
+ console.log('上传成功')
|
|
|
+ },
|
|
|
+ // 上传失败
|
|
|
+ fail(e) {
|
|
|
+ console.log('上传失败:', e)
|
|
|
+ },
|
|
|
+ deleteFile(e) {
|
|
|
+ this.picUrl.splice(e.index, 1)
|
|
|
+ },
|
|
|
+ // 获取上传状态
|
|
|
+ select(e) {
|
|
|
+ console.log('选择文件:', e)
|
|
|
+ var _this = this
|
|
|
+ var i = 0
|
|
|
+ upload()
|
|
|
+
|
|
|
+ function upload() {
|
|
|
+ if (i >= e.tempFiles.length) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ var item = e.tempFiles[i]
|
|
|
+ uni.showLoading({
|
|
|
+ title: "上传中",
|
|
|
+ mask: true
|
|
|
+ });
|
|
|
+ uni.uploadFile({
|
|
|
+ url: '/yd_qycpfb/file/upload?uploadPath=userdir', // 仅为示例,非真实的接口地址
|
|
|
+ filePath: item.url,
|
|
|
+ name: 'file',
|
|
|
+ formData: {
|
|
|
+ 'fileName': item.name
|
|
|
+ },
|
|
|
+ header: {
|
|
|
+ 'token': _this.$auth.getUserToken()
|
|
|
+ },
|
|
|
success: (res) => {
|
|
|
- if (res.confirm) {
|
|
|
-
|
|
|
- uni.reLaunch({
|
|
|
- url: '/pages/login/login'
|
|
|
+ var data = res.data
|
|
|
+ if (typeof data['error'] != "undefined") {
|
|
|
+ uni.showToast({
|
|
|
+ icon: 'none',
|
|
|
+ title: '上传失败,请联系开发!'
|
|
|
+ });
|
|
|
+ _this.$refs.picFile.clearFiles(_this.picLists.length)
|
|
|
+ } else {
|
|
|
+ _this.picUrl.push({
|
|
|
+ url: data,
|
|
|
+ uuid: item.uuid
|
|
|
})
|
|
|
-
|
|
|
+ i++;
|
|
|
+ upload()
|
|
|
}
|
|
|
+ },
|
|
|
+ fail: () => {
|
|
|
+ uni.hideLoading();
|
|
|
+ uni.showToast({
|
|
|
+ icon: 'none',
|
|
|
+ title: '上传失败,请联系开发!'
|
|
|
+ });
|
|
|
+ _this.$refs.picFile.clearFiles(_this.picLists.length)
|
|
|
+ },
|
|
|
+ complete: function() {
|
|
|
+ uni.hideLoading();
|
|
|
}
|
|
|
});
|
|
|
- }else{
|
|
|
- window.location.href = 'tel:'+this.inputForm.phone;
|
|
|
}
|
|
|
-
|
|
|
},
|
|
|
-
|
|
|
- call2(){
|
|
|
- //未登录
|
|
|
- if(this.isLogin==null){
|
|
|
- uni.showModal({
|
|
|
- title: '您还未登录,是否跳转登录页面?',
|
|
|
- showCancel: true,
|
|
|
- success: (res) => {
|
|
|
- if (res.confirm) {
|
|
|
-
|
|
|
- uni.reLaunch({
|
|
|
- url: '/pages/login/login'
|
|
|
- })
|
|
|
-
|
|
|
- }
|
|
|
- }
|
|
|
+ save(){
|
|
|
+ this.inputForm.des10="";
|
|
|
+ this.inputForm.dzfQuestionDetilDTOList=this.questionList;
|
|
|
+ this.checkinput();
|
|
|
+ },
|
|
|
+ formSubmit: function(e) {
|
|
|
+ this.inputForm.des10="submit";
|
|
|
+ this.inputForm.dzfQuestionDetilDTOList=this.questionList;
|
|
|
+ this.checkinput();
|
|
|
+ },
|
|
|
+ checkinput(){
|
|
|
+ if(this.hasDuplicateQName(this.questionList)){
|
|
|
+ uni.showToast({
|
|
|
+ icon: 'none',
|
|
|
+ title: '问题名称不能重复!'
|
|
|
});
|
|
|
}else{
|
|
|
- window.location.href = 'tel:'+this.inputForm.bz6;
|
|
|
+
|
|
|
+ uni.showLoading()
|
|
|
+ loginService.saveQuestion(this.inputForm).then(({
|
|
|
+ data
|
|
|
+ }) => {
|
|
|
+ uni.hideLoading();
|
|
|
+ uni.showToast({
|
|
|
+ title: "问题诉求提交成功!",
|
|
|
+ icon: "success"
|
|
|
+ });
|
|
|
+ uni.navigateTo({
|
|
|
+ url: '/pages/question/questionList'
|
|
|
+ })
|
|
|
+ }).catch((e) => {
|
|
|
+ uni.hideLoading();
|
|
|
+ })
|
|
|
+
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
},
|
|
|
+ hasDuplicateQName(array) {
|
|
|
+ const seen = new Set();
|
|
|
+ for (const item of array) {
|
|
|
+ if (seen.has(item.qname)) {
|
|
|
+ return true; // 找到重复的 qName
|
|
|
+ }
|
|
|
+ seen.add(item.qname);
|
|
|
+ }
|
|
|
+ return false; // 没有重复的 qName
|
|
|
+ }
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
|
|
|
}
|
|
|
}
|
|
@@ -467,32 +469,43 @@
|
|
|
input,textarea{
|
|
|
color: #8799a3;
|
|
|
}
|
|
|
-
|
|
|
- .swiper {
|
|
|
- width: 750rpx;
|
|
|
- height: 310rpx;
|
|
|
+ .input1{
|
|
|
+ background-color: #ffffff;
|
|
|
+ padding: 1upx 40upx;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ padding-top: 20upx;
|
|
|
+ border-bottom: 1px solid #eee;
|
|
|
}
|
|
|
-
|
|
|
- .swiper-item {
|
|
|
- width: 750rpx;
|
|
|
- height: 310rpx;
|
|
|
- background-color: aliceblue;
|
|
|
+ .input1 .title {
|
|
|
+ text-align: justify;
|
|
|
+ padding-right: 30upx;
|
|
|
+ font-size: 30upx;
|
|
|
+ position: relative;
|
|
|
+ height: 60upx;
|
|
|
+ line-height: 60upx;
|
|
|
+ border: ;
|
|
|
}
|
|
|
- .show1{
|
|
|
- background-color: #2752eb;
|
|
|
- padding-left: 8rpx;
|
|
|
+ .title2{
|
|
|
+ width: 75%;
|
|
|
+ text-align: left;
|
|
|
+ }
|
|
|
+ .input2 {
|
|
|
+ flex: 1;
|
|
|
+ font-size: 30upx;
|
|
|
+ color: #555;
|
|
|
+ padding-right: 20upx;
|
|
|
+ width: 500rpx;
|
|
|
}
|
|
|
+ .uni-input{
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
.textbg{
|
|
|
display: flex;
|
|
|
background-color: white;
|
|
|
padding-top: 29rpx;
|
|
|
}
|
|
|
- .text1{
|
|
|
- width: 200rpx;
|
|
|
- margin-left: 30rpx;
|
|
|
- color: #333333;
|
|
|
- font-size: 30rpx;
|
|
|
- }
|
|
|
.text12{
|
|
|
width: 200rpx;
|
|
|
margin-left: 30rpx;
|
|
@@ -506,52 +519,12 @@
|
|
|
font-size: 30rpx;
|
|
|
padding-bottom: 2rpx;
|
|
|
}
|
|
|
-
|
|
|
- .text33{
|
|
|
- flex: 1;
|
|
|
- color: #FF4500;
|
|
|
- font-size: 30rpx;
|
|
|
- padding-bottom: 2rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .text44{
|
|
|
- flex: 1;
|
|
|
- color: #2E8B57;
|
|
|
- font-size: 30rpx;
|
|
|
- padding-bottom: 2rpx;
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
.text22{
|
|
|
flex: 1;
|
|
|
color: #666666;
|
|
|
font-size: 29rpx;
|
|
|
padding-bottom: 2rpx;
|
|
|
- }
|
|
|
-
|
|
|
- .text221{
|
|
|
- flex: 1;
|
|
|
- color: #666666;
|
|
|
- font-size: 29rpx;
|
|
|
- padding-right:15rpx ;
|
|
|
- padding-bottom: 2rpx;
|
|
|
- }
|
|
|
- .text3{
|
|
|
- display: flex;
|
|
|
- color: #000000;
|
|
|
- }
|
|
|
- .phone{
|
|
|
- display: flex;
|
|
|
- color: #1E8AD7;
|
|
|
- padding-left: 5rpx;
|
|
|
- padding-right: 5rpx;
|
|
|
- font-size: 30rpx;
|
|
|
- align-items: center
|
|
|
- }
|
|
|
- .phoneimg{
|
|
|
- margin-left: 10rpx;
|
|
|
- width: 35rpx;
|
|
|
- height: 35rpx;
|
|
|
+ align-self: flex-end;
|
|
|
}
|
|
|
.titlebg2{
|
|
|
display: flex;
|
|
@@ -572,51 +545,40 @@
|
|
|
font-weight: 800;
|
|
|
color: #2752eb;
|
|
|
}
|
|
|
- .overlay{
|
|
|
- position: fixed; /* 固定定位,覆盖整个页面 */
|
|
|
- top: 0;
|
|
|
- left: 0;
|
|
|
- width: 100%;
|
|
|
- height: 100%;
|
|
|
- background-color: rgba(255, 255, 255, 0.5); /* 半透明白色背景 */
|
|
|
- z-index: 1000; /* 确保遮罩在页面内容之上 */
|
|
|
- }
|
|
|
-
|
|
|
|
|
|
- .custom-header {
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- justify-content: center;
|
|
|
- padding: 10px;
|
|
|
- width: 100%;
|
|
|
+ .titlebb{
|
|
|
+ color: #000000;
|
|
|
+ font-weight: 800;
|
|
|
+ padding-left: 40rpx;
|
|
|
+ background-color: #ffffff;
|
|
|
+ padding-top: 20rpx;
|
|
|
+
|
|
|
}
|
|
|
-
|
|
|
- .is-back {
|
|
|
- position: relative;
|
|
|
+ .flexC{
|
|
|
+ display: flex;
|
|
|
}
|
|
|
-
|
|
|
- .back-container {
|
|
|
- position: absolute;
|
|
|
- left: 10px;
|
|
|
- cursor: pointer;
|
|
|
+ .bt1{
|
|
|
+ flex:1;
|
|
|
+ margin: 30rpx;
|
|
|
}
|
|
|
-
|
|
|
- .back-text {
|
|
|
- color: white; /* 返回按钮文本颜色 */
|
|
|
+ .bt2{
|
|
|
+ flex:1;
|
|
|
+ margin: 30rpx;
|
|
|
}
|
|
|
|
|
|
- .content-container {
|
|
|
- flex: 1;
|
|
|
- text-align: center;
|
|
|
+ .radiog{
|
|
|
+ flex:1;
|
|
|
+ margin: 10rpx;
|
|
|
}
|
|
|
-
|
|
|
- .content-text {
|
|
|
- color: white; /* 标题文本颜色 */
|
|
|
- font-weight: bold;
|
|
|
+ .uni-list-cell{
|
|
|
+ display: flex;
|
|
|
+
|
|
|
}
|
|
|
-
|
|
|
- /* 背景颜色 */
|
|
|
- .bg-blue {
|
|
|
- background-color: #4285f4; /* 假设这是一个蓝色背景 */
|
|
|
+ .cu-form-group2{
|
|
|
+ background-color: #ffffff;
|
|
|
+ padding: 0.5px 22px;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ min-height: 44px;
|
|
|
}
|
|
|
</style>
|