Browse Source

Merge remote-tracking branch 'origin/v2' into v2

# Conflicts:
#	src/views/enforce/sign.vue
v2
chenrui 2 years ago
parent
commit
15728cda36
  1. 3
      src/common/globalRouter.js
  2. 44
      src/views/enforce/enforcementPlanAdd.vue
  3. 80
      src/views/enforce/sign.vue
  4. 2
      src/views/enforce/zqyjjdmFilter.vue
  5. 179
      src/views/login.vue

3
src/common/globalRouter.js

@ -4,7 +4,8 @@ let routes = [
{ {
path: "/", path: "/",
// redirect: "/home", // redirect: "/home",
redirect: "/enforceHome", // redirect: "/enforceHome",
redirect: "/login",
name: "App", name: "App",
}, },
{ {

44
src/views/enforce/enforcementPlanAdd.vue

@ -33,26 +33,26 @@
@cancel="cancelSelectDate" @cancel="cancelSelectDate"
/> />
</van-popup> </van-popup>
<div style="display: flex; justify-content: space-between; width: 100%">
<div style="width: 50%"> <van-field
<van-field v-model="submitData.planName"
v-model="submitData.planName" label="计划名称"
label="计划名称" placeholder="请输入"
placeholder="请输入" required
required :rules="[{ required: true, message: '请输入计划名称' }]"
:rules="[{ required: true, message: '请输入计划名称' }]" />
/>
</div> <div class="plan-attach">
<div style="width: 30%;"> <div class="plan-time">
<van-field <van-field
v-model="data.fieldValue" v-model="data.fieldValue"
is-link is-link
readonly readonly
placeholder="选择日期" placeholder="选择时段"
@click="data.dateShowPicker = true" @click="data.dateShowPicker = true"
/> />
</div> </div>
<div style="width: 30%;"><label style="font-size: 0.4rem;">行政检查计划</label></div> <div class="plan-text">行政检查计划</div>
</div> </div>
<van-popup v-model:show="data.dateShowPicker" round position="bottom"> <van-popup v-model:show="data.dateShowPicker" round position="bottom">
<van-picker <van-picker
@ -443,4 +443,22 @@
:root { :root {
--van-dialog-width: 16rem; --van-dialog-width: 16rem;
} }
.plan-attach {
display: flex;
align-items: center;
width: 100%;
white-space: nowrap;
}
.plan-time {
margin-left: 2.67rem;
width: 2.25rem;
}
.plan-text {
min-width: 30%;
font-size: 0.37rem;
line-height: 3.25;
}
</style> </style>

80
src/views/enforce/sign.vue

@ -106,18 +106,28 @@
<!-- autosize--> <!-- autosize-->
<!-- />--> <!-- />-->
<van-field v-model="submitData.lawEnforcementItem" v-show="false" /> <van-field v-model="submitData.lawEnforcementItem" v-show="false" />
<!-- <van-field <!-- <van-field-->
v-model="data.lawEnforcementBasisText" <!-- v-model="data.lawEnforcementBasisText"-->
required <!-- required-->
readonly <!-- readonly-->
:rules="[{ required: true, message: '必填项' }]" <!-- :rules="[{ required: true, message: '必填项' }]"-->
label="检查依据" <!-- label="检查依据"-->
placeholder="检查依据" <!-- placeholder="检查依据"-->
@click="showPopupqz" <!-- @click="showPopupqz"-->
type="textarea" <!-- type="textarea"-->
rows="1" <!-- rows="1"-->
autosize <!-- autosize-->
/> --> <!-- />-->
<van-field v-for="(item, index) in data.lawList" :key="index"
v-model="item.text"
readonly
label="检查依据"
placeholder="检查依据"
@click="showPopupqz(index)"
rows="1"
autosize
/>
<van-button icon="add-o" block="true" square="true" type="default" @click.stop="addField" />
<van-field v-model="submitData.lawEnforcementBasis" v-show="false" /> <van-field v-model="submitData.lawEnforcementBasis" v-show="false" />
<!-- <van-field--> <!-- <van-field-->
<!-- v-model="submitData.reslut"--> <!-- v-model="submitData.reslut"-->
@ -306,9 +316,6 @@ const submitData = reactive({
enforce: "", enforce: "",
checkCss: "", checkCss: "",
enforceReason: "", enforceReason: "",
/**局级部门 */
bureauDeptName:"",
bureauDeptId:"",
}) })
const tapGood = () => { const tapGood = () => {
@ -387,9 +394,6 @@ onMounted(() =>{
submitData.lawEnforcerId = success.data.userId submitData.lawEnforcerId = success.data.userId
submitData.lawEnforcement = success.data.dept.deptName; submitData.lawEnforcement = success.data.dept.deptName;
submitData.lawEnforcementId = success.data.dept.deptId; submitData.lawEnforcementId = success.data.dept.deptId;
//局级部门
submitData.bureauDeptName = success.data.bureauDept.deptName;
submitData.bureauDeptId = success.data.bureauDept.deptId;
} }
},error=>{ },error=>{
@ -463,6 +467,7 @@ const gaCancel = () => {
const dataFillIn = () => { const dataFillIn = () => {
// getRegByUserIdAndZero(useCommon.userId,success =>{ // getRegByUserIdAndZero(useCommon.userId,success =>{
getByUserIdAndEnterpriseNumber(useCommon.userId, submitData.enterpriseNumber,success =>{ getByUserIdAndEnterpriseNumber(useCommon.userId, submitData.enterpriseNumber,success =>{
console.log("========> : ", success);
//跳转企业二维码地址 //跳转企业二维码地址
if(success.success){ if(success.success){
Object.keys(submitData).forEach((item) => { Object.keys(submitData).forEach((item) => {
@ -475,6 +480,16 @@ const dataFillIn = () => {
// submitData.lawCertificateNumText =success.data['lawEnforcer']; // submitData.lawCertificateNumText =success.data['lawEnforcer'];
submitData.lawCertificateNumTwoText =success.data['lawEnforcerTwo']; submitData.lawCertificateNumTwoText =success.data['lawEnforcerTwo'];
submitData.subsidiaryerText =success.data['subsidiaryer']; submitData.subsidiaryerText =success.data['subsidiaryer'];
submitData.lawEnforcementBasis = success.data['lawEnforcementBasis'];
submitData.lawEnforcementBasisText = success.data['lawEnforcementBasisText'];
var tmpBasis = submitData.lawEnforcementBasis.split(',');
var tmpBasisText = submitData.lawEnforcementBasisText.split(',');
data.lawList = [];
for (var i=0; i<tmpBasis.length; i++) {
data.lawList.push({
index: i, text:tmpBasisText[i], id:tmpBasis[i]
});
}
if(success.data['reslut']==0) { if(success.data['reslut']==0) {
tapGood(); tapGood();
} else { } else {
@ -492,6 +507,14 @@ const dataFillIn = () => {
const tmpSave = () => { const tmpSave = () => {
showSuccessToast('临时保存'); showSuccessToast('临时保存');
submitData.userId = useCommon.userId; submitData.userId = useCommon.userId;
submitData.lawEnforcementBasis = "";
submitData.lawEnforcementBasisText = "";
for (var i=0; i<data.lawList.length; i++) {
submitData.lawEnforcementBasis += data.lawList[i].id +",";
submitData.lawEnforcementBasisText += data.lawList[i].text +",";
}
submitData.lawEnforcementBasis = submitData.lawEnforcementBasis.substring(0, submitData.lawEnforcementBasis.length - 1);
submitData.lawEnforcementBasisText = submitData.lawEnforcementBasisText.substring(0, submitData.lawEnforcementBasisText.length - 1);
addEnforcementRegistration(submitData,success =>{ addEnforcementRegistration(submitData,success =>{
//跳转企业二维码地址 //跳转企业二维码地址
if(success.success){ if(success.success){
@ -506,6 +529,14 @@ const tmpSave = () => {
const submit = (type) =>{ const submit = (type) =>{
submitData.isSubmit = type; submitData.isSubmit = type;
submitData.userId = useCommon.userId; submitData.userId = useCommon.userId;
submitData.lawEnforcementBasis = "";
submitData.lawEnforcementBasisText = "";
for (var i=0; i<data.lawList.length; i++) {
submitData.lawEnforcementBasis += data.lawList[i].id +",";
submitData.lawEnforcementBasisText += data.lawList[i].text +",";
}
submitData.lawEnforcementBasis = submitData.lawEnforcementBasis.substring(0, submitData.lawEnforcementBasis.length - 1);
submitData.lawEnforcementBasisText = submitData.lawEnforcementBasisText.substring(0, submitData.lawEnforcementBasisText.length - 1);
form.value.validate().then(() => { form.value.validate().then(() => {
editEnforcementRegistration(submitData, success => { editEnforcementRegistration(submitData, success => {
//跳转首页 //跳转首页
@ -525,9 +556,13 @@ const showPopup = () =>{
const showPopup2 = () =>{ const showPopup2 = () =>{
data.popupVisible2 = true; data.popupVisible2 = true;
} }
const showPopupqz = () =>{ const showPopupqz = (flag) =>{
data.lawCliekFlag = flag;
data.popupVisibleqz = true; data.popupVisibleqz = true;
} }
const addField = () =>{
data.lawList.push({ text:"", id:"" });
}
const closePopup = () =>{ const closePopup = () =>{
data.popupVisible = false; data.popupVisible = false;
data.popupVisible2 = false; data.popupVisible2 = false;
@ -547,10 +582,11 @@ const reciveData2 = (item) =>{
submitData.subsidiaryerText = item.userName; submitData.subsidiaryerText = item.userName;
} }
const reciveDataqz = (item) =>{ const reciveDataqz = (item) =>{
console.log(item); data.lawList[data.lawCliekFlag].id = item.id;
submitData.lawEnforcementBasis = item.id; data.lawList[data.lawCliekFlag].text = item.lawName;
// submitData.lawEnforcementBasis = item.id;
// submitData.subsidiaryerText = item.userName + " " + item.lawCertificateNum; // submitData.subsidiaryerText = item.userName + " " + item.lawCertificateNum;
data.lawEnforcementBasisText = item.lawName; // data.lawEnforcementBasisText = item.lawName;
} }
const reciveLaw = (item) => { const reciveLaw = (item) => {
submitData.lawId = item.id; submitData.lawId = item.id;

2
src/views/enforce/zqyjjdmFilter.vue

@ -18,7 +18,7 @@
<div class="search-result"> <div class="search-result">
<div class="case-item" v-for="(item, index) in dataList" :key="index" @click="selectData(item)"> <div class="case-item" v-for="(item, index) in dataList" :key="index" @click="selectData(item)">
<div class="case-title">法律名称:{{ item.lawName }}</div> <div class="case-title">法律名称:{{ item.lawName }}</div>
<div class="case-time">内容:{{ item.content }}</div> <!-- <div class="case-time">内容:{{ item.content }}</div>-->
</div> </div>
</div> </div>
</div> </div>

179
src/views/login.vue

@ -1,67 +1,70 @@
<template> <template>
<div class="login-page"> <div class="login-page">
<div class="login-content"> <div class="login-content">
<van-nav-bar > <van-nav-bar>
<template #title> <template #title>
<div class="title"> <div class="title">
登录 登录
</div> </div>
</template> </template>
</van-nav-bar> </van-nav-bar>
<van-form @submit="onSubmit"> <van-form @submit="onSubmit">
<van-field v-model="loginParam.secretName" name="secretName" label="用户名" placeholder="用户名" <van-field v-model="loginParam.secretName" name="secretName" label="用户名" placeholder="用户名"
:rules="[{ required: true, message: '请填写用户名' }]" /> :rules="[{ required: true, message: '请填写用户名' }]"/>
<van-field v-model="loginParam.secretKey" type="password" name="secretKey" label="密码" placeholder="密码" <van-field v-model="loginParam.secretKey" type="password" name="secretKey" label="密码" placeholder="密码"
:rules="[{ required: true, message: '请填写密码' }]" /> :rules="[{ required: true, message: '请填写密码' }]"/>
<div style="margin: 0.42rem"> <div style="margin: 0.42rem">
<van-button block type="primary" native-type="submit">登录</van-button> <van-button block type="primary" native-type="submit">登录</van-button>
</div> </div>
</van-form> </van-form>
<router-link to="/register" class="link">还没有账号,去注册</router-link> <router-link to="/register" class="link">还没有账号,去注册</router-link>
</div> </div>
</div> </div>
</template> </template>
<script setup> <script setup>
import { reactive } from 'vue'; import {reactive} from 'vue';
import {userLogin, testLogin} from '../api/Home'; import {userLogin, testLogin} from '../api/Home';
import CryptoJS from "crypto-js"; import CryptoJS from "crypto-js";
const { useCommon } = $globalStore;
const router = useRouter(); const {useCommon} = $globalStore;
const loginParam = reactive({ const router = useRouter();
secretName:"", const loginParam = reactive({
secretKey:"" secretName: "",
}) secretKey: ""
const userLoginParam = {}; })
userLoginParam.username = loginParam.username; const userLoginParam = {};
userLoginParam.password = loginParam.password; userLoginParam.username = loginParam.username;
const onSubmit = async (values) => { userLoginParam.password = loginParam.password;
console.log(values); const onSubmit = async (values) => {
// await getGoodsnum(); // await getGoodsnum();
// await getLang(); // await getLang();
// values.secretName = values.name; // values.secretName = values.name;
values.secretKey = Encrypt(values.secretKey); values.secretKey = Encrypt(values.secretKey);
// return; // return;
// userLogin(values,success=>{ // userLogin(values,success=>{
testLogin({"secretName": loginParam.secretName, "secretKey": values.secretKey},success=>{ testLogin({"secretName": loginParam.secretName, "secretKey": values.secretKey}, success => {
console.log(success); if (success.success) {
// router.push({ name: "Home" }); // router.push({ name: "Home" });
router.push({ name: "enforceHome" }); router.push({name: "enforceHome"});
//设置全局变量 //设置全局变量
useCommon.SET_USER_PHONENUMBER(success.data.phonenumber.toString()); useCommon.SET_USER_PHONENUMBER(success.data.phonenumber.toString());
useCommon.SET_USER_ID(success.data.userId); useCommon.SET_USER_ID(success.data.userId);
useCommon.SET_TOKEN(success.data.token); useCommon.SET_TOKEN(success.data.token);
// 监听uni-app发送的消息 // 监听uni-app发送的消息
window.addEventListener('message', (event) => { window.addEventListener('message', (event) => {
console.log('Received message from uni-app:', event.data); console.log('Received message from uni-app:', event.data);
// 向uni-app返回消息 // 向uni-app返回消息
window.parent.postMessage('Hello, uni-app!', '*'); window.parent.postMessage('Hello, uni-app!', '*');
}); });
},error=>{ } else {
console.log("登录失败") console.log("登录失败")
}) }
}; }, error => {
console.log("登录失败")
})
};
const Encrypt = (passWord) =>{ const Encrypt = (passWord) => {
var keyStr = '1234567898745621'; var keyStr = '1234567898745621';
var ivStr = keyStr; var ivStr = keyStr;
var key = CryptoJS.enc.Utf8.parse(keyStr); var key = CryptoJS.enc.Utf8.parse(keyStr);
@ -77,33 +80,35 @@ const Encrypt = (passWord) =>{
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.login-page { .login-page {
width: 100%; width: 100%;
height: 100%; height: 100%;
display: flex; display: flex;
overflow: hidden; overflow: hidden;
background-image: url("~@/assets/images/login.jpg"); background-image: url("~@/assets/images/login.jpg");
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: cover; background-size: cover;
opacity: 0.9; opacity: 0.9;
.login-content {
margin: auto; .login-content {
padding: 0.27rem 0.27rem 0.52rem 0.27rem; margin: auto;
background-color: #fff; padding: 0.27rem 0.27rem 0.52rem 0.27rem;
border-radius: 0.27rem; background-color: #fff;
box-shadow: 0 0 0.27rem rgba(0, 0, 0, 0.2); border-radius: 0.27rem;
opacity: 0.9; box-shadow: 0 0 0.27rem rgba(0, 0, 0, 0.2);
.title{ opacity: 0.9;
font-size: 0.52rem;
font-weight: 600; .title {
font-size: 0.52rem;
font-weight: 600;
}
} }
}
.link { .link {
font-size: 0.32rem; font-size: 0.32rem;
color: #069; color: #069;
float: right; float: right;
margin-right: 0.4rem; margin-right: 0.4rem;
} }
} }
</style> </style>

Loading…
Cancel
Save