diff --git a/main.js b/main.js
index 7537a34..94b4446 100644
--- a/main.js
+++ b/main.js
@@ -16,7 +16,6 @@ import Empty from './components/empty/empty.vue';
import NoBouncePage from '@/components/NoBouncePage/NoBouncePage.vue'
import MsgTips from '@/components/MsgTips/MsgTips.vue'
import SelectPopupPlugin from '@/components/selectPopup/selectPopupPlugin';
-import unieditor from '@/packageB/components/unieditor.vue'
import storeRc from './utilsRc/store/index.js'
import {processFileUrl,} from '@/utilsRc/common.js'
// iconfont.css 已在 App.vue 中通过 @import 引入,无需在此处重复引入
@@ -45,7 +44,6 @@ export function createApp() {
app.component('Empty', Empty)
app.component('NoBouncePage', NoBouncePage)
app.component('MsgTips', MsgTips)
- app.component('unieditor', unieditor)
app.config.globalProperties.$processFileUrl = processFileUrl;
@@ -76,7 +74,6 @@ export function createApp() {
app.provide('deviceInfo', globalFunction.getdeviceInfo());
app.use(SelectPopupPlugin);
- // app.use(unieditor);
app.use(Pinia.createPinia());
// 注册vuex
app.use(storeRc);
diff --git a/package-lock.json b/package-lock.json
index 980fadd..0471f43 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,4 @@
{
- "name": "ks-app-employment-service",
- "lockfileVersion": 3,
"requires": true,
"packages": {
"": {
@@ -15,8 +13,11 @@
}
},
"node_modules/@dcloudio/uni-ui": {
+ "lockfileVersion": 1,
+ "dependencies": {
+ "@dcloudio/uni-ui": {
"version": "1.5.11",
- "resolved": "https://registry.npmjs.org/@dcloudio/uni-ui/-/uni-ui-1.5.11.tgz",
+ "resolved": "https://registry.npmmirror.com/@dcloudio/uni-ui/-/uni-ui-1.5.11.tgz",
"integrity": "sha512-DBtk046ofmeFd82zRI7d89SoEwrAxYzUN3WVPm1DIBkpLPG5F5QDNkHMnZGu2wNrMEmGBjBpUh3vqEY1L3jaMw=="
},
"node_modules/crypto-js": {
@@ -26,25 +27,26 @@
"dev": true
},
"node_modules/dayjs": {
+ "crypto-js": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmmirror.com/crypto-js/-/crypto-js-3.3.0.tgz",
+ "integrity": "sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q=="
+ },
+ "dayjs": {
"version": "1.11.19",
- "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.19.tgz",
+ "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.19.tgz",
"integrity": "sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw=="
},
- "node_modules/jsbn": {
+ "jsbn": {
"version": "1.1.0",
- "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz",
+ "resolved": "https://registry.npmmirror.com/jsbn/-/jsbn-1.1.0.tgz",
"integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A=="
},
- "node_modules/mp-html": {
- "version": "2.5.2",
- "resolved": "https://registry.npmmirror.com/mp-html/-/mp-html-2.5.2.tgz",
- "integrity": "sha512-45e8c32Qgux4YU4iC3qCSFsOh3y+RwPwZ+iz/vvLkDgSGWk+1zsL4WUzWWQc9w3AsAfkaD/QR0oIufIDngBmXA=="
- },
- "node_modules/sm-crypto": {
+ "sm-crypto": {
"version": "0.3.13",
"resolved": "https://registry.npmmirror.com/sm-crypto/-/sm-crypto-0.3.13.tgz",
"integrity": "sha512-ztNF+pZq6viCPMA1A6KKu3bgpkmYti5avykRHbcFIdSipFdkVmfUw2CnpM2kBJyppIalqvczLNM3wR8OQ0pT5w==",
- "dependencies": {
+ "requires": {
"jsbn": "^1.1.0"
}
}
diff --git a/package.json b/package.json
index 3b8730e..2c5e6a9 100644
--- a/package.json
+++ b/package.json
@@ -1,8 +1,8 @@
{
"dependencies": {
"@dcloudio/uni-ui": "^1.5.11",
+ "crypto-js": "^3.3.0",
"dayjs": "^1.11.19",
- "mp-html": "^2.5.2",
"sm-crypto": "^0.3.13"
},
"devDependencies": {
diff --git a/packageB/notice/evaluateAnnouncement/evaluateEdit.vue b/packageB/notice/evaluateAnnouncement/evaluateEdit.vue
index 196cf89..8f5098a 100644
--- a/packageB/notice/evaluateAnnouncement/evaluateEdit.vue
+++ b/packageB/notice/evaluateAnnouncement/evaluateEdit.vue
@@ -128,7 +128,6 @@ const confirm = () => {
const params = {
...fromValue,
};
- debugger
if(type.value=='add'){
$api.myRequest('/train/public/announcement/add', {
...fromValue,
diff --git a/packageB/notice/index.vue b/packageB/notice/index.vue
index b361e2a..c4ecb0a 100644
--- a/packageB/notice/index.vue
+++ b/packageB/notice/index.vue
@@ -28,12 +28,12 @@
-
+
-
-
+
+
@@ -42,6 +42,9 @@ import { inject, ref, reactive, onMounted } from "vue";
const { $api, navTo, navBack, vacanciesTo } = inject("globalFunction");
import config from "@/config.js";
import AppLayout from "@/components/AppLayout/AppLayout.vue";
+import CryptoJS from 'crypto-js'
+
+
const title = ref("");
const baseUrl = config.imgBaseUrl;
const pageSize=ref(10)
@@ -49,7 +52,27 @@ const pageNum=ref(1)
const totalNum=ref(0)
// Tab 控制
const currentTab = ref("train"); // 默认显示培训公告
-
+async function loginA(){
+ const form={
+ usertype: "2",
+ enterprisecode: '91310101MA1FPX1234',
+ enterprisename: 'tt',
+ contactperson: "",
+ contactphone: "",
+ idno: "",
+ name: ""
+ }
+ //用户信息加密方法待更新
+ // const key = '9zS+DFKrzxvosO82mTcPJQ=='
+ // const secretKey = CryptoJS.enc.Utf8.parse(key);//key 为你的秘钥
+ // const srcs = CryptoJS.enc.Utf8.parse(form.idno);
+ // // AES 加密
+ // const encrypted = CryptoJS.AES.encrypt(srcs, secretKey, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7}).toString()
+ // console.log('AES Encrypted:111', encrypted)
+ // form.idno=encrypted
+ var resLogin = await $api.myRequest('/auth/login2/ks',form,'post',10100);
+ console.log("resLogin",resLogin)
+}
function switchTab(tabName) {
currentTab.value = tabName;
getPolicyData('refresh',currentTab)
@@ -65,6 +88,7 @@ const getBackgroundStyle = (imageName) => ({
});
onMounted(() => {
getPolicyData('refresh',currentTab);
+ loginA()
});
const policyList = ref([]);
function getPolicyData(type = 'add',currentTab='train') {
@@ -92,7 +116,7 @@ function getPolicyData(type = 'add',currentTab='train') {
policyList.value=resData.rows
totalNum.value=resData.total
}
-
+
});
}
if (type === 'add' && pageNum.value < maxPage) {
@@ -200,4 +224,4 @@ function goPolicyDetail(item) {
margin-top: 12rpx;
}
}
-
\ No newline at end of file
+
diff --git a/packageB/priority/allocate.vue b/packageB/priority/allocate.vue
index 64c6b04..581c175 100644
--- a/packageB/priority/allocate.vue
+++ b/packageB/priority/allocate.vue
@@ -1,42 +1,43 @@
-
+
帮扶任务分配
-
-
-
+
+
-
-
+
+
-
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
+
+
@@ -45,60 +46,55 @@ import { inject, ref, reactive } from 'vue';
import { onLoad } from '@dcloudio/uni-app';
const { $api, navTo, navBack } = inject('globalFunction');
import config from "@/config.js"
+import targetPersonelChoice from './components/targetPersonnelChoice.vue'
const title = ref('');
+const taskTypeOptions=ref([])
+const priorityOptions=ref([])
+const executeDeptOptions=ref([])
const formData = reactive({
+ id: '',
+ taskId: '',
taskName: '',
- taskType: '',
- priority: '',
- taskAllocation: {
- goalPersonCount: null,
- executeDeptId: '',
- executeDeptName: '',
- executeDeptAncestors: '',
- allocationStatus: '1',
- allocationNote: '',
- deadline: null,
- goalPersonList: []
- }
+ createBy: '',
+ goalPersonCount: null,
+ executeDeptId: '',
+ executeDeptName: '',
+ executeDeptAncestors: '',
+ allocationStatus: '1',
+ allocationNote: '',
+ deadline: null,
+ goalPersonList: [],
+ allocationId:''
})
-const personInfo=ref({
- goalPersonId:'',
- name:'',
- taskType:'',
- task_id:''
-})
-const followWays = ref([])
-const followList = ref([])
-const followListNum=ref(0)
// 表单引用
const formRef = ref(null)
// 校验规则
const rules = {
- followDate: {
+ taskName: {
rules: [{
required: true,
- errorMessage: '请选择跟进日期'
+ errorMessage: '请填写任务名称'
}]
},
- followWay: {
+ goalPersonCount: {
rules: [{
required: true,
- errorMessage: '请选择跟进方式'
+ errorMessage: '请选择目标人员'
}]
},
- content: {
+ executeDeptId: {
rules: [{
required: true,
- errorMessage: '请填写跟进内容'
+ errorMessage: '请选择执行区域'
}]
},
- result: {
+ deadline:{
rules: [{
required: true,
- errorMessage: '请填写跟进结果'
+ errorMessage: '请选择截止时间'
}]
- }
+ },
}
const baseUrl = config.imgBaseUrl
const getBackgroundStyle = (imageName) => ({
@@ -107,77 +103,84 @@ const getBackgroundStyle = (imageName) => ({
backgroundPosition: 'center', // 居中
backgroundRepeat: 'no-repeat'
});
-
-const onFollowDateChange = (e)=>{
- formData.followDate=e
+const showVue=ref('main')
+function choicePerson(){
+ showVue.value='choice'
}
-const onMethodChange = (e) => {
- formData.followWay=e
-}
-// 事件处理
-const onDateChange = ( e) => {
- formData.nextContactDate=e
-}
-function getFollowList(){
+function listNotParam(){
let header={
- 'Authorization':uni.getStorageSync('fourLevelLinkage-token'),
+ 'Authorization':uni.getStorageSync('Padmin-Token'),
'Content-Type': "application/x-www-form-urlencoded"
}
- let params={
- personId:personInfo.value.person_id,
- taskId:personInfo.value.task_id
- }
- $api.myRequest('/dispatch/assist/records/getFollowList', params,'get',9100,header).then((resData) => {
- console.log("resData",resData)
- if(resData && resData.code == 200){
- if(resData.data && resData.data.length>0){
- followListNum.value=resData.data.length
- resData.data.forEach(item=>{
- const obj={
- title:item.followDate,
- desc:`跟进方式:${getFollowWaysLabelByValue(item.followWay)}\n跟进人:${item.createByName}\n跟进内容:${item.content}`
- }
- followList.value.push(obj)
- })
- }
-
- }
- });
-}
-
-function getDictionary(){
- $api.myRequest('/system/public/dict/data/type/assist_follow_way').then((resData) => {
+ let params={}
+ $api.myRequest('/dispatch/dept/listNotParam',params,'get',9100,header).then((resData) => {
if(resData && resData.code == 200){
resData.data.forEach(item=>{
const obj = {
- value: item.dictValue,
- text: item.dictLabel
+ value: item.deptId,
+ text: item.deptName,
+ ancestors:item.ancestors
}
- followWays.value.push(obj)
+ executeDeptOptions.value.push(obj)
})
}
});
}
-function getFollowWaysLabelByValue(value) {
- if (!Array.isArray(followWays.value)) {
+// 事件处理
+function onDateChange(e){
+ formData.deadline=e
+}
+function executeDeptChange(e){
+ formData.executeDeptId=e
+ formData.executeDeptName=getLabelByValue(e,executeDeptOptions.value)
+ formData.executeDeptAncestors=getAncestorsByValue(e,executeDeptOptions.value)
+}
+function getLabelByValue(value,arr) {
+ if (!Array.isArray(arr)) {
return ''
- }
- const item = followWays.value.find(item => item.value === String(value))
- return item ? item.text : '暂无跟进方式'
+ }
+
+ const item = arr.find(item => item.value === value)
+ return item ? item.text : '暂无'
+}
+function getAncestorsByValue(value,arr){
+ if (!Array.isArray(arr)) {
+ return ''
+ }
+
+ const item = arr.find(item => item.value === value)
+ return item ? item.ancestors : ''
+}
+function normalizePersonData(dataList) {
+ if (!Array.isArray(dataList)) return [];
+ return dataList.map(obj => {
+ const fullValue = obj;
+ return {
+ personId: String(fullValue) // 确保转为字符串,防止意外类型
+ };
+ });
+}
+
+function handleShowVueChange(newValue){
+ showVue.value=newValue.showVue
+ if(newValue.selectedPersonIds&&newValue.selectedPersonIds.length>0){
+ formData.goalPersonList=normalizePersonData(newValue.selectedPersonIds)
+ formData.goalPersonCount=newValue.selectedPersonIds.length
+ }else{
+
+ }
}
const handleSubmit = () => {
formRef.value?.validate()
.then(() => {
let header={
- 'Authorization':uni.getStorageSync('fourLevelLinkage-token')
+ 'Authorization':uni.getStorageSync('Padmin-Token')
}
- formData.goalPersonId=personInfo.value.goalPersonId
- $api.myRequest('/dispatch/assist/records/addRecords', formData,'post',9100,header).then((resData) => {
- console.log("resData",resData)
+ $api.myRequest('/dispatch/assist/task/allocation/allocate', formData,'post',9100,header).then((resData) => {
if(resData && resData.code == 200){
- handleReset()
+ handleCancel()
uni.showToast({
- title: '保存成功',
+ title: '分配成功',
icon: 'success',
duration: 2000
});
@@ -196,21 +199,40 @@ const handleSubmit = () => {
});
};
-const handleReset = () => {
- formData.followDate = '';
- formData.followWay = '';
- formData.content = '';
- formData.result = '';
- formData.nextPlan = '';
- formData.nextContactDate = '';
+const handleCancel = () => {
+ formData.taskName=''
+ formData.goalPersonCount=null
+ formData.executeDeptId=''
+ formData.executeDeptName=''
+ formData.executeDeptAncestors=''
+ formData.allocationStatus='1'
+ formData.allocationNote=''
+ formData.deadline=null
+ formData.goalPersonList=[]
+ navTo('/packageB/priority/taskAssignment');
+}
+function getDetail(id){
+ let header={
+ 'Authorization':uni.getStorageSync('Padmin-Token'),
+ 'Content-Type': "application/x-www-form-urlencoded"
+ }
+ let params={
+ id:id
+ }
+ $api.myRequest('/dispatch/assist/task/getTask',params,'get',9100,header).then((resData) => {
+ formData.id=resData.data.taskAllocation.id
+ formData.taskName=resData.data.taskName
+ formData.createBy=resData.data.createBy
+ formData.deadline=resData.data.taskAllocation.deadline
+ formData.allocationNote=resData.data.taskAllocation.allocationNote
+ formData.executeDeptAncestors=resData.data.taskAllocation.executeDeptAncestors
+ formData.allocationId=resData.data.taskAllocation.id
+ formData.taskId=resData.data.taskAllocation.taskId
+ });
}
onLoad((options) => {
- // personInfo.value.person_id=options.person_id
- // personInfo.value.name=options.name
- // personInfo.value.taskType=options.taskType
- // personInfo.value.task_id=options.task_id
- // getDictionary()
- // getFollowList()
+ listNotParam()
+ getDetail(options.id)
});
@@ -220,33 +242,6 @@ onLoad((options) => {
image
height: 100%
width: 100%
-.info-box
- margin: 30rpx 30rpx
- background: linear-gradient(0deg, #D9ECFF 0%, #F0F7FF 100%)
- border-radius: 20rpx
- padding: 40rpx 0
- display: flex
- align-items: center
-.info-img
- width: 40rpx
- height: 40rpx
- margin-bottom: 20rpx
-.info-line
- border-right: 2rpx solid #B7D6FF
-.info-item
- display: flex
- flex-direction: column
- align-items: center
- justify-content: center
- width: 50%
-.info-label
- font-size: 26rpx
- color: #6E7E9B
- margin-bottom: 20rpx
-.info-value
- font-weight: bold
- font-size: 28rpx
- color: #3D61AC
.main-list
background-color: #ffffff
padding: 20rpx 20rpx 28rpx 20rpx
@@ -271,20 +266,6 @@ image
height: 8rpx
background: linear-gradient(90deg, #FFAD58 0%, #FF7A5B 100%)
border-radius: 4rpx
-.title-total
- font-size: 24rpx
- color: #999999
-.total-num
- color: #3088FF
- margin-left: 4rpx
- margin-right: 4rpx
- font-weight: bold
- font-size: 26rpx
-
-.label
- width: 160rpx
- font-size: 28rpx
- color: #404040
.input,
.picker
@@ -292,10 +273,8 @@ image
.picker-value
color: #666
-.list-box
- margin-top: 40rpx
-
-.form-container
+
+.form-container
margin-top: 30rpx
:deep(.uni-forms-item__label)
width: 194rpx !important
@@ -324,35 +303,15 @@ image
background-color: #368BFF;
color: white;
}
-:deep(.uni-steps__column-circle )
- width: 24rpx !important
- height: 24rpx !important
- background: radial-gradient(circle,
- #00C0FA 0%,
- #015EEA 50%,
- #FFFFFF 51%,
- #FFFFFF 100%) !important
- border-radius: 50%
- border: 2rpx solid #015EEA
-:deep(.uni-steps__column-title)
- font-size: 28rpx !important
- color: #006CFF !important
- margin-bottom: 24rpx
-:deep(.uni-steps__column-desc)
- font-size: 28rpx
- color: #898989 !important
- line-height: 1.5
-:deep(.uni-steps__column-text )
- padding: 16rpx 0 !important
- border: none
-:deep(.uni-steps__column-line)
- background-color: #368BFF !important
-:deep(.uni-steps__column-line--before)
- background-color:rgba(0,0,0,0) !important
-:deep(.uni-date-x)
- background: rgba(0,0,0,0) !important
-:deep(.uni-stat-box)
- background: rgba(0,0,0,0) !important
+.choice-btn{
+ width: 100%;
+ height: 70rpx;
+ font-size: 28rpx;
+ border-radius: 8rpx;
+ background-color: #368BFF;
+ color: white;
+ margin-left: 0;
+}
:deep(.uni-easyinput__content)
background: rgba(0,0,0,0) !important
diff --git a/packageB/priority/components/targetPersonnel.vue b/packageB/priority/components/targetPersonnel.vue
index 4e9ff75..d7beb66 100644
--- a/packageB/priority/components/targetPersonnel.vue
+++ b/packageB/priority/components/targetPersonnel.vue
@@ -233,6 +233,7 @@ const handleCancel = () => {
emit('update:showView', 'main')
}
function getDataList(){
+ console.log("props.currentItem",props.currentItem)
let header={
'Authorization':uni.getStorageSync('Padmin-Token'),
'Content-Type': "application/x-www-form-urlencoded"
diff --git a/packageB/priority/components/targetPersonnelChoice.vue b/packageB/priority/components/targetPersonnelChoice.vue
index 428f750..2f95745 100644
--- a/packageB/priority/components/targetPersonnelChoice.vue
+++ b/packageB/priority/components/targetPersonnelChoice.vue
@@ -197,8 +197,16 @@ import { onLoad } from '@dcloudio/uni-app';
const { $api, navTo, navBack } = inject('globalFunction');
import config from "@/config.js"
+const props = defineProps({
+ allocationId:{
+ type: String,
+ required: false,
+ default: ''
+ },
+})
const title = ref('');
const formData = reactive({
+ allocationId:'',
name: '',
idCard: '',
tagId: '',
@@ -219,7 +227,7 @@ const getBackgroundStyle = (imageName) => ({
backgroundPosition: 'center', // 居中
backgroundRepeat: 'no-repeat'
});
-const emit = defineEmits(['update:showView'])
+const emit = defineEmits(['update:showVue'])
function getDictionary(){
$api.myRequest('/system/public/dict/data/type/person_database_status').then((resData) => {
if(resData && resData.code == 200){
@@ -269,13 +277,18 @@ function getabelByValue(value,arr) {
return item ? item.text : '暂无'
}
const handleCancel = () => {
- emit('update:showView', 'main')
+ emit('update:showVue', {
+ showVue: 'main',
+ selectedPersonIds: []
+ });
+ // emit('update:showVue', 'main')
}
function handleSearch(){
dataList.value=[]
getDataList()
}
function handleReset(){
+ formData.allocationId=''
formData.name=''
formData.idCard=''
formData.tagId=''
@@ -286,11 +299,20 @@ function handleReset(){
getDataList()
}
function getDataList(){
+ let url=''
+ if(props.allocationId){
+ formData.allocationId=props.allocationId
+ url='/dispatch/assist/person/database/pageAllocatePersonList'
+ }else{
+ url='/dispatch/assist/person/database/pageList'
+ }
+
+
let header={
'Authorization':uni.getStorageSync('Padmin-Token'),
'Content-Type': "application/x-www-form-urlencoded"
}
- $api.myRequest('/dispatch/assist/person/database/pageList',formData,'get',9100,header).then((resData) => {
+ $api.myRequest(url,formData,'get',9100,header).then((resData) => {
resData.rows.forEach(item=>{
item.tags=item.tagName.split(',')
item.assistStatus=getabelByValue(item.assistStatus,personDatabaseStatusOptions)
@@ -318,8 +340,8 @@ function selectItem(item) {
}
// 获取选中的数据
function handlesubmit() {
- emit('update:showView', {
- showView: 'main',
+ emit('update:showVue', {
+ showVue: 'main',
selectedPersonIds: selectedPersonIds.value
});
}
diff --git a/packageB/priority/components/taskCreated.vue b/packageB/priority/components/taskCreated.vue
index e10b7b3..d926fa5 100644
--- a/packageB/priority/components/taskCreated.vue
+++ b/packageB/priority/components/taskCreated.vue
@@ -1,6 +1,6 @@
-
+
创建任务
@@ -19,16 +19,16 @@
-
+
-
-
+
+
-
+
-
-
+
+
@@ -41,6 +41,9 @@
+
+
+
@@ -49,6 +52,7 @@ import { inject, ref, reactive } from 'vue';
import { onLoad } from '@dcloudio/uni-app';
const { $api, navTo, navBack } = inject('globalFunction');
import config from "@/config.js"
+import targetPersonelChoice from './targetPersonnelChoice.vue'
const props = defineProps({
taskTypeOptions: {
@@ -105,19 +109,19 @@ const rules = {
errorMessage: '请选择优先级'
}]
},
- goalPersonCount: {
+ 'taskAllocation.goalPersonCount': {
rules: [{
required: true,
errorMessage: '请选择目标人员'
}]
},
- executeDeptId: {
+ 'taskAllocation.executeDeptId': {
rules: [{
required: true,
errorMessage: '请选择执行区域'
}]
},
- deadline:{
+ 'taskAllocation.deadline':{
rules: [{
required: true,
errorMessage: '请选择截止时间'
@@ -131,25 +135,71 @@ const getBackgroundStyle = (imageName) => ({
backgroundPosition: 'center', // 居中
backgroundRepeat: 'no-repeat'
});
+const showVue=ref('main')
const emit = defineEmits(['update:showView'])
-
+function choicePerson(){
+ showVue.value='choice'
+}
// 事件处理
-function onDateChange(){}
-function taskTypeChange(){}
-function priorityChange(){}
-function executeDeptChange(){}
+function onDateChange(e){
+ formData.taskAllocation.deadline=e
+}
+function taskTypeChange(e){
+ formData.taskType=e
+}
+function priorityChange(e){
+ formData.priority=e
+}
+function executeDeptChange(e){
+ formData.taskAllocation.executeDeptId=e
+ formData.taskAllocation.executeDeptName=getLabelByValue(e,props.executeDeptOptions)
+ formData.taskAllocation.executeDeptAncestors=getAncestorsByValue(e,props.executeDeptOptions)
+}
+function getLabelByValue(value,arr) {
+ if (!Array.isArray(arr)) {
+ return ''
+ }
+
+ const item = arr.find(item => item.value === value)
+ return item ? item.text : '暂无'
+}
+function getAncestorsByValue(value,arr){
+ if (!Array.isArray(arr)) {
+ return ''
+ }
+
+ const item = arr.find(item => item.value === value)
+ return item ? item.ancestors : ''
+}
+function normalizePersonData(dataList) {
+ if (!Array.isArray(dataList)) return [];
+ return dataList.map(obj => {
+ const fullValue = obj;
+ return {
+ personId: String(fullValue) // 确保转为字符串,防止意外类型
+ };
+ });
+}
+function handleShowVueChange(newValue){
+ showVue.value=newValue.showVue
+ if(newValue.selectedPersonIds&&newValue.selectedPersonIds.length>0){
+ formData.taskAllocation.goalPersonList = normalizePersonData(newValue.selectedPersonIds)
+ formData.taskAllocation.goalPersonCount=newValue.selectedPersonIds.length
+ }else{
+
+ }
+}
const handleSubmit = () => {
formRef.value?.validate()
.then(() => {
let header={
- 'Authorization':uni.getStorageSync('fourLevelLinkage-token')
+ 'Authorization':uni.getStorageSync('Padmin-Token')
}
- $api.myRequest('/dispatch/assist/records/addRecords', formData,'post',9100,header).then((resData) => {
- console.log("resData",resData)
+ $api.myRequest('/dispatch/assist/task/add', formData,'post',9100,header).then((resData) => {
if(resData && resData.code == 200){
- handleReset()
+ handleCancel()
uni.showToast({
- title: '保存成功',
+ title: '创建成功',
icon: 'success',
duration: 2000
});
diff --git a/packageB/priority/taskAssignment.vue b/packageB/priority/taskAssignment.vue
index a4d74a3..bae44de 100644
--- a/packageB/priority/taskAssignment.vue
+++ b/packageB/priority/taskAssignment.vue
@@ -176,7 +176,7 @@
-
+
@@ -184,9 +184,9 @@
-
+
@@ -201,7 +201,7 @@ import { inject, ref, reactive } from 'vue';
import { onLoad } from '@dcloudio/uni-app';
const { $api, navTo, navBack } = inject('globalFunction');
import config from "@/config.js"
-import taskCreated from './components/taskCreated.vue';
+// import taskCreated from './components/taskCreated.vue';
import taskDetail from './components/taskDetail.vue';
import targetPersonnel from './components/targetPersonnel.vue';
@@ -246,7 +246,8 @@ function listNotParam(){
resData.data.forEach(item=>{
const obj = {
value: item.deptId,
- text: item.deptName
+ text: item.deptName,
+ ancestors:item.ancestors
}
executeDeptOptions.value.push(obj)
})
@@ -357,13 +358,14 @@ const handleReset = () => {
}
function handleShowViewChange(newValue) {
showView.value = newValue
+ dataList.value=[]
+ getDataList()
}
const creatTask = () => {
- showView.value='add'
- // navTo('/packageB/priority/taskCreated');
+ navTo('/packageB/priority/taskCreated');
}
-const goRecommend = () =>{
- navTo('/packageB/priority/allocate');
+function goRecommend(item){
+ navTo('/packageB/priority/allocate?id='+item.id);
}
function goDetail(item){
currentItem.value=item.id
diff --git a/packageB/train/index.vue b/packageB/train/index.vue
index 541562b..f8d5647 100644
--- a/packageB/train/index.vue
+++ b/packageB/train/index.vue
@@ -22,7 +22,7 @@
-
+
@@ -33,7 +33,7 @@
-
+
@@ -57,6 +57,7 @@ import { onLoad, onShow } from '@dcloudio/uni-app';
const { $api, navTo, vacanciesTo, formatTotal, config } = inject('globalFunction');
import useUserStore from '@/stores/useUserStore';
import useDictStore from '@/stores/useDictStore';
+import CryptoJS from 'crypto-js'
onLoad(() => {
thirdLogin()
@@ -81,6 +82,12 @@ async function thirdLogin(){
contactperson: "",
contactphone: "",
}
+ //用户信息加密方法待更新
+ // let key = '9zS+DFKrzxvosO82mTcPJQ=='
+ // let secretKey = CryptoJS.enc.Utf8.parse(key);//key 为你的秘钥
+ // let srcs = CryptoJS.enc.Utf8.parse(form.idno);
+ // let encrypted = CryptoJS.AES.encrypt(srcs, secretKey, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7}).toString()
+ // form.idno=encrypted
}else if (uni.getStorageSync('userInfo').isCompanyUser=='0') {
form={
usertype: "2",
@@ -181,7 +188,7 @@ async function thirdLogin(){
}
}
}
-
+
}
diff --git a/packageB/train/practice/startPracticingList.vue b/packageB/train/practice/startPracticingList.vue
index 8013433..8cc04b9 100644
--- a/packageB/train/practice/startPracticingList.vue
+++ b/packageB/train/practice/startPracticingList.vue
@@ -17,12 +17,12 @@
placeholder="输入"
placeholder-class="inputplace"
/>
-
@@ -35,8 +35,8 @@
-
@@ -66,6 +66,7 @@ import { inject, ref, reactive } from 'vue';
import { onLoad } from '@dcloudio/uni-app';
const { $api, navTo, navBack } = inject('globalFunction');
import config from "@/config.js"
+import CryptoJS from 'crypto-js'
// state
const title = ref('');
@@ -130,7 +131,7 @@ function getDataList(type = 'add') {
dataList.value=dataList.value.concat(resData.rows)
totalNum.value=resData.total
});
-
+
}
}
@@ -157,6 +158,12 @@ async function thirdLogin(){
contactperson: "",
contactphone: "",
}
+ //用户信息加密方法待更新
+ // let key = '9zS+DFKrzxvosO82mTcPJQ=='
+ // let secretKey = CryptoJS.enc.Utf8.parse(key);//key 为你的秘钥
+ // let srcs = CryptoJS.enc.Utf8.parse(form.idno);
+ // let encrypted = CryptoJS.AES.encrypt(srcs, secretKey, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7}).toString()
+ // form.idno=encrypted
}else if (uni.getStorageSync('userInfo').isCompanyUser=='0') {
form={
usertype: "2",
@@ -238,9 +245,9 @@ image {
line-height: 38rpx;
margin-left: 10rpx;
}
-
+
}
-
+
}
.heng{
width: 120rpx;
diff --git a/packageB/train/video/videoList.vue b/packageB/train/video/videoList.vue
index ca754ba..b1fea6f 100644
--- a/packageB/train/video/videoList.vue
+++ b/packageB/train/video/videoList.vue
@@ -17,12 +17,12 @@
placeholder="输入视频名称"
placeholder-class="inputplace"
/>
-
@@ -35,16 +35,16 @@
-
-
@@ -63,6 +63,7 @@ import { inject, ref, reactive } from 'vue';
import { onLoad } from '@dcloudio/uni-app';
const { $api, navTo, navBack } = inject('globalFunction');
import config from "@/config.js"
+import CryptoJS from 'crypto-js'
// state
const title = ref('');
@@ -133,7 +134,7 @@ function getDataList(type = 'add') {
});
}
}
-
+
// 播放视频
async function playVideo(video) {
@@ -155,6 +156,12 @@ async function thirdLogin(){
contactperson: "",
contactphone: "",
}
+ //用户信息加密方法待更新
+ // let key = '9zS+DFKrzxvosO82mTcPJQ=='
+ // let secretKey = CryptoJS.enc.Utf8.parse(key);//key 为你的秘钥
+ // let srcs = CryptoJS.enc.Utf8.parse(form.idno);
+ // let encrypted = CryptoJS.AES.encrypt(srcs, secretKey, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7}).toString()
+ // form.idno=encrypted
}else if (uni.getStorageSync('userInfo').isCompanyUser=='0') {
form={
usertype: "2",
diff --git a/pages.json b/pages.json
index bdc2658..0c8dad9 100644
--- a/pages.json
+++ b/pages.json
@@ -445,6 +445,12 @@
"navigationBarTitleText": "帮扶任务分配"
}
},
+ {
+ "path": "priority/taskCreated",
+ "style": {
+ "navigationBarTitleText": "创建任务"
+ }
+ },
{
"path": "priority/taskIssue",
"style": {
@@ -516,48 +522,6 @@
"style": {
"navigationBarTitleText": "培训机构信息详情"
}
- },
- {
- "path": "institution/trainingInstitutionMaintenance",
- "style": {
- "navigationBarTitleText": "培训机构信息维护"
- }
- },
- {
- "path": "components/map",
- "style": {
- "navigationBarTitleText": "选择地址"
- }
- },
- {
- "path": "institution/evaluationAgencyMaintenance",
- "style": {
- "navigationBarTitleText": "评价机构信息维护"
- }
- },
- {
- "path": "notice/trainingAnnouncement/postedList",
- "style": {
- "navigationBarTitleText": "培训公告发布"
- }
- },
- {
- "path": "notice/trainingAnnouncement/postedEdit",
- "style": {
- "navigationBarTitleText": "培训公告"
- }
- },
- {
- "path": "notice/evaluateAnnouncement/evaluateList",
- "style": {
- "navigationBarTitleText": "评价公告发布"
- }
- },
- {
- "path": "notice/evaluateAnnouncement/evaluateEdit",
- "style": {
- "navigationBarTitleText": "评价公告"
- }
}
]
},
diff --git a/pages/careerfair/careerfair.vue b/pages/careerfair/careerfair.vue
index 32d3274..f555a6e 100644
--- a/pages/careerfair/careerfair.vue
+++ b/pages/careerfair/careerfair.vue
@@ -162,6 +162,7 @@
} from "@/utils/tabbarManager";
import WxAuthLogin from "@/components/WxAuthLogin/WxAuthLogin.vue";
import config from "@/config.js";
+ import CryptoJS from 'crypto-js'
const {
longitudeVal,
latitudeVal
@@ -270,6 +271,12 @@
contactperson: "",
contactphone: "",
}
+ //用户信息加密方法待更新
+ // let key = '9zS+DFKrzxvosO82mTcPJQ=='
+ // let secretKey = CryptoJS.enc.Utf8.parse(key);//key 为你的秘钥
+ // let srcs = CryptoJS.enc.Utf8.parse(form.idno);
+ // let encrypted = CryptoJS.AES.encrypt(srcs, secretKey, {mode:CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7}).toString()
+ // form.idno=encrypted
}else if (uni.getStorageSync('userInfo') && uni.getStorageSync('userInfo').isCompanyUser=='0') {
form={
usertype: "2",
@@ -309,7 +316,7 @@
// wxAuthLoginRef.value?.open();
// });
// });
- watch(() => userInfo.value.userType, (newVal) => {
+ watch(() => userInfo.value.userType, (newVal) => {
if(newVal=='ent'){
showTabar.value = true
}else{
@@ -408,18 +415,18 @@
};
async function getHeart() {
-
-
+
+
const raw = uni.getStorageSync("Padmin-Token");
const token = typeof raw === "string" ? raw.trim() : "";
-
+
var isLogins = await thirdLogin();
-
+
const headers = token ? {
Authorization: raw.startsWith("Bearer ") ? raw : `Bearer ${token}`
} : {};
-
-
+
+
$api.myRequest("/dashboard/auth/heart", {}, "POST", 10100, headers).then((resData) => {
if (isLogins) {
isLogin.value = true;