c7e8da97-0115-4e07-9a66-d5192cef62成员单选推送到协同人
export async function updateUserArray(){
// 通过唯一标识符获取客户信息
const customerData = await sdk.getValue("text_20");
console.log(customerData);
// 从customerData中提取id和name
const { id, name } = customerData.value;
// 获取coUserId的值
const coUserData = await sdk.getValue("coUserId");
// 若coUserData.value为undefined, 初始化为空数组
let userArray = coUserData.value || [];
// 将新的用户数据推送到userArray
userArray.push({id, name});
// 更新coUserId的值
await sdk.setValue("coUserId", userArray);
}
情况二:直接使用成员信息覆盖coUserId
export async function updateUserArray(){
// 通过唯一标识符获取客户信息
const customerData = await sdk.getValue("text_3");
console.log(customerData);
// 从customerData中提取id和name
const { id, name } = customerData.value;
// 创建一个包含新用户数据的数组
const userArray = [{id, name}];
// 更新coUserId的值
await sdk.setValue("coUserId", userArray);
}
情况三:可以不断叠加,对比已有的数据不会出现重复添加coUserId。
export async function updateUserArray() {
// 通过唯一标识符获取客户信息
const customerData = await sdk.getValue("text_3");
console.log(customerData);
// 从customerData中提取id和name
const { id, name } = customerData.value;
// 获取coUserId的值
const coUserData = await sdk.getValue("coUserId");
// 若coUserData.value为undefined, 初始化为空数组
let userArray = coUserData.value || [];
// 检查userArray是否已经包含了具有相同id的用户数据
const isUserExists = userArray.some(user => user.id === id);
// 如果userArray中没有具有相同id的用户数据,则将新的用户数据添加到userArray
if (!isUserExists) {
userArray.push({ id, name });
}
// 更新coUserId的值
await sdk.setValue("coUserId", userArray);
}
情况四:可以不断叠加,对比已有的数据不会出现重复添加coUserId【多字段补充】
export async function handleText(inputName) {
try {
// 获取售前人员字段内容
const memberSelection = await sdk.getValue(inputName);
console.log(memberSelection);
// 获取传参需要的参数,成员类字段只要为id和name;
const memberId = memberSelection.value.id;
const memberName = memberSelection.value.name;
// 获取负责人字段内容
const managerField = await sdk.getValue("coUserId");
// 如果负责人字段不存在或不是一个数组,初始化为一个空数组
const userArray = Array.isArray(managerField.value) ? managerField.value : [];
// 检查userArray是否已经包含了具有相同id的用户数据
const isUserExists = userArray.some(user => user.id === memberId);
// 如果userArray中没有具有相同id的用户数据,则将新的用户数据添加到userArray
if (!isUserExists) {
userArray.push({ id: memberId, name: memberName });
}
// 对负责人字段赋值
await sdk.setValue("coUserId", userArray);
} catch (error) {
console.error("发生错误:", error);
}
}
// 调用 handleText 函数,分别处理不同的输入
export async function ce1() {
await handleText("text_40");
}
export async function ce2() {
await handleText("text_67");
}
export async function ce3() {
await handleText("text_69");
}
export async function KH() {
let dealStatus;
try {
dealStatus = await sdk.getValue("text_14");
} catch (error) {
console.error("Error getting value:", error);
// Handle error as needed
return false;
}
console.log("是否成交的值:", dealStatus);
if(dealStatus.value !== "是") {
// 如果showWarningToast函数存在,则调用它
if (typeof showWarningToast === "function") {
await showWarningToast("不满足合同创建的要求,请确认是否完成签单前服务!");
}
return false;
}
}
验证表单优化版本1
//验证表单,可以配置不可见
//配置表单提交前
export async function KH() {
// 通过sdk.getValue获取信息
const 判断红线 = await sdk.getValue("date_2");
// 赋值信息到N
const N = 判断红线?.value; // 使用了可选链,确保如果判断红线为undefined时,N也为undefined
// 判断信息是否符合
if (N === null || N === undefined) {
// 弹出提示
await sdk.showToast({
type: "warning",
content: "不满足有签单前设计服务的要求,请先创建签单前设计服务表单!"
});
// 拒绝数据提交
return false;
}
}
验证表单优化版本2
export async function KH(){
try {
console.log("开始获取date_1的值...");
// 通过sdk.getValue获取信息
const dateValueResponse = await sdk.getValue("date_1");
console.log("date_1的值:", dateValueResponse);
// 赋值信息到dateValue
const dateValue = dateValueResponse.value;
console.log("赋值后的dateValue:", dateValue);
// 判断信息是否符合
if(dateValue === null){
console.log("dateValue为null,显示警告...");
// 弹出提示
await sdk.showToast({
type: "warning",
content: "不满足有签单前设计服务的要求,请先创建签单前设计服务表单!"
});
// 拒绝数据提交
console.log("数据验证失败,拒绝提交。");
return false;
}
console.log("数据验证成功,允许提交。");
// 允许数据提交
return true;
} catch (error) {
console.error("验证过程中出现错误:", error);
return false;
}
}
验证添加函数判断,避免函数没有执行的时候正常提交
export async function KH(){
// 通过sdk.getValue获取信息
// 字段可以被隐藏
const 签单后服务开启 = await sdk.getValue("text_7");
// 使用console.log打印获取的结果
console.log("获取的是否签单后服务开启的值:", 签单后服务开启);
// 赋值信息到N
const N = 签单后服务开启.value;
// 使用console.log打印赋值后的N
console.log("赋值后的N:", N);
// 判断信息是否符合
if(N != "是"){
// 使用console.log打印不符合的提示
console.log("不满足有签单后设计服务的要求");
try {
// 弹出提示
await sdk.showToast({
type: "warning",
content: "不满足创建签单后设计服务的要求,请先创建合同订单!",
time: 3000
});
} catch (error) {
// 如果出现错误,可以在这里处理
console.error("Error showing toast:", error);
}
// 无论是否出现错误,都拒绝数据提交
return false;
}
}
//弹窗类型一
export async function alert1() {
const res = await sdk.alert({
title: '警告',
content: '请确保签单前数据已填写',
confirmButtonText: '确认'
});
console.log(res)
}
//弹窗类型二
export async function ShowToast1() {
const res = await sdk.showToast({
type: '警告',
content: '请确保签单前数据已填写',
time: 3000
})
console.log(res)
}
//下拉跨表单 相互编辑 注意:不需要配置关联和联动
//abcc函数名称
export async function abcc(){
//部署到联动的数据 例如客户姓名 值发生变动的时候
const bb = await sdk.getValue("text_1")
//dataid取值问题导致错误
const dataid = bb.value.dataId;
const id = await abc(dataid)
// const cc = id.data.data.headList[77].attrName
console.log(id)
const cc = id.data.paasFormDataESList[0].data.text_63.text
if(cc=="设计阶段"){
await sdk.setValue("text_7", {text: "设计阶段", value: "b9d9d780-30fb-9b9a-e893-c7e582ed9028"});
}
else if (cc=="生产阶段"){
await sdk.setValue("text_7", {text: "生产阶段", value: "ef3065e0-5ec6-7b0b-707e-bfe6ef44f42c"});
}
else if(cc=="安装阶段"){
await sdk.setValue("text_7", {text: "安装阶段", value: "15fba2f6-fe76-a932-3c5a-e201381e2ecc"});
}
else if(cc=="完成阶段"){
await sdk.setValue("text_7", {text: "完成阶段", value: "7f915670-7200-41bf-90b0-80839d198b41"});
}
}
//abcd赋值
async function abc(abcd,page = 1) {
return await sdk.getFormDataList({
appId: 744517,
menuId: 8157216,
saasMark: 1,
businessType: 100,
subBusinessType: 0,
formId: 7388263,
conditions: [{"attr":"dataId","fieldType":0,"symbol":"equal","value":[abcd]}],
page: page,
pageSize: 20
})
}
//代码辅助生成器 API调用
export async function abddd() {
try {
//
const response = await sdk.api.request("/department/list", {});
// 在这里处理返回的响应
console.log("部门列表:", response);
} catch (error) {
// 处理错误
console.error("请求部门列表时出错:", error);
}
}
//通过下拉选项,重新选定单选按钮
export async function sschange() {
const val = await sdk.getValue('text_2')
if (val.value.value === "adcf0f49-5591-9d2d-cbf8-7f7b08fb3dc6"){
await sdk.setValue('text_10', { text: '1次', value: 'f4723a5e-6b1e-841e-580b-4860e1fb9f07' })
} else if (val.value.value === "3de1f74a-116a-fb30-00f3-4adc13566689"){
await sdk.setValue('text_10', { text: '2次', value: '70893f00-fea5-2804-b35b-6750a071a976' })
}
}
//读取数据
export async function sschange() {
const val = await sdk.getValue('text_4');
if (val && val.value) {
const valcc = val.value.value;
console.log(valcc);
} else {
console.log('Value is not available.');
}
}
//锁定数据
export async function sschangesdd() {
const val = await sdk.getValue('text_4');
if (val.value.value === "8f46eabc-245e-49dc-94cc-98218f3e3f03"){
await sdk.disableField("text_5");
}
}
//调取部门名称
export async function ddd() {
try {
const result = await sdk.api.request("/department/list", {});
console.log(result);
return result;
} catch (error) {
console.error("Error fetching department list:", error);
throw error;
}
}
//调取用户信息
export async function ddd() {
try {
const result = await sdk.api.request("/user/list", {
"page": 1,
"pageSize": 100,
});
console.log(result);
return result;
} catch (error) {
console.error("Error fetching department list:", error);
throw error;
}
}
如果是表单展开时,正在读取数据,所以触发会获取值有问题,需要延时
export async function KH() {
// 延时2秒
await new Promise(resolve => setTimeout(resolve, 2000));
// 通过sdk.getValue获取信息
const 是否成交 = await sdk.getValue("text_4");
// 使用console.log打印获取的结果
console.log("是否成交的值:", 是否成交);
// 赋值信息到N
const N = 是否成交.value;
// 使用console.log打印赋值后的N
console.log("赋值后的N:", N);
}
读取其他表单阶段推进信息,判断非签单,阻止提交,并弹窗;
export async function updateFormBasedOnDataId() {
try {
//表单提交前触发,获取客户信息
const textData = await sdk.getValue("text_2");
if (!textData || !textData.value) {
console.error("Failed to get text data");
return;
}
//获取用户ID,要不然会信息错误
const dataid = textData.value[0].id;
console.log(dataid);
const formData = await fetchFormDataById(dataid);
console.log(formData );
if (!formData || !formData.data || !formData.data.paasFormDataESList || formData.data.paasFormDataESList.length === 0) {
console.error("Invalid form data response");
return;
}
const targetValue = formData.data.paasFormDataESList[0].data.text_18.text;
console.log(targetValue);
if(targetValue !== "签单") {
await showConfirm("请将客户阶段推进至签单阶段,否则无法创建合同");
return false;
}
} catch (error) {
console.error("Error in updateFormBasedOnDataId:", error);
}
}
async function fetchFormDataById(dataId, page = 1) {
return await sdk.getFormDataList({
appId: 744517,
menuId: 8157216,
saasMark: 1,
businessType: 100,
subBusinessType: 0,
formId: 7388263,
conditions: [{
"attr": "dataId",
"fieldType": 0,
"symbol": "equal",
"value": [dataId]
}],
page: page,
pageSize: 20
});
}
async function showConfirm(message) {
const res = await sdk.confirm({
title: '警告',
content: message,
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning'
});
console.log(res);
return res.confirm; // true: 用户点击了确认按钮, false: 用户点击了关闭按钮
}
客户信息判断数字范围,并归类到下拉选项,做好数据分类【版本1】
//获取面积数据
export async function audd() {
const mianji = await sdk.getValue('num_5');
const mianjishuju = mianji.value;
console.log(mianjishuju);
let textValue, uuidValue;
if (mianjishuju >= 0 && mianjishuju <= 100) {
console.log("面积小于100");
textValue = '100以下';
uuidValue = 'fd8cbbc8-d0c2-da8a-72ac-e448a693defc';
} else if (mianjishuju >= 100 && mianjishuju <= 130) {
console.log("面积在100-130之间");
textValue = '100-130';
uuidValue = '7c609441-42ea-dc9f-2819-c488c03f4355';
} else if (mianjishuju >= 131 && mianjishuju <= 151) {
console.log("面积在131-151之间");
textValue = '131-151';
uuidValue = 'eb44fdab-a900-5a46-bde7-ed62781986a7';
} else if (mianjishuju >= 152 && mianjishuju <= 160) {
console.log("面积在152-160之间");
textValue = '152-160';
uuidValue = '7885e382-2fec-836b-a1e5-21b193a74d36';
} else if (mianjishuju >= 161 && mianjishuju <= 199) {
console.log("面积在161-199之间");
textValue = '161-199';
uuidValue = '6c7dc56e-7220-1b5c-95aa-9f28924eeb64';
} else if (mianjishuju >= 200 && mianjishuju <= 230) {
console.log("面积在200-230之间");
textValue = '200-230';
uuidValue = '2c254ae5-535a-ac70-c3da-ab8989a5b518';
} else {
console.log("面积在231以上");
textValue = '231以上';
uuidValue = '362b2c84-c29a-d49a-b2ae-0c70ee99332b';
}
await sdk.setValue('text_33', { text: textValue, value: uuidValue });
}
客户信息判断数字范围,并归类到下拉选项,做好数据分类【版本2】
export async function auddchange() {
const mianji = await sdk.getValue('num_5');
const mianjishuju = mianji.value;
console.log(mianjishuju);
let textValue, uuidValue;
// 定义条件范围和相应的值
const conditions = [
{ min: 0, max: 100, text: '100以下', uuid: 'fd8cbbc8-d0c2-da8a-72ac-e448a693defc' },
{ min: 100, max: 130, text: '100-130', uuid: '7c609441-42ea-dc9f-2819-c488c03f4355' },
{ min: 131, max: 151, text: '131-151', uuid: 'eb44fdab-a900-5a46-bde7-ed62781986a7' },
{ min: 152, max: 160, text: '152-160', uuid: '7885e382-2fec-836b-a1e5-21b193a74d36' },
{ min: 161, max: 199, text: '161-199', uuid: '6c7dc56e-7220-1b5c-95aa-9f28924eeb64' },
{ min: 200, max: 230, text: '200-230', uuid: '2c254ae5-535a-ac70-c3da-ab8989a5b518' },
];
// 使用循环查找满足条件的范围
for (const condition of conditions) {
if (mianjishuju >= condition.min && mianjishuju <= condition.max) {
console.log(`面积在${condition.min}-${condition.max}之间`);
textValue = condition.text;
uuidValue = condition.uuid;
break; // 找到匹配条件后退出循环
}
}
// 如果没有匹配的条件,默认处理
if (!textValue) {
console.log("面积在231以上");
textValue = '231以上';
uuidValue = '362b2c84-c29a-d49a-b2ae-0c70ee99332b';
}
await sdk.setValue('text_33', { text: textValue, value: uuidValue });
}
获取阶段,通过判断禁用字段
export async function stageedit() {
// 通过sdk.getValue获取信息
const 获取阶段 = await sdk.getValue("text_18");
// 从获取阶段的值中获取text属性的值
const textValue = 获取阶段.value.text;
console.log(textValue); // 打印出 "有效客户信息"
if(textValue === "有效客户信息") {
// 定义要禁用的字段列表
const fieldsToDisable = [
'date_5', 'text_74', 'text_73',
'array_8', 'array_9', 'text_6',
'text_35', 'num_7'
];
// 遍历字段并禁用它们
for (let field of fieldsToDisable) {
await sdk.disableField(field);
}
}
}
获取阶段推进器信息
//获取阶段信息
export async function getinfo() {
const test = await sdk.getValue("text_18");
console.log(test);
const testvalue = test.value
console.log(testvalue);
const testvaluetext = test.value.text;
console.log(testvaluetext);
}
字段变动触发阶段
//修改阶段信息修改首次到店日期,便触发阶段到到店客户
export async function change1() {
// Retrieve the value of the field "text_45" using sdk.getValue
const stageValue = await sdk.getValue("date_5");
// Check if stageValue is not empty or undefined
if (stageValue !== undefined && stageValue !== "") {
// Create the complete stage object
const stageObject = {
allowSkipStage: 0,
color: "#646566",
enable: 1,
fieldMap: [],
isOther: 0,
stageId: 2656214,
stageProcessId: 516616,
stageRatio: 0,
stageType: 0,
text: "到店客户",
value: "2"
};
// Set the value for the field "text_18"
await sdk.setValue("text_18", stageObject);
}
}
//修改阶段信息修改交定日期,便触发阶段到定金客户
export async function change2() {
// Retrieve the value of the field "text_45" using sdk.getValue
const stageValue = await sdk.getValue("date_1");
// Check if stageValue is not empty or undefined
if (stageValue !== undefined && stageValue !== "") {
// Create the complete stage object with new values
const stageObject = {
"allowSkipStage": 1,
"color": "#646566",
"enable": 1,
"isOther": 0,
"stageId": 2656216,
"stageProcessId": 516616,
"stageRatio": 0,
"stageType": 0,
"text": "定金客户",
"value": "4"
};
// Set the value for the field "text_18"
await sdk.setValue("text_18", stageObject);
}
}
字段变动触发阶段【优化版本】
//通过getvalue 获取数据
export async function changeStage() {
const firstVisitDateResponse = await sdk.getValue("date_5");
const depositDateResponse = await sdk.getValue("date_1");
//
const firstVisitDate = firstVisitDateResponse.value;
const depositDate = depositDateResponse.value;
console.log("First Visit Date: ", firstVisitDate);
console.log("Deposit Date: ", depositDate);
let stageObject = null;
// 检查 firstVisitDate 是否有值
if (firstVisitDate !== undefined && firstVisitDate !== "") {
// 如果 firstVisitDate 有值,但 depositDate 没有值
if (!depositDate || depositDate === undefined || depositDate === "" || depositDate === null) {
console.log("Setting stage to 到店客户");
stageObject = {
allowSkipStage: 0,
color: "#646566",
enable: 1,
fieldMap: [],
isOther: 0,
stageId: 2656214,
stageProcessId: 516616,
stageRatio: 0,
stageType: 0,
text: "到店客户",
value: "2"
};
}
// 如果 firstVisitDate 和 depositDate 都有值
else {
console.log("Setting stage to 定金客户");
stageObject = {
allowSkipStage: 1,
color: "#646566",
enable: 1,
isOther: 0,
stageId: 2656216,
stageProcessId: 516616,
stageRatio: 0,
stageType: 0,
text: "定金客户",
value: "4"
};
}
} else {
console.log("firstVisitDate is not set, no stage change triggered.");
}
if (stageObject !== null) {
const result = await sdk.setValue("text_18", stageObject);
console.log("Setting stage result:", result);
}
}
export async function updateUserArray() {
// 通过唯一标识符获取客户信息
const uniqueIdentifiers = [
"text_46", "text_47", "text_48", "text_49", "text_50", "text_51", "text_52", "text_53"
];
const stageMappings = {
"text_46": "水电阶段",
"text_47": "木作阶段",
"text_48": "泥作阶段",
"text_49": "瓷粉阶段",
"text_50": "竣工阶段",
"text_51": "精装前期",
"text_52": "精装中期",
"text_53": "精装竣工"
};
for (const identifier of uniqueIdentifiers) {
const customerData = await sdk.getValue(identifier);
const cust = customerData.value.text;
if (cust === "是" && stageMappings[identifier]) {
await sdk.setValue("text_29", stageMappings[identifier]);
}
console.log(cust);
}
}
客户状态【系统更换】
//首次到店日期触发阶段更换
export async function hdpz() {
const data_hd = {
color: "#FFC849",
text: "回单客户",
value: "10"
};
try {
const hdpz = await sdk.setValue("text_4", data_hd);
console.log("成功设置值:", hdpz);
} catch (error) {
console.error("设置值失败:", error);
}
}
//交定日期触发阶段更换
export async function djpz() {
const data_dj = {
color: "#FF8C2E",
text: "定金客户",
value: "5"
};
try {
const djpz = await sdk.setValue("text_4", data_dj);
console.log("成功设置值:", djpz);
} catch (error) {
console.error("设置值失败:", error);
}
}
跨表查询版
export async function updataid(){
const textData = await sdk.getValue("text_1");
console.log(textData)
const dataid = textData.value.dataId;
console.log(dataid)
const formData = await fetchIda(dataid);
//初选获取的数据
console.log(formData)
const targetValue = formData.data.paasFormDataESList[0].data.array_1;
console.log(targetValue);
}
//通过代码辅助生成器,跨表单数据调用生产
//注意abc参数是跨表查询字符串
async function fetchIda(abc,page = 1) {
return await sdk.getFormDataList({
appId: 744518,
menuId: 8432210,
saasMark: 2,
businessType: 0,
subBusinessType: 0,
formId: 7628449,
conditions: [{"attr":"dataId","fieldType":0,"symbol":"equal","value":[abc]}],
page: page,
pageSize: 20
})
}
下拉复选同步
export async function updataid() {
const textData = await sdk.getValue("text_2");
console.log("获取关联字段",textData);
//获取关联id
const dataid = textData.value[0].id;
console.log("获取联动ID",dataid);
//通过异步查询关联id信息
const formData = await fetchIda(dataid);
console.log("获取关联查询数据集",formData);
//获取异步查询数据array_7
const targetValue = formData.data.paasFormDataESList[0].data.array_7;
console.log("获取关联字段",targetValue);
//将获取数据通过map赋值给textValues
const textValues = targetValue.map((item) => ({ text: item.text, value: item.value }));
//将textValues赋值给array_7
await sdk.setValue("array_7", textValues);
}
//异步查询数据
async function fetchIda(abcd,page = 1) {
return await sdk.getFormDataList({
appId: 744517,
menuId: 8157216,
saasMark: 1,
businessType: 100,
subBusinessType: 0,
formId: 7388263,
conditions: [{"attr":"dataId","fieldType":0,"symbol":"equal","value":[abcd]}],
page: page,
pageSize: 20
})
}
日期判断
export async function KHD() {
// 获取用户选择的日期
const dd = await sdk.getValue("date_2");
// 检查用户是否已选择日期
if (!dd || !dd.value) {
console.log("错误:您还没有选择日期");
// 在这里可以添加更多逻辑,如显示错误提示给用户
return;
}
const selectedDate = new Date(dd.value * 1000);
// 获取当前日期
const currentDate = new Date();
console.log("选定日期:", selectedDate);
console.log("当前日期:", currentDate);
// 获取当前月份和年份
const currentMonth = currentDate.getMonth();
const currentYear = currentDate.getFullYear();
// 定义范围的起始日期和结束日期
let rangeStartDate, rangeEndDate;
if (currentDate.getDate() >= 1 && currentDate.getDate() <= 15) {
// 当月的1号到15号,用户只能选择当月的16号及之后的日期
rangeStartDate = new Date(currentYear, currentMonth, 16);
rangeEndDate = new Date(currentYear, currentMonth, 31);
console.log("在当前月的1号到15号范围内,只能选择当月的16号及之后的日期");
} else {
// 当月的16号之后,用户只能选择下个月的1号到15号的日期
const nextMonth = (currentMonth + 1) % 12;
const nextYear = (currentMonth === 11) ? currentYear + 1 : currentYear;
rangeStartDate = new Date(nextYear, nextMonth, 1);
rangeEndDate = new Date(nextYear, nextMonth, 15);
console.log("在当前月的16号之后,只能选择下个月的1号到15号的日期");
}
// 检查用户选择的日期是否在允许的范围内
if (selectedDate >= rangeStartDate && selectedDate <= rangeEndDate) {
console.log("选定日期在范围内");
// 在这里可以添加范围内日期的逻辑
} else {
console.log("错误:选定日期不在范围内");
// 在这里可以添加不在范围内日期的逻辑
}
}
export async function KHD() {
// 获取项目经理
const xmjl = await sdk.getValue("text_18");
// 检查项目经理是否为空或未定义
if (!xmjl || xmjl.value === null || xmjl.value === undefined) {
// 如果项目经理为空或未定义,继续执行下面的代码
} else {
return; // 如果项目经理不为空,不执行下面的代码
}
// 获取用户选择的日期
const dd = await sdk.getValue("date_2");
// 检查用户是否已选择日期
if (!dd || !dd.value) {
console.log("错误:您还没有选择日期");
// 在这里可以添加更多逻辑,如显示错误提示给用户
return;
}
const selectedDate = new Date(dd.value * 1000);
// 获取当前日期
const currentDate = new Date();
console.log("选定日期:", selectedDate);
console.log("当前日期:", currentDate);
// 获取当前月份和年份
const currentMonth = currentDate.getMonth();
const currentYear = currentDate.getFullYear();
// 定义范围的起始日期和结束日期
let rangeStartDate, rangeEndDate;
if (currentDate.getDate() >= 1 && currentDate.getDate() <= 15) {
// 当月的1号到15号,用户只能选择当月的16号及之后的日期
rangeStartDate = new Date(currentYear, currentMonth, 16);
rangeEndDate = new Date(currentYear, currentMonth, 31);
console.log("在当前月的1号到15号范围内,只能选择当月的16号及之后的日期");
} else {
// 当月的16号之后,用户只能选择下个月的1号到15号的日期
const nextMonth = (currentMonth + 1) % 12;
const nextYear = (currentMonth === 11) ? currentYear + 1 : currentYear;
rangeStartDate = new Date(nextYear, nextMonth, 1);
rangeEndDate = new Date(nextYear, nextMonth, 15);
console.log("在当前月的16号之后,只能选择下个月的1号到15号的日期");
}
// 检查用户选择的日期是否在允许的范围内
if (selectedDate >= rangeStartDate && selectedDate <= rangeEndDate) {
console.log("选定日期在范围内");
// 在这里可以添加范围内日期的逻辑
} else {
console.log("错误:选定日期不在范围内");
await sdk.showToast({
type: "warning",
content: "预排期时间不在规定范围内,将无法提交!",
time: 3000
});
return false
// 在这里可以添加不在范围内日期的逻辑
}
}
通过按钮判断数据
//通过按键信息获取表单值
export async function checkbt(bt){
console.log("获取信息:",bt);
if(bt.val.btn.value == "新建签单前设计服务"){
console.log("已选择新建签单前设计服务");
const id = bt.val.originQuery.dataId;
console.log("dataId值:",id);
const checkdd = fetchfromdataid(id);
console.log("异表查询:",checkdd);
}
else{
console.log("没有选择新建签单前设计服务");
}
}
async function fetchfromdataid(dataID,page = 1) {
return await sdk.getFormDataList({
appId: 744517,
menuId: 8157216,
saasMark: 1,
businessType: 100,
subBusinessType: 0,
formId: 7388263,
conditions: [{"attr":"dataId","fieldType":0,"symbol":"equal","value":[dataID]}],
page: page,
pageSize: 20
})
}