提交 3b9b308e 编写于 作者: Y yang-zongying@qq.com

更新页面

上级 c0ccc617
......@@ -117,10 +117,8 @@
"h5" : {
"sdkConfigs" : {
"maps" : {
"amap" : {
"key" : "",
"securityJsCode" : "",
"serviceHost" : ""
"qqmap" : {
"key" : "CY5BZ-QRGCU-J66VG-GUFIY-HZEPJ-UMFZ4"
}
}
}
......
......@@ -545,6 +545,62 @@
"navigationBarTitleText" : "",
"enablePullDownRefresh" : false
}
},
{
"path" : "pages/workSpace/crm/baojia/bjSQ",
"style" :
{
"navigationBarTitleText" : "",
"enablePullDownRefresh" : false
}
},
{
"path" : "pages/workSpace/crm/baojia/bjSQList",
"style" :
{
"navigationBarTitleText" : "",
"enablePullDownRefresh" : false
}
},
{
"path" : "pages/workSpace/crm/jiageku/jiageku",
"style" :
{
"navigationBarTitleText" : "",
"enablePullDownRefresh" : false
}
},
{
"path" : "pages/workSpace/crm/htgl/htqr",
"style" :
{
"navigationBarTitleText" : "",
"enablePullDownRefresh" : false
}
},
{
"path" : "pages/workSpace/crm/htgl/htjd",
"style" :
{
"navigationBarTitleText" : "",
"enablePullDownRefresh" : false
}
},
{
"path" : "pages/workSpace/crm/ywf/ywfZD",
"style" :
{
"navigationBarTitleText" : "",
"enablePullDownRefresh" : false
}
},
{
"path" : "pages/workSpace/crm/ywf/ywfZF",
"style" :
{
"navigationBarTitleText" : "",
"enablePullDownRefresh" : false
}
}
],
"globalStyle": {
......
......@@ -43,16 +43,11 @@
workSpace,
msg,
},
onReady() {
onShow() {
const _self = this;
console.log(this.tarbar)
this.tarbar = TabbarUtil.getTabbar();
this.onChangeTabbarTab(this.selectedIndex)
},
onShow() {
},
onLoad(options) {
if (!this.isLoggedIn) {
// 用户未登录,跳转到登录页面
uni.navigateTo({
......
<template>
<view class="detailPage bggray">
<u--form labelPosition="top" :model="jjForm" labelWidth="400" ref="uForm">
<view class="pdb fl-rsbc">
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'jibenxinxi.png'"
width="25px" height="25px"></u--image></view>
<view class="stit wcolor" style="width: 80px;">项目信息</view>
</view>
</view>
<view class="mgb10 cardview bgwhite pd mgb">
<view class="fl mgb10">
<view class="stit">投标申请单号:</view>
<view class="stext">TBSQ2024040001</view>
</view>
<view class="fl-rsb">
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'userInfo.png'" width="18px" height="18px"></u--image></view>
<view class="stext">张三</view>
</view>
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'phone.png'" width="18px" height="18px"></u--image></view>
<view class="stext">12345648445</view>
</view>
</view>
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'cz.png'" width="18px" height="18px"></u--image></view>
<view class="stit">传真 :</view>
<view class="stext">12345648445</view>
</view>
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'userCard.png'" width="18px" height="18px"></u--image></view>
<view class="stit">业务员 :</view>
<view class="stext">张三</view>
</view>
<view class="fl mgt10">
<view class="desctit">所属公司 :</view>
<view class="desctext">12345648445</view>
</view>
<view class="fl-rsb mgt10">
<view class="fl">
<view class="desc mgr5">要求报出时间 :</view>
<view class="desc">12345648445</view>
</view>
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'time.png'" width="14x" height="14x"></u--image></view>
<view class="desc">2024-05-02</view>
</view>
</view>
</view>
<view class="pdb10">
<view class="pdb fl-rsbc">
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'jibenxinxi.png'" width="25px" height="25px"></u--image></view>
<view class="stit" style="width: 80px;">基本信息</view>
</view>
</view>
<view class="mgb10 cardview bgwhite pdb">
<CardTit title="寄件信息录入" icon="jjsq.png" :userInfo="userInfo" :iDate="Date.now()" />
<view class="pdlr">
<view class="pdtb10 fl-rsbc bgwhite bd1">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--input border="none" placeholder="客户名称" type="string"
clearable></u--input>
</view>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--input border="none" placeholder="客户地址" type="string"
clearable></u--input>
</view>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--input border="none" placeholder="报价有效期(天)" type="string"
clearable></u--input>
</view>
</view>
<view class="pdt10 bgwhite ">
<checkbox-group @change="radioChange" class="pdt10 fl-rsbc bgwhite">
<view style="font-size: 16px; width:80px;" >
<checkbox color="#2452D1"
style="transform: translateX(-3px) scale(0.6);" />审阅
</view>
<view style="font-size: 16px; width:80px;" >
<checkbox color="#2452D1"
style="transform: translateX(-3px) scale(0.6);" />批示
</view>
<view style="font-size: 16px; width:80px;" >
<checkbox color="#2452D1"
style="transform: translateX(-3px) scale(0.6);" />回复
</view>
<view style="font-size: 16px; width:80px;" >
<checkbox color="#2452D1"
style="transform: translateX(-3px) scale(0.6);" />传阅
</view>
</checkbox-group>
</view>
<view class="pdt">
<view class="w100 fl-rsbc bgwhite cu">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--textarea height="240" v-model="jjForm.njpm" placeholder="备注"
count></u--textarea>
</view>
</view>
</view>
<view class="pdt">
<view class="w100 fl-rsbc bgwhite cu">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--textarea height="140" v-model="jjForm.njpm" placeholder="报价明细"
count></u--textarea>
</view>
</view>
</view>
<view class="pdt">
<view class="w100 fl-rsbc bgwhite cu">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--textarea height="100" v-model="jjForm.njpm" placeholder="销售员意见"
count></u--textarea>
</view>
</view>
</view>
</view>
</view>
</view>
<view class="mgb">
<view class="pdb fl-rsbc">
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'shoujian.png'"
width="25px" height="25px"></u--image></view>
<view class="stit" >金额</view>
</view>
</view>
<view class="cardview bgwhite pdlr pdb">
<view class="fl-rsb">
<view class="pdtb10 fl-rsbc bgwhite bd1 mgr">
<u--input border="none" placeholder="折扣(%)" v-model="jjForm.sjlxr" type="string"
clearable></u--input>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1 mgr">
<u--input border="none" placeholder="折扣金额" v-model="jjForm.sjlxrdh" type="number"
clearable></u--input>
</view>
<view class=" pdtb10 fl-rsbc bgwhite cu bd1 ">
<u--input border="none" placeholder="运费金额" v-model="jjForm.sjlxrdh" type="string"
clearable></u--input>
</view>
</view>
<view class="fl-gr2 bgwhite">
<view class=" pdtb10 fl-rsbc bgwhite cu bd1 mgr">
<u--input border="none" placeholder="税金" v-model="jjForm.sjlxrdh" type="string"
clearable></u--input>
</view>
<view class=" pdtb10 fl-rsbc bgwhite cu bd1 ">
<u--input border="none" placeholder="明细总金额" v-model="jjForm.sjlxrdh" type="string"
clearable></u--input>
</view>
</view>
<view class="fl">
<checkbox-group @change="radioChange" class="pdt10 fl-gr2 bgwhite">
<view style="font-size: 16px; width:110px;" >
<checkbox color="#2452D1"
style="transform: translateX(-3px) scale(0.6);" />标准产品
</view>
<view style="font-size: 16px; width:110px;" >
<checkbox color="#2452D1"
style="transform: translateX(-3px) scale(0.6);" />特价
</view>
</checkbox-group>
</view>
<view class="bgwhite">
</view>
</view>
</view>
<view class="mgb">
<view class="pdb fl-rsbc">
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'shoujian.png'"
width="25px" height="25px"></u--image></view>
<view class="stit" >副总特价审核</view>
</view>
</view>
<view class="cardview bgwhite pdlr pdb">
<view class="fl-rsb">
<view class="pdtb10 fl-rsbc bgwhite bd1 mgr">
<u--input border="none" placeholder="出厂价" v-model="jjForm.sjlxr" type="string"
clearable></u--input>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<u--input border="none" placeholder="加价金额" v-model="jjForm.sjlxrdh" type="number"
clearable></u--input>
</view>
</view>
<view class="fl-gr2 bgwhite">
<checkbox-group @change="radioChange" class="pdt10 bgwhite">
<view style="font-size: 16px; width:110px;" >
<checkbox color="#2452D1"
style="transform: translateX(-3px) scale(0.6);" />加价
</view>
</checkbox-group>
</view>
</view>
</view>
<view class="pdb">
<uploadfile @uploadDone="uploadDone" />
</view>
<view class="fix-area bgwhite">
<view class="pdlr pdt">
<u-button type="primary" class="confirm-btn" @click="onJijianSQ">提交</u-button>
</view>
</view>
</u--form>
<u-popup mode="bottom" bgColor="#FFF" :round="10" :show="isShowlyJjr" @close="isShowlyJjr = false">
<view class="pd">
<view class="fl-rsbc pdb">
<view class="stit">选择项目:</view>
<view class="cu" @click="isShowlyJjr = false">
<u--image :showLoading="true" :src="imgbaseUrl + 'close.png'" width="18px"
height="18px"></u--image>
</view>
</view>
<UserList :list="jjrList" @selected="userListSelected" />
</view>
</u-popup>
</view>
</template>
<script>
import CardTit from '@/components/cardTit.vue';
import UserList from '@/components/userList.vue'
import uploadfile from '@/components/uploadfile.vue'
import {
CommonApi
} from "@/config/commonApi.js";
import {
CommonUtil
} from '@/dev/core/utils/common.util.js'
import {
mapGetters,
mapState
} from 'vuex';
export default {
components: {
CardTit,
UserList,
uploadfile
},
data() {
return {
imgbaseUrl: this.$globalv.imgBaseUrl,
pageTitle: "报价申请",
fileList: [{
fileName: '2024-09-01 物品清单附件1'
}],
jjForm: {
njpm: "",
"jjr": "",
"jjrdh": "",
"jjbz": "",
jjrName: "",
reasons: "",
cgDate: Date.now(),
jfDate: new Date().getTime(),
company: '',
type: 0,
remark: ''
},
dataTree: [],
citys: [],
address: "",
isShowlyJjr: false,
jjrList: [],
};
},
created() {},
computed: {
...mapGetters(['isLoggedIn']),
...mapState({
userInfo: state => state.userStore.userInfo,
})
},
onLoad() {
// 设置首页标题
uni.setNavigationBarTitle({
title: this.pageTitle
});
this.initData()
},
methods: {
async initData() {
try {
// 获取地址列表
let temp = await CommonApi.getTBList("dict_dq");
this.jjrList = await CommonApi.getWupinTypeList("sys_staffdef");
// 对地址列表进行转换,提取需要的属性
temp = temp.map(item => ({
value: item.id,
text: item.mc,
pxm: item.pxm,
scid: item.scid,
}));
// 对地址列表进行分组
let grouped = await this.groupedArray(temp, 'pxm');
// 提取特定分组,并进行进一步分组
let sheng = grouped[2]; // 假设2是省级分组索引
let shiGrouped = this.groupedArray(sheng ? sheng.children : [], 'scid');
let quGrouped = {};
Object.keys(shiGrouped).forEach(key => {
quGrouped[key] = this.groupedArray(shiGrouped[key].children, 'scid');
});
// 构建最终的树形结构
Object.keys(shiGrouped).forEach(key => {
if (quGrouped[key]) {
shiGrouped[key].children = quGrouped[key];
}
});
if (sheng) {
sheng.children = Object.values(shiGrouped);
}
// 打印结果
console.log(sheng);
this.dataTree = sheng
} catch (error) {
// 处理可能出现的错误
console.error('initData error:', error);
}
},
groupedArray(array, cname) {
return array.reduce((groups, item) => {
const category = item[cname];
if (!groups[category]) {
groups[category] = {
children: []
};
}
groups[category].children.push(item);
return groups;
}, {});
},
checkData() {
console.log(this.jjForm)
if (this.jjForm.njpm == null) {
this.$refs.uNotify.show({
type: 'error',
message: '请填写内件品名!',
fontSize: "32"
})
return false
}
if (this.jjForm.remark == "" || this.jjForm.remark == null) {
this.$refs.uNotify.show({
type: 'error',
message: '请填写申请事由!',
fontSize: 32
})
return false
}
if (this.goodsList.length <= 0) {
this.$refs.uNotify.show({
type: 'error',
message: '物品清单为空!',
fontSize: 32
})
return false
}
return true
},
onJijianSQ() {
// if (this.checkData()) {
const data = {
"sjlxr": this.jjForm.sjlxr,
"sjlxrdh": this.jjForm.sjlxrdh,
"sjdw": this.jjForm.sjdw,
"sjdz": this.citys + this.address,
"njpm": this.jjForm.njpm,
"jjr": this.jjForm.jjr,
"jjrdh": this.jjForm.jjrdh,
"jjbz": this.jjForm.jjbz,
"row_guid": CommonUtil.randomUUIDNew(),
"sqbm": this.userInfo.deptid,
"sqrq": uni.$u.timeFormat(Date.now(), 'yyyy-mm-dd hh:MM:ss'),
"sqr": this.userInfo.st_id,
};
console.log("onJijianSQ:", JSON.stringify(data));
uni.$u.http.post('/xzgl/jjsqAdd', data).then(data => {
console.log(data);
// 数据处理:
uni.setStorage({
key: 'cgList',
data: data
})
uni.navigateBack()
}).catch(err => {
uni.$u.toast(err)
})
// }
},
userListSelected(e) {
console.log("userListSelected", e)
this.jjForm.jjrName = e.name
this.jjForm.jjr = e.value
this.isShowlyJjr = false
this.$emit("update", this.jjForm)
},
onpopupclosed() {
},
onpopupopened() {
},
},
onReady() {},
};
</script>
<style scoped lang="scss">
.input-value {
font-size: 16px !important;
padding: 0px !important;
}
</style>
\ No newline at end of file
......@@ -140,7 +140,7 @@
},
toAddSL() {
uni.navigateTo({
url: '/pages/workSpace/jijian/jijianSQ',
url: '/pages/workSpace/crm/baojia/bjSQ',
events: {
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
acceptDataFromOpenedPage: function(data) {
......
......@@ -44,37 +44,81 @@
</view>
<view class="fl-rsb">
<view class="pdtb10 fl-rsbc bgwhite bd1 mgr">
<u--input border="none" placeholder="请输入姓名" v-model="jjForm.sjlxr" type="string"
<u--input border="none" placeholder="保证金类型" v-model="jjForm.sjlxr" type="string"
clearable></u--input>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<u--input border="none" placeholder="请输入电话" v-model="jjForm.sjlxrdh" type="number"
<u--input border="none" placeholder="付款方式" v-model="jjForm.sjlxrdh" type="number"
clearable></u--input>
</view>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--input border="none" placeholder="招标代理" type="string"
<view class="fl-rsb">
<view class="pdtb10 fl-rsbc bgwhite bd1 mgr">
<u--input border="none" placeholder="保证金金额" v-model="jjForm.sjlxr" type="string"
clearable></u--input>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<u--input border="none" placeholder="委托人" v-model="jjForm.sjlxrdh" type="number"
clearable></u--input>
</view>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--input border="none" placeholder="招标代理" type="string"
<view class="pdtb5 fl-rsbc bgwhite bd1">
要求打款日期:<uni-datetime-picker :border="false" returnType="timestamp" @change="selectedPicker($event)" type="date" :end="Date.now() + 10000000000000"
:start="Date.now()" />
</view>
<view class="pdtb5 fl-rsbc bgwhite bd1">
预计回收时间:<uni-datetime-picker :border="false" returnType="timestamp" @change="selectedPicker($event)" type="date" :end="Date.now() + 10000000000000"
:start="Date.now()" />
</view>
<view class="fl-rsb">
<view class="pdtb10 fl-rsbc bgwhite bd1 mgr">
<u--input border="none" placeholder="开户银行" v-model="jjForm.sjlxr" type="string"
clearable></u--input>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<u--input border="none" placeholder="行号" v-model="jjForm.sjlxrdh" type="number"
clearable></u--input>
</view>
</view>
<view class="fl-rsb">
<view class="pdtb10 fl-rsbc bgwhite bd1 mgr">
<u--input border="none" placeholder="开户人" v-model="jjForm.sjlxr" type="string"
clearable></u--input>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<u--input border="none" placeholder="账号" v-model="jjForm.sjlxrdh" type="number"
clearable></u--input>
</view>
</view>
<view class="pdtb5 fl-rsbc bgwhite bd1">
保函有效期:<uni-datetime-picker :border="false" returnType="timestamp" @change="selectedPicker($event)" type="date" :end="Date.now() + 10000000000000"
:start="Date.now()" />
</view>
<view class="fl-rsb">
<view class="pdtb10 fl-rsbc bgwhite bd1 mgr">
<u--input border="none" placeholder="经办人" v-model="jjForm.sjlxr" type="string"
clearable></u--input>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<u--input border="none" placeholder="退款联系人" v-model="jjForm.sjlxrdh" type="number"
clearable></u--input>
</view>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--input border="none" placeholder="招标代理" type="string"
<u--input border="none" placeholder="退款联系方式" type="string"
clearable></u--input>
</view>
</view>
<view class="pdtb5 fl-rsbc bgwhite bd1">
经办日期:<uni-datetime-picker :border="false" returnType="timestamp" @change="selectedPicker($event)" type="date" :end="Date.now() + 10000000000000"
:start="Date.now()" />
</view>
</view>
<view class="pdlr pdt">
<view class="w100 fl-rsbc bgwhite cu">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--textarea height="140" v-model="jjForm.njpm" placeholder="请输入内件品名"
<u--textarea height="140" v-model="jjForm.njpm" placeholder="备注"
count></u--textarea>
</view>
</view>
......@@ -86,42 +130,34 @@
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'shoujian.png'"
width="25px" height="25px"></u--image></view>
<view class="stit" style="width: 80px;">收件人信息</view>
<view class="stit" >承担金额分项</view>
</view>
</view>
<view class="cardview bgwhite pdlr pdb">
<view class="fl-rsb">
<view class="pdtb10 fl-rsbc bgwhite bd1 mgr">
<u--input border="none" placeholder="请输入姓名" v-model="jjForm.sjlxr" type="string"
<u--input border="none" placeholder="冻结业务费金额" v-model="jjForm.sjlxr" type="string"
clearable></u--input>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<u--input border="none" placeholder="请输入电话" v-model="jjForm.sjlxrdh" type="number"
<u--input border="none" placeholder="销售员打款金额" v-model="jjForm.sjlxrdh" type="number"
clearable></u--input>
</view>
</view>
<view class="pdtb10 fl-rsbc bgwhite bd1">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--input border="none" placeholder="请输入单位" v-model="jjForm.sjlxrdh" type="string"
<view class="fl-gr2 bgwhite">
<view class="w100 pdtb10 fl-rsbc bgwhite cu bd1">
<u--input border="none" placeholder="公司承担金额" v-model="jjForm.sjlxrdh" type="string"
clearable></u--input>
</view>
</view>
<view class="pdtb5 fl-rsbc bgwhite bd1">
<view class="w100 ">
<uni-data-picker placeholder="请选择省/市" popup-title="请选择所在地区" :localdata="dataTree"
v-model="citys" @change="onchange" @nodeclick="onnodeclick" @popupopened="onpopupopened"
@popupclosed="onpopupclosed" :border="false">
</uni-data-picker>
<view class="pdt">
<view type="primary" size="mini" class="minibtn tc" @click="onJijianSQ">查看业务费余额</view>
</view>
</view>
<u-form-item label="" class="bd1" labelPosition="left" prop="rzForm." ref="item1">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--input border="none" placeholder="详细地址" v-model="address" type="string"
clearable></u--input>
</view>
</u-form-item>
</view>
</view>
<view class="pdb">
<uploadfile @uploadDone="uploadDone" />
</view>
<view class="fix-area bgwhite">
<view class="pdlr pdt">
......@@ -147,6 +183,7 @@
<script>
import CardTit from '@/components/cardTit.vue';
import UserList from '@/components/userList.vue'
import uploadfile from '@/components/uploadfile.vue'
import {
CommonApi
} from "@/config/commonApi.js";
......@@ -160,7 +197,8 @@
export default {
components: {
CardTit,
UserList
UserList,
uploadfile
},
data() {
return {
......
<template>
<view>
</view>
</template>
<script>
export default {
data() {
return {
}
},
methods: {
}
}
</script>
<style>
</style>
<template>
<view>
</view>
</template>
<script>
export default {
data() {
return {
}
},
methods: {
}
}
</script>
<style>
</style>
<template>
<view class="bggray cardpd relative h100">
<view class="pdb">
<u-search :searchIconSize="44" :height="78" v-model="keyword" shape="round" bgColor="#FFF" borderColor="#eee" actionText="检索" :clearabled="true" :actionStyle="{ 'background':'rgb(36, 82, 209)','color':'#FFF',padding:'9px 9px', borderRadius:'8px' }" @custom="searchGoods"></u-search>
</view>
<view v-if="sqList.length > 0">
<view v-for="(item,index) in sqList" class="mgb" @click="toDetail(item)">
<view class="pd bgwhite cardview">
<view class="fl">
<view class="mgb10">
<view class="stit fl">
<view class="leftsite mgr10"></view>产品编号:KLK099875J
</view>
</view>
</view>
<view class="mgb10 stit">产品名称</view>
<view class="fl-gr2 mgb10">
<view class="fl">
<text class="dectext">型号规格:</text>
<text class="desctit">ADHKHK</text>
</view>
<view class="fl">
<text class="dectext">单位:</text>
<text class="desctit">ADHKHK</text>
</view>
</view>
<view class="fl-gr2 mgb10">
<view class="fl">
<text class="dectext">电压等级:</text>
<text class="desctit">ADHKHK</text>
</view>
<view class="fl">
<text class="dectext">材质:</text>
<text class="desctit">ADHKHK</text>
</view>
</view>
<view class="fl-gr2 mgb10">
<view class="fl">
<text class="dectext">容里:</text>
<text class="desctit">ADHKHK</text>
</view>
<view class="fl">
<text class="dectext">设定人:</text>
<text class="desctit">ADHKHK</text>
</view>
</view>
<view class="fl-gr2">
<view class="desc">设定日期:2024-05-01</view>
<view class="desc">有效日期:2024-05-01</view>
</view>
</view>
<view class="bottom-card">
</view>
</view>
</view>
<view v-else class="pdt mgt">
<u-empty text="暂无标准价格库列表" iconSize="80px" textSize="16px"> </u-empty>
</view>
</view>
</template>
<script>
import {
mapGetters,
mapState
} from 'vuex';
import XzCardListItem from "@/components/xzCardListItem.vue";
import store from '@/store/index.js';
export default {
components: {
XzCardListItem
},
data() {
return {
pageTitle: "标准价格库列表",
imgbaseUrl: this.$globalv.imgBaseUrl,
sqList: [{}],
sqDataList: []
};
},
onReady() {
// 设置首页标题
uni.setNavigationBarTitle({
title: this.pageTitle
});
// this.$nextTick(()=>{
this.initData()
// })
},
methods: {
initData() {
// 获取采购列表
console.log("initData");
if (this.userInfo) {
const parameter = {
"st_id": this.userInfo.st_id,
"zyid": ""
};
uni.$u.http.post('/xzgl/jjsqList', parameter).then(data => {
console.log(data);
// 数据处理:
uni.setStorage({
key: 'cgList',
data: data
})
this.sqDataList = data
this.sqList.length = 0
if (data.length > 0) {
data.map(item => {
this.sqList.push({
stid: this.userInfo.st_id,
zyid: item.zyid,
Num: item.djh,
Status: item.flowStatus,
StatusName: item.flowName,
sqrmc: item.sqrmc,
sqbmmc: item.sqbmmc,
sqDate: item.sqrq.split('T').join(" "),
bz: item.jjbz,
})
})
}
this.sqList.sort((a, b) => {
const dateA = new Date(a.sqDate).getTime();
const dateB = new Date(b.sqDate).getTime();
return dateB - dateA;
});
}).catch(err => {
uni.$u.toast(err)
})
} else {
// uni.redirectTo({
// url: '/pages/Login'
// });
}
},
toDetail(item) {
console.log("toDetail:", item)
uni.navigateTo({
url: '/pages/workSpace/jijian/jijianSQDetail',
animationType: 'pop-in',
animationDuration: 200,
events: {
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
// cgDetail: function(data) {
// console.log(data)
// },
},
success: function(res) {
// 通过eventChannel向被打开页面传送数据
uni.$emit('jjDetail', {
data: item
})
res.eventChannel.emit('jjDetail', {
data: item
})
}
});
},
toAddSL() {
uni.navigateTo({
url: '/pages/workSpace/jijian/jijianSQ',
events: {
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
acceptDataFromOpenedPage: function(data) {
console.log(data)
},
someEvent: function(data) {
console.log(data)
}
},
success: function(res) {
// 通过eventChannel向被打开页面传送数据
res.eventChannel.emit('acceptDataFromOpenerPage', {
data: 'data from starter page'
})
}
});
},
},
computed: {
...mapGetters(['isLoggedIn']),
...mapState({
userInfo: state => state.userStore.userInfo,
})
},
}
</script>
<style lang="scss">
</style>
\ No newline at end of file
<template>
<view class="bggray pdlr pdt10 relative h100">
<tab :titList="toListTit" @selectedTab="selectedTab" />
<view class="mgt" v-if="sqList.length > 0">
<view v-for="(item,index) in sqList" class="mgb" @click="toDetail(item)">
<XzCardListItem :sqItem="item" />
</view>
</view>
<view v-else class="pdt mgt">
<u-empty text="暂无项目信息列表" iconSize="80px" textSize="16px"> </u-empty>
</view>
<!-- 申请按钮 -->
<view class="floatbtn" @click="toAddSL()">
<u--image :showLoading="true" :src="imgbaseUrl + 'add.png'" width="28px" height="28px"></u--image>
</view>
</view>
</template>
<script>
import {
mapGetters,
mapState
} from 'vuex';
import XzCardListItem from "@/components/xzCardListItem.vue";
import tab from '@/components/tab.vue';
import store from '@/store/index.js';
export default {
components: {
XzCardListItem,tab
},
data() {
return {
pageTitle: "公海池",
imgbaseUrl: this.$globalv.imgBaseUrl,
toListTit: [{
name: '国内',
}, {
name: '国外',
}, ],
currentTab: 0,
sqList: [
// {djh: "XZYJ2024030001"
// flowName: "完成"
// flowStatus: 2
// jjbz: null
// jjr: 1
// jjrdh: "19238324567"
// jjrmc: "系统管理员"
// kddh: "SF1287480127029178394"
// njpm: "测试内件品"
// row_guid: "{db5a1f33-4482-46b3-9845-4e224400c6b2}"
// sjdw: "单位测试"
// sjdz: "江苏省南通市海安市"
// sjlxr: "测试"
// sjlxrdh: "18732433214"
// sjrq: "2024-03-05T00:00:00"
// sqbm: 716
// sqbmmc: null
// sqr: 1
// sqrmc: "系统管理员"
// sqrq: "2024-03-05T16:30:14"
// sskd: "顺丰"
// zyid: 1001
// zzbz: null
// },
],
sqDataList: []
};
},
onReady() {
// 设置首页标题
uni.setNavigationBarTitle({
title: this.pageTitle
});
// this.$nextTick(()=>{
this.initData()
// })
},
methods: {
selectedTab(e) {
console.log(e)
this.currentTab = e
},
initData() {
// 获取采购列表
console.log("initData");
if (this.userInfo) {
const parameter = {
"st_id": this.userInfo.st_id,
"zyid": "",
"lx":"ghc"
};
uni.$u.http.post('/crm/xmbbList', parameter).then(data => {
console.log(data);
// 数据处理:
uni.setStorage({
key: 'cgList',
data: data
})
this.sqDataList = data
this.sqList.length = 0
if(data.length > 0){
data.map(item => {
this.sqList.push({
stid: this.userInfo.st_id,
zyid: item.zyid,
Num: item.xmbh,
Status: item.xmzt,
StatusName: item.xmztmc,
sqrmc: item.lrrmc,
sqbmmc: null,
sqDate: item.lrrq.split('T').join(" "),
bz: item.jjbz,
})
})
}
this.sqList.sort((a, b) => {
const dateA = new Date(a.sqDate).getTime();
const dateB = new Date(b.sqDate).getTime();
return dateB - dateA;
});
}).catch(err => {
uni.$u.toast(err)
})
} else {
// uni.redirectTo({
// url: '/pages/Login'
// });
}
},
toDetail(item) {
console.log("toDetail:", item)
uni.navigateTo({
url: '/pages/workSpace/jijian/jijianSQDetail',
animationType: 'pop-in',
animationDuration: 200,
events: {
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
// cgDetail: function(data) {
// console.log(data)
// },
},
success: function(res) {
// 通过eventChannel向被打开页面传送数据
uni.$emit('jjDetail', {
data: item
})
res.eventChannel.emit('jjDetail', {
data: item
})
}
});
},
toAddSL() {
uni.navigateTo({
url: '/pages/workSpace/crm/xmgl/xmxxLR',
events: {
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
acceptDataFromOpenedPage: function(data) {
console.log(data)
},
someEvent: function(data) {
console.log(data)
}
},
success: function(res) {
// 通过eventChannel向被打开页面传送数据
res.eventChannel.emit('acceptDataFromOpenerPage', {
data: 'data from starter page'
})
}
});
},
},
computed: {
...mapGetters(['isLoggedIn']),
...mapState({
userInfo: state => state.userStore.userInfo,
})
},
}
</script>
<style>
<style lang="scss">
</style>
\ No newline at end of file
<template>
<view class="bggray cardpd relative h100">
<u-subsection :list="list" :current="1"></u-subsection>
<view class="bggray pdlr pdt10 relative h100">
<tab :titList="toListTit" @selectedTab="selectedTab" />
<!-- <u-subsection :list="list" :current="1"></u-subsection> -->
<view v-if="sqList.length > 0" class="mgt">
<view v-for="(item,index) in sqList" class="mgb" @click="toDetail(item)">
<XmCardListItem :sqItem="item">
......@@ -33,17 +34,23 @@
mapState
} from 'vuex';
import XmCardListItem from "@/components/xmCardListItem.vue";
import tab from '@/components/tab.vue';
import store from '@/store/index.js';
export default {
components: {
XmCardListItem
XmCardListItem,tab
},
data() {
return {
pageTitle: "项目跟踪列表",
imgbaseUrl: this.$globalv.imgBaseUrl,
list: ['进行中', '已完结 '],
current: 1,
toListTit: [{
name: '进行中',
}, {
name: '已完结',
}, ],
currentTab: 0,
// list: ['进行中', '已完结 '],
sqList: [
// {djh: "XZYJ2024030001"
// flowName: "完成"
......@@ -83,13 +90,18 @@
// })
},
methods: {
selectedTab(e) {
console.log(e)
this.currentTab = e
},
initData() {
// 获取采购列表
console.log("initData");
if (this.userInfo) {
const parameter = {
"st_id": this.userInfo.st_id,
"zyid": ""
"zyid": "",
"lx":"gz"
};
uni.$u.http.post('/crm/xmbbList', parameter).then(data => {
console.log(data);
......
<template>
<view class="bggray cardpd relative h100">
<u-subsection :list="list" :current="1"></u-subsection>
<tab :titList="toListTit" @selectedTab="selectedTab" />
<!-- <u-subsection :list="list" :current="1"></u-subsection> -->
<view v-if="sqList.length > 0" class="mgt">
<view v-for="(item,index) in sqList" class="mgb" @click="toDetail(item)">
<XmCardListItem :sqItem="item">
......@@ -42,8 +43,13 @@
return {
pageTitle: "领导确认",
imgbaseUrl: this.$globalv.imgBaseUrl,
list: ['进行中', '已完结 '],
current: 1,
toListTit: [{
name: '进行中',
}, {
name: '已完结',
}, ],
currentTab: 0,
// list: ['进行中', '已完结 '],
sqList: [
// {djh: "XZYJ2024030001"
// flowName: "完成"
......@@ -83,13 +89,18 @@
// })
},
methods: {
selectedTab(e) {
console.log(e)
this.currentTab = e
},
initData() {
// 获取采购列表
console.log("initData");
if (this.userInfo) {
const parameter = {
"st_id": this.userInfo.st_id,
"zyid": ""
"zyid": "",
"lx":"ldqr"
};
uni.$u.http.post('/crm/xmbbList', parameter).then(data => {
console.log(data);
......
......@@ -78,7 +78,8 @@
if (this.userInfo) {
const parameter = {
"st_id": this.userInfo.st_id,
"zyid": ""
"zyid": "",
"lx":"all"
};
uni.$u.http.post('/crm/xmbbList', parameter).then(data => {
console.log(data);
......
......@@ -2,12 +2,12 @@
<view class="bggray cardpd relative h100">
<view class="pd cardview bgwhite kqcard">
<!-- 地图 -->
<view class="pd" style="height:170px;">
<view class="" style="height:170px;">
<liu-easy-map ref="liuEasyMap" :centerLat="'36.05709'" :centerLng="'103.82538'" :scale="14"
:markerData="markerData" :polygons="polygons" @clickMarker="markerClick"></liu-easy-map>
</view>
<view class="pdt">
<view class="pd" style="background-color:#fcfcfc;">
<view class="pd bggray">
<view class="w100 fl-rsbc bgwhite cu">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--textarea height="120" placeholder="备注:"
......
<template>
<view class="bggray relative h100">
<u-list
@scrolltolower="scrolltolower"
>
<u-list-item
v-for="(item, index) in 10"
:key="index"
>
<u-cell
:title="`用户-${index + 1}`"
>
<u-avatar
slot="icon"
size="70"
:src="item.url"
customStyle="margin: -3px 5px -3px 0"
></u-avatar>
</u-cell>
</u-list-item>
</u-list>
</view>
</template>
......@@ -27,11 +9,10 @@
mapGetters,
mapState
} from 'vuex';
import XzCardListItem from "@/components/xzCardListItem.vue";
import store from '@/store/index.js';
export default {
components: {
XzCardListItem
},
data() {
return {
......@@ -39,18 +20,6 @@
imgbaseUrl: this.$globalv.imgBaseUrl,
sqList: [],
indexList: [],
urls: [
'https://cdn.uviewui.com/uview/album/1.jpg',
'https://cdn.uviewui.com/uview/album/2.jpg',
'https://cdn.uviewui.com/uview/album/3.jpg',
'https://cdn.uviewui.com/uview/album/4.jpg',
'https://cdn.uviewui.com/uview/album/5.jpg',
'https://cdn.uviewui.com/uview/album/6.jpg',
'https://cdn.uviewui.com/uview/album/7.jpg',
'https://cdn.uviewui.com/uview/album/8.jpg',
'https://cdn.uviewui.com/uview/album/9.jpg',
'https://cdn.uviewui.com/uview/album/10.jpg',
]
};
},
onReady() {
......@@ -63,15 +32,7 @@
// })
},
methods: {
scrolltolower() {
this.loadmore()
},
loadmore() {
for (let i = 0; i < 30; i++) {
this.indexList.push({
url: this.urls[uni.$u.random(0, this.urls.length - 1)]
})
}
},
initData() {
// 获取采购列表
......
......@@ -21,22 +21,22 @@
<u-icon :name='isFold? "arrow-up" : "arrow-down" ' color="#333"></u-icon>
</view>
<view class="fl">
<u-rate activeColor="#ffb700" :count="5" :size="36" v-model="pf"></u-rate>
<u-rate activeColor="#ffb700" readonly :count="5" :size="36" v-model="pf"></u-rate>
<view class="stit">{{ pf.toFixed(1) }}</view>
</view>
</view>
</view>
<view class="pdb10" v-if="isFold">
<view class="fl mgb5">
<!-- <view class="fl-wrap mgb5">
<text class="desctext">关联项目:</text>
<text class="desctit">
江苏亚威机电XXXJKLDI001项目名称
江苏亚威机电XXXJKLDI001
</text>
</view>
</view> -->
<view class="fl">
<text class="desctext">抄送</text>
<text class="desctext">关联项目</text>
<text class="desctext">
<u-tag text="张三" plain size="mini"></u-tag>
<u-tag text="江苏亚威机电XXXJKLDI001" plain size="mini"></u-tag>
</text>
</view>
</view>
......@@ -59,7 +59,7 @@
</view>
</view>
<view class="rz-tools fl-rsb mgt" v-if="isFold">
<view class="fl">
<view class="fl mgr">
<view class="fl mgr">
<u--image :showLoading="true" :src="imgbaseUrl + 'pl.png'" width="18px" height="18px" class="mgr5"></u--image><text class="desctit">999+</text>
</view>
......@@ -67,7 +67,7 @@
<u--image :showLoading="true" :src="imgbaseUrl + 'zan.png'" width="19px" height="19px" class="mgr5"></u--image><text class="desctit">56</text>
</view>
</view>
<view>
<view class="mgl">
<view class="w100 pdb10 bgwhite cu bd1 fl" @click="isAddPl = true">
<u--image :showLoading="true" :src="imgbaseUrl + 'xpl.png'" width="19px" height="19px" class="mgr5"></u--image>
<u--input border="none" placeholder="写下评论:" type="string"
......@@ -101,6 +101,11 @@
<u--textarea height="140" placeholder="评论内容:" count></u--textarea>
</view>
</view>
<view class="fl mgt">
点评:
<u-rate activeColor="#ffb700" :count="5" :size="45" v-model="pf"></u-rate>
<view class="stit mgl10">{{ pf.toFixed(1) }}</view>
</view>
<view class="fix-area bgwhite" @click="handleConfirm">
<view class="pdlr pdt">
<u-button type="primary" class="confirm-btn">发送</u-button>
......
......@@ -8,25 +8,65 @@
<view class="stit wcolor" style="width: 80px;">基本信息</view>
</view>
</view> -->
<view class="mgb10 cardview bgwhite bluebg2">
<view class="mgb cardview bgwhite bluebg2">
<view class="pdt10">
<view class=" pdlr pdb">
<view class=" pdlr pdb10">
<view class="pdb10 fl-rsb">
<view class="stit">今日工作总结:</view>
<view class=" desc fl" ><u--image :showLoading="true" :src="imgbaseUrl + 'time.png'" width="14px" height="14px" class="mgr5"></u--image>{{ $u.timeFormat(0, 'yyyy-mm-dd') }}</view>
</view>
<view class="w100 fl-rsbc cu">
<view class="w100 fl-rsbc cu bdr">
<u--textarea height="610" v-model="rzForm.bz" placeholder="备注"
<u--textarea height="310" v-model="rzForm.bz" placeholder="备注"
count></u--textarea>
</view>
</view>
<view class="w100 pdtb10 fl-rsbc bgwhite bd1">
<u--input border="none" placeholder="关联项目" type="string" clearable></u--input>
</view>
<view class=" pdlr pdb10">
<view class="pdb10 fl-rsb">
<view class="stit">明日工作计划:</view>
<view class=" desc fl" ><u--image :showLoading="true" :src="imgbaseUrl + 'time.png'" width="14px" height="14px" class="mgr5"></u--image>{{ $u.timeFormat(0, 'yyyy-mm-dd') }}</view>
</view>
<view class="w100 fl-rsbc cu">
<view class="w100 fl-rsbc cu bdr">
<u--textarea height="310" v-model="rzForm.bz" placeholder="备注"
count></u--textarea>
</view>
</view>
</view>
<view class=" pdlr pdb10">
<view class="pdb10 fl-rsb">
<view class="stit">工作心得体会:</view>
<view class=" desc fl" ><u--image :showLoading="true" :src="imgbaseUrl + 'time.png'" width="14px" height="14px" class="mgr5"></u--image>{{ $u.timeFormat(0, 'yyyy-mm-dd') }}</view>
</view>
<view class="w100 fl-rsbc cu">
<view class="w100 fl-rsbc cu bdr">
<u--textarea height="310" v-model="rzForm.bz" placeholder="备注"
count></u--textarea>
</view>
</view>
</view>
</view>
</view>
<view class="pdb fl-rsbc">
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'jibenxinxi.png'" width="25px" height="25px"></u--image></view>
<view class="stit" style="width: 80px;">关联项目</view>
</view>
<view @click="isShowBfr = true" class="cu"><u--image :showLoading="true"
:src="imgbaseUrl + 'add_circle_small.png'" width="28px" height="28px"></u--image>
</view>
</view>
<view v-if="glxmList.length > 0">
<view class="cardview bgwhite pd mgb" v-for="(item,index) in glxmList" :key="index">
</view>
</view>
<view v-else>
<view class="cardview bgwhite mgb pd emtpd">
<u-empty text="关联项目为空" iconSize="60px" textSize="14px"> </u-empty>
</view>
</view>
<view class="mgb10 cardview pd bgwhite">
<view class="fl-rsb">
<view>发送给:</view>
......@@ -54,7 +94,7 @@
<u-popup mode="bottom" bgColor="#FFF" :round="10" :show="isShowBfr" @close="isShowBfr = false">
<view class="pd">
<view class="fl-rsbc pdb">
<view class="stit">选择拜访人</view>
<view class="stit">选择关联项目</view>
<view class="cu" @click="isShowBfr = false">
<u--image :showLoading="true" :src="imgbaseUrl + 'close.png'" width="18px"
height="18px"></u--image>
......@@ -104,6 +144,7 @@
},
isShowBfr:false,
bfrList: [],
glxmList:[],
};
},
computed: {
......
<template>
<view class="bggray cardpd relative h100">
<view class="pdb">
<u-search :searchIconSize="44" :height="78" v-model="keyword" shape="round" bgColor="#FFF" borderColor="#eee" actionText="检索" :clearabled="true" :actionStyle="{ 'background':'rgb(36, 82, 209)','color':'#FFF',padding:'9px 9px', borderRadius:'8px' }" @custom="searchGoods"></u-search>
</view>
<view v-if="sqList.length > 0">
<view v-for="(item,index) in sqList" class="mgb" @click="toDetail(item)">
<view class="pd bgwhite cardview">
<view class="fl">
<view class="mgb10">
<view class="stit fl">
<view class="leftsite mgr10"></view>产品编号:KLK099875J
</view>
</view>
</view>
<view class="mgb10 stit">产品名称</view>
<view class="fl-gr2 mgb10">
<view class="fl">
<text class="dectext">型号规格:</text>
<text class="desctit">ADHKHK</text>
</view>
<view class="fl">
<text class="dectext">单位:</text>
<text class="desctit">ADHKHK</text>
</view>
</view>
<view class="fl-gr2 mgb10">
<view class="fl">
<text class="dectext">电压等级:</text>
<text class="desctit">ADHKHK</text>
</view>
<view class="fl">
<text class="dectext">材质:</text>
<text class="desctit">ADHKHK</text>
</view>
</view>
<view class="fl-gr2 mgb10">
<view class="fl">
<text class="dectext">容里:</text>
<text class="desctit">ADHKHK</text>
</view>
<view class="fl">
<text class="dectext">设定人:</text>
<text class="desctit">ADHKHK</text>
</view>
</view>
<view class="fl-gr2">
<view class="desc">设定日期:2024-05-01</view>
<view class="desc">有效日期:2024-05-01</view>
</view>
</view>
<view class="bottom-card">
</view>
</view>
</view>
<view v-else class="pdt mgt">
<u-empty text="暂无业务费账单" iconSize="80px" textSize="16px"> </u-empty>
</view>
</view>
</template>
<script>
import {
mapGetters,
mapState
} from 'vuex';
import XzCardListItem from "@/components/xzCardListItem.vue";
import store from '@/store/index.js';
export default {
components: {
XzCardListItem
},
data() {
return {
pageTitle: "业务费账单",
imgbaseUrl: this.$globalv.imgBaseUrl,
sqList: [{}],
sqDataList: []
};
},
onReady() {
// 设置首页标题
uni.setNavigationBarTitle({
title: this.pageTitle
});
// this.$nextTick(()=>{
this.initData()
// })
},
methods: {
initData() {
// 获取采购列表
console.log("initData");
if (this.userInfo) {
const parameter = {
"st_id": this.userInfo.st_id,
"zyid": ""
};
uni.$u.http.post('/xzgl/jjsqList', parameter).then(data => {
console.log(data);
// 数据处理:
uni.setStorage({
key: 'cgList',
data: data
})
this.sqDataList = data
this.sqList.length = 0
if (data.length > 0) {
data.map(item => {
this.sqList.push({
stid: this.userInfo.st_id,
zyid: item.zyid,
Num: item.djh,
Status: item.flowStatus,
StatusName: item.flowName,
sqrmc: item.sqrmc,
sqbmmc: item.sqbmmc,
sqDate: item.sqrq.split('T').join(" "),
bz: item.jjbz,
})
})
}
this.sqList.sort((a, b) => {
const dateA = new Date(a.sqDate).getTime();
const dateB = new Date(b.sqDate).getTime();
return dateB - dateA;
});
}).catch(err => {
uni.$u.toast(err)
})
} else {
// uni.redirectTo({
// url: '/pages/Login'
// });
}
},
toDetail(item) {
console.log("toDetail:", item)
uni.navigateTo({
url: '/pages/workSpace/jijian/jijianSQDetail',
animationType: 'pop-in',
animationDuration: 200,
events: {
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
// cgDetail: function(data) {
// console.log(data)
// },
},
success: function(res) {
// 通过eventChannel向被打开页面传送数据
uni.$emit('jjDetail', {
data: item
})
res.eventChannel.emit('jjDetail', {
data: item
})
}
});
},
toAddSL() {
uni.navigateTo({
url: '/pages/workSpace/jijian/jijianSQ',
events: {
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
acceptDataFromOpenedPage: function(data) {
console.log(data)
},
someEvent: function(data) {
console.log(data)
}
},
success: function(res) {
// 通过eventChannel向被打开页面传送数据
res.eventChannel.emit('acceptDataFromOpenerPage', {
data: 'data from starter page'
})
}
});
},
},
computed: {
...mapGetters(['isLoggedIn']),
...mapState({
userInfo: state => state.userStore.userInfo,
})
},
}
</script>
<style lang="scss">
</style>
\ No newline at end of file
<template>
<view class="detailPage bggray h100">
<u--form labelPosition="top" :model="yyForm" :rules="rules" labelWidth="400" ref="uForm">
<view class="pdb10">
<view class="pdb fl-rsbc">
<view class="fl">
<view class="cu mgr5"><u--image :showLoading="true" :src="imgbaseUrl + 'jibenxinxi.png'" width="25px" height="25px"></u--image></view>
<view class="stit wcolor" style="width: 80px;">基本信息</view>
</view>
</view>
<view class="mgb10 cardview bgwhite bluebg2">
<!-- <CardTit title="预约人信息填写" icon="fkyy.png" :userInfo="userInfo" :iDate="jfDate" /> -->
<view class="pdt10">
<!-- <view class="fl-rsbc pdlr bluebg pdt pdlr">
<view class="fl">
<view class="mgr5">
<u--image :showLoading="true" :src="imgbaseUrl + 'fkyy.png'" width="24px" height="24px"></u--image>
</view>
<view class="stit">
</view>
</view>
</view> -->
<view class=" pdlr pdb">
<view class="fl-rsb">
<view class=" mgr">
<view class="pdtb10 fl-rsbc bd1">
<u--input border="none" v-model="yyForm.userName" :maxlength="10" placeholder="姓名(必填)" type="string"
clearable></u--input>
</view>
</view>
<view class="">
<view class="pdtb10 fl-rsbc bd1">
<u--input border="none" v-model="yyForm.phone" :maxlength="10" placeholder="电话(必填)" type="number"
clearable></u--input>
</view>
</view>
</view>
<view class="">
<view class="pdtb10 fl-rsbc bd1">
<u--input border="none" v-model="yyForm.userID" :maxlength="10" placeholder="身份证号码" type="string"
clearable></u--input>
</view>
</view>
<view class="">
<view class="pdtb10 fl-rsbc bd1">
<u--input border="none" v-model="yyForm.carNum" :maxlength="10" placeholder="车牌号" type="string"
clearable></u--input>
</view>
</view>
<view class="">
<view class="bd1 pdtb10 mgb5 fl-rsbc bgwhite cu" @click="isShowBfr = true">
<view class="">
<u--input v-model="yyForm.bfrName" readonly placeholder="拜访人(必填)" border="none"></u--input>
</view>
<view class="cu mgr5"><u-icon name="arrow-down"></u-icon></view>
</view>
</view>
<view class="pdtb5 fl-rsbc bgwhite bd1">
<uni-datetime-picker :border="false" returnType="timestamp" v-model="yyForm.yyjcrq" placeholder="请选择预约进厂日期" @change="selectedPicker($event)" type="date" :end="Date.now() + 10000000000000"
:start="Date.now()" />
</view>
<view class="pdtb5 fl-rsbc bgwhite bd1">
<uni-datetime-picker :border="false" returnType="timestamp" v-model="yyForm.yyccrq" placeholder="请选择出厂日期" @change="selectedPicker($event)" type="date" :end="Date.now() + 10000000000000"
:start="Date.now()" />
</view>
<!-- <view class="pdt10 fl-rsbc mgb10 bgwhite">
<view class="w100 fl-rsbc bgwhite cu bdr">
<checkbox-group @change="radioChange" class="fl-wrap">
<view style="font-size: 16px; width:120px;" >
<checkbox color="#2452D1" style="transform: translateX(-3px) scale(0.6);" />生产区
</view>
<view style="font-size: 16px; width:110px;" >
<checkbox color="#2452D1" style="transform: translateX(-3px) scale(0.6);" />组织会议
</view>
</checkbox-group>
</view>
</view> -->
<!-- <view class="fl-rsbc pdtb10 mgtb5">
<view>是否进入生产区</view>
<view class="fl"><u-switch v-model="isIn" @change="changeExpense" size="40"></u-switch>
</view>
</view> -->
<!-- <view class="pdtb">
<view class="stit">来访事由:</view>
</view> -->
<view class="w100 pdt10 fl-rsbc bgwhite cu">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--textarea height="140" v-model="yyForm.yySy" placeholder="请输入事由(必填)"
count></u--textarea>
</view>
</view>
<view class="w100 pdt10 fl-rsbc bgwhite cu">
<view class="w100 fl-rsbc bgwhite cu bdr">
<u--textarea height="140" v-model="yyForm.bz" placeholder="备注"
count></u--textarea>
</view>
</view>
</view>
</view>
</view>
<view class="fix-area bgwhite">
<view class="pdlr pdt">
<u-button type="primary" class="confirm-btn" @click="onFangkeYY">提交</u-button>
</view>
</view>
</view>
</u--form>
<u-popup mode="bottom" bgColor="#FFF" :round="10" :show="isShowBfr" @close="isShowBfr = false">
<view class="pd">
<view class="fl-rsbc pdb">
<view class="stit">选择拜访人:</view>
<view class="cu" @click="isShowBfr = false">
<u--image :showLoading="true" :src="imgbaseUrl + 'close.png'" width="18px"
height="18px"></u--image>
</view>
</view>
<UserList :list="bfrList" @selected="userListSelected" />
</view>
</u-popup>
</view>
</template>
<script>
import CardTit from '@/components/cardTit.vue'
import UserList from '@/components/userList.vue'
import {
CommonApi
} from "@/config/commonApi.js";
import {
CommonUtil
} from '@/dev/core/utils/common.util.js'
import {
mapGetters,
mapState
} from 'vuex';
export default {
components: {
CardTit,UserList
},
data() {
return {
pageTitle: "业务费支付申请",
imgbaseUrl: this.$globalv.imgBaseUrl,
yyForm: {
isIn: false,
userName:"",
phone:"",
userID:"",
carNum:"",
yySy:"",
bz:"",
bfrName: "",
bfr: "",
yyccrq:"",
yyjcrq:"",
},
rules: {
},
isShowBfr:false,
bfrList: [],
};
},
computed: {
...mapGetters(['isLoggedIn']),
...mapState({
userInfo: state => state.userStore.userInfo,
})
},
onLoad() {
// 设置首页标题
uni.setNavigationBarTitle({
title: this.pageTitle
});
this.initData()
},
methods: {
async initData(){
this.bfrList = await CommonApi.getWupinTypeList("sys_staffdef");
},
checkData() {
console.log(this.yyForm)
if (this.yyForm.njpm == null) {
this.$refs.uNotify.show({
type: 'error',
message: '请填写内件品名!',
fontSize: "32"
})
return false
}
if (this.yyForm.remark == "" || this.yyForm.remark == null) {
this.$refs.uNotify.show({
type: 'error',
message: '请填写申请事由!',
fontSize: 32
})
return false
}
if (this.goodsList.length <= 0) {
this.$refs.uNotify.show({
type: 'error',
message: '物品清单为空!',
fontSize: 32
})
return false
}
return true
},
onFangkeYY() {
// if (this.checkData()) {
const data = {
"yyjcrq": uni.$u.timeFormat(this.yyForm.yyjcrq, 'yyyy-mm-dd hh:MM:ss'),
"yyccrq": uni.$u.timeFormat(this.yyForm.yyccrq, 'yyyy-mm-dd hh:MM:ss'),
"fkxm": this.yyForm.userName,
"zjh": this.yyForm.userID,
"cph": this.yyForm.carNum,
"lxfs": this.yyForm.phone,
"sy": this.yyForm.yySy,
"bfr": this.yyForm.bfr,
"bz": this.yyForm.bz,
"row_guid": CommonUtil.randomUUIDNew(),
"sqbm": this.userInfo.deptid,
"sqrq": uni.$u.timeFormat(Date.now(), 'yyyy-mm-dd hh:MM:ss'),
"sqr": this.userInfo.st_id,
};
console.log("onFangkeYY:", JSON.stringify(data));
uni.$u.http.post('/xzgl/fkyyAdd', data).then(data => {
console.log(data);
// 数据处理:
uni.setStorage({
key: 'fkyyAdd',
data: data
})
uni.navigateBack()
}).catch(err => {
uni.$u.toast(err)
})
// }
},
userListSelected(e) {
console.log("userListSelected", e)
this.yyForm.bfrName = e.name
this.yyForm.bfr = e.value
this.isShowBfr = false
this.$emit("update", this.yyForm)
},
onpopupclosed() {
},
onpopupopened() {
},
},
onReady() {
},
};
</script>
\ No newline at end of file
......@@ -127,9 +127,9 @@
[
[
{
name: 'xmxx.png',
name: 'xmcj1.png',
title: '项目创建',
url: 'pages/workSpace/crm/xmgl/xmxxList',
url: 'pages/workSpace/crm/xmgl/xmxxLR',
},
{
name: 'xmgz.png',
......@@ -142,7 +142,7 @@
url: 'pages/workSpace/crm/xmgl/xmxxLDList',
},
{
name: 'ghc.png',
name: 'ghc2.png',
title: '公海池',
url: 'pages/workSpace/crm/xmgl/chi',
},
......@@ -154,12 +154,12 @@
url: 'pages/workSpace/crm/xsy/xsyRZ',
},
{
name: 'wqdk.png',
name: 'wqdk1.png',
title: '外勤打卡',
url: 'pages/workSpace/crm/xsy/xsyDk',
},
{
name: 'xsydk.png',
name: 'xsydk1.png',
title: '附近的人',
url: 'pages/workSpace/crm/xsy/xsyFJ',
},
......@@ -181,14 +181,14 @@
url: 'pages/workSpace/crm/bzj/bzjSQList',
},
{
name: 'bjsq.png',
name: 'bjsq1.png',
title: '报价申请',
url: 'pages/workSpace/crm/baojia/bjSQList',
},
{
name: 'jgk.png',
title: '价格库',
url: 'pages/workSpace/gongzi/gongzi',
url: 'pages/workSpace/crm/jiageku/jiageku',
},
],
[
......@@ -202,29 +202,29 @@
{
name: 'htqr.png',
title: '合同确认',
url: 'pages/workSpace/gongzi/gongzi',
url: 'pages/workSpace/crm/htgl/htqr',
},
{
name: 'htgl.png',
name: 'htgl1.png',
title: '合同进度',
url: 'pages/workSpace/gongzi/gongzi',
url: 'pages/workSpace/crm/htgl/htjd',
},
{
name: 'wdyj.png',
title: '我的业绩',
url: 'pages/workSpace/gongzi/gongzi',
url: 'pages/workSpace/crm/htgl/gongzi',
},
],
[
{
name: 'ywfzd.png',
title: '业务费账单',
url: 'pages/workSpace/gongzi/gongzi',
url: 'pages/workSpace/crm/ywf/ywfZD',
},
{
name: 'ywfsq.png',
name: 'ywfzd1.png',
title: '业务费支付',
url: 'pages/workSpace/gongzi/gongzi',
url: 'pages/workSpace/crm/ywf/ywfZF',
},
]
],
......
......@@ -496,6 +496,7 @@ p{ margin: 0px; }
font-size: 12px;
display: flex;
align-items: center;
justify-content: center;
}
.pribtn{
color: #FFF;
......@@ -915,4 +916,9 @@ vertical-align: top;
}
.emtpd{
padding: 30px 0px;
}
.fl-gr2{
display: grid;
grid-template-columns: 50% 50%;
grid-template-rows: 1fr;
}
\ No newline at end of file
static/icon/ywfzd.png

2.8 KB | W: | H:

static/icon/ywfzd.png

1.9 KB | W: | H:

static/icon/ywfzd.png
static/icon/ywfzd.png
static/icon/ywfzd.png
static/icon/ywfzd.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -281,7 +281,8 @@
border-radius: 14rpx;
position: fixed;
top: 154rpx;
right: 20rpx;
right: 60rpx;
z-index: 99;
}
.boxitem {
......
......@@ -496,6 +496,7 @@ p{ margin: 0px; }
font-size: 12px;
display: flex;
align-items: center;
justify-content: center;
}
.pribtn{
color: #FFF;
......@@ -915,4 +916,9 @@ vertical-align: top;
}
.emtpd{
padding: 30px 0px;
}
.fl-gr2{
display: grid;
grid-template-columns: 50% 50%;
grid-template-rows: 1fr;
}
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册